@charset "utf-8";
/* LESS Document */
:root {
  --keycolor: #446bb3;
  --keycolor90: #567aba;
  --keycolor75: #7390c6;
  --keycolor50: #a1b5d9;
  --keycolor25: #d0daec;
  --keycolor10: #ecf0f7;
  --keycolor5: #f5f7fb;
  --subkeycolor: #00958d;
  --subkeycolor90: #199f98;
  --subkeycolor75: #40b0aa;
  --subkeycolor50: #7fcac6;
  --subkeycolor25: #bfe4e2;
  --subkeycolor10: #e5f4f3;
  --subkeycolor5: #f2faf9;
  --keycolorLive: #446bb3;
  --keycolor90Live: #577abb;
  --keycolor75Live: #7390c6;
  --keycolor50Live: #a2b5d9;
  --keycolor25Live: #d0daec;
  --keycolor20Live: #dae1f0;
  --keycolor15Live: #e3e9f4;
  --keycolor10Live: #ecf0f7;
  --keycolor5Live: #f6f8fb;
  --keygray: #797b80;
}
.keycolor {
  color: var(--keycolor);
}
.keycolor75 {
  color: var(--keycolor75);
}
.keycolor50 {
  color: var(--keycolor50);
}
.keycolor25 {
  color: var(--keycolor25);
}
.keycolor10 {
  color: var(--keycolor10);
}
.keycolor5 {
  color: var(--keycolor5);
}
.bgKeycolor {
  background-color: var(--keycolor);
}
.bgKeycolor75 {
  background-color: var(--keycolor75);
}
.bgKeycolor50 {
  background-color: var(--keycolor50);
}
.bgKeycolor25 {
  background-color: var(--keycolor25);
}
.bgKeycolor10 {
  background-color: var(--keycolor10);
}
.bgKeycolor5 {
  background-color: var(--keycolor5);
}
.subkeycolor {
  color: var(--subkeycolor);
}
.subkeycolor75 {
  color: var(--subkeycolor75);
}
.subkeycolor50 {
  color: var(--subkeycolor50);
}
.subkeycolor25 {
  color: var(--subkeycolor25);
}
.subkeycolor10 {
  color: var(--subkeycolor10);
}
.subkeycolor5 {
  color: var(--subkeycolor5);
}
.bgSubkeycolor {
  background-color: var(--subkeycolor);
}
.bgSubkeycolor75 {
  background-color: var(--subkeycolor75);
}
.bgSubkeycolor50 {
  background-color: var(--subkeycolor50);
}
.bgSubkeycolor25 {
  background-color: var(--subkeycolor25);
}
.bgSubkeycolor10 {
  background-color: var(--subkeycolor10);
}
.bgSubkeycolor5 {
  background-color: var(--subkeycolor5);
}
.clear {
  clear: both;
}
.flex-grow-1 {
  flex: 1 0 auto !important;
}
.hidden {
  display: none;
  opacity: 0;
  transition: all .5s ease;
  -webkit-transition: all .5s ease;
}
@font-face {
  font-family: "Custom Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}
@font-face {
  font-family: "Custom Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}
@font-face {
  font-family: "Custom Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}
@font-face {
  font-family: "Custom Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}
@font-face {
  font-family: "Custom Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 500;
}
@font-face {
  font-family: "Custom Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}
@font-face {
  font-family: "Helvetica Neue";
  src: local("Helvetica Neue Regular");
  font-weight: 100;
}
@font-face {
  font-family: "Helvetica Neue";
  src: local("Helvetica Neue Regular");
  font-weight: 200;
}
@font-face {
  font-family: 'tmugs-career';
  src: url('/assets/fonts/tmugs-career.woff?yon0or') format('woff'), url('/assets/fonts/tmugs-career.ttf?yon0or') format('truetype'), url('/assets/fonts/tmugs-career.svg?yon0or#tmugs-career') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
span.icon {
  vertical-align: middle;
}
.iconmoon::before,
span.icon,
i {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'tmugs-career' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.icon-angle-up:before {
  content: "\e907";
}
.icon-call:before {
  content: "\e942";
}
.icon-emailmailmarkunreadlocal_post_office:before {
  content: "\e908";
}
.icon-arrow_right:before {
  content: "\e909";
}
.icon-arrow_back_ios:before {
  content: "\e90a";
}
.icon-arrow_forward_ios:before {
  content: "\e90b";
}
.icon-launchopen_in_new:before {
  content: "\e90c";
}
.icon-microsoftword:before {
  content: "\e900";
  color: #2b579a;
}
.icon-microsoftexcel:before {
  content: "\e901";
  color: #217346;
}
.icon-microsoftpowerpoint:before {
  content: "\e902";
  color: #d24726;
}
.icon-facebook:before {
  content: "\e903";
  color: #3b5998;
}
.icon-twitter:before {
  content: "\e904";
  color: #1da1f2;
}
.icon-adobeacrobatreader:before {
  content: "\e905";
  color: #ee3f24;
}
.icon-newwindow:before {
  content: "\e906";
}
.icon-picture:before,
.icon-image:before {
  content: "\e90d";
}
.icon-file-empty:before {
  content: "\e924";
}
.icon-file-zip:before {
  content: "\e92b";
}
.icon-spinner6:before {
  content: "\e97f";
}
.icon-share2:before {
  content: "\ea82";
}
.icon-rss:before {
  content: "\ea9b";
}
.icon-file-pdf:before {
  content: "\eadf";
}
.icon-file-word:before {
  content: "\eae1";
}
.icon-file-excel:before {
  content: "\eae2";
}
.icon-libreoffice:before {
  content: "\eae3";
}
span.filedetail {
  margin-right: .25em;
}
span.filedetail > span.type {
  display: none;
}
.carousel-control-prev-icon,
.carousel-control-next-icon {
  width: 32px;
  height: 32px;
}
.d-flex {
  flex-basis: auto;
}
a {
  text-decoration: none !important;
  color: darkblue;
}
a:active,
a.hover {
  color: #666;
  opacity: .9;
  outline: 0;
}
html {
  font-size: 62.5%;
  min-width: 320px;
}
body {
  min-width: 320px;
  min-height: 100vh;
  height: 100%;
  min-height: calc(var(--vh, 1vh) * 100);
  font-family: -apple-system, "BlinkMacSystemFont", "Custom Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "Helvetica neue", Arial, Roboto, "Droid Sans", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.8;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-color: #fff;
  counter-reset: h3counter;
}
#container_wrapper {
  position: relative;
  min-height: 100vh;
  min-height: calc(var(--vh, 1vh) * 100);
  height: 100%;
}
#header {
  width: 100%;
  flex-shrink: 0;
}
#header i[class^="icon-launchopen_in_new"],
#header i[class^="icon-newwindow"] {
  display: none;
}
#header #headerWrapper {
  height: 50px;
}
#header #headerWrapper #siteLogo > a {
  padding: 8px;
}
#header #headerWrapper #siteLogo > a .cmarkHeader {
  padding: 0;
  width: 140px;
}
#header #headerWrapper #siteLogo > a .cmarkHeader img {
  width: 100%;
  height: auto;
}
#header #headerWrapper #siteLogo > a .sitename {
  font-weight: bold;
  font-size: 2rem;
  color: #222;
  padding-left: 12px;
  padding-bottom: 2px;
}
#header #headerWrapper #subMenu {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100px;
  max-width: 560px;
}
#header #headerWrapper #subMenu > div.level1 {
  border-left: 1px solid #fff;
  position: relative;
  height: 25px;
  margin-bottom: 0;
}
#header #headerWrapper #subMenu > div.level1 > a {
  display: block;
  height: 25px;
  padding-top: 7px;
  background-color: #303133;
  color: #fff;
  text-align: center;
  font-size: 1.2rem;
  line-height: 1;
  font-feature-settings: "palt";
}
#header #headerWrapper #subMenu > div.level1 > a::before {
  position: absolute;
  content: '\e909';
  font-size: 1.4rem;
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'tmugs-career' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  top: calc(50% - 0.7rem);
  left: 7px;
}
#header #headerWrapper #subMenu > div.level1 > a.hover {
  opacity: .75;
}
#header #headerWrapper #subMenu > div.level2 {
  display: table;
  height: 40px;
}
#header #headerWrapper #subMenu > div.level2 > a {
  display: table-cell;
  vertical-align: middle;
}
#header #headerWrapper #subMenu > div.level2 > a > * {
  vertical-align: middle;
}
#header #headerWrapper #subMenu > div.level2 > a.tel {
  color: var(--keycolor);
}
#header #headerWrapper #subMenu > div.level2 > a.tel > span {
  font-weight: bold;
  font-size: 2rem;
}
#header #headerWrapper #subMenu > div.level2 > a.email {
  width: 100%;
  height: 40px;
  margin: 0 auto;
  color: #fff;
  font-size: 1.5rem;
  font-weight: bold;
  background-color: var(--keycolor);
}
@media (min-width: 992px) {
  #header #headerWrapper {
    position: relative;
    width: 100%;
    max-width: 1000px;
    height: 100px;
  }
  #header #headerWrapper #siteLogo {
    position: absolute;
    top: 20px;
    left: 0;
  }
  #header #headerWrapper #siteLogo > a .cmarkHeader {
    padding: 0;
    width: 174px;
  }
  #header #headerWrapper #siteLogo > a .cmarkHeader img {
    width: 100%;
    height: auto;
  }
  #header #headerWrapper #siteLogo > a .sitename {
    font-size: 2.8rem;
    padding-left: 20px;
    padding-bottom: 3px;
  }
}
#header #spbutton {
  width: 50px;
  height: 50px;
  background-color: #0070c0;
  border: none;
}
#header #spbutton.collapsed .navbar-toggler-icon {
  width: 30px;
  height: 30px;
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(255, 255, 255, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
#header #spbutton .navbar-toggler-icon {
  background-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 17.41421 17.41421"%3E%3Cdefs%3E%3Cstyle%3E.a%7Bfill:none;stroke:%23fff;stroke-miterlimit:10;stroke-width:2px;%7D%3C/style%3E%3C/defs%3E%3Ctitle%3EcrossLine%3C/title%3E%3Cline class="a" x1="0.70711" y1="0.70711" x2="16.70711" y2="16.70711"/%3E%3Cline class="a" x1="0.70711" y1="16.70711" x2="16.70711" y2="0.70711"/%3E%3C/svg%3E');
}
#header #mainMenu {
  background-color: var(--keygray);
  z-index: 999;
}
#header #mainMenu > ul {
  background-color: var(--keycolor);
}
#header #mainMenu > ul > li a {
  background-color: var(--keycolor);
}
#header #mainMenu > ul > li#id13,
#header #mainMenu > ul > li#id20,
#header #mainMenu > ul > li#id13 a,
#header #mainMenu > ul > li#id20 a,
#header #mainMenu > ul > li#id13 ul,
#header #mainMenu > ul > li#id20 ul {
  background-color: var(--subkeycolor);
}
#header #mainMenu > ul > li > a {
  color: #fff;
  padding: .5em 1.5em;
  display: block;
  line-height: 1.25;
  font-feature-settings: "palt";
  background-color: var(--keycolor);
}
#header #mainMenu > ul > li > a > div > span {
  visibility: visible;
  font-weight: 600;
  font-size: 1.5rem;
}
#header #mainMenu > ul > li > a > div > span br {
  display: none;
}
#header #mainMenu > ul > li.active > a {
  background-color: var(--keygray) !important;
}
#header #mainMenu > ul > li > ul,
#header #mainMenu > ul > li > ul ul {
  margin-top: .25em;
  padding-left: 1em;
  list-style-type: none;
  background-color: var(--keycolor);
}
#header #mainMenu > ul > li > ul > li.lv2,
#header #mainMenu > ul > li > ul ul > li.lv2,
#header #mainMenu > ul > li > ul > li.lv2 li.lv3,
#header #mainMenu > ul > li > ul ul > li.lv2 li.lv3 {
  margin-bottom: .5em;
  padding-left: 8px;
  padding-right: 8px;
  position: relative;
}
#header #mainMenu > ul > li > ul > li.lv2::before,
#header #mainMenu > ul > li > ul ul > li.lv2::before,
#header #mainMenu > ul > li > ul > li.lv2 li.lv3::before,
#header #mainMenu > ul > li > ul ul > li.lv2 li.lv3::before {
  content: '└';
  position: absolute;
  color: #fff;
  top: -3px;
}
#header #mainMenu > ul > li > ul > li.lv2.active,
#header #mainMenu > ul > li > ul ul > li.lv2.active,
#header #mainMenu > ul > li > ul > li.lv2 li.lv3.active,
#header #mainMenu > ul > li > ul ul > li.lv2 li.lv3.active {
  padding-left: 4px;
  border-left: 4px solid var(--keygray) !important;
}
#header #mainMenu > ul > li > ul > li.lv2 > a,
#header #mainMenu > ul > li > ul ul > li.lv2 > a,
#header #mainMenu > ul > li > ul > li.lv2 li.lv3 > a,
#header #mainMenu > ul > li > ul ul > li.lv2 li.lv3 > a {
  display: block;
  line-height: 1.4;
  font-size: .875em;
  margin-left: 1.5em;
  font-feature-settings: "palt";
}
#header #mainMenu > ul > li > ul > li.lv2 > a > span,
#header #mainMenu > ul > li > ul ul > li.lv2 > a > span,
#header #mainMenu > ul > li > ul > li.lv2 li.lv3 > a > span,
#header #mainMenu > ul > li > ul ul > li.lv2 li.lv3 > a > span {
  color: #fff;
  font-weight: 600;
  white-space: normal;
  width: auto;
  display: inline-block;
}
@media (min-width: 992px) {
  #header #mainMenu {
    width: 100%;
    height: 70px;
  }
  #header #mainMenu > ul {
    max-width: 1000px;
    width: 100%;
    height: 70px;
    margin: 0 auto;
  }
  #header #mainMenu > ul > li {
    overflow: visible;
    height: 70px;
    position: relative;
    border-right: 1px solid white;
  }
  #header #mainMenu > ul > li:first-child {
    border-left: 1px solid white;
  }
  #header #mainMenu > ul > li#id13,
  #header #mainMenu > ul > li#id20 {
    background-color: transparent;
  }
  #header #mainMenu > ul > li > ul {
    display: none;
    position: absolute;
    margin: 0;
    padding: 0;
    background-color: #0070c0;
  }
  #header #mainMenu > ul > li > ul > li.lv2,
  #header #mainMenu > ul > li > ul > li.lv2 li.lv3 {
    padding: 0;
    margin: 0;
  }
  #header #mainMenu > ul > li > ul > li.lv2::before,
  #header #mainMenu > ul > li > ul > li.lv2 li.lv3::before {
    content: "";
  }
  #header #mainMenu > ul > li > ul > li.lv2 > a,
  #header #mainMenu > ul > li > ul > li.lv2 li.lv3 > a {
    margin: 0;
    padding: .5em 1em;
  }
  #header #mainMenu > ul > li > ul > li.lv2 > a.hover,
  #header #mainMenu > ul > li > ul > li.lv2 li.lv3 > a.hover {
    background-color: var(--keygray) !important;
  }
  #header #mainMenu > ul > li > ul > li.lv2.active,
  #header #mainMenu > ul > li > ul > li.lv2 li.lv3.active {
    padding: 0;
    border-left: none !important;
  }
  #header #mainMenu > ul > li > ul > li.lv2.active > a,
  #header #mainMenu > ul > li > ul > li.lv2 li.lv3.active > a {
    background-color: var(--keygray) !important;
  }
  #header #mainMenu > ul > li > ul > li.lv2 li.lv3,
  #header #mainMenu > ul > li > ul > li.lv2 li.lv3 li.lv3 {
    margin-bottom: 0;
    padding-left: 0;
    position: relative;
  }
  #header #mainMenu > ul > li > ul > li.lv2 li.lv3::before,
  #header #mainMenu > ul > li > ul > li.lv2 li.lv3 li.lv3::before {
    content: '└';
    position: absolute;
    color: #fff;
    top: .25em;
    left: 1.5rem;
  }
  #header #mainMenu > ul > li > ul > li.lv2 li.lv3 a,
  #header #mainMenu > ul > li > ul > li.lv2 li.lv3 li.lv3 a {
    padding-left: 3.5rem;
    padding-right: .5rem;
  }
  #header #mainMenu > ul > li > ul ul {
    padding-left: 0;
    margin-top: 0;
  }
  #header #mainMenu > ul > li:last-child > ul {
    right: 0;
  }
  #header #mainMenu > ul > li.hover > ul {
    display: block;
    width: 250%;
  }
  #header #mainMenu > ul > li > a {
    display: table;
    color: #fff;
    width: 100%;
    height: 70px;
    text-align: center;
  }
  #header #mainMenu > ul > li > a.hover {
    background-color: var(--keygray) !important;
  }
  #header #mainMenu > ul > li > a > div {
    display: table-cell;
    width: 100%;
    height: 100%;
    text-align: center;
    vertical-align: middle;
  }
  #header #mainMenu > ul > li > a > div > span {
    display: block;
    transform-origin: 0px 0px;
    line-height: 1.35;
    font-size: 11px;
    visibility: hidden;
  }
  #header #mainMenu > ul > li > a > div > span br {
    display: inline;
  }
  #header #mainMenu > ul > li.active > a {
    background-color: var(--keygray) !important;
  }
}
#topKeyVisual {
  box-sizing: content-box;
  width: 100%;
  max-height: 400px;
  min-height: 210px;
  margin: 0 auto;
  flex-shrink: 0;
  flex-wrap: nowrap;
  overflow: hidden;
  position: relative;
  border-top: 4px solid #cccdd0;
  border-bottom: 4px solid #cccdd0;
}
#topKeyVisual .carousel-inner {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
#topKeyVisual .swiper-wrapper {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 0;
}
#topKeyVisual .swiper-wrapper li {
  list-style: none;
}
#topKeyVisual .swiper-wrapper li > a {
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
  overflow: hidden;
}
#topKeyVisual .swiper-wrapper li > a > img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: auto;
  height: 100.1%;
}
@media (min-width: 520px) {
  #topKeyVisual .swiper-wrapper li > a > img {
    width: 100.1%;
    height: auto;
  }
}
@media (min-width: 1000px) {
  #topKeyVisual .swiper-wrapper li > a > img {
    width: 1000px;
    height: auto;
  }
}
#topKeyVisual .carousel-control-prev {
  justify-content: flex-start;
}
#topKeyVisual .carousel-control-next {
  justify-content: flex-end;
}
#topKeyVisual:before {
  padding-top: 40%;
  content: "";
  width: 100%;
  display: block;
}
@media (min-width: 1000px) {
  #topKeyVisual {
    border: none;
  }
}
#topKeyVisualPagination {
  position: relative;
  width: 100%;
}
#topKeyVisualPagination .swiper-pagination-bullet {
  filter: drop-shadow(1px 1px 1px rgba(0, 0, 0, 0.5));
  width: 10px;
  height: 10px;
  margin: 0 8px;
}
#ctgHeader_wrapper {
  display: block;
  position: relative;
  background-color: var(--keycolor15Live);
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYAQMAAADaua+7AAAABlBMVEX///////9VfPVsAAAAAnRSTlMAgJsrThgAAAAaSURBVHheY/jAwI+C+dFEGP4z4MPo6tHNAwB8HBfpmKfQyQAAAABJRU5ErkJggg==);
  background-size: 6px 6px;
  background-repeat: repeat;
  z-index: 1;
  height: 128px;
  width: 100%;
  flex-shrink: 0;
  border-top: 4px solid #cccdd0;
  border-bottom: 4px solid #cccdd0;
}
#ctgHeader_wrapper:after {
  content: "";
  background-image: url("h2_pattern.png");
  background-repeat: repeat-x;
  background-position: 50% 0;
  background-size: 120px 208px;
  mix-blend-mode: overlay;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}
