@charset "UTF-8";
@import url(https://fonts.googleapis.com/css?family=Noto+Sans+JP:300,400,500,700&display=swap);
@import url(https://fonts.googleapis.com/css?family=Noto+Serif+JP:400,500,700&display=swap);
@import url(https://fonts.googleapis.com/css?family=Sawarabi+Mincho&display=swap);
@import url("https://fonts.googleapis.com/css2?family=Shippori+Mincho+B1:wght@400;500;600&display=swap");
@import url("https://fonts.googleapis.com/css2?family=BIZ+UDPMincho&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Raleway:wght@500&display=swap");
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, figure, hr, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}

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

table {
  border-spacing: 0;
}

li {
  list-style: none;
}

caption, th {
  text-align: left;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 100%;
  font-weight: normal;
  line-height: 1.3;
}
h1.bold, h2.bold, h3.bold, h4.bold, h5.bold, h6.bold {
  font-weight: 500;
}

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

abbr, acronym {
  border: 0;
  font-variant: normal;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input, textarea, select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

legend {
  color: #000;
}

img, svg {
  font-size: 0;
  line-height: 0;
  vertical-align: top;
  -webkit-backface-visibility: hidden;
}

svg {
  -webkit-backface-visibility: visible;
}

address, caption, cite, code, dfn, em, th, var {
  font-style: normal;
  font-weight: normal;
}

mark {
  background: none;
}

p, blockquote, dl, figcaption {
  line-height: 1.9;
}

ol, ul {
  line-height: 1.9;
  list-style: none;
}

summary {
  list-style: none;
  outline: none;
}

summary::-webkit-details-marker {
  display: none;
}

a {
  cursor: pointer;
  outline: none;
}

fieldset, img {
  border: 0;
}

hr {
  border: 0;
  height: 0;
}

*, *:before, *:after {
  box-sizing: border-box;
}

table {
  font-size: inherit;
  font: 100%;
}

pre, code, kbd, samp, tt {
  font-family: monospace;
  line-height: 100%;
}

body {
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 14px;
  font-size: 0.875rem;
  text-align: center;
}
body.b-fixed {
  height: 100%;
  overflow: hidden;
}

.radius5 {
  border-radius: 5px;
}

.inline-block {
  display: inline-block;
}

.clearfix:after,
.wrapper:after {
  content: "";
  clear: both;
  display: block;
}

.wrap-clear {
  overflow: hidden;
  zoom: 1;
}

.mb,
.mb-inline,
.pc-none,
.pc-none-inline {
  display: none;
}

.xLeft, .sp-center {
  text-align: left;
}

.xCenter, .sp-left {
  text-align: center;
}

.xRight {
  text-align: right;
}

.yTop {
  vertical-align: top;
}

.yMiddle {
  vertical-align: middle;
}

.yBottom {
  vertical-align: bottom;
}

.fLeft {
  float: left;
}

.fRight {
  float: right;
}

.mgt5 {
  margin-top: 5px;
}

.mgt10 {
  margin-top: 10px;
}

.mgt15 {
  margin-top: 15px;
}

.mgt20 {
  margin-top: 20px;
}

.mgt25 {
  margin-top: 25px;
}

.mgt30 {
  margin-top: 30px;
}

.mgt35 {
  margin-top: 35px;
}

.mgt40 {
  margin-top: 40px;
}

.mgt45 {
  margin-top: 45px;
}

.mgt50 {
  margin-top: 50px;
}

.mgt3 {
  margin-top: 3px;
}

.mgt8 {
  margin-top: 8px;
}

.mgt-5 {
  margin-top: -5px;
}

.mgt-10 {
  margin-top: -10px;
}

.mgt-15 {
  margin-top: -15px;
}

.mgt-20 {
  margin-top: -20px;
}

.mgt-25 {
  margin-top: -25px;
}

.mgt-30 {
  margin-top: -30px;
}

.mgt-35 {
  margin-top: -35px;
}

.mgt-40 {
  margin-top: -40px;
}

.mgr5 {
  margin-right: 5px;
}

.mgr10 {
  margin-right: 10px;
}

.mgr15 {
  margin-right: 15px;
}

.mgr20 {
  margin-right: 20px;
}

.mgr25 {
  margin-right: 25px;
}

.mgr30 {
  margin-right: 30px;
}

.mgr35 {
  margin-right: 35px;
}

.mgr40 {
  margin-right: 40px;
}

.mgr45 {
  margin-right: 45px;
}

.mgr50 {
  margin-right: 50px;
}

.mgb5 {
  margin-bottom: 5px;
}

.mgb10 {
  margin-bottom: 10px;
}

.mgb15 {
  margin-bottom: 15px;
}

.mgb20 {
  margin-bottom: 20px;
}

.mgb25 {
  margin-bottom: 25px;
}

.mgb30 {
  margin-bottom: 30px;
}

.mgb35 {
  margin-bottom: 35px;
}

.mgb40 {
  margin-bottom: 40px;
}

.mgb45 {
  margin-bottom: 45px;
}

.mgb50 {
  margin-bottom: 50px;
}

.mgb3 {
  margin-bottom: 3px;
}

.mgb8 {
  margin-bottom: 8px;
}

.pdb20 {
  padding-bottom: 20px;
}

.mgl5 {
  margin-left: 5px;
}

.mgl10 {
  margin-left: 10px;
}

.mgl15 {
  margin-left: 15px;
}

.mgl20 {
  margin-left: 20px;
}

.mgl25 {
  margin-left: 25px;
}

.mgl30 {
  margin-left: 30px;
}

.mgl35 {
  margin-left: 35px;
}

.mgl40 {
  margin-left: 40px;
}

.mgl45 {
  margin-left: 45px;
}

.mgl50 {
  margin-left: 50px;
}

.mgl1em {
  margin-left: 1em;
}

.mg-auto {
  margin-right: auto;
  margin-left: auto;
}

.pdr5 {
  padding-right: 5px;
}

.pdr10 {
  padding-right: 10px;
}

.pdr15 {
  padding-right: 15px;
}

.pdr20 {
  padding-right: 20px;
}

.pdr25 {
  padding-right: 25px;
}

.pdr30 {
  padding-right: 30px;
}

.pdr35 {
  padding-right: 35px;
}

.pdr40 {
  padding-right: 40px;
}

.pdr45 {
  padding-right: 45px;
}

.pdr50 {
  padding-right: 50px;
}

.pdr55 {
  padding-right: 55px;
}

.pdr60 {
  padding-right: 60px;
}

.pdl5 {
  padding-left: 5px;
}

.pdl10 {
  padding-left: 10px;
}

.pdl15 {
  padding-left: 15px;
}

.pdl20 {
  padding-left: 20px;
}

.pdl25 {
  padding-left: 25px;
}

.pdl30 {
  padding-left: 30px;
}

.pdl35 {
  padding-left: 35px;
}

.pdl40 {
  padding-left: 40px;
}

.pdl45 {
  padding-left: 45px;
}

.pdl50 {
  padding-left: 50px;
}

.pdl55 {
  padding-left: 55px;
}

.pdl60 {
  padding-left: 60px;
}

@media screen and (max-width: 73.75em) {
  body {
    -webkit-text-size-adjust: none;
  }

  p, blockquote, li, dt, dd, table {
    line-height: 1.6;
    word-wrap: break-word;
  }

  .mb {
    display: block;
  }

  .mb-inline {
    display: inline;
  }

  .mb-none {
    display: none;
  }
}
@media screen and (max-width: 37.4375em) {
  .sp-none {
    display: none;
  }

  .pc-none {
    display: block;
  }

  .pc-none-inline {
    display: inline;
  }

  .kakkonashi:before {
    content: none;
  }
  .kakkonashi:after {
    content: none;
  }

  .sp-left {
    text-align: left;
  }

  .sp-center {
    text-align: center;
  }

  .mgt-5 {
    margin-top: 0;
  }

  .mgt-10 {
    margin-top: 0;
  }

  .mgt-15 {
    margin-top: 0;
  }

  .mgt-20 {
    margin-top: 0;
  }

  .mgt-25 {
    margin-top: 0;
  }

  .mgt-30 {
    margin-top: 0;
  }

  .mgt-35 {
    margin-top: 0;
  }

  .mgt-40 {
    margin-top: 0;
  }
}
a:link {
  color: #0071ae;
  text-decoration: none;
}
a:visited {
  color: #8441b3;
}
a:hover, a:active {
  color: #45b7ea;
  text-decoration: underline;
}

.img-link a img,
a.img-link img {
  border: 2px solid #ddd;
  transition: ease 0.3s;
}

.img-link a:hover img,
a:hover.img-link img {
  border: 2px solid #8cb7ea;
}

a.bnrlink:hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
}

.pdf:before {
  color: #d00;
  content: "";
  font-family: "FontAwesome";
  margin-right: 5px;
}

.pdf .filesize {
  color: #000;
  font-size: 11px;
  font-size: 0.6875rem;
}

.word:before {
  color: #2f59e4;
  content: "";
  font-family: "FontAwesome";
  padding-right: 5px;
}

.excel:before {
  color: #4ac61d;
  content: "";
  font-family: "FontAwesome";
  padding-right: 5px;
}

.inside:before,
.page-link ul li a:before,
.page-top a:before {
  content: "";
  display: inline-block;
  background: url(/common/css/img/arrow_right.svg) no-repeat center center;
  background-size: cover;
  margin: 0 5px 1px 0;
  width: 14px;
  height: 14px;
  vertical-align: middle;
}

.outside:before {
  content: "";
  display: inline-block;
  background: url(/common/css/img/arrow_right.svg) no-repeat center center;
  background-size: cover;
  margin: 0 5px 1px 0;
  transform: rotate(-45deg);
  width: 14px;
  height: 14px;
  vertical-align: middle;
}

.inside-link ul li a {
  margin-left: 1.2em;
  text-indent: -1.2em;
}

.inside-link ul li a:before,
.inside-link ul li > span:before,
.anchor-link ul li a:before,
.anchor:before {
  content: "";
  display: inline-block;
  background: url(/common/css/img/arrow_right.svg) no-repeat center center;
  background-size: cover;
  margin: 0 5px 1px 0;
  transform: rotate(90deg);
  width: 14px;
  height: 14px;
  vertical-align: middle;
}

.anchor-up:before {
  transform: rotate(-90deg);
}

.page-top {
  text-align: right;
}
.page-top a:before {
  transform: rotate(-90deg);
}

.inside-link ul,
.page-link ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.inside-link ul li,
.page-link ul li {
  margin-right: 1.5em;
}
.inside-link ul li:last-child,
.page-link ul li:last-child {
  margin-right: 0;
}
.inside-link ul li a,
.page-link ul li a {
  color: #0071ae;
}
.inside-link ul li a:hover,
.page-link ul li a:hover {
  color: #45b7ea;
}
.inside-link ul li.active a,
.page-link ul li.active a {
  color: #000;
}
.inside-link ul li.pdflink a::before,
.page-link ul li.pdflink a::before {
  background: none;
  color: #d00;
  content: "";
  font-family: "FontAwesome";
  margin: auto;
  transform: none;
  width: auto;
  height: auto;
}

.page-link-left ul {
  justify-content: flex-start;
}

.lightcase-zoom {
  display: inline-block;
  position: relative;
}
.lightcase-zoom:after {
  background: rgba(221, 221, 221, 0.6);
  border-radius: 3px;
  color: #009ce5;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1;
  bottom: 7px;
  right: 7px;
  content: "";
  font-family: "FontAwesome";
  padding: 5px;
  position: absolute;
}

.lightcase-zoom-white::after {
  background: rgba(221, 221, 221, 0.4);
  color: #fff;
}

.videolink {
  display: block;
  position: relative;
}
.videolink:before {
  color: #fff;
  content: "";
  font-family: "FontAwesome";
  font-size: 50px;
  font-size: 3.125rem;
  position: absolute;
  right: 50%;
  bottom: 50%;
  transform: translate(50%, 50%);
  text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.3);
  z-index: 100;
}

a.round-btn-blue {
  border: 1px solid #009ce5;
  border-radius: 30px;
  color: #009ce5;
  display: inline-block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.3;
  padding: 10px 25px;
  text-decoration: none;
}

@media screen and (max-width: 37.4375em) {
  .inside-link,
.page-link,
.anchor-link {
    border: 1px solid #ddd;
    border-radius: 3px;
  }
  .inside-link ul,
.page-link ul,
.anchor-link ul {
    flex-direction: column;
    justify-content: flex-start;
  }
  .inside-link ul li,
.page-link ul li,
.anchor-link ul li {
    border-top: 1px solid #ddd;
    margin-right: 0;
  }
  .inside-link ul li:first-child,
.page-link ul li:first-child,
.anchor-link ul li:first-child {
    border-top: 0;
  }
  .inside-link ul li:last-child,
.page-link ul li:last-child,
.anchor-link ul li:last-child {
    margin-right: 0;
  }
  .inside-link ul li a,
.page-link ul li a,
.anchor-link ul li a {
    display: block;
    padding: 6px 8px;
  }
  .inside-link ul li > span,
.page-link ul li > span,
.anchor-link ul li > span {
    display: block;
    padding: 6px 0;
  }
  .inside-link ul li.pdflink a,
.page-link ul li.pdflink a,
.anchor-link ul li.pdflink a {
    padding-left: 26px;
  }
}
.serif {
  font-family: "Noto Serif JP", serif;
}

.san-serif,
.sans-serif {
  font-family: "Noto Sans JP", sans-serif;
}

.text11 {
  font-size: 11px;
  font-size: 0.6875rem;
}

.text12 {
  font-size: 12px;
  font-size: 0.75rem;
}

.text13 {
  font-size: 13px;
  font-size: 0.8125rem;
}

.text14 {
  font-size: 14px;
  font-size: 0.875rem;
}

.text15 {
  font-size: 15px;
  font-size: 0.9375rem;
}

.text16 {
  font-size: 16px;
  font-size: 1rem;
}

.text17 {
  font-size: 17px;
  font-size: 1.0625rem;
}

.text18 {
  font-size: 18px;
  font-size: 1.125rem;
}

.text19 {
  font-size: 19px;
  font-size: 1.1875rem;
}

.text20 {
  font-size: 20px;
  font-size: 1.25rem;
}

.text21 {
  font-size: 21px;
  font-size: 1.3125rem;
}

.text22 {
  font-size: 22px;
  font-size: 1.375rem;
}

.text23 {
  font-size: 23px;
  font-size: 1.4375rem;
}

.text24 {
  font-size: 24px;
  font-size: 1.5rem;
}

.text11 {
  line-height: 1.6;
}

.line10 {
  line-height: 1;
}

.line11 {
  line-height: 1.1;
}

.line12 {
  line-height: 1.2;
}

.line13 {
  line-height: 1.3;
}

.line14 {
  line-height: 1.4;
}

.line15 {
  line-height: 1.5;
}

.line16 {
  line-height: 1.6;
}

.line17 {
  line-height: 1.7;
}

.line18 {
  line-height: 1.8;
}

.line19 {
  line-height: 1.9;
}

.line20 {
  line-height: 2;
}

.line1 {
  line-height: 1;
}

.notes {
  margin-left: 1em;
  text-indent: -1em;
}

.notes15 {
  margin-left: 1.5em;
  text-indent: -1.5em;
}

.notes18 {
  margin-left: 1.8em;
  text-indent: -1.8em;
}

.notes20 {
  margin-left: 2em;
  text-indent: -2em;
}

.no-indent {
  text-indent: 0;
}

.idt {
  text-indent: 1em;
}

.tgunavy {
  color: #004f7c;
}

.gakuinblue {
  color: #009ce5;
}

.red {
  color: #f00;
}

.orange {
  color: #c60;
}

.tx-gray {
  color: #666;
}

.tx-letters {
  color: #fabe00;
}

.tx-eco {
  color: #22ac38;
}

.tx-biz {
  color: #ee7800;
}

.tx-law {
  color: #850f74;
}

.tx-eng {
  color: #009fb0;
}

.tx-liberal {
  color: #00479d;
}

.bold {
  font-weight: bold;
}

.italic {
  font-style: italic;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.nowrap {
  white-space: nowrap;
}

.normal {
  font-weight: normal;
}

.tx-hidden {
  visibility: hidden;
}

.line-through {
  color: #f00;
  display: inline;
  text-decoration: line-through;
}
.line-through span {
  color: #000;
}

.line-through-black {
  color: #000;
}

.line-bottom-black {
  border-bottom: 3px double #000;
}

.tate {
  writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
}

.wavy {
  text-decoration-line: underline;
  text-decoration-style: wavy;
}

.bg-letters {
  background: #fabe00;
  color: #fff;
}

.bg-eco {
  background: #22ac38;
  color: #fff;
}

.bg-biz {
  background: #ee7800;
  color: #fff;
}

.bg-law {
  background: #850f74;
  color: #fff;
}

.bg-eng {
  background: #009fb0;
  color: #fff;
}

.bg-liberal {
  background: #00479d;
  color: #fff;
}

.bg-regional {
  background: #00733e;
  color: #fff;
}

.bg-informatics {
  background: #083284;
  color: #fff;
}

.bg-human {
  background: #de0047;
  color: #fff;
}

.bg-international {
  background: #0075c0;
  color: #fff;
}

.bg-graduate {
  background: #6d3e60;
  color: #fff;
}

.bg-tgu {
  background: #009ce5;
  color: #fff;
}

.bg-red {
  background: #c00;
  color: #fff;
}

.bg-ppl {
  background: #D7CFE6;
}

.bg-cream {
  background: #FFFFCE;
}

.bg-green {
  background: #DFFCBC;
}

.bg-grass {
  background: #9C6;
}

.bg-pink {
  background: #FFD7D7;
}

.bg-navy {
  background: #006;
  color: #fff;
}

.bg-blue {
  background: #C8E3FF;
}

.bg-lightblue {
  background: #e5faff;
}

.bg-white {
  background-color: #fff;
}

li.square {
  list-style: square;
  margin-left: 1.2em;
}

.disc-list01 > li {
  margin-left: 1.4em;
  list-style: disc;
}
.disc-list01 > li.no-disc {
  list-style: none;
}

.disc-list02 > dt {
  margin-left: 1.4em;
  display: list-item;
}
.disc-list02 > dd {
  margin-left: 1.4em;
}
.disc-list02 > dd.mgl20 {
  margin-left: 2em;
}
.disc-list02 > dd.mgl30 {
  margin-left: 3em;
}
.disc-list02 .nodd {
  height: 0;
}

.square-list01 > li {
  margin-left: 1.4em;
  list-style: square;
}

.square-list02 > dt {
  margin-left: 1.4em;
  display: list-item;
  list-style: square;
}
.square-list02 > dd {
  margin-left: 1.4em;
}

.circle-list01 > li {
  margin-left: 1.4em;
  list-style: circle;
}
.circle-list01 > li.no-disc {
  list-style: none;
}

.circle-list02 > dt {
  margin-left: 1.4em;
  display: list-item;
  list-style: circle;
}
.circle-list02 > dd {
  margin-left: 1.4em;
}

.num-list01 > li {
  margin-left: 2.4em;
  list-style: decimal;
}

.num-list02 > li {
  margin-left: 1.75em;
  text-indent: -1.75em;
  counter-increment: cnt2;
}
.num-list02 > li:before {
  display: marker;
  content: "(" counter(cnt2) ") ";
}
.num-list02 > li div,
.num-list02 > li li,
.num-list02 > li table {
  text-indent: 0;
}
.num-list02 > li li.notes {
  text-indent: -1em;
}

.num-list03 > li {
  margin-left: 1.4em;
  text-indent: -1.4em;
  counter-increment: cnt3;
}
.num-list03 > li:before {
  display: marker;
  content: counter(cnt3) ") ";
}

.num-list04 > dt {
  margin-left: 1.3em;
  text-indent: -1.3em;
  counter-increment: cnt4;
}
.num-list04 > dt:before {
  display: marker;
  content: counter(cnt4) ". ";
}
.num-list04 > dd {
  margin-left: 1.3em;
}
.num-list04 > dd dl {
  counter-reset: cnt4 0;
}

.num-list05 > dt {
  margin-left: 1.5em;
  text-indent: -1.5em;
  counter-increment: cnt5;
}
.num-list05 > dt:before {
  display: marker;
  content: "(" counter(cnt5) ") ";
}
.num-list05 > dd {
  margin-left: 1.5em;
}

.num-list06 > dt {
  margin-left: 1.4em;
  text-indent: -1.4em;
  counter-increment: cnt6;
}
.num-list06 > dt:before {
  display: marker;
  content: counter(cnt6) ") ";
}
.num-list06 > dd {
  margin-left: 1.4em;
}

.alpha-list01 > li {
  margin-left: 1.2em;
  list-style: upper-alpha;
}

.alpha-list02 > li {
  margin-left: 1.2em;
  list-style: lower-alpha;
}

.pdf-list01 > li {
  margin-left: 1.2em;
  text-indent: -1.2em;
}
.pdf-list01 > li:before {
  color: #d00;
  content: "";
  font-family: "FontAwesome";
  margin-right: 5px;
}
.pdf-list01 > li.disc {
  list-style: disc;
  margin-left: 1.2em;
  padding-left: 0.3em;
  text-indent: 0;
}
.pdf-list01 > li.disc:before {
  content: none;
}

.link-list01 > li {
  margin-left: 1.2em;
  text-indent: -1.2em;
}
.link-list01 > li:before {
  content: "";
  display: inline-block;
  background: url(/common/css/img/arrow_right.svg) no-repeat center center;
  background-size: cover;
  margin: 0 5px 1px 0;
  width: 14px;
  height: 14px;
  vertical-align: middle;
}
.link-list01 > li.pdf {
  display: block;
}
.link-list01 > li.pdf:before {
  background: none;
  color: #d00;
  content: "";
  display: inline;
  font-family: "FontAwesome";
  margin-right: 7px;
}
.link-list01 > li.outsidelink:before {
  transform: rotate(-45deg);
}
.link-list01 > li li {
  text-indent: 0;
}
.link-list01 > li .link-list01 li {
  text-indent: -1.2em;
}
.link-list01 > li.disc {
  list-style: disc;
  margin-left: 1.2em;
  padding-left: 0.1em;
  text-indent: 0;
}
.link-list01 > li.disc:before {
  content: none;
}

.list-border > li {
  border-bottom: 1px solid #ddd;
  padding: 8px 0;
}
.list-border > li:last-child {
  border-bottom: 1px solid #ddd;
}

.list-border-top {
  border-top: 1px solid #ddd;
}

.list-border-2 li:nth-of-type(-n+2) {
  border-top: 1px solid #ddd;
}

.list-border-3 li:nth-of-type(-n+3) {
  border-top: 1px solid #ddd;
}

.inline-list > li {
  display: inline-block;
  margin-right: 15px;
}
.inline-list > li:last-child {
  margin-right: 0;
}

.list-2 {
  display: flex;
  flex-wrap: wrap;
}
.list-2 > li {
  margin-left: 4%;
  width: 48%;
}
.list-2 > li:nth-of-type(odd) {
  margin-left: 0;
}

.list-3 {
  display: flex;
  flex-wrap: wrap;
}
.list-3 > li {
  margin-left: 2%;
  width: 32%;
}
.list-3 > li:nth-of-type(3n+1) {
  margin-left: 0;
}

.slash-list01 li {
  display: inline;
  line-height: 1.6;
}
.slash-list01 li:before {
  padding-right: 0.2em;
  content: "／";
}
.slash-list01 li:first-child:before {
  padding-right: 0;
  content: "";
}

.dl-list01,
.dl-list02 {
  overflow: hidden;
  line-height: 1.6;
}
.dl-list01 > dt,
.dl-list02 > dt {
  clear: left;
  float: left;
}
.dl-list01 dl,
.dl-list02 dl {
  line-height: 1.6;
}

.dl-list-border {
  border-top: 1px solid #ccc;
}
.dl-list-border > dd {
  border-bottom: 1px solid #ccc;
}

.dl-w3 > dt {
  padding: 5px 0;
  width: 3em;
}

.dl-w3 > dd {
  padding: 5px 0 5px 4em;
}

.dl-w4 > dt {
  padding: 5px 0;
  width: 4em;
}

.dl-w4 > dd {
  padding: 5px 0 5px 5em;
}

.dl-w5 > dt {
  padding: 5px 0;
  width: 5em;
}

.dl-w5 > dd {
  padding: 5px 0 5px 6em;
}

.dl-w6 > dt {
  padding: 5px 0;
  width: 6em;
}

.dl-w6 > dd {
  padding: 5px 0 5px 7em;
}

.dl-w7 > dt {
  padding: 5px 0;
  width: 7em;
}

.dl-w7 > dd {
  padding: 5px 0 5px 8em;
}

.dl-w8 > dt {
  padding: 5px 0;
  width: 8em;
}

.dl-w8 > dd {
  padding: 5px 0 5px 9em;
}

.dl-w9 > dt {
  padding: 5px 0;
  width: 9em;
}

.dl-w9 > dd {
  padding: 5px 0 5px 10em;
}

.dl-w10 > dt {
  padding: 5px 0;
  width: 10em;
}

.dl-w10 > dd {
  padding: 5px 0 5px 11em;
}

.dl-w11 > dt {
  padding: 5px 0;
  width: 11em;
}

.dl-w11 > dd {
  padding: 5px 0 5px 12em;
}

.dl-w12 > dt {
  padding: 5px 0;
  width: 12em;
}

.dl-w12 > dd {
  padding: 5px 0 5px 13em;
}

.dl-w13 > dt {
  padding: 5px 0;
  width: 13em;
}

.dl-w13 > dd {
  padding: 5px 0 5px 14em;
}

.dl-w14 > dt {
  padding: 5px 0;
  width: 14em;
}

.dl-w14 > dd {
  padding: 5px 0 5px 15em;
}

.dl-w15 > dt {
  padding: 5px 0;
  width: 15em;
}

.dl-w15 > dd {
  padding: 5px 0 5px 16em;
}

.dl-w16 > dt {
  padding: 5px 0;
  width: 16em;
}

.dl-w16 > dd {
  padding: 5px 0 5px 17em;
}

.dl-w17 > dt {
  padding: 5px 0;
  width: 17em;
}

.dl-w17 > dd {
  padding: 5px 0 5px 18em;
}

.dl-w18 > dt {
  padding: 5px 0;
  width: 18em;
}

.dl-w18 > dd {
  padding: 5px 0 5px 19em;
}

.dl-w19 > dt {
  padding: 5px 0;
  width: 19em;
}

.dl-w19 > dd {
  padding: 5px 0 5px 20em;
}

.dl-w20 > dt {
  padding: 5px 0;
  width: 20em;
}

.dl-w20 > dd {
  padding: 5px 0 5px 21em;
}

.dl-noborder dt {
  padding: 0;
}
.dl-noborder dd {
  padding-top: 0;
  padding-bottom: 0;
}

.faq-list01 dt {
  font-weight: bold;
  color: #036;
  counter-increment: fcnt1;
}
.faq-list01 dt:before {
  content: "Q" counter(fcnt1) ". ";
}
.faq-list01 dd {
  text-indent: -2em;
  margin-left: 2em;
  margin-bottom: 15px;
  vertical-align: top;
  counter-increment: fcnt2;
}
.faq-list01 dd:before {
  color: #f00;
  content: "A" counter(fcnt2) ". ";
}
.faq-list01 dd li {
  text-indent: 0;
}

.faq-list02 dt {
  border-top: 1px dotted #aaa;
  font-weight: bold;
  color: #036;
  padding-top: 15px;
}
.faq-list02 dt:before {
  content: "Q. ";
}
.faq-list02 dt:first-of-type {
  border-top: 0;
  padding-top: 0;
}
.faq-list02 dd {
  text-indent: -1.2em;
  margin-left: 1.2em;
  margin-bottom: 15px;
  vertical-align: top;
}
.faq-list02 dd:before {
  color: #f00;
  content: "A. ";
}
.faq-list02 dd li {
  text-indent: 0;
}

.reg-cont p {
  text-indent: -1em;
  margin-left: 1em;
}
.reg-cont p.idt {
  text-indent: 0em;
  margin-left: 0em;
}
.reg-cont ol {
  margin-bottom: 10px;
}
.reg-cont ol ol {
  margin-left: 1em;
}

.reglist h4 {
  line-height: 1.9;
  margin-left: 0.5em;
}
.reglist h5 {
  float: left;
  font-weight: 500;
  line-height: 1.9;
  margin-right: 1em;
}
.reglist > ol > li {
  counter-increment: termscnt;
  line-height: 1.9;
}
.reglist > ol > li:before {
  display: marker;
  content: counter(termscnt);
  margin-right: 1em;
}
.reglist > ol > li:first-child:before {
  content: none;
}
.reglist > ol > li ol {
  margin-left: 1em;
}
.reglist > ol > li ol li {
  counter-reset: termscnt;
}
.reglist .fusoku dt {
  font-weight: bold;
  margin-left: 2em;
}
.reglist .fusoku dt span {
  font-weight: normal;
}

@media screen and (max-width: 37.4375em) {
  .list-border-2 {
    border-top: 1px solid #ddd;
  }
  .list-border-2 li:nth-of-type(-n+2) {
    border-top: none;
  }

  .list-border-3 {
    border-top: 1px solid #ddd;
  }
  .list-border-3 li:nth-of-type(-n+3) {
    border-top: none;
  }

  .list-2,
.list-3 {
    flex-direction: column;
  }
  .list-2 > li,
.list-3 > li {
    margin-left: 0;
    width: auto;
  }

  .dl-list01 > dt {
    display: list-item;
    float: none;
    font-weight: bold;
    list-style-position: inside;
  }
  .dl-list01 > dt.no-item {
    display: block;
  }

  .dl-list02 > dt {
    float: none;
    font-weight: bold;
  }

  .dl-w3 > dt {
    padding: 0;
    width: auto;
  }

  .dl-w3 > dd {
    padding: 0 0 5px 0.9em;
  }

  .dl-w4 > dt {
    padding: 0;
    width: auto;
  }

  .dl-w4 > dd {
    padding: 0 0 5px 0.9em;
  }

  .dl-w5 > dt {
    padding: 0;
    width: auto;
  }

  .dl-w5 > dd {
    padding: 0 0 5px 0.9em;
  }

  .dl-w6 > dt {
    padding: 0;
    width: auto;
  }

  .dl-w6 > dd {
    padding: 0 0 5px 0.9em;
  }

  .dl-w7 > dt {
    padding: 0;
    width: auto;
  }

  .dl-w7 > dd {
    padding: 0 0 5px 0.9em;
  }

  .dl-w8 > dt {
    padding: 0;
    width: auto;
  }

  .dl-w8 > dd {
    padding: 0 0 5px 0.9em;
  }

  .dl-w9 > dt {
    padding: 0;
    width: auto;
  }

  .dl-w9 > dd {
    padding: 0 0 5px 0.9em;
  }

  .dl-w10 > dt {
    padding: 0;
    width: auto;
  }

  .dl-w10 > dd {
    padding: 0 0 5px 0.9em;
  }

  .dl-w11 > dt {
    padding: 0;
    width: auto;
  }

  .dl-w11 > dd {
    padding: 0 0 5px 0.9em;
  }

  .dl-w12 > dt {
    padding: 0;
    width: auto;
  }

  .dl-w12 > dd {
    padding: 0 0 5px 0.9em;
  }

  .dl-w13 > dt {
    padding: 0;
    width: auto;
  }

  .dl-w13 > dd {
    padding: 0 0 5px 0.9em;
  }

  .dl-w14 > dt {
    padding: 0;
    width: auto;
  }

  .dl-w14 > dd {
    padding: 0 0 5px 0.9em;
  }

  .dl-w15 > dt {
    padding: 0;
    width: auto;
  }

  .dl-w15 > dd {
    padding: 0 0 5px 0.9em;
  }

  .dl-w16 > dt {
    padding: 0;
    width: auto;
  }

  .dl-w16 > dd {
    padding: 0 0 5px 0.9em;
  }

  .dl-w17 > dt {
    padding: 0;
    width: auto;
  }

  .dl-w17 > dd {
    padding: 0 0 5px 0.9em;
  }

  .dl-w18 > dt {
    padding: 0;
    width: auto;
  }

  .dl-w18 > dd {
    padding: 0 0 5px 0.9em;
  }

  .dl-w19 > dt {
    padding: 0;
    width: auto;
  }

  .dl-w19 > dd {
    padding: 0 0 5px 0.9em;
  }

  .dl-w20 > dt {
    padding: 0;
    width: auto;
  }

  .dl-w20 > dd {
    padding: 0 0 5px 0.9em;
  }

  .dl-list-border dt {
    padding-top: 5px;
  }
}
.accordion-content,
.accordion-content-box {
  transition: all 0.2s;
}
.accordion-content label,
.accordion-content-box label {
  cursor: pointer;
  display: block;
  position: relative;
  transition: all 0.2s;
}
.accordion-content input,
.accordion-content-box input {
  display: none;
}
.accordion-content .acd-contents,
.accordion-content-box .acd-contents {
  height: 0;
  overflow: hidden;
  opacity: 0;
  padding: 0;
  transition: 0.2s;
}
.accordion-content .acd:checked + label + .acd-contents,
.accordion-content-box .acd:checked + label + .acd-contents {
  height: auto;
  opacity: 1;
}

.accordion-content label {
  color: #0071ae;
  padding: 5px 0;
}
.accordion-content label:before {
  content: "";
  font-family: "FontAwesome";
  margin-right: 7px;
}
.accordion-content .acd:checked + label {
  color: #616467;
  font-weight: 700;
}
.accordion-content .acd:checked + label:before {
  content: "";
  font-weight: normal;
}
.accordion-content summary {
  background: #d9e8ea;
  color: #0071ae;
  cursor: pointer;
  font-size: 16px;
  font-size: 1rem;
  font-weight: bold;
  margin-top: 15px;
  padding: 10px 40px 10px 15px;
  position: relative;
  transition: ease 0.3s;
}
.accordion-content summary::after {
  content: "+";
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  right: 15px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 26px;
  font-size: 1.625rem;
  font-weight: 300;
  transition: transform 0.5s;
}
.accordion-content details[open] summary {
  color: #444;
}
.accordion-content details[open] summary::after {
  transform: translateY(50%) rotate(45deg);
}
.accordion-content .openbox {
  padding: 10px 0 15px 0;
}
.accordion-content details[open] .openbox {
  animation: fadein 0.5s ease;
}
@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.accordion-content-gakuinblue summary {
  background: #009ce5;
  color: #fff;
}
.accordion-content-gakuinblue details[open] summary {
  background: #007db7;
  color: #fff;
}

.acordion-content-box summary {
  background: #eee;
  color: #009ce5;
  font-size: 15px;
  font-size: 0.9375rem;
  transition: ease 0.3s;
}
.acordion-content-box summary:hover {
  background: #ddd;
}
.acordion-content-box details[open] summary {
  background: #009ce5;
  color: #fff;
}

.accordion-content-box label {
  background: #eee;
  color: #009ce5;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: bold;
  margin-top: 15px;
  padding: 10px 40px 10px 15px;
  position: relative;
  transition: ease 0.3s;
}
.accordion-content-box label::after {
  content: "+";
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  right: 15px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 26px;
  font-size: 1.625rem;
  font-weight: 300;
  transition: transform 0.5s;
}
.accordion-content-box label:hover {
  background: #ddd;
}
.accordion-content-box label:first-of-type {
  margin-top: 0;
}
.accordion-content-box .acd:checked + label {
  background-color: #009ce5;
  color: #fff;
}
.accordion-content-box .acd:checked + label::after {
  transform: translateY(50%) rotate(45deg);
}

.accordion-faq .acd:checked + label {
  color: #009ce5;
}
.accordion-faq .acd:checked + label + .acd-contents {
  height: auto;
  opacity: 1;
  padding: 0 0 10px 30px;
  position: relative;
}
.accordion-faq .acd:checked + label + .acd-contents:before {
  color: #d00;
  content: "A.";
  display: block;
  position: absolute;
  left: 10px;
  top: 5px;
}

.accordion-faq summary {
  background: #eee;
  color: #009ce5;
  cursor: pointer;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: bold;
  margin-top: 15px;
  padding: 10px 40px 10px 15px;
  position: relative;
  transition: ease 0.3s;
}
.accordion-faq summary::before {
  content: "Q. ";
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-size: 1.125rem;
}
.accordion-faq summary::after {
  content: "+";
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  right: 15px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 26px;
  font-size: 1.625rem;
  font-weight: 300;
  transition: transform 0.5s;
}
.accordion-faq summary:hover {
  background: #ddd;
}
.accordion-faq details[open] summary {
  background-color: #009ce5;
  color: #fff;
}
.accordion-faq details[open] summary::after {
  transform: translateY(50%) rotate(45deg);
}
.accordion-faq .answer {
  background: #f1f1f1;
  padding: 15px 20px 15px 40px;
  position: relative;
}
.accordion-faq .answer::before {
  color: #d00;
  content: "A.";
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  position: absolute;
  top: 13px;
  left: 16px;
}
.accordion-faq details[open] .answer {
  animation: fadein 0.5s ease;
}
@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.readmore {
  position: relative;
}
.readmore .grad-btn {
  background: #009e8f;
  border: 1px solid #009e8f;
  border-radius: 12px;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
  color: #fff;
  cursor: pointer;
  display: block;
  text-align: center;
  line-height: 24px;
  margin: auto;
  position: absolute;
  right: 0;
  left: 0;
  bottom: 10px;
  transition: all 0.2s;
  width: 10em;
  z-index: 100;
}
.readmore .grad-btn:after {
  content: "続きを読む";
}
.readmore .grad-btn .svg-inline--fa {
  margin-right: 5px;
}
.readmore .grad-trigger:checked ~ .grad-btn {
  bottom: -12px;
}
.readmore .grad-trigger:checked ~ .grad-btn .svg-inline--fa {
  transform: rotate(180deg);
}
.readmore .grad-item {
  position: relative;
  overflow: hidden;
  height: 60px;
}
.readmore .grad-item:before {
  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 50%, #fff 100%);
  background: linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 50%, #fff 100%);
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 40px;
}
.readmore .grad-trigger {
  display: none;
}
.readmore .grad-trigger:checked ~ .grad-btn::after {
  content: "閉じる";
}
.readmore .grad-trigger:checked ~ .grad-item {
  height: auto;
}
.readmore .grad-trigger:checked ~ .grad-item p {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: normal;
}
.readmore .grad-trigger:checked ~ .grad-item::before {
  display: none;
}

.tab-radio {
  display: flex;
  flex-wrap: wrap;
}
.tab-radio .tabs-item {
  cursor: pointer;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.3;
  transition: ease 0.3s;
}
.tab-radio input[name=tabs-item] {
  display: none;
}
.tab-radio .tab-panel {
  display: none;
  overflow: hidden;
  width: 100%;
  opacity: 0;
  filter: alpha(opacity=0);
  transition: ease 0.4s;
}
.tab-radio #tabs-1:checked ~ #content-1,
.tab-radio #tabs-2:checked ~ #content-2,
.tab-radio #tabs-3:checked ~ #content-3,
.tab-radio #tabs-4:checked ~ #content-4,
.tab-radio #tabs-5:checked ~ #content-5 {
  display: block;
  opacity: 1;
  filter: alpha(opacity=100);
  transition: ease 0.4s;
}

.switch {
  display: none;
}

.tab-btn {
  display: flex;
  text-align: center;
}
.tab-btn a {
  display: block;
  font-family: "Noto Sans JP", sans-serif;
}

.tab-contents > div,
.switch:target ~ .tab-contents #section-1 {
  overflow: hidden;
  opacity: 0;
  filter: alpha(opacity=0);
  height: 0;
}

.tab-contents #section-1,
#tab-1:target ~ .tab-contents #section-1,
#tab-2:target ~ .tab-contents #section-2,
#tab-3:target ~ .tab-contents #section-3,
#tab-4:target ~ .tab-contents #section-4,
#tab-5:target ~ .tab-contents #section-5 {
  height: auto;
  overflow: visible;
  opacity: 1;
  filter: alpha(opacity=100);
  transition: ease 0.4s;
}

table .justify {
  -moz-text-align-last: justify;
  text-align-last: justify;
}
table .slash {
  background-image: linear-gradient(to top right, transparent, transparent 50%, #ccc 50%, #ccc 51%, transparent 51%, transparent);
}
table .slash span {
  display: block;
}
table .slash span:first-child {
  text-align: right;
}

.tb th, .tb td {
  line-height: 1.6;
  padding: 4px 6px;
  word-break: break-all;
}
.tb th.line10, .tb td.line10 {
  line-height: 1;
}
.tb th.line11, .tb td.line11 {
  line-height: 1.1;
}
.tb th.line12, .tb td.line12 {
  line-height: 1.2;
}
.tb th.line13, .tb td.line13 {
  line-height: 1.3;
}
.tb th.line14, .tb td.line14 {
  line-height: 1.4;
}
.tb th.line15, .tb td.line15 {
  line-height: 1.5;
}
.tb th.line16, .tb td.line16 {
  line-height: 1.6;
}
.tb th.line17, .tb td.line17 {
  line-height: 1.7;
}
.tb th.line18, .tb td.line18 {
  line-height: 1.8;
}
.tb th.line19, .tb td.line19 {
  line-height: 1.9;
}
.tb th.line20, .tb td.line20 {
  line-height: 2;
}
.tb th.line1, .tb td.line1 {
  line-height: 1;
}
.tb .gray {
  background-color: #f1f1f1;
  color: #000;
}
.tb .no-border table,
.tb .no-border td,
.tb .no-border th {
  border: none;
}

.tb-tb01 {
  border-bottom: 1px solid #ccc;
  border-left: 1px solid #ccc;
}
.tb-tb01 th, .tb-tb01 td {
  border-right: 1px solid #ccc;
  border-top: 1px solid #ccc;
}
.tb-tb01 th.gray, .tb-tb01 td.gray {
  background-color: #f3f3f3;
  color: #000;
}
.tb-tb01 th.cyan, .tb-tb01 td.cyan {
  background-color: #efffff;
}
.tb-tb01 th.pink, .tb-tb01 td.pink {
  background-color: #ffebee;
}
.tb-tb01 th.green, .tb-tb01 td.green {
  background-color: #e7f8d4;
}
.tb-tb01 th.yellow, .tb-tb01 td.yellow {
  background: #ff9;
}
.tb-tb01 th.cream, .tb-tb01 td.cream {
  background: #faeccc;
}
.tb-tb01 th.dotted-top, .tb-tb01 td.dotted-top {
  border-top: 1px dotted #ddd;
}
.tb-tb01 th.double-top, .tb-tb01 td.double-top {
  border-top: 3px double #ddd;
}
.tb-tb01 th.bold-top, .tb-tb01 td.bold-top {
  border-top: 2px solid #888 !important;
}
.tb-tb01 th.none-top, .tb-tb01 td.none-top {
  border-top: 0 !important;
}

.tb-odd tr:nth-of-type(odd) td {
  background: #f1f1f1;
}
.tb-odd tr.nobg td,
.tb-odd tr td.nobg {
  background: none;
}

.scroll-msg-pc {
  background: #f1f1f1;
  font-size: 13px;
  font-size: 0.8125rem;
  display: block;
  margin-bottom: 10px;
  text-align: center;
  padding: 4px 0;
}

.scroll-msg-pc:before {
  content: "表はスクロールしてご覧ください";
}

.scroll-pc {
  overflow: auto;
  background: linear-gradient(to left, rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.2)) 0 0/20px 100%, linear-gradient(to right, rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.2)) right/20px 100%;
  background-repeat: no-repeat;
  background-attachment: scroll;
  border-right: 1px solid #CCC;
  -webkit-overflow-scrolling: touch;
}
.scroll-pc::-webkit-scrollbar {
  height: 10px;
  width: 10px;
}
.scroll-pc::-webkit-scrollbar-track {
  background: #F1F1F1;
}
.scroll-pc::-webkit-scrollbar-thumb {
  background: #BCBCBC;
}
.scroll-pc table {
  background: linear-gradient(to left, rgba(255, 255, 255, 0), white 15px) 0 0/50px 100%, linear-gradient(to right, rgba(255, 255, 255, 0), white 15px) right/50px 100%;
  background-repeat: no-repeat;
  background-attachment: local;
  border-bottom: 1px solid #CCC;
  border-collapse: collapse;
}
.scroll-pc table .fixed01,
.scroll-pc table .fixed02 {
  position: sticky;
  top: 0;
  left: 0;
}
.scroll-pc table .fixed01:before,
.scroll-pc table .fixed02:before {
  border-left: 1px solid #ccc;
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  width: 100%;
  height: 100%;
}
.scroll-pc table .fixed01 {
  z-index: 2;
}
.scroll-pc table .fixed02 {
  z-index: 1;
}
.scroll-pc .w1500 {
  width: 1500px;
}

@media screen and (max-width: 73.75em) {
  .scroll-tb {
    overflow: auto;
    background: linear-gradient(to left, rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.2)) 0 0/20px 100%, linear-gradient(to right, rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.2)) right/20px 100%;
    background-repeat: no-repeat;
    background-attachment: scroll;
    border-right: 1px solid #CCC;
    max-height: 400px;
    -webkit-overflow-scrolling: touch;
  }
  .scroll-tb::-webkit-scrollbar {
    height: 10px;
    width: 10px;
  }
  .scroll-tb::-webkit-scrollbar-track {
    background: #F1F1F1;
  }
  .scroll-tb::-webkit-scrollbar-thumb {
    background: #BCBCBC;
  }
  .scroll-tb table {
    background: linear-gradient(to left, rgba(255, 255, 255, 0), white 15px) 0 0/50px 100%, linear-gradient(to right, rgba(255, 255, 255, 0), white 15px) right/50px 100%;
    background-repeat: no-repeat;
    background-attachment: local;
    border-bottom: 1px solid #CCC;
    border-collapse: collapse;
    width: 1000px;
  }

  .scroll-pc .w1500 {
    width: 1000px;
  }

  .scroll-auto {
    max-height: none;
  }

  .scroll-short table {
    width: 800px;
  }
}
@media screen and (max-width: 37.4375em) {
  .tb-sp col,
.tb-sp th,
.tb-sp td {
    display: block;
    width: auto;
  }
  .tb-sp col:empty,
.tb-sp th:empty,
.tb-sp td:empty {
    display: none;
  }

  .responsive-msg,
.scroll-msg {
    background: #f1f1f1;
    font-size: 13px;
    font-size: 0.8125rem;
    display: block;
    margin-bottom: 10px;
    text-align: center;
    padding: 4px 0;
  }

  .responsive-msg:before {
    content: "表はズームしてご覧ください";
  }

  .scroll-msg:before {
    content: "表はスクロールしてご覧ください";
  }

  .responsive-table table {
    min-width: 600px;
  }

  .scroll {
    overflow: auto;
    background: linear-gradient(to left, rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.2)) 0 0/20px 100%, linear-gradient(to right, rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.2)) right/20px 100%;
    background-repeat: no-repeat;
    background-attachment: scroll;
    border-right: 1px solid #CCC;
    max-height: 400px;
    -webkit-overflow-scrolling: touch;
  }
  .scroll::-webkit-scrollbar {
    height: 10px;
    width: 10px;
  }
  .scroll::-webkit-scrollbar-track {
    background: #F1F1F1;
  }
  .scroll::-webkit-scrollbar-thumb {
    background: #BCBCBC;
  }
  .scroll table {
    background: linear-gradient(to left, rgba(255, 255, 255, 0), white 15px) 0 0/50px 100%, linear-gradient(to right, rgba(255, 255, 255, 0), white 15px) right/50px 100%;
    background-repeat: no-repeat;
    background-attachment: local;
    border-bottom: 1px solid #CCC;
    border-collapse: collapse;
    width: 1000px;
  }

  .scroll-auto {
    max-height: none;
  }

  .scroll-short table {
    width: 800px;
  }

  table.tw-300 {
    width: 300px;
  }

  table.tw-350 {
    width: 350px;
  }

  table.tw-400 {
    width: 400px;
  }

  table.tw-450 {
    width: 450px;
  }

  table.tw-500 {
    width: 500px;
  }

  table.tw-550 {
    width: 550px;
  }

  table.tw-600 {
    width: 600px;
  }

  table.tw-650 {
    width: 650px;
  }

  table.tw-700 {
    width: 700px;
  }

  table.tw-750 {
    width: 750px;
  }

  table.tw-800 {
    width: 800px;
  }

  table.tw-850 {
    width: 850px;
  }

  table.tw-900 {
    width: 900px;
  }

  table.tw-950 {
    width: 950px;
  }

  table.tw-1000 {
    width: 1000px;
  }

  .tb-fixed table .fixed01,
.tb-fixed table .fixed02,
.tb-fixed table .fixed01-nocolor,
.tb-fixed table .fixed02-nocolor {
    position: sticky;
    top: 0;
    left: 0;
  }
  .tb-fixed table .fixed01:before,
.tb-fixed table .fixed02:before,
.tb-fixed table .fixed01-nocolor:before,
.tb-fixed table .fixed02-nocolor:before {
    border-left: 1px solid #ccc;
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    width: 100%;
    height: 100%;
  }
  .tb-fixed table .fixed01,
.tb-fixed table .fixed02 {
    background: #efffff;
  }
  .tb-fixed table .fixed01,
.tb-fixed table .fixed01-nocolor {
    z-index: 2;
  }
  .tb-fixed table .fixed02,
.tb-fixed table .fixed02-nocolor {
    z-index: 1;
  }
}
.w5 {
  width: 5%;
}

.w10 {
  width: 10%;
}

.w15 {
  width: 15%;
}

.w20 {
  width: 20%;
}

.w25 {
  width: 25%;
}

.w30 {
  width: 30%;
}

.w35 {
  width: 35%;
}

.w40 {
  width: 40%;
}

.w45 {
  width: 45%;
}

.w50 {
  width: 50%;
}

.w55 {
  width: 55%;
}

.w60 {
  width: 60%;
}

.w65 {
  width: 65%;
}

.w70 {
  width: 70%;
}

.w75 {
  width: 75%;
}

.w80 {
  width: 80%;
}

.w85 {
  width: 85%;
}

.w90 {
  width: 90%;
}

.w95 {
  width: 95%;
}

.w100 {
  width: 100%;
}

.w1em {
  width: 1em;
}

.w2em {
  width: 2em;
}

.w3em {
  width: 3em;
}

.w4em {
  width: 4em;
}

.w5em {
  width: 5em;
}

.w6em {
  width: 6em;
}

.w7em {
  width: 7em;
}

.w8em {
  width: 8em;
}

.w9em {
  width: 9em;
}

.w10em {
  width: 10em;
}

.hr-line,
.hr-line-nocont {
  position: relative;
  height: 30px;
}
.hr-line:before,
.hr-line-nocont:before {
  content: "";
  background: #ccc;
  position: absolute;
  right: 50%;
  bottom: 50%;
  transform: translate(50%, 50%);
  width: 100%;
  height: 1px;
}
.hr-line:after,
.hr-line-nocont:after {
  content: "§";
  display: block;
  background: #fff;
  color: #ddd;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1;
  padding: 5px 8px;
  position: absolute;
  left: calc(50% - 18px);
  top: 0;
  transform: translateX(-50%);
  transform: rotate(60deg);
  z-index: 100;
}

.hr-line-nocont:after {
  content: none;
}

.attentionBox {
  padding: 8px 10px;
  border: 1px solid #ddd;
  background: #fff0f0;
}

.quote01 {
  padding: 10px 10px;
  border: 1px solid #e1e1e1;
}

.border-box {
  padding: 15px 15px;
  background: rgba(255, 255, 255, 0.4);
}
.border-box-gray {
  border: 1px solid #ddd;
}

.solid-box {
  box-shadow: inset 2px 2px 5px #D9DADE, inset -2px -2px 5px #FFFFFF;
  border-radius: 5px;
  padding: 15px 15px;
}
.solid-box-blue {
  background: #d9e8ea;
}
.solid-box-gray {
  background: #f1f1f1;
}
.solid-box-green {
  background: #e7f8d4;
}
.solid-box-pink {
  background: #fff0f0;
}
.solid-box-orange {
  background: #fbf2ea;
}

.no-shadow {
  box-shadow: none;
}

.columnbox {
  display: flex;
  flex-wrap: wrap;
}
.columnbox .column-1 {
  margin-top: 25px;
  width: 100%;
}
.columnbox .column-1:first-of-type {
  margin-top: 0;
}
.columnbox .column-2 {
  margin-left: 3%;
  margin-top: 3%;
  width: 48.5%;
}
.columnbox .column-2:nth-child(-n+2) {
  margin-top: 0;
}
.columnbox .column-2:nth-of-type(odd) {
  margin-left: 0;
}
.columnbox .column-3 {
  margin-left: 3.5%;
  margin-top: 3.5%;
  width: 31%;
}
.columnbox .column-3:nth-child(-n+3) {
  margin-top: 0;
}
.columnbox .column-3:nth-of-type(3n+1) {
  margin-left: 0;
}
.columnbox .column-4 {
  margin-left: 2%;
  margin-top: 15px;
  width: 23.5%;
}
.columnbox .column-4:nth-child(-n+4) {
  margin-top: 0;
}
.columnbox .column-4:nth-of-type(4n+1) {
  margin-left: 0;
}
.columnbox .column-5 {
  margin-left: 2%;
  margin-bottom: 25px;
  width: 18.4%;
}
.columnbox .column-5:nth-child(-n+5) {
  margin-top: 0;
}
.columnbox .column-5:nth-of-type(5n+1) {
  margin-left: 0;
}
.columnbox .full-img img {
  width: 100%;
  height: auto;
}

.columnbox-center {
  justify-content: center;
}

.items-center {
  align-items: center;
}

.img-border {
  border: 1px solid #ddd;
}

.photo-r {
  float: right;
  margin-left: 25px;
}

.photo-c {
  text-align: center;
}

.photo-l {
  float: left;
  margin-right: 25px;
}

.photo-r,
.photo-r-full {
  float: right;
  margin-left: 25px;
}

.photo-l,
.photo-l-full {
  float: left;
  margin-right: 25px;
}

.photo-full img {
  width: 100%;
  height: auto;
}

.photo-box {
  display: flex;
}
.photo-box .honbun {
  flex: 1 0 0%;
}
.photo-box .box-r {
  margin-left: 25px;
}
.photo-box .box-l {
  margin-right: 25px;
}
.photo-box-reverse {
  flex-direction: row-reverse;
}

.photo-list {
  display: flex;
  flex-wrap: wrap;
}

.photo-2 {
  margin-left: 4%;
  margin-top: 4%;
  width: 48%;
}
.photo-2:nth-child(-n+2) {
  margin-top: 0;
}
.photo-2:nth-of-type(odd) {
  margin-left: 0;
}

.photo-3 {
  margin-left: 3.5%;
  margin-top: 3.5%;
  width: 31%;
}
.photo-3:nth-child(-n+3) {
  margin-top: 0;
}
.photo-3:nth-of-type(3n+1) {
  margin-left: 0;
}

.photo-4 {
  margin-left: 2%;
  margin-top: 2%;
  width: 23.5%;
}
.photo-4:nth-child(-n+4) {
  margin-top: 0;
}
.photo-4:nth-of-type(4n+1) {
  margin-left: 0;
}

.photo-5 {
  margin-left: 2%;
  margin-bottom: 2%;
  width: 18.4%;
}
.photo-5:nth-child(-n+5) {
  margin-top: 0;
}
.photo-5:nth-of-type(5n+1) {
  margin-left: 0;
}

.scroll-img {
  background: #fff;
}
.scroll-img img {
  width: 100%;
  height: auto;
}

.mediaplayer video {
  max-width: 100%;
  height: auto;
}