@media (-webkit-min-device-pixel-ratio: 1.5) {
  #ctgHeader_wrapper:after {
    background-image: url("h2_pattern@2x.png");
  }
}
@media (-webkit-min-device-pixel-ratio: 2.5) {
  #ctgHeader_wrapper:after {
    background-image: url("h2_pattern@3x.png");
  }
}
@media (-webkit-min-device-pixel-ratio: 3.5) {
  #ctgHeader_wrapper:after {
    background-image: url("h2_pattern@4x.png");
  }
}
#ctgHeader_wrapper > #ctgHeader {
  width: 100%;
  height: 100%;
  max-width: 1000px;
  margin: 0 auto;
  display: table;
  word-break: keep-all;
}
#ctgHeader_wrapper > #ctgHeader br {
  display: none;
}
#ctgHeader_wrapper > #ctgHeader span {
  display: block;
}
#ctgHeader_wrapper > #ctgHeader > h2 {
  font-family: "游明朝", "Yu Mincho", "YuMincho", "Noto Serif JP", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-feature-settings: "palt";
  word-break: keep-all;
  position: relative;
  font-size: 2.4rem;
  font-weight: bold;
  color: #111;
  text-shadow: 1px 1px 0 var(--keycolor15Live), -1px -1px 0 var(--keycolor15Live), -1px 1px 0 var(--keycolor15Live), 1px -1px 0 var(--keycolor15Live), 0px 1px 0 var(--keycolor15Live), 0 -1px 0 var(--keycolor15Live), -1px 0 0 var(--keycolor15Live), 1px 0 0 var(--keycolor15Live);
  line-height: 1.1;
  padding: 0 20px;
  display: table-cell;
  vertical-align: middle;
}
#ctgHeader_wrapper > #ctgHeader > h2 > .icon {
  position: absolute;
  top: .5em;
  right: 1em;
  width: 50px;
}
@media (min-width: 768px) {
  #ctgHeader_wrapper > #ctgHeader > h2 > .icon {
    display: inline-block;
    right: auto;
    margin-left: 1em;
  }
}
@media (min-width: 1000px) {
  #ctgHeader_wrapper > #ctgHeader > h2 > .icon {
    width: auto;
  }
}
@media (min-width: 425px) {
  #ctgHeader_wrapper > #ctgHeader h2 {
    font-size: 2.4rem;
  }
}
@media (min-width: 576px) {
  #ctgHeader_wrapper > #ctgHeader span {
    display: inline-block;
  }
  #ctgHeader_wrapper > #ctgHeader > h2 {
    font-size: 2.4rem;
  }
}
@media (min-width: 768px) {
  #ctgHeader_wrapper > #ctgHeader > h2 {
    font-size: 2.4rem;
  }
}
@media (min-width: 992px) {
  #ctgHeader_wrapper {
    height: 200px;
    border: none;
  }
  #ctgHeader_wrapper > #ctgHeader > h2 {
    font-size: 3.6rem;
    letter-spacing: .2em;
    padding: 0 10px;
  }
}
#breadcrumb {
  width: 100%;
}
#breadcrumb > ol.breadcrumb {
  font-size: .875em;
  width: auto;
  padding-left: 15px;
  padding-right: 15px;
  max-width: 1000px;
  margin: 0 auto;
  background: none;
  white-space: nowrap;
  overflow-x: auto;
}
@media (min-width: 992px) {
  #btmSubMenu {
    display: none;
  }
}
#btmSubMenu i[class^="icon-launchopen_in_new"],
#btmSubMenu i[class^="icon-newwindow"] {
  display: none;
}
#btmSubMenu > div.upper {
  background-color: var(--keycolor50);
}
#btmSubMenu > div.upper a {
  font-size: 1.4rem;
  font-feature-settings: "palt";
  font-weight: bold;
  background-color: #fff;
  color: var(--keycolor);
  width: 100%;
  height: 40px;
  padding: 0 .75em;
}
#btmSubMenu > div.upper a > span {
  text-align: left;
  margin: auto 0;
  white-space: nowrap;
}
#btmSubMenu > div.upper a.small {
  font-size: 1rem;
}
@media (min-width: 360px) {
  #btmSubMenu > div.upper a.small {
    font-size: 1.2rem;
  }
}
@media (min-width: 400px) {
  #btmSubMenu > div.upper a.small {
    font-size: 1.4rem;
  }
}
#btmSubMenu > div.upper a::after {
  content: "";
  margin: auto 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='90'%3E%3Cpath d='M0 0 L40 45 L0 90 Z' style='fill:%23446bb3'%3E%3C/path%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 0 0;
  width: 4px;
  height: 9px;
}
#btmSubMenu > div.btm a.email {
  height: 40px;
  background-color: var(--keycolor);
  color: #fff;
  font-size: 1.6rem;
  padding: 0 8px;
}
#btmSubMenu > div.btm a.email::before {
  width: 0;
  overflow: visible;
  font-size: 1.2rem;
  display: inline-flex;
  align-self: center !important;
  margin: auto 0;
}
#footer_wrapper {
  background-color: var(--keygray);
  flex-shrink: 0;
}
#footer_wrapper i[class^="icon-launchopen_in_new"],
#footer_wrapper i[class^="icon-newwindow"] {
  display: none;
}
#footer_wrapper > #address {
  font-size: 1.2rem;
  background-color: #cccdd0;
  line-height: 1.4;
}
@media (min-width: 360px) {
  #footer_wrapper > #address {
    font-size: 1.3rem;
  }
}
@media (min-width: 400px) {
  #footer_wrapper > #address {
    font-size: 1.4rem;
  }
}
#footer_wrapper > #address .wrap {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
}
#footer_wrapper > #address .address > span {
  margin-right: 50px;
}
#footer_wrapper > #address .contact {
  max-width: 800px;
  line-height: 1.6;
  vertical-align: middle;
}
#footer_wrapper > #address .title,
#footer_wrapper > #address .subtitle,
#footer_wrapper > #address .tel {
  white-space: nowrap;
}
#footer_wrapper > #address .subtitle,
#footer_wrapper > #address .tel {
  font-size: 1.1rem;
}
@media (min-width: 360px) {
  #footer_wrapper > #address .subtitle,
  #footer_wrapper > #address .tel {
    font-size: 1.2rem;
  }
}
@media (min-width: 400px) {
  #footer_wrapper > #address .subtitle,
  #footer_wrapper > #address .tel {
    font-size: 1.2rem;
  }
}
#footer_wrapper > #address .title {
  font-weight: bold;
}
#footer_wrapper > #address .tel {
  flex-basis: auto;
  -ms-flex-align: baseline !important;
  align-items: baseline !important;
  -ms-flex-item-align: center !important;
  align-self: center !important;
  text-align: right;
}
#footer_wrapper > #address .tel::before {
  display: flex;
  content: '';
  height: 1px;
  background-image: linear-gradient(to right, #333, #333 1px, transparent 2px, transparent 3px);
  background-size: 3px 1px;
  background-repeat: repeat-x;
  flex-grow: 1;
  margin: 0 .25em 0 .5em;
}
#footer_wrapper > #address #FooterSnsLink {
  display: none;
  float: right;
}
@media (min-width: 768px) {
  #footer_wrapper > #address #FooterSnsLink {
    margin-right: 48px;
  }
}
#footer_wrapper > #address #FooterSnsLink > li {
  margin: 0 0 0 16px;
}
#footer_wrapper > #address #FooterSnsLink > li a {
  display: block;
  padding: 0;
  width: 32px;
  height: 32px;
  line-height: 1;
  border-radius: 2px;
}
#footer_wrapper > #address #FooterSnsLink > li a > i {
  font-size: 32px;
}
#footer_wrapper > #address #FooterSnsLink > li a > i:before {
  color: #fff;
}
#footer_wrapper > #address #FooterSnsLink > li a.twitter {
  padding: 4px;
  width: 32px;
  height: 32px;
  background-color: #fff;
  border-radius: 2px;
}
#footer_wrapper > #address #FooterSnsLink > li a.twitter > i.icon-twitter {
  font-size: 24px;
}
#footer_wrapper > #address #FooterSnsLink > li a.twitter > i.icon-twitter:before {
  color: #0070c0;
}
#footer_wrapper #footer {
  padding-bottom: 12px;
  color: white;
}
#footer_wrapper #footer > div {
  max-width: 1000px;
  margin: 0 auto;
}
#footer_wrapper #footer > div > .cmark > img {
  width: 168px;
}
#footer_wrapper #footer > div > .copyright {
  font-size: 1.2rem;
  line-height: 1.4;
  text-align: left;
  margin-top: 0;
}
.arrow-right {
  display: inline-block;
  width: .5em;
  height: .5em;
  border: 0.1em solid;
  border-color: #565656 #565656 transparent transparent;
  transform: rotate(45deg);
  margin-right: .25em;
  vertical-align: middle;
}
#pageTop {
  margin: 0 auto;
  overflow: hidden;
  opacity: 0;
  height: 0;
  overflow: visible;
  visibility: hidden;
  transition: opacity .5s ease, visibility .5s;
  -webkit-transition: opacity .5s ease, visibility .5s;
}
#pageTop.show {
  opacity: 1;
  visibility: visible;
}
#pageTop > div {
  max-width: 1000px;
  margin: 0 auto;
  height: 0;
  overflow: visible;
}
#pageTop > div > a.button {
  width: 40px;
  height: 40px;
  margin-top: -56px;
  opacity: .9;
}
#pageTop > div > a.button .box {
  background-color: #666666;
  width: 40px;
  height: 40px;
  color: white;
  margin: 0;
  padding: 0;
}
#pageTop > div > a.button.hover {
  opacity: 1;
}
#mainContent {
  overflow: hidden;
  max-width: 1000px;
  width: 100%;
  padding-top: 1em;
  padding-bottom: 4em;
  font-size: 1.4rem;
}
#mainContent > *:first-child {
  margin-top: 0 !important;
}
#mainContent > *:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 360px) {
  #mainContent {
    font-size: 1.6rem;
  }
}
#mainContent > * {
  margin-top: 0;
}
#mainContent .ml-0-box > * {
  margin-left: 0 !important;
}
#mainContent img + i[class^="icon-"] {
  display: none;
}
#mainContent a.nofiledetail > span.filedetail {
  display: none;
}
#mainContent a.hover {
  text-decoration: underline !important;
}
#mainContent a.singlenesslink {
  font-feature-settings: "palt";
}
#mainContent a.singlenesslink:before {
  font-size: 1.2em;
  margin-right: .125em;
  content: "\0bb";
}
#mainContent a.biglink {
  font-size: 1.25em;
  font-feature-settings: "palt";
  display: block;
  text-align: center;
  white-space: wrap;
  background-color: var(--keycolor75);
  font-weight: bold;
  color: #fff;
  border-radius: .25em;
  padding: .5em 1em;
}
#mainContent a.biglink.hover {
  text-decoration: none !important;
  background-color: var(--keycolor25);
  color: var(--keycolor);
}
@media (min-width: 576px) {
  #mainContent a.biglink br {
    display: none;
  }
}
#mainContent button > a {
  display: block;
  font-size: 1.2em;
  font-weight: bold;
  color: #333;
  text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, 0px 1px 0 #fff, 0-1px 0 #fff, -1px 0 0 #fff, 1px 0 0 #fff;
}
#mainContent button > a.hover {
  text-decoration: none !important;
}
#mainContent p {
  text-align: justify;
  text-justify: inter-ideograph;
  text-indent: 1em;
  line-height: 1.6;
  margin-bottom: 2em;
}
#mainContent p + p,
#mainContent p + ul,
#mainContent p + ol,
#mainContent p + h6,
#mainContent p + div.table-scroll {
  margin-top: -1em !important;
}
@media (min-width: 768px) {
  #mainContent p {
    line-height: 1.8;
    margin-left: 6rem;
    margin-bottom: 3em;
  }
  #mainContent p + p,
  #mainContent p + ul,
  #mainContent p + ol,
  #mainContent p + h6,
  #mainContent p + div.table-scroll {
    margin-top: -2em !important;
  }
}
#mainContent span.underline {
  background: linear-gradient(transparent 70%, #ff99ab 70%);
  text-decoration: none !important;
}
#mainContent .noindent {
  text-indent: 0 !important;
}
#mainContent blockquote {
  border: 2px solid var(--keygray);
  position: relative;
  padding: 1rem;
  margin-bottom: 2em;
}
#mainContent blockquote.p-margin-left {
  margin-top: -1rem;
}
@media (min-width: 768px) {
  #mainContent blockquote {
    padding: 3rem;
    margin-left: 3rem;
  }
  #mainContent blockquote.p-margin-left {
    margin-top: -2rem;
  }
}
#mainContent blockquote > *:not([class*="image"]) {
  margin-left: 0 !important;
  margin-right: 0;
}
#mainContent blockquote > *:not([class*="image"]):first-child {
  margin-top: 0;
}
#mainContent blockquote > *:not([class*="image"]):last-child {
  margin-bottom: 0 !important;
}
#mainContent blockquote > h3:first-child {
  color: #fff;
  text-align: center;
  background-color: var(--keygray);
  margin: -1rem -1rem 1rem -1rem !important;
  padding-left: .65em;
  padding-right: .65em;
  /*
			+ * {
				margin-top: 2em;
			}
			*/
}
#mainContent blockquote > h3:first-child:before {
  display: none;
}
@media (min-width: 768px) {
  #mainContent blockquote > h3:first-child {
    margin: -3rem -3rem 3rem -3rem !important;
  }
}
#mainContent blockquote > h4,
#mainContent blockquote > h5,
#mainContent blockquote > h6 {
  margin-left: 0;
  margin-top: .5em;
  margin-bottom: .5em;
}
#mainContent blockquote > h4:before {
  display: none;
}
#mainContent blockquote ul li:last-child,
#mainContent blockquote ol li:last-child {
  margin-bottom: 0;
}
#mainContent blockquote > p {
  text-indent: 0;
}
#mainContent hr {
  margin: 2rem 0;
}
#mainContent ol,
#mainContent ul {
  margin-bottom: 2em;
  margin-left: 0;
  padding-left: 2em;
  line-height: 1.5;
}
#mainContent ol + ul,
#mainContent ul + ul,
#mainContent ol + ol,
#mainContent ul + ol,
#mainContent ol + p,
#mainContent ul + p,
#mainContent ol + h6,
#mainContent ul + h6 {
  margin-top: -1em !important;
}
@media (min-width: 768px) {
  #mainContent ol,
  #mainContent ul {
    margin-left: 6rem;
    margin-bottom: 3em;
  }
  #mainContent ol + ul,
  #mainContent ul + ul,
  #mainContent ol + ol,
  #mainContent ul + ol,
  #mainContent ol + p,
  #mainContent ul + p,
  #mainContent ol + h6,
  #mainContent ul + h6 {
    margin-top: -2em !important;
  }
}
#mainContent ol li,
#mainContent ul li {
  margin-bottom: .5em;
}
#mainContent ol ol,
#mainContent ul ol,
#mainContent ol ul,
#mainContent ul ul {
  margin-top: .5em !important;
  margin-bottom: 0 !important;
  margin-left: 0 !important;
}
#mainContent ol ol li,
#mainContent ul ol li,
#mainContent ol ul li,
#mainContent ul ul li {
  margin-bottom: .25em;
}
#mainContent ol ol.notes,
#mainContent ul ol.notes,
#mainContent ol ul.notes,
#mainContent ul ul.notes {
  padding-left: 1em;
  font-size: 0.875em;
  color: #333;
}
#mainContent ol ol.notes > li:before,
#mainContent ul ol.notes > li:before,
#mainContent ol ul.notes > li:before,
#mainContent ul ul.notes > li:before {
  left: -1em;
}
#mainContent ol ol.hira-aiueo,
#mainContent ul ol.hira-aiueo,
#mainContent ol ul.hira-aiueo,
#mainContent ul ul.hira-aiueo,
#mainContent ol ol.hira-iroha,
#mainContent ul ol.hira-iroha,
#mainContent ol ul.hira-iroha,
#mainContent ul ul.hira-iroha,
#mainContent ol ol.kana-aiueo,
#mainContent ul ol.kana-aiueo,
#mainContent ol ul.kana-aiueo,
#mainContent ul ul.kana-aiueo,
#mainContent ol ol.kana-iroha,
#mainContent ul ol.kana-iroha,
#mainContent ol ul.kana-iroha,
#mainContent ul ul.kana-iroha {
  padding-left: 2em;
}
#mainContent ol ol.hira-aiueo > li:before,
#mainContent ul ol.hira-aiueo > li:before,
#mainContent ol ul.hira-aiueo > li:before,
#mainContent ul ul.hira-aiueo > li:before,
#mainContent ol ol.hira-iroha > li:before,
#mainContent ul ol.hira-iroha > li:before,
#mainContent ol ul.hira-iroha > li:before,
#mainContent ul ul.hira-iroha > li:before,
#mainContent ol ol.kana-aiueo > li:before,
#mainContent ul ol.kana-aiueo > li:before,
#mainContent ol ul.kana-aiueo > li:before,
#mainContent ul ul.kana-aiueo > li:before,
#mainContent ol ol.kana-iroha > li:before,
#mainContent ul ol.kana-iroha > li:before,
#mainContent ol ul.kana-iroha > li:before,
#mainContent ul ul.kana-iroha > li:before {
  left: -1.5em;
}
#mainContent ol.notes,
#mainContent ul.notes {
  padding-left: 2em;
}
#mainContent ol.notes > li,
#mainContent ul.notes > li {
  list-style-type: none;
  list-style-position: outside;
  position: relative;
}
#mainContent ol.notes > li:before,
#mainContent ul.notes > li:before {
  position: absolute;
  left: -1.125em;
  content: "※";
}
#mainContent ol.keyColorCircle > li,
#mainContent ul.keyColorCircle > li {
  list-style-type: none;
  list-style-position: outside;
  position: relative;
}
#mainContent ol.keyColorCircle > li:before,
#mainContent ul.keyColorCircle > li:before {
  position: absolute;
  left: -1.125em;
  content: "●";
  color: var(--keycolorLive);
}
#mainContent ol.kakkosuji,
#mainContent ul.kakkosuji {
  counter-reset: li-kakkosuji 0;
}
#mainContent ol.kakkosuji > li,
#mainContent ul.kakkosuji > li {
  list-style-type: none;
  list-style-position: outside;
  counter-increment: li-kakkosuji;
  position: relative;
}
#mainContent ol.kakkosuji > li:before,
#mainContent ul.kakkosuji > li:before {
  position: absolute;
  left: -1.5em;
  content: "(" counter(li-kakkosuji) ") ";
}
#mainContent ol.hira-aiueo,
#mainContent ul.hira-aiueo,
#mainContent ol.hira-iroha,
#mainContent ul.hira-iroha,
#mainContent ol.kana-aiueo,
#mainContent ul.kana-aiueo,
#mainContent ol.kana-iroha,
#mainContent ul.kana-iroha {
  counter-reset: li-aiueo 0;
}
#mainContent ol.hira-aiueo > li,
#mainContent ul.hira-aiueo > li,
#mainContent ol.hira-iroha > li,
#mainContent ul.hira-iroha > li,
#mainContent ol.kana-aiueo > li,
#mainContent ul.kana-aiueo > li,
#mainContent ol.kana-iroha > li,
#mainContent ul.kana-iroha > li {
  list-style-type: none;
  list-style-position: outside;
  counter-increment: li-aiueo;
  position: relative;
}
#mainContent ol.hira-aiueo > li:before,
#mainContent ul.hira-aiueo > li:before,
#mainContent ol.hira-iroha > li:before,
#mainContent ul.hira-iroha > li:before,
#mainContent ol.kana-aiueo > li:before,
#mainContent ul.kana-aiueo > li:before,
#mainContent ol.kana-iroha > li:before,
#mainContent ul.kana-iroha > li:before {
  position: absolute;
  left: -1.5em;
  content: counter(li-aiueo, hiragana);
}
#mainContent ol.hira-iroha > li:before,
#mainContent ul.hira-iroha > li:before {
  content: counter(li-aiueo, hiragana-iroha);
}
#mainContent ol.kana-aiueo > li:before,
#mainContent ul.kana-aiueo > li:before {
  content: counter(li-aiueo, katakana);
}
#mainContent ol.kana-iroha > li:before,
#mainContent ul.kana-iroha > li:before {
  content: counter(li-aiueo, katakana-iroha);
}
#mainContent ol.marusuji,
#mainContent ul.marusuji {
  counter-reset: li-marusuji 0;
}
#mainContent ol.marusuji > li,
#mainContent ul.marusuji > li {
  list-style-type: none;
  list-style-position: outside;
  counter-increment: li-marusuji;
  position: relative;
}
#mainContent ol.marusuji > li:before,
#mainContent ul.marusuji > li:before {
  position: absolute;
  left: -1.25em;
}
#mainContent ol.marusuji > li:nth-child(1):before,
#mainContent ul.marusuji > li:nth-child(1):before {
  content: "\2460";
}
#mainContent ol.marusuji > li:nth-child(2):before,
#mainContent ul.marusuji > li:nth-child(2):before {
  content: "\2461";
}
#mainContent ol.marusuji > li:nth-child(3):before,
#mainContent ul.marusuji > li:nth-child(3):before {
  content: "\2462";
}
#mainContent ol.marusuji > li:nth-child(4):before,
#mainContent ul.marusuji > li:nth-child(4):before {
  content: "\2463";
}
#mainContent ol.marusuji > li:nth-child(5):before,
#mainContent ul.marusuji > li:nth-child(5):before {
  content: "\2464";
}
#mainContent ol.marusuji > li:nth-child(6):before,
#mainContent ul.marusuji > li:nth-child(6):before {
  content: "\2465";
}
#mainContent ol.marusuji > li:nth-child(7):before,
#mainContent ul.marusuji > li:nth-child(7):before {
  content: "\2466";
}
#mainContent ol.marusuji > li:nth-child(8):before,
#mainContent ul.marusuji > li:nth-child(8):before {
  content: "\2467";
}
#mainContent ol.marusuji > li:nth-child(9):before,
#mainContent ul.marusuji > li:nth-child(9):before {
  content: "\2468";
}
#mainContent ol.marusuji > li:nth-child(10):before,
#mainContent ul.marusuji > li:nth-child(10):before {
  content: "\2469";
}
#mainContent ol.marusuji > li:nth-child(11):before,
#mainContent ul.marusuji > li:nth-child(11):before {
  content: "\2470";
}
#mainContent ol.marusuji > li:nth-child(12):before,
#mainContent ul.marusuji > li:nth-child(12):before {
  content: "\2471";
}
#mainContent ol.marusuji > li:nth-child(13):before,
#mainContent ul.marusuji > li:nth-child(13):before {
  content: "\2472";
}
#mainContent ol.marusuji > li:nth-child(14):before,
#mainContent ul.marusuji > li:nth-child(14):before {
  content: "\2473";
}
#mainContent ol.marusuji > li:nth-child(15):before,
#mainContent ul.marusuji > li:nth-child(15):before {
  content: "\2474";
}
#mainContent ol.marusuji > li:nth-child(16):before,
#mainContent ul.marusuji > li:nth-child(16):before {
  content: "\2475";
}
#mainContent ol.marusuji > li:nth-child(17):before,
#mainContent ul.marusuji > li:nth-child(17):before {
  content: "\2476";
}
#mainContent ol.marusuji > li:nth-child(18):before,
#mainContent ul.marusuji > li:nth-child(18):before {
  content: "\2477";
}
#mainContent ol.marusuji > li:nth-child(19):before,
#mainContent ul.marusuji > li:nth-child(19):before {
  content: "\2478";
}
#mainContent ol.marusuji > li:nth-child(20):before,
#mainContent ul.marusuji > li:nth-child(20):before {
  content: "\2479";
}
#mainContent h3:not([class*="nostyle"]) {
  background-color: var(--keycolor10Live);
  font-family: "游明朝", "Yu Mincho", "YuMincho", "Noto Serif JP", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.3;
  padding: .45em .5em .45em 5.5rem;
  min-height: 4rem;
  margin-bottom: 1em;
  position: relative;
  font-feature-settings: "palt";
}
#mainContent h3:not([class*="nostyle"])::before {
  position: absolute;
  display: flex;
  justify-content: center;
  flex-direction: column;
  vertical-align: middle;
  text-align: center;
  color: #fff;
  background-color: var(--keycolorLive);
  width: 4rem;
  left: 0;
  top: 0;
  bottom: 0;
  content: "";
  background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYAgMAAACdGdVrAAAADFBMVEX////////////////1pQ5zAAAABHRSTlMAPj9As2TFrAAAABtJREFUeF5jAIP92KgsMLUSwtkHpegh9Q8LBQA0zxCH6k53RwAAAABJRU5ErkJggg==');
  background-repeat: repeat;
  background-size: 6px 6px;
  background-blend-mode: overlay;
}
@media (min-width: 768px) {
  #mainContent h3:not([class*="nostyle"]) {
    font-size: 2.4rem;
    min-height: 6rem;
    margin-bottom: 2.8rem;
    padding: .6em .15em .6em 7.5rem;
  }
  #mainContent h3:not([class*="nostyle"])::before {
    width: 6rem;
  }
}
#mainContent h3:not([class*="nostyle"]).withNum::before {
  counter-increment: h3counter;
  content: counter(h3counter);
  text-shadow: 2px 2px 0 var(--keycolor), -2px -2px 0 var(--keycolor), -2px 2px 0 var(--keycolor), 2px -2px 0 var(--keycolor), 0px 2px 0 var(--keycolor), 0 -2px 0 var(--keycolor), -2px 0 0 var(--keycolor), 2px 0 0 var(--keycolor);
}
#mainContent h3:not([class*="nostyle"]).gs,
#mainContent h3:not([class*="nostyle"]).health {
  line-height: 1;
  font-size: 2.2rem;
  height: 50px;
  padding: 0;
  margin-bottom: 18px;
  color: #fff;
  text-shadow: 2px 2px 0 var(--keycolor), -2px -2px 0 var(--keycolor), -2px 2px 0 var(--keycolor), 2px -2px 0 var(--keycolor), 0px 2px 0 var(--keycolor), 0 -2px 0 var(--keycolor), -2px 0 0 var(--keycolor), 2px 0 0 var(--keycolor);
  background-color: transparent;
}
#mainContent h3:not([class*="nostyle"]).gs::before,
#mainContent h3:not([class*="nostyle"]).health::before {
  display: none;
}
#mainContent h3:not([class*="nostyle"]).gs::after,
#mainContent h3:not([class*="nostyle"]).health::after {
  content: "";
  background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYAgMAAACdGdVrAAAADFBMVEX////////////////1pQ5zAAAABHRSTlMAPj9As2TFrAAAABtJREFUeF5jAIP92KgsMLUSwtkHpegh9Q8LBQA0zxCH6k53RwAAAABJRU5ErkJggg==');
  background-repeat: repeat;
  background-size: 6px 6px;
  background-color: var(--keycolor);
  background-blend-mode: overlay;
  opacity: 1;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}