.youtubeplayer {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
.youtubeplayer iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.audiojs {
  display: flex;
  width: 100%;
  height: 30px;
  background: #404040;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #444), color-stop(0.5, #555), color-stop(0.51, #444), color-stop(1, #444));
  background-image: -moz-linear-gradient(center top, #444 0%, #555 50%, #444 51%, #444 100%);
  box-shadow: none;
}
.audiojs .play-pause {
  width: 30px;
  height: 30px;
  padding: 0;
  float: none;
}
.audiojs p {
  width: 30px;
  height: 30px;
  float: none;
}
.audiojs .scrubber {
  background: #5a5a5a;
  flex: 1 0 0%;
  height: 15px;
  margin: 7px;
}
.audiojs .progress {
  height: 15px;
  width: 0px;
  background: #ccc;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #ccc), color-stop(0.5, #ddd), color-stop(0.51, #ccc), color-stop(1, #ccc));
  background-image: -moz-linear-gradient(center top, #ccc 0%, #ddd 50%, #ccc 51%, #ccc 100%);
}
.audiojs .loaded {
  height: 15px;
  background: #000;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #222), color-stop(0.5, #333), color-stop(0.51, #222), color-stop(1, #222));
  background-image: -moz-linear-gradient(center top, #222 0%, #333 50%, #222 51%, #222 100%);
}
.audiojs .time {
  height: 30px;
  line-height: 30px;
  font-family: Helvetica, Arial, sans-serif;
  float: none;
  width: 90px;
  white-space: nowrap;
}
.audiojs .error-message {
  height: 30px;
  line-height: 30px;
}

.track-details {
  background: #eee;
  border-radius: 0 0 3px 3px;
  clear: both;
  padding: 0 8px;
  color: #222;
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 28px;
}
.track-details:before {
  content: "♬ ";
}

@media screen and (max-width: 73.75em) {
  .tb-w5 {
    width: 5%;
  }

  .tb-w10 {
    width: 10%;
  }

  .tb-w15 {
    width: 15%;
  }

  .tb-w20 {
    width: 20%;
  }

  .tb-w25 {
    width: 25%;
  }

  .tb-w30 {
    width: 30%;
  }

  .tb-w35 {
    width: 35%;
  }

  .tb-w40 {
    width: 40%;
  }

  .tb-w45 {
    width: 45%;
  }

  .tb-w50 {
    width: 50%;
  }

  .tb-w55 {
    width: 55%;
  }

  .tb-w60 {
    width: 60%;
  }

  .tb-w65 {
    width: 65%;
  }

  .tb-w70 {
    width: 70%;
  }

  .tb-w75 {
    width: 75%;
  }

  .tb-w80 {
    width: 80%;
  }

  .tb-w85 {
    width: 85%;
  }

  .tb-w90 {
    width: 90%;
  }

  .tb-w95 {
    width: 95%;
  }

  .tb-w100 {
    width: 100%;
  }

  .photo-tb-full img {
    width: 100%;
    height: auto;
  }
}
@media screen and (max-width: 37.4375em) {
  .sp-w5 {
    width: 5%;
  }

  .sp-w10 {
    width: 10%;
  }

  .sp-w15 {
    width: 15%;
  }

  .sp-w20 {
    width: 20%;
  }

  .sp-w25 {
    width: 25%;
  }

  .sp-w30 {
    width: 30%;
  }

  .sp-w35 {
    width: 35%;
  }

  .sp-w40 {
    width: 40%;
  }

  .sp-w45 {
    width: 45%;
  }

  .sp-w50 {
    width: 50%;
  }

  .sp-w55 {
    width: 55%;
  }

  .sp-w60 {
    width: 60%;
  }

  .sp-w65 {
    width: 65%;
  }

  .sp-w70 {
    width: 70%;
  }

  .sp-w75 {
    width: 75%;
  }

  .sp-w80 {
    width: 80%;
  }

  .sp-w85 {
    width: 85%;
  }

  .sp-w90 {
    width: 90%;
  }

  .sp-w95 {
    width: 95%;
  }

  .sp-w100 {
    width: 100%;
  }

  .columnbox {
    flex-direction: column;
  }
  .columnbox .column-2,
.columnbox .column-3,
.columnbox .column-4,
.columnbox .column-5 {
    margin-left: 0;
    width: 100%;
  }
  .columnbox .column-2:nth-child(-n+4),
.columnbox .column-3:nth-child(-n+4),
.columnbox .column-4:nth-child(-n+4),
.columnbox .column-5:nth-child(-n+4) {
    margin-top: 25px;
  }
  .columnbox .column-2:first-child,
.columnbox .column-3:first-child,
.columnbox .column-4:first-child,
.columnbox .column-5:first-child {
    margin-top: 0;
  }

  .photo-r,
.photo-c,
.photo-l {
    float: none;
    margin-bottom: 15px;
    margin-left: 0;
    margin-right: 0;
    text-align: center;
  }
  .photo-r img,
.photo-c img,
.photo-l img {
    max-width: 450px;
    width: 100%;
    height: auto;
  }

  .photo-r-full,
.photo-c-full,
.photo-l-full {
    float: none;
    margin-bottom: 15px;
    margin-left: 0;
    margin-right: 0;
    text-align: center;
  }

  .photo-box {
    display: flex;
    flex-direction: column;
  }
  .photo-box .honbun {
    flex: none;
  }
  .photo-box .box-r,
.photo-box .box-l {
    margin: 0;
  }
  .photo-box .box-t {
    margin-top: 15px;
  }
  .photo-box .box-b {
    margin-bottom: 15px;
  }
  .photo-box-reverse {
    flex-direction: column;
  }
  .photo-box-column-reverse {
    flex-direction: column-reverse;
  }

  .photo-2,
.photo-3,
.photo-4,
.photo-5 {
    margin-left: 4%;
    margin-top: 4%;
    width: 48%;
  }
  .photo-2:nth-child(-n+3),
.photo-3:nth-child(-n+3),
.photo-4:nth-child(-n+3),
.photo-5:nth-child(-n+3) {
    margin-top: 4%;
  }
  .photo-2:nth-child(-n+4),
.photo-3:nth-child(-n+4),
.photo-4:nth-child(-n+4),
.photo-5:nth-child(-n+4) {
    margin-top: 4%;
  }
  .photo-2:nth-of-type(3n+1),
.photo-3:nth-of-type(3n+1),
.photo-4:nth-of-type(3n+1),
.photo-5:nth-of-type(3n+1) {
    margin-left: 4%;
  }
  .photo-2:nth-child(-n+2),
.photo-3:nth-child(-n+2),
.photo-4:nth-child(-n+2),
.photo-5:nth-child(-n+2) {
    margin-top: 0;
  }
  .photo-2:nth-of-type(odd),
.photo-3:nth-of-type(odd),
.photo-4:nth-of-type(odd),
.photo-5:nth-of-type(odd) {
    margin-left: 0;
  }

  .scroll-img {
    border-right: 0;
  }
  .scroll-img .margin10 {
    margin: 0 10px 10px 0;
  }

  img.iw-300 {
    width: 300px;
  }

  img.iw-350 {
    width: 350px;
  }

  img.iw-400 {
    width: 400px;
  }

  img.iw-450 {
    width: 450px;
  }

  img.iw-500 {
    width: 500px;
  }

  img.iw-550 {
    width: 550px;
  }

  img.iw-600 {
    width: 600px;
  }

  img.iw-650 {
    width: 650px;
  }

  img.iw-700 {
    width: 700px;
  }

  img.iw-750 {
    width: 750px;
  }

  img.iw-800 {
    width: 800px;
  }

  img.iw-850 {
    width: 850px;
  }

  img.iw-900 {
    width: 900px;
  }

  img.iw-950 {
    width: 950px;
  }

  img.iw-1000 {
    width: 1000px;
  }
}
.c-header {
  margin-bottom: 30px;
}
.c-header h2 {
  background-size: auto auto;
  background-color: white;
  background-image: repeating-linear-gradient(120deg, transparent, transparent 5px, rgba(0, 79, 124, 0.2) 5px, rgba(0, 79, 124, 0.2) 6px);
  border-bottom: 1px solid #004f7c;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 30px;
  font-size: 1.875rem;
  font-weight: 500;
  line-height: 1.2;
  padding: 27px 0;
  position: relative;
}
.c-header h2 span {
  display: inline-block;
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1;
  margin: 4px 8px 0 0;
  vertical-align: top;
}
.c-header h2 span.ex {
  font-size: 16px;
  font-size: 1rem;
  margin: 8px 0 0 0;
}
.c-header h2 span.pc-none-inline {
  display: inline;
  margin: 0;
}
.c-header h2:after {
  background: #004f7c;
  content: "";
  width: 200px;
  height: 5px;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.c-header .c-nav-seclevel {
  background: #fff;
  font-family: "Noto Sans JP", sans-serif;
}
.c-header .c-nav-seclevel ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.c-header .c-nav-seclevel ul li {
  border-bottom: 1px solid #a5a5a5;
  padding: 8px 0;
  flex: 1 0 auto;
  text-align: center;
  white-space: nowrap;
}
.c-header .c-nav-seclevel ul li:first-child a {
  border-left: 1px solid #a5a5a5;
}
.c-header .c-nav-seclevel ul li.down a i {
  transform: rotate(90deg);
}
.c-header .c-nav-seclevel ul li a {
  color: #000;
  display: block;
  border-right: 1px solid #a5a5a5;
  padding: 8px 25px;
  text-decoration: none;
}
.c-header .c-nav-seclevel ul li a:hover {
  color: #004f7c;
}
.c-header .c-nav-seclevel ul li a.active {
  background-color: #d9e8ea;
}
.c-header .c-nav-seclevel ul li a i {
  content: "";
  display: inline-block;
  background: url(img/arrow_right.svg) no-repeat center center;
  background-size: cover;
  margin: 0 5px 1px 0;
  width: 14px;
  height: 14px;
  vertical-align: middle;
}
.c-header .c-nav-seclevel ul li a.category i {
  transform: rotate(-45deg);
}
.c-header .c-nav-seclevel ul li a.pdflink i {
  display: none;
}
.c-header .c-nav-seclevel ul li a.pdflink:before {
  background: none;
  color: #d00;
  content: "";
  font-family: "FontAwesome";
  margin: 0 5px 1px 0;
}
.c-header .c-nav-seclevel ul li a .new {
  background: #f00;
  color: #fff;
  display: inline-block;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1;
  margin-left: 3px;
  padding: 3px 5px;
}
.c-header .c-nav-seclevel ul li a .sub {
  font-size: 13px;
  font-size: 0.8125rem;
}
.c-header .cmenu-toggle {
  display: none;
}

.header-letters h2 {
  background-size: auto auto;
  background-color: white;
  background-image: repeating-linear-gradient(120deg, transparent, transparent 5px, rgba(250, 190, 0, 0.42) 5px, rgba(250, 190, 0, 0.42) 6px);
  border-bottom: 1px solid #fabe00;
}
.header-letters h2:after {
  background: #fabe00;
}
.header-letters .c-nav-seclevel ul li a i {
  background: url(img/arrow_right_letters.svg) no-repeat center center;
  background-size: cover;
}
.header-letters .c-nav-seclevel ul li a.active {
  background: rgba(250, 190, 0, 0.2);
}

.header-eco h2 {
  background-size: auto auto;
  background-color: white;
  background-image: repeating-linear-gradient(120deg, transparent, transparent 5px, rgba(34, 172, 56, 0.42) 5px, rgba(34, 172, 56, 0.42) 6px);
  border-bottom: 1px solid #22ac38;
}
.header-eco h2:after {
  background: #22ac38;
}
.header-eco .c-nav-seclevel ul li a i {
  background: url(img/arrow_right_eco.svg) no-repeat center center;
  background-size: cover;
}
.header-eco .c-nav-seclevel ul li a.active {
  background: rgba(34, 172, 56, 0.2);
}

.header-biz h2 {
  background-size: auto auto;
  background-color: white;
  background-image: repeating-linear-gradient(120deg, transparent, transparent 5px, rgba(238, 120, 0, 0.42) 5px, rgba(238, 120, 0, 0.42) 6px);
  border-bottom: 1px solid #ee7800;
}
.header-biz h2:after {
  background: #ee7800;
}
.header-biz .c-nav-seclevel ul li a i {
  background: url(img/arrow_right_biz.svg) no-repeat center center;
  background-size: cover;
}
.header-biz .c-nav-seclevel ul li a.active {
  background: rgba(238, 120, 0, 0.2);
}

.header-law h2 {
  background-size: auto auto;
  background-color: white;
  background-image: repeating-linear-gradient(120deg, transparent, transparent 5px, rgba(133, 15, 116, 0.2) 5px, rgba(133, 15, 116, 0.2) 6px);
  border-bottom: 1px solid #850f74;
}
.header-law h2:after {
  background: #850f74;
}
.header-law .c-nav-seclevel ul li a i {
  background: url(img/arrow_right_law.svg) no-repeat center center;
  background-size: cover;
}
.header-law .c-nav-seclevel ul li a.active {
  background: rgba(133, 15, 116, 0.1);
}

.header-eng h2 {
  background-size: auto auto;
  background-color: white;
  background-image: repeating-linear-gradient(120deg, transparent, transparent 5px, rgba(0, 159, 176, 0.42) 5px, rgba(0, 159, 176, 0.42) 6px);
  border-bottom: 1px solid #009fb0;
}
.header-eng h2:after {
  background: #009fb0;
}
.header-eng .c-nav-seclevel ul li a i {
  background: url(img/arrow_right_eng.svg) no-repeat center center;
  background-size: cover;
}
.header-eng .c-nav-seclevel ul li a.active {
  background: rgba(0, 159, 176, 0.2);
}

.header-regional,
.header-informatics,
.header-human,
.header-international {
  color: #fff;
  border-bottom: none;
}
.header-regional h2,
.header-informatics h2,
.header-human h2,
.header-international h2 {
  background: none;
  display: flex;
  flex-direction: column;
  font-size: 36px;
  font-size: 2.25rem;
  font-weight: 400;
}
.header-regional h2::after,
.header-informatics h2::after,
.header-human h2::after,
.header-international h2::after {
  content: none;
}
.header-regional h2 > span,
.header-informatics h2 > span,
.header-human h2 > span,
.header-international h2 > span {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 300;
  margin: 0 0 5px 0;
}

.header-regional > div {
  background: linear-gradient(-45deg, #0a3616 0%, #0a3616 20%, #00733e 20%, #00733e 80%, #1e844c 80%, #1e844c 100%);
}
.header-regional h2 {
  border-bottom: none;
}

.header-informatics > div {
  background: linear-gradient(-45deg, #18217a 0%, #18217a 20%, #083284 20%, #083284 80%, #133d90 80%, #133d90 100%);
}
.header-informatics h2 {
  border-bottom: none;
}

.header-human > div {
  background: linear-gradient(-45deg, #b60b1c 0%, #b60b1c 20%, #de0047 20%, #de0047 80%, #e73062 80%, #e73062 100%);
}
.header-human h2 {
  border-bottom: none;
}

.header-international > div {
  background: linear-gradient(-45deg, #15429e 0%, #15429e 20%, #0075c0 20%, #0075c0 80%, #418bd2 80%, #418bd2 100%);
}
.header-international h2 {
  border-bottom: none;
}

.header-liberal h2 {
  background-size: auto auto;
  background-color: white;
  background-image: repeating-linear-gradient(120deg, transparent, transparent 5px, rgba(0, 71, 157, 0.2) 5px, rgba(0, 71, 157, 0.2) 6px);
  border-bottom: 1px solid #00479d;
}
.header-liberal h2:after {
  background: #00479d;
}
.header-liberal .c-nav-seclevel ul li a i {
  background: url(img/arrow_right_liberal.svg) no-repeat center center;
  background-size: cover;
}
.header-liberal .c-nav-seclevel ul li a.active {
  background: rgba(0, 71, 157, 0.15);
}

.header-graduate h2 {
  background-size: auto auto;
  background-color: white;
  background-image: repeating-linear-gradient(120deg, transparent, transparent 5px, rgba(109, 62, 96, 0.2) 5px, rgba(109, 62, 96, 0.2) 6px);
  border-bottom: 1px solid #6d3e60;
}
.header-graduate h2:after {
  background: #6d3e60;
}
.header-graduate .c-nav-seclevel ul li a i {
  background: url(img/arrow_right_graduate.svg) no-repeat center center;
  background-size: cover;
}
.header-graduate .c-nav-seclevel ul li a.active {
  background: rgba(109, 62, 96, 0.2);
}

.h01 {
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.3;
  margin-bottom: 30px;
  padding-bottom: 15px;
  position: relative;
  text-align: center;
}
.h01:after {
  background-color: #004f7c;
  content: "";
  width: 55px;
  height: 2px;
  bottom: 0;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
}
.h01 .sub {
  font-size: 20px;
  font-size: 1.25rem;
}

.h02, .h02-noborder {
  border-left: 4px solid #004f7c;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.3;
  padding: 0 0 0 10px;
}
.h02-noborder {
  border: 0;
  padding: 0;
}

.h03 {
  background-color: #d9e8ea;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.3;
  padding: 5px 8px;
}

.h04 {
  border-bottom: 1px dotted #a5a5a5;
  color: #004f7c;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: 500;
  line-height: 1.3;
  padding-bottom: 8px;
}

.h05 {
  font-size: 17px;
  font-size: 1.0625rem;
  font-weight: 700;
}

h1 rt, h2 rt, h3 rt, h4 rt, h5 rt, h6 rt {
  font-size: 9px;
  font-size: 0.5625rem;
  font-weight: normal;
  letter-spacing: normal;
  margin-bottom: -7px;
}

.yamakakko:before {
  content: "＜";
}
.yamakakko:after {
  content: "＞";
}

.yamakakko2:before {
  content: "〈";
}
.yamakakko2:after {
  content: "〉";
}

.sumikakko:before {
  content: "【";
}
.sumikakko:after {
  content: "】";
}

.kakukakko:before {
  content: "[ ";
}
.kakukakko:after {
  content: " ]";
}

.marukakko:before {
  content: "(";
  margin-right: 2px;
}
.marukakko:after {
  content: ")";
  margin-left: 2px;
}

.kikkoukakko:before {
  content: "〔";
}
.kikkoukakko:after {
  content: "〕";
}

@media screen and (max-width: 73.75em) {
  .c-nav-toplevel {
    display: none;
  }

  .c-header {
    margin-bottom: 20px;
  }
  .c-header > div {
    position: relative;
  }
  .c-header h2 {
    border-bottom: 1px solid #004f7c;
    font-size: 20px;
    font-size: 1.25rem;
    padding: 18px 55px 18px 15px;
    text-align: left;
  }
  .c-header h2:after {
    content: none;
  }
  .c-header h2 span {
    font-size: 14px;
    font-size: 0.875rem;
    margin: 4px 5px 0 0;
  }
  .c-header h2 span.ex {
    font-size: 14px;
    font-size: 0.875rem;
    margin: 4px 0 0 0;
  }
  .c-header .c-nav-seclevel {
    display: none;
  }
  .c-header .c-nav-seclevel ul {
    justify-content: flex-start;
  }
  .c-header .c-nav-seclevel ul:after {
    border-bottom: 1px solid rgba(255, 255, 255, 0.8);
    border-left: 1px solid rgba(255, 255, 255, 0.8);
    content: "";
    display: block;
    width: 50%;
  }
  .c-header .c-nav-seclevel ul li {
    background: #000;
    border-bottom: 1px solid rgba(255, 255, 255, 0.8);
    padding: 0;
    flex: none;
    width: 50%;
    text-align: left;
    white-space: normal;
  }
  .c-header .c-nav-seclevel ul li:first-child a {
    border-left: 0;
  }
  .c-header .c-nav-seclevel ul li:nth-of-type(even) {
    border-left: 1px solid rgba(255, 255, 255, 0.8);
  }
  .c-header .c-nav-seclevel ul li a {
    color: #fff;
    border-right: 0;
    padding: 8px 15px;
  }
  .c-header .c-nav-seclevel ul li a:hover {
    color: #fff;
  }
  .c-header .c-nav-seclevel ul li a.active {
    background-color: #666;
  }
  .c-header .c-nav-seclevel ul li a i {
    background: url(img/arrow_right_white.svg) no-repeat center center;
    background-size: contain;
  }
  .c-header .c-nav-seclevel ul li a.pdflink:before {
    color: #fff;
    margin: 0 5px 1px 1px;
  }
  .c-header .cmenu-toggle {
    color: #fff;
    background: #004f7c;
    cursor: pointer;
    display: block;
    text-align: center;
    width: 46px;
    height: 46px;
    z-index: 101;
    padding: 10px;
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
  }
  .c-header .cmenu-toggle span {
    color: #fff;
    display: block;
    height: 100%;
    position: relative;
    transition: 0.35s ease-in-out;
  }
  .c-header .cmenu-toggle span:after {
    content: "";
    font-family: "FontAwesome";
    font-size: 30px;
    font-size: 1.875rem;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .c-header .close {
    background: #000;
  }
  .c-header .close span:after {
    content: "×";
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 300;
    font-size: 26px;
    font-size: 1.625rem;
  }

  .header-regional h2,
.header-informatics h2,
.header-human h2,
.header-international h2 {
    font-size: 26px;
    font-size: 1.625rem;
  }
  .header-regional h2 > span,
.header-informatics h2 > span,
.header-human h2 > span,
.header-international h2 > span {
    font-size: 14px;
    font-size: 0.875rem;
    margin: 0 0 5px 0;
  }

  .h01 {
    font-size: 20px;
    font-size: 1.25rem;
    margin-bottom: 20px;
    padding-bottom: 15px;
  }
  .h01 .sub {
    font-size: 16px;
    font-size: 1rem;
  }

  .h02, .h02-noborder {
    font-size: 18px;
    font-size: 1.125rem;
  }

  .h03 {
    font-size: 15px;
    font-size: 0.9375rem;
    padding: 4px 8px;
  }
}
@media screen and (max-width: 37.4375em) {
  .c-header h2 {
    font-size: 20px;
    font-size: 1.25rem;
    text-align: left;
  }
  .c-header h2:after {
    content: none;
  }
  .c-header h2 span.ex {
    font-size: 13px;
    font-size: 0.8125rem;
  }
  .c-header h2 span.pc-none-inline {
    display: none;
  }
  .c-header .c-nav-seclevel ul {
    flex-direction: column;
  }
  .c-header .c-nav-seclevel ul:after {
    border: 0px;
    content: none;
    display: none;
    width: auto;
  }
  .c-header .c-nav-seclevel ul li {
    padding: 0;
    width: auto;
  }
  .c-header .c-nav-seclevel ul li:nth-of-type(even) {
    border-left: 0;
  }
  .c-header .cmenu-toggle {
    color: #fff;
    background: #004f7c;
    cursor: pointer;
    display: block;
    text-align: center;
    width: 46px;
    height: 46px;
    z-index: 101;
    padding: 10px;
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
  }
  .c-header .cmenu-toggle span {
    color: #fff;
    display: block;
    height: 100%;
    position: relative;
    transition: 0.35s ease-in-out;
  }
  .c-header .cmenu-toggle span:after {
    content: "";
    font-family: "FontAwesome";
    font-size: 30px;
    font-size: 1.875rem;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .c-header .close {
    background: #000;
  }
  .c-header .close span:after {
    content: "×";
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 300;
    font-size: 26px;
    font-size: 1.625rem;
  }

  .header-regional h2,
.header-informatics h2,
.header-human h2,
.header-international h2 {
    border-bottom: none;
    font-size: 22px;
    font-size: 1.375rem;
    padding: 10px 55px 10px 15px;
  }
  .header-regional h2 > span,
.header-informatics h2 > span,
.header-human h2 > span,
.header-international h2 > span {
    margin: 0 0 3px 0;
  }
}
input:focus::-webkit-input-placeholder {
  color: transparent;
}

input:focus:-moz-placeholder {
  color: transparent;
}

input:focus::-moz-placeholder {
  color: transparent;
}

input::focus::placeholder {
  color: transparent;
}

input[type=submit],
input[type=button] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
}
input[type=submit]::-webkit-search-decoration,
input[type=button]::-webkit-search-decoration {
  display: none;
}
input[type=submit]::focus,
input[type=button]::focus {
  outline-offset: -2px;
}

@supports (-ms-ime-align: auto) {
  select {
    font-family: sans-serif;
  }
}
select::-ms-expand {
  display: none;
}

.content-area input[type=button],
.content-area input[type=submit] {
  border: 0;
  cursor: pointer;
  font-family: FontAwesome;
  -webkit-appearance: none;
  appearance: none;
}
.content-area input[type=text] {
  border: 1px solid #bbb;
  border-radius: 5px;
  box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.1);
  padding: 6px 10px;
}
.content-area input[type=text]:focus {
  border: 1px solid #aaa;
  box-shadow: 0px 0px 3px rgba(61, 176, 246, 0.8);
}
.content-area input[type=radio] {
  outline: none;
}
.content-area select {
  -webkit-appearance: none;
  appearance: none;
  border: 1px solid #bbb;
  border-radius: 5px;
  padding: 6px 8px;
}
.content-area select:focus {
  border: 1px solid #aaa;
  box-shadow: 0px 0px 3px rgba(61, 176, 246, 0.8);
}
.content-area textarea {
  border: 1px solid #bbb;
  border-radius: 5px;
  outline: none;
  box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.1);
  padding: 6px 10px;
}
.content-area textarea:focus {
  border: 1px solid #aaa;
  box-shadow: 0px 0px 3px rgba(61, 176, 246, 0.8);
}
.content-area a.btn,
.content-area span.btn {
  color: #000;
  display: inline-block;
}
.content-area span.btn {
  background: #eee;
  color: #888;
  text-shadow: 1px 1px 0px white;
}
.content-area a.btn-info,
.content-area a.btn-success {
  color: #fff;
}
.content-area .btn {
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.9;
  outline: none;
  padding: 8px 20px;
  text-decoration: none;
}
.content-area .btn-block {
  width: 240px;
}
.content-area .btn-next {
  background: #FFD600;
}
.content-area .btn-next:hover {
  background: #ffc400;
}
.content-area .btn-back {
  background: #f6f6f6;
  color: #666;
}
.content-area .btn-back:hover {
  background: #eee;
}
.content-area .btn-info {
  background: #5bc0de;
  color: #fff;
}
.content-area .btn-info:hover {
  background: #31B0D5;
}
.content-area .btn-success {
  background: #51a451;
  color: #fff;
}
.content-area .btn-success:hover {
  background: #418542;
}
.content-area .btnlist {
  font-size: 0;
}
.content-area .btnlist li {
  display: inline-block;
}
.content-area .btnlist li:first-child {
  margin-right: 15px;
}
.content-area .btnlist-flex {
  display: flex;
  justify-content: center;
}
.content-area .btnlist-flex li {
  text-align: center;
}
.content-area .btnlist-flex li:first-child {
  margin-right: 15px;
}

.btnlist-flex-column {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.btnlist-flex-column a {
  margin-left: 15px;
}
.btnlist-flex-column a:nth-of-type(1) {
  margin-left: 0;
}

@media screen and (max-width: 37.4375em) {
  .content-area input {
    font-size: 16px;
    font-size: 1rem;
  }
  .content-area .btn-block {
    width: 100%;
  }
  .content-area .btnlist li {
    display: block;
  }
  .content-area .btnlist li:first-child {
    margin-right: 0;
  }

  .btnlist-flex-column {
    flex-direction: column;
  }
  .btnlist-flex-column a {
    margin: 12px 0 0 0;
  }
  .btnlist-flex-column a:nth-of-type(1) {
    margin: 0;
  }
}
.s-header {
  align-items: center;
  display: flex;
  margin: 0 auto;
  padding: 13px 25px 17px 25px;
}
.s-header a {
  color: #000;
  text-decoration: none;
}
.s-header a:hover {
  color: #004f7c;
}
.s-header a.active {
  color: #004f7c;
}
.s-header h1 {
  margin-right: auto;
}
.s-header h1 img {
  width: 198px;
  height: 38px;
}
.s-header nav ul {
  align-items: center;
  display: flex;
  justify-content: flex-end;
}
.s-header nav ul li {
  font-size: 13px;
  font-size: 0.8125rem;
  font-family: "Noto Sans JP", sans-serif;
  margin-left: 18px;
  white-space: nowrap;
}
.s-header nav ul li:first-child {
  margin-left: 0;
}
.s-header nav ul li.donation {
  margin-left: 12px;
}
.s-header nav ul li.donation a {
  background: #6dd8ff;
  color: #000;
  font-size: 14px;
  font-size: 0.875rem;
  display: block;
  padding: 3px 8px;
  transition: ease 0.2s;
}
.s-header nav ul li.donation a:hover {
  background: #59d3ff;
}
.s-header nav ul li:last-child {
  margin-left: 12px;
}
.s-header nav ul li.select-lang {
  font-size: 12px;
  font-size: 0.75rem;
  margin-left: 12px;
  position: relative;
}
.s-header nav ul li.select-lang a.select-lang-btn {
  border: 1px solid #a5a5a5;
  box-sizing: border-box;
  background: #fff;
  border-radius: 3px;
  display: block;
  padding: 3px 8px;
}
.s-header nav ul li.select-lang a.select-lang-btn .fa {
  color: #a5a5a5;
  margin-left: 4px;
}
.s-header nav ul li.select-lang ul {
  display: block;
  position: absolute;
  right: 0;
  top: 35px;
  border: 1px solid #a5a5a5;
  box-sizing: border-box;
  background: #fff;
  border-radius: 3px;
  padding: 4px 0;
  transition: all 0.2s ease;
  width: 100%;
  z-index: 200;
}
.s-header nav ul li.select-lang ul li {
  line-height: 1.6;
  font-size: 12px;
  font-size: 0.75rem;
  margin: 0;
}
.s-header nav ul li.select-lang ul a {
  padding: 3px 5px;
  display: block;
  text-align: center;
}
.s-header .target-link {
  margin-top: 12px;
}
.s-header .target-link li {
  border-left: 1px solid #4d4d4d;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.1;
  margin: 0;
}
.s-header .target-link li:first-child {
  border: 0;
}
.s-header .target-link li:last-child {
  margin-left: 0;
}
.s-header .target-link a {
  display: block;
  padding: 0 18px;
}
.s-header .target-link a.active {
  color: #004f7c;
}

.h-nav-mb {
  display: none;
}

.s-search {
  position: relative;
}
.s-search input[type=text] {
  border: 0;
  background: #d8d8d8;
  font-size: 13px;
  font-size: 0.8125rem;
  line-height: 30px;
  padding: 0 25px 0px 8px;
  width: 180px;
  height: 30px;
}
.s-search input[type=submit] {
  background: none;
  border: 0;
  color: #808080;
  font-family: "FontAwesome";
  line-height: 30px;
  font-size: 16px;
  font-size: 1rem;
  position: absolute;
  right: 8px;
  top: 0;
}

.g-nav {
  background-color: #004f7c;
}
.g-nav-main {
  display: flex;
  margin: 0 auto;
  position: relative;
}
.g-nav-main li {
  border-right: 1px solid #fff;
  flex: 1;
  font-size: 14px;
  font-size: 0.875rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  line-height: 1;
  text-align: center;
}
.g-nav-main li:last-child {
  border-right: 0;
}
.g-nav-main li a {
  color: #fff;
  display: block;
  text-decoration: none;
  width: 100%;
  height: 100%;
  padding: 25px 10px;
}
.g-nav-main li a.branch {
  position: relative;
}
.g-nav-main li.active > a {
  background-color: #407b9d;
}
.g-nav-main li .g-open {
  background-color: #407b9d;
}
.g-nav-main li .g-open:after {
  position: absolute;
  top: 100%;
  left: 43%;
  content: "";
  width: 0;
  height: 0;
  border: 15px solid transparent;
  border-top: 10px solid #407b9d;
}
.g-nav-main li .active:after {
  z-index: 800;
}
.g-nav-main li .g-open:after {
  z-index: 999;
}
.g-nav-main li ul {
  background: #dee8ee;
  display: block;
  padding: 15px 20px 20px 20px;
  position: absolute;
  left: 0;
  top: 100%;
  width: 100%;
  text-align: left;
  transition: all 0.2s ease;
  z-index: 900;
}
.g-nav-main li ul li {
  display: inline-block;
  border: 0;
  font-weight: 400;
  margin: 5px 10px 0 0;
  text-align: left;
}
.g-nav-main li ul li:first-child {
  border: 0;
}
.g-nav-main li ul li:last-child {
  margin-right: 0;
}
.g-nav-main li ul a {
  color: #000;
  padding: 6px 10px;
}
.g-nav-main li ul a:before {
  color: #004f7c;
  content: "";
  font-family: "FontAwesome";
  font-size: 13px;
  font-size: 0.8125rem;
  margin-right: 5px;
}
.g-nav-main li ul a:hover, .g-nav-main li ul a.active {
  background-color: #fff;
}
.g-nav-main li ul a:hover:after, .g-nav-main li ul a.active:after {
  display: none;
}
.g-nav-main li ul a.outsidelink:before {
  content: "";
}
.g-nav-main li ul a.pdflink:before {
  color: #d00;
  content: "";
}
.g-nav-sub,
.g-nav .menu-toggle,
.g-nav .sns-list,
.g-nav .sns-list-tb {
  display: none;
}

@media screen and (max-width: 73.75em) {
  .s-header {
    background: #fff;
    width: auto;
    position: absolute;
    padding: 15px;
    width: 100%;
  }
  .s-header nav ul {
    display: none;
  }

  .h-nav-mb {
    display: flex;
    margin-right: 40px;
  }

  .mb-select-lang {
    border-left: 1px solid #a5a5a5;
    border-right: 1px solid #a5a5a5;
    display: inline-block;
    font-size: 12px;
    font-size: 0.75rem;
    position: relative;
  }
  .mb-select-lang a {
    color: #000;
    text-decoration: none;
  }
  .mb-select-lang a.select-lang-btn {
    display: block;
    padding: 10px 10px;
  }
  .mb-select-lang a.select-lang-btn .fa {
    color: #a5a5a5;
    margin-left: 4px;
  }
  .mb-select-lang ul {
    display: block;
    position: absolute;
    left: 0;
    top: 45px;
    border: 1px solid #a5a5a5;
    background: #fff;
    border-radius: 3px;
    padding: 4px 5px;
    transition: all 0.2s ease;
    width: 100%;
    z-index: 300;
  }
  .mb-select-lang ul li {
    line-height: 1.6;
    font-size: 14px;
    font-size: 0.875rem;
    margin: 0;
  }
  .mb-select-lang ul a {
    padding: 6px 5px;
    display: block;
    text-align: center;
  }

  .search-mb {
    border-right: 1px solid #a5a5a5;
    line-height: 1.4;
    position: relative;
  }
  .search-mb a {
    color: #afafaf;
    display: block;
    font-size: 10px;
    font-size: 0.625rem;
    padding: 2px 10px 0 10px;
    text-decoration: none;
  }
  .search-mb a i {
    display: inline-block;
    color: #bfbfbf;
    font-size: 16px;
    font-size: 1rem;
  }
  .search-mb .s-search {
    background: #fff;
    border: 1px solid #a5a5a5;
    border-radius: 3px;
    display: flex;
    padding: 10px;
    position: absolute;
    top: 45px;
    right: 0;
    transition: all 0.2s ease;
    z-index: 300;
  }
  .search-mb .s-search input[type=text] {
    background: #eee;
    font-size: 16px;
    font-size: 1rem;
    line-height: 36px;
    width: 250px;
    height: 36px;
    outline: none;
    position: static;
  }
  .search-mb .s-search input[type=submit] {
    background: #aaa;
    color: #fff;
    font-size: 16px;
    font-size: 1rem;
    line-height: 1;
    position: static;
    text-align: center;
    width: 36px;
  }

  .g-nav {
    background: none;
    padding: 15px 0 0 0;
    text-align: right;
  }
  .g-nav #menu {
    background: #004f7c;
    display: none;
    width: 100%;
    height: 100%;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    position: fixed;
    padding-bottom: 70px;
    z-index: 300;
  }
  .g-nav-main {
    background: #004f7c;
    display: block;
    width: auto;
  }
  .g-nav-main li {
    border: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.7);
    text-align: left;
    white-space: normal;
  }
  .g-nav-main li a {
    padding: 18px 15px;
    height: auto;
  }
  .g-nav-main li a.branch:after {
    color: rgba(255, 255, 255, 0.7);
    content: "";
    font-family: "FontAwesome";
    font-size: 13px;
    font-size: 0.8125rem;
    position: absolute;
    right: 15px;
  }
  .g-nav-main li .active {
    background-color: #407b9d;
  }
  .g-nav-main li .active.branch:after {
    color: rgba(255, 255, 255, 0.7);
    content: "";
    top: auto;
    left: auto;
    width: auto;
    height: auto;
    border: 0;
  }
  .g-nav-main li .g-open {
    background-color: #407b9d;
  }
  .g-nav-main li .g-open.branch:after {
    color: rgba(255, 255, 255, 0.7);
    content: "";
    top: auto;
    left: auto;
    width: auto;
    height: auto;
    border: 0;
  }
  .g-nav-main li ul {
    background: #dee8ee;
    padding: 10px 15px 15px 15px;
    position: static;
    width: auto;
  }
  .g-nav-sub {
    background: #004f7c;
    border-top: 1px solid rgba(255, 255, 255, 0.7);
    display: flex;
    flex-wrap: wrap;
    font-family: "Noto Sans JP", sans-serif;
    text-align: left;
  }
  .g-nav-sub li {
    width: 50%;
    border-bottom: 1px solid rgba(255, 255, 255, 0.7);
  }
  .g-nav-sub li:nth-of-type(even) {
    border-left: 1px solid rgba(255, 255, 255, 0.7);
  }
  .g-nav-sub li a {
    background: #004f7c;
    color: #fff;
    display: block;
    padding: 15px 15px;
    text-decoration: none;
  }
  .g-nav-sub li:last-child {
    width: 100%;
  }
  .g-nav-sub li:last-child a {
    background: #6dd8ff;
    color: #000;
  }
  .g-nav .menu-toggle {
    color: #004f7c;
    cursor: pointer;
    display: inline-block;
    margin: 0px 10px 15px 0;
    padding: 7px 6px 0px 6px;
    text-align: center;
    width: 36px;
    height: 36px;
    z-index: 300;
  }
  .g-nav .menu-toggle > div {
    height: 100%;
    position: relative;
  }
  .g-nav .menu-toggle > div span {
    background: #004f7c;
    display: block;
    left: 0;
    position: absolute;
    width: 100%;
    height: 3px;
    transition: 0.35s ease-in-out;
  }
  .g-nav .menu-toggle > div span:nth-child(1) {
    top: 0;
  }
  .g-nav .menu-toggle > div span:nth-child(2) {
    top: 9px;
  }
  .g-nav .menu-toggle > div span:nth-child(3) {
    top: 18px;
  }
  .g-nav .menu-toggle > div.close span:nth-child(1) {
    top: 10px;
    transform: rotate(315deg);
  }
  .g-nav .menu-toggle > div.close span:nth-child(2) {
    width: 0;
    left: 50%;
  }
  .g-nav .menu-toggle > div.close span:nth-child(3) {
    top: 10px;
    transform: rotate(-315deg);
  }
  .g-nav .sns-list,
.g-nav .sns-list-tb {
    display: flex;
    justify-content: center;
    padding: 25px 0;
  }
  .g-nav .sns-list li,
.g-nav .sns-list-tb li {
    align-self: flex-start;
    display: flex;
    line-height: 1;
    margin-left: 20px;
  }
  .g-nav .sns-list li:first-of-type,
.g-nav .sns-list-tb li:first-of-type {
    margin-left: 0;
  }
  .g-nav .sns-list a,
.g-nav .sns-list-tb a {
    display: block;
  }
  .g-nav .sns-list {
    display: none;
  }
}
@media screen and (max-width: 37.4375em) {
  .s-header {
    padding: 8px 10px;
  }
  .s-header h1 img {
    width: 145px;
  }

  .h-nav-mb {
    margin-right: 45px;
  }

  .mb-select-lang ul {
    border: 0;
    border-radius: 0 0 5px 5px;
    top: 42px;
  }

  .search-mb {
    position: static;
  }
  .search-mb .s-search {
    border: 0;
    border-radius: 0;
    top: 52px;
    padding: 15px 15px 15px 15px;
    width: 100%;
  }
  .search-mb .s-search input[type=text] {
    background: #eee;
    line-height: 36px;
    flex: 1 0 0%;
  }

  .g-nav {
    padding: 9px 0 0 0;
  }
  .g-nav #menu {
    padding-bottom: 53px;
  }
  .g-nav-main li a {
    padding: 15px 10px;
  }
  .g-nav-main li a.branch:after {
    right: 10px;
  }
  .g-nav-main li ul {
    padding: 0 !important;
  }
  .g-nav-main li ul li {
    border-top: 1px solid #ccc;
    display: block;
    margin: 0;
  }
  .g-nav-main li ul a {
    padding: 12px 10px;
    position: relative;
  }
  .g-nav-main li ul a:before {
    color: #004f7c;
    content: "";
    font-family: "FontAwesome";
    font-size: 13px;
    font-size: 0.8125rem;
    position: absolute;
    right: 10px;
  }
  .g-nav-main li:hover ul {
    width: auto;
    padding: 8px 0 8px 0;
  }
  .g-nav-sub li a {
    padding: 10px 10px;
  }
  .g-nav-sub li:last-child {
    border-bottom: 0;
  }
  .g-nav-sub li:last-child a {
    text-align: center;
  }
  .g-nav .menu-toggle {
    margin: 0 10px 8px 0;
    padding: 7px 7px 0px 7px;
    height: 32px;
  }
  .g-nav .menu-toggle > div span:nth-child(1) {
    top: 0;
  }
  .g-nav .menu-toggle > div span:nth-child(2) {
    top: 8px;
  }
  .g-nav .menu-toggle > div span:nth-child(3) {
    top: 16px;
  }
  .g-nav .sns-list {
    display: flex;
    padding: 20px 0;
  }
  .g-nav .sns-list-tb {
    display: none;
  }
}
@media screen and (max-width: 22.5em) {
  .s-header h1 img {
    width: 110px;
  }

  .mb-select-lang {
    font-size: 11px;
    font-size: 0.6875rem;
  }
  .mb-select-lang a.select-lang-btn {
    padding: 10px 8px;
  }
  .mb-select-lang ul li {
    font-size: 13px;
    font-size: 0.8125rem;
  }
}
.btn-pagetop {
  position: fixed;
  bottom: 150px;
  right: 0;
  z-index: 200;
}
.btn-pagetop a {
  background-color: #333;
  display: block;
  padding: 15px 0;
  width: 60px;
  height: 60px;
  z-index: 8000;
  text-align: center;
}
.btn-pagetop a:hover {
  background-color: #888;
}

.s-footer {
  background-color: #e4e4e4;
  border-top: 1px solid #a5a5a5;
}
.s-footer a {
  color: #000;
  text-decoration: none;
}
.s-footer a:hover {
  text-decoration: underline;
}
.s-footer-sitemap {
  display: flex;
  margin: 20px auto;
  text-align: left;
  width: 1200px;
}
.s-footer-sitemap > div {
  border-left: 1px solid #a5a5a5;
  flex: 1;
  padding: 0 15px;
}
.s-footer-sitemap > div:first-child {
  border: 0;
  padding: 0 15px 0 0;
}
.s-footer-sitemap dl {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.6;
}
.s-footer-sitemap dl dt {
  font-weight: bold;
}
.s-footer-sitemap dl dd {
  margin-left: 1em;
}
.s-footer-group {
  border-top: 1px solid #a5a5a5;
}
.s-footer-group ul {
  display: flex;
  margin: 0 auto;
  width: 1200px;
}
.s-footer-group ul li {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 13px;
  font-size: 0.8125rem;
  margin-right: 30px;
}
.s-footer-group a {
  display: block;
  padding: 15px 0;
}
.s-footer-group a:before {
  color: #a5a5a5;
  content: "";
  font-family: "FontAwesome";
  margin-right: 4px;
}
.s-footer-group a:hover, .s-footer-group a:hover:before {
  color: #45b7ea;
  text-decoration: none;
}
.s-footer .author {
  border-top: 1px solid #a5a5a5;
  padding: 20px;
}
.s-footer .author > div {
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
  width: 1200px;
}
.s-footer .author > div .author-logo {
  opacity: 0.3;
  filter: alpha(opacity=30);
}
.s-footer .author > div .address {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 13px;
  font-size: 0.8125rem;
  margin: 0 auto 0 2em;
  text-align: left;
}
.s-footer .author > div .pr {
  align-items: flex-end;
  display: flex;
  flex-direction: column;
}
.s-footer .author > div .pr ul {
  display: flex;
  flex: 1 0 0%;
  padding-top: 5px;
}
.s-footer .author > div .pr li {
  align-self: flex-start;
  display: flex;
  line-height: 1;
  margin-left: 17px;
}
.s-footer .author > div .pr li:first-of-type {
  margin-left: 0;
}
.s-footer .author > div .pr a {
  display: block;
}
.s-footer .author > div .copyright {
  align-self: flex-end;
  color: #8b8b8b;
}
.s-footer .author > div .copyright small {
  font-family: Helvetica, Arial, sans-serif;
  font-size: 12px;
  font-size: 0.75rem;
}

.contactbox,
.contactbox-branch {
  border: 1px solid #a5a5a5;
  display: flex;
  font-size: 14px;
  font-size: 0.875rem;
  margin: 35px auto;
  width: 1000px;
}
.contactbox > div:nth-of-type(1),
.contactbox-branch > div:nth-of-type(1) {
  align-items: center;
  background: #004f7c;
  display: flex;
  padding: 20px;
  position: relative;
  white-space: nowrap;
}
.contactbox > div:nth-of-type(2),
.contactbox-branch > div:nth-of-type(2) {
  align-items: center;
  border-right: 1px solid #a5a5a5;
  display: flex;
  margin: 15px 25px;
  padding-right: 25px;
  position: relative;
}
.contactbox h3,
.contactbox-branch h3 {
  color: #fff;
  padding-left: 55px;
  position: relative;
}
.contactbox h3:before,
.contactbox-branch h3:before {
  content: "";
  background: url(img/contact.svg) no-repeat center center;
  background-size: cover;
  display: block;
  position: absolute;
  width: 44px;
  height: 44px;
  left: 0px;
  top: -3px;
}
.contactbox ul,
.contactbox-branch ul {
  padding: 15px 0;
}

.contactbox-branch > div:nth-of-type(2) {
  border-right: 0;
  margin: 15px 25px;
  flex-direction: column;
  padding-right: 0;
}
.contactbox-branch dl {
  align-self: flex-start;
}
.contactbox-branch dl:after {
  content: "";
  clear: both;
  display: block;
}
.contactbox-branch dl dt {
  border-right: 1px solid #a5a5a5;
  clear: left;
  float: left;
  font-family: "Noto Sans JP", sans-serif;
  margin-bottom: 10px;
  padding: 0;
  white-space: nowrap;
}
.contactbox-branch dl dd {
  margin-bottom: 10px;
  padding-top: 0;
  padding-bottom: 0;
}
.contactbox-branch ul {
  align-self: flex-start;
  padding: 0;
  line-height: 1.6;
}

@media screen and (max-width: 73.75em) {
  .btn-pagetop a {
    background-color: #333;
  }
  .btn-pagetop a:hover {
    background-color: #333;
  }

  .s-footer {
    border: 0;
  }
  .s-footer-sitemap {
    display: none;
  }
  .s-footer-group {
    border-top: 1px solid #a5a5a5;
  }
  .s-footer-group ul {
    flex-wrap: wrap;
    justify-content: center;
    padding: 7px 0;
    width: auto;
  }
  .s-footer-group ul li {
    margin-right: 20px;
  }
  .s-footer-group ul li:last-child {
    margin-right: 0;
  }
  .s-footer-group a {
    padding: 3px 0;
  }
  .s-footer .author {
    align-items: center;
    padding: 15px;
  }
  .s-footer .author > div {
    flex-direction: column;
    width: auto;
  }
  .s-footer .author > div .author-logo img {
    width: 180px;
    height: auto;
  }
  .s-footer .author > div .address {
    display: none;
  }
  .s-footer .author > div .pr {
    align-items: center;
  }
  .s-footer .author > div .pr ul {
    padding: 20px 0 10px 0;
  }
  .s-footer .author > div .copyright {
    align-self: center;
    margin-top: 5px;
  }

  .contactbox,
.contactbox-branch {
    flex-direction: column;
    margin: 30px 15px;
    width: auto;
  }
  .contactbox > div:nth-of-type(1),
.contactbox-branch > div:nth-of-type(1) {
    padding: 10px;
  }
  .contactbox > div:nth-of-type(2),
.contactbox-branch > div:nth-of-type(2) {
    border-right: 0;
    margin: 10px 10px 5px 10px;
    padding-right: 0;
  }
  .contactbox h3,
.contactbox h4,
.contactbox-branch h3,
.contactbox-branch h4 {
    top: auto;
    left: auto;
    transform: none;
  }
  .contactbox h3,
.contactbox-branch h3 {
    padding-left: 35px;
  }
  .contactbox h3:before,
.contactbox-branch h3:before {
    background-size: contain;
    width: 25px;
    height: 25px;
    left: 0px;
    top: -3px;
  }
  .contactbox h4,
.contactbox-branch h4 {
    font-weight: 500;
  }
  .contactbox ul,
.contactbox-branch ul {
    padding: 0px 10px 10px 10px;
  }

  .contactbox-branch ul {
    padding: 0;
  }
}
@media screen and (max-width: 37.4375em) {
  .btn-pagetop {
    bottom: 60px;
  }
  .btn-pagetop a {
    padding: 7px 0;
    width: 43px;
    height: 43px;
  }

  .s-footer-group ul {
    flex-wrap: wrap;
    justify-content: flex-start;
    padding: 0;
  }
  .s-footer-group ul li {
    border-top: 1px solid #a5a5a5;
    border-right: 1px solid #a5a5a5;
    font-size: 12px;
    font-size: 0.75rem;
    margin-right: 0;
    width: 50%;
  }
  .s-footer-group ul li:nth-of-type(even) {
    border-right: 0;
  }
  .s-footer-group ul li:nth-of-type(-n+2) {
    border-top: 0;
  }
  .s-footer-group a {
    padding: 5px 0;
  }
  .s-footer .author {
    padding: 13px;
  }
  .s-footer .author > div .author-logo img {
    width: 150px;
  }
  .s-footer .author > div .copyright small {
    font-size: 11px;
    font-size: 0.6875rem;
  }

  .contactbox,
.contactbox-branch {
    font-size: 13px;
    font-size: 0.8125rem;
    margin: 20px 15px;
  }
  .contactbox h3,
.contactbox-branch h3 {
    padding-left: 25px;
  }
  .contactbox h3:before,
.contactbox-branch h3:before {
    width: 20px;
    height: 20px;
    top: -2px;
  }

  .contactbox-branch dl {
    margin-bottom: 10px;
  }
  .contactbox-branch dl dt {
    border-right: 0;
    float: none;
    margin-bottom: 0;
  }
  .contactbox-branch dl dd {
    margin-bottom: 0;
  }
}
.wrapper {
  width: 1200px;
  margin-right: auto;
  margin-left: auto;
  text-align: left;
}

.content-area {
  text-align: left;
}

.content-blue {
  background-color: #d9e8ea;
  padding: 30px 0;
}

.content {
  margin-right: auto;
  margin-bottom: 35px;
  margin-left: auto;
  width: 1000px;
}

.content-main:after {
  content: "";
  clear: both;
  display: block;
}

.basic-area {
  margin-right: auto;
  width: 745px;
  float: left;
}

.breadcrumbs {
  display: flex;
  justify-content: flex-end;
  padding: 5px 25px;
  text-align: right;
}
.breadcrumbs li {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.6;
}
.breadcrumbs li:before {
  margin: 0 6px;
  color: #666;
  content: ">";
}
.breadcrumbs li:first-child {
  margin: 0;
  color: #666;
  content: ">";
}
.breadcrumbs li:first-child:before {
  color: #0071ae;
  content: "";
  font-family: "FontAwesome";
  margin: 0 2px 0 0;
}
.breadcrumbs li a {
  color: #0071ae;
  text-decoration: none;
}
.breadcrumbs li a:hover {
  color: #45b7ea;
  text-decoration: underline;
}

@media screen and (max-width: 73.75em) {
  .wrapper {
    margin-right: 15px;
    margin-left: 15px;
    width: auto;
  }

  .content {
    margin-right: 15px;
    margin-left: 15px;
    width: auto;
  }

  .basic-area {
    width: auto;
    float: none;
  }

  .breadcrumbs {
    background: rgba(217, 232, 234, 0.5);
    justify-content: flex-start;
    padding: 8px 15px 8px 15px;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    overflow: auto;
    white-space: nowrap;
  }
  .breadcrumbs li {
    font-size: 11px;
    font-size: 0.6875rem;
  }
  .breadcrumbs::-webkit-scrollbar {
    display: none;
  }
  .breadcrumbs::-webkit-scrollbar-track {
    background: #F1F1F1;
  }
  .breadcrumbs::-webkit-scrollbar-thumb {
    background: #BCBCBC;
  }
}
@media screen and (max-width: 37.4375em) {
  .breadcrumbs {
    padding: 8px 10px 8px 10px;
  }
}
.p-nav {
  display: flex;
  flex-wrap: wrap;
}
.p-nav > div {
  border-bottom: 1px solid #e6e6e6;
  display: flex;
  font-size: 13px;
  font-size: 0.8125rem;
  margin-left: 4%;
  padding: 12px 0 12px 15px;
  position: relative;
  width: 48%;
}
.p-nav > div:after {
  position: absolute;
  top: 0.5em;
  left: 0;
  content: "";
  width: 3px;
  height: calc(100% - 1em);
  background-color: #004f7c;
}
.p-nav > div:nth-child(-n+2) {
  border-top: 1px solid #e6e6e6;
}
.p-nav > div:nth-of-type(odd) {
  margin-left: 0;
}
.p-nav a {
  color: #000;
}
.p-nav a:hover {
  text-decoration: none;
}
.p-nav a.single {
  display: flex;
  padding-right: 20px;
  position: relative;
  width: 100%;
}
.p-nav a.single:after {
  color: #004f7c;
  content: "";
  font-family: "FontAwesome";
  font-size: 30px;
  font-size: 1.875rem;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
.p-nav .thumb {
  margin-right: 15px;
}
.p-nav h3,
.p-nav h4 {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  margin-bottom: 10px;
}
.p-nav h3 .new,
.p-nav h4 .new {
  background: #f00;
  color: #fff;
  display: inline-block;
  font-size: 13px;
  font-size: 0.8125rem;
  line-height: 1;
  margin-left: 3px;
  padding: 3px 5px;
}
.p-nav ul {
  margin-top: 5px;
}
.p-nav ul li {
  display: inline-block;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.5;
  margin-right: 1em;
  margin-left: 0.7em;
  text-indent: -0.7em;
}
.p-nav ul li:before {
  color: #004f7c;
  content: "";
  font-family: "FontAwesome";
  margin-right: 4px;
}
.p-nav ul li a {
  color: #0071ae;
}
.p-nav ul li.pdf::before {
  color: #d00;
  content: "";
  font-family: "FontAwesome";
}

.p-nav-letters > div:after {
  background-color: #fabe00;
}
.p-nav-letters a.single:after {
  color: #fabe00;
}

.p-nav-eco > div:after {
  background-color: #22ac38;
}
.p-nav-eco a.single:after {
  color: #22ac38;
}

.p-nav-biz > div:after {
  background-color: #ee7800;
}
.p-nav-biz a.single:after {
  color: #ee7800;
}

.p-nav-law > div:after {
  background-color: #850f74;
}
.p-nav-law a.single:after {
  color: #850f74;
}

.p-nav-eng > div:after {
  background-color: #009fb0;
}
.p-nav-eng a.single:after {
  color: #009fb0;
}

.p-nav-regional > div:after {
  background-color: #00733e;
}
.p-nav-regional a.single:after {
  color: #00733e;
}

.p-nav-informatics > div:after {
  background-color: #083284;
}
.p-nav-informatics a.single:after {
  color: #083284;
}

.p-nav-human > div:after {
  background-color: #de0047;
}
.p-nav-human a.single:after {
  color: #de0047;
}

.p-nav-international > div:after {
  background-color: #0075c0;
}
.p-nav-international a.single:after {
  color: #0075c0;
}

.p-nav-liberal > div:after {
  background-color: #00479d;
}
.p-nav-liberal a.single:after {
  color: #00479d;
}

.p-nav-graduate > div:after {
  background-color: #6d3e60;
}
.p-nav-graduate a.single:after {
  color: #6d3e60;
}

.faculty-nav {
  display: flex;
  flex-wrap: wrap;
}
.faculty-nav > div {
  border-bottom: 1px solid #e6e6e6;
  font-size: 13px;
  font-size: 0.8125rem;
  margin-left: 4%;
  padding: 12px 0 12px 15px;
  position: relative;
  width: 48%;
}
.faculty-nav > div:after {
  position: absolute;
  top: 0.5em;
  left: 0;
  content: "";
  width: 3px;
  height: calc(100% - 1em);
  background-color: #004f7c;
}
.faculty-nav > div:nth-child(-n+2) {
  border-top: 1px solid #e6e6e6;
}
.faculty-nav > div:nth-of-type(odd) {
  margin-left: 0;
}
.faculty-nav a {
  color: #000;
  display: block;
  padding-right: 20px;
  position: relative;
  width: 100%;
  height: 100%;
}
.faculty-nav a:hover {
  text-decoration: none;
}
.faculty-nav a:after {
  color: #004f7c;
  content: "";
  font-family: "FontAwesome";
  font-size: 30px;
  font-size: 1.875rem;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
.faculty-nav h3,
.faculty-nav h4 {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  margin-bottom: 10px;
}

.faculty-nav-letters > div:after {
  background-color: #fabe00;
}
.faculty-nav-letters a:after {
  color: #fabe00;
}

.faculty-nav-eco > div:after {
  background-color: #22ac38;
}
.faculty-nav-eco a:after {
  color: #22ac38;
}

.faculty-nav-biz > div:after {
  background-color: #ee7800;
}
.faculty-nav-biz a:after {
  color: #ee7800;
}

.faculty-nav-law > div:after {
  background-color: #850f74;
}
.faculty-nav-law a:after {
  color: #850f74;
}

.faculty-nav-eng > div:after {
  background-color: #009fb0;
}
.faculty-nav-eng a:after {
  color: #009fb0;
}

.faculty-nav-regional > div:after {
  background-color: #00733e;
}
.faculty-nav-regional a:after {
  color: #00733e;
}

.faculty-nav-informatics > div:after {
  background-color: #083284;
}
.faculty-nav-informatics a:after {
  color: #083284;
}

.faculty-nav-human > div:after {
  background-color: #de0047;
}
.faculty-nav-human a:after {
  color: #de0047;
}

.faculty-nav-international > div:after {
  background-color: #0075c0;
}
.faculty-nav-international a:after {
  color: #0075c0;
}

.faculty-nav-liberal > div:after {
  background-color: #00479d;
}
.faculty-nav-liberal a:after {
  color: #00479d;
}

.sidebar {
  width: 220px;
  float: right;
}
.sidebar h3 a, .sidebar h3 span {
  color: #fff;
  display: block;
  padding: 15px 12px;
}
.sidebar h3 a:hover, .sidebar h3 span:hover {
  text-decoration: none;
}
.sidebar > ul {
  border-top: 1px solid #e1e1e1;
}
.sidebar > ul > li {
  border-bottom: 1px solid #e1e1e1;
}
.sidebar > ul > li a {
  color: #0071ae;
  display: block;
  font-size: 15px;
  font-size: 0.9375rem;
  padding: 8px 0;
  text-indent: -19px;
  margin-left: 19px;
}
.sidebar > ul > li a:before {
  content: "";
  display: inline-block;
  background: url(img/arrow_right.svg) no-repeat center center;
  background-size: cover;
  margin: 0 5px 1px 0;
  width: 14px;
  height: 14px;
  vertical-align: middle;
}
.sidebar > ul > li a.category:before {
  transform: rotate(-45deg);
}
.sidebar > ul > li.active a {
  color: #000;
}
.sidebar .pulldown label {
  border-top: 1px solid #e1e1e1;
  color: #0071ae;
  display: block;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.9;
  padding: 8px 0;
  cursor: pointer;
  transition: all 0.5s;
}
.sidebar .pulldown label:before {
  color: #004f7c;
  content: "";
  display: inline-block;
  font-family: "FontAwesome";
  margin: 0 5px 1px 0;
  vertical-align: middle;
}
.sidebar .pulldown input {
  display: none;
}
.sidebar .pulldown .branchlist {
  height: 0;
  overflow: hidden;
  opacity: 0;
}
.sidebar .pulldown .branchlist a {
  color: #0071ae;
  display: block;
  font-size: 15px;
  font-size: 0.9375rem;
  padding: 5px 0;
  line-height: 1.4;
  text-indent: -19px;
  margin-left: 19px;
}
.sidebar .pulldown .branchlist a:before {
  content: "";
  display: inline-block;
  background: url(img/arrow_right.svg) no-repeat center center;
  background-size: cover;
  margin: 0 5px 1px 0;
  width: 14px;
  height: 14px;
  vertical-align: middle;
}
.sidebar .pulldown .branchlist a.category:before {
  transform: rotate(-45deg);
}
.sidebar .pulldown .branchlist .active a {
  color: #000;
}
.sidebar .pulldown .check:checked + label + .branchlist,
.sidebar .pulldown .opened + label + .branchlist {
  height: auto;
  opacity: 1;
  padding: 0 0 10px 15px;
}
.sidebar .pulldown .check:checked + label,
.sidebar .pulldown .opened + label {
  color: #000;
}
.sidebar .pulldown .check:checked + label:before,
.sidebar .pulldown .opened + label:before {
  content: "";
  font-weight: normal;
}

.c-nav-dropdown {
  font-family: "Noto Sans JP", sans-serif;
}
.c-nav-dropdown details {
  position: relative;
  z-index: 200;
}
.c-nav-dropdown details summary {
  list-style: none;
  list-style-type: none;
  list-style-image: url(data:0);
}
.c-nav-dropdown #c-nav-menu > summary {
  align-items: center;
  background: #009ce5;
  color: #fff;
  cursor: pointer;
  font-family: "Raleway", sans-serif;
  font-size: 11px;
  font-size: 0.6875rem;
  display: flex;
  flex-direction: column-reverse;
  font-weight: 500;
  padding: 10px;
  position: absolute;
  text-align: center;
  transition: ease 0.3s;
  width: 60px;
  height: 60px;
  top: -90px;
  right: 30px;
}
.c-nav-dropdown #c-nav-menu > summary::after {
  content: "";
  display: block;
  font-family: "FontAwesome";
  font-size: 24px;
  font-size: 1.5rem;
  margin-bottom: 5px;
  transition: transform 0.5s;
}
.c-nav-dropdown summary:hover {
  background: #007db7;
}
.c-nav-dropdown details[open] summary {
  background-color: #009ce5;
}
.c-nav-dropdown .dropdown-menu {
  background: #004b76;
  position: absolute;
  display: block;
  text-align: left;
  width: 350px;
  top: 0;
  right: 0;
}
.c-nav-dropdown .dropdown-menu a {
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  background: #004b76;
  color: #fff;
  display: block;
  line-height: 1.6;
  padding: 10px 30px 10px 15px;
  position: relative;
}
.c-nav-dropdown .dropdown-menu a:hover,
.c-nav-dropdown .dropdown-menu a.active {
  background: #009ce5;
  text-decoration: none;
}
.c-nav-dropdown .dropdown-menu a:first-of-type {
  border-top: 0;
}
.c-nav-dropdown .dropdown-menu a::after {
  content: "";
  font-family: "FontAwesome";
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  right: 10px;
}
.c-nav-dropdown .dropdown-menu .sub {
  font-size: 13px;
  font-size: 0.8125rem;
}
.c-nav-dropdown .dropdown-menu a.backtotop {
  background: #797979;
}
.c-nav-dropdown .dropdown-menu a.backtocattop {
  background: #2d6eaa;
}
.c-nav-dropdown details[open] .dropdown-menu {
  animation: fadein 0.5s ease;
}
@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@media screen and (max-width: 73.75em) {
  .p-nav {
    border-top: 1px solid #e6e6e6;
    flex-direction: column;
  }
  .p-nav > div {
    margin-left: 0;
    width: auto;
  }
  .p-nav > div:nth-child(-n+2) {
    border-top: 0;
  }
  .p-nav .thumb img {
    width: 100px;
    height: auto;
  }

  .sidebar {
    float: none;
    margin-top: 35px;
    width: auto;
  }

  .c-nav-dropdown #c-nav-menu > summary {
    font-size: 10px;
    font-size: 0.625rem;
    padding: 5px;
    right: 15px;
    top: -65px;
    width: 45px;
    height: 45px;
  }
  .c-nav-dropdown #c-nav-menu > summary::after {
    font-size: 20px;
    font-size: 1.25rem;
    margin-bottom: 2px;
  }
}
@media screen and (max-width: 37.4375em) {
  .p-nav > div {
    align-items: flex-start;
    padding: 8px 0 8px 12px;
  }
  .p-nav a.single {
    padding-right: 15px;
    width: 100%;
  }
  .p-nav a.single .thumb, .p-nav a.single > div {
    align-self: flex-start;
  }
  .p-nav a.single:after {
    font-size: 20px;
    font-size: 1.25rem;
  }
  .p-nav .thumb img {
    width: 60px;
  }
  .p-nav .thumb {
    margin-right: 10px;
  }
  .p-nav h3,
.p-nav h4 {
    font-size: 15px;
    font-size: 0.9375rem;
    margin-bottom: 5px;
  }

  .faculty-nav {
    border-top: 1px solid #e6e6e6;
    flex-direction: column;
  }
  .faculty-nav > div {
    margin-left: 0;
    padding: 8px 0 8px 12px;
    width: auto;
  }
  .faculty-nav > div:nth-child(-n+2) {
    border-top: 0;
  }
  .faculty-nav a {
    padding-right: 15px;
  }
  .faculty-nav a:after {
    font-size: 20px;
    font-size: 1.25rem;
  }
  .faculty-nav h3,
.faculty-nav h4 {
    font-size: 15px;
    font-size: 0.9375rem;
    margin-bottom: 5px;
  }

  .c-nav-dropdown #c-nav-menu > summary {
    transition: none;
    top: -55px;
    right: 10px;
  }
  .c-nav-dropdown .dropdown-menu {
    margin: 0 0 20px 0;
    position: static;
    width: 100%;
  }
}
.top-movie {
  position: relative;
  /*
    padding-bottom: 42.3263327948304%;
    height: 0;
  */
  overflow: hidden;
}
.top-movie .msg {
  background: rgba(0, 0, 0, 0.3);
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  justify-content: center;
  padding: 10px 0 15px 0;
  position: absolute;
  z-index: 100;
  width: 170px;
  top: 30px;
  right: 30px;
}
.top-movie .msg h2 {
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 300;
  line-height: 1.2;
  margin-bottom: 5px;
}
.top-movie .msg p {
  font-size: 10px;
  font-size: 0.625rem;
}
.top-movie .msg .tgulogo {
  margin-top: 10px;
}
.top-movie .msg .tgulogo img {
  width: 130px;
  height: auto;
}
.top-movie .bnr-movie {
  position: absolute;
  top: 35px;
  right: 35px;
  z-index: 100;
}
.top-movie .bnr-movie a {
  border-radius: 22px;
  background: rgba(0, 0, 0, 0.4);
  border: 1px solid white;
  color: #fff;
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  line-height: 20px;
  padding: 12px 40px;
  position: relative;
  text-decoration: none;
  transition: all 0.3s ease 0s;
}
.top-movie .bnr-movie a:before {
  content: "";
  font-family: "FontAwesome";
  font-size: 18px;
  font-size: 1.125rem;
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  right: 22px;
}
.top-movie .bnr-movie a:hover {
  background: rgba(0, 0, 0, 0.2);
}
.top-movie .top-movie-alert {
  position: absolute;
  bottom: 70px;
  right: 30px;
  z-index: 100;
}
.top-movie .top-movie-alert a {
  background: #fff00a;
  color: #444;
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 500;
  line-height: 1.5;
  padding: 18px 60px;
  position: relative;
  text-decoration: none;
  transition: all 0.3s ease 0s;
}
.top-movie .top-movie-alert a:before {
  content: "";
  font-family: "FontAwesome";
  font-size: 20px;
  font-size: 1.25rem;
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  right: 22px;
}
.top-movie .top-movie-alert a:hover {
  background: #f0e100;
}
.top-movie video {
  margin: 0 auto;
  z-index: 1;
  width: 100%;
  height: auto;
  outline: none;
}
.top-movie video img {
  width: 100%;
  height: auto;
}
.top-movie .movie-pc {
  display: block;
}
.top-movie .movie-mobile {
  display: none;
}

.top-visual {
  position: relative;
  overflow: hidden;
}
.top-visual .base img {
  width: 100%;
  max-height: auto;
}
.top-visual .msg {
  align-items: center;
  background: rgba(0, 0, 0, 0.1);
  color: #fff;
  display: flex;
  font-family: "Noto Sans JP", sans-serif;
  justify-content: center;
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 100;
}
.top-visual .msg h2 {
  font-size: 64px;
  font-size: 4rem;
  font-weight: 300;
  line-height: 1.2;
  margin-bottom: 10px;
}
.top-visual .msg p {
  font-size: 29px;
  font-size: 1.8125rem;
}
.top-visual .msg .tgulogo {
  margin-top: 20px;
}
.top-visual .weboc {
  background: #029de6;
  display: block;
  padding: 60px 20px;
  position: relative;
  height: 100%;
}
.top-visual .weboc img {
  width: 574px;
  height: auto;
}
.top-visual .stream {
  position: absolute;
  bottom: 40px;
  right: 40px;
  z-index: 200;
}
.top-visual .stream a {
  display: block;
  border: 4px solid #fff;
}
.top-visual .top-movie-alert {
  position: absolute;
  bottom: 30px;
  right: 30px;
  z-index: 100;
}
.top-visual .top-movie-alert a {
  align-items: center;
  background: #fff00a;
  color: #444;
  display: flex;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.4;
  min-height: 70px;
  padding: 15px 45px 15px 20px;
  position: relative;
  text-decoration: none;
  text-align: left;
  transition: all 0.3s ease 0s;
}
.top-visual .top-movie-alert a:before {
  content: "";
  font-family: "FontAwesome";
  font-size: 20px;
  font-size: 1.25rem;
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  right: 15px;
}
.top-visual .top-movie-alert a:hover {
  background: #f0e100;
}
.top-visual .top-movie-alert a .new {
  background: #d00;
  color: #fff;
  display: inline-block;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 500;
  vertical-align: middle;
  padding: 2px 8px;
  position: absolute;
  top: 0;
  right: 0;
}
.top-visual .top-movie-alert a.guide {
  background: #2ecccc;
  color: #fff;
}
.top-visual .top-movie-alert a.guide:hover {
  background: #29b7b7;
}
.top-visual .top-movie-alert a.bnr-pass {
  align-items: center;
  display: flex;
  color: #fff;
  background: #fb9c95;
  padding: 0 30px 0 70px;
  height: calc(2.8em + 18px);
}
.top-visual .top-movie-alert a.bnr-pass::before {
  content: none;
}
.top-visual .top-movie-alert a.bnr-pass span:nth-of-type(1) {
  flex: 1 0 0%;
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 400;
  text-align: center;
  margin-right: auto;
  letter-spacing: 0.2em;
  padding-left: 10px;
}
.top-visual .top-movie-alert a.bnr-pass span:nth-of-type(2) {
  align-self: flex-end;
  padding: 0 10px;
}
.top-visual .top-movie-alert a.bnr-pass img {
  width: auto;
  height: 70px;
}
.top-visual .bnr-movie {
  position: absolute;
  top: 25px;
  right: 25px;
  z-index: 100;
}
.top-visual .bnr-movie a {
  border-radius: 22px;
  background: rgba(0, 0, 0, 0.3);
  border: 1px solid white;
  color: #fff;
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  line-height: 20px;
  margin-top: 10px;
  padding: 12px 40px;
  position: relative;
  text-decoration: none;
  transition: all 0.3s ease 0s;
}
.top-visual .bnr-movie a:before {
  content: "";
  font-family: "FontAwesome";
  font-size: 18px;
  font-size: 1.125rem;
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  right: 22px;
}
.top-visual .bnr-movie a:hover {
  background: rgba(0, 0, 0, 0.4);
}
.top-visual .bnr-movie a:first-of-type {
  margin: 0;
}

.top-movie-alert-mb {
  display: none;
}

.top-announce {
  background: #009ce5;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  max-height: 600px;
  overflow: hidden;
  position: relative;
}
.top-announce > div {
  position: absolute;
  right: 50%;
  bottom: 50%;
  transform: translate(50%, 50%);
  width: 100%;
  z-index: 100;
}
.top-announce > div h2 {
  font-size: 80px;
  font-size: 5rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  margin-bottom: 12px;
  text-shadow: 1px 1px 8px rgba(0, 0, 0, 0.5);
}
.top-announce > div p {
  font-size: 50px;
  font-size: 3.125rem;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  text-shadow: 1px 1px 8px rgba(0, 0, 0, 0.5);
}
.top-announce > div p .month,
.top-announce > div p .date {
  font-family: "Roboto", sans-serif;
  font-size: 80px;
  font-size: 5rem;
  margin-bottom: -5px;
}
.top-announce > div p .month {
  margin-right: 0.1em;
}
.top-announce > div p .youbi {
  border-radius: 50%;
  background: #fff;
  color: #009ce5;
  display: inline-block;
  font-weight: 700;
  margin: 0 10px 8px 5px;
  font-size: 30px;
  font-size: 1.875rem;
  padding: 10px;
  text-shadow: none;
  vertical-align: bottom;
}
.top-announce > div p .time {
  font-family: "Roboto", sans-serif;
  font-size: 60px;
  font-size: 3.75rem;
}
.top-announce .base img {
  filter: brightness(80%);
  width: 100%;
  max-height: auto;
  z-index: 1;
}
.top-announce ul {
  display: flex;
  justify-content: center;
  margin-top: 32px;
}
.top-announce ul li {
  background: rgba(0, 156, 229, 0.9);
  color: #fff;
  font-size: 17px;
  font-size: 1.0625rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.3;
  margin-left: 20px;
  padding: 10px 0;
  white-space: nowrap;
  width: 21em;
}
.top-announce ul li:first-child {
  margin-left: 0;
}
.top-announce ul li br {
  display: none;
}

.push-bnr-wide {
  background: rgba(223, 215, 194, 0.8);
  padding: 30px 30px;
  margin-bottom: 35px;
}

a.bnr-reihai {
  align-items: center;
  background: url(../../img/bnr_chapel_bg.png), #987B5D;
  background: url(../../img/bnr_chapel_bg.png), linear-gradient(to right, #664f38 0%, #987b5d 100%);
  background-repeat: no-repeat;
  background-position: right center;
  background-size: contain;
  display: flex;
  justify-content: center;
  margin: auto;
  width: 100%;
  max-width: 1400px;
  height: 110px;
}

.push-bnr {
  background: rgba(0, 156, 229, 0.15);
  padding: 30px 30px;
  margin-bottom: 35px;
}
.push-bnr ul {
  justify-content: center;
  display: flex;
  flex-wrap: wrap;
  margin: auto;
  max-width: 1400px;
}
.push-bnr ul li:first-child {
  margin-left: 0;
}
.push-bnr ul img {
  width: 100%;
  height: auto;
}
.push-bnr p {
  background: #fbf3e7;
  margin-top: -10px;
  text-align: center;
}
.push-bnr p img {
  width: auto;
  height: 110px;
}
.push-bnr a.alert {
  background: #fff00a;
  color: #f00;
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 25px;
  padding: 18px 20px;
  position: relative;
}
.push-bnr a.alert br {
  display: none;
}
.push-bnr a.alert:hover {
  text-decoration: none;
}
.push-bnr a.alert::after {
  color: #888;
  content: "";
  font-family: "FontAwesome";
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  right: 15px;
}

.push-bnr-3 ul li {
  width: 32%;
  margin-left: 2%;
}

.push-bnr-4 ul li {
  width: 23.65%;
  margin-left: 1.8%;
}

.top-slide {
  margin-bottom: 30px;
}
.top-slide h2 {
  margin-bottom: 5px;
}
.top-slide .swiper-slide img {
  width: 100%;
  height: auto;
}
.top-slide .swiper-container {
  padding: 25px 0;
}
.top-slide .swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 0;
}
.top-slide .swiper-pagination-white {
  --swiper-pagination-color: #004f7c;
}
.top-slide .slide-exam > div {
  padding: 0 15px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 100;
}
.top-slide .slide-exam > div a {
  background: rgba(255, 255, 255, 0.85);
  display: block;
}
.top-slide .slide-exam > div a:hover {
  background: white;
}
.top-slide .slide-exam > div p {
  margin-top: 10px;
}
.top-slide .slide-exam > div p:first-child {
  margin-top: 0;
}
.top-slide .slide-exam-photo {
  z-index: -20;
}

.top-topics {
  margin-bottom: 45px;
}
.top-topics h2 {
  margin-bottom: 40px;
}
.top-topics ul {
  display: flex;
}
.top-topics ul li {
  border-top: 1px solid #a5a5a5;
  border-bottom: 1px solid #a5a5a5;
  border-left: 1px solid #a5a5a5;
  flex: 1;
  text-align: left;
}
.top-topics ul li:first-child {
  border-left: 0;
}
.top-topics ul a {
  color: #000;
  display: block;
  height: 100%;
  text-decoration: none;
}
.top-topics ul a:hover {
  color: #45b7ea;
}
.top-topics ul .thumb {
  overflow: hidden;
}
.top-topics ul .thumb img {
  width: 100%;
  height: auto;
}
.top-topics ul .topics-title {
  display: block;
  padding: 13px 40px 13px 15px;
  position: relative;
}
.top-topics ul .topics-title:after {
  content: "";
  background: url(img/arrow_right.svg) no-repeat center center;
  background-size: cover;
  display: block;
  position: absolute;
  width: 20px;
  height: 20px;
  top: 13px;
  right: 10px;
}

.top-news-box {
  display: flex;
  margin: 0 auto 45px auto;
  width: 1200px;
}
.top-news-box h2 {
  margin-bottom: 30px;
}

.top-news {
  border-right: 1px solid #ddd;
  margin-right: 40px;
  padding-right: 40px;
  width: 760px;
}
.top-news-tab {
  display: flex;
  font-family: "Noto Sans JP", sans-serif;
}
.top-news-tab li {
  border-top: 1px solid #a5a5a5;
  border-right: 1px solid #a5a5a5;
  flex: 1;
}
.top-news-tab li:first-child {
  border-left: 1px solid #a5a5a5;
}
.top-news-tab a {
  background-color: #bebebe;
  border-bottom: 1px solid #a5a5a5;
  color: #666;
  display: block;
  padding: 8px 0;
  text-decoration: none;
}
.top-news-tab a.selected {
  background-color: #fff;
  color: #000;
}
.top-news .panel {
  padding: 15px 0 25px 0;
}
.top-news .news-list {
  margin: 0 auto;
}

.news-list-link {
  text-align: right;
  font-family: "Noto Sans JP", sans-serif;
}
.news-list-link li {
  display: inline-block;
  margin-left: 10px;
}
.news-list-link li:first-child {
  margin: 0;
}
.news-list-link a {
  color: #000;
}
.news-list-link a:hover {
  color: #45b7ea;
  text-decoration: none;
}
.news-list-link a .fa {
  color: #8b8b8b;
}

.top-event {
  width: 400px;
}
.top-event ul {
  border-top: 1px dotted #ccc;
  line-height: 1.5;
  margin-bottom: 15px;
  text-align: left;
}
.top-event ul li {
  align-items: center;
  border-bottom: 1px dotted #ccc;
  padding: 10px 0;
  display: flex;
}
.top-event ul li em {
  color: #d00;
  margin-left: 5px;
}
.top-event ul .dates {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1.2;
  white-space: nowrap;
}
.top-event ul .dates span {
  background: #666;
  color: #fff;
  display: inline-block;
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 20px;
  text-align: center;
  width: 30px;
  vertical-align: middle;
}
.top-event ul .dates span.sat {
  background: #4378a2;
}
.top-event ul .dates span.sun {
  background: #9d4c63;
}
.top-event ul a {
  margin-left: 20px;
}

.top-faculty {
  margin: 0 auto 45px auto;
  width: 1200px;
}
.top-faculty h2 {
  margin-bottom: 30px;
}
.top-faculty ul {
  display: flex;
  flex-wrap: wrap;
}
.top-faculty ul li {
  font-family: "Noto Sans JP", sans-serif;
  margin-left: 2%;
  margin-top: 20px;
  width: 32%;
}
.top-faculty ul li:nth-child(-n+3) {
  margin-top: 0;
}
.top-faculty ul li:nth-of-type(3n+1) {
  margin-left: 0;
}
.top-faculty ul a {
  background: #fff;
  border: 1px solid #a5a5a5;
  color: #000;
  display: flex;
  height: 100%;
  position: relative;
  text-decoration: none;
  text-align: center;
}
.top-faculty ul a:hover {
  color: #45b7ea;
}
.top-faculty ul a:after {
  content: "";
  background: url(img/arrow_right.svg) no-repeat center center;
  background-size: cover;
  display: block;
  position: absolute;
  width: 20px;
  height: 20px;
  bottom: 13px;
  right: 10px;
}
.top-faculty ul a .photo {
  flex: 1;
}
.top-faculty ul a .photo img {
  width: 100%;
  height: auto;
}
.top-faculty ul a .name {
  flex: 2;
  align-self: center;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  text-align: center;
}

.top-graduate {
  margin: 0 auto 45px auto;
  width: 1200px;
}
.top-graduate h2 {
  margin-bottom: 30px;
}
.top-graduate ul {
  display: flex;
  flex-wrap: wrap;
}
.top-graduate ul li {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  margin-left: 2%;
  margin-top: 20px;
  width: 32%;
}
.top-graduate ul li:nth-child(-n+3) {
  margin-top: 0;
}
.top-graduate ul li:nth-of-type(3n+1) {
  margin-left: 0;
}
.top-graduate ul a {
  background: #fff;
  border: 1px solid #a5a5a5;
  color: #000;
  display: block;
  height: 100%;
  padding: 20px 0;
  position: relative;
  text-decoration: none;
  text-align: center;
}
.top-graduate ul a:hover {
  color: #45b7ea;
}
.top-graduate ul a:after {
  content: "";
  background: url(img/arrow_right.svg) no-repeat center center;
  background-size: cover;
  display: block;
  position: absolute;
  width: 20px;
  height: 20px;
  right: 10px;
  top: 50%;
  transform: translate(0, -50%);
}

.top-contmenu {
  background-color: #f2f2f2;
  font-family: "Noto Sans JP", sans-serif;
  padding: 40px 0;
}
.top-contmenu h2 {
  margin: 0 auto 40px auto;
}

.top-pickup {
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto 40px auto;
  width: 1200px;
}
.top-pickup a {
  background: #fff;
  color: #000;
  display: block;
  margin-left: 2%;
  margin-top: 20px;
  width: 18.4%;
  text-decoration: none;
}
.top-pickup a:nth-child(-n+5) {
  margin-top: 0;
}
.top-pickup a:nth-of-type(5n+1) {
  margin-left: 0;
}
.top-pickup a:hover {
  color: #45b7ea;
}
.top-pickup .thumb img {
  width: 100%;
  height: auto;
}
.top-pickup .cont-title {
  display: block;
  line-height: 1.5;
  padding: 15px 15px;
  text-align: center;
}

.top-bnr,
.sec-bnr {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 auto;
}
.top-bnr a img,
.sec-bnr a img {
  border: 1px solid #a5a5a5;
  display: block;
}

.top-bnr {
  width: 1200px;
}
.top-bnr li {
  margin-left: 2%;
  margin-top: 15px;
  width: 32%;
}
.top-bnr li:nth-child(-n+3) {
  margin-top: 0;
}
.top-bnr li:nth-of-type(3n+1) {
  margin-left: 0;
}
.top-bnr li img {
  width: 100%;
  height: auto;
}

.sec-bnr {
  width: 1000px;
}
.sec-bnr li {
  margin-left: 0.8%;
  margin-top: 15px;
  width: 24.4%;
}
.sec-bnr li:nth-child(-n+4) {
  margin-top: 0;
}
.sec-bnr li:nth-of-type(4n+1) {
  margin-left: 0;
}
.sec-bnr li img {
  width: 100%;
  height: auto;
}

.top-alert-red li {
  line-height: 1.6;
}
.top-alert-red li a {
  background: #b00;
  color: #fff;
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  padding: 12px 20px 12px 30px;
  position: relative;
  text-align: left;
  text-decoration: none;
  transition: ease 0.2s;
}
.top-alert-red li a:before {
  content: "";
  font-family: "FontAwesome";
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  left: 20px;
}
.top-alert-red li a:hover {
  background: #900;
}

.top-alert {
  margin: 30px 30px 0 30px;
}
.top-alert a {
  background: #fff00a;
  color: #444;
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 500;
  margin-top: 15px;
  padding: 25px 25px;
  position: relative;
  width: 100%;
}
.top-alert a .new {
  background: #d00;
  color: #fff;
  display: inline-block;
  font-family: "Helvetiva Neue", Arial;
  font-size: 14px;
  font-size: 0.875rem;
  vertical-align: middle;
  padding: 4px 10px;
  position: absolute;
  top: 0;
  right: 0;
}
.top-alert a .center {
  position: absolute;
  right: 50%;
  bottom: 50%;
  transform: translate(50%, 50%);
  width: 100%;
}
.top-alert a:hover {
  background: #faea00;
  text-decoration: none;
}
.top-alert a:first-of-type {
  margin-top: 0;
}

.student-alert {
  margin-bottom: 40px;
}
.student-alert a {
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.9;
  outline: none;
  padding: 8px 20px;
  text-decoration: none;
  background: #FFD600;
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px !important;
  font-weight: 500;
  line-height: 1.6 !important;
  position: relative;
  text-align: center;
  transition: ease 0.2s;
  width: 100%;
}
.student-alert a:hover {
  background: #ffc400;
}
.student-alert a:after {
  content: "";
  font-family: "FontAwesome";
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  right: 20px;
}
.student-alert a span {
  font-size: 16px;
  font-size: 1rem;
}

@media screen and (max-width: 73.75em) {
  .top-movie .msg {
    top: 20px;
    right: 20px;
  }
  .top-movie .bnr-movie {
    top: auto;
    right: 20px;
    bottom: 20px;
  }
  .top-movie .bnr-movie a {
    border-radius: 18px;
    padding: 8px 20px;
    font-size: 13px;
    font-size: 0.8125rem;
  }
  .top-movie .bnr-movie a:before {
    font-size: 15px;
    font-size: 0.9375rem;
    right: 10px;
  }
  .top-movie .top-movie-alert {
    display: none;
  }
  .top-movie .movie-pc {
    display: none;
  }
  .top-movie .movie-mobile {
    display: block;
  }
  .top-movie .stream {
    bottom: 15px;
    right: 15px;
  }
  .top-movie .stream img {
    width: 220px;
    height: auto;
  }

  .top-visual {
    height: auto;
  }
  .top-visual .msg h2 {
    font-size: 42px;
    font-size: 2.625rem;
    margin-bottom: 0;
  }
  .top-visual .msg p {
    font-size: 19px;
    font-size: 1.1875rem;
  }
  .top-visual .msg .tgulogo {
    margin-top: 10px;
  }
  .top-visual .msg .tgulogo img {
    width: 248px;
    height: auto;
  }
  .top-visual .weboc {
    padding: 40px 20px;
  }
  .top-visual .weboc img {
    width: 400px;
    height: auto;
  }
  .top-visual .stream {
    bottom: 15px;
    right: 15px;
  }
  .top-visual .stream img {
    width: 220px;
    height: auto;
  }
  .top-visual .top-movie-alert {
    display: none;
  }
  .top-visual .bnr-movie {
    right: 20px;
  }
  .top-visual .bnr-movie a {
    border-radius: 18px;
    padding: 8px 20px;
    font-size: 13px;
    font-size: 0.8125rem;
    margin-top: 8px;
  }
  .top-visual .bnr-movie a:before {
    font-size: 15px;
    font-size: 0.9375rem;
    right: 10px;
  }

  .top-movie-alert-mb {
    display: block;
  }
  .top-movie-alert-mb a {
    border-top: 1px dashed #ccc;
    background: #fff00a;
    color: #444;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 500;
    display: block;
    padding: 15px;
    position: relative;
  }
  .top-movie-alert-mb a:before {
    content: "";
    font-family: "FontAwesome";
    font-size: 18px;
    font-size: 1.125rem;
    position: absolute;
    bottom: 50%;
    transform: translateY(50%);
    right: 12px;
  }
  .top-movie-alert-mb a .new {
    background: #d00;
    color: #fff;
    display: inline-block;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 500;
    margin-right: 8px;
    vertical-align: middle;
    padding: 3px 5px;
  }
  .top-movie-alert-mb a br {
    display: none;
  }
  .top-movie-alert-mb a:first-of-type {
    border-top: 0;
  }
  .top-movie-alert-mb a.guide {
    background: #2ecccc;
    color: #fff;
  }
  .top-movie-alert-mb a.guide:hover {
    background: #29b7b7;
  }
  .top-movie-alert-mb a.bnr-pass {
    align-items: center;
    display: flex;
    color: #fff;
    background: #fb9c95;
    justify-content: center;
    padding: 0 0 0 30px;
    height: calc(2em + 21px);
  }
  .top-movie-alert-mb a.bnr-pass span:nth-of-type(1) {
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: 400;
    text-align: center;
    letter-spacing: 0.2em;
  }
  .top-movie-alert-mb a.bnr-pass span:nth-of-type(2) {
    align-self: flex-end;
    padding: 0 0 0 20px;
  }
  .top-movie-alert-mb a.bnr-pass img {
    width: auto;
    height: 55px;
  }

  .top-announce > div h2 {
    font-size: 68px;
    font-size: 4.25rem;
    margin-bottom: 8px;
  }
  .top-announce > div p {
    font-size: 40px;
    font-size: 2.5rem;
  }
  .top-announce > div p .month,
.top-announce > div p .date {
    font-size: 70px;
    font-size: 4.375rem;
  }
  .top-announce > div p .youbi {
    margin: 0 10px 6px 5px;
    font-size: 20px;
    font-size: 1.25rem;
    padding: 8px;
  }
  .top-announce > div p .time {
    font-size: 50px;
    font-size: 3.125rem;
  }
  .top-announce ul {
    align-items: center;
    margin: 15px 15px 0 15px;
    justify-content: space-between;
  }
  .top-announce ul li {
    font-size: 14px;
    font-size: 0.875rem;
    letter-spacing: 0;
    margin-left: 2%;
    white-space: normal;
    width: 32%;
  }
  .top-announce ul li:first-child {
    margin-left: 0;
  }

  .push-bnr-wide {
    padding: 0;
  }

  a.bnr-reihai {
    height: 75px;
  }
  a.bnr-reihai img {
    width: auto;
    height: 35px;
  }

  .push-bnr {
    padding: 15px 15px;
  }
  .push-bnr ul {
    width: auto;
  }
  .push-bnr p {
    margin-top: -5px;
  }
  .push-bnr p img {
    width: auto;
    height: 70px;
  }
  .push-bnr a.alert {
    font-size: 18px;
    font-size: 1.125rem;
    margin-bottom: 15px;
    padding: 15px 20px;
  }
  .push-bnr a.alert br {
    display: inline;
  }

  .push-bnr-4 ul li {
    margin: 2% 0 0 2%;
    width: 49%;
  }
  .push-bnr-4 ul li:nth-child(-n+2) {
    margin-top: 0;
  }
  .push-bnr-4 ul li:nth-child(odd) {
    margin-left: 0;
  }

  .top-slide {
    margin-bottom: 35px;
  }
  .top-slide h2 {
    margin: 10px 0 0 0;
  }
  .top-slide .swiper-container {
    margin-top: -5px;
  }
  .top-slide .slide-exam > div {
    padding: 0 15px;
  }
  .top-slide .slide-exam > div a img {
    width: 220px;
    height: auto;
  }
  .top-slide .slide-exam > div p {
    margin-top: 8px;
  }

  .top-topics {
    margin-bottom: 25px;
  }
  .top-topics h2 {
    margin-bottom: 25px;
  }
  .top-topics ul .topics-title {
    padding: 10px 25px 10px 15px;
  }
  .top-topics ul .topics-title:after {
    width: 13px;
    height: 13px;
  }
  .top-topics ul .thumb img {
    width: 100%;
    height: auto;
  }

  .top-news-box {
    flex-direction: column;
    margin: 0 15px 25px 15px;
    width: auto;
  }
  .top-news-box h2 {
    margin-bottom: 25px;
  }

  .top-news {
    border-right: 0;
    margin-right: 0;
    padding-right: 0;
    width: auto;
  }

  .top-event {
    width: auto;
  }

  .top-faculty {
    margin: 0 15px 35px 15px;
    width: auto;
  }
  .top-faculty h2 {
    margin-bottom: 25px;
  }
  .top-faculty ul a:after {
    width: 13px;
    height: 13px;
  }

  .top-graduate {
    margin: 0 15px 25px 15px;
    width: auto;
  }
  .top-graduate h2 {
    margin-bottom: 25px;
  }
  .top-graduate ul li {
    margin-top: 15px;
  }
  .top-graduate ul a {
    padding: 10px 0;
  }
  .top-graduate ul a:after {
    width: 13px;
    height: 13px;
  }

  .top-contmenu {
    padding: 25px 0;
  }
  .top-contmenu h2 {
    margin-bottom: 25px;
  }

  .top-pickup {
    margin: 0 15px 30px 15px;
    width: auto;
  }
  .top-pickup a {
    margin-top: 15px;
    width: 23.5%;
  }
  .top-pickup a:nth-child(-n+5) {
    margin-top: 15px;
  }
  .top-pickup a:nth-child(-n+4) {
    margin-top: 0;
  }
  .top-pickup a:nth-of-type(5n+1) {
    margin-left: 2%;
  }
  .top-pickup a:nth-of-type(4n+1) {
    margin-left: 0;
  }
  .top-pickup .cont-title {
    padding: 10px 10px;
  }

  .top-bnr,
.sec-bnr {
    margin: 0 15px;
    width: auto;
  }
  .top-bnr li,
.sec-bnr li {
    margin-top: 8px;
  }

  .top-alert-red li a {
    padding: 12px 20px 12px 25px;
  }
  .top-alert-red li a:before {
    left: 15px;
  }

  .top-alert {
    margin: 20px 15px 0 15px;
  }
  .top-alert a {
    font-size: 18px;
    font-size: 1.125rem;
    display: block;
    margin-top: 10px;
    padding: 15px;
  }
  .top-alert a:first-of-type {
    margin-top: 0;
  }

  .student-alert a:after {
    right: 15px;
  }
}
@media screen and (max-width: 50.75em) {
  .top-announce ul li .narrow {
    display: inline-block;
    transform: scale(0.8, 1);
    transform-origin: top left;
    width: 125%;
  }
}
@media screen and (max-width: 37.4375em) {
  .top-movie .msg {
    padding: 5px 0 10px 0;
    width: 90px;
    top: 10px;
    right: 10px;
  }
  .top-movie .msg h2 {
    font-size: 12px;
    font-size: 0.75rem;
    margin-bottom: 0px;
  }
  .top-movie .msg p {
    font-size: 10px;
    font-size: 0.625rem;
  }
  .top-movie .msg p span {
    display: inline-block;
    transform: scale(0.55);
    white-space: nowrap;
    margin-left: -20px;
  }
  .top-movie .msg .tgulogo {
    transform: none;
    margin-top: 5px;
  }
  .top-movie .msg .tgulogo img {
    width: 70px;
    height: auto;
  }
  .top-movie .bnr-movie {
    top: 12px;
    right: 10px;
  }
  .top-movie .bnr-movie a {
    border-radius: 14px;
    padding: 2px 10px;
    font-size: 10px;
    font-size: 0.625rem;
  }
  .top-movie .bnr-movie a:before {
    font-size: 11px;
    font-size: 0.6875rem;
    right: 4px;
  }
  .top-movie .stream {
    position: static;
    bottom: auto;
    right: auto;
    overflow: visible;
    margin: 15px;
    z-index: 200;
  }
  .top-movie .stream a {
    display: block;
    border: 0;
  }
  .top-movie .stream img {
    width: 100%;
    height: auto;
  }

  .top-visual {
    height: auto;
  }
  .top-visual .base {
    overflow: hidden;
  }
  .top-visual .base img {
    width: 100%;
    height: auto;
  }
  .top-visual .msg {
    height: 150px;
  }
  .top-visual .msg h2 {
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: 400;
    margin-bottom: 0;
  }
  .top-visual .msg p {
    font-size: 14px;
    font-size: 0.875rem;
  }
  .top-visual .msg .tgulogo {
    margin-top: 10px;
  }
  .top-visual .msg .tgulogo img {
    width: 120px;
    height: auto;
  }
  .top-visual .weboc {
    padding: 30px 20px 70px 20px;
  }
  .top-visual .weboc img {
    width: 90%;
    max-width: 400px;
    height: auto;
  }
  .top-visual .stream {
    background: #f1f1f1;
    position: static;
    bottom: auto;
    left: auto;
    overflow: visible;
    padding: 15px;
    z-index: 200;
  }
  .top-visual .stream a {
    display: block;
    border: 0;
  }
  .top-visual .stream img {
    width: 100%;
    height: auto;
  }
  .top-visual .bnr-movie {
    position: static;
    width: 100%;
  }
  .top-visual .bnr-movie a {
    background: #009ce5;
    border-radius: 0;
    border: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.8);
    font-size: 18px;
    font-size: 1.125rem;
    margin: 0;
    padding: 18px 25px 18px 15px;
  }
  .top-visual .bnr-movie a:before {
    font-size: 16px;
    font-size: 1rem;
    right: 13px;
  }
  .top-visual .bnr-movie a:first-of-type {
    border: 0;
  }

  .top-movie-alert-mb a {
    font-size: 18px;
    font-size: 1.125rem;
    padding: 15px 25px 15px 15px;
    text-align: center;
  }
  .top-movie-alert-mb a br {
    display: inline;
  }
  .top-movie-alert-mb a:before {
    font-size: 16px;
    font-size: 1rem;
  }
  .top-movie-alert-mb a .new {
    font-size: 12px;
    font-size: 0.75rem;
    line-height: 1.2;
  }
  .top-movie-alert-mb a.bnr-pass {
    height: calc(2.8em + 10px);
  }

  .top-announce > div h2 {
    font-size: 30px;
    font-size: 1.875rem;
    margin-bottom: 8px;
  }
  .top-announce > div p {
    font-size: 20px;
    font-size: 1.25rem;
  }
  .top-announce > div p .month,
.top-announce > div p .date {
    font-size: 30px;
    font-size: 1.875rem;
  }
  .top-announce > div p .youbi {
    margin: 0 5px 3px 5px;
    font-size: 12px;
    font-size: 0.75rem;
    padding: 4px;
  }
  .top-announce > div p .time {
    font-size: 24px;
    font-size: 1.5rem;
  }
  .top-announce ul {
    margin: 10px 10px 0 10px;
  }
  .top-announce ul li {
    font-size: 10px;
    font-size: 0.625rem;
    padding: 3px 0;
  }
  .top-announce ul li br {
    display: inline;
  }

  .top-alert-red li {
    line-height: 1.3;
  }
  .top-alert-red li a {
    padding: 13px 15px 13px 25px;
  }

  .top-alert {
    flex-direction: column;
    margin: 15px 15px 0 15px;
  }
  .top-alert a {
    margin-top: 10px;
    font-size: 16px;
    font-size: 1rem;
    padding: 10px 15px;
    width: 100%;
  }
  .top-alert a:first-of-type {
    margin-top: 0;
  }
  .top-alert a .new {
    font-size: 10px;
    font-size: 0.625rem;
  }

  a.bnr-reihai {
    height: 80px;
  }
  a.bnr-reihai img {
    width: auto;
    height: 37px;
  }

  .push-bnr-wide {
    margin: 15px 15px 20px 15px;
  }

  .push-bnr {
    margin-bottom: 20px;
    padding: 15px 15px 15px 15px;
  }
  .push-bnr ul {
    flex-direction: column;
    width: auto;
  }
  .push-bnr ul li {
    margin: 10px 0 0 0;
    width: auto;
  }
  .push-bnr ul li:nth-child(-n+2) {
    margin-top: 10px;
  }
  .push-bnr ul li:first-child {
    margin-top: 0;
  }
  .push-bnr p {
    margin-top: 0px;
  }
  .push-bnr p img {
    width: 100%;
    height: auto;
  }
  .push-bnr a.alert {
    font-size: 17px;
    font-size: 1.0625rem;
    margin-bottom: 10px;
    padding: 10px 20px;
  }
  .push-bnr a.alert::after {
    right: 10px;
  }

  .top-slide {
    margin-bottom: 25px;
  }
  .top-slide h2 {
    line-height: 1;
  }
  .top-slide h2 img {
    width: auto;
    height: 12px;
  }
  .top-slide .swiper-container {
    margin-top: -10px;
  }
  .top-slide .slide-exam > div {
    padding: 0 20px;
  }
  .top-slide .slide-exam > div a img {
    width: 210px;
    height: auto;
  }
  .top-slide .slide-exam > div p {
    margin-top: 5px;
  }

  .top-topics {
    margin: 20px 15px;
  }
  .top-topics ul {
    flex-wrap: wrap;
  }
  .top-topics ul li {
    flex: none;
    width: 50%;
  }
  .top-topics ul li:first-child {
    border-left: 1px solid #a5a5a5;
  }
  .top-topics ul li:nth-of-type(even) {
    border-right: 1px solid #a5a5a5;
  }
  .top-topics ul li:nth-of-type(n+3) {
    border-top: 0;
  }
  .top-topics ul .topics-title {
    font-size: 13px;
    font-size: 0.8125rem;
    padding: 10px 25px 10px 10px;
  }
  .top-topics ul .topics-title:after {
    top: 13px;
    right: 8px;
  }

  .top-news-box {
    margin: 0 15px 35px 15px;
  }
  .top-news-box h2 {
    line-height: 1;
    margin-bottom: 20px;
  }
  .top-news-box h2 img {
    width: auto;
    height: 12px;
  }

  .top-news {
    margin-bottom: 0;
  }
  .top-news-tab {
    flex-wrap: wrap;
  }
  .top-news-tab li {
    border-top: 0;
    border-right: 1px solid #a5a5a5;
    font-size: 11px;
    font-size: 0.6875rem;
    flex: none;
    width: 50%;
  }
  .top-news-tab li:first-child {
    border-top: 1px solid #a5a5a5;
    width: 100%;
  }
  .top-news-tab li:nth-of-type(even) {
    border-left: 1px solid #a5a5a5;
  }
  .top-news .panel {
    padding: 10px 0 30px 0;
  }
  .top-news .news-list dt:nth-of-type(n+4),
.top-news .news-list dd:nth-of-type(n+4) {
    display: none;
  }

  .news-list-link {
    margin-top: 10px;
    text-align: center;
  }
  .news-list-link li {
    display: inline-block;
    font-size: 13px;
    font-size: 0.8125rem;
    margin-left: 10px;
  }
  .news-list-link a {
    border: 1px solid #a5a5a5;
    display: inline-block;
    width: 8em;
  }

  .top-event ul .dates {
    font-size: 18px;
    font-size: 1.125rem;
  }
  .top-event ul li:nth-of-type(n+4) {
    display: none;
  }
  .top-event .news-list-link a {
    padding: 0 10px;
    width: auto;
  }

  .top-faculty h2 {
    line-height: 1;
    margin-bottom: 20px;
  }
  .top-faculty h2 img {
    width: auto;
    height: 12px;
  }
  .top-faculty ul li {
    margin-top: 8px;
    width: 49%;
  }
  .top-faculty ul li:nth-child(-n+3) {
    margin-top: 8px;
  }
  .top-faculty ul li:nth-of-type(3n+1) {
    margin-left: 2%;
  }
  .top-faculty ul li:nth-child(-n+2) {
    margin-top: 0;
  }
  .top-faculty ul li:nth-of-type(odd) {
    margin-left: 0;
  }
  .top-faculty ul a:after {
    bottom: 0;
    right: 8px;
    top: 40%;
    transform: translate(0 -40%);
  }
  .top-faculty ul a .name {
    font-size: 14px;
    font-size: 0.875rem;
    padding-left: 10px;
    text-align: left;
  }

  .top-graduate h2 {
    line-height: 1;
    margin-bottom: 20px;
  }
  .top-graduate h2 img {
    width: auto;
    height: 12px;
  }
  .top-graduate ul li {
    font-size: 14px;
    font-size: 0.875rem;
    margin-top: 8px;
    width: 49%;
  }
  .top-graduate ul li:nth-child(-n+3) {
    margin-top: 8px;
  }
  .top-graduate ul li:nth-of-type(3n+1) {
    margin-left: 2%;
  }
  .top-graduate ul li:nth-child(-n+2) {
    margin-top: 0;
  }
  .top-graduate ul li:nth-of-type(odd) {
    margin-left: 0;
  }
  .top-graduate ul a:after {
    right: 8px;
  }

  .top-pickup {
    margin: 0 15px 25px 15px;
    width: auto;
  }
  .top-pickup a {
    margin-top: 8px;
    width: 49%;
  }
  .top-pickup a:nth-child(-n+5) {
    margin-top: 8px;
  }
  .top-pickup a:nth-child(-n+2) {
    margin-top: 0;
  }
  .top-pickup a:nth-of-type(5n+1), .top-pickup a:nth-of-type(odd) {
    margin-left: 0;
  }
  .top-pickup a:nth-of-type(even) {
    margin-left: 2%;
  }
  .top-pickup .cont-title {
    padding: 8px 10px;
  }

  .top-bnr li,
.sec-bnr li {
    margin-left: 2%;
    margin-top: 6px;
    width: 49%;
  }
  .top-bnr li:nth-child(-n+3),
.sec-bnr li:nth-child(-n+3) {
    margin-top: 0;
  }
  .top-bnr li:nth-of-type(3n+1),
.sec-bnr li:nth-of-type(3n+1) {
    margin-left: 2%;
  }
  .top-bnr li:nth-child(-n+4),
.sec-bnr li:nth-child(-n+4) {
    margin-top: 6px;
  }
  .top-bnr li:nth-child(-n+2),
.sec-bnr li:nth-child(-n+2) {
    margin-top: 0;
  }
  .top-bnr li:nth-of-type(4n+1),
.sec-bnr li:nth-of-type(4n+1) {
    margin-left: 2%;
  }
  .top-bnr li:nth-of-type(2n+1),
.sec-bnr li:nth-of-type(2n+1) {
    margin-left: 0;
  }
  .top-bnr li img,
.sec-bnr li img {
    width: 100%;
    height: auto;
  }
  .top-bnr a,
.sec-bnr a {
    display: inline-block;
  }
}
.news-title {
  align-content: center;
  border-bottom: 2px solid #ddd;
  display: flex;
  font-family: "Noto Sans JP", sans-serif;
  margin-bottom: 10px;
  padding-bottom: 2px;
}
.news-title h2 {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  margin-right: auto;
}
.news-title a {
  color: #000;
  font-size: 13px;
  font-size: 0.8125rem;
}
.news-title a:hover {
  color: #45b7ea;
  text-decoration: none;
}
.news-title a:before {
  color: #8b8b8b;
  content: "";
  font-family: "FontAwesome";
  margin-right: 4px;
}

.news-list,
.blog-list {
  clear: both;
  overflow: hidden;
  line-height: 1.5;
  text-align: left;
}
.news-list dt,
.blog-list dt {
  clear: left;
  float: left;
  padding: 6px 0;
  position: relative;
  width: 16.5em;
  white-space: nowrap;
}
.news-list dt:after,
.blog-list dt:after {
  color: #fff;
  display: inline-block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-size: 0.75rem;
  position: absolute;
  text-align: center;
  width: 11.5em;
  white-space: nowrap;
  top: 8px;
  right: 0;
}
.news-list dd,
.blog-list dd {
  padding: 6px 0 6px 18em;
}
.news-list dd em,
.blog-list dd em {
  color: #d00;
  margin-left: 5px;
}
.news-list a,
.blog-list a {
  text-decoration: none;
}
.news-list a:hover,
.blog-list a:hover {
  text-decoration: underline;
}

.blog-list dt {
  width: 7em;
}
.blog-list dd {
  padding: 6px 0 6px 8em;
}

.icon01:after {
  background-color: #009ce5;
  content: "お知らせ";
}

.icon02:after {
  background-color: #ffa726;
  content: "イベント";
}

.icon03:after {
  background-color: #88b04b;
  content: "入試";
}

.icon04:after {
  background-color: #bf8bad;
  content: "教育・研究";
}

.icon05:after {
  background-color: #f7786b;
  content: "プレス・メディア";
}

.icon06:after {
  background-color: #fabe00;
  content: "英文学科";
}

.icon07:after {
  background-color: #fabe00;
  content: "総合人文学科";
}

.icon08:after {
  background-color: #fabe00;
  content: "歴史学科";
}

.icon09:after {
  background-color: #22ac38;
  content: "経済学科";
}

.icon10:after {
  background-color: #22ac38;
  content: "共生社会経済学科";
}

.icon11:after {
  background-color: #ee7800;
  content: "経営学科";
}

.icon12:after {
  background-color: #850f74;
  content: "法律学科";
}

.icon13:after {
  background-color: #009fb0;
  content: "機械知能工学科";
}

.icon14:after {
  background-color: #009fb0;
  content: "電気情報工学科";
}

.icon15:after {
  background-color: #009fb0;
  content: "電子工学科";
}

.icon16:after {
  background-color: #009fb0;
  content: "環境建設工学科";
}

.icon17:after {
  background-color: #00479d;
  content: "人間科学科";
}

.icon18:after {
  background-color: #00479d;
  content: "言語文化学科";
}

.icon19:after {
  background-color: #00479d;
  content: "情報科学科";
}

.icon20:after {
  background-color: #00479d;
  content: "地域構想学科";
}

.icon21:after {
  background-color: #6d3e60;
  content: "文学研究科";
}

.icon22:after {
  background-color: #6d3e60;
  content: "経済学研究科";
}

.icon23:after {
  background-color: #6d3e60;
  content: "経営学研究科";
}

.icon24:after {
  background-color: #6d3e60;
  content: "法学研究科";
}

.icon25:after {
  background-color: #6d3e60;
  content: "工学研究科";
}

.icon26:after {
  background-color: #6d3e60;
  content: "人間情報学研究科";
}

.icon27:after {
  background-color: #fabe00;
  content: "文学部";
}

.icon28:after {
  background-color: #22ac38;
  content: "経済学部";
}

.icon29:after {
  background-color: #ee7800;
  content: "経営学部";
}

.icon30:after {
  background-color: #850f74;
  content: "法学部";
}

.icon31:after {
  background-color: #009fb0;
  content: "工学部";
}

.icon32:after {
  background-color: #00479d;
  content: "教養学部";
}

.icon33:after {
  background-color: #009fb0;
  content: "情報基盤工学科";
}

.icon34:after {
  background-color: #009fb0;
  content: "電気電子工学科";
}

.icon35:after {
  background-color: #a877b0;
  content: "神学";
}

.icon36:after {
  background-color: #426972;
  content: "人文学";
}

.icon37:after {
  background-color: #a6594c;
  content: "地域研究";
}

.icon38:after {
  background-color: #f7786b;
  content: "ステンドグラス調査・修復報告";
}

.icon39:after {
  background-color: #00acc1;
  content: "水曜礼拝（公開大学礼拝）";
}

.icon40:after {
  background-color: #fabe00;
  content: "教育学科";
}

.icon41:after {
  background-color: #00733e;
  content: "地域総合学部";
}

.icon42:after {
  background-color: #083284;
  content: "情報学部";
}

.icon43:after {
  background-color: #de0047;
  content: "人間科学部";
}

.icon44:after {
  background-color: #0075c0;
  content: "国際学部";
}

.icon45:after {
  background-color: #00733e;
  content: "地域コミュニティ学科";
}

.icon46:after {
  background-color: #00733e;
  content: "政策デザイン学科";
}

.icon47:after {
  background-color: #083284;
  content: "データサイエンス学科";
}

.icon48:after {
  background-color: #de0047;
  content: "心理行動科学科";
}

.icon49:after {
  background-color: #0075c0;
  content: "国際教養学科";
}

.tgsbanner {
  border: 5px solid #cddee8;
  padding: 13px;
  overflow: hidden;
}

.blogtopic {
  margin-bottom: 30px;
  padding-top: 5px;
}
.blogtopic > div a {
  display: block;
  margin: 0 10px;
}
.blogtopic > div a img {
  width: 100%;
  height: auto;
}
.blogtopic > div a p {
  margin-top: 5px;
  display: inline-block;
  margin-left: 1.2em;
  text-indent: -1.2em;
}
.blogtopic > div a p::before {
  content: "";
  display: inline-block;
  background: url(img/arrow_right.svg) no-repeat center center;
  background-size: cover;
  margin: 0 5px 1px 0;
  width: 14px;
  height: 14px;
  vertical-align: middle;
}

.paging {
  border-top: 1px solid #a5a5a5;
  margin-top: 20px;
  padding-top: 20px;
}
.paging ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.paging ul li {
  margin: 2px 2px;
  border: 1px solid #ddd;
}
.paging ul li a {
  padding: 0px 6px;
  display: block;
  color: #0071ae;
}
.paging ul li a:hover, .paging ul li a:active {
  color: #45b7ea;
  text-decoration: none;
}
.paging ul li em {
  color: #fff;
  padding: 0px 6px;
  display: block;
  font-weight: bold;
  background: #004f7c;
}

.archive-select {
  margin-top: 30px;
}
.archive-select > div {
  position: relative;
  text-align: right;
}
.archive-select > div::after {
  color: #aaa;
  content: "";
  font-family: "FontAwesome";
  font-size: 20px;
  font-size: 1.25rem;
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  right: 10px;
  z-index: 1;
}
.archive-select select {
  background: transparent;
  padding-right: 30px;
  position: relative;
  z-index: 100;
}

.infoItem {
  margin-bottom: 30px;
}
.infoItem p {
  margin-bottom: 1.8em;
}
.infoItem em {
  font-style: italic;
  font-family: Arial, Roboto, “Droid Sans”, “游ゴシック”, YuGothic, “ヒラギノ角ゴ ProN”, “Hiragino Kaku Gothic ProN”, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1.9;
}
.infoItem .pubDate {
  margin-bottom: 10px;
  text-align: right;
}
.infoItem img {
  margin-bottom: 10px;
}
.infoItem h2 {
  border-left: 4px solid #004f7c;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.3;
  padding: 0 0 0 10px;
}
.infoItem h3 {
  background-color: #d9e8ea;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.3;
  padding: 5px 8px;
}
.infoItem h4 {
  border-bottom: 1px dotted #a5a5a5;
  color: #004f7c;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: 500;
  line-height: 1.3;
  padding-bottom: 8px;
}
.infoItem .contactbox {
  margin: auto;
  width: 100%;
}
.infoItem .contactbox h3 {
  background: none;
  color: #fff;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: normal;
  padding: 0 0 0 55px;
}
.infoItem .contactbox h4 {
  border-bottom: 0;
  color: #000;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: normal;
  padding-bottom: 0;
}
.infoItem table p {
  margin-bottom: auto;
}
.infoItem a {
  word-break: break-all;
}

.info-audio {
  margin: 15px 0;
}
.info-audio .audiojs {
  max-width: 500px;
}

#eventCal {
  margin-bottom: 25px;
  padding: 15px 30px 0 30px;
  background: url(img/calendar_bg01.jpg) repeat-x 0 0;
}
#eventCal table {
  border-top: 1px solid #c2e0f7;
  border-left: 1px solid #c2e0f7;
  width: 100%;
  line-height: 18px;
  background: #fff;
  font-size: 14px;
}
#eventCal th, #eventCal td {
  padding: 10px 0px;
  border-right: 1px solid #c2e0f7;
  border-bottom: 1px solid #c2e0f7;
  text-align: center;
}
#eventCal th {
  color: #fff;
}
#eventCal .caption {
  padding: 8px 7px;
  border-top: 1px solid #c2e0f7;
  border-right: 1px solid #c2e0f7;
  border-left: 1px solid #c2e0f7;
  display: flex;
  justify-content: space-between;
  zoom: 1;
  background: #62acf2;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#30bfff", endColorstr="#0098e5");
  background: -webkit-gradient(linear, left top, left bottom, from(#30bfff), to(#0098e5));
  background: -moz-linear-gradient(top, #30bfff, #0098e5);
}
#eventCal .caption h3 {
  color: #fff;
  text-align: center;
  font-size: 18px;
  margin-right: auto;
  width: 80%;
  align-self: center;
}
#eventCal .prev {
  width: 10%;
  white-space: nowrap;
  margin-top: 10px;
}
#eventCal .next {
  width: 10%;
  white-space: nowrap;
  text-align: right;
  margin-top: 10px;
}
#eventCal .sun {
  background: #ff9265;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffab82", endColorstr="#fd7d4b");
  background: -webkit-gradient(linear, left top, left bottom, from(#ffab82), to(#fd7d4b));
  background: -moz-linear-gradient(top, #ffab82, #fd7d4b);
}
#eventCal .weekday {
  background: #9a9a9a;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#c8c8c8", endColorstr="#828282");
  background: -webkit-gradient(linear, left top, left bottom, from(#c8c8c8), to(#828282));
  background: -moz-linear-gradient(top, #c8c8c8, #828282);
}
#eventCal .sat {
  background: #00a3ed;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#30bfff", endColorstr="#0096e4");
  background: -webkit-gradient(linear, left top, left bottom, from(#30bfff), to(#0096e4));
  background: -moz-linear-gradient(top, #30bfff, #0096e4);
}
#eventCal .on {
  color: #fff;
  background: #00a3ed;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#4693e3", endColorstr="#6cbdff");
  background: -webkit-gradient(linear, left top, left bottom, from(#4693e3), to(#6cbdff));
  background: -moz-linear-gradient(top, #4693e3, #6cbdff);
}
#eventCal .out {
  color: #666;
  background: #e4f4fd;
}
#eventCal .evtBox {
  margin-top: 12px;
}
#eventCal .evtBox h4 {
  margin-bottom: 8px;
  padding: 0 0 3px 2px;
  border-bottom: 1px dotted #ccc;
  font-weight: bold;
}
#eventCal ul {
  margin: 0;
  padding: 0;
  background: none;
}
#eventCal ul li {
  margin: 0 0 0.2em 0;
  padding-left: 12px;
  line-height: 1.7;
  background: url(img/list_arrow01.gif) no-repeat 1px 0.6em;
}

.calendarlist {
  margin: auto 30px;
}
.calendarlist td {
  padding: 6px 8px;
}
.calendarlist ul > li {
  margin-top: 0.3em;
  display: inline-block;
  margin-left: 1.2em;
  text-indent: -1.2em;
}
.calendarlist ul > li:first-child {
  margin-top: 0;
}
.calendarlist ul > li:before {
  content: "";
  display: inline-block;
  background: url(img/arrow_right.svg) no-repeat center center;
  background-size: cover;
  margin: 0 5px 1px 0;
  width: 14px;
  height: 14px;
  vertical-align: middle;
}

@media screen and (max-width: 73.75em) {
  .archive-select {
    font-size: 16px;
    font-size: 1rem;
  }

  .infoItem h2 {
    font-size: 18px;
    font-size: 1.125rem;
  }
  .infoItem h3 {
    font-size: 15px;
    font-size: 0.9375rem;
    padding: 4px 8px;
  }
  .infoItem .contactbox h3 {
    padding: 0 0 0 35px;
  }
  .infoItem .contactbox h4 {
    font-weight: 500;
  }
}
@media screen and (max-width: 37.4375em) {
  .news-list dt,
.blog-list dt {
    float: none;
    padding: 0 0 3px 0;
    width: auto;
  }
  .news-list dt:after,
.blog-list dt:after {
    top: 2px;
    left: 7em;
  }
  .news-list dd,
.blog-list dd {
    padding: 0 0 10px 0;
  }

  .blogtopic {
    margin-bottom: 20px;
  }
  .blogtopic > div a {
    display: block;
    margin: 0 5px;
  }

  .infoItem table {
    width: auto !important;
    padding: 0;
  }
  .infoItem table img {
    width: 100% !important;
    height: auto;
  }
  .infoItem img {
    width: 100%;
    height: auto;
  }
  .infoItem iframe {
    width: 100%;
    height: auto;
  }
  .infoItem .contactbox h3 {
    padding: 0 0 0 25px;
    font-size: 13px;
    font-size: 0.8125rem;
  }
  .infoItem .contactbox h4 {
    font-size: 13px;
    font-size: 0.8125rem;
  }

  #eventCal {
    padding: 15px 15px 0 15px;
  }
  #eventCal .caption {
    padding: 5px 7px;
  }
  #eventCal .caption h3 {
    font-size: 16px;
    font-size: 1rem;
  }

  .calendarlist {
    margin: auto 15px;
  }
  .calendarlist td.xCenter {
    white-space: nowrap;
  }

  .contactform .tel {
    width: 150px;
  }
  .contactform ul li {
    display: block;
    font-size: 14px;
    font-size: 0.875rem;
  }
  .contactform ul li input {
    margin-bottom: 8px;
  }
}
.orgtctb th, .orgtctb td {
  vertical-align: top;
}
.orgtctb td em {
  display: block;
  margin-left: 1em;
}