#mainContent h3:not([class*="nostyle"]).health {
  text-shadow: 2px 2px 0 var(--subkeycolor), -2px -2px 0 var(--subkeycolor), -2px 2px 0 var(--subkeycolor), 2px -2px 0 var(--subkeycolor), 0px 2px 0 var(--subkeycolor), 0 -2px 0 var(--subkeycolor), -2px 0 0 var(--subkeycolor), 2px 0 0 var(--subkeycolor);
}
#mainContent h3:not([class*="nostyle"]).health::after {
  background-color: var(--subkeycolor);
}
#mainContent h3:not([class*="nostyle"]).reports {
  color: #fff;
  background-color: var(--keycolorLive);
  border-bottom: 2px solid #d58332;
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
  padding: .4em .75em .25em;
  margin-bottom: .5em;
}
#mainContent h3:not([class*="nostyle"]).reports::before {
  content: "▼";
  background: inherit;
  display: inline;
  width: auto;
  position: inherit;
  vertical-align: inherit;
  margin-right: .125em;
}
#mainContent h3:not([class*="nostyle"]) + h3,
#mainContent h3:not([class*="nostyle"]) + h4,
#mainContent h3:not([class*="nostyle"]) + h5,
#mainContent h3:not([class*="nostyle"]) + h6,
#mainContent h3:not([class*="nostyle"]) + figure {
  margin-top: 1rem !important;
}
#mainContent h4:not([class*="card-"]):not([class*="nostyle"]) {
  color: var(--keycolorLive);
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.3;
  margin-top: 0;
  margin-bottom: 1em;
  font-feature-settings: "palt";
  padding: .5em .25em;
  border-top: 3px double var(--keycolorLive);
  border-bottom: 3px double var(--keycolorLive);
}
@media (min-width: 768px) {
  #mainContent h4:not([class*="card-"]):not([class*="nostyle"]) {
    font-size: 2rem;
    margin-left: 3rem;
    padding: 1em 3rem;
    margin-bottom: 2.8rem;
  }
}
#mainContent h5:not([class*="card-"]):not([class*="nostyle"]) {
  color: var(--keycolorLive);
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 1em;
  padding: .25em .25em;
  font-feature-settings: "palt";
  border-left: 4px solid var(--keycolorLive);
  padding-left: 1rem;
}
@media (min-width: 768px) {
  #mainContent h5:not([class*="card-"]):not([class*="nostyle"]) {
    font-size: 2rem;
    margin-left: 6rem;
    padding: .5em 2rem;
    padding-left: calc(2rem - 5px);
    border-width: 5px;
    margin-bottom: 2.8rem;
  }
}
#mainContent h6:not([class*="card-"]):not([class*="nostyle"]) {
  color: var(--keycolorLive);
  font-weight: bold;
  font-size: 1.6rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 1rem;
  padding: .25em .25em;
  font-feature-settings: "palt";
  border-left: 6px double var(--keycolorLive);
  padding-left: 1rem;
}
@media (min-width: 768px) {
  #mainContent h6:not([class*="card-"]):not([class*="nostyle"]) {
    font-size: 1.8rem;
    margin-left: 6rem;
    margin-bottom: 1rem;
  }
}
#mainContent h6:not([class*="card-"]):not([class*="nostyle"]) + table {
  margin-top: 1.5rem;
}
#mainContent h5.card-title {
  color: var(--keycolorLive);
  font-weight: bold;
  font-size: 1.6rem;
  margin-top: 1em;
}
#mainContent div.card-text.contact p {
  text-indent: 0;
  text-align: left;
  word-break: break-all;
  font-feature-settings: "palt";
}
#mainContent div.introtext {
  position: relative;
  width: auto;
  margin: 0 auto 1.5rem auto;
  text-align: center;
  font-size: calc(100vw / 28);
  font-weight: bold;
  padding: 1em;
  line-height: 1.5;
}
#mainContent div.introtext p {
  margin-bottom: 0;
}
#mainContent div.introtext:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 33px;
  height: 33px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 35 35'%3E%3Cpolyline points='1 34 1 1 34 1' style='fill:none;stroke:%23b0b0b0;stroke-linecap:square;stroke-miterlimit:10;stroke-width:2px'/%3E%3C/svg%3E");
}
#mainContent div.introtext:after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 33px;
  height: 33px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 35 35'%3E%3Cpolyline points='34 1 34 34 1 34' style='fill:none;stroke:%23b0b0b0;stroke-linecap:square;stroke-miterlimit:10;stroke-width:2px'/%3E%3C/svg%3E");
}
@media (min-width: 576px) {
  #mainContent div.introtext {
    font-size: 2rem;
    display: table;
    width: auto;
    min-width: 576px;
  }
}
@media (min-width: 768px) {
  #mainContent div.introtext {
    margin-left: auto;
    margin-right: auto;
  }
}
#mainContent * + div.introtext {
  margin-top: 1.5rem;
}
#mainContent div.schoolColorBox,
#mainContent p.schoolColorBox,
#mainContent h6.schoolColorBox {
  width: auto;
  font-size: 1.3rem;
  color: #fff;
  background-color: #4366b0;
  padding: .5em 1em;
  border-radius: .25em;
  font-weight: bold;
  text-align: center;
  margin: 1.5em auto .5em;
}
@media (min-width: 768px) {
  #mainContent div.schoolColorBox,
  #mainContent p.schoolColorBox,
  #mainContent h6.schoolColorBox {
    font-size: 1.6rem;
    margin-left: 3.6rem;
  }
}
#mainContent .image {
  display: table;
  margin: 0 auto 3rem auto;
  text-align: left;
  min-height: 0;
  font-size: 1.4rem;
  color: #444;
}
@media (min-width: 768px) {
  #mainContent .image {
    margin-left: 6rem;
  }
}
#mainContent .image.align-left {
  float: left;
  margin-right: 1.5em;
  max-width: 50%;
}
#mainContent .image.align-right {
  float: right;
  margin-left: 1.5em !important;
  margin-right: 0;
  max-width: 50%;
}
#mainContent .image.align-center {
  margin: 1em auto 2em auto;
}
@media (min-width: 768px) {
  #mainContent .image.align-center {
    margin-left: 3.6rem;
  }
}
#mainContent .image.align-center img {
  margin: 0 auto;
}
#mainContent .image img {
  display: block;
}
#mainContent .image img:not([class*="nozoom"]) {
  cursor: url('plus_cursor.png') 25 25, zoom-in;
}
@media (max-width: 575.98px) {
  #mainContent .image.spwide {
    display: block;
    width: 100%;
    max-width: 100% !important;
    margin: 1em 0 !important;
    float: none !important;
    height: auto;
  }
  #mainContent .image.spwide img {
    width: 100%;
    max-width: 100% !important;
  }
}
#mainContent .image figcaption {
  position: relative;
  color: #666;
  font-size: .875em;
  font-weight: 600;
  text-align: center;
  padding: 1em 0 0;
  font-feature-settings: "palt";
  line-height: 1.1;
  display: table-caption;
  caption-side: bottom;
  margin-top: .1em;
  min-height: 3em;
  word-break: keep-all;
  /* Firefox */
}
@-moz-document url-prefix() {
  #mainContent .image figcaption {
    word-break: normal;
  }
}
#mainContent .image.captionTop figcaption {
  caption-side: top;
  margin-bottom: .1em;
}
#mainContent span.imgzoom {
  cursor: pointer;
}
#mainContent table {
  margin-bottom: 6rem;
  width: 100%;
  border: none;
  table-layout: auto;
  border-top: 1px solid #999ba1;
  border-bottom: 1px solid #999ba1;
}
@media (min-width: 768px) {
  #mainContent table {
    margin-left: 3rem !important;
    width: calc(100% - 3rem) !important;
  }
}
#mainContent table td,
#mainContent table th {
  padding: .5em 1em;
  border-left: 1px solid #cccdd0;
  border-right: 1px solid #cccdd0;
  line-height: 1.4;
  text-align: left;
}
#mainContent table td:first-child,
#mainContent table th:first-child {
  border-left: none;
}
#mainContent table td:last-child,
#mainContent table th:last-child {
  border-right: none;
}
#mainContent table td *,
#mainContent table th * {
  margin: 0 !important;
}
#mainContent table td > .image,
#mainContent table th > .image {
  margin-top: 0;
  margin-bottom: 1em;
  margin-left: 0 !important;
  margin-right: auto !important;
}
#mainContent table th {
  background-color: var(--keycolor100Live);
}
#mainContent table tr.even {
  background-color: #f1f1f1;
  border-top: 1px solid #cccdd0;
}
#mainContent table tr.even th {
  background-color: #dedfe0;
}
#mainContent table tr.even + tr.even {
  border-top: 1px solid #cccdd0;
}
#mainContent table tr.odd {
  background-color: #fff;
  border-top: 1px solid #cccdd0;
}
#mainContent table tr.odd th {
  background-color: #f1f1f1;
}
#mainContent table tr.odd + tr.odd {
  border-top: 1px solid #cccdd0;
}
#mainContent table.white tr {
  background-color: #fff !important;
}
#mainContent table thead tr {
  background-color: #fff !important;
  border-bottom: 1px solid #cccdd0;
}
#mainContent table thead td {
  border-top: 1px solid #fff;
  background-color: transparent;
  border-right: none;
}
#mainContent table thead th {
  background-color: var(--keycolorLive) !important;
  color: #fff;
  font-weight: bold;
  border-right: 1px solid #fff;
}
#mainContent table tfoot tr {
  border-top-width: 3px;
  border-top-style: double;
  border-top-color: #cccdd0;
}
#mainContent table tfoot tr th {
  font-weight: bold;
}
#mainContent table.phototable {
  border: none !important;
  width: auto;
  margin-right: -0.5em;
  margin: 0 0 1em 0;
}
#mainContent table.phototable > tbody > tr {
  background-color: transparent !important;
}
#mainContent table.phototable > tbody > tr > td,
#mainContent table.phototable > tbody > tr > th {
  padding: 0 1em .5em 0 !important;
  border: none !important;
  vertical-align: top;
}
#mainContent table.phototable > tbody > tr > td .image,
#mainContent table.phototable > tbody > tr > th .image {
  margin: 0 auto 0 auto !important;
  float: none;
}
@media (max-width: 575.98px) {
  #mainContent table.phototable > tbody > tr > td,
  #mainContent table.phototable > tbody > tr > th {
    display: block;
    width: 100% !important;
    padding: 0 !important;
  }
  #mainContent table.phototable > tbody > tr > td .image,
  #mainContent table.phototable > tbody > tr > th .image {
    margin: 1em 0 !important;
  }
}
#mainContent table.phototable + * {
  margin-top: 0;
}
#mainContent table.transparent {
  border: none !important;
  width: auto;
  margin: 0 0 1em 0 !important;
}
#mainContent table.transparent > tbody > tr {
  background-color: transparent !important;
  border: none !important;
}
#mainContent table.transparent > tbody > tr > td,
#mainContent table.transparent > tbody > tr > th {
  padding: 0 !important;
  border: none !important;
  vertical-align: top;
}
#mainContent table.transparent > tbody > tr > td .image,
#mainContent table.transparent > tbody > tr > th .image {
  margin: 0 1em 2em !important;
  float: none;
}
#mainContent table.transparent + * {
  margin-top: 0;
}
#mainContent div.table-scroll + h3 {
  margin-top: 6rem;
}
#mainContent div.table-scroll + p {
  margin-top: -1rem;
}
@media (min-width: 992px) {
  #mainContent div.table-scroll + ul.notes {
    margin-top: -2rem;
  }
}
@media screen and (max-width: 991.98px) {
  #mainContent div.table-scroll {
    overflow-x: scroll;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    margin-top: 2rem;
    margin-bottom: 1rem;
  }
  #mainContent div.table-scroll > table {
    margin: 0 auto 0 0;
    margin-bottom: .25rem;
    width: auto;
    min-width: 100%;
    max-width: auto;
  }
  #mainContent div.table-scroll > table th {
    white-space: nowrap;
  }
  #mainContent div.table-scroll > table tbody th,
  #mainContent div.table-scroll > table tbody td {
    width: auto;
    max-width: none;
    white-space: nowrap;
  }
  #mainContent div.table-scroll::-webkit-scrollbar {
    height: 5px;
  }
  #mainContent div.table-scroll::-webkit-scrollbar-track {
    border-radius: 5px;
    background: #f0f0f0;
  }
  #mainContent div.table-scroll::-webkit-scrollbar-thumb {
    border-radius: 5px;
    background: #ccc;
  }
}
#mainContent > div.row > *:not([class*="icon-"]) {
  margin-left: 0;
  margin-right: 0;
}
#mainContent .p-margin-left {
  margin-left: 0;
}
@media (min-width: 768px) {
  #mainContent .p-margin-left {
    margin-left: 6rem !important;
    width: calc(100% - 6rem) !important;
  }
}
#mainContent .subMenulist + p {
  margin-left: 0;
}
#mainContent > p:first-child,
#mainContent #leftwrap > p:first-child {
  margin-left: 0;
}
figcaption > h1 {
  font-size: 1.6rem !important;
  letter-spacing: 0 !important;
  line-height: 1.4 !important;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
#mainContent #ctgMenuWrapper {
  padding-left: 32px;
}
#mainContent #ctgMenuWrapper > ul {
  background-color: var(--keycolor10Live);
  font-size: 1.4rem;
  list-style: none;
  padding: 0;
  margin: 0;
  font-feature-settings: "palt";
}
#mainContent #ctgMenuWrapper > ul li {
  padding: 0;
  margin: 0;
}
#mainContent #ctgMenuWrapper > ul li.level2.active > a,
#mainContent #ctgMenuWrapper > ul li.level2.current > a,
#mainContent #ctgMenuWrapper > ul li.level2 .hover {
  text-decoration: none !important;
  background-color: var(--keygray) !important;
  color: #fff !important;
}
#mainContent #ctgMenuWrapper > ul li.level1 > a {
  display: block;
  padding: 12px;
  font-weight: bold;
  background-color: var(--keycolorLive) !important;
  color: white;
}
#mainContent #ctgMenuWrapper > ul li.level1 ul {
  font-size: 1.4rem;
  list-style: none;
  margin: 0 !important;
  padding: 0  !important;
}
#mainContent #ctgMenuWrapper > ul li.level1 ul li.level2 a {
  display: block;
  padding: .5em;
}
#mainContent #ctgMenuWrapper > ul li.level1 ul li.level2.even a {
  background-color: var(--keycolor5Live);
}
#mainContent #ctgMenuWrapper > ul li.level1 ul li.level2 li.level3 {
  position: relative;
}
#mainContent #ctgMenuWrapper > ul li.level1 ul li.level2 li.level3 a {
  padding-left: 1.75em;
}
#mainContent #ctgMenuWrapper > ul li.level1 ul li.level2 li.level3 a::before {
  content: '└';
  position: absolute;
  top: .6em;
  left: .5em;
}
#mainContent #ctgMenuWrapper > ul li.level1 ul li.level2 li.level3.current a {
  font-weight: bold;
  background-color: #ddd;
}
@media (min-width: 768px) {
  #mainContent {
    padding-top: 2rem;
  }
}
#mainContent #topicsBlock .topicsList,
#mainContent #eventsBlock .topicsList,
#mainContent #archiveBlock .topicsList,
#mainContent #reportsBlock .topicsList,
#mainContent #topicsBlock .eventsList,
#mainContent #eventsBlock .eventsList,
#mainContent #archiveBlock .eventsList,
#mainContent #reportsBlock .eventsList,
#mainContent #topicsBlock .reportsList,
#mainContent #eventsBlock .reportsList,
#mainContent #archiveBlock .reportsList,
#mainContent #reportsBlock .reportsList {
  list-style: none;
}
#mainContent #topicsBlock .topicsList li,
#mainContent #eventsBlock .topicsList li,
#mainContent #archiveBlock .topicsList li,
#mainContent #reportsBlock .topicsList li,
#mainContent #topicsBlock .eventsList li,
#mainContent #eventsBlock .eventsList li,
#mainContent #archiveBlock .eventsList li,
#mainContent #reportsBlock .eventsList li,
#mainContent #topicsBlock .reportsList li,
#mainContent #eventsBlock .reportsList li,
#mainContent #archiveBlock .reportsList li,
#mainContent #reportsBlock .reportsList li {
  background-color: transparent;
  padding-bottom: 18px;
  margin-bottom: 18px;
  font-feature-settings: "palt";
  border-bottom: 1px solid #e3e3e3;
}
#mainContent #topicsBlock .topicsList li.fixed,
#mainContent #eventsBlock .topicsList li.fixed,
#mainContent #archiveBlock .topicsList li.fixed,
#mainContent #reportsBlock .topicsList li.fixed,
#mainContent #topicsBlock .eventsList li.fixed,
#mainContent #eventsBlock .eventsList li.fixed,
#mainContent #archiveBlock .eventsList li.fixed,
#mainContent #reportsBlock .eventsList li.fixed,
#mainContent #topicsBlock .reportsList li.fixed,
#mainContent #eventsBlock .reportsList li.fixed,
#mainContent #archiveBlock .reportsList li.fixed,
#mainContent #reportsBlock .reportsList li.fixed {
  background-color: #f1f1f1;
  padding-top: 6px;
  padding-bottom: 6px;
  border: 1px solid #ccc;
}
#mainContent #topicsBlock .topicsList li.fixed .datestr,
#mainContent #eventsBlock .topicsList li.fixed .datestr,
#mainContent #archiveBlock .topicsList li.fixed .datestr,
#mainContent #reportsBlock .topicsList li.fixed .datestr,
#mainContent #topicsBlock .eventsList li.fixed .datestr,
#mainContent #eventsBlock .eventsList li.fixed .datestr,
#mainContent #archiveBlock .eventsList li.fixed .datestr,
#mainContent #reportsBlock .eventsList li.fixed .datestr,
#mainContent #topicsBlock .reportsList li.fixed .datestr,
#mainContent #eventsBlock .reportsList li.fixed .datestr,
#mainContent #archiveBlock .reportsList li.fixed .datestr,
#mainContent #reportsBlock .reportsList li.fixed .datestr {
  display: none;
}
#mainContent #topicsBlock .topicsList li.fixed + .fixed,
#mainContent #eventsBlock .topicsList li.fixed + .fixed,
#mainContent #archiveBlock .topicsList li.fixed + .fixed,
#mainContent #reportsBlock .topicsList li.fixed + .fixed,
#mainContent #topicsBlock .eventsList li.fixed + .fixed,
#mainContent #eventsBlock .eventsList li.fixed + .fixed,
#mainContent #archiveBlock .eventsList li.fixed + .fixed,
#mainContent #reportsBlock .eventsList li.fixed + .fixed,
#mainContent #topicsBlock .reportsList li.fixed + .fixed,
#mainContent #eventsBlock .reportsList li.fixed + .fixed,
#mainContent #archiveBlock .reportsList li.fixed + .fixed,
#mainContent #reportsBlock .reportsList li.fixed + .fixed {
  margin-top: -10px;
}
#mainContent #topicsBlock .topicsList li .pagetitle,
#mainContent #eventsBlock .topicsList li .pagetitle,
#mainContent #archiveBlock .topicsList li .pagetitle,
#mainContent #reportsBlock .topicsList li .pagetitle,
#mainContent #topicsBlock .eventsList li .pagetitle,
#mainContent #eventsBlock .eventsList li .pagetitle,
#mainContent #archiveBlock .eventsList li .pagetitle,
#mainContent #reportsBlock .eventsList li .pagetitle,
#mainContent #topicsBlock .reportsList li .pagetitle,
#mainContent #eventsBlock .reportsList li .pagetitle,
#mainContent #archiveBlock .reportsList li .pagetitle,
#mainContent #reportsBlock .reportsList li .pagetitle {
  font-size: 1.6rem;
  line-height: 1.5;
}
#mainContent #topicsBlock .topicsList li .pagetitle .new,
#mainContent #eventsBlock .topicsList li .pagetitle .new,
#mainContent #archiveBlock .topicsList li .pagetitle .new,
#mainContent #reportsBlock .topicsList li .pagetitle .new,
#mainContent #topicsBlock .eventsList li .pagetitle .new,
#mainContent #eventsBlock .eventsList li .pagetitle .new,
#mainContent #archiveBlock .eventsList li .pagetitle .new,
#mainContent #reportsBlock .eventsList li .pagetitle .new,
#mainContent #topicsBlock .reportsList li .pagetitle .new,
#mainContent #eventsBlock .reportsList li .pagetitle .new,
#mainContent #archiveBlock .reportsList li .pagetitle .new,
#mainContent #reportsBlock .reportsList li .pagetitle .new {
  margin-left: .5em;
  vertical-align: middle;
  font-size: 1.1rem;
  line-height: 1;
}
#mainContent #topicsBlock .topicsList li .pagetitle span.badge,
#mainContent #eventsBlock .topicsList li .pagetitle span.badge,
#mainContent #archiveBlock .topicsList li .pagetitle span.badge,
#mainContent #reportsBlock .topicsList li .pagetitle span.badge,
#mainContent #topicsBlock .eventsList li .pagetitle span.badge,
#mainContent #eventsBlock .eventsList li .pagetitle span.badge,
#mainContent #archiveBlock .eventsList li .pagetitle span.badge,
#mainContent #reportsBlock .eventsList li .pagetitle span.badge,
#mainContent #topicsBlock .reportsList li .pagetitle span.badge,
#mainContent #eventsBlock .reportsList li .pagetitle span.badge,
#mainContent #archiveBlock .reportsList li .pagetitle span.badge,
#mainContent #reportsBlock .reportsList li .pagetitle span.badge {
  font-size: 1.1rem;
  line-height: 1;
}
#mainContent #topicsBlock .topicsList li .pagetitle > *,
#mainContent #eventsBlock .topicsList li .pagetitle > *,
#mainContent #archiveBlock .topicsList li .pagetitle > *,
#mainContent #reportsBlock .topicsList li .pagetitle > *,
#mainContent #topicsBlock .eventsList li .pagetitle > *,
#mainContent #eventsBlock .eventsList li .pagetitle > *,
#mainContent #archiveBlock .eventsList li .pagetitle > *,
#mainContent #reportsBlock .eventsList li .pagetitle > *,
#mainContent #topicsBlock .reportsList li .pagetitle > *,
#mainContent #eventsBlock .reportsList li .pagetitle > *,
#mainContent #archiveBlock .reportsList li .pagetitle > *,
#mainContent #reportsBlock .reportsList li .pagetitle > * {
  vertical-align: middle;
}
#mainContent #topicsBlock .topicsList li .date,
#mainContent #eventsBlock .topicsList li .date,
#mainContent #archiveBlock .topicsList li .date,
#mainContent #reportsBlock .topicsList li .date,
#mainContent #topicsBlock .eventsList li .date,
#mainContent #eventsBlock .eventsList li .date,
#mainContent #archiveBlock .eventsList li .date,
#mainContent #reportsBlock .eventsList li .date,
#mainContent #topicsBlock .reportsList li .date,
#mainContent #eventsBlock .reportsList li .date,
#mainContent #archiveBlock .reportsList li .date,
#mainContent #reportsBlock .reportsList li .date {
  text-align: left;
  font-size: 1.4rem;
  margin-bottom: 4px;
}
#mainContent #topicsBlock .topicsList li .date > span,
#mainContent #eventsBlock .topicsList li .date > span,
#mainContent #archiveBlock .topicsList li .date > span,
#mainContent #reportsBlock .topicsList li .date > span,
#mainContent #topicsBlock .eventsList li .date > span,
#mainContent #eventsBlock .eventsList li .date > span,
#mainContent #archiveBlock .eventsList li .date > span,
#mainContent #reportsBlock .eventsList li .date > span,
#mainContent #topicsBlock .reportsList li .date > span,
#mainContent #eventsBlock .reportsList li .date > span,
#mainContent #archiveBlock .reportsList li .date > span,
#mainContent #reportsBlock .reportsList li .date > span {
  vertical-align: middle;
  line-height: 1;
}
#mainContent #topicsBlock .topicsList li .date > span.badge,
#mainContent #eventsBlock .topicsList li .date > span.badge,
#mainContent #archiveBlock .topicsList li .date > span.badge,
#mainContent #reportsBlock .topicsList li .date > span.badge,
#mainContent #topicsBlock .eventsList li .date > span.badge,
#mainContent #eventsBlock .eventsList li .date > span.badge,
#mainContent #archiveBlock .eventsList li .date > span.badge,
#mainContent #reportsBlock .eventsList li .date > span.badge,
#mainContent #topicsBlock .reportsList li .date > span.badge,
#mainContent #eventsBlock .reportsList li .date > span.badge,
#mainContent #archiveBlock .reportsList li .date > span.badge,
#mainContent #reportsBlock .reportsList li .date > span.badge {
  font-size: 1.1rem;
}
#mainContent #topicsBlock .topicsList li .date > span.badge.ctg1,
#mainContent #eventsBlock .topicsList li .date > span.badge.ctg1,
#mainContent #archiveBlock .topicsList li .date > span.badge.ctg1,
#mainContent #reportsBlock .topicsList li .date > span.badge.ctg1,
#mainContent #topicsBlock .eventsList li .date > span.badge.ctg1,
#mainContent #eventsBlock .eventsList li .date > span.badge.ctg1,
#mainContent #archiveBlock .eventsList li .date > span.badge.ctg1,
#mainContent #reportsBlock .eventsList li .date > span.badge.ctg1,
#mainContent #topicsBlock .reportsList li .date > span.badge.ctg1,
#mainContent #eventsBlock .reportsList li .date > span.badge.ctg1,
#mainContent #archiveBlock .reportsList li .date > span.badge.ctg1,
#mainContent #reportsBlock .reportsList li .date > span.badge.ctg1 {
  background-color: var(--keycolor);
}
#mainContent #topicsBlock .topicsList li .date > span.badge.ctg2,
#mainContent #eventsBlock .topicsList li .date > span.badge.ctg2,
#mainContent #archiveBlock .topicsList li .date > span.badge.ctg2,
#mainContent #reportsBlock .topicsList li .date > span.badge.ctg2,
#mainContent #topicsBlock .eventsList li .date > span.badge.ctg2,
#mainContent #eventsBlock .eventsList li .date > span.badge.ctg2,
#mainContent #archiveBlock .eventsList li .date > span.badge.ctg2,
#mainContent #reportsBlock .eventsList li .date > span.badge.ctg2,
#mainContent #topicsBlock .reportsList li .date > span.badge.ctg2,
#mainContent #eventsBlock .reportsList li .date > span.badge.ctg2,
#mainContent #archiveBlock .reportsList li .date > span.badge.ctg2,
#mainContent #reportsBlock .reportsList li .date > span.badge.ctg2 {
  background-color: #a64b63;
}
#mainContent #topicsBlock .topicsList li .date > span.badge.ctg3,
#mainContent #eventsBlock .topicsList li .date > span.badge.ctg3,
#mainContent #archiveBlock .topicsList li .date > span.badge.ctg3,
#mainContent #reportsBlock .topicsList li .date > span.badge.ctg3,
#mainContent #topicsBlock .eventsList li .date > span.badge.ctg3,
#mainContent #eventsBlock .eventsList li .date > span.badge.ctg3,
#mainContent #archiveBlock .eventsList li .date > span.badge.ctg3,
#mainContent #reportsBlock .eventsList li .date > span.badge.ctg3,
#mainContent #topicsBlock .reportsList li .date > span.badge.ctg3,
#mainContent #eventsBlock .reportsList li .date > span.badge.ctg3,
#mainContent #archiveBlock .reportsList li .date > span.badge.ctg3,
#mainContent #reportsBlock .reportsList li .date > span.badge.ctg3 {
  background-color: #895090;
}
#mainContent #topicsBlock .topicsList li .date > span.badge.ctg4,
#mainContent #eventsBlock .topicsList li .date > span.badge.ctg4,
#mainContent #archiveBlock .topicsList li .date > span.badge.ctg4,
#mainContent #reportsBlock .topicsList li .date > span.badge.ctg4,
#mainContent #topicsBlock .eventsList li .date > span.badge.ctg4,
#mainContent #eventsBlock .eventsList li .date > span.badge.ctg4,
#mainContent #archiveBlock .eventsList li .date > span.badge.ctg4,
#mainContent #reportsBlock .eventsList li .date > span.badge.ctg4,
#mainContent #topicsBlock .reportsList li .date > span.badge.ctg4,
#mainContent #eventsBlock .reportsList li .date > span.badge.ctg4,
#mainContent #archiveBlock .reportsList li .date > span.badge.ctg4,
#mainContent #reportsBlock .reportsList li .date > span.badge.ctg4 {
  background-color: #d4780d;
}
#mainContent #topicsBlock .topicsList li .date > span.badge.ctg5,
#mainContent #eventsBlock .topicsList li .date > span.badge.ctg5,
#mainContent #archiveBlock .topicsList li .date > span.badge.ctg5,
#mainContent #reportsBlock .topicsList li .date > span.badge.ctg5,
#mainContent #topicsBlock .eventsList li .date > span.badge.ctg5,
#mainContent #eventsBlock .eventsList li .date > span.badge.ctg5,
#mainContent #archiveBlock .eventsList li .date > span.badge.ctg5,
#mainContent #reportsBlock .eventsList li .date > span.badge.ctg5,
#mainContent #topicsBlock .reportsList li .date > span.badge.ctg5,
#mainContent #eventsBlock .reportsList li .date > span.badge.ctg5,
#mainContent #archiveBlock .reportsList li .date > span.badge.ctg5,
#mainContent #reportsBlock .reportsList li .date > span.badge.ctg5 {
  background-color: #5f449e;
}
#mainContent #topicsBlock .topicsList li .date > span.badge.ctg7,
#mainContent #eventsBlock .topicsList li .date > span.badge.ctg7,
#mainContent #archiveBlock .topicsList li .date > span.badge.ctg7,
#mainContent #reportsBlock .topicsList li .date > span.badge.ctg7,
#mainContent #topicsBlock .eventsList li .date > span.badge.ctg7,
#mainContent #eventsBlock .eventsList li .date > span.badge.ctg7,
#mainContent #archiveBlock .eventsList li .date > span.badge.ctg7,
#mainContent #reportsBlock .eventsList li .date > span.badge.ctg7,
#mainContent #topicsBlock .reportsList li .date > span.badge.ctg7,
#mainContent #eventsBlock .reportsList li .date > span.badge.ctg7,
#mainContent #archiveBlock .reportsList li .date > span.badge.ctg7,
#mainContent #reportsBlock .reportsList li .date > span.badge.ctg7 {
  background-color: var(--subkeycolor);
}
#mainContent #topicsBlock .topicsList li .date > span.badge.ctg8,
#mainContent #eventsBlock .topicsList li .date > span.badge.ctg8,
#mainContent #archiveBlock .topicsList li .date > span.badge.ctg8,
#mainContent #reportsBlock .topicsList li .date > span.badge.ctg8,
#mainContent #topicsBlock .eventsList li .date > span.badge.ctg8,
#mainContent #eventsBlock .eventsList li .date > span.badge.ctg8,
#mainContent #archiveBlock .eventsList li .date > span.badge.ctg8,
#mainContent #reportsBlock .eventsList li .date > span.badge.ctg8,
#mainContent #topicsBlock .reportsList li .date > span.badge.ctg8,
#mainContent #eventsBlock .reportsList li .date > span.badge.ctg8,
#mainContent #archiveBlock .reportsList li .date > span.badge.ctg8,
#mainContent #reportsBlock .reportsList li .date > span.badge.ctg8 {
  background-color: #f94191;
}
#mainContent #topicsBlock .topicsList li .date > span.badge.ctg9,
#mainContent #eventsBlock .topicsList li .date > span.badge.ctg9,
#mainContent #archiveBlock .topicsList li .date > span.badge.ctg9,
#mainContent #reportsBlock .topicsList li .date > span.badge.ctg9,
#mainContent #topicsBlock .eventsList li .date > span.badge.ctg9,
#mainContent #eventsBlock .eventsList li .date > span.badge.ctg9,
#mainContent #archiveBlock .eventsList li .date > span.badge.ctg9,
#mainContent #reportsBlock .eventsList li .date > span.badge.ctg9,
#mainContent #topicsBlock .reportsList li .date > span.badge.ctg9,
#mainContent #eventsBlock .reportsList li .date > span.badge.ctg9,
#mainContent #archiveBlock .reportsList li .date > span.badge.ctg9,
#mainContent #reportsBlock .reportsList li .date > span.badge.ctg9 {
  background-color: #e61b0a;
}
#mainContent #topicsBlock .topicsList li .desc,
#mainContent #eventsBlock .topicsList li .desc,
#mainContent #archiveBlock .topicsList li .desc,
#mainContent #reportsBlock .topicsList li .desc,
#mainContent #topicsBlock .eventsList li .desc,
#mainContent #eventsBlock .eventsList li .desc,
#mainContent #archiveBlock .eventsList li .desc,
#mainContent #reportsBlock .eventsList li .desc,
#mainContent #topicsBlock .reportsList li .desc,
#mainContent #eventsBlock .reportsList li .desc,
#mainContent #archiveBlock .reportsList li .desc,
#mainContent #reportsBlock .reportsList li .desc {
  color: #444;
  font-size: 1.5rem;
}
#mainContent #topicsBlock .topicsList li a .filedetail,
#mainContent #eventsBlock .topicsList li a .filedetail,
#mainContent #archiveBlock .topicsList li a .filedetail,
#mainContent #reportsBlock .topicsList li a .filedetail,
#mainContent #topicsBlock .eventsList li a .filedetail,
#mainContent #eventsBlock .eventsList li a .filedetail,
#mainContent #archiveBlock .eventsList li a .filedetail,
#mainContent #reportsBlock .eventsList li a .filedetail,
#mainContent #topicsBlock .reportsList li a .filedetail,
#mainContent #eventsBlock .reportsList li a .filedetail,
#mainContent #archiveBlock .reportsList li a .filedetail,
#mainContent #reportsBlock .reportsList li a .filedetail {
  font-size: 1.1rem;
}
#mainContent #topicsBlock .topicsList li.dummy,
#mainContent #eventsBlock .topicsList li.dummy,
#mainContent #archiveBlock .topicsList li.dummy,
#mainContent #reportsBlock .topicsList li.dummy,
#mainContent #topicsBlock .eventsList li.dummy,
#mainContent #eventsBlock .eventsList li.dummy,
#mainContent #archiveBlock .eventsList li.dummy,
#mainContent #reportsBlock .eventsList li.dummy,
#mainContent #topicsBlock .reportsList li.dummy,
#mainContent #eventsBlock .reportsList li.dummy,
#mainContent #archiveBlock .reportsList li.dummy,
#mainContent #reportsBlock .reportsList li.dummy {
  height: 0;
  padding: 0;
  margin: 0;
  border: none;
}
#mainContent #topicsBlock div.archive > a,
#mainContent #eventsBlock div.archive > a,
#mainContent #archiveBlock div.archive > a,
#mainContent #reportsBlock div.archive > a {
  display: block;
  position: relative;
  height: 40px;
  padding: 0 8px;
  font-size: 1.6rem;
  text-align: center;
  color: #fff;
  font-weight: bold;
  background-color: var(--keygray);
}
#mainContent #topicsBlock div.archive > a.hover,
#mainContent #eventsBlock div.archive > a.hover,
#mainContent #archiveBlock div.archive > a.hover,
#mainContent #reportsBlock div.archive > a.hover {
  text-decoration: none !important;
}
#mainContent #topicsBlock div.archive > a::before,
#mainContent #eventsBlock div.archive > a::before,
#mainContent #archiveBlock div.archive > a::before,
#mainContent #reportsBlock div.archive > a::before {
  width: 0;
  overflow: visible;
  font-size: 1.2rem;
  display: inline-flex;
  align-self: center !important;
  margin: auto 0;
}
#mainContent #reportsBlock {
  margin: 3rem 0;
}
#mainContent #reportsBlock ul.reportsList {
  margin-left: 0;
  border: 2px solid var(--keycolorLive);
}
#mainContent #reportsBlock ul.reportsList > li {
  display: none;
  padding-top: .5em;
  padding-bottom: .5em;
  margin-bottom: 0;
  background-color: #fff;
}
#mainContent #reportsBlock ul.reportsList > li.show {
  display: list-item;
  animation-name: fadein;
  animation-duration: 1s;
  margin-bottom: 3px;
}
#mainContent #reportsBlock ul.reportsList > li.show.bk {
  background-color: var(--keycolor5Live);
}
#mainContent #reportsBlock #reportsYears {
  margin: 0;
  padding: 0;
  list-style: none;
  white-space: nowrap;
  overflow-x: auto;
  font-size: 0;
  line-height: 1;
}
#mainContent #reportsBlock #reportsYears > li {
  display: inline-block;
  margin-right: .5em;
  font-size: 1.5rem;
}
#mainContent #reportsBlock #reportsYears > li:last-child {
  margin-right: 0;
}
#mainContent #reportsBlock #reportsYears > li > a {
  display: block;
  padding: .75em 1em .5em;
  line-height: 1;
  color: #fff;
  background-color: var(--keycolor50Live);
  opacity: .8;
  text-decoration: none !important;
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
}
#mainContent #reportsBlock #reportsYears > li > a > span.yt {
  font-size: .8em;
}
#mainContent #reportsBlock #reportsYears > li > a.hover {
  background-color: var(--keycolor90Live) !important;
  opacity: .9 !important;
}
#mainContent #reportsBlock #reportsYears > li.active > a {
  background-color: var(--keycolor75Live);
  opacity: 1;
}
@media (min-width: 768px) {
  #mainContent #archiveBlock ul.topicsList {
    margin-left: 3rem;
  }
}
#mainContent #archiveBlock ul.topicsList li {
  display: none;
}
#mainContent #archiveBlock ul.topicsList li.show {
  display: list-item;
  animation-name: fadein;
  animation-duration: 1s;
}
#mainContent #archiveYears {
  list-style: none;
  padding: .25em;
  border: 2px solid #fff;
  border-color: var(--keycolorLive);
  background-color: var(--keycolorLive10);
  white-space: nowrap;
  overflow-x: auto;
}
#mainContent #archiveYears > li {
  font-size: 1.5rem;
  display: inline-block;
}
#mainContent #archiveYears > li > a {
  display: block;
  padding: .125em .5em;
  line-height: 1;
  border-right: 1px solid;
  border-right-color: var(--keycolorLive);
}
#mainContent #archiveYears > li.active {
  font-weight: bold;
}
#mainContent #archiveYears > li:last-child > a {
  border-right: none;
}
@media (min-width: 768px) {
  #mainContent #archiveYears {
    border: none;
    background: none;
    white-space: normal;
    overflow: hidden;
  }
  #mainContent #archiveYears > li {
    display: list-item;
  }
  #mainContent #archiveYears > li > a {
    border: none;
    display: inline;
    padding: 0;
    line-height: inherit;
  }
}
@keyframes fadein {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
#mainContent #programListCarousel {
  margin-bottom: 2em;
  overflow: hidden;
}
@media (min-width: 768px) {
  #mainContent #programListCarousel {
    margin-bottom: 3em;
  }
}
@media (min-width: 1000.1px) {
  #mainContent #programListCarousel {
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: auto;
  }
}
@media (min-width: 768px) {
  #mainContent #programListCarousel #programList {
    overflow: hidden;
    flex-wrap: nowrap;
  }
}
#mainContent #programListCarousel #programList * {
  margin-left: 0;
  margin-right: 0;
}
#mainContent #programListCarousel #programList div.programCard {
  padding: 0;
  width: 100%;
}
#mainContent #programListCarousel #programList div.programCard > a {
  border: 1px solid #cccdd0;
}
#mainContent #programListCarousel #programList div.programCard > a > h6 {
  position: relative;
  font-size: 1.6rem;
  color: #333;
  font-weight: bold;
  font-feature-settings: "palt";
  padding: 0 30px 0 .8em;
  width: 50%;
  text-align: left;
  margin: 0;
}
@media (min-width: 360px) {
  #mainContent #programListCarousel #programList div.programCard > a > h6 {
    font-size: 2rem;
  }
}
#mainContent #programListCarousel #programList div.programCard > a > h6 > span {
  display: block;
  word-break: keep-all;
}
#mainContent #programListCarousel #programList div.programCard > a > h6 > svg.bar {
  height: 93%;
  position: absolute;
  top: -1px;
  right: 8px;
  z-index: 99;
}
#mainContent #programListCarousel #programList div.programCard > a .image {
  margin: 0 !important;
  overflow: hidden;
  height: 0;
  padding-bottom: 52.174%;
  display: block;
  position: relative;
}
#mainContent #programListCarousel #programList div.programCard > a .image img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 101%;
  max-width: none !important;
}
#mainContent #programListCarousel #programList div.programCard > a.hover {
  text-decoration: none !important;
  opacity: .75;
  cursor: pointer;
}
@media (min-width: 576px) {
  #mainContent #programListCarousel #programList div.programCard {
    height: 0;
    overflow: hidden;
    padding-bottom: 89.36%;
    position: relative;
  }
  #mainContent #programListCarousel #programList div.programCard > a {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }
  #mainContent #programListCarousel #programList div.programCard > a > h6 {
    width: 100%;
    height: 60px;
    line-height: 1.1;
  }
  #mainContent #programListCarousel #programList div.programCard > a > h6 > span {
    white-space: nowrap;
    overflow: visible;
  }
  #mainContent #programListCarousel #programList div.programCard > a > h6 br {
    display: none;
  }
  #mainContent #programListCarousel #programList div.programCard > a .image {
    padding-bottom: 63.830%;
  }
}
/* for IE */
_:-ms-input-placeholder body,
:root body {
  font-family: 'Meiryo UI', "メイリオ", Meiryo, "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
_:-ms-input-placeholder #mainMenu > ul > li > a > div > span,
:root #mainMenu > ul > li > a > div > span {
  font-weight: normal;
}
_:-ms-input-placeholder #mainContent .image img:not([class*="nozoom"]),
:root #mainContent .image img:not([class*="nozoom"]) {
  cursor: url('plus_cursor.cur'), auto !important;
}
_:-ms-input-placeholder #mainContent h3:not([class*="nostyle"]),
:root #mainContent h3:not([class*="nostyle"]) {
  font-family: "Noto Serif JP", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
_:-ms-input-placeholder #container_wrapper,
:root #container_wrapper {
  height: 100vh;
}
_:-ms-input-placeholder #container_wrapper > div.container,
:root #container_wrapper > div.container {
  padding-bottom: 3em;
}
_:-ms-input-placeholder #ctgHeader_wrapper > #ctgHeader > h2,
:root #ctgHeader_wrapper > #ctgHeader > h2 {
  font-family: "Noto Serif JP", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
_:-ms-input-placeholder #ctgHeader_wrapper::after,
:root #ctgHeader_wrapper::after {
  opacity: .15;
}
/* for Edge */
_:-ms-lang(x),
#ctgHeader_wrapper::after {
  opacity: .15;
  filter: invert(100);
}
/* for firefox */
html.firefox ol,
html.firefox ul {
  counter-reset: list-item !important;
}
@media print {
  html,
  body,
  #container_wrapper {
    height: auto !important;
    max-height: none !important;
    display: block !important;
  }
  #pageTop,
  #btmSubMenu,
  #footer_wrapper {
    display: none;
  }
}
#mainContent.mce-content-body {
  overflow: auto;
}
#mainContent.mce-content-body div > a > img {
  width: auto !important;
}
#mainContent.mce-content-body h3,
#mainContent.mce-content-body h4 {
  min-height: 0 !important;
}
#mainContent.mce-content-body table.phototable > tbody > tr > td,
#mainContent.mce-content-body table.transparent > tbody > tr > td,
#mainContent.mce-content-body table.phototable > tbody > tr > th,
#mainContent.mce-content-body table.transparent > tbody > tr > th {
  border: 1px dashed #cccccc !important;
}