.coop-region {
  display: flex;
}
.coop-region h5 {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  margin-bottom: 10px;
}
.coop-region h5:before {
  content: "＜";
}
.coop-region h5:after {
  content: "＞";
}
.coop-region > div {
  background: #d9e8ea;
  border-radius: 10px;
  padding: 15px;
  position: relative;
}
.coop-region > div:nth-of-type(1) {
  flex: 1 0 0%;
  margin-right: 50px;
}
.coop-region > div:nth-of-type(1):after {
  color: #bfd8db;
  content: "";
  font-family: "FontAwesome";
  font-size: 40px;
  font-size: 2.5rem;
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  right: -40px;
}
.coop-region > div:nth-of-type(2) {
  flex: 1 0 0%;
  margin-right: 50px;
}
.coop-region > div:nth-of-type(2):after {
  color: #bfd8db;
  content: "";
  font-family: "FontAwesome";
  font-size: 38px;
  font-size: 2.375rem;
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  right: -40px;
}
.coop-region > div:nth-of-type(3) {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.3;
  text-align: center;
  width: 50px;
}

.accordion-evaluation label {
  padding: 5px 8px;
  background-color: #d9e8ea;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.3;
  padding: 5px 8px;
  font-family: "Noto Sans JP", sans-serif;
  margin-bottom: 10px;
}
.accordion-evaluation .acd:checked + label {
  color: #444;
  font-weight: 500;
}

.accordion-factbook summary {
  background: none;
  border-bottom: 1px dotted #ccc;
  color: #222;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 400;
  margin-top: 0;
  padding: 12px 0px 12px 23px;
}
.accordion-factbook summary::after {
  color: #009ce5;
  right: auto;
  left: 2px;
}
.accordion-factbook details[open] summary {
  border-bottom: 0;
  color: #009ce5;
  font-weight: 700;
}
.accordion-factbook .openbox {
  border-bottom: 1px dotted #ccc;
  padding: 10px 0 40px 0;
}
.accordion-factbook label {
  border-bottom: 1px dotted #ccc;
  color: #222;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.3;
  padding: 12px 0;
}
.accordion-factbook label:before {
  color: #009ce5;
}
.accordion-factbook .acd:checked + label {
  border-bottom: 0;
  color: #009ce5;
  margin-bottom: 10px;
}
.accordion-factbook .acd:checked + label + .acd-contents {
  border-bottom: 1px dotted #ccc;
  padding-bottom: 40px;
}

.factbook {
  user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
}
.factbook img {
  pointer-events: none;
}

.bg-download a {
  color: #fff;
  display: block;
  text-align: center;
  text-decoration: none;
}
.bg-download a img {
  transition: ease 0.3s;
}
.bg-download a p {
  background: #009ce5;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: 500;
  line-height: 1.6;
  padding: 10px 15px;
  position: relative;
  transition: ease 0.3s;
}
.bg-download a p::before {
  content: "";
  font-family: "FontAwesome";
  margin-right: 5px;
}
.bg-download a:hover img {
  filter: brightness(0.9);
}
.bg-download a:hover p {
  background: #008bcc;
}

@media screen and (max-width: 73.75em) {
  .bg-download a p {
    font-size: 14px;
    font-size: 0.875rem;
    padding: 8px 10px;
    position: relative;
  }
}
@media screen and (max-width: 37.4375em) {
  .coop-region {
    flex-direction: column;
  }
  .coop-region > div:nth-of-type(1) {
    margin: 0 0 50px 0;
  }
  .coop-region > div:nth-of-type(1):after {
    font-size: 40px;
    font-size: 2.5rem;
    transform: translate(-50%, 0);
    top: auto;
    right: auto;
    left: 50%;
    bottom: -45px;
  }
  .coop-region > div:nth-of-type(2) {
    margin: 0 0 50px 0;
  }
  .coop-region > div:nth-of-type(2):after {
    content: "";
    font-size: 38px;
    font-size: 2.375rem;
    transform: translate(-50%, 0);
    top: auto;
    right: auto;
    left: 50%;
    bottom: -45px;
  }
  .coop-region > div:nth-of-type(3) {
    width: 100%;
  }
  .coop-region > div:nth-of-type(3) br {
    display: none;
  }

  .accordion-factbook summary {
    font-size: 18px;
    font-size: 1.125rem;
  }
  .accordion-factbook .openbox {
    border-bottom: 1px dotted #ccc;
    padding: 10px 0 30px 0;
  }
  .accordion-factbook label {
    font-size: 18px;
    font-size: 1.125rem;
  }
  .accordion-factbook .acd:checked + label + .acd-contents {
    padding-bottom: 30px;
  }
}
.sinsai-10nav {
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  display: flex;
  margin-bottom: 20px;
}
.sinsai-10nav a {
  color: #888;
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  flex: 1 0 0%;
  text-align: center;
  text-decoration: none;
  margin: 0 1px;
  padding: 15px 0;
  transition: ease 0.5s;
}
.sinsai-10nav a:hover {
  background: #eaf9fc;
  color: #444;
  transition: ease 0.5s;
}
.sinsai-10nav a.active {
  border-bottom: 4px solid #009ce5;
  color: #009ce5;
}

.sinsai-10nav-select {
  display: none;
}

.sinsai-10nav-list dt {
  width: 18em;
}
.sinsai-10nav-list dt span {
  display: inline-block;
}
.sinsai-10nav-list dt span.univ {
  background: #009ce5;
}
.sinsai-10nav-list dt span.jhs {
  background: #0061b1;
}
.sinsai-10nav-list dt span.tutuji {
  background: #00a0bc;
}
.sinsai-10nav-list dt span.houjin {
  background: #3d5522;
}
.sinsai-10nav-list dt span.houuniv {
  background: #5e918a;
}
.sinsai-10nav-list dt span.jhsuniv {
  background: #1977be;
}
.sinsai-10nav-list dt span:nth-of-type(1) {
  width: 7em;
}
.sinsai-10nav-list dt span:nth-of-type(2) {
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-size: 0.75rem;
  text-align: center;
  width: 10em;
}
.sinsai-10nav-list dd {
  padding: 6px 0 6px 18em;
}

.sinsai-msg .column-2 {
  margin-top: 40px;
}
.sinsai-msg .column-2:nth-child(-n+2) {
  margin-top: 0;
}

.sinsai-msg a {
  text-decoration: none;
  transition: ease 0.2s;
}
.sinsai-msg a .mov-desc {
  border-top: 4px solid #ccc;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 500;
  display: flex;
  line-height: 1.5;
}
.sinsai-msg a .mov-desc img {
  transition: ease 0.2s;
}
.sinsai-msg a .mov-desc > span {
  align-items: center;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 5px 15px;
  transition: ease 0.2s;
}
.sinsai-msg a .mov-desc > span span {
  font-size: 13px;
  font-size: 0.8125rem;
}
.sinsai-msg a .mov-desc > span:nth-of-type(1) {
  background: #009ce5;
  font-size: 18px;
  font-size: 1.125rem;
  width: 40%;
}
.sinsai-msg a .mov-desc > span:nth-of-type(2) {
  background: #f1f1f1;
  color: #444;
  font-size: 14px;
  font-size: 0.875rem;
  width: 60%;
}
.sinsai-msg a:hover img {
  filter: brightness(0.9);
  transition: ease 0.2s;
}
.sinsai-msg a:hover span {
  transition: ease 0.2s;
}
.sinsai-msg a:hover span:nth-of-type(1) {
  background: #008ed1;
}
.sinsai-msg a:hover span:nth-of-type(2) {
  background: #e7e7e7;
}

.sinsai10mov a {
  text-decoration: none;
}
.sinsai10mov a img {
  transition: ease 0.2s;
}
.sinsai10mov a:hover img {
  filter: brightness(0.9);
  transition: ease 0.2s;
}
.sinsai10mov a:hover .sinsai10mov-title {
  background: #008ed1;
}

.sinsai10mov-title {
  background: #009ce5;
  color: #fff;
  font-family: "Shippori Mincho B1", serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  padding: 5px 15px;
  text-align: center;
  transition: ease 0.2s;
}

@media screen and (max-width: 73.75em) {
  .sinsai-10nav {
    display: none;
  }

  .sinsai-10nav-select {
    display: block;
    font-size: 16px;
    font-size: 1rem;
    margin-bottom: 20px;
    position: relative;
    text-align: right;
  }
  .sinsai-10nav-select:after {
    color: #888;
    content: "";
    font-family: "FontAwesome";
    position: absolute;
    bottom: 50%;
    transform: translateY(50%);
    right: 13px;
    z-index: 1;
  }
  .sinsai-10nav-select select {
    background: transparent;
    padding: 8px 35px 8px 13px;
    position: relative;
    outline: none;
    z-index: 100;
  }

  .sinsai-msg a .mov-desc {
    border-top: 4px solid #ccc;
  }
  .sinsai-msg a .mov-desc > span {
    padding: 5px 5px;
  }
  .sinsai-msg a .mov-desc > span:nth-of-type(1) {
    font-size: 16px;
    font-size: 1rem;
    width: 40%;
  }
  .sinsai-msg a .mov-desc > span:nth-of-type(2) {
    font-size: 13px;
    font-size: 0.8125rem;
    width: 60%;
  }

  .sinsai10mov-title {
    font-size: 16px;
    font-size: 1rem;
    padding: 5px 10px;
  }
}
@media screen and (max-width: 37.4375em) {
  .sinsai-msg .column-2 {
    margin-top: 25px;
  }
}
.faculty-top-header {
  background: url(/faculty/img/top_bg.jpg) no-repeat center center;
  background-size: cover;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 15px;
  font-size: 0.9375rem;
  padding: 40px 60px;
}
.faculty-top-header > div {
  max-width: 1600px;
  margin: auto;
}
.faculty-top-header h2 {
  font-family: "Shippori Mincho B1", serif;
  font-size: 36px;
  font-size: 2.25rem;
  font-weight: 500;
}
.faculty-top-header h3 {
  font-family: "Shippori Mincho B1", serif;
  font-size: 46px;
  font-size: 2.875rem;
  font-weight: 500;
  margin-bottom: 20px;
}
.faculty-top-header h4 {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 500;
  text-align: center;
}
.faculty-top-header p {
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.8);
}
.faculty-top-header .tree {
  align-self: flex-end;
  width: 500px;
}
.faculty-top-header .tree img {
  width: 100%;
  height: auto;
}
.faculty-top-header .faculty-anchor {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.faculty-top-header .faculty-anchor a {
  border-radius: 50px;
  color: #fff;
  display: block;
  font-size: 15px;
  font-size: 0.9375rem;
  margin: 0.8% 0 0 0.8%;
  overflow: hidden;
  padding: 8px 0;
  position: relative;
  text-align: center;
  text-decoration: none;
  width: 16%;
}
.faculty-top-header .faculty-anchor a .ninka {
  font-size: 11px;
  font-size: 0.6875rem;
  vertical-align: top;
}
.faculty-top-header .faculty-anchor a.btn-ninka {
  padding-left: 1em;
}
.faculty-top-header .faculty-anchor a:nth-of-type(6n+1) {
  margin-left: 0;
}
.faculty-top-header .faculty-anchor .svg-inline--fa {
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  left: 15px;
}
.faculty-top-header .faculty-anchor a::before {
  content: "";
  display: none;
  font-family: "Font Awesome 5 Solid";
}
.faculty-top-header .faculty-anchor a::after {
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  content: "";
  position: absolute;
  top: 0;
  left: -75%;
  transform: skewX(-25deg);
  width: 50%;
  height: 100%;
}
.faculty-top-header .faculty-anchor a:hover::after {
  animation: shine 0.7s;
}
@keyframes shine {
  100% {
    left: 125%;
  }
}
.faculty-top-header .faculty-anchor-univ {
  margin: 30px 0 0 0;
}
.faculty-top-header .faculty-anchor-new {
  border-bottom: 1px solid rgba(255, 255, 255, 0.7);
  margin: 30px 0 30px 0;
  padding-bottom: 28px;
}
.faculty-top-header .faculty-anchor-new h4 {
  margin-bottom: 23px;
  overflow: hidden;
  text-align: center;
}
.faculty-top-header .faculty-anchor-new h4 span {
  display: inline-block;
  margin: 0 2.5em;
  font-size: 17px;
  font-size: 1.0625rem;
  letter-spacing: 0.05em;
  text-indent: -0.05em;
  padding: 0 1em;
  position: relative;
  text-align: left;
}
.faculty-top-header .faculty-anchor-new h4 span::before,
.faculty-top-header .faculty-anchor-new h4 span::after {
  background: rgba(255, 255, 255, 0.7);
  content: "";
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  width: 400%;
  height: 1px;
}
.faculty-top-header .faculty-anchor-new h4 span::before {
  right: 100%;
}
.faculty-top-header .faculty-anchor-new h4 span::after {
  left: 100%;
}
.faculty-top-header .faculty-anchor-graduate {
  margin: 0 0 25px 0;
}

.faculty-news {
  border: 0;
  background: #f1f1f1;
}
.faculty-news > div {
  display: flex;
  margin: auto;
  max-width: 1600px;
  padding: 50px 60px;
}
.faculty-news .news-title {
  align-items: center;
  border: 0;
  flex-direction: column;
  justify-content: center;
  margin: 0 30px 0 0;
  padding: 8px 0 0 0;
  width: 150px;
}
.faculty-news .news-title h2 {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 700;
  margin: 0 0 15px 0;
}
.faculty-news .news-title a {
  border: 1px solid #888;
  border-radius: 15px;
  font-size: 14px;
  font-size: 0.875rem;
  display: inline-block;
  line-height: 26px;
  padding: 0 18px 0 10px;
  position: relative;
  text-align: center;
  width: 80px;
}
.faculty-news .news-title a .svg-inline--fa {
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  right: 10px;
}
.faculty-news .news-title a:hover {
  color: #000;
}
.faculty-news .news-title a:before {
  content: "";
  display: none;
  font-family: "Font Awesome 5 Solid";
}
.faculty-news .news-list {
  flex: 1 0 0%;
}
.faculty-news .news-list dt {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
}

.faculty-top-nav {
  font-family: "Noto Sans JP", sans-serif;
  margin-top: 20px;
}
.faculty-top-nav header {
  max-height: 500px;
  position: relative;
  overflow: hidden;
}
.faculty-top-nav header > div {
  color: #fff;
  position: absolute;
  right: 50%;
  bottom: 50%;
  transform: translate(50%, 50%);
  width: 100%;
  text-align: center;
}
.faculty-top-nav header h3 {
  font-size: 60px;
  font-size: 3.75rem;
  font-weight: 300;
}
.faculty-top-nav header ul {
  display: flex;
  font-weight: 300;
  font-size: 20px;
  font-size: 1.25rem;
  justify-content: center;
  margin-top: 10px;
}
.faculty-top-nav header li {
  line-height: 1.3;
}
.faculty-top-nav header li::before {
  content: "／";
}
.faculty-top-nav header li span {
  font-size: 12px;
  font-size: 0.75rem;
  vertical-align: top;
}
.faculty-top-nav header li:first-child::before {
  content: none;
}
.faculty-top-nav header img {
  width: 100%;
  height: auto;
  filter: brightness(0.6);
}
.faculty-top-nav header .teishi {
  font-size: 13px;
  font-size: 0.8125rem;
  position: absolute;
  bottom: 20px;
  right: 60px;
}
.faculty-top-nav article > div {
  max-width: 1600px;
  margin: auto;
  font-size: 16px;
  font-size: 1rem;
  padding: 35px 60px 40px 60px;
  position: relative;
}
.faculty-top-nav article > div::before {
  border-style: solid;
  content: "";
  width: 0;
  height: 0;
  border-width: 80px 80px 0 80px;
  border-color: rgba(0, 0, 0, 0.15) transparent transparent transparent;
  position: absolute;
  top: 0;
  left: calc(50% - 80px);
}
.faculty-top-nav h4 {
  position: relative;
}
.faculty-top-nav h4.manabi {
  font-size: 30px;
  font-size: 1.875rem;
  margin-bottom: 20px;
  text-align: center;
}
.faculty-top-nav .outline {
  font-size: 15px;
  font-size: 0.9375rem;
  margin-top: 35px;
}
.faculty-top-nav .outline h4 {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 300;
  margin-bottom: 15px;
}
.faculty-top-nav .outline p {
  line-height: 2;
}
.faculty-top-nav nav {
  margin-top: 35px;
  text-align: center;
}
.faculty-top-nav nav a {
  border-radius: 100px;
  border: 2px solid #fff;
  color: #fff;
  display: inline-block;
  font-size: 17px;
  font-size: 1.0625rem;
  font-weight: 500;
  position: relative;
  padding: 8px;
  text-align: center;
  text-decoration: none;
  width: 250px;
  transition: all 0.3s ease;
  z-index: 1;
  overflow: hidden;
}
.faculty-top-nav nav a::before, .faculty-top-nav nav a::after {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}
.faculty-top-nav nav a::before {
  right: 20px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
}
.faculty-top-nav nav a::after {
  border-radius: 100px;
  position: absolute;
  content: "";
  width: 0;
  height: 100%;
  top: 0;
  right: 0;
  z-index: -1;
  background: rgba(255, 255, 255, 0.2);
  transition: all 0.3s ease;
}
.faculty-top-nav nav a:hover::after {
  left: 0;
  width: 100%;
}
.faculty-top-nav nav a:active {
  top: 2px;
}

.faculty-top-nav-ninka header {
  max-height: auto;
}
.faculty-top-nav-ninka header > div {
  position: relative;
  transform: translate(0, 0);
  top: 0;
  left: 0;
  padding: 50px 0 0 0;
}
.faculty-top-nav-ninka article > div::before {
  display: none;
  border-width: 0;
}
.faculty-top-nav-ninka h4.manabi {
  font-family: "Shippori Mincho B1", serif;
}
.faculty-top-nav-ninka .ninka {
  line-height: 1.5;
  margin: 10px 0 15px 0;
  text-align: center;
}
.faculty-top-nav-ninka .ninka span {
  border: 1px solid #fff;
  display: inline-block;
  padding: 4px 30px;
}

.faculty-top-nav.bg-letters {
  color: #000;
}
.faculty-top-nav.bg-letters nav a {
  border: 2px solid #000;
  color: #000;
}
.faculty-top-nav.bg-letters nav a::before {
  border-top: 2px solid #000;
  border-right: 2px solid #000;
}

.faculty-top-nav.bg-liberal header > div {
  padding: 50px 0 0 0;
}
.faculty-top-nav.bg-liberal header::after {
  content: none;
}
.faculty-top-nav.bg-liberal .outline {
  margin-top: 0;
}
.faculty-top-nav.bg-liberal .teishi-kakomi {
  line-height: 1.5;
  margin: 10px 0;
  text-align: center;
}
.faculty-top-nav.bg-liberal .teishi-kakomi span {
  font-size: 13px;
  font-size: 0.8125rem;
}

.faculty-top-nav.bg-graduate {
  margin-top: 40px;
}

.newfaculty {
  margin: 40px auto;
  width: 800px;
}

@media screen and (max-width: 73.75em) {
  .faculty-top-header {
    padding: 30px 20px;
  }
  .faculty-top-header > div {
    max-width: auto;
  }
  .faculty-top-header h2 {
    font-size: 28px;
    font-size: 1.75rem;
  }
  .faculty-top-header h3 {
    font-size: 38px;
    font-size: 2.375rem;
  }
  .faculty-top-header .tree {
    width: 40%;
  }

  .faculty-news > div {
    max-width: auto;
    padding: 35px 20px;
  }
  .faculty-news .news-title {
    width: 120px;
  }

  .faculty-top-nav header .teishi {
    right: 20px;
  }
  .faculty-top-nav article > div {
    max-width: auto;
    padding: 35px 20px 40px 20px;
  }

  .newfaculty {
    margin: 30px auto;
    padding: 0 20px;
    width: auto;
    max-width: 700px;
  }

  .faculty-top-nav.bg-liberal .teishi-text {
    margin: 0 20px;
    text-align: left;
  }
}
@media screen and (max-width: 51.25em) {
  .faculty-top-header {
    background: url(/faculty/img/top_bg_tb.jpg) no-repeat center right;
    background-size: cover;
  }
  .faculty-top-header h2 {
    font-size: 24px;
    font-size: 1.5rem;
  }
  .faculty-top-header h3 {
    font-size: 34px;
    font-size: 2.125rem;
    margin-bottom: 15px;
  }
  .faculty-top-header .tree {
    align-self: center;
    width: 450px;
  }
  .faculty-top-header .faculty-anchor .svg-inline--fa {
    position: absolute;
    bottom: 50%;
    transform: translateY(50%);
    left: 8px;
  }
  .faculty-top-header .faculty-anchor-new a,
.faculty-top-header .faculty-anchor-graduate a {
    width: 18.5%;
  }

  .faculty-top-nav header h3 {
    font-size: 50px;
    font-size: 3.125rem;
  }
  .faculty-top-nav header ul {
    flex-wrap: wrap;
    font-size: 17px;
    font-size: 1.0625rem;
    margin: 10px 20px 0 20px;
  }
  .faculty-top-nav article > div {
    padding: 25px 20px 30px 20px;
  }
  .faculty-top-nav article > div p {
    line-height: 1.9;
  }
  .faculty-top-nav h4.manabi {
    font-size: 26px;
    font-size: 1.625rem;
  }
  .faculty-top-nav .outline h4 {
    margin-bottom: 10px;
  }
  .faculty-top-nav nav {
    margin-top: 25px;
  }

  .newfaculty {
    margin: 25px auto;
  }
}
@media screen and (max-width: 37.4375em) {
  .faculty-top-header {
    background: url(/faculty/img/top_bg_sp.jpg) no-repeat center right;
    background-size: cover;
    padding: 20px 10px;
  }
  .faculty-top-header > div {
    font-size: 14px;
    font-size: 0.875rem;
  }
  .faculty-top-header h2 {
    font-size: 18px;
    font-size: 1.125rem;
  }
  .faculty-top-header h3 {
    font-size: 26px;
    font-size: 1.625rem;
    margin-bottom: 15px;
  }
  .faculty-top-header p {
    text-align: left;
  }
  .faculty-top-header .tree {
    width: 100%;
    max-width: 450px;
  }
  .faculty-top-header .faculty-anchor a {
    margin: 2% 0 0 2%;
    width: 49%;
  }
  .faculty-top-header .faculty-anchor a:nth-of-type(-n+2) {
    margin-top: 0;
  }
  .faculty-top-header .faculty-anchor a:nth-of-type(odd) {
    margin-left: 0;
  }
  .faculty-top-header .faculty-anchor-univ {
    margin: 20px 0 0 0;
  }
  .faculty-top-header .faculty-anchor-new {
    margin: 25px 0 20px 0;
    padding-bottom: 20px;
  }
  .faculty-top-header .faculty-anchor-new h4 {
    margin-bottom: 18px;
  }

  .faculty-news > div {
    flex-direction: column;
    padding: 30px 15px;
  }
  .faculty-news .news-title {
    flex-direction: row;
    margin: 0 0 15px 0;
    padding: 0;
    width: auto;
  }
  .faculty-news .news-title h2 {
    margin: 0 auto 0 0;
  }
  .faculty-news .news-list dd {
    border-bottom: 1px solid #ccc;
    margin-bottom: 10px;
  }
  .faculty-news .news-list dd:last-of-type {
    margin-bottom: 0;
  }

  .faculty-top-nav header {
    max-height: auto;
    position: relative;
    overflow: hidden;
  }
  .faculty-top-nav header h3 {
    font-size: 40px;
    font-size: 2.5rem;
  }
  .faculty-top-nav header ul {
    font-size: 15px;
    font-size: 0.9375rem;
    margin: 10px 10px 0 10px;
  }
  .faculty-top-nav header img {
    width: auto;
    height: 200px;
  }
  .faculty-top-nav header .teishi {
    font-size: 12px;
    font-size: 0.75rem;
    bottom: 10px;
    right: 10px;
  }
  .faculty-top-nav article > div {
    padding: 25px 10px 30px 10px;
  }
  .faculty-top-nav article > div p {
    font-size: 15px;
    font-size: 0.9375rem;
  }
  .faculty-top-nav h4.manabi {
    font-size: 22px;
    font-size: 1.375rem;
  }
  .faculty-top-nav .outline {
    margin-top: 25px;
  }
  .faculty-top-nav .outline h4 {
    font-size: 18px;
    font-size: 1.125rem;
    margin-bottom: 10px;
  }
  .faculty-top-nav .outline p {
    font-size: 14px;
    font-size: 0.875rem;
  }
  .faculty-top-nav nav {
    margin-top: 25px;
  }
  .faculty-top-nav nav a {
    font-size: 16px;
    font-size: 1rem;
  }

  .faculty-top-nav-ninka header {
    height: auto;
  }
  .faculty-top-nav-ninka header > div {
    position: relative;
    transform: translate(0, 0);
    top: 0;
    left: 0;
    padding: 30px 0 0 0;
  }
  .faculty-top-nav-ninka header::after {
    width: 120px;
  }
  .faculty-top-nav-ninka .ninka {
    margin: 10px 0 12px 0;
  }
  .faculty-top-nav-ninka .ninka span {
    font-size: 13px;
    font-size: 0.8125rem;
    padding: 3px 15px;
  }

  .newfaculty {
    margin: 20px 20px;
    padding: 0;
  }

  .faculty-top-nav.bg-liberal .teishi-kakomi {
    margin: 10px 0 12px 0;
  }
}
.faculty-renewal {
  background: #f1f1f1;
  font-family: "Noto Sans JP", sans-serif;
  padding: 15px 0;
}
.faculty-renewal > div {
  width: 1000px;
  margin: auto;
  text-align: left;
}
.faculty-renewal h3 {
  margin-bottom: 10px;
  text-align: center;
}
.faculty-renewal h3 span {
  position: relative;
  display: inline-block;
  font-size: 14px;
  font-size: 0.875rem;
  padding: 0 5px 7px 5px;
}
.faculty-renewal h3 span::after {
  background-color: #ccc;
  content: "";
  position: absolute;
  right: 50%;
  transform: translateX(50%);
  bottom: 0;
  width: 100%;
  height: 3px;
}
.faculty-renewal p {
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 300;
  line-height: 1.6;
}

.faculty-alert {
  margin-bottom: 30px;
}
.faculty-alert a {
  /*
      background: -webkit-repeating-linear-gradient(-45deg,#ff937f 0,#ff937f 10px,#ff9987 10px,#ff9987 20px);
      background: -o-repeating-linear-gradient(-45deg,#ff937f 0,#ff937f 10px,#ff9987 10px,#ff9987 20px);
      background: repeating-linear-gradient(-45deg,#ff937f 0,#ff937f 10px,#ff9987 10px,#ff9987 20px);
      border: 7px solid #ff8069;
      color: #fff;
  */
  background: #fff00a;
  color: #444;
  border: 7px solid #f0e100;
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 500;
  padding: 12px 10px;
  position: relative;
  text-align: center;
  text-decoration: none;
  /*
      span {
        display: inline-block;
        padding-left: 32px;
        position: relative;
      }
  */
  /*
      &:before {
        background: url(../img/alert.svg) no-repeat center center;
        background-size: cover;
        content: '';
        display: inline-block;
        width: 26px;
        height: 26px;
        @include center(y);
      }
  */
}
.faculty-alert a:hover {
  opacity: 0.9;
  filter: alpha(opacity=90);
}

.gakka-bnr {
  display: flex;
  flex-wrap: wrap;
}
.gakka-bnr img {
  width: 100%;
  height: auto;
}
.gakka-bnr a {
  border: 1px solid #ddd;
  display: inline-block;
}

.gakka-bnr-2 > li {
  margin: 15px 0 0 2%;
  width: 49%;
}
.gakka-bnr-2 > li:nth-of-type(odd) {
  margin-left: 0;
}
.gakka-bnr-2 > li:nth-of-type(-n+2) {
  margin-top: 0;
}

.gakka-bnr-3 > li {
  margin: 15px 0 0 2%;
  width: 32%;
}
.gakka-bnr-3 > li:nth-of-type(3n+1) {
  margin-left: 0;
}
.gakka-bnr-3 > li:nth-of-type(-n+3) {
  margin-top: 0;
}

.trait-title {
  font-family: "Noto Serif JP", serif;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.4;
}

.ct-header-title {
  position: relative;
}
.ct-header-title h4 {
  bottom: 0px;
  font-family: "Noto Serif JP", serif;
  font-size: 28px;
  font-size: 1.75rem;
  font-weight: 700;
  padding: 20px 15px;
  position: absolute;
  text-align: center;
  width: 100%;
}
.ct-header-title .bg-letters {
  background: rgba(250, 190, 0, 0.8);
}
.ct-header-title .bg-eco {
  background: rgba(34, 172, 56, 0.8);
}
.ct-header-title .bg-biz {
  background: rgba(238, 120, 0, 0.8);
}
.ct-header-title .bg-law {
  background: rgba(133, 15, 116, 0.8);
}
.ct-header-title .bg-eng {
  background: rgba(0, 159, 176, 0.8);
}
.ct-header-title .bg-liberal {
  background: rgba(0, 71, 157, 0.8);
}

.ct-header-member {
  background: #efeee8;
  display: flex;
  justify-content: center;
  padding: 20px;
}
.ct-header-member li {
  flex: 1 0 0%;
  text-align: center;
}
.ct-header-member li:nth-of-type(2) {
  position: relative;
  margin: 0 30px;
}
.ct-header-member li:nth-of-type(2):before, .ct-header-member li:nth-of-type(2):after {
  background: url(img/cross.svg);
  background-size: cover;
  content: "";
  display: block;
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  width: 30px;
  height: 30px;
}
.ct-header-member li:nth-of-type(2):before {
  left: -30px;
}
.ct-header-member li:nth-of-type(2):after {
  right: -30px;
}
.ct-header-member h5 {
  font-weight: 700;
  margin-bottom: 10px;
}
.ct-header-member p {
  line-height: 1.4;
}

.ct-header-desc {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: 700;
  margin-top: 30px;
  line-height: 1.6;
  text-align: center;
}

.ct-body {
  margin-top: 40px;
}
.ct-body:after {
  content: "";
  clear: both;
  display: block;
}
.ct-body h4 {
  font-size: 17px;
  font-size: 1.0625rem;
  font-weight: 700;
  margin-bottom: 20px;
}
.ct-body dl dt {
  float: left;
  font-weight: bold;
  margin-right: 1em;
}

.faculty-career-graph {
  text-align: center;
}
.faculty-career-graph img {
  width: 80%;
  height: auto;
}

.faculty-career-map {
  text-align: center;
}
.faculty-career-map img {
  width: 90%;
  height: auto;
}

.faculty-career-title {
  border-radius: 5px;
  border: 0;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.3;
  padding: 0 0 0 10px;
  font-weight: 700;
  padding: 7px 10px;
}

.faculty-career-ob {
  display: flex;
}
.faculty-career-ob > div:nth-of-type(1) {
  margin-right: 30px;
  text-align: center;
}
.faculty-career-ob > div:nth-of-type(1) img {
  width: 180px;
  height: 225px;
}
.faculty-career-ob > div:nth-of-type(2) {
  flex: 1 0 0%;
}
.faculty-career-ob h5 {
  background: #efeee8;
  border-radius: 10px;
  font-size: 16px;
  font-size: 1rem;
  margin-bottom: 10px;
  padding: 12px 15px;
  position: relative;
}
.faculty-career-ob h5:before {
  border-style: solid;
  border-width: 6px 15px 6px 0;
  border-color: transparent #efeee8 transparent transparent;
  content: "";
  width: 0;
  height: 0;
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  left: -15px;
}

.faculty-name {
  position: relative;
}
.faculty-name img {
  width: 100%;
  height: auto;
}
.faculty-name h3 {
  background: rgba(255, 255, 255, 0.95);
  font-size: 30px;
  font-size: 1.875rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  letter-spacing: 0.3em;
  text-indent: 0.3em;
  line-height: 1;
  padding: 13px 15px;
  position: absolute;
  text-align: center;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  min-width: 40%;
  white-space: nowrap;
  z-index: 100;
}
.faculty-name h3 span {
  display: inline-block;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1;
  letter-spacing: 0;
  margin: 5px 0 0 -0.3em;
  vertical-align: top;
}

.faculty-name-new {
  align-items: center;
  color: #fff;
  display: flex;
  justify-content: center;
  font-family: "Noto Sans JP", sans-serif;
  margin-bottom: 30px;
  min-height: 200px;
  padding: 40px;
}
.faculty-name-new .gakubu h3 {
  font-size: 50px;
  font-size: 3.125rem;
  font-weight: 300;
}
.faculty-name-new .gakubu ul {
  display: flex;
  font-weight: 300;
  font-size: 18px;
  font-size: 1.125rem;
  justify-content: center;
  margin: 10px 0 15px 0;
}
.faculty-name-new .gakubu li {
  line-height: 1.3;
}
.faculty-name-new .gakubu li::before {
  content: "／";
}
.faculty-name-new .gakubu li:first-child::before {
  content: none;
}
.faculty-name-new .gakubu .manabi {
  font-family: "Shippori Mincho B1", serif;
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1.6;
}
.faculty-name-new .gakka h3 {
  display: flex;
  flex-direction: column;
  font-size: 45px;
  font-size: 2.8125rem;
  font-weight: 300;
}
.faculty-name-new .gakka h3 > span {
  font-size: 24px;
  font-size: 1.5rem;
}
.faculty-name-new .gakka h4 {
  font-family: "BIZ UDPMincho", serif;
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1.6;
  margin: 15px 0;
}
.faculty-name-new .gakka p {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 300;
  line-height: 1.5;
}
.faculty-name-new .ninka {
  line-height: 1.5;
  margin-bottom: 15px;
  text-align: center;
}
.faculty-name-new .ninka span {
  border: 1px solid #fff;
  display: inline-block;
  padding: 4px 25px;
}

.faculty-name-regional {
  background: linear-gradient(-45deg, #0a3616 0%, #0a3616 20%, #00733e 20%, #00733e 80%, #1e844c 80%, #1e844c 100%);
}

.faculty-name-informatics {
  background: linear-gradient(-45deg, #18217a 0%, #18217a 20%, #083284 20%, #083284 80%, #133d90 80%, #133d90 100%);
}

.faculty-name-human {
  background: linear-gradient(-45deg, #b60b1c 0%, #b60b1c 20%, #de0047 20%, #de0047 80%, #e73062 80%, #e73062 100%);
}

.faculty-name-international {
  background: linear-gradient(-45deg, #15429e 0%, #15429e 20%, #0075c0 20%, #0075c0 80%, #418bd2 80%, #418bd2 100%);
}

.faculty-desc {
  margin-bottom: 30px;
  padding: 15px;
}
.faculty-desc h4 {
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  font-size: 22px;
  font-size: 1.375rem;
  letter-spacing: 0.2em;
  margin-bottom: 10px;
  text-indent: -0.2em;
  text-align: center;
}
.faculty-desc p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.6;
  text-align: center;
}

.faculty-movie {
  margin-bottom: 40px;
  text-align: center;
}
.faculty-movie a {
  display: inline-block;
}
.faculty-movie img {
  width: 600px;
  height: auto;
}

.faculty-research {
  align-items: flex-start;
  margin-top: 30px;
  display: flex;
}
.faculty-research:nth-of-type(odd) .photo {
  margin-right: 25px;
}
.faculty-research:nth-of-type(odd) .photo h5 {
  left: 0;
}
.faculty-research:nth-of-type(odd) .comment:before {
  border-width: 12.5px 20px 12.5px 0;
  border-color: transparent #efeee8 transparent transparent;
  left: -20px;
}
.faculty-research:nth-of-type(even) {
  flex-direction: row-reverse;
}
.faculty-research:nth-of-type(even) .photo {
  margin-left: 25px;
}
.faculty-research:nth-of-type(even) .photo h5 {
  right: 0;
}
.faculty-research:nth-of-type(even) .comment:before {
  border-width: 12.5px 0 12.5px 20px;
  border-color: transparent transparent transparent #efeee8;
  right: -20px;
}
.faculty-research .photo {
  position: relative;
  width: 160px;
}
.faculty-research .photo img {
  width: 100%;
  height: auto;
}
.faculty-research .photo h5 {
  background: rgba(255, 255, 255, 0.9);
  font-weight: 500;
  position: absolute;
  padding: 7px 12px;
  bottom: 30px;
  z-index: 100;
}
.faculty-research .photo h5 span {
  font-size: 12px;
  font-size: 0.75rem;
}
.faculty-research .comment {
  background: #efeee8;
  border-radius: 10px;
  padding: 20px;
  flex: 1 0 0%;
  position: relative;
}
.faculty-research .comment:before {
  border-style: solid;
  content: "";
  width: 0;
  height: 0;
  position: absolute;
  top: 80px;
}

.future-visual {
  display: flex;
  flex-direction: row-reverse;
  margin-bottom: 60px;
  position: relative;
}
.future-visual .title {
  align-self: flex-end;
  margin-right: 20px;
  width: 200px;
}
.future-visual h4 {
  font-family: "Noto Serif JP", serif;
  font-size: 36px;
  font-size: 2.25rem;
  font-weight: 500;
  line-height: 1.6;
  position: absolute;
  top: 25px;
  left: 0;
  text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.6), -1px 1px 1px rgba(255, 255, 255, 0.6), 1px -1px 1px rgba(255, 255, 255, 0.6), -1px -1px 1px rgba(255, 255, 255, 0.6), 1px 0px 1px rgba(255, 255, 255, 0.6), 0px 1px 1px rgba(255, 255, 255, 0.6), -1px 0px 1px rgba(255, 255, 255, 0.6), 0px -1px 1px rgba(255, 255, 255, 0.6);
}
.future-visual .studentname {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.6;
}
.future-visual .studentname strong {
  font-size: 13px;
  font-size: 0.8125rem;
}
.future-visual .studentname strong span {
  font-size: 16px;
  font-size: 1rem;
}
.future-visual .studentdata {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.4;
  margin-top: 5px;
}
.future-visual .photo {
  flex: 1 0 0%;
}
.future-visual .photo img {
  width: 100%;
  height: auto;
}

.future-body {
  margin-bottom: 40px;
}
.future-body:after {
  content: "";
  clear: both;
  display: block;
}
.future-body h4 {
  font-size: 17px;
  font-size: 1.0625rem;
  font-weight: 700;
  margin-bottom: 20px;
}

.future-process {
  display: flex;
}
.future-process li {
  margin-right: 5%;
  width: 21.25%;
}
.future-process li p {
  font-size: 13px;
  font-size: 0.8125rem;
}
.future-process li .picture {
  margin-bottom: 10px;
  text-align: center;
  position: relative;
}
.future-process li .picture:after {
  color: #666;
  content: "";
  font-family: "FontAwesome";
  font-size: 18px;
  font-size: 1.125rem;
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  right: -15%;
}
.future-process li .picture img {
  width: 100%;
  height: auto;
  max-width: 200px;
}
.future-process li:last-child {
  margin-right: 0;
}
.future-process li:last-child .picture:after {
  content: none;
}

.faculty-voice {
  display: flex;
}
.faculty-voice .photo {
  align-self: flex-end;
  margin-right: 30px;
  width: 250px;
}
.faculty-voice .photo img {
  width: 100%;
  height: auto;
}
.faculty-voice > div {
  background: #efeee8;
  border-radius: 20px;
  flex: 1 0 0%;
  padding: 20px;
  position: relative;
}
.faculty-voice > div:before {
  border-style: solid;
  border-width: 6px 15px 6px 0;
  border-color: transparent #efeee8 transparent transparent;
  content: "";
  width: 0;
  height: 0;
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  left: -15px;
}

.interview-article {
  margin-bottom: 20px;
}
.interview-article:after {
  content: "";
  clear: both;
  display: block;
}
.interview-article h4 {
  font-size: 26px;
  font-size: 1.625rem;
  font-weight: 500;
  margin-bottom: 15px;
}
.interview-article h5 {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 15px;
}
.interview-article .leadtxt {
  border-top: 3px double #ddd;
  border-bottom: 3px double #ddd;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: 500;
  line-height: 1.6;
  margin: 15px 0 15px 0;
  padding: 15px 0;
}
.interview-article .photo-r {
  margin-top: -40px;
}
.interview-article-photo {
  display: flex;
  justify-content: space-between;
  float: right;
  margin-left: 15px;
  width: 320px;
}
.interview-article-photo > div {
  width: 49%;
}
.interview-article-photo > div img {
  width: 100%;
  height: auto;
}

.ict-faq-bnr a {
  background: #287dbe;
  color: #fff;
  display: block;
  font-family: "Kosugi Maru", sans-serif;
  font-size: 26px;
  font-size: 1.625rem;
  padding: 10px 10px;
  text-align: center;
  text-decoration: none;
}
.ict-faq-bnr a:hover {
  opacity: 0.9;
  filter: alpha(opacity=90);
}
.ict-faq-bnr p {
  line-height: 1.5;
}
.ict-faq-bnr p strong {
  font-size: 30px;
  font-size: 1.875rem;
}
.ict-faq-bnr .sub {
  font-size: 15px;
  font-size: 0.9375rem;
}

.ict-teacher {
  background: url(../../faculty/engineering/ict/img/education_header.png) repeat-x center center;
  font-size: 12px;
  font-size: 0.75rem;
  margin: 15px 0 10px 0;
  text-align: center;
}
.ict-teacher span {
  background: #fff;
  color: #000;
  padding: 0 0.5em;
}

.ict-student {
  margin-bottom: 15px;
  position: relative;
}
.ict-student img {
  width: 100%;
  height: auto;
}
.ict-student > div {
  background: rgba(255, 255, 255, 0.9);
  padding: 10px;
  position: absolute;
  bottom: 12px;
  left: 12px;
}
.ict-student > div h3 {
  font-size: 16px;
  font-size: 1rem;
  margin-bottom: 5px;
}
.ict-student > div p {
  font-size: 13px;
  font-size: 0.8125rem;
  line-height: 1.5;
}

.ict-teachername {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.5;
  margin: 5px 0;
  text-align: center;
}
.ict-teachername span {
  font-size: 11px;
  font-size: 0.6875rem;
}

.archive h5 {
  background-color: #d9e8ea;
  font-weight: 500;
  line-height: 1.3;
  padding: 5px 8px;
  cursor: pointer;
  font-size: 14px;
  font-size: 0.875rem;
  margin-bottom: 10px;
}
.archive h5 a {
  display: inline-block;
  margin-left: 1.2em;
  text-indent: -1.2em;
  display: block;
}
.archive h5 a::before {
  content: "";
  display: inline-block;
  background: url(img/arrow_right.svg) no-repeat center center;
  background-size: cover;
  margin: 0 5px 1px 0;
  width: 14px;
  height: 14px;
  vertical-align: middle;
}
.archive .active a:before {
  transform: rotate(90deg);
}

.degree h6 {
  margin-bottom: 10px;
}
.degree a {
  display: inline-block;
  margin-left: 1.2em;
  text-indent: -1.2em;
  display: block;
  outline: none;
}
.degree a::before {
  content: "";
  display: inline-block;
  background: url(img/arrow_right.svg) no-repeat center center;
  background-size: cover;
  margin: 0 5px 1px 0;
  width: 14px;
  height: 14px;
  vertical-align: middle;
}
.degree .active a {
  text-decoration: none;
}
.degree .active a:before {
  transform: rotate(90deg);
}

.staff-tb tr > td:first-of-type {
  white-space: nowrap;
}

@media screen and (max-width: 73.75em) {
  .faculty-renewal {
    padding: 12px 15px;
  }
  .faculty-renewal > div {
    width: auto;
    margin: auto;
    text-align: left;
  }
  .faculty-renewal h3 {
    margin-bottom: 8px;
  }

  .faculty-alert {
    margin-bottom: 25px;
  }
  .faculty-alert a {
    border: 5px solid #f0e100;
    font-size: 22px;
    font-size: 1.375rem;
  }
  .faculty-alert a span {
    padding-left: 30px;
  }
  .faculty-alert a:before {
    width: 24px;
    height: 24px;
  }

  .faculty-name h3 {
    font-size: 20px;
    font-size: 1.25rem;
  }
  .faculty-name h3 span {
    font-size: 16px;
    font-size: 1rem;
    margin: 2px 0 0 -0.3em;
  }

  .faculty-name-new {
    min-height: 200px;
    padding: 30px;
  }
  .faculty-name-new .gakubu h3 {
    font-size: 45px;
    font-size: 2.8125rem;
  }
  .faculty-name-new .gakubu ul {
    margin: 10px 0 13px 0;
  }
  .faculty-name-new .gakubu .manabi {
    font-size: 20px;
    font-size: 1.25rem;
  }
  .faculty-name-new .gakka h3 {
    font-size: 35px;
    font-size: 2.1875rem;
  }
  .faculty-name-new .gakka h3 > span {
    font-size: 22px;
    font-size: 1.375rem;
  }
  .faculty-name-new .gakka h4 {
    font-size: 22px;
    font-size: 1.375rem;
    margin: 10px 0;
  }
  .faculty-name-new .gakka p {
    font-size: 18px;
    font-size: 1.125rem;
  }

  .ict-faq-bnr a {
    font-size: 22px;
    font-size: 1.375rem;
  }
  .ict-faq-bnr p strong {
    font-size: 26px;
    font-size: 1.625rem;
  }
  .ict-faq-bnr .sub {
    font-size: 14px;
    font-size: 0.875rem;
  }

  .archive h5 {
    font-size: 15px;
    font-size: 0.9375rem;
    padding: 4px 8px;
  }
}
@media screen and (max-width: 37.4375em) {
  .faculty-renewal h3 span {
    font-size: 13px;
    font-size: 0.8125rem;
    padding: 0 2px 5px 2px;
  }

  .faculty-alert {
    margin-bottom: 25px;
  }
  .faculty-alert a {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 1.4;
    padding: 10px;
    text-align: left;
  }
  .faculty-alert a span {
    padding-left: 35px;
  }
  .faculty-alert a:before {
    width: 24px;
    height: 24px;
  }

  .gakka-bnr {
    flex-direction: column;
  }
  .gakka-bnr > li {
    margin: 10px 0 0 0;
    width: 100%;
  }
  .gakka-bnr > li:nth-of-type(-n+2), .gakka-bnr > li:nth-of-type(-n+3) {
    margin: 10px 0 0 0;
  }
  .gakka-bnr > li:first-of-type {
    margin-top: 0;
  }

  .faculty-name-new {
    min-height: auto;
    padding: 25px 15px;
  }
  .faculty-name-new .gakubu h3 {
    font-size: 35px;
    font-size: 2.1875rem;
  }
  .faculty-name-new .gakubu ul {
    font-size: 16px;
    font-size: 1rem;
    flex-wrap: wrap;
    margin: 10px 0 13px 0;
  }
  .faculty-name-new .gakubu .manabi {
    font-size: 18px;
    font-size: 1.125rem;
  }
  .faculty-name-new .gakka h3 {
    font-size: 30px;
    font-size: 1.875rem;
  }
  .faculty-name-new .gakka h4 {
    font-size: 20px;
    font-size: 1.25rem;
    margin: 10px 0;
  }
  .faculty-name-new .gakka p {
    font-size: 17px;
    font-size: 1.0625rem;
  }
  .faculty-name-new .ninka {
    font-size: 13px;
    font-size: 0.8125rem;
    margin-bottom: 10px;
  }
  .faculty-name-new .ninka span {
    padding: 2px 20px;
  }

  .trait-title {
    font-size: 20px;
    font-size: 1.25rem;
  }

  .ct-header-title {
    position: relative;
  }
  .ct-header-title h4 {
    font-size: 20px;
    font-size: 1.25rem;
    padding: 10px;
    position: static;
  }

  .ct-header-member {
    flex-direction: column;
    padding: 10px;
  }
  .ct-header-member li:nth-of-type(2) {
    margin: 25px 0;
  }
  .ct-header-member li:nth-of-type(2):before, .ct-header-member li:nth-of-type(2):after {
    background: url(img/cross.svg);
    background-size: cover;
    content: "";
    display: block;
    transform: none;
    bottom: 0;
    position: absolute;
    right: 50%;
    transform: translateX(50%);
    width: 15px;
    height: 15px;
  }
  .ct-header-member li:nth-of-type(2):before {
    left: auto;
    top: -20px;
  }
  .ct-header-member li:nth-of-type(2):after {
    right: 50%;
    bottom: -20px;
  }
  .ct-header-member h5 {
    margin-bottom: 5px;
  }
  .ct-header-member p br {
    display: none;
  }

  .ct-header-desc {
    font-size: 15px;
    font-size: 0.9375rem;
    margin-top: 25px;
    text-align: left;
  }
  .ct-header-desc br {
    display: none;
  }

  .ct-body {
    margin-top: 30px;
  }
  .ct-body h4 {
    font-size: 16px;
    font-size: 1rem;
    margin-bottom: 15px;
  }

  .faculty-career-ob {
    flex-direction: column;
  }
  .faculty-career-ob > div:nth-of-type(1) {
    margin: 0 0 23px 0;
  }
  .faculty-career-ob > div:nth-of-type(2) {
    flex: none;
  }
  .faculty-career-ob h5 {
    padding: 12px 10px;
    text-align: center;
  }
  .faculty-career-ob h5:before {
    border-width: 0 6px 15px 6px;
    border-color: transparent transparent #eee transparent;
    left: auto;
    position: absolute;
    right: 50%;
    transform: translateX(50%);
    top: -15px;
  }

  .faculty-name h3 {
    font-size: 20px;
    font-size: 1.25rem;
    padding: 8px 10px;
  }
  .faculty-name h3 span {
    font-size: 14px;
    font-size: 0.875rem;
    margin: 4px 0 0 0em;
  }

  .faculty-desc {
    margin-bottom: 30px;
    padding: 12px;
  }
  .faculty-desc h4 {
    font-size: 18px;
    font-size: 1.125rem;
    letter-spacing: 0;
    margin-bottom: 10px;
    text-indent: 0;
  }
  .faculty-desc p {
    font-size: 14px;
    font-size: 0.875rem;
    text-align: left;
  }
  .faculty-desc p br {
    display: none;
  }

  .faculty-movie {
    margin-bottom: 30px;
  }
  .faculty-movie img {
    width: 100%;
    height: auto;
  }

  .faculty-research {
    align-items: center;
  }
  .faculty-research:nth-of-type(odd), .faculty-research:nth-of-type(even) {
    flex-direction: column;
  }
  .faculty-research:nth-of-type(odd) .photo, .faculty-research:nth-of-type(even) .photo {
    margin: 0 0 23px 0;
  }
  .faculty-research:nth-of-type(odd) .photo h5, .faculty-research:nth-of-type(even) .photo h5 {
    left: 0;
  }
  .faculty-research:nth-of-type(odd) .comment:before, .faculty-research:nth-of-type(even) .comment:before {
    border-width: 0 12.5px 20px 12.5px;
    border-color: transparent transparent #f1f1f1 transparent;
    left: auto;
    right: calc(50% - 12.5px);
  }
  .faculty-research:nth-of-type(even) .photo h5 {
    left: auto;
    right: 0;
  }
  .faculty-research .comment {
    padding: 15px;
  }
  .faculty-research .comment:before {
    top: -20px;
    transform: translate(calc(50% - 12.5px) 0);
  }

  .future-visual {
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
  }
  .future-visual .title {
    background: #efeee8;
    padding: 0 15px 15px 15px;
    align-self: flex-start;
    margin-right: 0;
    text-align: center;
    width: 100%;
  }
  .future-visual h4 {
    background: #efeee8;
    font-size: 22px;
    font-size: 1.375rem;
    padding: 15px;
    position: static;
  }
  .future-visual h4 br {
    display: none;
  }
  .future-visual .studentname {
    border-top: 1px solid #ccc;
    padding-top: 15px;
  }
  .future-visual .studentdata {
    margin-top: 3px;
  }
  .future-visual .studentdata br {
    display: none;
  }
  .future-visual .photo {
    flex: none;
  }

  .future-process {
    flex-direction: column;
  }
  .future-process li {
    margin: 0 0 30px 0;
    width: 100%;
    position: relative;
  }
  .future-process li .picture {
    margin-bottom: 15px;
  }
  .future-process li .picture:before {
    content: none;
  }
  .future-process li:after {
    color: #666;
    content: "";
    font-family: "FontAwesome";
    font-size: 18px;
    font-size: 1.125rem;
    position: absolute;
    right: 50%;
    transform: translateX(50%);
    bottom: -33px;
  }
  .future-process li:last-child {
    margin-bottom: 0;
  }
  .future-process li:last-child:after {
    content: none;
  }

  .faculty-voice {
    flex-direction: column;
  }
  .faculty-voice .photo {
    align-self: center;
    margin: 0 0 20px 0;
    width: auto;
    text-align: center;
  }
  .faculty-voice .photo img {
    width: 200px;
    height: auto;
  }
  .faculty-voice > div {
    background: #efeee8;
    border-radius: 15px;
    flex: none;
    padding: 15px;
  }
  .faculty-voice > div:before {
    border-width: 0 8px 15px 8px;
    border-color: transparent transparent #efeee8 transparent;
    position: absolute;
    right: 50%;
    transform: translateX(50%);
    left: auto;
    top: -15px;
  }

  .interview-article {
    margin-bottom: 20px;
  }
  .interview-article h2 {
    font-size: 18px;
    font-size: 1.125rem;
  }
  .interview-article .photo-r {
    margin-top: 0;
  }
  .interview-article-photo {
    float: none;
    margin: 0 0 10px 0;
    width: 100%;
  }

  .faculty-name h3 {
    font-size: 20px;
    font-size: 1.25rem;
  }
  .faculty-name h3 span {
    font-size: 16px;
    font-size: 1rem;
    margin: 2px 0 0 -0.3em;
  }

  .ict-faq-bnr a {
    font-size: 18px;
    font-size: 1.125rem;
    padding: 10px 10px;
  }
  .ict-faq-bnr p {
    line-height: 1.4;
  }
  .ict-faq-bnr p strong {
    font-size: 24px;
    font-size: 1.5rem;
  }
  .ict-faq-bnr .sub {
    margin-top: 5px;
    font-size: 12px;
    font-size: 0.75rem;
  }
}
.scholar-3l-box {
  background: #fff2e3;
  border: 1px solid #ddd;
  border-radius: 5px;
  box-shadow: 1px 1px 1px 0px rgba(221, 221, 221, 0.5);
  padding: 20px;
  position: relative;
}
.scholar-3l-box-title {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: bold;
  letter-spacing: 0.2em;
  text-indent: -0.2em;
  margin-bottom: 20px;
  text-align: center;
}
.scholar-3l-box-title span {
  color: #009ce5;
  font-size: 25px;
  font-size: 1.5625rem;
}
.scholar-3l-box-title ruby {
  letter-spacing: 0.2em;
  text-indent: -0.2em;
}
.scholar-3l-box .kyufu {
  background: #fff;
  border: 2px solid #948a54;
  border-radius: 8px;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: normal;
  padding: 4px 6px;
  position: absolute;
  text-align: center;
  top: -20px;
  right: -10px;
}
.scholar-3l-box .kyufu p {
  line-height: 1.4;
}
.scholar-3l-box .kyufu .price1 {
  font-size: 16px;
  font-size: 1rem;
  font-weight: bold;
  padding: 0 0.1em;
}
.scholar-3l-box .kyufu .price2 {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  padding: 0 0.1em;
}
.scholar-3l-box .kyufu .yTop {
  font-size: 10px;
  font-size: 0.625rem;
}
.scholar-3l-box dl dt {
  font-size: 16px;
  font-size: 1rem;
  font-weight: bold;
  line-height: 1.2;
}
.scholar-3l-box dl dt em {
  color: #009ce5;
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: bold;
  padding: 0 0.1em;
}
.scholar-3l-box .furthermore {
  border: 1px solid #ccc;
  background: #fff;
  margin-top: 20px;
  padding: 10px;
}

.scholar-3l-schedule {
  display: flex;
  flex-wrap: wrap;
}
.scholar-3l-schedule > div:nth-of-type(odd) {
  background: url(../../campuslife/scholarship/img/3l_arrow01.png) repeat-y center center;
  margin-right: 5%;
  width: 20%;
}
.scholar-3l-schedule > div:nth-of-type(odd).scholar-3l-schedule-arrow {
  background: url(../../campuslife/scholarship/img/3l_arrow02.png) no-repeat center bottom;
}
.scholar-3l-schedule > div:nth-of-type(odd) h4 {
  background: #fff2e3;
  border: 2px solid #ddd;
  color: #009ce5;
  font-size: 16px;
  font-size: 1rem;
  font-weight: bold;
  padding: 10px;
  text-align: center;
}
.scholar-3l-schedule > div:nth-of-type(even) {
  width: 75%;
}
.scholar-3l-schedule > div:nth-of-type(7) {
  background: none;
}
.scholar-3l-schedule dl dd ul li span {
  display: inline-block;
  margin-left: 3em;
}

.faq-3l label {
  font-family: "Noto Sans JP", sans-serif;
}
.faq-3l .acd:checked + label {
  color: #444;
  font-weight: 500;
}
.faq-3l > div {
  margin-left: 20px;
}

.flow-teacher {
  display: flex;
  justify-content: center;
}
.flow-teacher p {
  line-height: 1.6;
}
.flow-teacher .step {
  padding: 10px 10px;
  border: 2px solid #ddd;
  width: 45%;
  text-align: center;
}
.flow-teacher .mark {
  align-self: center;
  font-size: 22px;
  font-size: 1.375rem;
  padding: 10px;
}

@media screen and (max-width: 37.4375em) {
  .scholar-3l-box {
    padding: 15px;
  }
  .scholar-3l-box-title {
    font-size: 18px;
    font-size: 1.125rem;
    margin-bottom: 15px;
  }
  .scholar-3l-box-title span {
    font-size: 24px;
    font-size: 1.5rem;
  }
  .scholar-3l-box .kyufu {
    margin-bottom: 15px;
    position: static;
  }
  .scholar-3l-box dl dt {
    margin-bottom: 5px;
  }
  .scholar-3l-box dl dt em {
    font-size: 20px;
    font-size: 1.25rem;
  }

  .scholar-3l-schedule {
    display: flex;
    flex-wrap: wrap;
  }
  .scholar-3l-schedule > div:nth-of-type(odd) {
    margin-right: 5%;
    width: 35%;
  }
  .scholar-3l-schedule > div:nth-of-type(odd).scholar-3l-schedule-arrow {
    background: url(../../campuslife/scholarship/img/3l_arrow02.png) no-repeat center bottom;
  }
  .scholar-3l-schedule > div:nth-of-type(odd) h4 {
    white-space: nowrap;
  }
  .scholar-3l-schedule > div:nth-of-type(even) {
    width: 60%;
  }

  .flow-teacher {
    flex-direction: column;
  }
  .flow-teacher .step {
    width: auto;
  }
  .flow-teacher .mark {
    padding: 5px;
  }
}
.healthcenter-info .news-title p {
  display: none;
}

.healthcare-cont .tb-tb01 {
  border-bottom: 1px solid #999;
  border-left: 1px solid #999;
}
.healthcare-cont .tb-tb01 th, .healthcare-cont .tb-tb01 td {
  border-right: 1px solid #999;
  border-top: 1px solid #999;
}
.healthcare-cont .tb-tb01 th.dotted-top, .healthcare-cont .tb-tb01 td.dotted-top {
  border-top: 1px dotted #999;
}
.healthcare-cont .tb-tb01 th.double-top, .healthcare-cont .tb-tb01 td.double-top {
  border-top: 3px double #999;
}

.healthcare-support-text {
  color: #009ce5;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 15px;
  text-align: center;
}
.healthcare-support-text span {
  position: relative;
}
.healthcare-support-text span:after {
  background: #fff7a5;
  content: "";
  display: block;
  position: absolute;
  right: 50%;
  transform: translateX(50%);
  bottom: -2px;
  width: 100%;
  height: 7px;
  z-index: -1;
}

.healthcare-support-flow > li {
  background: #f1f1f1;
  border-radius: 10px;
  margin-bottom: 25px;
  padding: 15px;
  position: relative;
}
.healthcare-support-flow > li:after {
  border-style: solid;
  border-width: 22px 20px 0 20px;
  border-color: #f1f1f1 transparent transparent transparent;
  content: "";
  position: absolute;
  right: 50%;
  transform: translateX(50%);
  bottom: -22px;
  width: 0;
  height: 0;
}
.healthcare-support-flow > li:last-child {
  margin-bottom: 0;
}
.healthcare-support-flow > li:last-child:after {
  content: none;
}
.healthcare-support-flow > li h4 {
  color: #009ce5 !important;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  margin-bottom: 10px;
}
.healthcare-support-flow > li p {
  color: #000 !important;
}

.healthcare-support-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 20px 100px;
}
.healthcare-support-list li {
  border-radius: 5px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  margin: 2% 0 0 2%;
  padding: 8px 8px;
  text-align: center;
  width: 32%;
  transition: ease 0.3s;
}
.healthcare-support-list li:nth-of-type(3n+1) {
  margin-left: 0;
}
.healthcare-support-list li:nth-of-type(-n+3) {
  margin-top: 0;
}
.healthcare-support-list li:hover {
  filter: brightness(0.95);
}
.healthcare-support-list a {
  color: #000;
  display: block;
  position: relative;
  text-decoration: none;
}
.healthcare-support-list a .svg-inline--fa {
  color: #999;
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  right: 5px;
}
.healthcare-support-list a::after {
  content: "";
  font-family: "Font Awesome 5 Solid";
  display: none;
}

.healthcare-support-box {
  display: flex;
  flex-wrap: wrap;
}
.healthcare-support-box .h03 {
  border-radius: 5px 5px 0 0;
  padding: 10px 8px;
  text-align: center;
}
.healthcare-support-box > div {
  background: #f8f8f8;
  border-radius: 0 0 5px 5px;
  margin: 2% 0 0 2%;
  width: 49%;
}
.healthcare-support-box > div:nth-of-type(-n+2) {
  margin-top: 0;
}
.healthcare-support-box > div:nth-of-type(odd) {
  margin-left: 0;
}
.healthcare-support-box > div > dl {
  margin: 15px;
}

.timetable {
  border-collapse: collapse;
  text-align: center;
  width: 100%;
}
.timetable th {
  border: 1px solid #aaa;
  font-size: 13px;
  font-size: 0.8125rem;
  background: #999;
  color: #FFF;
  font-weight: bold;
  text-align: center;
  padding: 3px;
}
.timetable th.sun {
  background: #FF80A6;
}
.timetable th.sat {
  background: #80B3FF;
}
.timetable td {
  width: 14.2%;
  border: 1px solid #aaa;
}
.timetable td.day {
  padding: 3px 0px;
  border-bottom: 1px dotted #aaa;
  background: #E4E4E4;
}
.timetable td.close {
  background: #E4E4E4;
}
.timetable td.time {
  padding: 8px 0px;
  border-top: none;
}
.timetable td.sun {
  background: #FFD9D9;
}
.timetable td.sat {
  background: #D9E6FF;
}

.kenshin-btn-list a.btn {
  color: #fff;
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.5;
  font-weight: 700;
  margin-top: 15px;
  padding: 15px 20px;
  text-align: center;
}
.kenshin-btn-list a.btn:first-of-type {
  margin-top: 0;
}

@media screen and (max-width: 73.75em) {
  .healthcare-support-list {
    margin: 20px 50px;
  }
}
@media screen and (max-width: 37.4375em) {
  .healthcare-support-text {
    font-size: 18px;
    font-size: 1.125rem;
  }
  .healthcare-support-text span:after {
    display: inline-block;
    height: 5px;
  }

  .healthcare-support-list {
    margin: 20px 0;
  }
  .healthcare-support-list li {
    font-size: 15px;
    font-size: 0.9375rem;
    padding: 0;
  }
  .healthcare-support-list a {
    padding: 8px 5px 15px 8px;
  }
  .healthcare-support-list a .svg-inline--fa {
    color: #999;
    position: absolute;
    right: 50%;
    transform: translateX(50%);
    bottom: 2px;
  }

  .healthcare-support-box {
    flex-direction: column;
  }
  .healthcare-support-box > div {
    margin: 15px 0 0 0;
    width: 100%;
  }
  .healthcare-support-box > div:nth-of-type(-n+2) {
    margin-top: 15px;
  }
  .healthcare-support-box > div:first-of-type {
    margin-top: 0;
  }
}
.research-info-box {
  margin-bottom: 40px;
}
.research-info-box header {
  background: #d9e8ea;
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 10px;
  padding: 10px;
}
.research-info-box header h3 {
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: 700;
  line-height: 1.3;
  margin-right: 30px;
  flex: 1;
}
.research-info-box header h3 a {
  display: inline-block;
  margin-left: 1.2em;
  text-indent: -1.2em;
}
.research-info-box header h3 a::before {
  color: #88b04b;
  content: "";
  font-family: "FontAwesome";
  margin-left: 5px;
  text-decoration: none;
  content: "";
  display: inline-block;
  background: url(img/arrow_right.svg) no-repeat center center;
  background-size: cover;
  margin: 0 5px 1px 0;
  transform: rotate(-45deg);
  width: 14px;
  height: 14px;
  vertical-align: middle;
}
.research-info-box header > div {
  display: flex;
  justify-content: flex-end;
}
.research-info-box header p {
  line-height: 1.3;
  white-space: nowrap;
}
.research-info-box dl {
  overflow: hidden;
  line-height: 1.5;
}
.research-info-box dl dt {
  clear: left;
  float: left;
  padding: 5px 0;
  width: 6em;
}
.research-info-box dl dt:before {
  color: #aaa;
  content: "";
  font-family: "FontAwesome";
  font-size: 8px;
  font-size: 0.5rem;
  margin-right: 4px;
  vertical-align: text-bottom;
}
.research-info-box dl dd {
  padding: 5px 0 5px 7em;
}
.research-info-box .research-cat {
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 500;
  margin-right: 10px;
  padding: 3px 8px;
  text-align: center;
  min-width: 8em;
}
.research-info-box .mext {
  background: #48aec2;
}
.research-info-box .gov {
  background: #dc443a;
}
.research-info-box .kakenhi {
  background: #2d6c97;
}
.research-info-box .corp {
  background: #ffa097;
}
.research-info-box .univ {
  background: #009ce5;
}

.tab-koukai .tabs-item {
  align-items: center;
  box-shadow: 1px 1px 4px rgba(204, 204, 204, 0.8);
  color: #fff;
  display: flex;
  flex: 1 0 0%;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  justify-content: center;
  margin-left: 15px;
  padding: 15px 10px;
  position: relative;
  text-align: center;
  transition: ease 0.3s;
}
.tab-koukai .tabs-item:nth-of-type(1) {
  background: #f08437;
  margin-left: 0;
}
.tab-koukai .tabs-item:nth-of-type(2) {
  background: #f8b551;
}
.tab-koukai .tabs-item:nth-of-type(3) {
  background: #f29c9f;
}
.tab-koukai .tabs-item:nth-of-type(1):hover,
.tab-koukai input:checked + .tabs-item:nth-of-type(1) {
  background: #ee731c;
}
.tab-koukai .tabs-item:nth-of-type(2):hover,
.tab-koukai input:checked + .tabs-item:nth-of-type(2) {
  background: #f7a831;
}
.tab-koukai .tabs-item:nth-of-type(3):hover,
.tab-koukai input:checked + .tabs-item:nth-of-type(3) {
  background: #f08a8e;
}
.tab-koukai input:checked + .tabs-item::after {
  border-width: 15px 10px 0 10px;
  border-style: solid;
  content: "";
  width: 0;
  height: 0;
  position: absolute;
  right: 50%;
  transform: translateX(50%);
  bottom: -15px;
}
.tab-koukai input:checked + .tabs-item:nth-of-type(1)::after {
  border-color: #ee731c transparent transparent transparent;
}
.tab-koukai input:checked + .tabs-item:nth-of-type(2)::after {
  border-color: #f7a831 transparent transparent transparent;
}
.tab-koukai input:checked + .tabs-item:nth-of-type(3)::after {
  border-color: #f08a8e transparent transparent transparent;
}
.tab-koukai .tab-panel {
  border-radius: 10px;
  margin-top: 18px;
  padding: 20px;
}
.tab-koukai .tab-panel:nth-of-type(1) {
  background: rgba(240, 132, 55, 0.1);
}
.tab-koukai .tab-panel:nth-of-type(2) {
  background: rgba(248, 181, 81, 0.1);
}
.tab-koukai .tab-panel:nth-of-type(3) {
  background: #fff0f0;
}

.koukai-bnr-box {
  border: 3px solid #99d9ea;
  padding: 15px;
}

.koukai-bnr li {
  margin-top: 10px;
}
.koukai-bnr li:first-of-type {
  margin-top: 0;
}

.koukai-title {
  border-radius: 10px 10px 0 0;
  background: #009ce5;
  color: #fff;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  padding: 13px 10px;
  text-align: center;
}

.koukai-search {
  background: #fff9c4;
  border-radius: 0 0 10px 10px;
  margin-bottom: 30px;
  padding: 22px;
}
.koukai-search > div {
  display: flex;
  justify-content: space-between;
}
.koukai-search > div > div {
  background: #fff;
  cursor: pointer;
  position: relative;
  text-align: right;
  width: 49%;
}
.koukai-search > div > div::after {
  color: #009ce5;
  content: "";
  font-family: "FontAwesome";
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  right: 10px;
  z-index: 1;
}
.koukai-search select {
  background: transparent;
  border: 2px solid #009ce5;
  border-radius: 0;
  cursor: pointer;
  font-size: 17px;
  font-size: 1.0625rem;
  padding: 10px 30px 10px 10px;
  position: relative;
  z-index: 100;
  width: 100%;
}

.content-area .koukai-search select:focus {
  border: 1px solid #009ce5 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

@media screen and (max-width: 37.4375em) {
  .research-info-box {
    margin-bottom: 20px;
  }
  .research-info-box header {
    flex-direction: column-reverse;
  }
  .research-info-box header h3 {
    font-size: 15px;
    font-size: 0.9375rem;
    margin: 10px 0 0 0;
    width: 100%;
  }
  .research-info-box header > div {
    justify-content: flex-start;
    width: 100%;
  }
  .research-info-box dl dt {
    float: none;
    font-weight: bold;
    padding: 0;
    width: auto;
  }
  .research-info-box dl dd {
    padding: 0 0 8px 12px;
  }

  .tab-koukai .tabs-item {
    font-size: 14px;
    font-size: 0.875rem;
    margin-left: 10px;
    padding: 10px 10px;
  }
  .tab-koukai .tab-panel {
    padding: 15px;
  }

  .koukai-bnr {
    display: flex;
    flex-wrap: wrap;
  }
  .koukai-bnr li {
    margin: 0 0 0 4%;
    width: 48%;
  }
  .koukai-bnr li:nth-of-type(odd) {
    margin-left: 0;
  }
  .koukai-bnr img {
    width: 100%;
    height: auto;
  }

  .koukai-title {
    font-size: 17px;
    font-size: 1.0625rem;
  }

  .koukai-search {
    padding: 15px;
  }
  .koukai-search > div {
    flex-direction: column;
  }
  .koukai-search > div > div {
    margin-top: 10px;
    width: 100%;
  }
  .koukai-search > div > div:first-of-type {
    margin-top: 0;
  }
  .koukai-search select {
    font-size: 16px;
    font-size: 1rem;
  }
}
.jobstate {
  border: solid 1px #ccc;
  margin: 5px 0 0;
  width: 100%;
  border-collapse: collapse;
}

.jobstate th,
.jobstate td {
  line-height: 1.4;
  font-size: 12px;
  font-size: 0.75rem;
  border: solid 1px #ccc;
  padding: 3px;
  vertical-align: middle;
  text-align: center;
}

.jobstate th {
  font-weight: normal;
  line-height: 1.2;
}

.pt-bun th {
  background-color: #e86e47;
  color: #FFF;
}

.pt-bun td {
  background-color: #FFEEE4;
}

.pt-zai th {
  background-color: #f3bc00;
  color: #FFF;
}

.pt-zai td {
  background-color: #FCF5E8;
}

.pt-kei th {
  background-color: #17b7b5;
  color: #FFF;
}

.pt-kei td {
  background-color: #E8F6FC;
}

.pt-hou th {
  background-color: #7773b0;
  color: #FFF;
}

.pt-hou td {
  background-color: #F8F0FF;
}

.pt-kyo th {
  background-color: #e76b8f;
  color: #FFF;
}

.pt-kyo td {
  background-color: #FFF0F9;
}

.pt-kou th {
  background-color: #99b60e;
  color: #FFF;
}

.pt-kou td {
  background-color: #EDFEF1;
}

.sum td {
  font-weight: bold;
}

.recruitment-none h3.lText {
  border-left: 4px solid #004f7c;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.3;
  padding: 0 0 0 10px;
  margin-bottom: 10px;
}

@media screen and (max-width: 73.75em) {
  .faculty-career-title {
    font-size: 18px;
    font-size: 1.125rem;
  }

  .recruitment-none h3.lText {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media screen and (max-width: 73.75em) {
  .global-short h4 {
    display: flex;
  }
  .global-short h4 span {
    margin-right: auto;
  }
  .global-short h4 em {
    color: #00f;
    font-size: 13px;
    font-size: 0.8125rem;
    margin-left: 1em;
    white-space: nowrap;
  }
  .global-short h4 em.red {
    color: #f00;
  }
}
.accessmap {
  display: inline-block;
  margin: 0 auto 30px auto;
  text-align: left;
  position: relative;
}
.accessmap .map {
  margin-bottom: 145px;
  z-index: 1;
}
.accessmap .campusbox {
  border: 2px solid #0097e1;
  position: absolute;
  width: 352px;
  z-index: 2;
  background: #fff;
}
.accessmap .campusbox h3 {
  margin-bottom: 8px;
}
.accessmap .campusbox h3 a {
  background: #009ce5;
  color: #fff;
  display: block;
  font-weight: 500;
  padding: 3px 5px 4px 5px;
}
.accessmap .campusbox h3 a:before {
  content: "";
  display: inline-block;
  background: url(img/arrow_right_white.svg) no-repeat center center;
  background-size: cover;
  margin: 0 5px 3px 0;
  width: 14px;
  height: 14px;
  vertical-align: middle;
}
.accessmap .campusbox h3 a:hover {
  background: #008bcc;
  text-decoration: none;
}
.accessmap .campusbox .address {
  color: #c60;
  line-height: 1.6;
  margin: 4px 5px 3px 5px;
  font-size: 13px;
  font-size: 0.8125rem;
}
.accessmap .campusbox ul {
  margin: 0 5px 6px 5px;
}
.accessmap .campusbox ul li {
  margin-left: 1.5em;
  list-style: disc;
  color: #a0a0a0;
  line-height: 1.6;
  font-size: 11px;
}
.accessmap .campusbox ul li span {
  color: #000;
}
.accessmap .campusbox .faculty {
  margin: 0 3px 3px 3px;
  padding: 3px 5px;
  line-height: 1.5;
  background: #ededed;
  font-size: 11px;
  font-size: 0.6875rem;
}
.accessmap .izumi {
  margin: 20px 0 0 337px;
}
.accessmap .tagajo {
  margin: 500px 0 0 337px;
}
.accessmap .tsuchitoi {
  margin: 655px 0 0 337px;
}

a.googlemap {
  padding: 2px 8px;
  border-radius: 11px;
  color: #fff;
  background: #4CAF50;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 10px;
  font-size: 0.625rem;
  line-height: 20px;
  text-decoration: none;
  white-space: nowrap;
  vertical-align: text-bottom;
}
a.googlemap:before {
  content: "";
  font-family: "FontAwesome";
  margin-right: 5px;
}

a:hover.googlemap {
  background: #259b24;
}

#tour-cel {
  display: inline-block;
  margin-bottom: 30px;
}
#tour-cel li {
  position: absolute;
  width: 33px;
  height: 32px;
  z-index: 11;
}

#tt-vis,
#iz-vis,
#tg-vis {
  position: relative;
  z-index: 10;
}

#iz01 {
  top: 145px;
  left: 108px;
}

#iz02 {
  top: 185px;
  left: 102px;
}

#tg01 {
  top: 258px;
  left: 322px;
}

#tg02 {
  top: 300px;
  left: 327px;
}

#tt01 {
  top: 215px;
  left: 465px;
}

#tt02 {
  top: 166px;
  left: 500px;
}

.campus-photo h5 {
  font-weight: 500;
  margin: 10px 0 10px 0;
}
.campus-photo h5 img {
  margin-right: 4px;
  vertical-align: top;
}
.campus-photo p {
  font-size: 12px;
  font-size: 0.75rem;
}

.campusmap-list img {
  margin-right: 4px;
  vertical-align: text-bottom;
}
.campusmap-list span {
  font-size: 12px;
  font-size: 0.75rem;
  margin-left: 1em;
}

@media screen and (max-width: 73.75em) {
  .accessmap .izumi {
    margin: 20px 15px 0 337px;
  }
  .accessmap .tagajo {
    margin: 500px 15px 0 337px;
  }
  .accessmap .tsuchitoi {
    margin: 655px 15px 0 337px;
  }

  #iz-vis ul,
#tg-vis ul,
#tt-vis ul {
    display: none;
  }
}
@media screen and (max-width: 37.4375em) {
  .accessmap {
    margin: 0 auto;
    display: block;
  }
  .accessmap .map {
    display: none;
  }
  .accessmap .campusbox {
    position: static;
    width: auto;
  }
  .accessmap .campusbox h3 a {
    padding: 5px 5px 6px 5px;
  }
  .accessmap .izumi {
    margin: 20px 0 10px 0;
  }
  .accessmap .tagajo {
    margin: 0 0 10px 0;
  }
  .accessmap .tsuchitoi {
    margin: 0 0 20px 0;
  }

  .campusmap-list span {
    display: block;
    margin: 0 0 10px 25px;
  }
}
.bnr-target-liberal {
  text-align: center;
}
.bnr-target-liberal a {
  background: #0053b7;
  color: #fff;
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.3;
  padding: 25px 50px 25px 20px;
  position: relative;
}
.bnr-target-liberal a span {
  font-size: 16px;
  font-size: 1rem;
}
.bnr-target-liberal a:hover {
  background: #00479d;
  text-decoration: none;
}
.bnr-target-liberal a:after {
  content: "";
  display: inline-block;
  background: url(img/arrow_right_white.svg) no-repeat center center;
  background-size: cover;
  width: 20px;
  height: 20px;
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  right: 20px;
}
.bnr-target-liberal a.kouninshinri {
  background: url(../../faculty/liberalarts/img/bg_kounin.jpg) no-repeat center center;
  background-size: cover;
  border: 1px solid #ddd;
  color: #009ce5;
  font-size: 26px;
  font-size: 1.625rem;
  font-weight: 700;
  padding: 25px 20px;
}
.bnr-target-liberal a.kouninshinri::after {
  display: none;
}

@media screen and (max-width: 73.75em) {
  .bnr-target-liberal {
    text-align: left;
  }
  .bnr-target-liberal a {
    font-size: 20px;
    font-size: 1.25rem;
    padding: 20px 50px 20px 20px;
  }
  .bnr-target-liberal a.kouninshinri {
    padding: 20px;
  }
}
@media screen and (max-width: 37.4375em) {
  .bnr-target-liberal a {
    font-size: 16px;
    font-size: 1rem;
    padding: 15px 40px 15px 15px;
  }
  .bnr-target-liberal a span {
    font-size: 14px;
    font-size: 0.875rem;
  }
  .bnr-target-liberal a:after {
    width: 16px;
    height: 16px;
    right: 15px;
  }
  .bnr-target-liberal a.kouninshinri {
    font-size: 22px;
    font-size: 1.375rem;
    line-height: 1.2;
    padding: 15px;
    text-align: center;
  }
  .bnr-target-liberal a.kouninshinri span {
    display: block;
    margin-top: 5px;
  }
}
.contactform {
  margin-bottom: 25px;
}
.contactform .full {
  box-sizing: border-box;
  width: 100%;
}
.contactform .tel {
  width: 150px;
}
.contactform dt {
  font-weight: bold;
  padding: 10px 0;
  width: 14em;
}
.contactform dd {
  padding: 10px 3px 10px 14em;
}
.contactform dd:after {
  content: "　";
}
.contactform textarea.full {
  width: 100%;
}
.contactform ul {
  font-size: 0;
}
.contactform ul li {
  display: inline-block;
  font-size: 13px;
  font-size: 0.8125rem;
  line-height: 1.8;
  margin-right: 1em;
}
.contactform ul li:last-child {
  margin-right: 0;
}
.contactform .required {
  background: #FF5A44;
  border-radius: 3px;
  color: #fff;
  font-size: 11px;
  font-size: 0.6875rem;
  padding: 2px 5px;
}
.contactform .optional {
  background: #888;
  border-radius: 3px;
  color: #fff;
  font-size: 11px;
  font-size: 0.6875rem;
  padding: 2px 5px;
}

.formerror {
  background: #F2DEDE;
  border-radius: 5px;
  box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.1);
  color: #C9302C;
  margin-bottom: 30px;
  padding: 10px 15px;
}

.error {
  background: #F2DEDE;
  border-radius: 5px;
  box-shadow: inset 1px 1px 2px rgba(0, 0, 0, 0.2);
  color: #C9302C;
  margin-bottom: 30px;
  padding: 10px 15px;
}

.errorth {
  color: #C9302C;
}

a.btn-request {
  background: linear-gradient(to bottom, #ffffff 0%, #f1f1f1 100%);
  border: 1px solid #D6D6D6;
  border-radius: 8px;
  color: #222;
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  padding: 1px 0;
  width: 243px;
  text-align: center;
  text-decoration: none;
}

.progress-list ol,
.progress {
  display: flex;
  justify-content: center;
  margin-bottom: 25px;
}
.progress-list ol li,
.progress li {
  background: #eee;
  border: 1px solid #a5a5a5;
  margin-left: 15px;
  padding: 5px 0;
  position: relative;
  text-align: center;
  width: 10em;
}
.progress-list ol li.active, .progress-list ol li.now,
.progress li.active,
.progress li.now {
  background: #004f7c;
  color: #fff;
}
.progress-list ol li.active:before, .progress-list ol li.now:before,
.progress li.active:before,
.progress li.now:before {
  color: #000;
}
.progress-list ol li:before,
.progress li:before {
  content: "";
  font-family: "FontAwesome";
  position: absolute;
  left: -11px;
}
.progress-list ol li:first-child,
.progress li:first-child {
  margin-left: 0;
}
.progress-list ol li:first-child:before,
.progress li:first-child:before {
  content: none;
}

.btnlist-flex button {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
}
.btnlist-flex button::-webkit-search-decoration {
  display: none;
}
.btnlist-flex button::focus {
  outline-offset: -2px;
}

@media screen and (max-width: 37.4375em) {
  a.btn-request {
    padding: 4px 0;
    width: 100%;
  }

  .contactform {
    margin-bottom: 25px;
  }
  .contactform .tel {
    width: 150px;
  }
  .contactform dt {
    padding: 6px 0 0 0;
    width: auto;
    display: block;
  }
  .contactform dd {
    padding: 5px 3px 10px 3px;
  }
  .contactform dd .full {
    width: 100%;
  }
  .contactform select {
    width: auto;
  }
  .contactform ul li {
    display: block;
    font-size: 14px;
    font-size: 0.875rem;
    margin-left: 0;
  }
  .contactform ul li input {
    margin-bottom: 8px;
  }

  .progress li {
    font-size: 13px;
    font-size: 0.8125rem;
  }

  .progress-list ol li {
    font-size: 11px;
    font-size: 0.6875rem;
    margin-bottom: 8px;
  }
  .progress-list ol li span {
    padding: 3px 8px;
  }
  .progress-list ol li:after {
    font-size: 8px;
    font-size: 0.5rem;
    margin: 0 4px;
  }
}
.alert-btn {
  text-align: center;
}
.alert-btn a {
  background: #fff00a;
  color: #444;
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 500;
  padding: 20px 25px;
  position: relative;
}
.alert-btn a:hover {
  background: #faea00;
  text-decoration: none;
}
.alert-btn a:after {
  content: "";
  font-family: "FontAwesome";
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  right: 15px;
}

a.fresh-btn {
  background: #fff;
  border: 1px solid #a5a5a5;
  color: #000;
  display: inline-block;
  font-family: "Noto Sans JP", sans-serif;
  min-width: 32%;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: 500;
  padding: 12px 50px;
  position: relative;
  text-decoration: none;
  text-align: center;
}
a.fresh-btn:hover {
  color: #45b7ea;
}
a.fresh-btn:after {
  content: "";
  background: url(img/arrow_right.svg) no-repeat center center;
  background-size: cover;
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  right: 12px;
}

.fresh-nav ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.fresh-nav ul li {
  font-family: "Noto Sans JP", sans-serif;
  margin-left: 2%;
  margin-top: 20px;
  width: 32%;
}
.fresh-nav ul li:nth-child(-n+3) {
  margin-top: 0;
}
.fresh-nav ul li:nth-of-type(3n+1) {
  margin-left: 0;
}
.fresh-nav ul a {
  background: #fff;
  border: 1px solid #a5a5a5;
  color: #000;
  display: flex;
  height: 100%;
  position: relative;
  text-decoration: none;
  text-align: center;
}
.fresh-nav ul a:hover {
  color: #45b7ea;
}
.fresh-nav ul a:after {
  content: "";
  background: url(img/arrow_right.svg) no-repeat center center;
  background-size: cover;
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  right: 12px;
}
.fresh-nav ul a .photo {
  width: 70px;
}
.fresh-nav ul a .photo img {
  width: 100%;
  height: auto;
}
.fresh-nav ul a .name {
  flex: 1 0 0%;
  align-self: center;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: 500;
  line-height: 1.5;
  text-align: center;
}

.emergency-btn {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.emergency-btn a {
  background: #f6c2d8;
  border: 5px solid #f19ec2;
  display: block;
  color: #222;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 700;
  padding: 20px 20px;
  text-align: center;
  text-decoration: none;
  width: 49%;
}
.emergency-btn a i {
  color: #ec7aac;
}
.emergency-btn a:hover {
  background: #f5b9d3;
}

.emergency-download {
  display: flex;
  justify-content: center;
}
.emergency-download li {
  text-align: center;
}
.emergency-download li:first-child {
  margin-right: 15px;
}
.emergency-download li a {
  display: block;
  width: 100%;
}

@media screen and (max-width: 73.75em) {
  .alert-btn a {
    font-size: 18px;
    font-size: 1.125rem;
    padding: 18px 25px;
  }

  .emergency-btn a {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.6;
    padding: 15px 10px;
  }
}
@media screen and (max-width: 37.4375em) {
  .alert-btn a {
    font-size: 16px;
    font-size: 1rem;
    padding: 10px 25px;
  }

  a.fresh-btn {
    width: 100%;
  }

  .fresh-nav ul {
    flex-direction: column;
  }
  .fresh-nav ul li {
    margin-left: 0;
    margin-top: 0px;
    width: 100%;
  }
  .fresh-nav ul li:nth-child(-n+3) {
    margin-top: 0px;
  }
  .fresh-nav ul li:first-of-type {
    border-top: 1px solid #a5a5a5;
  }
  .fresh-nav ul a {
    background: #fff;
    border: 1px solid #a5a5a5;
    border-top: 0;
    color: #000;
    display: flex;
    height: 100%;
    position: relative;
    text-decoration: none;
    text-align: center;
  }
  .fresh-nav ul a:hover {
    color: #45b7ea;
  }
  .fresh-nav ul a:after {
    content: "";
    background: url(img/arrow_right.svg) no-repeat center center;
    background-size: cover;
    display: block;
    width: 16px;
    height: 16px;
    position: absolute;
    bottom: 50%;
    transform: translateY(50%);
    right: 12px;
  }
  .fresh-nav ul a .photo {
    width: 70px;
  }
  .fresh-nav ul a .photo img {
    width: 100%;
    height: auto;
  }
  .fresh-nav ul a .name {
    flex: 1 0 0%;
    align-self: center;
    font-size: 15px;
    font-size: 0.9375rem;
    font-weight: 500;
    line-height: 1.5;
    text-align: center;
  }

  .emergency-btn {
    flex-direction: column;
  }
  .emergency-btn a {
    border: 4px solid #f19ec2;
    font-size: 16px;
    font-size: 1rem;
    line-height: 1;
    padding: 15px 10px;
    width: 100%;
  }

  .emergency-download {
    flex-direction: column;
    justify-content: flex-start;
  }
  .emergency-download li {
    text-align: center;
    width: 100%;
  }
  .emergency-download li:first-child {
    margin: 0 0 10px 0;
  }
}
@media print {
  .s-header nav,
.g-nav,
.breadcrumbs,
.s-footer-sitemap,
.s-footer-group,
.c-nav-seclevel,
.inside-link,
.page-link,
.btn-pagetop a,
.sidebar,
.s-footer .author > div .pr ul,
#breadcrumbs {
    display: none;
  }

  .pageTop {
    visibility: hidden;
    font-size: 0;
    line-height: 0;
  }

  body {
    font-size: 12pt;
  }

  .wrapper,
.content {
    margin-right: auto;
    margin-left: auto;
    width: auto;
  }

  .content-blue {
    background-color: transparent;
  }

  .basic-area {
    width: auto;
    float: none;
  }

  .c-header h2 {
    background: none;
  }

  .contactbox,
.contactbox-branch {
    flex-direction: column;
    width: auto;
  }
  .contactbox > div:nth-of-type(1),
.contactbox-branch > div:nth-of-type(1) {
    padding: 10px;
  }
  .contactbox > div:nth-of-type(2),
.contactbox-branch > div:nth-of-type(2) {
    border-right: 0;
    margin: 10px 10px 5px 10px;
    padding-right: 0;
  }
  .contactbox h3,
.contactbox h4,
.contactbox-branch h3,
.contactbox-branch h4 {
    top: auto;
    left: auto;
    transform: none;
  }
  .contactbox h3,
.contactbox-branch h3 {
    padding-left: 35px;
  }
  .contactbox h3:before,
.contactbox-branch h3:before {
    background-size: contain;
    width: 25px;
    height: 25px;
    left: 0px;
    top: -3px;
  }
  .contactbox h3 .mb-none,
.contactbox-branch h3 .mb-none {
    display: none;
  }
  .contactbox h4,
.contactbox-branch h4 {
    font-weight: 500;
  }
  .contactbox ul,
.contactbox-branch ul {
    padding: 0px 10px 10px 10px;
  }

  .s-footer {
    background-color: transparent;
    border-top: 0;
  }
  .s-footer .author {
    padding: 1em;
  }
  .s-footer .author > div {
    justify-content: center;
  }
  .s-footer .author > div .author-logo,
.s-footer .author > div .address {
    display: none;
  }
  .s-footer .author > div .copyright {
    align-self: center;
  }
  .s-footer .author > div .copyright small {
    font-size: 8pt;
    font-size: 0.6666666667rem;
  }

  #copyright {
    margin: 0 auto;
    float: none;
    background: none;
    text-indent: 0;
    text-align: center;
    font-size: 11px;
    font-family: Helvetica, Arial;
  }

  body {
    font-family: sans-serif;
  }

  h1, h2, h3, h4, h5, h6 {
    font-family: sans-serif;
  }
  h1.bold, h2.bold, h3.bold, h4.bold, h5.bold, h6.bold {
    font-weight: bold;
  }

  .h01,
.h02,
.h03,
.h04 {
    font-weight: bold;
  }

  .scroll-msg-pc {
    display: none;
  }

  .scroll-pc {
    background: none;
    background-attachment: fixed;
    border-right: 0;
  }
  .scroll-pc::-webkit-scrollbar {
    height: 10px;
    width: 10px;
  }
  .scroll-pc::-webkit-scrollbar-track {
    background: none;
  }
  .scroll-pc::-webkit-scrollbar-thumb {
    background: none;
  }
  .scroll-pc table {
    background: none;
    background-repeat: no-repeat;
    background-attachment: local;
    border-bottom: 0;
    border-collapse: collapse;
    width: auto;
  }

  .top-contmenu {
    background-color: transparent;
  }

  .scroll-pc {
    font-size: 10px;
    font-size: 0.625rem;
  }

  /* /////////////////////////////////////////////////////////////////////////// Faculty */
  /* ----------------------------------------------------- Tab */
  .facultyTab li {
    display: inline;
    float: none;
  }

  .facultyTab a {
    padding: 0;
    display: none;
    width: 100%;
    height: 100%;
    color: #303030;
    line-height: 0px;
    background: none;
  }

  .facultyIndexTab a {
    height: 100%;
  }

  .facultyTab a.rOver {
    width: 100%;
  }

  .facultyTab a.selected {
    padding-bottom: 8px;
    border-bottom: 3px solid #ccc;
    display: block;
    width: 100%;
    color: #000;
    line-height: 1.6;
    font-size: 24px;
    text-align: center;
    text-indent: 0;
  }

  /* ----------------------------------------------------- Second Top */
  #secInfoBox {
    padding-bottom: 0px;
    background: none;
  }

  #secInfoBox .title {
    margin-bottom: 10px;
    padding: 0 0 5px 0;
    border-bottom: 2px solid #ccc;
    background: none;
  }

  #secInfoBox .title h2 {
    margin-top: 0px;
    float: none;
    width: 100%;
  }

  #secInfoBox .title .toList {
    display: none;
  }

  #secInfoBox .inBox,
#secInfoBox .inBoxSec {
    padding: 0px;
    background: none;
  }

  .contList01 {
    margin-right: 0px;
    overflow: hidden;
    zoom: 1;
  }

  .contList01 .block2,
.contList01 .bnr {
    margin: 0 0px 0px 0;
    display: block;
    float: none;
    width: 640px;
  }

  .contList01 .bnr {
    margin: 0 0px 10px 0;
  }

  .contList01 .block1 {
    width: 640px;
  }

  .contList01 h2 {
    margin-bottom: 10px;
    border-top: 0;
    border-bottom: 2px solid #5495dd;
    background: none;
    font-weight: bold;
  }

  .contList01 h2 a {
    padding: 0px 0px 8px 0px;
    background: none;
    display: block;
  }

  .contList01 h2 span {
    padding: 0px 0px 8px 0px;
  }

  .contList01 .block02 h2 a,
.contList01 .block01 h2 a {
    width: 595px;
    background: none;
  }

  .contList01 h2.catlink a {
    background: none;
  }

  .contList01 ul {
    overflow: hidden;
    zoom: 1;
  }

  .contList01 ul li {
    margin-right: 20px;
    display: block;
    float: left;
    line-height: 1.6;
  }

  .contList01 ul li a {
    display: inline;
    width: 100%;
    padding: 0px;
    background: none;
  }

  .contList01 .block1 .separate {
    width: 100%;
    float: none;
  }

  .contList01 ul li a.pdf,
.contList01 ul li a.outside,
.contList01 ul li a.word,
.contList01 ul li a.inside,
.contList01 ul li.catlink a,
.contList01 ul li a.excel {
    padding-left: 0;
    background: none !important;
  }

  dt.disc {
    list-style: none;
  }

  /* */
  .print .contList01 {
    margin-right: -20px;
    overflow: hidden;
    zoom: 1;
  }

  .print .contList01 .block2,
.print .contList01 .bnr {
    margin: 0 20px 20px 0;
    display: inline;
    float: left;
    width: 310px;
    zoom: 1;
  }

  .print .contList01 .bnr {
    margin: 0 0px 10px 0;
  }

  .print .contList01 .block1 {
    width: 640px;
  }

  .print .contList01 h2 a {
    width: 100%;
  }

  .print .contList01 h2 span {
    padding: 0px 0px 8px 0px;
  }

  .print .contList01 ul {
    overflow: visible;
    zoom: 0.85;
  }

  .print .contList01 ul li {
    margin: 0;
    float: none;
  }

  .print .contList01 ul li a {
    display: block;
    width: auto;
    padding: 0px;
    background: none;
  }

  .print .contList01 ul ul {
    margin-left: 1em;
  }

  .print .contList01 ul ul a {
    width: auto;
  }

  .print .contList01 .mgb40 {
    margin-bottom: 0;
  }

  .contList01 .block1 .separate {
    width: 100%;
    float: none;
  }

  /* ----------------------------------------------------- Link */
  .inside,
.category,
.pagedown,
.outside,
.anchor,
.pdf,
.excel,
.word,
.linkList01 li,
.linkList02 li,
.catlinkList01 li,
.pdfList01 > li,
.anchorList01,
.outsideList01 {
    margin-left: 0;
    text-indent: 0;
  }
  .inside:before,
.category:before,
.pagedown:before,
.outside:before,
.anchor:before,
.pdf:before,
.excel:before,
.word:before,
.linkList01 li:before,
.linkList02 li:before,
.catlinkList01 li:before,
.pdfList01 > li:before,
.anchorList01:before,
.outsideList01:before {
    content: none;
  }

  /* ----------------------------------------------------- width */
  .print-w100 {
    width: 100%;
  }
}

/*# sourceMappingURL=style.css.map */
