@charset "UTF-8";
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

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

html, body {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  font-size: 15px;
  line-height: 32px; }

a {
  color: #1B1BE0;
  text-decoration: underline; }

a[href^="tel:"] {
  color: #000;
  text-decoration: none; }

span.pcbr {
  display: block; }

span.spbr {
  display: none; }

@media screen and (max-width: 767px) {
  html, body {
    min-width: auto;
    font-size: 15px;
    line-height: 30px;
    min-width: 320px; }
  span.pcbr {
    display: none; }
  span.spbr {
    display: block; } }

.container {
  position: relative;
  width: auto;
  max-width: 1152px;
  margin-left: auto;
  margin-right: auto;
  border-top: 1px solid #D5D8DD;
  padding-top: 70px;
  padding-bottom: 120px; }

.container__row {
  position: relative; }
  .container__row:after {
    content: "";
    display: block;
    width: 0px;
    height: 0px;
    float: none;
    clear: both;
    visibility: hidden; }

.container__right {
  width: 672px;
  padding-left: 480px;
  position: relative;
  z-index: 0; }

.container__left {
  width: 480px;
  position: absolute;
  left: 0px;
  top: 0px;
  z-index: 1; }

.container__3col {
  width: calc(33.3333% - 32px);
  height: auto;
  float: left; }
  .container__3col:nth-of-type(3n+1), .container__3col:nth-of-type(3n+2) {
    margin-right: 48px; }

.container__content {
  position: relative;
  padding-left: 288px;
  position: relative; }
  .container__content:after {
    content: "";
    display: block;
    width: 0px;
    height: 0px;
    float: none;
    clear: both;
    visibility: hidden; }

.container__sub {
  position: absolute;
  left: 0px;
  top: 0px; }
  .container__sub.fix {
    position: fixed;
    top: 70px;
    left: calc(50% - 576px);
    transition: transform 0.75s cubic-bezier(0.19, 1, 0.22, 1); }
  .container__sub.stick {
    top: auto;
    bottom: 0px; }

html.draw_head .container__sub.fix {
  -ms-transform: translate(0px, 142px);
      transform: translate(0px, 142px); }

.container__sub__mainblock {
  display: block; }

.container__sub__subblock {
  display: none; }

.container__sub__back {
  display: inline-block;
  font-size: 15px;
  line-height: 32px;
  width: auto;
  height: 32px;
  padding-left: 30px;
  position: relative;
  color: #000;
  text-decoration: none; }
  .container__sub__back:before, .container__sub__back:after {
    content: "";
    display: block;
    width: 15px;
    height: 14px;
    background-size: 15px 14px;
    position: absolute;
    left: 0px;
    top: 8px;
    -ms-transform: rotate(180deg);
        transform: rotate(180deg); }
  .container__sub__back:before {
    background-image: url(images/arrow_gray.png);
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
  .container__sub__back:after {
    background-image: url(images/arrow_blue.png);
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }

.container__sub__list > li {
  padding-left: 20px; }
  .container__sub__list > li > a:before,
  .container__sub__list > li > span:before {
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    background-color: #D5D8DD;
    position: absolute;
    left: 0px;
    top: 10px; }
  .container__sub__list > li.current > a:before,
  .container__sub__list > li.current > span:before {
    transition-duration: 0s;
    background-color: #1B1BE0; }

.container__sub__list li ul {
  height: 0px;
  overflow: hidden;
  transition: height 0.5s cubic-bezier(0.19, 1, 0.22, 1); }
  .container__sub__list li ul li {
    padding-left: 12px; }

.container__sub__list li {
  position: relative;
  display: block; }
  .container__sub__list li a, .container__sub__list li span {
    display: block;
    font-size: 13px;
    line-height: 32px;
    color: #000;
    text-decoration: none;
    cursor: pointer; }

.container__sub__category p,
.container__sub__period p {
  font-size: 13px;
  font-weight: 600; }

.container__sub__category ul li,
.container__sub__period ul li {
  display: block; }
  .container__sub__category ul li a,
  .container__sub__period ul li a {
    display: inline-block;
    font-size: 13px;
    line-height: 20px;
    padding: 1px 10px;
    border: 1px solid #1B1BE0;
    text-decoration: none;
    color: #1B1BE0;
    position: relative; }
    .container__sub__category ul li a span,
    .container__sub__period ul li a span {
      position: relative;
      z-index: 1; }
    .container__sub__category ul li a:before,
    .container__sub__period ul li a:before {
      content: "";
      display: block;
      width: 0px;
      height: 100%;
      position: absolute;
      top: 0px;
      right: 0px;
      background-color: #1B1BE0;
      z-index: 0; }
  .container__sub__category ul li.current a,
  .container__sub__period ul li.current a {
    background-color: #1B1BE0;
    color: #FFF; }

.container__sub__category:not(:first-of-type),
.container__sub__period:not(:first-of-type) {
  margin-top: 30px; }

.container__sub__back + .container__sub__category {
  margin-top: 60px; }

.container__body {
  position: relative;
  width: auto;
  top: -60px; }

.container__article {
  border-bottom: 1px solid #D5D8DD;
  position: relative;
  padding: 60px 0; }
  .container__article:last-of-type {
    border-bottom: 0px;
    padding-bottom: 0px; }

.container__article__main {
  padding-left: 194px;
  position: relative;
  min-height: 28px; }

.container__article__sub {
  margin-top: 60px; }

.container__article__head {
  position: absolute;
  left: 0px;
  width: 150px; }
  .container__article__head h4 {
    font-size: 18px;
    line-height: 28px;
    font-weight: 600; }

.container__article__body p {
  font-size: 15px;
  line-height: 32px; }

.container__article__body h3, .container__article__body h4, .container__article__body h5 {
  font-weight: 600; }

.container__article__body dl {
  position: relative;
  padding: 0;
  margin: -8px 0px; }

.container__article__body dt, .container__article__body dd {
  font-size: 13px;
  line-height: 24px; }
  .container__article__body dt:first-of-type, .container__article__body dd:first-of-type {
    padding-top: 0px; }

.container__article__body dt {
  position: absolute;
  left: 0px;
  width: 192px;
  padding: 11px 0 12px;
  z-index: 1; }

.container__article__body dd {
  padding: 11px 0px 12px 192px;
  z-index: 0;
  border-top: 1px solid #D5D8DD; }
  .container__article__body dd:first-of-type {
    border: none; }

.container__article__body .container__section:first-of-type, .container__article__body .container__section--foldable:first-of-type {
  border-top: 0px; }
  .container__article__body .container__section:first-of-type .container__section__head, .container__article__body .container__section--foldable:first-of-type .container__section__head {
    top: 0px; }
  .container__article__body .container__section:first-of-type .container__section__body, .container__article__body .container__section--foldable:first-of-type .container__section__body {
    padding-top: 0px; }

.container__article__body .container__section:last-of-type .container__section__body, .container__article__body .container__section--foldable:last-of-type .container__section__body {
  padding-bottom: 0px; }

.container__article__body__section, .educational_policy__section {
  border-bottom: 1px solid #D5D8DD;
  padding-bottom: 50px;
  margin-bottom: 50px; }
  .container__article__body__section:last-of-type, .educational_policy__section:last-of-type {
    border-bottom: 0px;
    margin-bottom: 0px;
    padding-bottom: 0px; }
  .container__article__body__section > *:first-child, .educational_policy__section > *:first-child {
    margin-top: 0px; }
  .container__article__body__section > *:last-child, .educational_policy__section > *:last-child {
    margin-bottom: 0px; }
  .container__article__body__section h4, .educational_policy__section h4, .container__article__body__section h5, .educational_policy__section h5, .container__article__body__section h6, .educational_policy__section h6 {
    font-weight: 600;
    font-size: 15px;
    line-height: 32px; }
  .container__article__body__section ul, .educational_policy__section ul {
    list-style: disc;
    padding-left: 20px; }
  .container__article__body__section ol, .educational_policy__section ol {
    list-style: decimal;
    padding-left: 20px; }
  .container__article__body__section p, .educational_policy__section p,
  .container__article__body__section h3, .educational_policy__section h3, .container__article__body__section h4, .educational_policy__section h4, .container__article__body__section h5, .educational_policy__section h5, .container__article__body__section h6, .educational_policy__section h6,
  .container__article__body__section ul, .educational_policy__section ul, .container__article__body__section ol, .educational_policy__section ol {
    margin: 32px 0; }
  .container__article__body__section dl:after, .educational_policy__section dl:after {
    content: "";
    display: block;
    width: 0px;
    height: 0px;
    float: none;
    clear: both;
    visibility: hidden; }
  .container__article__body__section dl dt, .educational_policy__section dl dt {
    width: 50%;
    float: left;
    clear: both;
    position: relative;
    left: auto;
    top: auto;
    border-top: 1px solid #D5D8DD; }
  .container__article__body__section dl dd, .educational_policy__section dl dd {
    width: 50%;
    float: left;
    border-top: 1px solid #D5D8DD;
    border-bottom: 0px; }
  .container__article__body__section dl dt, .educational_policy__section dl dt, .container__article__body__section dl dd, .educational_policy__section dl dd {
    font-size: 15px;
    line-height: 32px;
    padding: 16px 0; }
    .container__article__body__section dl dt:first-of-type, .educational_policy__section dl dt:first-of-type, .container__article__body__section dl dd:first-of-type, .educational_policy__section dl dd:first-of-type {
      border-top: 0px;
      padding-top: 0px; }
  .container__article__body__section dl:last-child dt:last-of-type, .educational_policy__section dl:last-child dt:last-of-type,
  .container__article__body__section dl:last-child dd:last-of-type, .educational_policy__section dl:last-child dd:last-of-type {
    padding-bottom: 0px; }

.container__main {
  position: relative;
  width: auto; }

.container__section, .container__section--foldable {
  border-top: 1px solid #D5D8DD;
  padding-left: 194px;
  position: relative; }

@media screen and (min-width: 768px) {
  .container__section--foldable .container__section__mask {
    height: auto !important; } }

.container__section__head {
  position: absolute;
  left: 0px;
  top: 24px; }
  .container__section__head h4 {
    font-size: 13px;
    line-height: 32px;
    font-weight: 600; }

.container__section__body {
  padding: 24px 0; }
  .container__section__body h3, .container__section__body h4, .container__section__body h5 {
    font-weight: 600; }
  .container__section__body li, .container__section__body p {
    font-size: 13px;
    line-height: 32px; }
  .container__section__body dl {
    position: relative;
    padding: 0;
    margin: -8px 0px; }
  .container__section__body dt, .container__section__body dd {
    font-size: 13px;
    line-height: 24px; }
  .container__section__body dt {
    position: absolute;
    left: 0px;
    width: 192px;
    padding: 11px 0 12px;
    z-index: 1; }
  .container__section__body dd {
    padding: 11px 0px 12px 192px;
    z-index: 0;
    border-top: 1px solid #D5D8DD; }
    .container__section__body dd:first-of-type {
      border: none; }

.container__nav {
  border-top: 1px solid #D5D8DD;
  position: relative;
  margin-top: 90px; }

.container__nav__prev,
.container__nav__next {
  display: block;
  position: absolute;
  bottom: 0px;
  color: #000;
  text-decoration: none;
  font-size: 15px;
  line-height: 20px; }
  .container__nav__prev:before, .container__nav__prev:after,
  .container__nav__next:before,
  .container__nav__next:after {
    content: "";
    display: block;
    width: 15px;
    height: 14px;
    background-size: 15px 14px;
    position: absolute;
    top: 0px; }
  .container__nav__prev:before,
  .container__nav__next:before {
    background-image: url(images/arrow_gray.png);
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
  .container__nav__prev:after,
  .container__nav__next:after {
    background-image: url(images/arrow_blue.png);
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }

.container__nav__prev {
  left: 0px;
  padding-left: 30px; }
  .container__nav__prev:before, .container__nav__prev:after {
    left: 0px;
    -ms-transform: rotate(180deg);
        transform: rotate(180deg); }

.container__nav__next {
  right: 0px; }
  .container__nav__next:before, .container__nav__next:after {
    right: 0px; }

.container__nav__back {
  display: block;
  position: absolute;
  bottom: 0px;
  left: 50%;
  -ms-transform: translate(-50%, 0px);
      transform: translate(-50%, 0px);
  font-size: 15px;
  text-align: center;
  line-height: 20px;
  color: #000;
  text-decoration: none; }
  .container__nav__back:before {
    content: "";
    display: block;
    width: 0%;
    height: 1px;
    background-color: #1B1BE0;
    position: absolute;
    right: 0px;
    bottom: -2px; }

html:not(.touch) .container__sub__back {
  transition: color .15s linear; }
  html:not(.touch) .container__sub__back:before, html:not(.touch) .container__sub__back:after {
    transition: transform .15s linear, opacity .15s linear; }
  html:not(.touch) .container__sub__back:hover {
    color: #1B1BE0; }
    html:not(.touch) .container__sub__back:hover:before {
      -ms-transform: rotate(180deg) translate(2px, 0);
          transform: rotate(180deg) translate(2px, 0);
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
    html:not(.touch) .container__sub__back:hover:after {
      -ms-transform: rotate(180deg) translate(2px, 0);
          transform: rotate(180deg) translate(2px, 0);
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

html:not(.touch) .container__nav__prev,
html:not(.touch) .container__nav__next {
  transition: color .15s linear; }
  html:not(.touch) .container__nav__prev:before, html:not(.touch) .container__nav__prev:after,
  html:not(.touch) .container__nav__next:before,
  html:not(.touch) .container__nav__next:after {
    transition: transform .15s linear, opacity .15s linear; }
  html:not(.touch) .container__nav__prev:hover,
  html:not(.touch) .container__nav__next:hover {
    color: #1B1BE0; }

html:not(.touch) .container__nav__prev:hover:before {
  -ms-transform: rotate(180deg) translate(2px, 0);
      transform: rotate(180deg) translate(2px, 0);
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }

html:not(.touch) .container__nav__prev:hover:after {
  -ms-transform: rotate(180deg) translate(2px, 0);
      transform: rotate(180deg) translate(2px, 0);
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

html:not(.touch) .container__nav__next:hover:before {
  -ms-transform: translate(2px, 0);
      transform: translate(2px, 0);
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }

html:not(.touch) .container__nav__next:hover:after {
  -ms-transform: translate(2px, 0);
      transform: translate(2px, 0);
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

html:not(.touch) .container__sub__category ul li a,
html:not(.touch) .container__sub__period ul li a {
  transition: color .1s linear; }
  html:not(.touch) .container__sub__category ul li a:before,
  html:not(.touch) .container__sub__period ul li a:before {
    transition: width 0.25s cubic-bezier(0.19, 1, 0.22, 1); }
  html:not(.touch) .container__sub__category ul li a:hover,
  html:not(.touch) .container__sub__period ul li a:hover {
    color: #FFF; }
    html:not(.touch) .container__sub__category ul li a:hover:before,
    html:not(.touch) .container__sub__period ul li a:hover:before {
      right: auto;
      left: 0px;
      width: 100%; }

html:not(.touch) .container__nav__back {
  transition: color .15s linear; }
  html:not(.touch) .container__nav__back:before {
    transition: width 0.25s cubic-bezier(0.19, 1, 0.22, 1); }
  html:not(.touch) .container__nav__back:hover {
    color: #1B1BE0; }
    html:not(.touch) .container__nav__back:hover:before {
      left: 0px;
      right: auto;
      width: 100%; }

html:not(.touch) .container__sub__list > li > a:before,
html:not(.touch) .container__sub__list > li > span:before {
  transition: background-color .15s linear; }

html:not(.touch) .container__sub__list > li > a:hover:before,
html:not(.touch) .container__sub__list > li > span:hover:before {
  background-color: #1B1BE0; }

@media screen and (max-width: 1212px) {
  .container {
    margin-left: 30px;
    margin-right: 30px; }
  .container__right {
    width: 58.3333%;
    padding-left: 41.6667%; }
  .container__left {
    width: 41.6667%; }
  .container__sub.fix {
    left: 30px; } }

@media screen and (max-width: 1023px) {
  .container__content {
    padding-left: 210px; }
  .container__section, .container__section--foldable {
    padding-left: 148px; }
  .container__section__body dt {
    width: 162px; }
  .container__section__body dd {
    padding: 11px 0px 12px 162px; }
  .container__sub__category ul li a,
  .container__sub__period ul li a {
    font-size: 12px;
    padding: 1px 6px; } }

@media screen and (max-width: 767px) {
  .container {
    width: auto;
    margin-left: 24px;
    margin-right: 24px;
    padding-top: 36px;
    padding-bottom: 50px; }
  .container__left {
    width: auto;
    position: relative;
    left: 0px;
    top: 0px;
    z-index: 1; }
  .container__right {
    width: auto;
    padding-left: 0px;
    position: relative;
    z-index: 0;
    margin-top: 30px; }
  .container__3col {
    width: 100%;
    height: auto;
    float: none;
    margin: 0 0 20px 0; }
    .container__3col:nth-of-type(3n+1), .container__3col:nth-of-type(3n+2) {
      margin-right: 0px; }
    .container__3col:last-of-type {
      margin-bottom: 0px; }
  .container__content {
    padding-left: 0px; }
  .container__sub {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    -ms-transform: none !important;
        transform: none !important;
    margin-bottom: 30px; }
  .container__sub__mainblock {
    display: none; }
  .container__sub__subblock {
    position: relative;
    display: block;
    box-sizing: border-box;
    height: 64px;
    padding: 10px 0;
    border-bottom: 1px solid #D5D8DD;
    margin: 0px; }
    .container__sub__subblock:before {
      content: "";
      display: block;
      width: 44px;
      height: 44px;
      background-image: url(images/sp_subnav_select.png);
      background-size: 44px 44px;
      position: absolute;
      top: 10px;
      right: -14px; }
    .container__sub__subblock select {
      display: block;
      width: 100%;
      height: 44px;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      margin: 0 auto;
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      font-size: 16px;
      position: absolute;
      left: 0px;
      top: 10px;
      z-index: 1; }
    .container__sub__subblock__label {
      display: block;
      width: 100%;
      height: 44px;
      position: absolute;
      left: 0px;
      top: 10px;
      z-index: 0;
      font-size: 15px;
      line-height: 44px; }
  .container__section, .container__section--foldable {
    padding: 24px 0; }
  .container__section__head {
    position: relative;
    left: auto;
    top: auto; }
    .container__section__head h4 {
      line-height: 28px;
      font-weight: 600; }
  .container__section__body {
    padding: 8px 0 0 0; }
    .container__section__body li, .container__section__body p {
      line-height: 28px; }
    .container__section__body dl {
      margin: -6px 0; }
    .container__section__body dt, .container__section__body dd {
      font-size: 13px;
      line-height: 22px; }
    .container__section__body dt {
      position: relative;
      left: auto;
      width: auto;
      padding: 0px;
      border-top: 1px solid #D5D8DD;
      padding: 20px 0 0 0; }
      .container__section__body dt:first-of-type {
        border: none; }
    .container__section__body dd {
      padding: 6px 0 18px;
      z-index: 0;
      border: none; }
  .container__section--foldable .container__section__head {
    cursor: pointer; }
    .container__section--foldable .container__section__head:before {
      content: "";
      display: block;
      width: 2px;
      height: 10px;
      background-color: #969BA3;
      position: absolute;
      top: 9px;
      right: 16px; }
    .container__section--foldable .container__section__head:after {
      content: "";
      display: block;
      height: 2px;
      width: 10px;
      background-color: #969BA3;
      position: absolute;
      top: 13px;
      right: 12px; }
  .container__section--foldable .container__section__mask {
    height: 0px;
    overflow: hidden;
    transition: height 0.5s cubic-bezier(0.19, 1, 0.22, 1); }
  .container__section--foldable.open .container__section__head:before {
    display: none; }
  .container__nav {
    height: 60px !important;
    margin-top: 0px;
    margin-bottom: 30px; }
  .container__nav__prev,
  .container__nav__next {
    display: none; }
  .container__nav__back {
    position: absolute;
    bottom: 0px !important;
    left: 0px;
    -ms-transform: translate(0%, 0%);
        transform: translate(0%, 0%);
    font-size: 15px;
    line-height: 20px;
    text-decoration: none;
    text-align: left;
    padding-left: 30px; }
    .container__nav__back:before, .container__nav__back:after {
      content: "";
      display: block;
      width: 15px !important;
      height: 14px;
      background-size: 15px 14px;
      position: absolute;
      right: auto;
      left: 0px;
      top: 3px;
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
      background-color: transparent; }
    .container__nav__back:before {
      background-image: url(images/arrow_gray.png);
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
    .container__nav__back:after {
      background-image: url(images/arrow_blue.png);
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
  html:not(.touch) .container__nav__back {
    transition: color .15s linear; }
    html:not(.touch) .container__nav__back:before, html:not(.touch) .container__nav__back:after {
      transition: transform .15s linear, opacity .15s linear; }
    html:not(.touch) .container__nav__back:hover {
      color: #1B1BE0; }
      html:not(.touch) .container__nav__back:hover:before {
        -ms-transform: rotate(180deg) translate(2px, 0);
            transform: rotate(180deg) translate(2px, 0);
        opacity: 0;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
      html:not(.touch) .container__nav__back:hover:after {
        -ms-transform: rotate(180deg) translate(2px, 0);
            transform: rotate(180deg) translate(2px, 0);
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
  .container__body {
    top: -34px; }
  .container__article {
    padding: 32px 0 30px; }
  .container__article__main {
    padding-left: 0px;
    min-height: 0px; }
  .container__article__sub {
    margin-top: 30px; }
  .container__article__head {
    position: relative;
    left: 0px;
    width: auto; }
    .container__article__head h4 {
      font-size: 15px;
      line-height: 26px;
      margin-bottom: 10px; }
  .container__article__body p {
    font-size: 15px;
    line-height: 30px; }
  .container__article__body h3, .container__article__body h4, .container__article__body h5 {
    font-weight: 600; }
  .container__article__body dl {
    position: relative;
    padding: 0;
    margin: 0px 0px; }
  .container__article__body dt, .container__article__body dd {
    font-size: 13px;
    line-height: 24px; }
    .container__article__body dt:first-of-type, .container__article__body dd:first-of-type {
      padding-top: 0px; }
  .container__article__body dt {
    position: absolute;
    left: 0px;
    width: 56px;
    padding: 15px 0 16px;
    z-index: 1; }
  .container__article__body dd {
    padding: 15px 0px 16px 56px;
    z-index: 0;
    border-top: none;
    position: relative; }
    .container__article__body dd:before {
      content: "";
      display: block;
      width: calc(100% - 56px);
      height: 1px;
      background-color: #D5D8DD;
      position: absolute;
      right: 0px;
      top: 0px; }
    .container__article__body dd:first-of-type {
      border: none; }
      .container__article__body dd:first-of-type:before {
        display: none; }
  .container__sub__category ul li,
  .container__sub__period ul li {
    display: inline-block;
    margin: 0 4px 4px 0; }
  .container__article__body__section, .educational_policy__section {
    border-bottom: 0px;
    padding-bottom: 0px;
    margin-bottom: 30px;
    margin-top: 30px; }
    .container__article__body__section:last-of-type, .educational_policy__section:last-of-type {
      border-bottom: 0px;
      margin-bottom: 0px;
      padding-bottom: 0px; }
    .container__article__body__section p, .educational_policy__section p, .container__article__body__section li, .educational_policy__section li {
      font-size: 13px;
      line-height: 24px; }
    .container__article__body__section h5, .educational_policy__section h5 {
      font-size: 15px;
      line-height: 30px; }
    .container__article__body__section h6, .educational_policy__section h6 {
      font-size: 13px;
      line-height: 24px; }
    .container__article__body__section p, .educational_policy__section p,
    .container__article__body__section h3, .educational_policy__section h3, .container__article__body__section h4, .educational_policy__section h4, .container__article__body__section h5, .educational_policy__section h5, .container__article__body__section h6, .educational_policy__section h6,
    .container__article__body__section ul, .educational_policy__section ul, .container__article__body__section ol, .educational_policy__section ol {
      margin: 12px 0; }
    .container__article__body__section dl:after, .educational_policy__section dl:after {
      content: "";
      display: block;
      width: 0px;
      height: 0px;
      float: none;
      clear: both;
      visibility: hidden; }
    .container__article__body__section dl dt, .educational_policy__section dl dt {
      font-weight: 600;
      border: 0px;
      padding: 0; }
    .container__article__body__section dl dd, .educational_policy__section dl dd {
      padding: 0 0 8px 0 !important; }
    .container__article__body__section dl dt, .educational_policy__section dl dt, .container__article__body__section dl dd, .educational_policy__section dl dd {
      font-size: 13px;
      line-height: 24px;
      width: auto;
      float: none;
      border: none; }
      .container__article__body__section dl dt:before, .educational_policy__section dl dt:before, .container__article__body__section dl dd:before, .educational_policy__section dl dd:before {
        display: none; }
      .container__article__body__section dl dt:first-of-type, .educational_policy__section dl dt:first-of-type, .container__article__body__section dl dd:first-of-type, .educational_policy__section dl dd:first-of-type {
        border-top: 0px;
        padding-top: 0px; } }

.head_1, .index__about__content > h2, .single__header__title {
  font-size: 28px;
  -ms-transform-origin: center left;
      transform-origin: center left;
  -ms-transform: scale(0.95, 1);
      transform: scale(0.95, 1);
  margin-bottom: 40px;
  letter-spacing: 1px;
  line-height: 40px; }

.head_2 {
  font-size: 24px;
  -ms-transform-origin: center left;
      transform-origin: center left;
  -ms-transform: scale(0.95, 1);
      transform: scale(0.95, 1);
  margin-bottom: 40px;
  letter-spacing: 1px; }

.head_3 {
  font-size: 15px;
  margin-bottom: 15px; }

@media screen and (max-width: 767px) {
  .head_1, .index__about__content > h2, .single__header__title {
    font-size: 24px;
    line-height: 34px; }
  .head_2 {
    font-size: 20px;
    margin-bottom: 24px; }
  .head_3 {
    font-size: 15px;
    margin-bottom: 15px; } }

.general_texting > *:first-child, .general_texting--small > *:first-child, .single__body > *:first-child {
  margin-top: 0px; }

.general_texting > *:last-child, .general_texting--small > *:last-child, .single__body > *:last-child {
  margin-bottom: 0px; }

.general_texting li, .general_texting--small li, .single__body li, .general_texting p, .general_texting--small p, .single__body p, .general_texting blockquote, .general_texting--small blockquote, .single__body blockquote {
  font-size: 15px;
  line-height: 32px; }

.general_texting p, .general_texting--small p, .single__body p, .general_texting ul, .general_texting--small ul, .single__body ul, .general_texting ol, .general_texting--small ol, .single__body ol, .general_texting blockquote, .general_texting--small blockquote, .single__body blockquote {
  margin: 24px 0; }

.general_texting img, .general_texting--small img, .single__body img,
.general_texting img.aligncenter, .general_texting--small img.aligncenter, .single__body img.aligncenter {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 12px auto; }

.general_texting img.alignleft, .general_texting--small img.alignleft, .single__body img.alignleft {
  display: block;
  width: auto;
  height: auto;
  margin: 0 24px 12px 0;
  max-width: 50%;
  float: left; }

.general_texting img.alignright, .general_texting--small img.alignright, .single__body img.alignright {
  display: block;
  width: auto;
  height: auto;
  margin: 0 0 12px 24px;
  max-width: 50%;
  float: right; }

.general_texting strong, .general_texting--small strong, .single__body strong {
  font-weight: 600; }

.general_texting em, .general_texting--small em, .single__body em {
  font-style: italic; }

.general_texting del, .general_texting--small del, .single__body del {
  text-decoration: line-through; }

.general_texting h1, .general_texting--small h1, .single__body h1 {
  font-size: 28px;
  line-height: 32px;
  margin-top: 48px;
  font-weight: 600; }

.general_texting h2, .general_texting--small h2, .single__body h2 {
  font-size: 26px;
  line-height: 32px;
  margin-top: 48px;
  font-weight: 600; }

.general_texting h3, .general_texting--small h3, .single__body h3 {
  font-size: 24px;
  line-height: 30px;
  margin-top: 40px;
  font-weight: 600; }

.general_texting h4, .general_texting--small h4, .single__body h4 {
  font-size: 20px;
  line-height: 28px;
  margin-top: 40px;
  font-weight: 600; }

.general_texting h5, .general_texting--small h5, .single__body h5 {
  font-size: 18px;
  line-height: 24px;
  font-weight: 600; }

.general_texting h6, .general_texting--small h6, .single__body h6 {
  font-size: 15px;
  line-height: 24px;
  font-weight: 600; }

.general_texting pre, .general_texting--small pre, .single__body pre {
  font-family: monospace; }

.general_texting ol, .general_texting--small ol, .single__body ol {
  list-style: decimal outside;
  padding: 0; }

.general_texting ul, .general_texting--small ul, .single__body ul {
  list-style: disc outside;
  padding: 0; }

.general_texting li ol, .general_texting--small li ol, .single__body li ol, .general_texting li ul, .general_texting--small li ul, .single__body li ul {
  margin: 0 0 0 20px; }

.general_texting blockquote, .general_texting--small blockquote, .single__body blockquote {
  padding: 8px 32px;
  background-color: #F7F7FA; }

.general_texting hr, .general_texting--small hr, .single__body hr {
  width: 50%;
  height: 1px;
  border: none;
  background-color: #D5D8DD;
  margin: 48px auto; }

.general_texting .gallery, .general_texting--small .gallery, .single__body .gallery {
  margin: 32px 0; }
  .general_texting .gallery .gallery__pager, .general_texting--small .gallery .gallery__pager, .single__body .gallery .gallery__pager, .general_texting .gallery .gallery__pager--thumbnail, .general_texting--small .gallery .gallery__pager--thumbnail, .single__body .gallery .gallery__pager--thumbnail {
    margin-top: 10px; }

.general_texting .media_embed, .general_texting--small .media_embed, .single__body .media_embed {
  width: 100%;
  height: 0px;
  padding-top: 56.25%;
  position: relative;
  margin: 32px 0; }
  .general_texting .media_embed iframe, .general_texting--small .media_embed iframe, .single__body .media_embed iframe {
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    margin: 0px; }

.general_texting iframe, .general_texting--small iframe, .single__body iframe {
  max-width: 100%;
  margin: 32px 0; }

.general_texting .wp-caption, .general_texting--small .wp-caption, .single__body .wp-caption {
  max-width: 100%;
  margin: 32px 0; }
  .general_texting .wp-caption .wp-caption-text, .general_texting--small .wp-caption .wp-caption-text, .single__body .wp-caption .wp-caption-text,
  .general_texting .wp-caption .wp-caption-dd, .general_texting--small .wp-caption .wp-caption-dd, .single__body .wp-caption .wp-caption-dd {
    font-size: 13px;
    color: #999;
    margin: 12px 0 24px; }

.general_texting .wp-caption.alignleft, .general_texting--small .wp-caption.alignleft, .single__body .wp-caption.alignleft {
  float: left;
  max-width: 50%;
  margin: 0 24px 12px 0; }
  .general_texting .wp-caption.alignleft .wp-caption-text, .general_texting--small .wp-caption.alignleft .wp-caption-text, .single__body .wp-caption.alignleft .wp-caption-text,
  .general_texting .wp-caption.alignleft .wp-caption-dd, .general_texting--small .wp-caption.alignleft .wp-caption-dd, .single__body .wp-caption.alignleft .wp-caption-dd {
    font-size: 13px;
    color: #999;
    margin: 12px 0 12px; }

.general_texting .wp-caption.alignright, .general_texting--small .wp-caption.alignright, .single__body .wp-caption.alignright {
  float: left;
  max-width: 50%;
  margin: 0 24px 12px 0; }
  .general_texting .wp-caption.alignright .wp-caption-text, .general_texting--small .wp-caption.alignright .wp-caption-text, .single__body .wp-caption.alignright .wp-caption-text,
  .general_texting .wp-caption.alignright .wp-caption-dd, .general_texting--small .wp-caption.alignright .wp-caption-dd, .single__body .wp-caption.alignright .wp-caption-dd {
    font-size: 13px;
    color: #999;
    margin: 12px 0 12px; }

.general_texting--small li, .general_texting--small p, .general_texting--small blockquote {
  font-size: 13px;
  line-height: 32px; }

.general_texting--small p, .general_texting--small ul, .general_texting--small ol, .general_texting--small blockquote {
  margin: 8px 0; }

.general_texting--small img,
.general_texting--small img.aligncenter {
  margin: 8px 0; }

.general_texting--small img.alignleft {
  margin: 0 8px 8px 0; }

.general_texting--small img.alignright {
  margin: 0 0 8px 8px; }

.general_texting--small h1, .general_texting--small h2, .general_texting--small h3, .general_texting--small h4, .general_texting--small h5, .general_texting--small h6 {
  font-size: 13px;
  line-height: 32px;
  font-weight: 600;
  margin: 8px 0; }

.general_texting--small li ol, .general_texting--small li ul {
  margin: 0 0 0 8px; }

.general_texting--small blockquote {
  padding: 8px 16px; }

.general_texting--small hr {
  margin: 18px auto; }

.general_texting--small .gallery,
.general_texting--small .media_embed {
  margin: 18px 0; }

.general_texting--small iframe {
  margin: 18px 0; }

.general_texting--small .wp-caption {
  margin: 18px 0; }
  .general_texting--small .wp-caption .wp-caption-text,
  .general_texting--small .wp-caption .wp-caption-dd {
    font-size: 12px;
    margin: 8px 0 12px; }

.general_texting--small .wp-caption.alignleft {
  margin: 0 12px 8px 0; }
  .general_texting--small .wp-caption.alignleft .wp-caption-text,
  .general_texting--small .wp-caption.alignleft .wp-caption-dd {
    font-size: 12px;
    margin: 8px 0 8px; }

.general_texting--small .wp-caption.alignright {
  margin: 0 12px 8px 0; }
  .general_texting--small .wp-caption.alignright .wp-caption-text,
  .general_texting--small .wp-caption.alignright .wp-caption-dd {
    font-size: 12px;
    margin: 8px 0 8px; }

@media screen and (max-width: 767px) {
  .general_texting ol, .general_texting--small ol, .single__body ol, .general_texting ul, .general_texting--small ul, .single__body ul {
    padding-left: 20px; }
  .general_texting hr, .general_texting--small hr, .single__body hr {
    width: 75%; } }

.header {
  width: 100%;
  height: 142px;
  position: absolute;
  left: 0px;
  top: 0px;
  z-index: 1;
  box-sizing: border-box;
  border-bottom: 1px solid #D5D8DD;
  padding-top: 6px;
  z-index: 100;
  background-color: #FFF; }
  .header.noDuration {
    transition-duration: 0s !important; }

html.stick_head .header {
  position: fixed;
  transition: transform 0.75s cubic-bezier(0.19, 1, 0.22, 1);
  -ms-transform: translate(0%, -100%);
      transform: translate(0%, -100%); }

html.draw_head .header,
html.prevent_hide .header {
  -ms-transform: translate(0%, 0px);
      transform: translate(0%, 0px); }

.header-line {
  width: 100%;
  height: 6px;
  background-color: #D5D8DD;
  position: fixed;
  left: 0px;
  top: 0px;
  z-index: 101; }

.header__container {
  width: 1152px;
  height: 100%;
  position: relative;
  margin: 0 auto; }

.header__logo {
  width: 72px;
  height: 72px;
  position: absolute;
  left: 0px;
  top: 32px;
  z-index: 1; }
  .header__logo a, .header__logo img {
    display: block; }

.header__gnav {
  position: absolute;
  right: 0px;
  bottom: 0px; }
  .header__gnav ul {
    position: relative;
    box-sizing: border-box;
    width: 1152px;
    padding-right: 66px;
    height: 100%;
    margin: 0 auto;
    font-size: 0px;
    text-align: right;
    transition: opacity .15s linear .2s, visibility 0s linear .2s;
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    visibility: visible; }
  .header__gnav li {
    display: inline-block;
    width: auto;
    height: 100%;
    margin: 0 20px;
    vertical-align: top; }
  .header__gnav a {
    position: relative;
    display: block;
    width: auto;
    height: 100%;
    font-size: 15px;
    line-height: 68px;
    color: #000;
    text-decoration: none; }
    .header__gnav a:after {
      content: "";
      display: block;
      width: 0%;
      height: 4px;
      background-color: #1B1BE0;
      position: absolute;
      right: 0px;
      bottom: -1px; }

.header__gnav__search {
  display: block;
  position: absolute;
  top: 0px;
  right: 20px;
  width: 40px;
  height: 68px;
  overflow: hidden;
  transition: width 0.5s cubic-bezier(0.19, 1, 0.22, 1);
  background-color: #FFF; }
  .header__gnav__search .header__gnav__search__icon {
    display: block;
    text-indent: 200%;
    white-space: nowrap;
    overflow: hidden;
    color: transparent;
    width: 40px;
    background-image: url(images/search.png);
    background-size: 14px 14px;
    background-repeat: no-repeat;
    background-position: center; }
  .header__gnav__search .header__gnav__search__input {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    width: 560px;
    height: 44px;
    box-sizing: border-box;
    font-family: YuMincho, 'Yu Mincho', serif;
    display: block;
    border: 1px solid #F7F9FC;
    border-radius: 0px;
    background-color: #F7F9FC;
    font-size: 15px;
    line-height: 26px;
    padding: 7px 12px;
    outline: 0;
    transition: border-color .1s linear, opacity .2s linear;
    position: absolute;
    top: 12px;
    left: 49px;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
    .header__gnav__search .header__gnav__search__input:focus {
      border-color: #1B1BE0; }
  .header__gnav__search .header__gnav__search__exec {
    display: block;
    width: 40px;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 633px;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    transition: opacity .2s linear; }
  .header__gnav__search .header__gnav__search__exec__btn {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    position: relative;
    border: none;
    padding: 0;
    background-color: transparent;
    font-family: YuMincho, 'Yu Mincho', serif;
    width: 40px;
    height: 100%;
    text-align: center;
    font-size: 15px;
    line-height: 68px;
    text-decoration: none;
    cursor: pointer;
    color: #000;
    outline: 0; }
  .header__gnav__search .header__gnav__search__icon:after,
  .header__gnav__search .header__gnav__search__exec:after {
    content: "";
    display: block;
    width: 0%;
    height: 4px;
    background-color: #1B1BE0;
    position: absolute;
    right: 0px;
    bottom: -1px; }

.header__gnav.search_open ul {
  transition: opacity .15s linear, visibility 0s linear .15s;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  pointer-events: none;
  visibility: hidden; }

.header__gnav.search_open .header__gnav__search {
  width: 675px; }
  .header__gnav.search_open .header__gnav__search .header__gnav__search__input {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    transition: border-color .1s linear, opacity .2s linear; }
  .header__gnav.search_open .header__gnav__search .header__gnav__search__exec {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    transition: opacity .3s linear .1s; }
  .header__gnav.search_open .header__gnav__search .header__gnav__search__icon {
    background-image: url(images/search_close.png); }

.header__gnav__currentitem, .outline .header__gnav__outline, .facility .header__gnav__outline, .department .header__gnav__department, .faculty .header__gnav__department, .classes .header__gnav__department, .projects .header__gnav__department, .prize .header__gnav__department, .admission .header__gnav__admission, .guideline .header__gnav__admission, .expenses .header__gnav__admission, .openhouse .header__gnav__admission, .student_program .header__gnav__admission, .career .header__gnav__department, .faq .header__gnav__admission, .graduates .header__gnav__admission, .inquiry .header__gnav__inquiry, .report .header__gnav__report, .disclosure .header__gnav__outline, .research .header__gnav__research, .guidance .header__gnav__admission, .educational_policy .header__gnav__department, .repository .header__gnav__department {
  color: #000 !important; }
  .header__gnav__currentitem a:after, .outline .header__gnav__outline a:after, .facility .header__gnav__outline a:after, .department .header__gnav__department a:after, .faculty .header__gnav__department a:after, .classes .header__gnav__department a:after, .projects .header__gnav__department a:after, .prize .header__gnav__department a:after, .admission .header__gnav__admission a:after, .guideline .header__gnav__admission a:after, .expenses .header__gnav__admission a:after, .openhouse .header__gnav__admission a:after, .student_program .header__gnav__admission a:after, .career .header__gnav__department a:after, .faq .header__gnav__admission a:after, .graduates .header__gnav__admission a:after, .inquiry .header__gnav__inquiry a:after, .report .header__gnav__report a:after, .disclosure .header__gnav__outline a:after, .research .header__gnav__research a:after, .guidance .header__gnav__admission a:after, .educational_policy .header__gnav__department a:after, .repository .header__gnav__department a:after {
    content: "";
    display: block;
    width: 100%;
    height: 4px;
    background-color: #1B1BE0;
    position: absolute;
    left: 0px;
    bottom: -1px; }

.header__subnav {
  width: auto;
  height: 50px;
  position: absolute;
  right: 0px;
  top: 0px;
  border-bottom: 2px solid #F7F9FC; }

.header__subnav__list {
  font-size: 0px;
  float: left; }
  .header__subnav__list li {
    display: inline-block;
    height: 50px;
    widows: auto;
    margin-right: 22px; }
  .header__subnav__list a {
    position: relative;
    display: block;
    width: auto;
    font-size: 13px;
    line-height: 50px;
    padding-left: 22px;
    color: #000;
    text-decoration: none; }
    .header__subnav__list a:before, .header__subnav__list a:after {
      content: "";
      display: block;
      width: 15px;
      height: 14px;
      background-size: 15px 14px;
      position: absolute;
      top: 17px;
      left: 0px; }
    .header__subnav__list a:before {
      background-image: url(images/arrow_gray.png);
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
    .header__subnav__list a:after {
      background-image: url(images/arrow_blue.png);
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }

.header__subnav__request {
  float: left;
  display: block;
  width: 128px;
  height: 50px;
  background-color: #D5D8DD;
  color: #000;
  text-decoration: none;
  font-size: 13px;
  line-height: 50px;
  position: relative;
  text-align: center; }
  .header__subnav__request:before {
    content: "";
    display: block;
    width: 0px;
    height: 100%;
    position: absolute;
    top: 0px;
    right: 0px;
    background-color: #1B1BE0;
    z-index: 0; }
  .header__subnav__request:after {
    content: "";
    display: block;
    width: 100%;
    height: 4px;
    background-color: #1B1BE0;
    position: absolute;
    left: 0px;
    bottom: 0px; }
  .header__subnav__request span {
    position: relative;
    z-index: 1; }

.header__subnav__lang {
  float: left;
  position: relative;
  height: 20px;
  padding: 15px 22px;
  line-height: 20px;
  font-size: 11px; }
  .header__subnav__lang a {
    display: inline-block;
    position: relative;
    color: #000;
    text-decoration: none;
    height: 20px;
    padding: 0 1px; }

html[lang="ja"] .header__subnav__lang__ja,
html[lang="en"] .header__subnav__lang__en {
  color: #1B1BE0; }
  html[lang="ja"] .header__subnav__lang__ja:after,
  html[lang="en"] .header__subnav__lang__en:after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #1B1BE0;
    position: absolute;
    left: 0px;
    bottom: -1px; }

html[lang="ja"] .header__subnav__lang__en:after,
html[lang="en"] .header__subnav__lang__ja:after {
  content: "";
  display: block;
  width: 0%;
  height: 1px;
  background-color: #1B1BE0;
  position: absolute;
  right: 0px;
  bottom: -1px; }

html:not(.touch) .header__subnav li a {
  transition: color .15s linear; }
  html:not(.touch) .header__subnav li a:before, html:not(.touch) .header__subnav li a:after {
    transition: transform .15s linear, opacity .15s linear; }
  html:not(.touch) .header__subnav li a:hover {
    color: #1B1BE0; }
    html:not(.touch) .header__subnav li a:hover:before {
      -ms-transform: translate(2px, 0);
          transform: translate(2px, 0);
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
    html:not(.touch) .header__subnav li a:hover:after {
      -ms-transform: translate(2px, 0);
          transform: translate(2px, 0);
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

html:not(.touch) .header__subnav__request {
  transition: color .15s linear; }
  html:not(.touch) .header__subnav__request:before {
    transition: width 0.25s cubic-bezier(0.19, 1, 0.22, 1); }
  html:not(.touch) .header__subnav__request:hover {
    color: #FFF; }
    html:not(.touch) .header__subnav__request:hover:before {
      width: 100%;
      left: 0px; }

html:not(.touch) .header__gnav li a,
html:not(.touch) .header__gnav__search a {
  transition: color .15s linear; }
  html:not(.touch) .header__gnav li a:after,
  html:not(.touch) .header__gnav__search a:after {
    transition: width 0.25s cubic-bezier(0.19, 1, 0.22, 1); }
  html:not(.touch) .header__gnav li a:hover,
  html:not(.touch) .header__gnav__search a:hover {
    color: #1B1BE0; }
    html:not(.touch) .header__gnav li a:hover:after,
    html:not(.touch) .header__gnav__search a:hover:after {
      width: 100%;
      left: 0px; }

html:not(.touch) .header__gnav__search__exec:after {
  transition: width 0.25s cubic-bezier(0.19, 1, 0.22, 1); }

html:not(.touch) .header__gnav__search__exec:hover:after {
  width: 100%;
  left: 0px; }

html:not(.touch) .header__gnav__search__exec .header__gnav__search__exec__btn {
  transition: color .15s linear; }
  html:not(.touch) .header__gnav__search__exec .header__gnav__search__exec__btn:hover {
    color: #1B1BE0; }

html:not(.touch)[lang="ja"] .header__subnav__lang__en,
html:not(.touch)[lang="en"] .header__subnav__lang__ja {
  transition: color .15s linear; }
  html:not(.touch)[lang="ja"] .header__subnav__lang__en:after,
  html:not(.touch)[lang="en"] .header__subnav__lang__ja:after {
    transition: width 0.25s cubic-bezier(0.19, 1, 0.22, 1); }
  html:not(.touch)[lang="ja"] .header__subnav__lang__en:hover,
  html:not(.touch)[lang="en"] .header__subnav__lang__ja:hover {
    color: #1B1BE0; }
    html:not(.touch)[lang="ja"] .header__subnav__lang__en:hover:after,
    html:not(.touch)[lang="en"] .header__subnav__lang__ja:hover:after {
      width: 100%;
      left: 0px; }

.sp_headtitle {
  display: none; }

@media screen and (max-width: 1212px) {
  .header__container {
    width: auto;
    margin: 0 30px; } }

@media screen and (max-width: 1023px) {
  .header__gnav li {
    margin: 0 8px; }
  .header__gnav a {
    font-size: 12px; }
  .header__subnav__list li {
    margin-right: 16px; }
  .header__subnav__list a {
    font-size: 11px; }
  .header__gnav__search {
    right: 20px; }
    .header__gnav__search .header__gnav__search__input {
      width: 495px;
      font-size: 12px;
      left: 48px; }
    .header__gnav__search .header__gnav__search__exec {
      left: 564px; }
    .header__gnav__search .header__gnav__search__exec__btn {
      font-size: 12px; }
  .header__gnav.search_open .header__gnav__search {
    width: 608px; } }

@media screen and (max-width: 767px) {
  .header {
    width: 100%;
    height: 60px;
    position: relative !important;
    z-index: 1;
    box-sizing: border-box;
    border-bottom: 1px solid #D5D8DD;
    padding-top: 4px;
    -ms-transform: translate(0px, 0px) !important;
        transform: translate(0px, 0px) !important; }
  .header__line {
    position: absolute;
    height: 4px; }
  .header__container {
    width: 100%;
    margin: 0; }
  .header__logo {
    width: 112px;
    height: 112px;
    position: absolute;
    left: 0px;
    top: 0px;
    z-index: 1; }
    .header__logo a {
      width: 64px;
      height: 64px;
      padding: 24px;
      background-color: #FFF; }
    .header__logo img {
      display: block;
      width: 64px;
      height: 64px; }
  .header__subnav {
    display: none; }
  .header__gnav {
    position: absolute;
    right: 0px;
    bottom: 0px;
    width: calc(100% - 112px);
    height: 56px; }
    .header__gnav ul {
      width: 100%;
      height: 46px;
      margin-top: 10px;
      padding: 0px; }
    .header__gnav li {
      display: none;
      margin: 0 24px 0 0; }
    .header__gnav a {
      font-size: 15px;
      line-height: 46px;
      color: #000;
      text-decoration: none; }
    .header__gnav .header__gnav__search {
      display: none; }
  .header__gnav__currentitem, .outline .header__gnav__outline, .facility .header__gnav__outline, .department .header__gnav__department, .faculty .header__gnav__department, .classes .header__gnav__department, .projects .header__gnav__department, .prize .header__gnav__department, .admission .header__gnav__admission, .guideline .header__gnav__admission, .expenses .header__gnav__admission, .openhouse .header__gnav__admission, .student_program .header__gnav__admission, .career .header__gnav__department, .faq .header__gnav__admission, .graduates .header__gnav__admission, .inquiry .header__gnav__inquiry, .report .header__gnav__report, .disclosure .header__gnav__outline, .research .header__gnav__research, .guidance .header__gnav__admission, .educational_policy .header__gnav__department, .repository .header__gnav__department {
    display: inline-block; }
    .header__gnav__currentitem a:after, .outline .header__gnav__outline a:after, .facility .header__gnav__outline a:after, .department .header__gnav__department a:after, .faculty .header__gnav__department a:after, .classes .header__gnav__department a:after, .projects .header__gnav__department a:after, .prize .header__gnav__department a:after, .admission .header__gnav__admission a:after, .guideline .header__gnav__admission a:after, .expenses .header__gnav__admission a:after, .openhouse .header__gnav__admission a:after, .student_program .header__gnav__admission a:after, .career .header__gnav__department a:after, .faq .header__gnav__admission a:after, .graduates .header__gnav__admission a:after, .inquiry .header__gnav__inquiry a:after, .report .header__gnav__report a:after, .disclosure .header__gnav__outline a:after, .research .header__gnav__research a:after, .guidance .header__gnav__admission a:after, .educational_policy .header__gnav__department a:after, .repository .header__gnav__department a:after {
      bottom: -3px; }
  .sp_headtitle {
    display: block;
    width: auto;
    height: 46px;
    position: absolute;
    right: 24px;
    top: 13px;
    font-size: 15px;
    line-height: 46px;
    z-index: 90; }
    .sp_headtitle:after {
      content: "";
      display: block;
      width: 100%;
      height: 4px;
      background-color: #1B1BE0;
      position: absolute;
      left: 0px;
      bottom: -3px; } }

.footer {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  border-top: 1px solid #D5D8DD;
  padding: 122px 0 110px; }

.footer__container {
  width: 1152px;
  height: 232px;
  position: relative;
  margin: 0 auto; }

.footer__colophone {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 388px;
  height: auto; }
  .footer__colophone__title img {
    display: block; }
  .footer__colophone__address {
    font-size: 12px;
    line-height: 20px;
    margin: 24px 0 10px; }
  .footer__colophone__map, .facility__rist__outline__detail__text.hasLink > a {
    position: relative;
    display: inline-block;
    font-size: 12px;
    line-height: 20px;
    color: #000;
    text-decoration: none; }
    .footer__colophone__map:before, .facility__rist__outline__detail__text.hasLink > a:before {
      content: "";
      display: block;
      width: 0%;
      height: 1px;
      background-color: #1B1BE0;
      position: absolute;
      right: 0px;
      bottom: -4px; }
    .footer__colophone__map span, .facility__rist__outline__detail__text.hasLink > a span {
      display: inline-block;
      position: relative;
      padding-left: 14px; }
      .footer__colophone__map span:before, .facility__rist__outline__detail__text.hasLink > a span:before, .footer__colophone__map span:after, .facility__rist__outline__detail__text.hasLink > a span:after {
        content: "";
        display: inline-block;
        position: absolute;
        left: 0px;
        top: 4px;
        width: 8px;
        height: 12px;
        background-size: 8px 12px; }
      .footer__colophone__map span:before, .facility__rist__outline__detail__text.hasLink > a span:before {
        background-image: url(images/footer_map.png);
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
      .footer__colophone__map span:after, .facility__rist__outline__detail__text.hasLink > a span:after {
        background-image: url(images/footer_map_blue.png);
        opacity: 0;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }

.footer__nav {
  position: absolute;
  right: 0px;
  top: 0px;
  width: auto;
  height: auto;
  overflow: hidden; }
  .footer__nav ul {
    font-size: 0px;
    height: auto;
    text-align: right;
    position: relative;
    right: -28px; }
  .footer__nav li {
    display: inline-block; }
    .footer__nav li:after {
      content: "/";
      display: inline-block;
      font-size: 12px;
      line-height: 20px;
      width: 28px;
      text-align: center; }
  .footer__nav a {
    display: inline-block;
    position: relative;
    font-size: 12px;
    line-height: 20px;
    color: #000;
    text-decoration: none; }
    .footer__nav a:before {
      content: "";
      display: block;
      width: 0%;
      height: 1px;
      background-color: #1B1BE0;
      position: absolute;
      right: 0px;
      bottom: -4px; }

.footer__lang {
  position: absolute;
  left: 0px;
  bottom: 0px;
  height: 32px;
  padding-left: 120px; }
  .footer__lang small {
    font-size: 12px;
    line-height: 32px; }
  .footer__lang__select {
    width: 80px;
    height: 32px;
    position: absolute;
    left: 0px;
    top: 0px; }
  .footer__lang__select__ja, .footer__lang__select__en {
    display: block;
    width: 40px;
    height: 32px;
    position: relative;
    float: left;
    font-size: 12px;
    line-height: 32px;
    text-align: center;
    text-decoration: none;
    color: #969BA3; }
    .footer__lang__select__ja:after, .footer__lang__select__en:after {
      content: "";
      display: block;
      position: absolute;
      left: 0px;
      bottom: -4px;
      width: 100%;
      height: 4px;
      box-sizing: border-box;
      border-bottom: 1px solid #D5D8DD; }
    .footer__lang__select__ja:before, .footer__lang__select__en:before {
      content: "";
      display: block;
      position: absolute;
      right: 0px;
      bottom: -4px;
      width: 0%;
      height: 4px;
      box-sizing: border-box;
      border-bottom: 2px solid #1B1BE0;
      z-index: 1; }

html[lang="ja"] .footer__lang__select__ja,
html[lang="en"] .footer__lang__select__en {
  color: #000; }
  html[lang="ja"] .footer__lang__select__ja:after,
  html[lang="en"] .footer__lang__select__en:after {
    border-bottom: 2px solid #1B1BE0; }

.footer__sns {
  position: absolute;
  right: 0px;
  bottom: 0px;
  height: 32px; }
  .footer__sns__fb, .footer__sns__tw {
    position: relative;
    display: block;
    width: 32px;
    height: 32px;
    background-size: 32px 32px;
    display: block;
    text-indent: 200%;
    white-space: nowrap;
    overflow: hidden;
    color: transparent;
    float: left;
    margin-left: 12px; }
    .footer__sns__fb:before, .footer__sns__tw:before {
      content: "";
      width: 32px;
      height: 32px;
      background-size: 32px 32px;
      position: absolute;
      left: 0px;
      top: 0px;
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
  .footer__sns__fb {
    background-image: url(images/sns_fb.png); }
    .footer__sns__fb:before {
      background-image: url(images/sns_fb_blue.png); }
  .footer__sns__tw {
    background-image: url(images/sns_tw.png); }
    .footer__sns__tw:before {
      background-image: url(images/sns_tw_blue.png); }

html:not(.touch) .footer__nav a {
  transition: color .15s linear; }
  html:not(.touch) .footer__nav a:before {
    transition: width 0.25s cubic-bezier(0.19, 1, 0.22, 1); }
  html:not(.touch) .footer__nav a:hover {
    color: #1B1BE0; }
    html:not(.touch) .footer__nav a:hover:before {
      width: 100%;
      left: 0px; }

html:not(.touch) .footer__colophone__map:before, html:not(.touch) .facility__rist__outline__detail__text.hasLink > a:before {
  transition: width 0.25s cubic-bezier(0.19, 1, 0.22, 1); }

html:not(.touch) .footer__colophone__map span, html:not(.touch) .facility__rist__outline__detail__text.hasLink > a span {
  transition: color .15s linear; }
  html:not(.touch) .footer__colophone__map span:before, html:not(.touch) .facility__rist__outline__detail__text.hasLink > a span:before, html:not(.touch) .footer__colophone__map span:after, html:not(.touch) .facility__rist__outline__detail__text.hasLink > a span:after {
    transition: opacity .15s linear; }

html:not(.touch) .footer__colophone__map:hover:before, html:not(.touch) .facility__rist__outline__detail__text.hasLink > a:hover:before {
  left: 0px;
  width: 100%; }

html:not(.touch) .footer__colophone__map:hover span, html:not(.touch) .facility__rist__outline__detail__text.hasLink > a:hover span {
  color: #1B1BE0; }
  html:not(.touch) .footer__colophone__map:hover span:before, html:not(.touch) .facility__rist__outline__detail__text.hasLink > a:hover span:before {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
  html:not(.touch) .footer__colophone__map:hover span:after, html:not(.touch) .facility__rist__outline__detail__text.hasLink > a:hover span:after {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

html:not(.touch) .footer__sns__fb:before,
html:not(.touch) .footer__sns__tw:before {
  transition: opacity .15s linear; }

html:not(.touch) .footer__sns__fb:hover:before,
html:not(.touch) .footer__sns__tw:hover:before {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

html:not(.touch)[lang="ja"] .footer__lang__select__en,
html:not(.touch)[lang="en"] .footer__lang__select__ja {
  transition: color .15s linear; }
  html:not(.touch)[lang="ja"] .footer__lang__select__en:before,
  html:not(.touch)[lang="en"] .footer__lang__select__ja:before {
    transition: width 0.25s cubic-bezier(0.19, 1, 0.22, 1); }
  html:not(.touch)[lang="ja"] .footer__lang__select__en:hover,
  html:not(.touch)[lang="en"] .footer__lang__select__ja:hover {
    color: #1B1BE0; }
    html:not(.touch)[lang="ja"] .footer__lang__select__en:hover:before,
    html:not(.touch)[lang="en"] .footer__lang__select__ja:hover:before {
      width: 100%;
      left: 0px; }

@media screen and (max-width: 1212px) {
  .footer__container {
    width: auto;
    margin: 0 30px; } }

@media screen and (max-width: 1050px) {
  .footer__nav {
    width: 300px; } }

@media screen and (max-width: 767px) {
  .footer {
    padding: 40px 0 120px; }
  .footer__container {
    width: auto;
    height: auto;
    margin: 0 24px; }
  .footer__colophone {
    position: relative;
    width: auto; }
    .footer__colophone__title img {
      width: 264px;
      height: 34px; }
    .footer__colophone__address {
      font-size: 11px;
      line-height: 18px;
      margin: 16px 0 4px; }
    .footer__colophone__map, .facility__rist__outline__detail__text.hasLink > a {
      position: relative;
      display: inline-block;
      font-size: 12px;
      line-height: 20px;
      color: #000;
      text-decoration: none; }
      .footer__colophone__map span, .facility__rist__outline__detail__text.hasLink > a span {
        padding-left: 14px;
        position: relative;
        display: inline-block; }
        .footer__colophone__map span:before, .facility__rist__outline__detail__text.hasLink > a span:before, .footer__colophone__map span:after, .facility__rist__outline__detail__text.hasLink > a span:after {
          content: "";
          display: inline-block;
          position: absolute;
          left: 0px;
          top: 4px;
          width: 8px;
          height: 12px;
          background-size: 8px 12px; }
        .footer__colophone__map span:before, .facility__rist__outline__detail__text.hasLink > a span:before {
          background-image: url(images/footer_map.png);
          opacity: 1;
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
        .footer__colophone__map span:after, .facility__rist__outline__detail__text.hasLink > a span:after {
          background-image: url(images/footer_map_blue.png);
          opacity: 0;
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
  .footer__nav {
    position: relative;
    right: 0px;
    top: 0px;
    width: auto;
    height: auto;
    overflow: hidden;
    margin-top: 24px; }
    .footer__nav ul {
      font-size: 0px;
      height: auto;
      text-align: left;
      position: relative;
      right: auto;
      left: -28px; }
    .footer__nav li {
      display: inline-block; }
      .footer__nav li:after {
        display: none; }
      .footer__nav li:before {
        content: "/";
        display: inline-block;
        font-size: 12px;
        line-height: 20px;
        width: 28px;
        text-align: center; }
  .footer__sns {
    position: relative;
    right: 0px;
    bottom: 0px;
    height: 32px;
    margin-top: 26px; }
    .footer__sns__fb, .footer__sns__tw {
      margin: 0 12px 0 0; }
  .footer__lang {
    position: relative;
    left: 0px;
    bottom: 0px;
    height: auto;
    padding-left: 104px;
    margin-top: 30px; }
    .footer__lang small {
      display: block;
      font-size: 10px;
      line-height: 14px;
      padding: 10px 0 0 0; }
    .footer__lang__select {
      width: 80px;
      height: 32px;
      position: absolute;
      left: 0px;
      top: 0px; }
    .footer__lang__select__ja, .footer__lang__select__en {
      display: block;
      width: 40px;
      height: 32px;
      position: relative;
      float: left;
      font-size: 12px;
      line-height: 32px;
      text-align: center;
      text-decoration: none;
      color: #969BA3; }
      .footer__lang__select__ja:after, .footer__lang__select__en:after {
        content: "";
        display: block;
        position: absolute;
        left: 0px;
        bottom: -4px;
        width: 100%;
        height: 4px;
        box-sizing: border-box;
        border-bottom: 1px solid #D5D8DD; } }

.newsarticlelist {
  position: relative;
  width: 100%;
  height: 248px; }

.newsarticlelist__item {
  position: relative;
  width: 20%;
  height: 248px;
  float: left;
  z-index: 0;
  margin-left: -1px; }
  .newsarticlelist__item:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    border-width: 1px;
    border-style: solid;
    position: absolute;
    left: 0px;
    top: 0px;
    z-index: 0;
    border-color: #D5D8DD; }
  .newsarticlelist__item > a {
    box-sizing: border-box;
    display: block;
    width: 100%;
    height: 100%;
    text-decoration: none;
    color: #000;
    position: relative;
    padding: 164px 22px 0px 22px;
    z-index: 2; }

.newsarticlelist__item__thumb, .newsarticlelist__item__thumb--nothumb {
  width: 100%;
  height: 115px;
  position: absolute;
  left: 0px;
  top: 0px;
  background-color: #D5D8DD;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat; }

.newsarticlelist__item__thumb--nothumb {
  background-color: #1B1BE0;
  background-image: url(images/placeholder_logo.png);
  background-size: 52px 52px;
  background-position: center;
  background-repeat: no-repeat; }

.newsarticlelist__item__cat {
  position: absolute;
  left: 22px;
  top: 130px;
  border: 1px solid #1B1BE0;
  padding: 4px 8px;
  font-size: 12px;
  line-height: 12px;
  color: #1B1BE0; }
  @media (min-width: 768px) {
    .newsarticlelist__item__cat {
      font-size: 11px;
      padding: 4px 5px; } }

.newsarticlelist__item__date {
  position: absolute;
  top: 130px;
  right: 22px;
  color: #969BA3;
  text-align: right;
  font-size: 13px;
  line-height: 14px;
  padding: 4px 0; }

.newsarticlelist__item__excerpt {
  font-size: 13px;
  line-height: 24px;
  height: 48px;
  overflow: hidden; }

.newsarticlelist__more {
  position: relative;
  display: block;
  width: 20%;
  height: 248px;
  background-color: #D5D8DD;
  float: left;
  color: #000;
  text-align: center;
  line-height: 248px;
  text-decoration: none;
  font-size: 13px; }
  .newsarticlelist__more:before {
    content: "";
    display: block;
    width: 0%;
    height: 100%;
    position: absolute;
    right: 0px;
    top: 0px;
    background-color: #1B1BE0; }
  .newsarticlelist__more span {
    display: inline-block;
    position: relative;
    z-index: 1; }
    .newsarticlelist__more span:before {
      content: "";
      display: inline-block;
      width: 15px;
      height: 14px;
      background-image: url(images/arrow_white.png);
      background-size: 15px 14px;
      vertical-align: middle;
      margin-right: 10px;
      position: absolute;
      top: 50%;
      margin-top: -8px;
      left: -24px; }

html:not(.touch) .newsarticlelist__item {
  transition: z-index 0s linear .15s, color .15s linear; }
  html:not(.touch) .newsarticlelist__item > a {
    transition: color .15s linear; }
  html:not(.touch) .newsarticlelist__item:before {
    transition: border-color .15s linear; }
  html:not(.touch) .newsarticlelist__item:hover {
    transition-delay: 0s;
    z-index: 1; }
    html:not(.touch) .newsarticlelist__item:hover > a {
      color: #1B1BE0; }
    html:not(.touch) .newsarticlelist__item:hover:before {
      border-color: #1B1BE0; }

html:not(.touch) .newsarticlelist__more {
  transition: color .15s linear; }
  html:not(.touch) .newsarticlelist__more:before {
    transition: width 0.25s cubic-bezier(0.19, 1, 0.22, 1);
    width: 0%; }
  html:not(.touch) .newsarticlelist__more span:before {
    transition: transform .15s linear; }
  html:not(.touch) .newsarticlelist__more:hover {
    color: #FFF; }
    html:not(.touch) .newsarticlelist__more:hover:before {
      width: 100%;
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
      left: 0px; }
    html:not(.touch) .newsarticlelist__more:hover span:before {
      -ms-transform: translate(2px, 0);
          transform: translate(2px, 0); }

@media screen and (min-width: 1024px) and (max-width: 1180px) {
  .newsarticlelist__item__date span {
    display: none; } }

@media screen and (min-width: 834px) and (max-width: 960px) {
  .newsarticlelist__item__date span {
    display: none; } }

@media screen and (max-width: 1023px) {
  .newsarticlelist__item {
    width: 25%; }
    .newsarticlelist__item:nth-of-type(4) {
      display: none; }
  .newsarticlelist__more {
    width: 25%; } }

@media screen and (max-width: 832px) {
  .newsarticlelist__item {
    width: 33.3333%; }
    .newsarticlelist__item:nth-of-type(3) {
      display: none; }
  .newsarticlelist__more {
    width: 33.3333%; } }

@media screen and (max-width: 767px) {
  .newsarticlelist {
    width: 100%;
    height: auto; }
  .newsarticlelist__item {
    position: relative;
    width: 100%;
    height: 245px;
    float: none;
    z-index: 0;
    margin-left: 0px;
    margin-top: -1px; }
    .newsarticlelist__item:nth-of-type(4), .newsarticlelist__item:nth-of-type(3) {
      display: block; }
    .newsarticlelist__item > a {
      box-sizing: border-box;
      display: block;
      width: 100%;
      height: 100%;
      text-decoration: none;
      color: #000;
      position: relative;
      padding: 180px 22px 20px 22px;
      z-index: 2; }
  .newsarticlelist__item__thumb, .newsarticlelist__item__thumb--nothumb {
    height: 135px; }
  .newsarticlelist__item__thumb--nothumb {
    background-size: 64px 64px; }
  .newsarticlelist__item__excerpt {
    height: 48px;
    width: 100%;
    overflow: hidden; }
  .newsarticlelist__item__cat,
  .newsarticlelist__item__date {
    top: 150px; }
  .newsarticlelist__more {
    display: block;
    width: 100%;
    height: 64px;
    float: none;
    color: #000;
    line-height: 64px; }
    .newsarticlelist__more:before {
      content: "";
      display: block;
      width: 0%;
      height: 100%;
      position: absolute;
      left: 0px;
      top: 0px;
      background-color: #1B1BE0; } }

.masonryarticlelist {
  position: relative; }
  .masonryarticlelist:after {
    content: "";
    display: block;
    width: 0px;
    height: 0px;
    float: none;
    clear: both;
    visibility: hidden; }

.masonryarticlelist__item {
  position: relative;
  box-sizing: border-box;
  width: 288px;
  height: auto;
  float: left;
  background-color: #FFF; }
  .masonryarticlelist__item:before {
    content: "";
    display: block;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    border-width: 0px 0 4px 0;
    border-style: solid;
    border-color: #D5D8DD;
    position: absolute;
    left: 0px;
    top: 0px;
    z-index: 0; }
  .masonryarticlelist__item > a {
    display: block;
    width: 100%;
    height: auto;
    position: relative;
    z-index: 1;
    color: #000;
    text-decoration: none; }

.masonryarticlelist__item__meta {
  line-height: 18px;
  margin: 2px 0 2px; }

.masonryarticlelist__item__image {
  display: block;
  width: 100%;
  height: auto; }

.masonryarticlelist__item__imageplaceholder {
  display: block;
  width: 100%;
  height: 0px;
  padding-top: 62.5%;
  background-color: #D5D8DD;
  background-image: url(images/placeholder_logo.png);
  background-size: 73px 73px;
  background-repeat: no-repeat;
  background-position: center; }

.masonryarticlelist__item__body {
  position: relative;
  padding: 12px 25px 72px; }

.masonryarticlelist__item__period, .masonryarticlelist__item__period--ongoing, .masonryarticlelist__item__period--upcoming, .masonryarticlelist__item__period--expired {
  display: inline-block;
  box-sizing: border-box;
  width: auto;
  height: 25px;
  padding: 3px 10px 2px;
  font-size: 13px;
  line-height: 20px;
  letter-spacing: 1px;
  color: #FFF;
  background-color: #969BA3;
  position: absolute;
  left: 23px;
  top: -25px; }

.masonryarticlelist__item__period--ongoing {
  background-color: #1B1BE0; }

.masonryarticlelist__item__cat {
  display: inline-block;
  color: #1B1BE0;
  font-size: 12px;
  line-height: 16px;
  margin-right: 2px;
  margin-bottom: 4px;
  padding: 2px 0px;
  /*
	display: inline-block;
	color: $blue;
	font-size: 12px;
	line-height: 18px;
	height: 18px;
	margin-right: 14px;
	max-width: calc(100% - 108px);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	vertical-align: middle;
	*/ }

.masonryarticlelist__item__date {
  display: inline-block;
  color: #969BA3;
  font-size: 12px;
  line-height: 18px;
  height: 18px;
  width: 88px;
  vertical-align: middle;
  white-space: nowrap; }

.masonryarticlelist__item__title {
  font-size: 18px;
  line-height: 26px; }

.masonryarticlelist__more {
  display: block;
  width: 288px;
  height: 288px;
  background-color: #D5D8DD;
  color: #000;
  font-size: 13px;
  text-align: center;
  line-height: 288px; }
  .masonryarticlelist__more:before {
    content: "";
    display: block;
    width: 0%;
    height: 100%;
    position: absolute;
    right: 0px;
    top: 0px;
    background-color: #1B1BE0; }
  .masonryarticlelist__more span {
    display: inline-block;
    position: relative;
    z-index: 1; }
    .masonryarticlelist__more span:before {
      content: "";
      display: inline-block;
      width: 15px;
      height: 14px;
      background-image: url(images/arrow_white.png);
      background-size: 15px 14px;
      vertical-align: middle;
      margin-right: 10px;
      position: absolute;
      top: 50%;
      margin-top: -8px;
      left: -24px; }

html:not(.touch) .masonryarticlelist__item > a {
  transition: color .15s linear; }

html:not(.touch) .masonryarticlelist__item:before {
  transition: border-color 0.15s linear, border-width 0.25s cubic-bezier(0.19, 1, 0.22, 1); }

html:not(.touch) .masonryarticlelist__item:hover > a {
  color: #1B1BE0; }

html:not(.touch) .masonryarticlelist__item:hover:before {
  border-color: #1B1BE0;
  border-width: 0px 0 8px 0; }

html:not(.touch) .masonryarticlelist__more {
  transition: color .15s linear; }
  html:not(.touch) .masonryarticlelist__more:before {
    transition: width 0.25s cubic-bezier(0.19, 1, 0.22, 1);
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    width: 0%; }
  html:not(.touch) .masonryarticlelist__more span:before {
    transition: transform .15s linear; }
  html:not(.touch) .masonryarticlelist__more:hover {
    color: #FFF; }
    html:not(.touch) .masonryarticlelist__more:hover:before {
      width: 100%;
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
      left: 0px; }
    html:not(.touch) .masonryarticlelist__more:hover span:before {
      -ms-transform: translate(2px, 0);
          transform: translate(2px, 0); }

@media screen and (max-width: 1212px) {
  .masonryarticlelist__item {
    width: 33.3333%; }
  .masonryarticlelist__item__image {
    width: 100%;
    height: auto; }
  .masonryarticlelist__more {
    width: 33.3333%;
    height: 0px;
    padding-top: 33.3333%; }
    .masonryarticlelist__more span {
      display: inline-block;
      position: relative;
      z-index: 1;
      position: absolute;
      left: 50%;
      top: 50%;
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }
      .masonryarticlelist__more span:before {
        content: "";
        display: inline-block;
        width: 15px;
        height: 14px;
        background-image: url(images/arrow_white.png);
        background-size: 15px 14px;
        vertical-align: middle;
        margin-right: 10px;
        position: absolute;
        top: 50%;
        margin-top: -8px;
        left: -24px; } }

@media screen and (max-width: 767px) {
  .masonryarticlelist {
    width: calc(100% + 48px);
    margin-left: -24px; }
  .masonryarticlelist__item {
    width: 50%; }
    .masonryarticlelist__item:before {
      border-width: 0px 0px 4px 0px; }
  .masonryarticlelist__item__meta {
    margin: 2px 0 3px; }
  .masonryarticlelist__item__period, .masonryarticlelist__item__period--ongoing, .masonryarticlelist__item__period--upcoming, .masonryarticlelist__item__period--expired {
    height: 20px;
    font-size: 11px;
    left: 10px;
    top: -20px;
    line-height: 12px;
    padding: 4px 8px 4px; }
  .masonryarticlelist__item__body {
    padding: 8px 12px 32px; }
  .masonryarticlelist__item__image {
    width: 100%;
    height: auto; }
  .masonryarticlelist__more {
    display: block;
    width: 50%;
    height: 0px;
    padding-top: 50%;
    background-color: #D5D8DD;
    color: #000;
    font-size: 13px;
    text-align: center;
    line-height: 14px;
    position: relative; }
    .masonryarticlelist__more:before {
      content: "";
      display: block;
      width: 0%;
      height: 100%;
      position: absolute;
      left: 0px;
      top: 0px;
      background-color: #1B1BE0; }
  .masonryarticlelist__item__cat {
    margin-bottom: 0px; }
  .masonryarticlelist__item__date {
    display: block;
    font-size: 11px;
    line-height: 18px;
    width: auto; }
  .masonryarticlelist__item__title {
    font-size: 14px;
    line-height: 20px;
    margin-top: 5px; } }

.blockarticlelist__container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  -ms-flex-pack: start;
      justify-content: flex-start; }

.blockarticlelist__empty {
  text-align: center;
  min-height: 300px; }

.blockarticlelist__item {
  position: relative;
  width: calc(33.3333% - 16px);
  height: auto;
  margin-right: 24px; }
  .blockarticlelist__item:nth-of-type(3) {
    margin-right: 0px; }
  .blockarticlelist__item a {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: column nowrap;
        flex-flow: column nowrap;
    width: 100%;
    height: 100%;
    z-index: 1;
    color: #000;
    text-decoration: none; }
    .blockarticlelist__item a:before {
      content: "";
      display: block;
      box-sizing: border-box;
      width: 100%;
      height: 100%;
      border-width: 0px 1px 4px 1px;
      border-style: solid;
      border-color: #D5D8DD;
      position: absolute;
      left: 0px;
      top: 0px;
      z-index: 2; }

.blockarticlelist__item__image {
  display: block;
  width: 100%;
  height: auto;
  position: relative;
  z-index: 3;
  -ms-flex: 0 0 auto;
      flex: 0 0 auto; }

.blockarticlelist__item__imageplaceholder {
  display: block;
  width: 100%;
  height: 0px;
  padding-top: 62.5%;
  background-color: #D5D8DD;
  background-image: url(images/placeholder_logo.png);
  background-size: 73px 73px;
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
  z-index: 3; }

.blockarticlelist__item__body {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: column nowrap;
      flex-flow: column nowrap;
  box-sizing: border-box;
  width: 100%;
  min-height: 192px;
  padding: 12px 25px 18px;
  z-index: 3;
  -ms-flex: 1 0 auto;
      flex: 1 0 auto; }

.blockarticlelist__item__period, .blockarticlelist__item__period--ongoing, .blockarticlelist__item__period--upcoming, .blockarticlelist__item__period--expired {
  display: inline-block;
  box-sizing: border-box;
  width: auto;
  height: 25px;
  padding: 3px 10px 2px;
  font-size: 13px;
  line-height: 20px;
  letter-spacing: 1px;
  color: #FFF;
  background-color: #969BA3;
  position: absolute;
  left: 23px;
  top: -25px; }

.blockarticlelist__item__period--ongoing {
  background-color: #1B1BE0; }

.blockarticlelist__item__cat {
  display: inline-block;
  color: #1B1BE0;
  font-size: 12px;
  line-height: 18px;
  margin-right: 12px; }

.blockarticlelist__item__date {
  display: inline-block;
  color: #969BA3;
  font-size: 12px;
  line-height: 18px;
  vertical-align: middle; }
  .blockarticlelist__item__date:before {
    content: "";
    display: inline-block;
    width: 16px;
    line-height: 18px;
    text-align: center; }

.blockarticlelist__item__meta {
  line-height: 18px;
  margin: 7px 0;
  position: relative;
  overflow: hidden;
  -ms-flex: 0 0 auto;
      flex: 0 0 auto; }

.blockarticlelist__item__meta__category {
  position: relative;
  left: -16px; }
  .blockarticlelist__item__meta__category .blockarticlelist__item__cat {
    position: relative;
    margin-right: 0px;
    vertical-align: middle; }
    .blockarticlelist__item__meta__category .blockarticlelist__item__cat:before {
      content: "/";
      display: inline-block;
      width: 16px;
      line-height: 18px;
      text-align: center; }

.blockarticlelist__item__title {
  font-size: 18px;
  line-height: 26px;
  margin-bottom: 16px;
  -ms-flex: 1 0 auto;
      flex: 1 0 auto; }

.blockarticlelist__item__tags {
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
  line-height: 20px; }
  .blockarticlelist__item__tags span {
    font-size: 12px;
    display: inline-block;
    margin-right: 12px;
    color: #5E6166; }

.blockarticlelist--2col .blockarticlelist__item {
  width: calc(50% - 12px);
  margin-right: 24px;
  margin-bottom: 36px; }
  .blockarticlelist--2col .blockarticlelist__item:nth-of-type(odd) {
    clear: both; }
  .blockarticlelist--2col .blockarticlelist__item:nth-of-type(even) {
    margin-right: 0px; }

.blockarticlelist__more {
  position: relative;
  display: block;
  width: calc(33.3333% - 16px);
  height: 64px;
  background-color: #D5D8DD;
  text-align: center;
  color: #000;
  text-decoration: none;
  line-height: 64px;
  margin: 50px auto 0;
  clear: both;
  font-size: 13px; }
  .blockarticlelist__more:before {
    content: "";
    display: block;
    width: 0%;
    height: 100%;
    position: absolute;
    right: 0px;
    top: 0px;
    background-color: #1B1BE0; }
  .blockarticlelist__more span {
    display: block;
    width: 100%;
    position: relative;
    z-index: 1; }
    .blockarticlelist__more span:before {
      content: "";
      display: inline-block;
      width: 15px;
      height: 14px;
      background-image: url(images/arrow_white.png);
      background-size: 15px 14px;
      vertical-align: middle;
      margin-right: 10px;
      position: absolute;
      top: 50%;
      margin-top: -8px;
      left: 24px; }

html:not(.touch) .blockarticlelist__item > a {
  transition: color .15s linear; }
  html:not(.touch) .blockarticlelist__item > a:before {
    transition: border-color 0.15s linear, border-width 0.25s cubic-bezier(0.19, 1, 0.22, 1); }

html:not(.touch) .blockarticlelist__item:hover > a {
  color: #1B1BE0; }
  html:not(.touch) .blockarticlelist__item:hover > a:before {
    border-color: #1B1BE0;
    border-width: 0px 1px 8px 1px; }

html:not(.touch) .blockarticlelist__more {
  transition: color .15s linear; }
  html:not(.touch) .blockarticlelist__more:before {
    transition: width 0.25s cubic-bezier(0.19, 1, 0.22, 1);
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    width: 0%; }
  html:not(.touch) .blockarticlelist__more span:before {
    transition: transform .15s linear; }
  html:not(.touch) .blockarticlelist__more:hover {
    color: #FFF; }
    html:not(.touch) .blockarticlelist__more:hover:before {
      width: 100%;
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
      left: 0px; }
    html:not(.touch) .blockarticlelist__more:hover span:before {
      -ms-transform: translate(2px, 0);
          transform: translate(2px, 0); }

@media screen and (max-width: 767px) {
  .blockarticlelist, .blockarticlelist--2col {
    width: calc(100% + 48px);
    margin-left: -24px; }
  .blockarticlelist__empty {
    min-height: 0px; }
  .blockarticlelist__item {
    width: 100%;
    margin-right: 0px;
    float: none; }
    .blockarticlelist__item a:before {
      border-width: 0px 0px 4px 0px; }
  .blockarticlelist__item__meta {
    margin: 7px 0; }
  .blockarticlelist__item__period, .blockarticlelist__item__period--ongoing, .blockarticlelist__item__period--upcoming, .blockarticlelist__item__period--expired {
    height: 20px;
    font-size: 11px;
    left: 10px;
    top: -20px;
    line-height: 12px;
    padding: 4px 8px 4px; }
  .blockarticlelist__item__body {
    min-height: 128px;
    padding: 8px 12px 32px; }
  .blockarticlelist__more {
    width: calc(100% - 48px); }
  .blockarticlelist--2col .blockarticlelist__item {
    width: 50%;
    margin-right: 0px;
    margin-bottom: 0px;
    float: left; }
    .blockarticlelist--2col .blockarticlelist__item:nth-of-type(even) .blockarticlelist__item__body {
      border-left: 1px solid #D5D8DD; }
    .blockarticlelist--2col .blockarticlelist__item .blockarticlelist__item__body {
      min-height: 124px;
      padding: 2px 12px 16px; }
    .blockarticlelist--2col .blockarticlelist__item .blockarticlelist__item__title {
      font-size: 14px;
      line-height: 20px;
      margin-bottom: 16px; }
    .blockarticlelist--2col .blockarticlelist__item .blockarticlelist__item__tags {
      line-height: 18px; }
      .blockarticlelist--2col .blockarticlelist__item .blockarticlelist__item__tags span {
        font-size: 11px;
        margin-right: 8px; } }

.reportindexlist__container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  position: relative; }

.reportindexlist__empty {
  text-align: center;
  min-height: 300px; }

.reportindexlist__item {
  position: relative;
  width: 25%;
  height: auto;
  margin-right: 0px; }
  .reportindexlist__item a {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 100%;
    z-index: 1;
    color: #000;
    text-decoration: none;
    -ms-flex-flow: column nowrap;
        flex-flow: column nowrap; }
    .reportindexlist__item a:before {
      content: "";
      display: block;
      box-sizing: border-box;
      width: 100%;
      height: 100%;
      border-width: 0px 0px 4px 0px;
      border-style: solid;
      border-color: #D5D8DD;
      position: absolute;
      left: 0px;
      top: 0px;
      z-index: 2; }

.reportindexlist__item__thumb {
  display: block;
  width: 100%;
  height: auto;
  position: relative;
  -ms-flex: 0 0 auto;
      flex: 0 0 auto; }

.reportindexlist__item__image {
  display: block;
  width: 100%;
  height: auto;
  position: relative;
  z-index: 3; }

.reportindexlist__item__imageplaceholder {
  display: block;
  width: 100%;
  height: 0px;
  padding-top: 62.5%;
  background-color: #D5D8DD;
  background-image: url(images/placeholder_logo.png);
  background-size: 73px 73px;
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
  z-index: 3; }

.reportindexlist__item__body {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  min-height: 0;
  padding: 12px 25px 20px;
  z-index: 3;
  -ms-flex: 1 0 auto;
      flex: 1 0 auto;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: column nowrap;
      flex-flow: column nowrap; }

.reportindexlist__item__period, .reportindexlist__item__period--ongoing, .reportindexlist__item__period--upcoming, .reportindexlist__item__period--expired {
  display: inline-block;
  box-sizing: border-box;
  width: auto;
  height: 25px;
  padding: 3px 10px 2px;
  font-size: 13px;
  line-height: 20px;
  letter-spacing: 1px;
  color: #FFF;
  background-color: #969BA3;
  position: absolute;
  left: 23px;
  top: -25px; }

.reportindexlist__item__period--ongoing {
  background-color: #1B1BE0; }

.reportindexlist__item__cat {
  display: inline-block;
  color: #1B1BE0;
  font-size: 12px;
  line-height: 18px;
  margin-right: 12px; }

.reportindexlist__item__date {
  display: inline-block;
  color: #969BA3;
  font-size: 12px;
  line-height: 18px;
  vertical-align: middle; }
  .reportindexlist__item__date:before {
    content: "";
    display: inline-block;
    width: 16px;
    line-height: 18px;
    text-align: center; }

.reportindexlist__item__meta {
  line-height: 18px;
  margin: 7px 0;
  position: relative;
  overflow: hidden;
  -ms-flex: 0 0 auto;
      flex: 0 0 auto; }

.reportindexlist__item__meta__category {
  position: relative;
  left: -16px; }
  .reportindexlist__item__meta__category .reportindexlist__item__cat {
    position: relative;
    margin-right: 0px;
    vertical-align: middle; }
    .reportindexlist__item__meta__category .reportindexlist__item__cat:before {
      content: "/";
      display: inline-block;
      width: 16px;
      line-height: 18px;
      text-align: center; }

.reportindexlist__item__title {
  font-size: 18px;
  line-height: 30px;
  min-height: 60px;
  -ms-flex: 1 0 auto;
      flex: 1 0 auto; }

.reportindexlist__item__tags {
  font-size: 12px;
  line-height: 20px;
  color: #5E6166;
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
  margin: 32px 0 0; }

.reportindexlist__item__tags__tag {
  display: inline-block;
  margin-right: 12px; }

.reportindexlist--2col .reportindexlist__item {
  width: calc(50% - 12px);
  margin-right: 24px;
  margin-bottom: 36px; }
  .reportindexlist--2col .reportindexlist__item:nth-of-type(odd) {
    clear: both; }
  .reportindexlist--2col .reportindexlist__item:nth-of-type(even) {
    margin-right: 0px; }

.reportindexlist__more {
  position: relative;
  display: block;
  width: calc(33.3333% - 16px);
  max-width: 288px;
  height: 64px;
  background-color: #D5D8DD;
  text-align: center;
  color: #000;
  text-decoration: none;
  line-height: 64px;
  margin: 50px auto 0;
  clear: both;
  font-size: 13px; }
  .reportindexlist__more:before {
    content: "";
    display: block;
    width: 0%;
    height: 100%;
    position: absolute;
    right: 0px;
    top: 0px;
    background-color: #1B1BE0; }
  .reportindexlist__more span {
    display: block;
    width: 100%;
    position: relative;
    z-index: 1; }
    .reportindexlist__more span:before {
      content: "";
      display: inline-block;
      width: 15px;
      height: 14px;
      background-image: url(images/arrow_white.png);
      background-size: 15px 14px;
      vertical-align: middle;
      margin-right: 10px;
      position: absolute;
      top: 50%;
      margin-top: -8px;
      left: 24px; }

html:not(.touch) .reportindexlist__item > a {
  transition: color .15s linear; }
  html:not(.touch) .reportindexlist__item > a:before {
    transition: border-color 0.15s linear, border-width 0.25s cubic-bezier(0.19, 1, 0.22, 1); }
  html:not(.touch) .reportindexlist__item > a .reportindexlist__item__tags {
    transition: color .15s linear; }

html:not(.touch) .reportindexlist__item:hover > a {
  color: #1B1BE0; }
  html:not(.touch) .reportindexlist__item:hover > a:before {
    border-color: #1B1BE0;
    border-width: 0px 0px 8px 0px; }
  html:not(.touch) .reportindexlist__item:hover > a .reportindexlist__item__tags {
    color: #1B1BE0; }

html:not(.touch) .reportindexlist__more {
  transition: color .15s linear; }
  html:not(.touch) .reportindexlist__more:before {
    transition: width 0.25s cubic-bezier(0.19, 1, 0.22, 1);
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    width: 0%; }
  html:not(.touch) .reportindexlist__more span:before {
    transition: transform .15s linear; }
  html:not(.touch) .reportindexlist__more:hover {
    color: #FFF; }
    html:not(.touch) .reportindexlist__more:hover:before {
      width: 100%;
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
      left: 0px; }
    html:not(.touch) .reportindexlist__more:hover span:before {
      -ms-transform: translate(2px, 0);
          transform: translate(2px, 0); }

@media screen and (max-width: 1023px) {
  .reportindexlist__item {
    width: 33.3333%; }
    .reportindexlist__item:nth-child(7), .reportindexlist__item:nth-child(8) {
      display: none; } }

@media screen and (max-width: 767px) {
  .reportindexlist, .reportindexlist--2col {
    width: 100%; }
  .reportindexlist__empty {
    min-height: 0px; }
  .reportindexlist__item {
    width: 50%; }
    .reportindexlist__item:nth-child(7), .reportindexlist__item:nth-child(8) {
      display: block; }
    .reportindexlist__item a:before {
      border-width: 0px 0px 4px 0px; }
  .reportindexlist__item__meta {
    margin: 7px 0; }
  .reportindexlist__item__period, .reportindexlist__item__period--ongoing, .reportindexlist__item__period--upcoming, .reportindexlist__item__period--expired {
    height: 20px;
    font-size: 11px;
    left: 10px;
    top: -20px;
    line-height: 12px;
    padding: 4px 8px 4px; }
  .reportindexlist__item__body {
    min-height: 128px;
    padding: 8px 12px 18px; }
  .reportindexlist__item__title {
    line-height: 24px;
    min-height: 0; }
  .reportindexlist__item__tags {
    margin: 24px 0 0; }
  .reportindexlist__item__tags__tag {
    margin-right: 12px; }
  .reportindexlist__more {
    width: calc(100% - 48px); }
  .reportindexlist--2col .reportindexlist__item {
    width: 50%;
    margin-right: 0px;
    margin-bottom: 0px;
    float: left; }
    .reportindexlist--2col .reportindexlist__item:nth-of-type(even) .reportindexlist__item__body {
      border-left: 1px solid #D5D8DD; }
    .reportindexlist--2col .reportindexlist__item .reportindexlist__item__body {
      min-height: 124px;
      padding: 2px 12px 0px; }
    .reportindexlist--2col .reportindexlist__item .reportindexlist__item__title {
      font-size: 14px;
      line-height: 20px;
      padding-bottom: 12px; } }

@media screen and (max-width: 480px) {
  .reportindexlist__item {
    width: 100%; } }

.reportcategorylist, .reportcategorylist--2col {
  position: relative;
  width: 100%;
  height: auto; }

.reportcategorylist__container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  position: relative;
  width: calc(100% + 16px);
  margin-left: -8px; }

.reportcategorylist__empty {
  text-align: center;
  min-height: 180px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row nowrap;
      flex-flow: row nowrap;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  margin-bottom: 14px; }
  .reportcategorylist__empty p {
    font-weight: 18px;
    letter-spacing: 0.1em;
    color: gray; }

.reportcategorylist__item {
  position: relative;
  width: calc(25% - 16px);
  height: auto;
  margin: 0 8px; }
  .reportcategorylist__item a {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 100%;
    z-index: 1;
    color: #000;
    text-decoration: none;
    -ms-flex-flow: column nowrap;
        flex-flow: column nowrap; }
    .reportcategorylist__item a:before {
      content: "";
      display: block;
      box-sizing: border-box;
      width: 100%;
      height: 100%;
      border-width: 0px 1px 4px 1px;
      border-style: solid;
      border-color: #D5D8DD;
      position: absolute;
      left: 0px;
      top: 0px;
      z-index: 2; }

.reportcategorylist__item__thumb {
  display: block;
  width: 100%;
  height: auto;
  position: relative;
  -ms-flex: 0 0 auto;
      flex: 0 0 auto; }

.reportcategorylist__item__image {
  display: block;
  width: 100%;
  height: auto;
  position: relative;
  z-index: 3; }

.reportcategorylist__item__imageplaceholder {
  display: block;
  width: 100%;
  height: 0px;
  padding-top: 62.5%;
  background-color: #D5D8DD;
  background-image: url(images/placeholder_logo.png);
  background-size: 73px 73px;
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
  z-index: 3; }

.reportcategorylist__item__body {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  min-height: 0;
  padding: 12px 25px 18px;
  z-index: 3;
  -ms-flex: 1 0 auto;
      flex: 1 0 auto;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: column nowrap;
      flex-flow: column nowrap; }

.reportcategorylist__item__period, .reportcategorylist__item__period--ongoing, .reportcategorylist__item__period--upcoming, .reportcategorylist__item__period--expired {
  display: inline-block;
  box-sizing: border-box;
  width: auto;
  height: 25px;
  padding: 3px 10px 2px;
  font-size: 13px;
  line-height: 20px;
  letter-spacing: 1px;
  color: #FFF;
  background-color: #969BA3;
  position: absolute;
  left: 23px;
  top: -25px; }

.reportcategorylist__item__period--ongoing {
  background-color: #1B1BE0; }

.reportcategorylist__item__cat {
  display: inline-block;
  color: #1B1BE0;
  font-size: 12px;
  line-height: 18px;
  margin-right: 12px; }

.reportcategorylist__item__date {
  display: inline-block;
  color: #969BA3;
  font-size: 12px;
  line-height: 18px;
  vertical-align: middle; }
  .reportcategorylist__item__date:before {
    content: "";
    display: inline-block;
    width: 16px;
    line-height: 18px;
    text-align: center; }

.reportcategorylist__item__meta {
  line-height: 18px;
  margin: 2px 0 8px;
  position: relative;
  overflow: hidden;
  -ms-flex: 0 0 auto;
      flex: 0 0 auto; }

.reportcategorylist__item__meta__category {
  position: relative;
  left: -16px; }
  .reportcategorylist__item__meta__category .reportcategorylist__item__cat {
    position: relative;
    margin-right: 0px;
    vertical-align: middle; }
    .reportcategorylist__item__meta__category .reportcategorylist__item__cat:before {
      content: "/";
      display: inline-block;
      width: 16px;
      line-height: 18px;
      text-align: center; }

.reportcategorylist__item__title {
  font-size: 18px;
  line-height: 24px;
  min-height: 72px;
  -ms-flex: 1 0 auto;
      flex: 1 0 auto; }

.reportcategorylist__item__tags {
  font-size: 12px;
  line-height: 20px;
  color: #5E6166;
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
  margin: 28px 0 0; }

.reportcategorylist__item__tags__tag {
  display: inline-block;
  margin-right: 12px; }

.reportcategorylist--2col .reportcategorylist__item {
  width: calc(50% - 12px);
  margin-right: 24px;
  margin-bottom: 36px; }
  .reportcategorylist--2col .reportcategorylist__item:nth-of-type(odd) {
    clear: both; }
  .reportcategorylist--2col .reportcategorylist__item:nth-of-type(even) {
    margin-right: 0px; }

.reportcategorylist__more {
  position: relative;
  display: block;
  width: 100%;
  max-width: 288px;
  height: 64px;
  background-color: #D5D8DD;
  text-align: center;
  color: #000;
  text-decoration: none;
  line-height: 64px;
  margin: 50px auto 0;
  clear: both;
  font-size: 13px; }
  .reportcategorylist__more:before {
    content: "";
    display: block;
    width: 0%;
    height: 100%;
    position: absolute;
    right: 0px;
    top: 0px;
    background-color: #1B1BE0; }
  .reportcategorylist__more span {
    display: block;
    width: 100%;
    position: relative;
    z-index: 1; }
    .reportcategorylist__more span:before {
      content: "";
      display: inline-block;
      width: 15px;
      height: 14px;
      background-image: url(images/arrow_white.png);
      background-size: 15px 14px;
      vertical-align: middle;
      margin-right: 10px;
      position: absolute;
      top: 50%;
      margin-top: -8px;
      left: 24px; }

html:not(.touch) .reportcategorylist__item > a {
  transition: color .15s linear; }
  html:not(.touch) .reportcategorylist__item > a:before {
    transition: border-color 0.15s linear, border-width 0.25s cubic-bezier(0.19, 1, 0.22, 1); }
  html:not(.touch) .reportcategorylist__item > a .reportcategorylist__item__tags {
    transition: color .15s linear; }

html:not(.touch) .reportcategorylist__item:hover > a {
  color: #1B1BE0; }
  html:not(.touch) .reportcategorylist__item:hover > a:before {
    border-color: #1B1BE0;
    border-width: 0px 1px 8px 1px; }
  html:not(.touch) .reportcategorylist__item:hover > a .reportcategorylist__item__tags {
    color: #1B1BE0; }

html:not(.touch) .reportcategorylist__more {
  transition: color .15s linear; }
  html:not(.touch) .reportcategorylist__more:before {
    transition: width 0.25s cubic-bezier(0.19, 1, 0.22, 1);
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    width: 0%; }
  html:not(.touch) .reportcategorylist__more span:before {
    transition: transform .15s linear; }
  html:not(.touch) .reportcategorylist__more:hover {
    color: #FFF; }
    html:not(.touch) .reportcategorylist__more:hover:before {
      width: 100%;
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
      left: 0px; }
    html:not(.touch) .reportcategorylist__more:hover span:before {
      -ms-transform: translate(2px, 0);
          transform: translate(2px, 0); }

@media screen and (max-width: 1023px) {
  .reportcategorylist__item {
    width: calc(33.3333% - 16px);
    margin: 0 8px 16px; }
    .reportcategorylist__item:nth-child(4) {
      display: none; } }

@media screen and (max-width: 767px) {
  .reportcategorylist, .reportcategorylist--2col {
    position: relative;
    width: calc(100% + 48px);
    margin-left: -24px; }
  .reportcategorylist__viewport {
    display: block;
    position: relative;
    box-sizing: border-box;
    width: 100%;
    height: auto;
    padding: 0 24px 24px 24px;
    margin: 0;
    overflow: scroll;
    overflow-x: scroll;
    overflow-y: hidden; }
  .reportcategorylist__container {
    -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    padding-right: 24px; }
    .reportcategorylist__container[data-size="1"] {
      width: 265px; }
    .reportcategorylist__container[data-size="2"] {
      width: 540px; }
    .reportcategorylist__container[data-size="3"] {
      width: 815px; }
    .reportcategorylist__container[data-size="4"] {
      width: 1090px; }
  .reportcategorylist__empty {
    min-height: 80px;
    margin-bottom: 40px; }
    .reportcategorylist__empty p {
      font-size: 16px; }
  .reportcategorylist__item {
    display: inline-block !important;
    width: 265px;
    margin: 0; }
    .reportcategorylist__item + .reportcategorylist__item {
      margin-left: 10px; }
    .reportcategorylist__item a {
      white-space: normal; }
  .reportcategorylist__item__meta {
    margin: 7px 0; }
  .reportcategorylist__item__period, .reportcategorylist__item__period--ongoing, .reportcategorylist__item__period--upcoming, .reportcategorylist__item__period--expired {
    height: 20px;
    font-size: 11px;
    left: 10px;
    top: -20px;
    line-height: 12px;
    padding: 4px 8px 4px; }
  .reportcategorylist__item__body {
    min-height: 128px;
    padding: 8px 12px 18px; }
  .reportcategorylist__item__title {
    line-height: 24px;
    min-height: 0; }
  .reportcategorylist__item__tags {
    margin: 24px 0 0; }
  .reportcategorylist__item__tags__tag {
    margin-right: 12px; }
  .reportcategorylist__more {
    margin-top: 12px; } }

.linkgroup__list {
  font-size: 0px;
  line-height: 0px;
  vertical-align: top; }
  .linkgroup__list li {
    position: relative;
    display: inline-block;
    width: 288px;
    height: 48px;
    z-index: 0;
    margin: -1px 0 0 -1px; }
    .linkgroup__list li a {
      position: relative;
      vertical-align: middle;
      display: block;
      box-sizing: border-box;
      border: 1px solid #D5D8DD;
      width: 100%;
      height: 100%;
      font-size: 12px;
      line-height: 18px;
      text-align: center;
      color: #000;
      text-decoration: none;
      text-align: center;
      font-family: YuGothic, 'Yu Gothic', sans-serif; }
      .linkgroup__list li a span {
        display: block;
        box-sizing: border-box;
        width: 100%;
        height: auto;
        padding: 0 14px;
        position: absolute;
        left: 0%;
        top: 50%;
        -ms-transform: translate(0%, -50%);
            transform: translate(0%, -50%); }

html:not(.touch) .linkgroup__list li {
  transition: z-index 0s linear .15s; }
  html:not(.touch) .linkgroup__list li a {
    transition: border-color .15s linear, color .15s linear; }
  html:not(.touch) .linkgroup__list li:hover {
    transition-delay: 0s;
    z-index: 1; }
    html:not(.touch) .linkgroup__list li:hover a {
      border-color: #1B1BE0;
      color: #1B1BE0; }

@media screen and (max-width: 1212px) {
  .linkgroup__list li {
    width: 25%; } }

@media screen and (max-width: 1023px) {
  .linkgroup__list li {
    width: 33.3333%; } }

@media screen and (max-width: 767px) {
  .linkgroup__head {
    margin-left: 24px;
    margin-right: 24px; }
  .linkgroup__list:after {
    content: "";
    display: block;
    width: 0px;
    height: 0px;
    float: none;
    clear: both;
    visibility: hidden; }
  .linkgroup__list li {
    width: 50%;
    height: 60px;
    margin: -1px 0 0 0;
    display: block;
    float: left; }
    .linkgroup__list li:nth-of-type(even) {
      margin-left: -1px;
      width: calc(50% + 1px); }
    .linkgroup__list li a {
      position: relative;
      vertical-align: middle;
      display: block;
      box-sizing: border-box;
      border: 1px solid #D5D8DD;
      width: 100%;
      height: 100%;
      font-size: 12px;
      line-height: 18px;
      text-align: center;
      color: #000;
      text-decoration: none;
      text-align: center;
      font-family: YuGothic, 'Yu Gothic', sans-serif; }
      .linkgroup__list li a span {
        display: block;
        box-sizing: border-box;
        width: 100%;
        height: auto;
        padding: 0 14px;
        position: absolute;
        left: 0%;
        top: 50%;
        -ms-transform: translate(0%, -50%);
            transform: translate(0%, -50%); } }

.page {
  padding-top: 142px; }

.page__links {
  border-top: 1px solid #D5D8DD;
  padding: 70px 0 80px; }
  .page__links .linkgroup {
    width: 1152px;
    margin: 0 auto 40px; }
    .page__links .linkgroup:last-of-type {
      margin-bottom: 0px; }

@media screen and (max-width: 1212px) {
  .page__links .linkgroup {
    width: auto;
    margin: 0 30px 40px; } }

@media screen and (max-width: 767px) {
  .page {
    padding-top: 0px; }
  .page__links {
    padding: 18px 0 40px; }
    .page__links .linkgroup {
      width: auto;
      margin: 0 auto 18px; }
      .page__links .linkgroup:last-of-type {
        margin-bottom: 0px; } }

.pageheader {
  box-sizing: border-box;
  width: 1152px;
  height: auto;
  position: relative;
  margin: 0 auto 70px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: column nowrap;
      flex-flow: column nowrap;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-align: start;
      align-items: flex-start; }

.pageheader__title {
  margin: 0px;
  width: 100%;
  line-height: 40px;
  -ms-flex-order: 2;
      order: 2; }

.pageheader__metanav {
  position: relative;
  width: 100%;
  left: 0px;
  top: 0px;
  z-index: 1;
  margin-bottom: 70px;
  -ms-flex-order: 1;
      order: 1; }
  .pageheader__metanav ul {
    height: 60px;
    width: auto; }
  .pageheader__metanav li {
    position: relative;
    float: left;
    height: 60px;
    margin-right: 20px; }
    .pageheader__metanav li:last-of-type {
      margin-right: 0px; }
    .pageheader__metanav li:after {
      content: "";
      display: block;
      width: 0%;
      height: 2px;
      background-color: #1B1BE0;
      position: absolute;
      right: 0px;
      bottom: 0px;
      z-index: 1; }
    .pageheader__metanav li:before {
      content: "";
      display: block;
      width: 100%;
      height: 1px;
      background-color: #D5D8DD;
      position: absolute;
      left: 0px;
      bottom: 0px; }
    .pageheader__metanav li.current:before {
      height: 2px;
      background-color: #1B1BE0; }
  .pageheader__metanav a {
    position: relative;
    display: block;
    width: auto;
    font-size: 12px;
    line-height: 60px;
    color: #000;
    text-decoration: none; }

.pageheader__subnav {
  position: absolute;
  right: 0px;
  bottom: 0px;
  z-index: 1; }
  .pageheader__subnav ul {
    height: 40px;
    width: auto; }
  .pageheader__subnav select {
    display: none; }
  .pageheader__subnav li {
    position: relative;
    float: left;
    height: 40px;
    margin-right: 20px; }
    .pageheader__subnav li:last-of-type {
      margin-right: 0px; }
    .pageheader__subnav li:after {
      content: "";
      display: block;
      width: 0%;
      height: 2px;
      background-color: #1B1BE0;
      position: absolute;
      right: 0px;
      bottom: 0px;
      z-index: 1; }
    .pageheader__subnav li:before {
      content: "";
      display: block;
      width: 100%;
      height: 1px;
      background-color: #D5D8DD;
      position: absolute;
      left: 0px;
      bottom: 0px; }
    .pageheader__subnav li.current:before {
      height: 2px;
      background-color: #1B1BE0; }
  .pageheader__subnav a {
    position: relative;
    display: block;
    width: auto;
    font-size: 12px;
    line-height: 40px;
    color: #000;
    text-decoration: none; }

html:not(.touch) .pageheader__metanav li:not(.current):after,
html:not(.touch) .pageheader__subnav li:not(.current):after {
  transition: width 0.25s cubic-bezier(0.19, 1, 0.22, 1); }

html:not(.touch) .pageheader__metanav li:not(.current):hover:after,
html:not(.touch) .pageheader__subnav li:not(.current):hover:after {
  width: 100%;
  left: 0px; }

html:not(.touch) .pageheader__metanav li:not(.current) a,
html:not(.touch) .pageheader__subnav li:not(.current) a {
  transition: color .15s linear; }
  html:not(.touch) .pageheader__metanav li:not(.current) a:hover,
  html:not(.touch) .pageheader__subnav li:not(.current) a:hover {
    color: #1B1BE0; }

@media screen and (max-width: 1212px) {
  .pageheader {
    width: auto;
    margin: 0 30px 80px; } }

@media screen and (max-width: 1023px) {
  .pageheader__subnav li,
  .pageheader__metanav li {
    margin-right: 12px; }
  .pageheader__subnav a,
  .pageheader__metanav a {
    font-size: 11px; } }

@media screen and (max-width: 767px) {
  .pageheader {
    display: block;
    box-sizing: content-box;
    width: 100%;
    height: auto !important;
    padding-top: 70px;
    margin: 0 0 38px; }
  .pageheader__title {
    margin: 0px 24px;
    width: auto !important;
    max-width: initial !important;
    height: auto !important;
    line-height: 32px;
    padding: 6px 0;
    position: relative; }
  .pageheader__metanav {
    position: absolute;
    left: auto;
    right: 24px;
    margin: 0;
    width: auto; }
    .pageheader__metanav ul {
      height: 52px;
      width: auto; }
    .pageheader__metanav li {
      display: none;
      margin: 0px;
      height: 52px; }
      .pageheader__metanav li:after {
        display: none; }
      .pageheader__metanav li.current {
        display: inline-block; }
        .pageheader__metanav li.current:before {
          display: none; }
    .pageheader__metanav a {
      line-height: 52px; }
  .pageheader__subnav {
    position: absolute;
    left: 0px;
    top: 70px;
    width: 100% !important;
    height: 44px; }
    .pageheader__subnav:before {
      content: "";
      display: block;
      width: 44px;
      height: 44px;
      background-image: url(images/sp_subnav_select.png);
      background-size: 44px 44px;
      position: absolute;
      top: 0px;
      right: 0px; }
    .pageheader__subnav select {
      display: block;
      width: calc(100% - 48px);
      height: 100%;
      -webkit-appearance: none;
      margin: 0 auto;
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      font-size: 16px; }
    .pageheader__subnav ul {
      display: none; } }

.eyecatch {
  width: 100%;
  height: 480px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat; }

.eyecatch + .container {
  border-top: 0px; }

@media screen and (max-width: 767px) {
  .eyecatch {
    height: 200px; } }

.btnlinkgroup {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  margin-top: 48px; }
  .btnlinkgroup .btnlink, .btnlinkgroup .btnlink--download {
    width: calc(50% - 13px);
    max-width: 288px;
    margin-top: 20px; }
    .btnlinkgroup .btnlink:nth-child(odd), .btnlinkgroup .btnlink--download:nth-child(odd) {
      margin-right: 26px; }
    .btnlinkgroup .btnlink:nth-child(1), .btnlinkgroup .btnlink--download:nth-child(1), .btnlinkgroup .btnlink:nth-child(2), .btnlinkgroup .btnlink--download:nth-child(2) {
      margin-top: 0px; }
  @media (max-width: 1024px) {
    .btnlinkgroup {
      display: block; }
      .btnlinkgroup .btnlink, .btnlinkgroup .btnlink--download {
        width: 100%; }
        .btnlinkgroup .btnlink:nth-child(odd), .btnlinkgroup .btnlink--download:nth-child(odd), .btnlinkgroup .btnlink:nth-child(1), .btnlinkgroup .btnlink--download:nth-child(1), .btnlinkgroup .btnlink:nth-child(2), .btnlinkgroup .btnlink--download:nth-child(2) {
          margin: 20px 0 0; } }
  @media screen and (max-width: 767px) {
    .btnlinkgroup {
      margin-top: 32px; }
      .btnlinkgroup .btnlink, .btnlinkgroup .btnlink--download {
        max-width: 100%; } }

.btnlink, .btnlink--download {
  position: relative;
  display: block;
  width: 288px;
  height: auto;
  background-color: #D5D8DD;
  color: #000;
  text-decoration: none;
  text-align: center; }
  .btnlink:before, .btnlink--download:before {
    content: "";
    display: block;
    width: 0%;
    height: 100%;
    position: absolute;
    right: 0px;
    top: 0px;
    background-color: #1B1BE0;
    z-index: 0; }
  .btnlink span, .btnlink--download span {
    position: relative;
    display: block;
    z-index: 1;
    width: 100%;
    height: 100%;
    min-height: 64px;
    box-sizing: border-box;
    padding: 12px 40px;
    font-size: 13px;
    line-height: 20px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center; }
    .btnlink span:before, .btnlink--download span:before {
      content: "";
      display: block;
      width: 15px;
      height: 14px;
      background-image: url(images/arrow_white.png);
      background-size: 15px 14px;
      position: absolute;
      left: 20px;
      top: 50%;
      margin-top: -7px; }

.btnlink--download span:before {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  background-image: url(images/download_white.png);
  background-size: 16px 16px;
  position: absolute;
  left: 24px;
  top: 50%;
  margin-top: -8px; }

.btnlink--download span:after {
  content: "";
  display: block;
  width: 16px;
  height: 2px;
  background-color: #FFF;
  position: absolute;
  left: 24px;
  top: 50%;
  margin-top: 6px; }

html:not(.touch) .btnlink, html:not(.touch) .btnlink--download {
  transition: color .15s linear; }
  html:not(.touch) .btnlink:before, html:not(.touch) .btnlink--download:before {
    transition: width 0.25s cubic-bezier(0.19, 1, 0.22, 1); }
  html:not(.touch) .btnlink span:before, html:not(.touch) .btnlink--download span:before {
    transition: transform .15s linear; }
  html:not(.touch) .btnlink:hover, html:not(.touch) .btnlink--download:hover {
    color: #FFF; }
    html:not(.touch) .btnlink:hover:before, html:not(.touch) .btnlink--download:hover:before {
      width: 100%;
      left: 0px; }
    html:not(.touch) .btnlink:hover span:before, html:not(.touch) .btnlink--download:hover span:before {
      -ms-transform: translate(2px, 0);
          transform: translate(2px, 0); }

html:not(.touch) .btnlink--download {
  transition: color .15s linear; }
  html:not(.touch) .btnlink--download:before {
    transition: width 0.25s cubic-bezier(0.19, 1, 0.22, 1); }
  html:not(.touch) .btnlink--download span:before {
    transition: transform .15s linear; }
  html:not(.touch) .btnlink--download:hover {
    color: #FFF; }
    html:not(.touch) .btnlink--download:hover:before {
      width: 100%;
      left: 0px; }
    html:not(.touch) .btnlink--download:hover span:before {
      -ms-transform: translate(0px, 2px);
          transform: translate(0px, 2px); }

@media screen and (max-width: 767px) {
  .btnlink, .btnlink--download {
    width: 100%; } }

.gallery {
  position: relative;
  width: 100%;
  height: auto; }
  .gallery[data-num="1"] .gallery__container {
    width: 100%; }
  .gallery[data-num="1"] .gallery__image {
    width: 100%; }
  .gallery[data-num="2"] .gallery__container {
    width: 200%; }
  .gallery[data-num="2"] .gallery__image {
    width: 50%; }
  .gallery[data-num="3"] .gallery__container {
    width: 300%; }
  .gallery[data-num="3"] .gallery__image {
    width: 33.33333%; }
  .gallery[data-num="4"] .gallery__container {
    width: 400%; }
  .gallery[data-num="4"] .gallery__image {
    width: 25%; }
  .gallery[data-num="5"] .gallery__container {
    width: 500%; }
  .gallery[data-num="5"] .gallery__image {
    width: 20%; }
  .gallery[data-num="6"] .gallery__container {
    width: 600%; }
  .gallery[data-num="6"] .gallery__image {
    width: 16.66667%; }
  .gallery[data-num="7"] .gallery__container {
    width: 700%; }
  .gallery[data-num="7"] .gallery__image {
    width: 14.28571%; }
  .gallery[data-num="8"] .gallery__container {
    width: 800%; }
  .gallery[data-num="8"] .gallery__image {
    width: 12.5%; }
  .gallery[data-num="9"] .gallery__container {
    width: 900%; }
  .gallery[data-num="9"] .gallery__image {
    width: 11.11111%; }
  .gallery[data-num="10"] .gallery__container {
    width: 1000%; }
  .gallery[data-num="10"] .gallery__image {
    width: 10%; }
  .gallery[data-num="11"] .gallery__container {
    width: 1100%; }
  .gallery[data-num="11"] .gallery__image {
    width: 9.09091%; }
  .gallery[data-num="12"] .gallery__container {
    width: 1200%; }
  .gallery[data-num="12"] .gallery__image {
    width: 8.33333%; }
  .gallery[data-num="13"] .gallery__container {
    width: 1300%; }
  .gallery[data-num="13"] .gallery__image {
    width: 7.69231%; }
  .gallery[data-num="14"] .gallery__container {
    width: 1400%; }
  .gallery[data-num="14"] .gallery__image {
    width: 7.14286%; }
  .gallery[data-num="15"] .gallery__container {
    width: 1500%; }
  .gallery[data-num="15"] .gallery__image {
    width: 6.66667%; }
  .gallery[data-num="16"] .gallery__container {
    width: 1600%; }
  .gallery[data-num="16"] .gallery__image {
    width: 6.25%; }
  .gallery[data-num="17"] .gallery__container {
    width: 1700%; }
  .gallery[data-num="17"] .gallery__image {
    width: 5.88235%; }
  .gallery[data-num="18"] .gallery__container {
    width: 1800%; }
  .gallery[data-num="18"] .gallery__image {
    width: 5.55556%; }
  .gallery[data-num="19"] .gallery__container {
    width: 1900%; }
  .gallery[data-num="19"] .gallery__image {
    width: 5.26316%; }
  .gallery[data-num="20"] .gallery__container {
    width: 2000%; }
  .gallery[data-num="20"] .gallery__image {
    width: 5%; }
  .gallery[data-num="21"] .gallery__container {
    width: 2100%; }
  .gallery[data-num="21"] .gallery__image {
    width: 4.7619%; }
  .gallery[data-num="22"] .gallery__container {
    width: 2200%; }
  .gallery[data-num="22"] .gallery__image {
    width: 4.54545%; }
  .gallery[data-num="23"] .gallery__container {
    width: 2300%; }
  .gallery[data-num="23"] .gallery__image {
    width: 4.34783%; }
  .gallery[data-num="24"] .gallery__container {
    width: 2400%; }
  .gallery[data-num="24"] .gallery__image {
    width: 4.16667%; }
  .gallery[data-num="25"] .gallery__container {
    width: 2500%; }
  .gallery[data-num="25"] .gallery__image {
    width: 4%; }
  .gallery[data-num="26"] .gallery__container {
    width: 2600%; }
  .gallery[data-num="26"] .gallery__image {
    width: 3.84615%; }
  .gallery[data-num="27"] .gallery__container {
    width: 2700%; }
  .gallery[data-num="27"] .gallery__image {
    width: 3.7037%; }
  .gallery[data-num="28"] .gallery__container {
    width: 2800%; }
  .gallery[data-num="28"] .gallery__image {
    width: 3.57143%; }
  .gallery[data-num="29"] .gallery__container {
    width: 2900%; }
  .gallery[data-num="29"] .gallery__image {
    width: 3.44828%; }
  .gallery[data-num="30"] .gallery__container {
    width: 3000%; }
  .gallery[data-num="30"] .gallery__image {
    width: 3.33333%; }

.gallery__viewport {
  width: 100%;
  height: 0px;
  padding-top: 66.6667%;
  overflow: hidden;
  position: relative; }

.gallery__container {
  transition: transform 0.75s cubic-bezier(0.19, 1, 0.22, 1);
  height: 100%;
  position: absolute;
  left: 0px;
  top: 0px;
  font-size: 0px;
  white-space: nowrap; }
  .gallery__container:after {
    content: "";
    display: block;
    width: 0px;
    height: 0px;
    float: none;
    clear: both;
    visibility: hidden; }

.gallery__image {
  display: inline-block;
  height: 100%;
  position: relative;
  background-color: #F2F2F5; }
  .gallery__image img {
    display: block;
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    position: absolute;
    left: 50%;
    top: 50%;
    -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    margin: 0 !important; }

.gallery__pager, .gallery__pager--thumbnail {
  margin: 24px 0 0 0;
  font-size: 0px; }
  .gallery__pager__page {
    display: inline-block;
    width: 48px;
    height: 2px;
    background-color: #D5D8DD;
    margin-right: 8px;
    transition: background-color .15s linear; }
    .gallery__pager__page.current {
      background-color: #1B1BE0; }

.gallery__pager--thumbnail {
  margin: 4px 0 0 0;
  line-height: 0px;
  font-size: 0px;
  letter-spacing: 0px; }
  .gallery__pager--thumbnail .gallery__pager__page {
    display: inline-block;
    position: relative;
    width: 46px;
    height: 32px;
    margin-right: 4px;
    margin-top: 4px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-color: #F2F2F5 !important; }
    .gallery__pager--thumbnail .gallery__pager__page:before {
      content: "";
      box-sizing: border-box;
      display: block;
      width: 100%;
      height: 100%;
      border: 2px solid #1B1BE0;
      position: absolute;
      left: 0px;
      top: 0px;
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      transition: opacity .15s linear; }
    .gallery__pager--thumbnail .gallery__pager__page.current:before {
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
    @media (max-width: 464px) {
      .gallery__pager--thumbnail .gallery__pager__page {
        width: calc(10.9% - 4px);
        height: auto; }
        .gallery__pager--thumbnail .gallery__pager__page:nth-child(9n+1) {
          margin-left: 4px; }
        .gallery__pager--thumbnail .gallery__pager__page:nth-child(9n+9) {
          margin-right: 4px; }
        .gallery__pager--thumbnail .gallery__pager__page:after {
          content: "";
          display: block;
          width: 100%;
          height: 0px;
          padding-top: 66.6667%; } }

.gallery__next,
.gallery__prev {
  display: block;
  box-sizing: border-box;
  width: 48px;
  height: 48px;
  background-color: #FFF;
  border: 1px solid #D5D8DD;
  position: absolute;
  top: 50%;
  margin-top: -24px;
  z-index: 1; }
  .gallery__next:before, .gallery__next:after,
  .gallery__prev:before,
  .gallery__prev:after {
    content: "";
    display: block;
    width: 15px;
    height: 14px;
    background-image: url(images/arrow_gray.png);
    background-size: 15px 14px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin: -7px 0 0 -8px; }
  .gallery__next:before,
  .gallery__prev:before {
    background-image: url(images/arrow_gray.png);
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
  .gallery__next:after,
  .gallery__prev:after {
    background-image: url(images/arrow_blue.png);
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }

.gallery__prev {
  left: 24px;
  -ms-transform: rotate(180deg);
      transform: rotate(180deg);
  display: none; }

.gallery__next {
  right: 24px; }

.gallery[data-num="1"] .gallery__next,
.gallery[data-num="1"] .gallery__prev {
  display: none; }

.gallery[data-num="1"] .gallery__pager, .gallery[data-num="1"] .gallery__pager--thumbnail {
  display: none; }

html:not(.touch) .gallery__next:before, html:not(.touch) .gallery__next:after,
html:not(.touch) .gallery__prev:before,
html:not(.touch) .gallery__prev:after {
  transition: transform .15s linear, opacity .15s linear; }

html:not(.touch) .gallery__next:hover,
html:not(.touch) .gallery__prev:hover {
  border-color: #1B1BE0; }
  html:not(.touch) .gallery__next:hover:before,
  html:not(.touch) .gallery__prev:hover:before {
    -ms-transform: translate(2px, 0);
        transform: translate(2px, 0);
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
  html:not(.touch) .gallery__next:hover:after,
  html:not(.touch) .gallery__prev:hover:after {
    -ms-transform: translate(2px, 0);
        transform: translate(2px, 0);
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

html:not(.touch) .gallery__pager__page:hover {
  background-color: #1B1BE0; }

@media screen and (max-width: 767px) {
  .gallery__next,
  .gallery__prev {
    width: 38px;
    height: 38px;
    margin-top: -19px;
    z-index: 1; }
    .gallery__next:before, .gallery__next:after,
    .gallery__prev:before,
    .gallery__prev:after {
      width: 10px;
      height: 8px;
      background-size: 10px 8px;
      margin: -4px 0 0 -5px; }
  .gallery__prev {
    left: 12px; }
  .gallery__next {
    right: 12px; }
  .gallery__pager, .gallery__pager--thumbnail {
    margin: 4px 0 0 0;
    text-align: center; }
    .gallery__pager__page {
      width: 24px;
      height: 2px;
      margin-right: 4px; } }

.spnav {
  display: none; }

@media screen and (max-width: 767px) {
  .spnav {
    display: block;
    position: fixed;
    left: 0px;
    bottom: 0px;
    z-index: 999;
    width: 100%;
    height: 70px;
    transition: height 0.5s cubic-bezier(0.19, 1, 0.22, 1); }
    .spnav.open {
      height: 100%; }
      .spnav.open .spnav__head__toggle {
        background-position: center bottom; }
  .spnav__head {
    box-sizing: border-box;
    position: relative;
    height: 70px;
    width: 100%;
    border-top: 6px solid #1B1BE0;
    background-color: #FFF;
    padding-right: 68px; }
  .spnav__head__toggle {
    display: block;
    width: 68px;
    height: 64px;
    background-image: url(images/spnav_toggle.png);
    background-size: 68px 136px;
    position: absolute;
    top: 0px;
    right: 0px; }
  .spnav__head__request,
  .spnav__head__access {
    box-sizing: border-box;
    width: 50%;
    height: 64px;
    position: relative;
    float: left;
    line-height: 64px;
    font-size: 11px;
    color: #000;
    text-decoration: none;
    text-align: center;
    padding-left: 28px; }
    .spnav__head__request:after,
    .spnav__head__access:after {
      content: "";
      display: block;
      width: 1px;
      height: 32px;
      background-color: #D5D8DD;
      position: absolute;
      right: 0px;
      top: 16px; }
    .spnav__head__request:before,
    .spnav__head__access:before {
      content: "";
      display: block;
      width: 18px;
      height: 18px;
      background-size: 18px 18px;
      position: absolute;
      top: 23px;
      left: 17px; }
  .spnav__head__request {
    width: 57.5%; }
    .spnav__head__request:before {
      background-image: url(images/spnav_request.png); }
  .spnav__head__access {
    width: 42.5%; }
    .spnav__head__access:before {
      background-image: url(images/spnav_access.png); }
  .spnav__body {
    position: relative;
    height: calc(100% - 70px);
    width: 100%;
    background-color: #D5D8DD;
    overflow: scroll;
    -webkit-overflow-scrolling: touch; }
  .spnav__search {
    width: 100%;
    box-sizing: border-box;
    height: 56px;
    padding: 16px 78px 16px 24px;
    background-color: #F2F2F5; }
  .spnav__search__input {
    display: block;
    border: none;
    margin: 0px;
    padding: 0px;
    background-color: #F2F2F5;
    color: #000;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-size: 16px;
    line-height: 24px;
    width: 100%;
    height: 24px;
    font-family: YuMincho, 'Yu Mincho', serif;
    outline: 0; }
  .spnav__search__exec {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    padding: 0px;
    border: 0px;
    background-color: transparent;
    display: block;
    width: 56px;
    height: 56px;
    background-image: url(images/search.png);
    background-size: 14px 14px;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 0px;
    right: 7px;
    outline: 0; }
  .spnav__mainnav,
  .spnav__subnav {
    padding: 0 24px; }
    .spnav__mainnav li,
    .spnav__subnav li {
      position: relative; }
    .spnav__mainnav > ul,
    .spnav__subnav > ul {
      border-bottom: 1px solid #FFF; }
    .spnav__mainnav > ul > li,
    .spnav__subnav > ul > li {
      width: 100%;
      height: 62px;
      overflow: hidden;
      line-height: 62px;
      border-top: 1px solid #FFF;
      transition: height 0.5s cubic-bezier(0.19, 1, 0.22, 1); }
      .spnav__mainnav > ul > li:first-of-type,
      .spnav__subnav > ul > li:first-of-type {
        border-top: 0px; }
      .spnav__mainnav > ul > li.open,
      .spnav__subnav > ul > li.open {
        height: 251px; }
        .spnav__mainnav > ul > li.open .spnav__togglelist:before,
        .spnav__subnav > ul > li.open .spnav__togglelist:before {
          display: none; }
      .spnav__mainnav > ul > li a:only-child:after,
      .spnav__subnav > ul > li a:only-child:after {
        content: "";
        display: block;
        width: 13px;
        height: 12px;
        position: absolute;
        right: 26px;
        top: 27px;
        background-image: url(images/arrow_white.png);
        background-size: 13px 12px; }
    .spnav__mainnav ul ul,
    .spnav__subnav ul ul {
      border-top: 1px solid #FFF;
      padding-left: 24px; }
      .spnav__mainnav ul ul li,
      .spnav__subnav ul ul li {
        border-bottom: 1px solid #FFF; }
        .spnav__mainnav ul ul li:after,
        .spnav__subnav ul ul li:after {
          content: "";
          display: block;
          width: 13px;
          height: 12px;
          position: absolute;
          right: 26px;
          top: 27px;
          background-image: url(images/arrow_white.png);
          background-size: 13px 12px; }
        .spnav__mainnav ul ul li:last-of-type,
        .spnav__subnav ul ul li:last-of-type {
          border-bottom: none; }
    .spnav__mainnav li a,
    .spnav__subnav li a {
      display: block;
      width: 100%;
      height: 62px;
      color: #000;
      text-decoration: none; }
  .spnav__togglelist {
    width: 62px;
    height: 62px;
    display: block;
    position: absolute;
    top: 0px;
    right: 0px;
    cursor: pointer; }
    .spnav__togglelist:before {
      content: "";
      display: block;
      width: 2px;
      height: 10px;
      background-color: #FFF;
      position: absolute;
      left: 30px;
      top: 26px; }
    .spnav__togglelist:after {
      content: "";
      display: block;
      height: 2px;
      width: 10px;
      background-color: #FFF;
      position: absolute;
      top: 30px;
      left: 26px; }
  .spnav__subnav {
    margin-top: 20px;
    padding-bottom: 40px; }
    .spnav__subnav ul li a:after {
      content: "";
      display: block;
      width: 13px;
      height: 12px;
      position: absolute;
      right: 26px;
      top: 27px;
      background-image: url(images/arrow_white.png);
      background-size: 13px 12px; }
  .spnav__foot {
    display: block;
    width: auto;
    height: 98px;
    margin: 0 24px;
    position: relative;
    padding-bottom: 40px; }
  .spnav__foot__logo {
    display: block;
    width: 248px;
    height: 32px; }
    .spnav__foot__logo img {
      display: block; }
  .spnav__foot__sns {
    position: absolute;
    right: -6px;
    bottom: 34px; }
    .spnav__foot__sns__fb, .spnav__foot__sns__tw {
      display: block;
      text-indent: 200%;
      white-space: nowrap;
      overflow: hidden;
      color: transparent;
      display: block;
      width: 44px;
      height: 44px;
      background-size: 32px 32px;
      background-position: center;
      background-repeat: no-repeat;
      float: left; }
    .spnav__foot__sns__fb {
      background-image: url(images/sns_fb_white.png); }
    .spnav__foot__sns__tw {
      background-image: url(images/sns_tw_white.png); }
  .spnav__foot__lang {
    height: 44px;
    width: 80px;
    position: absolute;
    left: 0px;
    bottom: 40px; }
    .spnav__foot__lang__ja, .spnav__foot__lang__en {
      display: block;
      position: relative;
      width: 40px;
      height: 44px;
      line-height: 44px;
      font-size: 12px;
      text-align: center;
      color: #FFF;
      text-decoration: none;
      float: left; }
      .spnav__foot__lang__ja:after, .spnav__foot__lang__en:after {
        content: "";
        display: block;
        width: 100%;
        height: 1px;
        background-color: #FFF;
        position: absolute;
        left: 0px;
        bottom: 0px; }
  html[lang="ja"] .spnav__foot__lang__ja,
  html[lang="en"] .spnav__foot__lang__en {
    color: #000; }
    html[lang="ja"] .spnav__foot__lang__ja:after,
    html[lang="en"] .spnav__foot__lang__en:after {
      height: 2px;
      background-color: #1B1BE0; } }

@media screen and (max-width: 374px) {
  .spnav__head__request,
  .spnav__head__access {
    padding-left: 26px; }
    .spnav__head__request:before,
    .spnav__head__access:before {
      left: 15px; } }

.blocklist, .blocklist--5colmn {
  width: 100%;
  height: auto;
  margin-top: 70px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-align: start;
      align-items: flex-start; }
  .blocklist:after, .blocklist--5colmn:after {
    content: "";
    display: block;
    width: 0px;
    height: 0px;
    float: none;
    clear: both;
    visibility: hidden; }

.blocklist__item {
  position: relative;
  width: calc(33.3333% - 32px);
  height: auto;
  margin: 0 48px 48px 0; }
  .blocklist__item:nth-of-type(3n+1) {
    clear: both; }
  .blocklist__item:nth-of-type(3n) {
    margin-right: 0px; }
  .blocklist__item:nth-last-of-type(1), .blocklist__item:nth-last-of-type(2), .blocklist__item:nth-last-of-type(3) {
    margin-bottom: 0px; }
  .blocklist__item img {
    display: block;
    width: 100%;
    height: auto;
    margin-bottom: 10px; }

.blocklist__item__link {
  display: block;
  color: #000;
  text-decoration: none; }

.blocklist__item__imageplaceholder {
  display: block;
  width: 100%;
  height: 0px;
  padding-top: 62.5%;
  background-color: #D5D8DD;
  margin-bottom: 10px;
  background-image: url(images/placeholder_logo.png);
  background-size: 73px 73px;
  background-repeat: no-repeat;
  background-position: center; }

.blocklist--5colmn {
  max-width: 1150px;
  margin-left: auto;
  margin-right: auto; }
  .blocklist--5colmn .blocklist__item {
    width: calc(20% - 19px);
    height: auto;
    margin: 0 24px 48px 0; }

html:not(.touch) .blocklist__item a {
  transition: color .15s linear; }
  html:not(.touch) .blocklist__item a:hover {
    color: #1B1BE0; }

@media screen and (min-width: 977px) {
  .blocklist--5colmn .blocklist__item:nth-of-type(3n+1) {
    clear: none; }
  .blocklist--5colmn .blocklist__item:nth-of-type(5n+1) {
    margin-right: 23px;
    clear: both; }
  .blocklist--5colmn .blocklist__item:nth-of-type(5n) {
    margin-right: 0px; } }

@media screen and (max-width: 976px) {
  .blocklist--5colmn .blocklist__item {
    width: calc(25% - 18px);
    height: auto;
    margin: 0 24px 48px 0; }
    .blocklist--5colmn .blocklist__item:nth-of-type(3n+1) {
      clear: none; }
    .blocklist--5colmn .blocklist__item:nth-of-type(4n+1) {
      clear: both; }
    .blocklist--5colmn .blocklist__item:nth-of-type(4n) {
      margin-right: 0px; } }

@media screen and (max-width: 767px) {
  .blocklist, .blocklist--5colmn {
    margin-top: 30px; }
  .blocklist__item {
    width: 100%;
    float: none;
    margin: 0 0 34px 0; }
    .blocklist__item:nth-of-type(3n), .blocklist__item:nth-last-of-type(3), .blocklist__item:nth-last-of-type(2) {
      margin: 0 0 34px 0; }
    .blocklist__item:nth-last-of-type(1) {
      margin-bottom: 0px; }
  .blocklist--5colmn .blocklist__item {
    width: calc(50% - 8px);
    height: auto;
    margin: 0 16px 48px 0;
    float: left; }
    .blocklist--5colmn .blocklist__item:nth-of-type(3n+1) {
      clear: none; }
    .blocklist--5colmn .blocklist__item:nth-of-type(2n+1) {
      clear: both; }
    .blocklist--5colmn .blocklist__item:nth-of-type(2n) {
      margin-right: 0px; } }

/*
@media screen and (max-width: 729px){
	.blocklist--5colmn{
		//681
		.blocklist__item{
			width: calc(33.33% - 16px);
			height: auto;
			margin: 0 24px 48px 0;
			&:nth-of-type(4n){
				margin-right: 24px;
			}
			&:nth-of-type(4n+1){
				clear: none;
			}
			&:nth-of-type(3n+1){
				clear: both;
			}
			&:nth-of-type(3n){
				margin-right: 0px;
			}
		}
	}
}

@media screen and (max-width: 494px){
	.blocklist--5colmn{
		.blocklist__item{
			width: calc(50% - 12px);
			height: auto;
			margin: 0 24px 48px 0;
			&:nth-of-type(4n),
			&:nth-of-type(3n){
				margin-right: 24px;
			}
			&:nth-of-type(3n+1),
			&:nth-of-type(4n+1){
				clear: none;
			}
			&:nth-of-type(2n){
				margin-right: 0px;
			}
			&:nth-of-type(2n+1){
				margin-right: 24px;
				clear: none;
			}
		}
	}
}
*/
.floatinglist__block {
  position: relative;
  float: left;
  width: calc(33.3333% - 32px);
  margin: 0 0 0;
  border-top: 1px solid #D5D8DD;
  padding-top: 36px;
  padding-bottom: 70px; }
  .floatinglist__block:nth-of-type(3n) {
    margin-right: 0px; }
  .floatinglist__block h3 {
    font-size: 18px;
    line-height: 24px;
    margin: 0 0 30px;
    font-weight: 600; }
  .floatinglist__block li {
    display: block;
    /*ul{
			padding-left: 24px;
			a{
				padding-left: 24px;
				font-size: 13px;
				line-height: 24px;
				height: 24px;
				&:before,
				&:after{
					top: 5px;
				}
			}
		}*/ }
    .floatinglist__block li a {
      display: inline-block;
      font-size: 15px;
      line-height: 32px;
      width: auto;
      height: 32px;
      padding-left: 30px;
      position: relative;
      color: #000;
      text-decoration: none; }
      .floatinglist__block li a:before, .floatinglist__block li a:after {
        content: "";
        display: block;
        width: 15px;
        height: 14px;
        background-size: 15px 14px;
        position: absolute;
        left: 0px;
        top: 8px; }
      .floatinglist__block li a:before {
        background-image: url(images/arrow_gray.png);
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
      .floatinglist__block li a:after {
        background-image: url(images/arrow_blue.png);
        opacity: 0;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }

html:not(.touch) .floatinglist__block a:not(.btnlink):not(.btnlink--download) {
  transition: color .15s linear; }
  html:not(.touch) .floatinglist__block a:not(.btnlink):not(.btnlink--download):before, html:not(.touch) .floatinglist__block a:not(.btnlink):not(.btnlink--download):after {
    transition: transform .15s linear, opacity .15s linear; }
  html:not(.touch) .floatinglist__block a:not(.btnlink):not(.btnlink--download):hover {
    color: #1B1BE0; }
    html:not(.touch) .floatinglist__block a:not(.btnlink):not(.btnlink--download):hover:before {
      -ms-transform: translate(2px, 0);
          transform: translate(2px, 0);
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
    html:not(.touch) .floatinglist__block a:not(.btnlink):not(.btnlink--download):hover:after {
      -ms-transform: translate(2px, 0);
          transform: translate(2px, 0);
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

@media screen and (max-width: 767px) {
  .floatinglist__block {
    position: relative;
    float: left;
    width: 100%;
    margin: 0 0 0;
    border-top: 1px solid #D5D8DD;
    padding-top: 36px;
    padding-bottom: 34px; }
    .floatinglist__block li a {
      line-height: 28px;
      height: 28px; } }

.table {
  border: 1px solid #D5D8DD;
  width: 100%;
  height: auto; }
  .table th, .table td {
    border: 1px solid #D5D8DD;
    vertical-align: middle;
    text-align: center;
    font-size: 13px;
    line-height: 24px;
    padding: 12px; }
  .table th,
  .table td:first-of-type {
    background-color: #F2F2F5;
    font-weight: 600; }
  .table th:first-of-type,
  .table td:first-of-type {
    text-align: left;
    padding: 12px 24px;
    width: 148px; }

@media screen and (max-width: 767px) {
  .table th, .table td {
    font-size: 12px;
    line-height: 20px; }
  .table th:first-of-type,
  .table td:first-of-type {
    padding: 12px 16px; } }

.pagination {
  text-align: center;
  font-size: 0px;
  margin-top: 80px; }
  .pagination > a,
  .pagination > span {
    box-sizing: border-box;
    display: inline-block;
    font-size: 15px;
    line-height: 40px;
    width: 40px;
    height: 40px;
    text-align: center;
    margin: 0 12px; }
  .pagination .current {
    background-color: #1B1BE0;
    color: #FFF; }
  .pagination .page {
    position: relative;
    padding-top: 0px;
    background-color: #FFF;
    color: #969BA3;
    text-decoration: none; }
    .pagination .page span {
      position: relative;
      z-index: 2; }
    .pagination .page:before, .pagination .page:after {
      content: "";
      display: block;
      box-sizing: border-box;
      height: 100%;
      position: absolute;
      right: 0px;
      top: 0px; }
    .pagination .page:before {
      width: 100%;
      border: 1px solid #D5D8DD;
      z-index: 0; }
    .pagination .page:after {
      width: 0px;
      background-color: #1B1BE0;
      z-index: 1; }
  .pagination .extend {
    border: none;
    margin: 0;
    color: #969BA3; }

html:not(.touch) .pagination .page {
  transition: color .15s linear; }
  html:not(.touch) .pagination .page:after {
    transition: width 0.25s cubic-bezier(0.19, 1, 0.22, 1); }
  html:not(.touch) .pagination .page:hover {
    color: #FFF; }
    html:not(.touch) .pagination .page:hover:after {
      right: auto;
      left: 0px;
      width: 100%; }

@media screen and (max-width: 767px) {
  .pagination {
    text-align: center;
    font-size: 0px;
    margin-top: 40px;
    margin-bottom: 20px; }
    .pagination > a,
    .pagination > span {
      font-size: 13px;
      line-height: 28px;
      width: 28px;
      height: 28px;
      margin: 0 4px; }
    .pagination .extend {
      margin: 0;
      width: 20px; } }

.footnews {
  padding: 70px 0 80px;
  border-top: 1px solid #D5D8DD; }

.footnews__content {
  width: 1152px;
  height: auto;
  margin: 0 auto; }

.footnews__title {
  font-size: 15px;
  font-weight: 600;
  margin: 0 0 15px 0; }

.footnews__item {
  width: 100%;
  height: 73px; }

.footnews__item__link {
  position: relative;
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  padding: 36px 0 1px 160px;
  color: #000;
  text-decoration: none; }
  .footnews__item__link:after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #D5D8DD;
    position: absolute;
    left: 0px;
    bottom: 0px;
    z-index: 1; }
  .footnews__item__link:before {
    content: "";
    display: block;
    width: 0%;
    height: 1px;
    background-color: #1B1BE0;
    position: absolute;
    right: 0px;
    bottom: 0px;
    z-index: 2; }

.footnews__item__thumb, .footnews__item__thumb--nothumb {
  width: 144px;
  height: 72px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  left: 0px;
  top: 0px; }

.footnews__item__thumb--nothumb {
  background-color: #1B1BE0;
  background-image: url(images/placeholder_logo.png);
  background-size: 32px 32px;
  background-position: center;
  background-repeat: no-repeat; }

.footnews__item__cat {
  position: absolute;
  left: 160px;
  top: 12px;
  border: 1px solid #1B1BE0;
  padding: 3px 8px;
  font-size: 12px;
  line-height: 12px;
  color: #1B1BE0; }

.footnews__item__excerpt {
  box-sizing: border-box;
  font-size: 13px;
  width: 100%;
  height: auto;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding-right: 110px; }

.footnews__item__date {
  position: absolute;
  font-size: 12px;
  line-height: 20px;
  right: 16px;
  top: 50%;
  margin-top: -10px;
  color: #969BA3; }

html:not(.touch) .footnews__item__link {
  /*
		&:before{
			transition: width .25s $easeOutExpo;
		}
		.footnews__item__excerpt{
			transition: color .15s linear;
		}
		&:hover{
			&:before{
				width: 100%;
				left: 0px;
			}
			.footnews__item__excerpt{
				color: $blue;
			}
		}
		*/ }
  html:not(.touch) .footnews__item__link:after {
    transition: background-color 0.1s linear, height 0.25s cubic-bezier(0.19, 1, 0.22, 1); }
  html:not(.touch) .footnews__item__link .footnews__item__excerpt {
    transition: color .15s linear; }
  html:not(.touch) .footnews__item__link:hover:after {
    height: 4px;
    background-color: #1B1BE0; }
  html:not(.touch) .footnews__item__link:hover .footnews__item__excerpt {
    color: #1B1BE0; }

@media screen and (max-width: 1212px) {
  .footnews__content {
    width: auto;
    margin: 0 30px; } }

@media screen and (max-width: 767px) {
  .footnews {
    padding: 18px 0 80px;
    border-top: 1px solid #D5D8DD; }
  .footnews__content {
    width: 100%;
    height: auto;
    margin: 0 auto; }
  .footnews__title {
    margin: 0 24px 16px; }
  .footnews__list:after {
    content: "";
    display: block;
    width: 0px;
    height: 0px;
    float: none;
    clear: both;
    visibility: hidden; }
  .footnews__item {
    float: left;
    width: 50%;
    height: auto; }
    .footnews__item:nth-of-type(odd) {
      clear: both; }
  .footnews__item__link {
    padding: 0px; }
  .footnews__item__thumb, .footnews__item__thumb--nothumb {
    width: 100%;
    height: 80px;
    position: relative; }
  .footnews__item__body {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    height: 160px;
    padding: 12px;
    line-height: 0px; }
  .footnews__item__cat {
    display: inline-block;
    position: relative;
    left: auto;
    top: auto;
    border: 1px solid #1B1BE0;
    padding: 3px 8px;
    font-size: 12px;
    line-height: 12px;
    color: #1B1BE0; }
  .footnews__item__excerpt {
    line-height: 24px;
    white-space: normal;
    padding-right: 0px;
    max-height: 72px;
    margin: 8px 0 0 0; }
  .footnews__item__date {
    display: block;
    position: relative;
    top: auto;
    right: auto;
    font-size: 11px;
    line-height: 20px;
    margin-top: 0px;
    margin-top: 4px; } }

.relatedreports__article + .relatedreports__article {
  border-top: 1px solid #D5D8DD; }

.relatedreports__article__link {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row nowrap;
      flex-flow: row nowrap;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-align: center;
      align-items: center;
  position: relative;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  min-height: 105px;
  padding-left: 168px;
  color: #000;
  text-decoration: none; }

.relatedreports__article__link__thumb {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 168px;
  height: 105px;
  overflow: hidden; }
  .relatedreports__article__link__thumb img {
    display: block;
    width: 100%;
    height: auto; }

.relatedreports__article__link__thumb__imageplaceholder {
  display: block;
  width: 100%;
  height: 0px;
  padding-top: 62.5%;
  background-color: #D5D8DD;
  background-image: url(images/placeholder_logo.png);
  background-size: 36px 36px;
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
  z-index: 3; }

.relatedreports .relatedreports__article__link__title {
  font-size: 13px;
  line-height: 20px;
  padding: 0 0 0 24px; }

html:not(.touch) .relatedreports__article__link {
  transition: color .15s linear; }
  html:not(.touch) .relatedreports__article__link:hover {
    color: #1B1BE0; }

@media screen and (max-width: 480px) {
  .relatedreports {
    margin-top: 14px; }
  .relatedreports__article + .relatedreports__article {
    border-top: 0px;
    margin-top: 28px; }
  .relatedreports__article__link {
    display: block;
    padding: 0;
    min-height: 0px; }
  .relatedreports__article__link__thumb {
    position: relative;
    width: 100%;
    height: auto;
    margin-bottom: 12px; }
  .relatedreports .relatedreports__article__link__title {
    padding: 0; } }

.arrowlinelist li, .arrowlinelist--4col li, .arrowlinelist--3col li, .arrowlinelist--2col li {
  display: block; }
  .arrowlinelist li a, .arrowlinelist--4col li a, .arrowlinelist--3col li a, .arrowlinelist--2col li a {
    display: inline-block;
    font-size: 15px;
    line-height: 32px;
    width: auto;
    height: auto;
    padding-left: 30px;
    position: relative;
    color: #000;
    text-decoration: none; }
    .arrowlinelist li a:before, .arrowlinelist--4col li a:before, .arrowlinelist--3col li a:before, .arrowlinelist--2col li a:before, .arrowlinelist li a:after, .arrowlinelist--4col li a:after, .arrowlinelist--3col li a:after, .arrowlinelist--2col li a:after {
      content: "";
      display: block;
      width: 15px;
      height: 14px;
      background-size: 15px 14px;
      position: absolute;
      left: 0px;
      top: 8px; }
    .arrowlinelist li a:before, .arrowlinelist--4col li a:before, .arrowlinelist--3col li a:before, .arrowlinelist--2col li a:before {
      background-image: url(images/arrow_gray.png);
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
    .arrowlinelist li a:after, .arrowlinelist--4col li a:after, .arrowlinelist--3col li a:after, .arrowlinelist--2col li a:after {
      background-image: url(images/arrow_blue.png);
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }

html:not(.touch) .arrowlinelist a, html:not(.touch) .arrowlinelist--4col a, html:not(.touch) .arrowlinelist--3col a, html:not(.touch) .arrowlinelist--2col a {
  transition: color .15s linear; }
  html:not(.touch) .arrowlinelist a:before, html:not(.touch) .arrowlinelist--4col a:before, html:not(.touch) .arrowlinelist--3col a:before, html:not(.touch) .arrowlinelist--2col a:before, html:not(.touch) .arrowlinelist a:after, html:not(.touch) .arrowlinelist--4col a:after, html:not(.touch) .arrowlinelist--3col a:after, html:not(.touch) .arrowlinelist--2col a:after {
    transition: transform .15s linear, opacity .15s linear; }
  html:not(.touch) .arrowlinelist a:hover, html:not(.touch) .arrowlinelist--4col a:hover, html:not(.touch) .arrowlinelist--3col a:hover, html:not(.touch) .arrowlinelist--2col a:hover {
    color: #1B1BE0; }
    html:not(.touch) .arrowlinelist a:hover:before, html:not(.touch) .arrowlinelist--4col a:hover:before, html:not(.touch) .arrowlinelist--3col a:hover:before, html:not(.touch) .arrowlinelist--2col a:hover:before {
      -ms-transform: translate(2px, 0);
          transform: translate(2px, 0);
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
    html:not(.touch) .arrowlinelist a:hover:after, html:not(.touch) .arrowlinelist--4col a:hover:after, html:not(.touch) .arrowlinelist--3col a:hover:after, html:not(.touch) .arrowlinelist--2col a:hover:after {
      -ms-transform: translate(2px, 0);
          transform: translate(2px, 0);
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

.arrowlinelist--4col:after {
  content: "";
  display: block;
  width: 0px;
  height: 0px;
  float: none;
  clear: both;
  visibility: hidden; }

.arrowlinelist--4col li {
  width: 25%;
  float: left; }

.arrowlinelist--3col:after {
  content: "";
  display: block;
  width: 0px;
  height: 0px;
  float: none;
  clear: both;
  visibility: hidden; }

.arrowlinelist--3col li {
  width: 33.3333%;
  float: left; }

.arrowlinelist--2col:after {
  content: "";
  display: block;
  width: 0px;
  height: 0px;
  float: none;
  clear: both;
  visibility: hidden; }

.arrowlinelist--2col li {
  width: 50%;
  float: left; }

@media screen and (max-width: 767px) {
  .arrowlinelist li, .arrowlinelist--4col li, .arrowlinelist--3col li, .arrowlinelist--2col li {
    display: block; }
    .arrowlinelist li a, .arrowlinelist--4col li a, .arrowlinelist--3col li a, .arrowlinelist--2col li a {
      line-height: 24px; }
      .arrowlinelist li a:before, .arrowlinelist--4col li a:before, .arrowlinelist--3col li a:before, .arrowlinelist--2col li a:before, .arrowlinelist li a:after, .arrowlinelist--4col li a:after, .arrowlinelist--3col li a:after, .arrowlinelist--2col li a:after {
        top: 5px; }
  .arrowlinelist--4col li {
    width: 50%; }
  .arrowlinelist--3col li,
  .arrowlinelist--2col li {
    width: 100%; } }

.index .header-line {
  position: absolute;
  top: auto;
  bottom: 98px;
  display: none; }

.index .header {
  display: block;
  position: absolute;
  transition: transform 0.75s cubic-bezier(0.19, 1, 0.22, 1), opacity 0.1s linear, visibility 0s linear 0.1s;
  top: auto;
  bottom: -38px;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  z-index: 99;
  visibility: hidden;
  pointer-events: none; }

html.stick_head .header {
  transition: transform 0.75s cubic-bezier(0.19, 1, 0.22, 1), opacity 0.1s linear, visibility 0s linear 0.1s;
  position: fixed;
  top: 0;
  bottom: auto; }

html.head_active .header-line {
  position: fixed;
  top: 0px;
  bottom: auto;
  display: block; }

html.head_active .header {
  transition: transform 0.75s cubic-bezier(0.19, 1, 0.22, 1), opacity 0.25s linear, visibility 0s linear 0s;
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  visibility: visible;
  pointer-events: auto; }

.index__firstview {
  box-sizing: border-box;
  position: relative;
  height: 820px;
  height: 100vh;
  width: 100%;
  padding-bottom: 104px;
  overflow: visible !important; }

.index__firstview__visual {
  position: absolute;
  left: 0px;
  bottom: 0px;
  width: 100%;
  height: 100vh;
  z-index: 0;
  background-color: #D5D8DD; }
  .index__firstview__visual__img {
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    z-index: 0; }

.index__firstview__container {
  width: 1152px;
  height: calc(100vh - 104px);
  position: absolute;
  left: 50%;
  margin-left: -576px;
  bottom: 104px; }

.index__firstview__pager {
  position: absolute;
  z-index: 1;
  bottom: 48px;
  right: 3px; }
  .index__firstview__pager__page {
    position: relative;
    display: block;
    width: 48px;
    height: 2px;
    background-color: #D5D8DD;
    float: left;
    margin-right: 8px;
    overflow: hidden; }
    .index__firstview__pager__page:last-of-type {
      margin: 0; }
    .index__firstview__pager__page:before {
      content: "";
      display: block;
      width: 0%;
      height: 100%;
      position: absolute;
      top: 0px;
      right: 0px;
      background-color: #1B1BE0;
      transition: width 1s cubic-bezier(0.19, 1, 0.22, 1); }
    .index__firstview__pager__page.current:before {
      width: 100%;
      right: auto;
      left: 0px;
      transition: width 6s linear; }

.index__firstview__logo {
  display: block;
  width: 630px;
  height: 151px;
  display: block;
  text-indent: 200%;
  white-space: nowrap;
  overflow: hidden;
  color: transparent;
  position: absolute;
  left: -40px;
  top: 83px;
  z-index: 1;
  background-image: url(images/hero_logo.png);
  background-size: 630px 151px; }

.index__firstview__subnav {
  position: absolute;
  top: 120px;
  right: 0px;
  width: 224px;
  height: 240px;
  background-color: #FFF;
  border-bottom: 6px solid #1B1BE0;
  z-index: 1; }

.index__firstview__subnav__request {
  display: block;
  width: 100%;
  height: 56px;
  background-color: #D5D8DD;
  color: #000;
  text-align: center;
  font-size: 13px;
  line-height: 56px;
  text-decoration: none;
  position: absolute;
  left: 0px;
  bottom: 0px; }
  .index__firstview__subnav__request span {
    position: relative;
    z-index: 1; }
  .index__firstview__subnav__request:before {
    content: "";
    display: block;
    width: 0px;
    height: 100%;
    position: absolute;
    right: 0px;
    top: 0px;
    background-color: #1B1BE0;
    z-index: 0; }

.index__firstview__subnav__list {
  width: 100%;
  height: 132px;
  position: relative;
  top: 26px; }
  .index__firstview__subnav__list li {
    width: 100%;
    height: 44px; }
    .index__firstview__subnav__list li a {
      box-sizing: border-box;
      display: block;
      width: 100%;
      height: 44px;
      font-size: 13px;
      line-height: 44px;
      text-align: left;
      position: relative;
      color: #000;
      text-decoration: none;
      padding-left: 62px; }
      .index__firstview__subnav__list li a:before, .index__firstview__subnav__list li a:after {
        content: "";
        display: block;
        width: 15px;
        height: 14px;
        background-size: 15px 14px;
        position: absolute;
        top: 14px;
        left: 32px; }
      .index__firstview__subnav__list li a:before {
        background-image: url(images/arrow_gray.png);
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
      .index__firstview__subnav__list li a:after {
        background-image: url(images/arrow_blue.png);
        opacity: 0;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }

.index__firstview__gnav {
  box-sizing: border-box;
  width: 100%;
  height: 104px;
  background-color: #FFF;
  border-top: 6px solid #D5D8DD;
  position: absolute;
  left: 0px;
  bottom: 0px;
  z-index: 1;
  padding-top: 1px; }

.index__firstview__gnav__list {
  box-sizing: border-box;
  position: relative;
  padding-right: 66px;
  width: 1152px;
  margin: 0 auto; }
  .index__firstview__gnav__list ul {
    height: 100%;
    margin: 0 auto;
    font-size: 0px;
    text-align: right;
    transition: opacity .15s linear .2s, visibility 0s linear .2s; }
    .index__firstview__gnav__list ul li {
      display: inline-block;
      width: auto;
      height: 100%;
      margin: 0 20px;
      vertical-align: top; }
    .index__firstview__gnav__list ul li a {
      display: block;
      width: auto;
      height: 100%;
      font-size: 15px;
      line-height: 98px;
      color: #000;
      text-decoration: none; }

.index__firstview__gnav__search {
  width: 40px;
  height: 100%;
  position: absolute;
  margin: 0px;
  top: 0px;
  right: 20px;
  overflow: hidden;
  transition: width 0.5s cubic-bezier(0.19, 1, 0.22, 1);
  background-color: #FFF; }

.index__firstview__gnav__search__icon {
  display: block;
  text-indent: 200%;
  white-space: nowrap;
  overflow: hidden;
  color: transparent;
  width: 40px;
  height: 100%;
  background-image: url(images/search.png);
  background-size: 14px 14px;
  background-repeat: no-repeat;
  background-position: center; }

.index__firstview__gnav__search__input {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 760px;
  height: 44px;
  box-sizing: border-box;
  font-family: YuMincho, 'Yu Mincho', serif;
  display: block;
  border: 1px solid #F7F9FC;
  border-radius: 0px;
  background-color: #F7F9FC;
  font-size: 15px;
  line-height: 26px;
  padding: 7px 12px;
  outline: 0;
  transition: border-color .1s linear, opacity .2s linear;
  position: absolute;
  top: 25px;
  left: 49px;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
  .index__firstview__gnav__search__input:focus {
    border-color: #1B1BE0; }

.index__firstview__gnav__search__exec {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: relative;
  border: none;
  padding: 0;
  background-color: transparent;
  font-family: YuMincho, 'Yu Mincho', serif;
  width: 40px;
  height: 100%;
  text-align: center;
  font-size: 15px;
  line-height: 68px;
  text-decoration: none;
  cursor: pointer;
  color: #000;
  position: absolute;
  top: 0px;
  left: 825px;
  outline: 0;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  transition: opacity .2s linear; }

.index__firstview__gnav__list.search_open ul {
  transition: opacity .15s linear, visibility 0s linear .15s;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  pointer-events: none;
  visibility: hidden; }

.index__firstview__gnav__list.search_open .index__firstview__gnav__search {
  width: 865px; }
  .index__firstview__gnav__list.search_open .index__firstview__gnav__search .index__firstview__gnav__search__icon {
    background-image: url(images/search_close.png); }
  .index__firstview__gnav__list.search_open .index__firstview__gnav__search .index__firstview__gnav__search__input {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    transition: border-color .1s linear, opacity .3s linear; }
  .index__firstview__gnav__list.search_open .index__firstview__gnav__search .index__firstview__gnav__search__exec {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    transition: opacity .3s linear .2s; }

.index__firstview__btn {
  width: 64px;
  height: 64px;
  position: absolute;
  left: 8px;
  bottom: -32px;
  z-index: 2; }
  .index__firstview__btn:before {
    content: "";
    display: block;
    width: 1px;
    height: calc(50vh - 190px);
    position: absolute;
    left: 31px;
    bottom: 64px;
    background-color: #FFF; }
  .index__firstview__btn > a {
    box-sizing: border-box;
    display: block;
    width: 64px;
    height: 64px;
    border: 1px solid #D5D8DD;
    background-color: #FFF; }
    .index__firstview__btn > a:before, .index__firstview__btn > a:after {
      content: "";
      display: block;
      width: 15px;
      height: 14px;
      background-size: 15px 14px;
      -ms-transform: rotate(90deg);
          transform: rotate(90deg);
      position: absolute;
      left: 23px;
      top: 25px; }
    .index__firstview__btn > a:before {
      background-image: url(images/arrow_gray.png);
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
    .index__firstview__btn > a:after {
      background-image: url(images/arrow_blue.png);
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }

html.touch .index__firstview__btn.anim_in:before,
html:not(.touch) .index__firstview__btn.anim_in:before {
  -ms-transform-origin: center bottom;
      transform-origin: center bottom;
  -ms-transform: scale(1, 0);
      transform: scale(1, 0);
  transition: transform 0.9s cubic-bezier(0.95, 0.05, 0.795, 0.035); }

html.touch .index__firstview__btn.anim_in > a:before, html.touch .index__firstview__btn.anim_in > a:after,
html:not(.touch) .index__firstview__btn.anim_in > a:before,
html:not(.touch) .index__firstview__btn.anim_in > a:after {
  transition: transform .05s linear .9s;
  -ms-transform: translate(0, 3px) rotate(90deg);
      transform: translate(0, 3px) rotate(90deg); }

html.touch .index__firstview__btn.anim_out:before,
html:not(.touch) .index__firstview__btn.anim_out:before {
  -ms-transform-origin: center top;
      transform-origin: center top;
  -ms-transform: scale(1, 1);
      transform: scale(1, 1);
  transition: transform 0.9s cubic-bezier(0.19, 1, 0.22, 1) 0.1s; }

html.touch .index__firstview__btn.anim_out > a:before, html.touch .index__firstview__btn.anim_out > a:after,
html:not(.touch) .index__firstview__btn.anim_out > a:before,
html:not(.touch) .index__firstview__btn.anim_out > a:after {
  transition: transform .3s linear;
  -ms-transform: translate(0, 0px) rotate(90deg);
      transform: translate(0, 0px) rotate(90deg); }

html:not(.touch) .index__firstview__subnav__list a {
  transition: color .15s linear; }
  html:not(.touch) .index__firstview__subnav__list a:before, html:not(.touch) .index__firstview__subnav__list a:after {
    transition: transform .15s linear, opacity .15s linear; }
  html:not(.touch) .index__firstview__subnav__list a:hover {
    color: #1B1BE0; }
    html:not(.touch) .index__firstview__subnav__list a:hover:before {
      -ms-transform: translate(2px, 0);
          transform: translate(2px, 0);
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
    html:not(.touch) .index__firstview__subnav__list a:hover:after {
      -ms-transform: translate(2px, 0);
          transform: translate(2px, 0);
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

html:not(.touch) .index__firstview__subnav__request {
  transition: color .15s linear; }
  html:not(.touch) .index__firstview__subnav__request:before {
    transition: width 0.25s cubic-bezier(0.19, 1, 0.22, 1);
    width: 0%; }
  html:not(.touch) .index__firstview__subnav__request:hover {
    color: #FFF; }
    html:not(.touch) .index__firstview__subnav__request:hover:before {
      width: 100%;
      left: 0px;
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

html:not(.touch) .index__firstview__gnav a {
  transition: color .15s linear; }
  html:not(.touch) .index__firstview__gnav a:hover {
    color: #1B1BE0; }

html:not(.touch) .index__firstview__btn a {
  transition: border-color .15s linear; }
  html:not(.touch) .index__firstview__btn a:before, html:not(.touch) .index__firstview__btn a:after {
    transition: transform .15s linear, opacity .15s linear; }
  html:not(.touch) .index__firstview__btn a:hover {
    border-color: #1B1BE0; }
    html:not(.touch) .index__firstview__btn a:hover:before {
      transition: transform .15s linear, opacity .15s linear !important;
      -ms-transform: translate(0, 2px) rotate(90deg) !important;
          transform: translate(0, 2px) rotate(90deg) !important;
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
    html:not(.touch) .index__firstview__btn a:hover:after {
      transition: transform .15s linear, opacity .15s linear !important;
      -ms-transform: translate(0, 2px) rotate(90deg) !important;
          transform: translate(0, 2px) rotate(90deg) !important;
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

@media screen and (max-width: 1212px) {
  .index__firstview__container {
    width: calc(100% - 60px);
    left: 30px;
    margin-left: 0px; }
  .index__firstview__gnav__list {
    width: auto;
    margin: 0 30px; } }

@media screen and (max-width: 1023px) {
  .index__firstview__gnav__list ul li {
    margin: 0 10px; }
    .index__firstview__gnav__list ul li a {
      font-size: 13px; }
  .index__firstview__gnav__search__input {
    width: 505px; }
  .index__firstview__gnav__search__exec {
    left: 574px; }
  .index__firstview__gnav__list.search_open .index__firstview__gnav__search {
    width: 615px; }
  .index__firstview__logo {
    width: 504px;
    height: 120.8px;
    left: -32px;
    top: 91px;
    background-size: 504px 120.8px; }
  .index__firstview__subnav {
    width: 200px; }
  .index__firstview__subnav__list li a {
    padding-left: 52px; }
    .index__firstview__subnav__list li a:before, .index__firstview__subnav__list li a:after {
      left: 26px; } }

.index__about {
  background-color: #D5D8DD;
  background-image: url(images/iamas_logo.png);
  background-size: 424px 416px;
  background-position: right 40px;
  background-repeat: no-repeat; }

.index__about__content {
  position: relative;
  display: block;
  box-sizing: border-box;
  width: auto;
  max-width: 1212px;
  padding: 114px 30px 120px 30px;
  height: auto;
  min-height: 480px;
  margin: 0 auto; }
  .index__about__content > h2 {
    color: #FFF;
    margin-bottom: 22px;
    line-height: 38px; }
  .index__about__content > p {
    font-size: 13px;
    line-height: 28px; }

.index__about__links {
  margin-top: 42px; }
  .index__about__links:after {
    content: "";
    display: block;
    width: 0px;
    height: 0px;
    float: none;
    clear: both;
    visibility: hidden; }

.index__about__links__block {
  display: block;
  width: 25%;
  height: 160px;
  float: left;
  position: relative;
  background-color: #FFF; }
  .index__about__links__block:before {
    content: "";
    display: block;
    width: 0%;
    height: 100%;
    position: absolute;
    right: 0px;
    top: 0px;
    background-color: #1B1BE0;
    z-index: 0; }

.index__about__links__image {
  width: 100%;
  height: 96px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-color: #D5D8DD;
  position: relative;
  z-index: 1; }

.index__about__links__text {
  width: 100%;
  height: 64px;
  position: relative;
  z-index: 1;
  color: #000;
  text-decoration: none;
  text-align: center;
  font-size: 13px;
  line-height: 24px; }
  .index__about__links__text span {
    display: block;
    width: 100%;
    position: absolute;
    left: 0%;
    top: 50%;
    -ms-transform: translate(0%, -50%);
        transform: translate(0%, -50%); }
  .index__about__links__text:before, .index__about__links__text:after {
    content: "";
    display: block;
    width: 15px;
    height: 14px;
    background-size: 15px 14px;
    position: absolute;
    left: 22px;
    top: 50%;
    margin-top: -7px; }
  .index__about__links__text:before {
    background-image: url(images/arrow_gray.png);
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
  .index__about__links__text:after {
    background-image: url(images/arrow_white.png);
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }

.index__about__links__block.faculty .index__about__links__image {
  background-size: auto 100%;
  background-repeat: repeat-x; }

html:not(.touch) .index__about__links__block:before {
  transition: width 0.25s cubic-bezier(0.19, 1, 0.22, 1); }

html:not(.touch) .index__about__links__block .index__about__links__text {
  transition: color .15s linear; }
  html:not(.touch) .index__about__links__block .index__about__links__text:before, html:not(.touch) .index__about__links__block .index__about__links__text:after {
    transition: transform .15s linear, opacity .15s linear; }

html:not(.touch) .index__about__links__block:hover:before {
  left: 0px;
  width: 100%; }

html:not(.touch) .index__about__links__block:hover .index__about__links__text {
  color: #FFF; }
  html:not(.touch) .index__about__links__block:hover .index__about__links__text:before {
    -ms-transform: translate(2px, 0);
        transform: translate(2px, 0);
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
  html:not(.touch) .index__about__links__block:hover .index__about__links__text:after {
    -ms-transform: translate(2px, 0);
        transform: translate(2px, 0);
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

@media screen and (max-width: 1212px) {
  .index__about__links__block {
    width: 33.3333%; } }

.index__section {
  padding-top: 120px;
  padding-bottom: 120px; }

.index__section#news {
  border-top: none;
  padding-top: 80px; }

.index__section#about {
  padding: 0px;
  border: none; }

.index__section#report {
  width: 100%;
  max-width: 100%;
  border-top: 0px; }
  .index__section#report:before {
    content: "";
    display: block;
    width: calc(100% - 60px);
    max-width: 1152px;
    height: 1px;
    background-color: #D5D8DD;
    position: absolute;
    left: 50%;
    top: 0px;
    -ms-transform: translate(-50%, 0px);
        transform: translate(-50%, 0px); }
  .index__section#report .head_1, .index__section#report .index__about__content > h2, .index__section#report .single__header__title {
    width: calc(100% - 60px);
    max-width: 1152px;
    margin-left: auto;
    margin-right: auto; }

@media screen and (max-width: 1212px) {
  .index__section#report {
    margin-left: auto;
    margin-right: auto; } }

.index__affiliates {
  margin-bottom: 74px; }
  .index__affiliates:after {
    content: "";
    display: block;
    width: 0px;
    height: 0px;
    float: none;
    clear: both;
    visibility: hidden; }

.index__affiliates__block {
  display: block;
  width: 368px;
  height: 120px;
  box-sizing: border-box;
  border: 1px solid #D5D8DD;
  position: relative;
  padding: 0 22px 0 142px;
  font-size: 13px;
  line-height: 20px;
  text-decoration: none;
  color: #000;
  float: left;
  margin-right: 24px; }
  .index__affiliates__block > img {
    display: block;
    width: 120px;
    height: 120px;
    position: absolute;
    left: -1px;
    top: -1px; }
  .index__affiliates__block > div {
    position: relative;
    width: 100%;
    height: 100%;
    display: table; }
  .index__affiliates__block > div > span {
    display: table-cell;
    vertical-align: middle; }

html:not(.touch) .index__affiliates__block {
  transition: border-color .15s linear, color .15s linear; }
  html:not(.touch) .index__affiliates__block:hover {
    color: #1B1BE0;
    border-color: #1B1BE0; }

@media screen and (max-width: 1023px) {
  .index__affiliates__block {
    width: 328px;
    padding: 0 22px 0 132px; } }

.index__relatedlinks__list {
  display: -ms-flexbox;
  display: flex;
  max-width: 1152px;
  width: 100%;
  height: auto;
  margin: 0 auto;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap; }

.index__relatedlinks__listitem {
  position: relative;
  width: calc(33.3333% - 2px);
  height: 72px;
  margin: 0 1px 2px;
  background-color: #D5D8DD; }
  .index__relatedlinks__listitem:before {
    content: "";
    display: block;
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    background-color: #1B1BE0;
    z-index: 0;
    -ms-transform: scale(0, 1);
        transform: scale(0, 1);
    -ms-transform-origin: right center;
        transform-origin: right center; }

.index__relatedlinks__link {
  position: relative;
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  padding: 17px 20px;
  color: #000;
  text-decoration: none; }
  .index__relatedlinks__link:before {
    content: "";
    display: block;
    width: 14px;
    height: 14px;
    background-image: url(images/relatedlink_mark.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 7px;
    right: 5px; }

.index__relatedlinks__link__label {
  font-family: YuMincho, 'Yu Mincho', serif;
  font-weight: 600;
  font-size: 20px;
  line-height: 22px;
  color: #FFF;
  display: block; }

.index__relatedlinks__link__title {
  font-family: YuGothic, 'Yu Gothic', sans-serif;
  font-size: 13px;
  line-height: 18px;
  display: block; }

html:not(.touch) .index__relatedlinks__listitem:before {
  transition: transform 0.25s cubic-bezier(0.19, 1, 0.22, 1); }

html:not(.touch) .index__relatedlinks__listitem:hover:before {
  -ms-transform: scale(1, 1);
      transform: scale(1, 1);
  -ms-transform-origin: left center;
      transform-origin: left center; }

html:not(.touch) .index__relatedlinks__listitem:hover .index__relatedlinks__link__title {
  transition-duration: 0s;
  color: #FFF; }

html:not(.touch) .index__relatedlinks__listitem:hover .index__relatedlinks__link:before {
  -ms-transform: translate(2px, -2px);
      transform: translate(2px, -2px); }

html:not(.touch) .index__relatedlinks__link__title {
  transition: color .15s linear; }

html:not(.touch) .index__relatedlinks__link:before {
  transition: transform .1s linear; }

@media screen and (max-width: 767px) {
  .index .header-line,
  .index .header {
    display: none !important; }
  .index .head_1, .index .index__about__content > h2, .index .single__header__title {
    font-size: 20px;
    margin-bottom: 28px; }
  .index__firstview {
    box-sizing: border-box;
    position: relative;
    height: 320px;
    height: 100vw;
    width: 100%;
    padding-bottom: 0px;
    overflow: hidden; }
  .index__firstview__visual {
    position: absolute;
    left: 0px;
    bottom: 0px;
    width: 100%;
    height: 100vw;
    z-index: 0;
    background-color: #D5D8DD; }
  .index__firstview__container {
    position: absolute;
    width: 100%;
    height: 100vw;
    left: 0px;
    margin-left: 0px;
    bottom: 0px; }
  .index__firstview__pager {
    position: absolute;
    z-index: 1;
    bottom: 0px;
    right: auto;
    left: 24px; }
    .index__firstview__pager__page {
      width: 24px;
      height: 2px;
      float: left;
      margin-right: 4px;
      overflow: hidden; }
  .index__firstview__logo {
    width: 167px;
    height: 181px;
    position: absolute;
    left: 0px;
    top: 0px;
    z-index: 1;
    background-image: url(images/hero_logo_sp.png);
    background-size: 167px 181px; }
  .index__firstview__subnav,
  .index__firstview__gnav,
  .index__firstview__btn {
    display: none !important; }
  .index__about {
    background-image: none; }
  .index__about__content {
    padding: 40px 24px 48px 24px; }
    .index__about__content > h2 {
      font-size: 20px;
      line-height: 28px;
      margin-bottom: 16px; }
    .index__about__content > p {
      font-size: 13px;
      line-height: 24px; }
  .index__about__links {
    width: 100%;
    margin: 34px auto 0; }
    .index__about__links:after {
      content: "";
      display: block;
      width: 0px;
      height: 0px;
      float: none;
      clear: both;
      visibility: hidden; }
  .index__about__links__block {
    width: 100%;
    height: auto;
    float: none;
    background-color: #FFF; }
  .index__about__links__image {
    height: 192px; }
  .index__section {
    padding-top: 50px;
    padding-bottom: 50px; }
  .index__section#news {
    border-top: none;
    padding-top: 36px; }
  .index__section#about {
    padding: 0px;
    border: none; }
  .index__section#activity {
    border: none;
    padding-top: 36px;
    padding-bottom: 40px; }
  .index__section#report {
    border-top: 1px solid #D5D8DD;
    padding-top: 38px;
    padding-bottom: 40px; }
    .index__section#report:before {
      display: none; }
    .index__section#report .blockarticlelist__more {
      margin-top: 34px; }
  .index__section#affiliates {
    width: 100%;
    margin: 0 0 0 0;
    padding-top: 34px; }
    .index__section#affiliates > h2 {
      margin-left: 24px;
      margin-right: 24px;
      margin-bottom: 20px; }
  .index__affiliates {
    margin-bottom: 24px; }
  .index__affiliates__block {
    width: 100%;
    height: 80px;
    padding: 0 22px 0 98px;
    font-size: 13px;
    line-height: 20px;
    text-decoration: none;
    color: #000;
    float: none;
    margin: -1px 0 0 0; }
    .index__affiliates__block > img {
      display: block;
      width: 80px;
      height: 80px;
      position: absolute;
      left: -1px;
      top: -1px; }
    .index__affiliates__block > div {
      position: relative;
      width: 100%;
      height: 100%;
      display: table; }
    .index__affiliates__block > div > span {
      display: table-cell;
      vertical-align: middle; }
  .index__relatedlinks__head {
    margin-left: 24px;
    margin-right: 24px; }
  .index__relatedlinks__listitem {
    width: calc(50% - 2px);
    height: 60px; }
  .index__relatedlinks__link {
    padding: 12px 0px 12px 10px; }
    .index__relatedlinks__link:before {
      top: 7px;
      right: 5px; }
  .index__relatedlinks__link__label {
    font-size: 18px;
    line-height: 20px; }
  .index__relatedlinks__link__title {
    font-size: 12px;
    line-height: 16px; } }

@media screen and (max-width: 580px) {
  .index__about__links__image {
    height: 0px;
    padding-top: 33.125%; } }

.outline__president__portrait {
  display: block;
  margin-bottom: 20px; }

.outline__president__title {
  font-size: 13px;
  line-height: 22px; }

.outline__about__body {
  margin-bottom: 32px; }
  .outline__about__body ol {
    list-style: decimal outside;
    padding-left: 20px; }
  .outline__about__body .outline__about__body__olc {
    list-style: none; }
    .outline__about__body .outline__about__body__olc li {
      position: relative; }
    .outline__about__body .outline__about__body__olc span {
      position: absolute;
      left: -20px; }

.outline__history__text p {
  line-height: 36px;
  margin-bottom: 36px; }

.outline__history__timeline {
  margin-top: 100px; }

.outline__history__pact {
  border-top: 1px solid #D5D8DD;
  padding-top: 100px; }
  .outline__history__pact h4 {
    font-weight: 600;
    font-size: 15px;
    line-height: 32px;
    margin-bottom: 40px; }
  .outline__history__pact dl {
    position: relative; }
    .outline__history__pact dl dt, .outline__history__pact dl dd {
      font-size: 15px;
      line-height: 36px; }
    .outline__history__pact dl dt {
      position: absolute;
      left: 0px; }
    .outline__history__pact dl dd {
      padding-left: 100px; }

.outline__subject {
  padding-bottom: 70px; }

.outline__subject__list:after {
  content: "";
  display: block;
  width: 0px;
  height: 0px;
  float: none;
  clear: both;
  visibility: hidden; }

.outline__subject__block {
  position: relative;
  width: calc(33.3333% - 32px);
  height: auto;
  margin-left: 48px;
  float: left;
  margin-bottom: 60px;
  margin-top: 36px; }
  .outline__subject__block:nth-of-type(3n+1) {
    clear: both;
    margin-left: 0px; }
  .outline__subject__block__number {
    box-sizing: border-box;
    width: 96px;
    height: 96px;
    border: 1px solid #D5D8DD;
    font-size: 24px;
    font-weight: 600;
    color: #969BA3;
    text-align: center;
    line-height: 94px; }
    .outline__subject__block__number:before {
      content: "";
      display: block;
      width: calc(100% - 120px);
      height: 1px;
      background-color: #D5D8DD;
      position: absolute;
      right: 0px;
      top: 48px; }
  .outline__subject__block h4 {
    font-size: 18px;
    font-weight: 600;
    margin: 32px 0 38px; }
  .outline__subject__block p {
    font-size: 13px;
    line-height: 24px; }

.outline__pamphlet .container__row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row nowrap;
      flex-flow: row nowrap;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: stretch;
      align-items: stretch; }
  .outline__pamphlet .container__row:after {
    display: none; }

.outline__pamphlet .container__left {
  position: relative;
  width: calc(41.6667% - 30px);
  max-width: 374px; }

.outline__pamphlet .container__right {
  padding-left: 0px; }

.outline__pamphlet__block {
  margin-top: 40px; }
  .outline__pamphlet__block p {
    font-weight: 600;
    -webkit-font-smoothing: antialiased; }
  .outline__pamphlet__block .btnlink, .outline__pamphlet__block .btnlink--download {
    margin-top: 12px;
    width: 100%;
    max-width: 288px; }
  .outline__pamphlet__block .btnlink + .btnlink, .outline__pamphlet__block .btnlink--download + .btnlink, .outline__pamphlet__block .btnlink + .btnlink--download, .outline__pamphlet__block .btnlink--download + .btnlink--download {
    margin-top: 18px; }

.outline__request p,
.outline__books p {
  width: 58.3333%;
  max-width: 530px; }

.outline__request .btnlink, .outline__request .btnlink--download,
.outline__books .btnlink,
.outline__books .btnlink--download {
  position: absolute;
  top: 0px;
  right: 0px;
  max-width: 288px;
  width: calc(41.6667% - 30px); }

.outline__request {
  padding-bottom: 70px; }

.outline__map__link {
  display: inline-block;
  color: #000;
  text-decoration: none;
  position: relative;
  margin-top: 8px; }
  .outline__map__link:before {
    content: "";
    display: block;
    width: 0%;
    height: 1px;
    background-color: #1B1BE0;
    position: absolute;
    right: 0px;
    bottom: -4px; }
  .outline__map__link span {
    display: inline-block;
    position: relative;
    padding-left: 16px; }
    .outline__map__link span:before, .outline__map__link span:after {
      content: "";
      display: block;
      width: 10px;
      height: 15px;
      background-size: 10px 15px;
      margin-right: 8px;
      vertical-align: middle;
      position: absolute;
      top: 7px;
      left: 0px; }
    .outline__map__link span:before {
      background-image: url(images/footer_map.png);
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
    .outline__map__link span:after {
      background-image: url(images/footer_map_blue.png);
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }

.outline__map__embed {
  width: 100%;
  height: 420px;
  background-color: #D5D8DD; }

.outline__map__text {
  font-size: 12px;
  line-height: 24px;
  margin-top: 12px; }

.outline__access__diagram {
  display: block;
  max-width: 671px;
  width: 100%;
  height: auto; }

.outline__access__text {
  font-size: 13px;
  line-height: 28px;
  margin-top: 60px; }

html:not(.touch) .outline__map__link:before {
  transition: width 0.25s cubic-bezier(0.19, 1, 0.22, 1); }

html:not(.touch) .outline__map__link span {
  transition: color .15s linear; }
  html:not(.touch) .outline__map__link span:before, html:not(.touch) .outline__map__link span:after {
    transition: opacity .15s linear; }

html:not(.touch) .outline__map__link:hover:before {
  width: 100%;
  left: 0px; }

html:not(.touch) .outline__map__link:hover span {
  color: #1B1BE0; }
  html:not(.touch) .outline__map__link:hover span:before {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
  html:not(.touch) .outline__map__link:hover span:after {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

@media screen and (max-width: 767px) {
  .outline__about .container__right {
    margin-top: 0px; }
  .outline__president__portrait {
    width: 202px;
    height: 202px;
    margin-bottom: 12px; }
  .outline__president__title {
    margin-bottom: 24px; }
  .outline__map__embed {
    width: calc(100% + 48px);
    margin-left: -24px;
    height: 200px; }
  .outline__map__text {
    margin-top: 16px; }
  .outline__access .container__right {
    margin-top: 0px; }
  .outline__access__diagram {
    display: none; }
  .outline__access__text {
    margin-top: 28px; }
  .outline__history__text p {
    line-height: 30px;
    margin-bottom: 30px; }
  .outline__history__timeline {
    margin-top: 60px; }
    .outline__history__timeline .container__section:last-of-type, .outline__history__timeline .container__section--foldable:last-of-type {
      padding-bottom: 0px; }
  .outline__history__pact {
    border-top: 1px solid #D5D8DD;
    padding-top: 60px;
    padding-bottom: 20px; }
    .outline__history__pact h4 {
      line-height: 30px;
      margin-bottom: 20px; }
    .outline__history__pact dl {
      position: relative; }
      .outline__history__pact dl dt, .outline__history__pact dl dd {
        font-size: 15px;
        line-height: 30px; }
      .outline__history__pact dl dt {
        position: absolute;
        left: 0px; }
      .outline__history__pact dl dd {
        padding-left: 80px; }
  /*
	.outline__history__block{
		width: 100%;
		height: auto;
		position: relative;
	}
	.outline__history__block__year{
		width: auto;
		height: 34px;
		font-size: 32px;
		line-height: 34px;
		color: $blue;
		position: absolute;
		left: 0px;
		top: -17px;
		margin: 0;
		text-align: left;
	}
	.outline__history__block__images{
		width: 100%;
		height:153px;
		background-color: $gray;
		position: relative;
		top: 0px;
	}
	.outline__history__block__detail{
		width: 100%;
		height: auto;
		position: relative;
		top: 0px;
		margin: 4px 0 54px 0;
		&:last-of-type{
			margin-bottom: 0px;
		}
		ul{
			padding: 16px 0px 16px 1.5em !important;
		}
		li{
			position: relative;
			font-size: 12px;
			line-height: 28px;

		}
	}
	*/
  .outline__actionplan .container__right {
    margin-top: 0px; }
  .outline__pamphlet .container__row {
    display: block; }
  .outline__pamphlet .container__left {
    width: auto;
    max-width: 100%; }
  .outline__pamphlet .gallery {
    width: calc(100% + 48px);
    margin-left: -24px; }
  .outline__pamphlet__block {
    margin-top: 32px;
    margin-bottom: 32px; }
    .outline__pamphlet__block .btnlink, .outline__pamphlet__block .btnlink--download {
      width: 100%;
      max-width: 100%;
      margin-top: 10px; }
    .outline__pamphlet__block .btnlink + .btnlink, .outline__pamphlet__block .btnlink--download + .btnlink, .outline__pamphlet__block .btnlink + .btnlink--download, .outline__pamphlet__block .btnlink--download + .btnlink--download {
      width: 100%;
      max-width: 100%;
      margin-top: 16px; }
  .outline__request p,
  .outline__books p {
    width: auto;
    max-width: 100%; }
  .outline__request .btnlink, .outline__request .btnlink--download,
  .outline__books .btnlink,
  .outline__books .btnlink--download {
    position: relative;
    margin-top: 34px;
    width: 100%;
    max-width: 100%; }
  .outline__request {
    padding-bottom: 40px; }
  .outline__subject {
    padding-bottom: 30px; }
  .outline__subject__block {
    position: relative;
    width: 100%;
    height: auto;
    margin-left: 0px;
    float: none;
    margin-bottom: 36px;
    margin-top: 36px; }
    .outline__subject__block__number {
      width: 64px;
      height: 64px;
      line-height: 62px; }
      .outline__subject__block__number:before {
        width: calc(100% - 88px);
        top: 32px; }
    .outline__subject__block h4 {
      font-size: 18px;
      margin: 26px 0 18px; }
    .outline__subject__block p {
      font-size: 15px;
      line-height: 30px; } }

.facility__outline__building {
  margin-top: 112px; }
  .facility__outline__building:after {
    content: "";
    display: block;
    width: 0px;
    height: 0px;
    float: none;
    clear: both;
    visibility: hidden; }

.facility__outline__building__block {
  width: calc(50% - 24px);
  height: auto;
  position: relative;
  float: left; }
  .facility__outline__building__block > img {
    display: block;
    width: 100%;
    height: auto; }
  .facility__outline__building__block > h4 {
    font-size: 18px;
    line-height: 24px;
    margin: 20px 0 14px; }
  .facility__outline__building__block > p {
    font-size: 12px;
    line-height: 24px; }
  .facility__outline__building__block:nth-of-type(odd) {
    margin-right: 48px; }

.facility__list .blocklist__item > span.label {
  display: block;
  font-size: 12px;
  color: #1B1BE0; }

.facility__list .blocklist__item > h4 {
  font-size: 18px;
  line-height: 24px;
  margin-bottom: 14px; }

.facility__list .blocklist__item > p {
  font-size: 12px;
  line-height: 24px; }

.facility__dorm__outline {
  font-size: 15px;
  line-height: 32px;
  margin-right: 106px; }
  .facility__dorm__outline span {
    display: block;
    font-size: 12px;
    line-height: 24px;
    margin-top: 12px; }

.facility__dorm__photo {
  display: block;
  width: 100%;
  height: auto; }

.facility__dorm__detail {
  margin: 40px 0; }
  .facility__dorm__detail:after {
    content: "";
    display: block;
    width: 0px;
    height: 0px;
    float: none;
    clear: both;
    visibility: hidden; }
  .facility__dorm__detail__item {
    display: block;
    float: left;
    box-sizing: border-box;
    width: calc(50% - 16px);
    height: 50px;
    padding: 17px 0;
    border-bottom: 1px solid #D5D8DD;
    font-size: 12px;
    line-height: 17px; }
    .facility__dorm__detail__item:nth-of-type(odd) {
      margin-right: 32px; }
    .facility__dorm__detail__item:nth-of-type(1), .facility__dorm__detail__item:nth-of-type(2) {
      border-top: 1px solid #D5D8DD; }
  .facility__dorm__detail__label {
    float: left;
    display: block;
    width: 68px; }
  .facility__dorm__detail__text {
    float: left;
    display: block;
    width: auto;
    border-left: 1px solid #D5D8DD;
    padding-left: 32px; }

.facility__dorm__floorplan {
  display: block;
  width: 100%;
  max-width: 321px;
  height: auto; }

.facility__dorm__equip {
  font-size: 12px;
  line-height: 24px;
  margin-top: 40px; }

.facility__dorm__link {
  margin-top: 64px; }

.facility__rist #outline .gallery {
  margin-top: 32px; }

.facility__rist .container__article__body__section h5, .facility__rist .educational_policy__section h5 {
  margin-bottom: 24px; }

.facility__rist .container__article__body__section p, .facility__rist .educational_policy__section p, .facility__rist .container__article__body__section ul, .facility__rist .educational_policy__section ul {
  margin: 0; }

.facility__rist .container__article__body__section table td, .facility__rist .educational_policy__section table td {
  white-space: nowrap; }

.facility__rist .container__article__body__section ul.star, .facility__rist .educational_policy__section ul.star,
.facility__rist .container__article__body__section span.note,
.facility__rist .educational_policy__section span.note {
  display: block;
  font-size: 13px;
  line-height: 24px;
  margin-top: 12px; }

.facility__rist .container__article__body__section span.note, .facility__rist .educational_policy__section span.note {
  position: relative;
  padding-left: 1em; }
  .facility__rist .container__article__body__section span.note:before, .facility__rist .educational_policy__section span.note:before {
    content: "※";
    position: absolute;
    left: 0px; }

.facility__rist .container__article__body__section ul.star li::marker, .facility__rist .educational_policy__section ul.star li::marker {
  content: "※"; }

.facility__rist__outline {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row nowrap;
      flex-flow: row nowrap;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: start;
      align-items: flex-start;
  margin: 32px 0 0; }

.facility__rist__outline__floor {
  -ms-flex: 0 1 calc(50% - 20px);
      flex: 0 1 calc(50% - 20px);
  -ms-flex-preferred-size: calc(50% - 20px);
      flex-basis: calc(50% - 20px);
  width: calc(50% - 20px); }
  .facility__rist__outline__floor img {
    display: block;
    max-width: 100%;
    height: auto; }

.facility__rist__outline__detail {
  -ms-flex: 0 1 calc(50% - 20px);
      flex: 0 1 calc(50% - 20px);
  -ms-flex-preferred-size: calc(50% - 20px);
      flex-basis: calc(50% - 20px);
  width: calc(50% - 20px); }
  .facility__rist__outline__detail__item {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    box-sizing: border-box;
    width: 100%;
    font-size: 12px;
    line-height: 24px;
    border-top: 1px solid #D5D8DD; }
  .facility__rist__outline__detail__label {
    -ms-flex: 0 1 68px;
        flex: 0 1 68px;
    width: 68px;
    padding: 13px 0 13px; }
  .facility__rist__outline__detail__text {
    -ms-flex: 1 1 calc(100% - 68px);
        flex: 1 1 calc(100% - 68px);
    -ms-flex-preferred-size: calc(100% - 68px);
        flex-basis: calc(100% - 68px);
    width: calc(100% - 68px);
    padding: 13px 0 13px 32px;
    position: relative; }
    .facility__rist__outline__detail__text:before {
      content: "";
      display: block;
      width: 1px;
      height: calc(100% - 30px);
      background-color: #D5D8DD;
      position: absolute;
      left: 0px;
      top: 13px; }
    .facility__rist__outline__detail__text.hasLink {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
      -ms-flex-pack: justify;
          justify-content: space-between;
      -ms-flex-align: start;
          align-items: flex-start;
      padding-right: 15px; }
      .facility__rist__outline__detail__text.hasLink > span {
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
        padding-right: 20px; }
      .facility__rist__outline__detail__text.hasLink > a {
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
        line-height: 24px; }
        .facility__rist__outline__detail__text.hasLink > a span:before,
        .facility__rist__outline__detail__text.hasLink > a span:after {
          top: 6px; }

@media screen and (max-width: 1023px) {
  .facility__dorm__detail__label {
    white-space: nowrap;
    width: 52px; }
  .facility__dorm__detail__text {
    white-space: nowrap;
    padding-left: 16px; } }

@media screen and (max-width: 767px) {
  .facility .container__sub {
    display: none; }
  .facility__outline .container__right {
    margin-top: 0px; }
  .facility__outline__building {
    margin-top: 70px; }
  .facility__outline__building__block {
    width: 100%;
    float: none;
    margin: 0 0 30px 0; }
    .facility__outline__building__block > h4 {
      font-size: 18px;
      line-height: 20px;
      margin: 18px 0 14px; }
    .facility__outline__building__block > p {
      font-size: 12px;
      line-height: 20px; }
    .facility__outline__building__block:nth-of-type(odd) {
      margin: 0 0 30px 0; }
    .facility__outline__building__block:last-of-type {
      margin: 0 0 0 0; }
  .facility__list .blocklist__item > h4 {
    margin-bottom: 12px; }
  .facility__list .blocklist__item > p {
    line-height: 22px; }
  .facility__dorm__outline {
    line-height: 30px;
    margin-right: 0px; }
    .facility__dorm__outline span {
      line-height: 20px;
      margin-top: 12px; }
  .facility__dorm__detail {
    margin: 40px 0; }
    .facility__dorm__detail__item {
      float: none;
      width: 100%;
      height: 54px;
      padding: 19px 0;
      font-size: 12px;
      line-height: 16px; }
      .facility__dorm__detail__item:nth-of-type(odd) {
        margin: 0px; }
      .facility__dorm__detail__item:nth-of-type(2) {
        border-top: none; }
    .facility__dorm__detail__label {
      width: 56px; }
    .facility__dorm__detail__text {
      padding-left: 24px; }
  .facility__dorm__equip {
    line-height: 22px;
    margin-top: 40px; }
  .facility__rist #outline .gallery {
    width: calc(100% + 48px);
    margin-left: -24px; }
  .facility__rist .container__article__body__section h5, .facility__rist .educational_policy__section h5 {
    margin-bottom: 24px; }
  .facility__rist .container__article__body__section p, .facility__rist .educational_policy__section p, .facility__rist .container__article__body__section ul, .facility__rist .educational_policy__section ul {
    margin: 0; }
  .facility__rist .container__article__body__section table td, .facility__rist .educational_policy__section table td {
    white-space: nowrap; }
  .facility__rist .container__article__body__section ul.star, .facility__rist .educational_policy__section ul.star,
  .facility__rist .container__article__body__section span.note,
  .facility__rist .educational_policy__section span.note {
    display: block;
    font-size: 13px;
    line-height: 24px;
    margin-top: 12px; }
  .facility__rist .container__article__body__section span.note, .facility__rist .educational_policy__section span.note {
    position: relative;
    padding-left: 1em; }
    .facility__rist .container__article__body__section span.note:before, .facility__rist .educational_policy__section span.note:before {
      content: "※";
      position: absolute;
      left: 0px; }
  .facility__rist .container__article__body__section ul.star li::marker, .facility__rist .educational_policy__section ul.star li::marker {
    content: "※"; }
  .facility__rist__outline {
    display: block;
    margin: 32px 0 0; }
  .facility__rist__outline__floor {
    width: 100%; }
    .facility__rist__outline__floor img {
      margin: 0 auto; }
  .facility__rist__outline__detail {
    width: 100%;
    margin-top: 32px; } }

@media screen and (max-width: 767px) {
  .department__outline__text .container__right {
    margin-top: 0px; } }

.faculty__list {
  padding-top: 30px; }
  .faculty__list .blocklist--5colmn {
    margin-top: 0px; }
  .faculty__list .blocklist__item > a {
    display: block;
    text-decoration: none;
    color: #000; }
  .faculty__list .blocklist__item div.line {
    width: 100%;
    height: 1px;
    background-color: #D5D8DD;
    margin-bottom: 8px; }
  .faculty__list .blocklist__item img {
    display: block;
    width: 100%;
    height: auto;
    margin-bottom: 10px; }
  .faculty__list .blocklist__item span.label {
    display: block;
    font-size: 12px;
    color: #1B1BE0; }
  .faculty__list .blocklist__item h4 {
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 8px; }
  .faculty__list .blocklist__item p {
    font-size: 12px;
    line-height: 24px; }

.faculty__list__main {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-align: stretch;
      align-items: stretch;
  width: calc(100% + 24px);
  max-width: calc(100% + 24px);
  margin-left: -12px; }
  .faculty__list__main .blocklist__item {
    float: none;
    width: calc(20% - 24px);
    margin-left: 12px !important;
    margin-right: 12px !important;
    margin-bottom: 68px; }

.faculty__list__sub {
  width: calc(100% + 24px);
  max-width: calc(100% + 24px);
  margin-left: -12px; }
  .faculty__list__sub .blocklist__item {
    float: none;
    width: calc(20% - 24px);
    margin-left: 12px !important;
    margin-right: 12px !important;
    margin-bottom: 28px; }

.faculty__list__switch {
  position: relative;
  top: 0px;
  right: 0px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row nowrap;
      flex-flow: row nowrap;
  -ms-flex-pack: end;
      justify-content: flex-end;
  -ms-flex-align: start;
      align-items: flex-start;
  margin-bottom: 30px;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }

.faculty__list__switch__label {
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  width: auto;
  font-size: 12px;
  line-height: 28px;
  margin-right: 8px; }

.faculty__list__switch__button {
  display: block;
  -ms-flex-preferred-size: 100px;
      flex-basis: 100px;
  width: 100px;
  height: 28px;
  font-size: 13px;
  line-height: 28px;
  background-color: #D5D8DD;
  text-align: center;
  cursor: pointer;
  transition: color .1s linear, background-color .1s linear;
  text-decoration: none;
  color: #000; }
  .faculty__list__switch__button.master {
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
    margin-right: 1px;
    background-color: #001BCC;
    font-weight: bold;
    color: #FFF; }
  .faculty__list__switch__button.doctoral {
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px; }
  .view_doctoral .faculty__list__switch__button.doctoral,
  .view_master .faculty__list__switch__button.master {
    cursor: default;
    pointer-events: none;
    background-color: #001BCC;
    font-weight: bold;
    color: #FFF; }
  .view_doctoral .faculty__list__switch__button.master,
  .view_master .faculty__list__switch__button.doctoral {
    cursor: pointer;
    background-color: #D5D8DD;
    color: #000;
    font-weight: normal; }

.faculty__list.view_master .blocklist__item:not(.master),
.faculty__list.view_doctoral .blocklist__item:not(.doctoral) {
  display: none; }

.faculty__list.view_master .blocklist__item.master {
  display: block;
  animation: faculty_fadeIn1 .5s ease-in-out .175s 1 normal both; }

.faculty__list.view_doctoral .blocklist__item.doctoral {
  display: block;
  animation: faculty_fadeIn2 .5s ease-in-out .175s 1 normal both; }

@keyframes faculty_fadeIn1 {
  0% {
    display: block;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
  100% {
    display: block;
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; } }

@keyframes faculty_fadeIn2 {
  0% {
    display: block;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
  100% {
    display: block;
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; } }

.faculty__detail__back {
  display: inline-block;
  font-size: 15px;
  line-height: 32px;
  width: auto;
  height: 32px;
  padding-left: 30px;
  position: relative;
  color: #000;
  text-decoration: none; }
  .faculty__detail__back:before, .faculty__detail__back:after {
    content: "";
    display: block;
    width: 15px;
    height: 14px;
    background-size: 15px 14px;
    position: absolute;
    left: 0px;
    top: 8px;
    -ms-transform: rotate(180deg);
        transform: rotate(180deg); }
  .faculty__detail__back:before {
    background-image: url(images/arrow_gray.png);
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
  .faculty__detail__back:after {
    background-image: url(images/arrow_blue.png);
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }

.faculty__detail__profile {
  margin-bottom: 72px; }
  .faculty__detail__profile img {
    display: block;
    width: 288px;
    height: 288px;
    margin-bottom: 32px; }
  .faculty__detail__profile span {
    display: block;
    font-size: 13px;
    color: #1B1BE0; }
  .faculty__detail__profile h3 {
    font-size: 20px; }
  .faculty__detail__profile p {
    font-size: 15px;
    line-height: 32px;
    margin-top: 24px; }

.faculty__detail__profile__reserchmap {
  display: inline-block;
  position: relative;
  margin-top: 24px; }
  .faculty__detail__profile__reserchmap:after, .faculty__detail__profile__reserchmap:before {
    content: "";
    display: block;
    width: 5px;
    height: 5px;
    box-sizing: border-box;
    border-top: 1px solid #1B1BE0;
    border-right: 1px solid #1B1BE0;
    position: absolute; }
  .faculty__detail__profile__reserchmap:after {
    top: 4px;
    right: -12px; }
  .faculty__detail__profile__reserchmap:before {
    top: 7px;
    right: -9px; }

.faculty__detail__reportlist li {
  display: inline-block;
  margin-right: 20px; }

.faculty__detail__nav {
  height: 138px; }
  .faculty__detail__nav__img {
    display: block;
    width: 96px;
    height: 96px;
    position: absolute;
    top: 0px; }
  .faculty__detail__nav__position {
    display: block;
    font-size: 12px;
    color: #1B1BE0;
    margin-bottom: 4px; }
  .faculty__detail__nav__name {
    display: block;
    font-size: 15px; }
  .faculty__detail__nav .container__nav__back {
    bottom: 34px; }
  .faculty__detail__nav .container__nav__prev,
  .faculty__detail__nav .container__nav__next {
    box-sizing: border-box;
    width: auto;
    height: 96px;
    padding-top: 24px; }
    .faculty__detail__nav .container__nav__prev:before, .faculty__detail__nav .container__nav__prev:after,
    .faculty__detail__nav .container__nav__next:before,
    .faculty__detail__nav .container__nav__next:after {
      top: 41px; }
  .faculty__detail__nav .container__nav__prev {
    padding-left: 142px; }
    .faculty__detail__nav .container__nav__prev.parttime {
      padding-left: 46px; }
    .faculty__detail__nav .container__nav__prev .faculty__detail__nav__img {
      left: 30px; }
    .faculty__detail__nav .container__nav__prev .faculty__detail__nav__position,
    .faculty__detail__nav .container__nav__prev .faculty__detail__nav__name {
      text-align: left; }
  .faculty__detail__nav .container__nav__next {
    padding-right: 142px; }
    .faculty__detail__nav .container__nav__next.parttime {
      padding-right: 46px; }
    .faculty__detail__nav .container__nav__next .faculty__detail__nav__img {
      right: 30px; }
    .faculty__detail__nav .container__nav__next .faculty__detail__nav__position,
    .faculty__detail__nav .container__nav__next .faculty__detail__nav__name {
      text-align: right; }

.faculty__detail__relatedreports__article + .faculty__detail__relatedreports__article {
  border-top: 1px solid #D5D8DD; }

.faculty__detail__relatedreports__article__link {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row nowrap;
      flex-flow: row nowrap;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-align: center;
      align-items: center;
  position: relative;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  min-height: 105px;
  padding-left: 168px;
  color: #000;
  text-decoration: none; }

.faculty__detail__relatedreports__article__link__thumb {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 168px;
  height: 105px;
  overflow: hidden; }
  .faculty__detail__relatedreports__article__link__thumb img {
    display: block;
    width: 100%;
    height: auto; }

.faculty__detail__relatedreports__article__link__thumb__imageplaceholder {
  display: block;
  width: 100%;
  height: 0px;
  padding-top: 62.5%;
  background-color: #D5D8DD;
  background-image: url(images/placeholder_logo.png);
  background-size: 36px 36px;
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
  z-index: 3; }

.faculty__detail__relatedreports__article__link__thumb__period, .faculty__detail__relatedreports__article__link__thumb__period--ongoing, .faculty__detail__relatedreports__article__link__thumb__period--upcoming, .faculty__detail__relatedreports__article__link__thumb__period--expired {
  display: inline-block;
  box-sizing: border-box;
  width: auto;
  height: 22px;
  padding: 1px 6px 1px 7px;
  font-size: 11px;
  line-height: 20px;
  letter-spacing: 1px;
  color: #FFF;
  background-color: #969BA3;
  position: absolute;
  right: 0px;
  bottom: 0px;
  z-index: 4; }

.faculty__detail__relatedreports__article__link__thumb__period--ongoing {
  background-color: #1B1BE0; }

.faculty__detail__relatedreports .faculty__detail__relatedreports__article__link__title {
  font-size: 13px;
  line-height: 18px;
  padding: 0 24px; }

html:not(.touch) .faculty__detail__relatedreports__article__link {
  transition: color .15s linear; }
  html:not(.touch) .faculty__detail__relatedreports__article__link:hover {
    color: #1B1BE0; }

.faculty__class_section .container__section__head h4 span {
  display: block;
  font-feature-settings: "palt"; }

.faculty__class_section .container__section__body {
  min-height: 64px; }

@media screen and (max-width: 976px) {
  .faculty__list__main .blocklist__item {
    width: calc(25% - 24px); } }

@media screen and (max-width: 767px) {
  .faculty__list .blocklist__item div.line {
    margin-bottom: 4px; }
  .faculty__list .blocklist__item img {
    margin-bottom: 4px; }
  .faculty__list .blocklist__item span.label {
    font-size: 11px; }
  .faculty__list .blocklist__item h4 {
    font-size: 15px;
    line-height: 22px;
    margin-bottom: 4px; }
  .faculty__list .blocklist__item p {
    line-height: 20px; }
  .faculty__list__main {
    width: calc(100% + 16px);
    max-width: calc(100% + 16px);
    margin-left: -8px; }
    .faculty__list__main .blocklist__item {
      float: none;
      width: calc(50% - 16px);
      margin-left: 8px !important;
      margin-right: 8px !important;
      margin-bottom: 34px; }
  .faculty__list__sub {
    width: calc(100% + 16px);
    max-width: calc(100% + 16px);
    margin-left: -8px; }
    .faculty__list__sub .blocklist__item {
      float: none;
      width: calc(50% - 16px);
      margin-left: 8px !important;
      margin-right: 8px !important;
      margin-bottom: 28px; }
  .faculty__detail__profile {
    margin-bottom: 72px; }
    .faculty__detail__profile img {
      width: 100%;
      max-width: 288px;
      height: auto;
      margin-bottom: 16px; }
    .faculty__detail__profile p {
      line-height: 30px;
      margin-top: 10px; }
  .faculty__detail__relatedreports {
    padding-top: 0px; }
  .faculty__detail__relatedreports__article {
    margin-top: 16px; }
    .faculty__detail__relatedreports__article + .faculty__detail__relatedreports__article {
      border-top: 0px; }
  .faculty__detail__relatedreports__article__link {
    padding-left: 136px;
    min-height: 85px; }
  .faculty__detail__relatedreports__article__link__thumb {
    width: 136px;
    height: 85px; }
  .faculty__detail__relatedreports .faculty__detail__relatedreports__article__link__title {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    padding: 0 0 0 16px; }
  .faculty__class_section .container__section__head h4 span {
    display: inline;
    padding-left: 2px; }
  .faculty__class_section .container__section__body {
    min-height: 0px; } }

.classes__list {
  margin-top: 112px; }

.classes__detail__outline {
  margin-bottom: 70px; }
  .classes__detail__outline h3 {
    font-size: 24px;
    margin-bottom: 50px;
    font-weight: 600; }

.classes__detail__nav {
  height: 100px; }
  .classes__detail__nav__cat {
    font-size: 12px;
    color: #D5D8DD;
    display: block;
    margin-bottom: 4px; }
  .classes__detail__nav__title {
    display: block; }
  .classes__detail__nav .container__nav__back {
    bottom: 4px; }
  .classes__detail__nav .container__nav__prev,
  .classes__detail__nav .container__nav__next {
    box-sizing: border-box;
    width: auto;
    height: 100px;
    padding-top: 36px; }
    .classes__detail__nav .container__nav__prev:before, .classes__detail__nav .container__nav__prev:after,
    .classes__detail__nav .container__nav__next:before,
    .classes__detail__nav .container__nav__next:after {
      top: 50px; }
  .classes__detail__nav .container__nav__prev {
    padding-left: 26px; }
    .classes__detail__nav .container__nav__prev .classes__detail__nav__cat,
    .classes__detail__nav .container__nav__prev .classes__detail__nav__title {
      text-align: left; }
  .classes__detail__nav .container__nav__next {
    padding-right: 26px; }
    .classes__detail__nav .container__nav__next .classes__detail__nav__cat,
    .classes__detail__nav .container__nav__next .classes__detail__nav__title {
      text-align: right; }

html:not(.touch) .container__nav__prev .classes__detail__nav__cat,
html:not(.touch) .container__nav__next .classes__detail__nav__cat {
  transition: color .15s linear; }

html:not(.touch) .container__nav__prev:hover .classes__detail__nav__cat,
html:not(.touch) .container__nav__next:hover .classes__detail__nav__cat {
  color: #1B1BE0; }

@media screen and (max-width: 767px) {
  .classes .container__row .container__right {
    margin-top: 0px; }
  .classes__list {
    margin-top: 70px; }
  .classes__detail__outline {
    margin-bottom: 70px; }
    .classes__detail__outline h3 {
      font-size: 20px;
      margin-bottom: 30px; } }

.projects__list .blocklist__item {
  margin-bottom: 74px; }
  .projects__list .blocklist__item h4 {
    font-size: 18px;
    line-height: 26px;
    margin-top: 20px; }

.projects__detail__outline {
  margin-bottom: 70px; }
  .projects__detail__outline h3 {
    font-size: 24px;
    margin-bottom: 50px;
    font-weight: 600; }
  .projects__detail__outline .gallery {
    margin-bottom: 40px; }
  .projects__detail__outline .gallery__pager, .projects__detail__outline .gallery__pager--thumbnail {
    margin-top: 8px; }

.projects__detail__nav {
  height: 100px; }
  .projects__detail__nav .container__nav__back {
    bottom: 4px; }
  .projects__detail__nav .container__nav__prev,
  .projects__detail__nav .container__nav__next {
    box-sizing: border-box;
    width: auto;
    height: auto;
    padding-top: 0px;
    bottom: 4px; }
    .projects__detail__nav .container__nav__prev:before, .projects__detail__nav .container__nav__prev:after,
    .projects__detail__nav .container__nav__next:before,
    .projects__detail__nav .container__nav__next:after {
      top: 2px; }
  .projects__detail__nav .container__nav__prev {
    padding-left: 26px; }
    .projects__detail__nav .container__nav__prev .classes__detail__nav__cat,
    .projects__detail__nav .container__nav__prev .classes__detail__nav__title {
      text-align: left; }
  .projects__detail__nav .container__nav__next {
    padding-right: 26px; }
    .projects__detail__nav .container__nav__next .classes__detail__nav__cat,
    .projects__detail__nav .container__nav__next .classes__detail__nav__title {
      text-align: right; }

@media screen and (max-width: 767px) {
  .projects .container__row .container__right {
    margin-top: 0px; }
  .projects__list {
    margin-top: 70px; }
    .projects__list .blocklist__item {
      margin-bottom: 34px; }
      .projects__list .blocklist__item h4 {
        margin-top: 16px; }
  .projects__detail__outline {
    margin-bottom: 70px; }
    .projects__detail__outline h3 {
      font-size: 20px;
      margin-bottom: 32px; }
    .projects__detail__outline .gallery {
      width: calc(100% + 48px);
      margin-left: -24px;
      margin-bottom: 20px; }
    .projects__detail__outline .gallery__pager, .projects__detail__outline .gallery__pager--thumbnail {
      margin-top: 4px; } }

.prize .container__section:last-of-type, .prize .container__section--foldable:last-of-type {
  border-bottom: 1px solid #D5D8DD; }

.prize__head {
  margin-bottom: 70px; }

.prize__head__splist {
  display: none; }

.prize__item {
  border-bottom: 1px solid #D5D8DD;
  padding: 5px 0 10px;
  margin-bottom: 7px; }
  .prize__item:first-of-type {
    margin-top: -2px; }
  .prize__item:last-of-type {
    border-bottom: none;
    margin-bottom: 0px;
    padding-bottom: 0px; }
  .prize__item p {
    font-size: 13px;
    line-height: 24px; }

@media screen and (max-width: 767px) {
  .prize .container__sub {
    display: none; }
  .prize .container__section:last-of-type, .prize .container__section--foldable:last-of-type {
    border-bottom: none; }
  .prize .container__section .container__section__body, .prize .container__section--foldable .container__section__body {
    padding-left: 56px;
    padding-top: 0px; }
  .prize .container__section .container__section__head, .prize .container__section--foldable .container__section__head {
    position: absolute;
    left: 0px; }
  .prize__head {
    margin-bottom: 40px; }
  .prize__head__splist {
    display: block;
    width: calc(100% + 1px);
    height: auto;
    position: relative;
    margin-top: 20px; }
    .prize__head__splist:after {
      content: "";
      display: block;
      width: 0px;
      height: 0px;
      float: none;
      clear: both;
      visibility: hidden; }
    .prize__head__splist li {
      display: block;
      width: 50%;
      height: 40px;
      box-sizing: border-box;
      border: 1px solid #D5D8DD;
      float: left;
      margin-top: -1px; }
      .prize__head__splist li:nth-of-type(even) {
        margin-left: -1px; }
      .prize__head__splist li a {
        display: block;
        width: auto;
        height: 38px;
        line-height: 38px;
        font-size: 13px;
        line-height: 38px;
        text-align: center;
        color: #000;
        text-decoration: none; }
  .prize__item {
    padding-bottom: 18px;
    margin-bottom: 16px; } }

.admission .container {
  padding-bottom: 60px; }

.admission .newsarticlelist {
  margin-top: 70px; }

.admission .one_year,
.admission .two_year,
.admission .admission__about__diagram {
  position: relative;
  width: 100%;
  margin: 45px 0 0; }
  .admission .one_year > img,
  .admission .two_year > img,
  .admission .admission__about__diagram > img {
    width: 117.1131%;
    height: auto;
    display: block;
    margin-left: -17.1131%; }

.admission__about__link {
  margin: 50px 0 64px; }

@media screen and (max-width: 767px) {
  .admission .container {
    padding-bottom: 80px; }
  .admission .container__row .container__right {
    margin-top: 0px; }
  .admission .newsarticlelist {
    margin-top: 40px; }
  .admission .img_wrap {
    width: calc(100% + 48px);
    margin-left: -24px;
    position: relative;
    overflow: scroll;
    overflow-x: scroll;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch; }
  .admission .one_year,
  .admission .two_year,
  .admission .admission__about__diagram {
    width: 787px;
    margin: 30px 0 0;
    padding: 0 24px 0; }
    .admission .one_year > img,
    .admission .two_year > img,
    .admission .admission__about__diagram > img {
      width: 787px;
      display: block;
      margin-left: 0px; } }

.guideline .container {
  padding-bottom: 60px; }

.guideline #guideline .guideline__text {
  margin: 48px 0; }

.guideline #guideline .guideline__hm {
  margin-bottom: 24px; }

.guideline #guideline ul li {
  display: inline-block;
  margin-right: 36px; }

.guideline #consultation p {
  margin-bottom: 48px; }

.guideline #consultation .container__article__sub img {
  display: block;
  margin-left: auto; }

.guideline #repository p {
  margin-bottom: 48px; }

@media screen and (max-width: 767px) {
  .guideline .container {
    padding-bottom: 30px; }
  .guideline .container__sub {
    display: none; }
  .guideline .container__article__body .btnlink, .guideline .container__article__body .btnlink--download {
    margin-bottom: 24px; }
    .guideline .container__article__body .btnlink:last-of-type, .guideline .container__article__body .btnlink--download:last-of-type {
      margin-bottom: 8px; }
  .guideline #examination .container__article__sub,
  .guideline #schedule .container__article__sub,
  .guideline #consultation .container__article__sub {
    box-sizing: border-box;
    width: calc(100% + 48px);
    margin-left: -24px;
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
    padding-right: 24px;
    padding-left: 24px;
    padding-bottom: 20px; }
  .guideline #examination .container__article__sub__wrapper,
  .guideline #schedule .container__article__sub__wrapper,
  .guideline #consultation .container__article__sub__wrapper {
    padding-right: 24px; }
  .guideline #examination .container__article__sub__wrapper {
    width: 530px; }
  .guideline #examination .table {
    width: 530px; }
    .guideline #examination .table th:first-of-type,
    .guideline #examination .table td:first-of-type {
      width: 96px; }
  .guideline #schedule .container__article__sub__wrapper {
    width: 772px; }
  .guideline #schedule .table {
    width: 772px; }
    .guideline #schedule .table th:first-of-type,
    .guideline #schedule .table td:first-of-type {
      width: 136px; }
  .guideline #consultation .btnlink, .guideline #consultation .btnlink--download {
    display: block;
    margin-right: 0; }
  .guideline #consultation .container__article__body > p {
    margin-bottom: 32px; }
  .guideline #consultation .container__article__sub .container__article__sub__wrapper {
    /*
					background-image: url(./images/consul_schedule2_sp.png);
					background-size: 840px 274px;
					background-repeat: no-repeat;
					background-position: left top;
					width: 840px;
					height: 274px;
					*/
    font-size: 0px;
    white-space: nowrap;
    line-height: 0px;
    letter-spacing: 0px; }
    .guideline #consultation .container__article__sub .container__article__sub__wrapper img {
      display: inline-block;
      width: 852px;
      height: 322px; }
    .guideline #consultation .container__article__sub .container__article__sub__wrapper:after {
      content: "";
      width: 24px;
      height: 1px;
      display: inline-block; }
  .guideline #guideline .container__article__head h4 {
    margin-bottom: 30px; }
  .guideline #guideline .guideline__hm {
    line-height: 24px;
    margin-bottom: 15px; }
  .guideline #guideline ul.guideline__hm li {
    font-size: 13px;
    margin-top: 10px; }
  .guideline #guideline .guideline__text {
    margin: 32px 0; }
  .guideline #repository .btnlink, .guideline #repository .btnlink--download {
    display: block;
    margin-right: 0; }
  .guideline #repository p {
    margin-bottom: 32px; } }

.expenses .container {
  padding-bottom: 60px; }

.expenses #expenses .expenses__detail {
  padding-left: 194px;
  position: relative; }
  .expenses #expenses .expenses__detail__head {
    position: absolute;
    left: 0px; }
  .expenses #expenses .expenses__detail:not(:last-of-type) {
    border-bottom: 1px solid #D5D8DD;
    padding-bottom: 20px;
    margin-bottom: 20px; }

.expenses #scholarship h5:not(:first-of-type) {
  margin-top: 60px; }

.expenses #scholarship .table {
  margin-top: 30px;
  margin-bottom: 12px; }
  .expenses #scholarship .table th:first-of-type,
  .expenses #scholarship .table td:first-of-type {
    width: 100px;
    padding: 12px 18px; }
  .expenses #scholarship .table th, .expenses #scholarship .table td {
    font-size: 13px;
    text-align: left; }

.expenses #scholarship .note {
  font-size: 13px;
  color: #969BA3; }

@media screen and (max-width: 767px) {
  .expenses .container {
    padding-bottom: 40px; }
  .expenses .container__sub {
    display: none; }
  .expenses #expenses .container__article__body {
    margin-top: 18px; }
  .expenses #expenses .expenses__detail {
    padding-left: 56px;
    position: relative; }
    .expenses #expenses .expenses__detail h4, .expenses #expenses .expenses__detail p {
      font-size: 13px;
      line-height: 24px; }
    .expenses #expenses .expenses__detail__head {
      position: absolute;
      left: 0px; }
    .expenses #expenses .expenses__detail:not(:last-of-type) {
      border-bottom: 0px;
      padding-bottom: 0px;
      margin-bottom: 16px; }
      .expenses #expenses .expenses__detail:not(:last-of-type) .expenses__detail__body {
        border-bottom: 1px solid #D5D8DD;
        padding-bottom: 16px; }
  .expenses #scholarship h5 {
    font-size: 13px;
    margin-top: 18px; }
  .expenses #scholarship h5:not(:first-of-type) {
    margin-top: 18px; }
  .expenses #scholarship .table {
    margin-top: 12px;
    margin-bottom: 12px; }
    .expenses #scholarship .table th, .expenses #scholarship .table td {
      font-size: 12px;
      line-height: 20px; }
    .expenses #scholarship .table th:first-of-type,
    .expenses #scholarship .table td:first-of-type {
      width: 60px;
      padding: 12px 16px; } }

.student_program .container {
  padding-bottom: 60px; }

.student_program #documents ol li {
  position: relative;
  padding-left: 44px; }
  .student_program #documents ol li span {
    position: absolute;
    left: 0px; }

.student_program #outline .container__article__sub {
  margin-top: 0px; }

@media screen and (max-width: 767px) {
  .student_program .container__sub {
    display: none; }
  .student_program .container {
    padding-bottom: 40px; } }

.career .container {
  padding-bottom: 60px; }

.career #outline .container__article__sub {
  margin-top: 0px; }

@media screen and (max-width: 767px) {
  .career .container__sub {
    display: none; }
  .career .container {
    padding-bottom: 40px; }
  .career #research .container__article__head h4 {
    margin-bottom: 20px; } }

.faq .container {
  padding-bottom: 60px; }

.faq .container__article {
  padding-bottom: 10px; }

.faq .container__article__body {
  position: relative;
  top: -26px; }

.faq__block {
  position: relative;
  font-size: 15px;
  line-height: 25px;
  border-top: 1px solid #D5D8DD;
  padding: 8px 0; }
  .faq__block:first-of-type {
    border-top: 0px; }
  .faq__block:before {
    content: "";
    display: block;
    width: 2px;
    height: 10px;
    background-color: #969BA3;
    position: absolute;
    right: 30px;
    top: 34px; }
  .faq__block:after {
    content: "";
    display: block;
    height: 2px;
    width: 10px;
    background-color: #969BA3;
    position: absolute;
    top: 38px;
    right: 26px; }
  .faq__block.open:before {
    display: none; }

.faq__q {
  position: relative;
  padding: 18px 48px 18px 56px;
  cursor: pointer; }

.faq__q__label {
  color: #969BA3;
  position: absolute;
  left: 0px; }

.faq__a {
  position: relative;
  padding: 0 48px 0 56px;
  overflow: hidden;
  height: 0px;
  transition: height 0.5s cubic-bezier(0.19, 1, 0.22, 1); }

.faq__a__label {
  position: absolute;
  left: 0px;
  color: #1B1BE0; }

.faq__a__body {
  padding: 0 0 18px 0; }
  .faq__a__body > * + * {
    margin-top: 12px; }
  .faq__a__body ol {
    list-style: decimal;
    padding-left: 20px; }
  .faq__a__body ul {
    list-style: disc;
    padding-left: 20px; }
  .faq__a__body p, .faq__a__body li {
    font-size: 15px;
    line-height: 25px; }

@media screen and (max-width: 767px) {
  .faq .container__sub {
    display: none; }
  .faq .container {
    padding-bottom: 40px; }
  .faq .container__article {
    padding-bottom: 0px; }
    .faq .container__article:last-of-type {
      border-bottom: 1px solid #D5D8DD; }
  .faq .container__article__body {
    top: 0px;
    margin-top: 24px; }
  .faq__block {
    font-size: 13px;
    line-height: 20px;
    padding: 8px 0 6px; }
    .faq__block:first-of-type {
      border-top: 1px solid #D5D8DD; }
    .faq__block:before {
      right: 20px;
      top: 26px; }
    .faq__block:after {
      top: 30px;
      right: 16px; }
    .faq__block.open:before {
      display: none; }
  .faq__q {
    position: relative;
    padding: 14px 38px 14px 48px;
    cursor: pointer; }
  .faq__a {
    padding: 0 38px 0 48px; }
  .faq__a__body {
    padding: 0 0 18px 0; }
    .faq__a__body > * + * {
      margin-top: 12px; }
    .faq__a__body ol {
      list-style: decimal;
      padding-left: 20px; }
    .faq__a__body ul {
      list-style: disc;
      padding-left: 20px; }
    .faq__a__body p, .faq__a__body li {
      font-size: 13px;
      line-height: 20px; } }

.graduates .container__right .btnlink, .graduates .container__right .btnlink--download {
  display: block;
  margin-top: 60px; }

@media screen and (max-width: 767px) {
  .graduates .pageheader {
    height: auto; }
  .graduates .container__row .container__right {
    margin-top: 0px; }
  .graduates .container__right .btnlink, .graduates .container__right .btnlink--download {
    display: block;
    margin-top: 32px; } }

.inquiry .pageheader {
  padding-top: 70px;
  height: 110px; }

.inquiry__top {
  border: none;
  padding-top: 0px;
  padding-bottom: 60px; }

.inquiry__list .floatinglist__block .btnlink, .inquiry__list .floatinglist__block .btnlink--download {
  width: 100%;
  max-width: 288px;
  margin-top: 28px; }

.inquiry__list .floatinglist__block .btnlink + .btnlink, .inquiry__list .floatinglist__block .btnlink--download + .btnlink, .inquiry__list .floatinglist__block .btnlink + .btnlink--download, .inquiry__list .floatinglist__block .btnlink--download + .btnlink--download {
  margin-top: 10px; }

.inquiry__list .inquiry__exam {
  padding-bottom: 60px; }

.inquiry__text, .inquiry__form__description {
  padding-bottom: 70px;
  margin-bottom: 70px;
  border-bottom: 1px solid #D5D8DD; }
  .inquiry__text h3, .inquiry__form__description h3 {
    font-weight: 600; }
  .inquiry__text p, .inquiry__form__description p {
    font-size: 15px;
    line-height: 32px; }
    .inquiry__text p em, .inquiry__form__description p em {
      display: block;
      font-size: 13px;
      line-height: 24px;
      color: #969BA3;
      margin-top: 6px; }
  .inquiry__text > * + h3, .inquiry__form__description > * + h3 {
    margin-top: 50px; }
  .inquiry__text > * + p, .inquiry__form__description > * + p {
    margin-top: 28px; }
  .inquiry__text > * + .btnlink, .inquiry__form__description > * + .btnlink, .inquiry__text > * + .btnlink--download, .inquiry__form__description > * + .btnlink--download {
    margin-top: 50px; }
  .inquiry__text > * + .arrowlinelist, .inquiry__form__description > * + .arrowlinelist, .inquiry__text > * + .arrowlinelist--4col, .inquiry__form__description > * + .arrowlinelist--4col, .inquiry__text > * + .arrowlinelist--3col, .inquiry__form__description > * + .arrowlinelist--3col, .inquiry__text > * + .arrowlinelist--2col, .inquiry__form__description > * + .arrowlinelist--2col {
    margin-top: 28px; }

.inquiry__form form {
  border-bottom: 1px solid #D5D8DD;
  padding-bottom: 34px; }

.inquiry__form__description {
  padding: 0;
  border: 0; }

.inquiry__form__block {
  position: relative;
  margin-bottom: 46px;
  padding-left: 192px; }

.inquiry__form__block__label {
  position: absolute;
  left: 0px;
  font-size: 15px;
  line-height: 26px;
  font-weight: 600;
  padding: 7px 0; }
  .inquiry__form__block__label .required {
    color: #1B1BE0; }

.inquiry__form__block__entry input, .inquiry__form__block__entry--checkbox input, .inquiry__form__block__entry--faculty input, .inquiry__form__block__entry textarea, .inquiry__form__block__entry--checkbox textarea, .inquiry__form__block__entry--faculty textarea {
  box-sizing: border-box;
  font-family: YuMincho, 'Yu Mincho', serif;
  display: block;
  border: 1px solid #F7F9FC;
  border-radius: 0px;
  background-color: #F7F9FC;
  font-size: 15px;
  line-height: 26px;
  padding: 7px 12px;
  outline: 0;
  transition: border-color .1s linear; }
  .inquiry__form__block__entry input:focus, .inquiry__form__block__entry--checkbox input:focus, .inquiry__form__block__entry--faculty input:focus, .inquiry__form__block__entry textarea:focus, .inquiry__form__block__entry--checkbox textarea:focus, .inquiry__form__block__entry--faculty textarea:focus {
    border-color: #1B1BE0; }

.inquiry__form__block__entry input, .inquiry__form__block__entry--checkbox input, .inquiry__form__block__entry--faculty input {
  max-width: 200px;
  width: 100%; }
  .inquiry__form__block__entry input.fullsize, .inquiry__form__block__entry--checkbox input.fullsize, .inquiry__form__block__entry--faculty input.fullsize {
    max-width: 100%; }

.inquiry__form__block__entry textarea, .inquiry__form__block__entry--checkbox textarea, .inquiry__form__block__entry--faculty textarea {
  width: 100%;
  height: 320px; }

.inquiry__form__block__entry .note, .inquiry__form__block__entry--checkbox .note, .inquiry__form__block__entry--faculty .note {
  font-size: 13px;
  line-height: 18px;
  color: #969BA3;
  margin-top: 10px; }

.inquiry__form__block__entry .note.error, .inquiry__form__block__entry--checkbox .note.error, .inquiry__form__block__entry--faculty .note.error {
  color: #E01B1B;
  font-weight: 600;
  display: none; }

.inquiry__form__block__entry label.check, .inquiry__form__block__entry--checkbox label.check, .inquiry__form__block__entry--faculty label.check {
  display: inline-block;
  position: relative;
  padding-left: 28px;
  line-height: 26px;
  margin-right: 32px; }
  .inquiry__form__block__entry label.check > span, .inquiry__form__block__entry--checkbox label.check > span, .inquiry__form__block__entry--faculty label.check > span {
    display: block;
    box-sizing: border-box;
    width: 16px;
    height: 16px;
    border: 2px solid #D5D8DD;
    position: absolute;
    left: 0px;
    top: 5px;
    transition: border-color .1s linear, background-color .1s linear; }
  .inquiry__form__block__entry label.check input[type="radio"], .inquiry__form__block__entry--checkbox label.check input[type="radio"], .inquiry__form__block__entry--faculty label.check input[type="radio"],
  .inquiry__form__block__entry label.check input[type="checkbox"], .inquiry__form__block__entry--checkbox label.check input[type="checkbox"], .inquiry__form__block__entry--faculty label.check input[type="checkbox"] {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    width: 0px;
    height: 0px;
    visibility: hidden;
    position: absolute; }
    .inquiry__form__block__entry label.check input[type="radio"]:checked + span, .inquiry__form__block__entry--checkbox label.check input[type="radio"]:checked + span, .inquiry__form__block__entry--faculty label.check input[type="radio"]:checked + span,
    .inquiry__form__block__entry label.check input[type="checkbox"]:checked + span, .inquiry__form__block__entry--checkbox label.check input[type="checkbox"]:checked + span, .inquiry__form__block__entry--faculty label.check input[type="checkbox"]:checked + span {
      background-color: #1B1BE0;
      border-color: #1B1BE0; }

.inquiry__form__block__entry--checkbox {
  padding-top: 2px; }

.inquiry__form__block__entry--faculty {
  padding-top: 6px; }
  .inquiry__form__block__entry--faculty label.check {
    display: block; }

.inquiry__form__block__attachment {
  box-sizing: border-box;
  width: 100%;
  height: 40px;
  padding-left: 200px;
  position: relative; }
  .inquiry__form__block__attachment label {
    display: block;
    width: 200px;
    height: 40px;
    position: absolute;
    left: 0px;
    top: 0px;
    background-color: #D5D8DD;
    cursor: pointer; }
    .inquiry__form__block__attachment label input {
      position: absolute;
      left: 0px;
      top: 0px;
      width: 0px;
      height: 0px;
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      visibility: hidden; }
    .inquiry__form__block__attachment label span {
      display: block;
      line-height: 40px;
      text-align: center;
      font-size: 13px; }
  .inquiry__form__block__attachment p {
    display: none;
    line-height: 40px;
    padding: 0 20px;
    font-size: 13px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis; }

.inquiry__form__submit {
  margin: 40px 0 0 0; }
  .inquiry__form__submit button {
    position: relative;
    display: block;
    width: 288px;
    height: 64px;
    background-color: #D5D8DD;
    font-size: 13px;
    line-height: 64px;
    color: #000;
    text-decoration: none;
    text-align: center;
    border: 0px;
    cursor: pointer;
    padding: 0px;
    margin: 0 auto;
    outline: 0; }
    .inquiry__form__submit button:before {
      content: "";
      display: block;
      width: 0%;
      height: 100%;
      position: absolute;
      right: 0px;
      top: 0px;
      background-color: #1B1BE0;
      z-index: 0; }
    .inquiry__form__submit button span {
      font-family: YuMincho, 'Yu Mincho', serif;
      font-size: 13px;
      position: relative;
      z-index: 1; }
    .inquiry__form__submit button.processing {
      color: #FFF;
      cursor: default;
      pointer-events: none; }
      .inquiry__form__submit button.processing:before {
        left: 0px;
        width: 100%; }
      .inquiry__form__submit button.processing span {
        display: block;
        text-indent: 200%;
        white-space: nowrap;
        overflow: hidden;
        color: transparent;
        width: 34px;
        height: 34px;
        background-image: url(images/loading.png);
        background-size: 34px 34px;
        background-repeat: no-repeat;
        position: absolute;
        left: 50%;
        top: 50%;
        margin: -17px 0 0 -17px;
        animation: spin 0.3s linear infinite; }

@keyframes spin {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }
    .inquiry__form__submit button.done {
      color: #FFF;
      cursor: default;
      pointer-events: none; }
      .inquiry__form__submit button.done:before {
        left: 0px;
        width: 100%; }
    .inquiry__form__submit button.error {
      color: #000;
      cursor: default;
      pointer-events: none; }
      .inquiry__form__submit button.error:before {
        display: none !important; }

.inquiry__form__responce {
  padding-top: 40px; }

.inquiry__form__responce__invalid,
.inquiry__form__responce__error {
  border: 1px solid #E01B1B;
  padding: 30px;
  display: none; }
  .inquiry__form__responce__invalid p,
  .inquiry__form__responce__error p {
    color: #E01B1B;
    text-align: center;
    font-size: 15px;
    line-height: 32px; }

.inquiry__form__responce__done {
  border: 1px solid #1B1BE0;
  padding: 30px;
  display: none; }
  .inquiry__form__responce__done p {
    color: #1B1BE0;
    text-align: center;
    font-size: 15px;
    line-height: 32px; }

.inquiry__spback {
  display: none; }

html:not(.touch) .inquiry__form__submit button {
  transition: color .15s linear; }
  html:not(.touch) .inquiry__form__submit button:before {
    transition: width 0.25s cubic-bezier(0.19, 1, 0.22, 1); }
  html:not(.touch) .inquiry__form__submit button:hover {
    color: #FFF; }
    html:not(.touch) .inquiry__form__submit button:hover:before {
      width: 100%;
      left: 0px; }

html:not(.touch) .inquiry__spback a {
  transition: color .15s linear; }
  html:not(.touch) .inquiry__spback a:before, html:not(.touch) .inquiry__spback a:after {
    transition: transform .15s linear, opacity .15s linear; }
  html:not(.touch) .inquiry__spback a:hover {
    color: #1B1BE0; }
    html:not(.touch) .inquiry__spback a:hover:before {
      -ms-transform: rotate(180deg) translate(2px, 0);
          transform: rotate(180deg) translate(2px, 0);
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
    html:not(.touch) .inquiry__spback a:hover:after {
      -ms-transform: rotate(180deg) translate(2px, 0);
          transform: rotate(180deg) translate(2px, 0);
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

@media screen and (max-width: 767px) {
  .inquiry .container {
    padding-bottom: 60px; }
  .inquiry .pageheader {
    height: auto; }
  .inquiry .container__sub {
    margin-bottom: 24px; }
  .inquiry__top {
    padding-bottom: 40px; }
  .inquiry__list .inquiry__exam {
    padding-bottom: 40px; }
  .inquiry__list .floatinglist__block {
    padding-bottom: 40px; }
  .inquiry__form form {
    border-bottom: 1px solid #D5D8DD;
    padding-bottom: 18px; }
  .inquiry__form__block {
    position: relative;
    margin-bottom: 24px;
    padding-left: 0px; }
  .inquiry__form__block__label {
    position: relative;
    padding: 0;
    display: block;
    margin-bottom: 12px; }
  .inquiry__form__block__entry input, .inquiry__form__block__entry--checkbox input, .inquiry__form__block__entry--faculty input {
    max-width: 100%; }
  .inquiry__form__block__entry textarea, .inquiry__form__block__entry--checkbox textarea, .inquiry__form__block__entry--faculty textarea {
    height: 160px; }
  .inquiry__form__block__entry label.check, .inquiry__form__block__entry--checkbox label.check, .inquiry__form__block__entry--faculty label.check {
    display: block;
    margin-top: 6px; }
    .inquiry__form__block__entry label.check:first-of-type, .inquiry__form__block__entry--checkbox label.check:first-of-type, .inquiry__form__block__entry--faculty label.check:first-of-type {
      margin-top: 0px; }
  .inquiry__form__block__entry--checkbox,
  .inquiry__form__block__entry--faculty {
    padding-top: 2px; }
  .inquiry__form__block__attachment {
    box-sizing: content-box;
    height: auto;
    padding: 48px 0 0 0; }
    .inquiry__form__block__attachment label {
      width: 100%;
      height: 48px; }
      .inquiry__form__block__attachment label input {
        position: absolute;
        left: 0px;
        top: 0px;
        width: 0px;
        height: 0px;
        opacity: 0;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
        visibility: hidden; }
      .inquiry__form__block__attachment label span {
        line-height: 48px; }
    .inquiry__form__block__attachment p {
      padding: 0;
      line-height: 20px;
      margin-top: 16px;
      text-align: center; }
  .inquiry__form__submit {
    margin: 40px 0 0 0; }
    .inquiry__form__submit button {
      width: 100%; }
  .inquiry__form__responce {
    padding-top: 40px; }
  .inquiry__form__responce__invalid,
  .inquiry__form__responce__error {
    padding: 20px;
    display: none; }
    .inquiry__form__responce__invalid p,
    .inquiry__form__responce__error p {
      line-height: 30px; }
  .inquiry__text, .inquiry__form__description {
    padding-bottom: 40px;
    margin-bottom: 40px; }
    .inquiry__text p, .inquiry__form__description p {
      font-size: 15px;
      line-height: 32px; }
      .inquiry__text p em, .inquiry__form__description p em {
        display: block;
        line-height: 24px; }
    .inquiry__text > * + h3, .inquiry__form__description > * + h3 {
      margin-top: 26px; }
    .inquiry__text > * + p, .inquiry__form__description > * + p {
      margin-top: 8px; }
    .inquiry__text > * + .btnlink, .inquiry__form__description > * + .btnlink, .inquiry__text > * + .btnlink--download, .inquiry__form__description > * + .btnlink--download {
      margin-top: 30px; }
    .inquiry__text > * + .arrowlinelist, .inquiry__form__description > * + .arrowlinelist, .inquiry__text > * + .arrowlinelist--4col, .inquiry__form__description > * + .arrowlinelist--4col, .inquiry__text > * + .arrowlinelist--3col, .inquiry__form__description > * + .arrowlinelist--3col, .inquiry__text > * + .arrowlinelist--2col, .inquiry__form__description > * + .arrowlinelist--2col {
      margin-top: 16px; }
  .inquiry__spback {
    display: block;
    margin-top: 30px; }
    .inquiry__spback a {
      display: inline-block;
      font-size: 15px;
      line-height: 32px;
      width: auto;
      height: 32px;
      padding-left: 30px;
      position: relative;
      color: #000;
      text-decoration: none; }
      .inquiry__spback a:before, .inquiry__spback a:after {
        content: "";
        display: block;
        width: 15px;
        height: 14px;
        background-size: 15px 14px;
        position: absolute;
        left: 0px;
        top: 8px;
        -ms-transform: rotate(180deg);
            transform: rotate(180deg); }
      .inquiry__spback a:before {
        background-image: url(images/arrow_gray.png);
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
      .inquiry__spback a:after {
        background-image: url(images/arrow_blue.png);
        opacity: 0;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; } }

.for_matriculant .pageheader {
  padding-top: 70px;
  height: 110px; }

.for_matriculant__news,
.for_matriculant__list {
  max-width: 1152px;
  width: calc(100% - 60px);
  margin-left: auto;
  margin-right: auto; }

.for_matriculant__news {
  margin-bottom: 120px; }

.for_matriculant__list {
  margin-bottom: 50px; }

.for_matriculant .floatinglist__block {
  width: calc(50% - 24px); }
  .for_matriculant .floatinglist__block:nth-child(1), .for_matriculant .floatinglist__block:nth-child(2) {
    padding-top: 0px;
    border-top: 0px; }
  .for_matriculant .floatinglist__block:nth-last-child(1), .for_matriculant .floatinglist__block:nth-last-child(2) {
    padding-bottom: 0px; }

@media screen and (max-width: 767px) {
  .for_matriculant .pageheader {
    height: auto; }
  .for_matriculant__news,
  .for_matriculant__list {
    margin-left: 24px;
    margin-right: 24px; }
  .for_matriculant__news {
    margin-bottom: 40px; }
  .for_matriculant .floatinglist__block {
    width: 100%; }
    .for_matriculant .floatinglist__block:nth-child(1), .for_matriculant .floatinglist__block:nth-child(2) {
      border-top: 1px solid #D5D8DD;
      padding-top: 36px; }
    .for_matriculant .floatinglist__block:nth-last-child(2) {
      padding-bottom: 34px; } }

.for_alumni .pageheader {
  padding-top: 70px;
  height: 110px; }

.for_alumni .container__right h4 {
  font-weight: 600; }

.for_alumni .container__right ul {
  list-style: disc;
  padding-left: 20px; }

.for_alumni .container__right ol {
  list-style: decimal;
  padding-left: 20px; }
  .for_alumni .container__right ol.for_alumni__require {
    margin: 12px 0; }

.for_alumni .container__right > * + h4 {
  margin-top: 30px;
  margin-bottom: 4px; }

.for_alumni .container__right > * + .btnlink, .for_alumni .container__right > * + .btnlink--download {
  margin-top: 50px; }

.for_alumni .container__right table {
  margin: 8px 0; }
  .for_alumni .container__right table tr > th,
  .for_alumni .container__right table tr > td {
    width: 40%; }
    .for_alumni .container__right table tr > th:first-of-type,
    .for_alumni .container__right table tr > td:first-of-type {
      width: 20%;
      min-width: 30px;
      text-align: center; }

.for_alumni .masonryarticlelist {
  margin-top: 80px; }

@media screen and (max-width: 767px) {
  .for_alumni .pageheader {
    height: auto; }
  .for_alumni .container {
    padding-bottom: 40px; }
  .for_alumni .container__right > * + h4 {
    margin-top: 18px;
    margin-bottom: 0px; }
  .for_alumni .container__right > * + .btnlink, .for_alumni .container__right > * + .btnlink--download {
    margin-top: 30px; }
  .for_alumni .masonryarticlelist {
    margin-top: 50px;
    margin-bottom: 30px; } }

.for_company .pageheader {
  padding-top: 70px;
  height: 110px; }

.for_company .container__right h4 {
  font-weight: 600;
  margin-bottom: 30px; }

.for_company .container__right ul {
  list-style: disc;
  padding-left: 20px; }

.for_company .container__right ol {
  list-style: decimal;
  padding-left: 20px; }

.for_company .container__right > * + h4 {
  margin-top: 30px; }

.for_company .container__right > * + .btnlink, .for_company .container__right > * + .btnlink--download {
  margin-top: 50px; }

.for_company .container__right hr {
  width: 100%;
  height: 1px;
  border: none;
  background-color: #D5D8DD;
  margin: 60px 0; }

@media screen and (max-width: 767px) {
  .for_company .pageheader {
    height: auto; }
  .for_company .container {
    padding-bottom: 60px; }
  .for_company .container__right h4 {
    margin-bottom: 10px; }
  .for_company .container__right > * + h4 {
    margin-top: 18px; }
  .for_company .container__right > * + .btnlink, .for_company .container__right > * + .btnlink--download {
    margin-top: 30px; }
  .for_company .container__right hr {
    margin: 40px 0; } }

.news .pageheader {
  padding-top: 70px;
  height: 110px; }

.news__index {
  top: auto; }

.news__index__item {
  display: block;
  margin-bottom: 25px; }

.news__index__item__link {
  display: block;
  min-height: 144px;
  position: relative;
  color: #000;
  text-decoration: none;
  padding-left: 320px;
  padding-bottom: 25px; }
  .news__index__item__link:after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #D5D8DD;
    position: absolute;
    left: 0px;
    bottom: 0px; }

.news__index__item__thumb, .news__index__item__thumb--nothumb {
  width: 288px;
  height: 144px;
  position: absolute;
  left: 0px;
  top: 0px;
  background-color: #D5D8DD;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat; }

.news__index__item__thumb--nothumb {
  background-color: #1B1BE0;
  background-image: url(images/placeholder_logo.png);
  background-size: 64px 64px;
  background-position: center;
  background-repeat: no-repeat; }

.news__index__item__meta {
  line-height: 22px;
  margin-bottom: 18px; }

.news__index__item__cat {
  display: inline-block;
  margin-right: 8px; }
  .news__index__item__cat span {
    display: inline-block;
    border: 1px solid #1B1BE0;
    padding: 2px 8px;
    line-height: 16px;
    font-size: 12px;
    color: #1B1BE0;
    margin-right: 2px; }

.news__index__item__date {
  font-size: 13px;
  color: #969BA3;
  display: inline-block; }

.news__index__item__title {
  font-size: 18px;
  line-height: 28px; }

html:not(.touch) .news__index__item__link:after {
  transition: background-color 0.15s linear, height 0.25s cubic-bezier(0.19, 1, 0.22, 1); }

html:not(.touch) .news__index__item__link .news__index__item__title {
  transition: color .15s linear; }

html:not(.touch) .news__index__item__link:hover:after {
  height: 4px;
  background-color: #1B1BE0; }

html:not(.touch) .news__index__item__link:hover .news__index__item__title {
  color: #1B1BE0; }

@media screen and (max-width: 767px) {
  .news .pageheader {
    height: auto; }
  .news__index__item {
    margin-bottom: 16px; }
  .news__index__item__link {
    padding-left: 0px;
    padding-bottom: 26px; }
  .news__index__item__meta {
    margin-bottom: 10px;
    margin-top: 16px; }
  .news__index__item__date {
    position: relative;
    left: 0px;
    font-size: 13px; }
  .news__index__item__title {
    font-size: 15px;
    line-height: 24px;
    margin-top: 6px; }
  .news__index__item__thumb, .news__index__item__thumb--nothumb {
    position: relative;
    width: 100%;
    height: 136px; } }

.report .pageheader {
  padding-top: 70px;
  height: 110px; }

.report__index {
  top: auto; }

.report__latest {
  position: relative;
  padding-top: 80px;
  margin-bottom: 80px; }
  .report__latest:before {
    content: "";
    display: block;
    max-width: 1152px;
    width: calc(100% - 60px);
    height: 1px;
    background-color: #D5D8DD;
    position: absolute;
    left: 50%;
    top: 0px;
    -ms-transform: translate(-50%, 0px);
        transform: translate(-50%, 0px); }
  .report__latest .reportindexlist__more {
    max-width: 288px; }

.report__latest__head {
  max-width: 1152px;
  width: calc(100% - 60px);
  margin-left: auto;
  margin-right: auto; }

.report__category {
  max-width: 1152px;
  width: calc(100% - 60px);
  margin: 80px auto 80px;
  padding-top: 80px;
  border-top: 1px solid #D5D8DD; }

.report__category__head {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row nowrap;
      flex-flow: row nowrap;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: start;
      align-items: flex-start;
  margin-bottom: 64px; }

.report__category__head__title {
  width: 42%;
  margin: 0; }

.report__category__head__description {
  width: 58%; }

@media screen and (max-width: 767px) {
  .report .pageheader {
    height: auto; }
  .report__latest {
    padding-top: 24px;
    margin-bottom: 48px; }
    .report__latest:before {
      width: calc(100% - 48px); }
  .report__latest__head {
    width: calc(100% - 48px); }
  .report__category {
    margin: 40px auto 40px;
    padding-top: 36px;
    width: calc(100% - 48px); }
  .report__category__head {
    display: block;
    margin-bottom: 40px; }
  .report__category__head__title {
    width: 100%;
    margin: 0 0 10px; }
  .report__category__head__description {
    width: 100%; } }

.activity .pageheader {
  padding-top: 70px;
  height: 110px; }

.activity .container__sub__category {
  width: 248px; }
  .activity .container__sub__category ul li {
    display: inline-block; }

.activity__index {
  top: auto; }

@media screen and (max-width: 1023px) {
  .activity .container__sub__category {
    width: 160px; } }

@media screen and (max-width: 767px) {
  .activity .pageheader {
    height: auto; }
  .activity .container__sub__category {
    width: auto; }
  .activity .container__sub__period,
  .activity .container__sub__category {
    margin: 0px; }
  .activity:not(.single) .container {
    padding-top: 0px; } }

.single .pageheader {
  padding-top: 70px;
  height: 110px; }

.single .container__sub__back {
  margin-bottom: 24px; }

.single .container__body {
  top: auto; }

.single__header__date {
  font-size: 12px;
  line-height: 32px;
  color: #969BA3;
  display: inline-block;
  margin-right: 24px; }

.single__header__cat {
  display: inline-block; }
  .single__header__cat span {
    display: inline-block;
    border: 1px solid #1B1BE0;
    padding: 2px 8px;
    line-height: 16px;
    font-size: 12px;
    color: #1B1BE0;
    margin-right: 2px; }

.single__header__title {
  margin: 40px 0 40px; }

.single__header__contributer {
  margin-top: 0px !important;
  margin-bottom: 40px;
  text-align: right;
  font-size: 13px;
  line-height: 1.5em; }

.single__header__tags {
  border-top: 1px solid #D5D8DD;
  font-size: 13px;
  line-height: 20px;
  color: #5E6166;
  padding-top: 24px;
  margin-bottom: 50px; }
  .single__header__tags span {
    display: inline-block;
    margin-right: 16px; }

.single__body__eyecatch {
  position: relative;
  width: 100%;
  height: auto;
  margin-bottom: 60px; }
  .single__body__eyecatch img {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 864px;
    margin: 0 auto; }

.single__body__contributer {
  margin-top: -10px !important;
  margin-bottom: 50px;
  text-align: right;
  font-size: 13px;
  line-height: 1.5em; }

.single__additional {
  margin-top: 80px; }

.single__additional__item {
  border-top: 1px solid #D5D8DD;
  padding-left: 192px;
  position: relative;
  padding: 28px 28px 28px 192px; }

.single__additional__item__label {
  position: absolute;
  left: 0px;
  font-size: 13px;
  line-height: 24px; }

.single__additional__item__body p {
  font-size: 13px;
  line-height: 24px; }

.single__additional__item__body__embedmap {
  width: 100%;
  height: 300px;
  margin-top: 8px; }
  .single__additional__item__body__embedmap > div {
    width: 100%;
    height: 100%; }

.single__nav {
  border-top: 1px solid #D5D8DD;
  position: relative;
  height: 100px; }

.single__nav__prev,
.single__nav__next {
  display: block;
  position: absolute;
  bottom: 0px;
  color: #000;
  text-decoration: none;
  font-size: 15px;
  line-height: 20px; }
  .single__nav__prev:before, .single__nav__prev:after,
  .single__nav__next:before,
  .single__nav__next:after {
    content: "";
    display: block;
    width: 15px;
    height: 14px;
    background-size: 15px 14px;
    position: absolute;
    top: 2px; }
  .single__nav__prev:before,
  .single__nav__next:before {
    background-image: url(images/arrow_gray.png);
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
  .single__nav__prev:after,
  .single__nav__next:after {
    background-image: url(images/arrow_blue.png);
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }

.single__nav__prev {
  left: 0px;
  padding-left: 30px; }
  .single__nav__prev:before, .single__nav__prev:after {
    left: 0px;
    -ms-transform: rotate(180deg);
        transform: rotate(180deg); }

.single__nav__next {
  right: 0px;
  padding-right: 30px; }
  .single__nav__next:before, .single__nav__next:after {
    right: 0px; }

.single__nav__back {
  display: block;
  position: absolute;
  bottom: 0px;
  left: 50%;
  -ms-transform: translate(-50%, 0px);
      transform: translate(-50%, 0px);
  font-size: 15px;
  text-align: center;
  line-height: 20px;
  color: #000;
  text-decoration: none; }
  .single__nav__back:before {
    content: "";
    display: block;
    width: 0%;
    height: 1px;
    background-color: #1B1BE0;
    position: absolute;
    right: 0px;
    bottom: -2px; }

html:not(.touch) .single__nav__back {
  transition: color .15s linear; }
  html:not(.touch) .single__nav__back:before {
    transition: width 0.25s cubic-bezier(0.19, 1, 0.22, 1); }
  html:not(.touch) .single__nav__back:hover {
    color: #1B1BE0; }
    html:not(.touch) .single__nav__back:hover:before {
      left: 0px;
      right: auto;
      width: 100%; }

html:not(.touch) .single__nav__prev,
html:not(.touch) .single__nav__next {
  transition: color .15s linear; }
  html:not(.touch) .single__nav__prev:before, html:not(.touch) .single__nav__prev:after,
  html:not(.touch) .single__nav__next:before,
  html:not(.touch) .single__nav__next:after {
    transition: transform .15s linear, opacity .15s linear; }
  html:not(.touch) .single__nav__prev:hover,
  html:not(.touch) .single__nav__next:hover {
    color: #1B1BE0; }

html:not(.touch) .single__nav__prev:hover:before {
  -ms-transform: rotate(180deg) translate(2px, 0);
      transform: rotate(180deg) translate(2px, 0);
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }

html:not(.touch) .single__nav__prev:hover:after {
  -ms-transform: rotate(180deg) translate(2px, 0);
      transform: rotate(180deg) translate(2px, 0);
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

html:not(.touch) .single__nav__next:hover:before {
  -ms-transform: translate(2px, 0);
      transform: translate(2px, 0);
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }

html:not(.touch) .single__nav__next:hover:after {
  -ms-transform: translate(2px, 0);
      transform: translate(2px, 0);
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

@media screen and (max-width: 767px) {
  .single .pageheader {
    height: auto; }
  .single .container__sub {
    margin-bottom: 20px; }
  .single .container__sub__back {
    margin-bottom: 0px; }
  .single .container__sub__category {
    display: none; }
  .single__header__title {
    margin: 10px 0 20px; }
  .single__additional {
    margin-top: 40px; }
  .single__additional__item {
    padding: 22px 0px; }
  .single__additional__item__label {
    position: relative; }
  .single__nav {
    height: 114px;
    margin-bottom: 20px; }
  .single__nav__prev,
  .single__nav__next {
    bottom: auto;
    top: 38px; }
  .single__body__contributer {
    margin-top: 0px !important;
    margin-bottom: 26px; }
  .single__header__contributer {
    margin-bottom: 24px; }
  .single__header__tags {
    padding-top: 20px;
    margin-bottom: 40px; }
    .single__header__tags span {
      margin-right: 12px; } }

.disclosure .pageheader {
  height: 210px; }

.disclosure .pageheader__title {
  width: calc(100% - 630px);
  max-width: 440px; }

.disclosure .pageheader__subnav {
  width: 605px; }

.disclosure #faculty dl dt, .disclosure #faculty dl dd {
  padding: 0px;
  border: 0px; }

.disclosure #career h6 {
  margin-bottom: 0px; }

.disclosure #career h6 + p {
  margin-top: 0px; }

.disclosure #career .table + p {
  font-size: 13px;
  margin-top: 12px; }

.disclosure #completion .disclosure__completion__eval {
  width: 100%;
  height: 64px; }
  .disclosure #completion .disclosure__completion__eval__block {
    box-sizing: border-box;
    width: 25%;
    height: 64px;
    border: 1px solid #D5D8DD;
    float: left;
    margin-left: -1px;
    text-align: center;
    line-height: 62px;
    font-size: 13px; }

.disclosure #completion dl {
  border-bottom: 1px solid #D5D8DD; }
  .disclosure #completion dl dt, .disclosure #completion dl dd {
    padding-top: 16px;
    border-top: 1px solid #D5D8DD; }

.disclosure #facility .container__article__sub {
  margin: 40px 0 50px; }

.disclosure #facility .table th, .disclosure #facility .table td {
  text-align: left; }

.disclosure .disclosure__links {
  /*
		.btnlink{
			width: 400px;
			height: 80px;
			span>span{
				&:before{ display: none; }
				display: block;
				width: 100%;
				height: auto;
				line-height: 24px;
				position: absolute;
				left: 50%;
				top: 50%;
				transform: translate(-50%, -50%);
			}
		}
		.btnlink+.btnlink{
			margin-top: 40px;
		}
		*/ }
  .disclosure .disclosure__links h5 {
    font-weight: 400;
    margin-bottom: 0px; }

@media screen and (max-width: 1023px) {
  .disclosure .pageheader {
    height: 250px; }
  .disclosure .pageheader__title {
    width: calc(100% - 480px);
    max-width: 440px; }
  .disclosure .pageheader__subnav {
    width: 464px; } }

@media screen and (max-width: 767px) {
  .disclosure .container__sub {
    display: none; }
  .disclosure #facility .container__article__sub,
  .disclosure #facility .disclosure__career__table,
  .disclosure #career .container__article__sub,
  .disclosure #career .disclosure__career__table {
    box-sizing: border-box;
    width: calc(100% + 48px);
    margin-left: -24px;
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
    padding-right: 24px;
    padding-left: 24px;
    padding-bottom: 20px; }
  .disclosure #facility .container__article__sub__wrapper,
  .disclosure #facility .disclosure__career__table__wrapper,
  .disclosure #career .container__article__sub__wrapper,
  .disclosure #career .disclosure__career__table__wrapper {
    padding-right: 24px;
    width: 772px; }
  .disclosure #facility .container__article__sub__wrapper {
    width: 772px; }
  .disclosure #career .disclosure__career__table__wrapper {
    width: 530px; }
  .disclosure #completion .disclosure__completion__eval {
    height: 96px; }
    .disclosure #completion .disclosure__completion__eval__block {
      width: 50%;
      height: 48px;
      margin: -1px 0 0 -1px;
      line-height: 46px; }
  .disclosure #completion dl {
    border-bottom: none; }
    .disclosure #completion dl dt, .disclosure #completion dl dd {
      padding-top: 0px;
      border-top: none; }
  .disclosure .disclosure__links .container__article__body__section, .disclosure .disclosure__links .educational_policy__section {
    margin: 10px 0 0 0; }
  .disclosure .disclosure__links h5, .disclosure .disclosure__links a {
    display: block;
    font-size: 13px;
    line-height: 24px; } }

.research .pageheader {
  padding-top: 70px;
  height: 110px; }

.research .container {
  padding-bottom: 80px; }

.research__body > *:first-child {
  margin-top: 0px; }

.research__body p {
  margin: 32px 0; }

.research__body .btnlink, .research__body .btnlink--download {
  margin-top: 50px; }

.research__body__image {
  margin: 0 0 50px 0; }
  .research__body__image img {
    display: block;
    width: 100%;
    height: auto; }

.research__results .btnlink, .research__results .btnlink--download {
  margin: 70px auto 0; }

.research__results__container {
  margin-top: 70px; }
  .research__results__container:after {
    content: "";
    display: block;
    width: 0px;
    height: 0px;
    float: none;
    clear: both;
    visibility: hidden; }

.research__results__block {
  width: calc(33.3333% - 32px);
  margin-left: 48px;
  float: left; }
  .research__results__block:nth-of-type(3n+1) {
    margin-left: 0px;
    clear: both; }
  .research__results__block img {
    display: block;
    width: 100%;
    height: auto; }
  .research__results__block h4 {
    font-size: 18px;
    line-height: 28px;
    margin: 20px 0 16px; }
  .research__results__block p {
    font-size: 13px;
    line-height: 24px; }

@media screen and (max-width: 767px) {
  .research .pageheader {
    height: auto; }
  .research .container {
    padding-bottom: 50px; }
  .research__body p {
    margin: 30px 0; }
  .research__body .btnlink, .research__body .btnlink--download {
    margin-top: 40px; }
  .research__body__image {
    width: calc(100% + 48px);
    margin: 0 0 30px -24px; }
  .research__results .btnlink, .research__results .btnlink--download {
    margin: 40px auto 0; }
  .research__results__container {
    margin-top: 40px; }
    .research__results__container:after {
      content: "";
      display: block;
      width: 0px;
      height: 0px;
      float: none;
      clear: both;
      visibility: hidden; }
  .research__results__block {
    width: 100%;
    margin-left: 0px;
    float: none;
    margin-top: 30px; }
    .research__results__block img {
      display: block;
      width: 100%;
      height: auto; }
    .research__results__block h4 {
      font-size: 18px;
      line-height: 28px;
      margin: 15px 0 12px; }
    .research__results__block p {
      font-size: 13px;
      line-height: 24px; } }

.iamas_activity .pageheader {
  padding-top: 70px;
  height: 110px; }

.iamas_activity .iamas_activity__block {
  border-bottom: 1px solid #D5D8DD;
  padding-bottom: 90px;
  margin-bottom: 90px; }
  .iamas_activity .iamas_activity__block:last-of-type {
    border-bottom: 0px;
    padding-bottom: 0px;
    margin-bottom: 0px; }
  .iamas_activity .iamas_activity__block > h3 {
    font-size: 24px;
    line-height: 40px;
    font-weight: 600;
    margin-bottom: 60px; }
  .iamas_activity .iamas_activity__block > p {
    margin: 40px 0; }
  .iamas_activity .iamas_activity__block > *:last-child {
    margin-bottom: 0px; }
  .iamas_activity .iamas_activity__block > *:first-child {
    margin-top: 0px; }

.iamas_activity .iamas_activity__block__image {
  margin: 40px 0; }
  .iamas_activity .iamas_activity__block__image .gallery .gallery__pager, .iamas_activity .iamas_activity__block__image .gallery .gallery__pager--thumbnail {
    margin-top: 10px; }
  .iamas_activity .iamas_activity__block__image .gallery .gallery__viewport {
    padding-top: 50%; }
  .iamas_activity .iamas_activity__block__image .iamas_activity__block__image__single {
    width: 100%;
    height: 0px;
    padding-top: 50%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat; }

@media screen and (max-width: 767px) {
  .iamas_activity .pageheader {
    height: auto; }
  .iamas_activity .container__sub {
    display: none; }
  .iamas_activity .iamas_activity__block {
    padding-bottom: 60px;
    margin-bottom: 60px; }
    .iamas_activity .iamas_activity__block:last-of-type {
      border-bottom: 0px;
      padding-bottom: 0px;
      margin-bottom: 0px; }
    .iamas_activity .iamas_activity__block > h3 {
      font-size: 20px;
      line-height: 24px;
      margin-bottom: 40px; }
    .iamas_activity .iamas_activity__block > p {
      margin: 22px 0;
      line-height: 30px; }
    .iamas_activity .iamas_activity__block > *:last-child {
      margin-bottom: 0px; }
  .iamas_activity .iamas_activity__block__image {
    width: calc(100% + 48px);
    margin: 40px 0 30px -24px; }
    .iamas_activity .iamas_activity__block__image .gallery .gallery__pager, .iamas_activity .iamas_activity__block__image .gallery .gallery__pager--thumbnail {
      margin-top: 20px;
      line-height: 2px; } }

.guidance .container {
  padding-bottom: 80px; }

.guidance__body {
  position: relative; }
  .guidance__body:after {
    content: "";
    display: block;
    width: 0px;
    height: 0px;
    float: none;
    clear: both;
    visibility: hidden; }

.guidance__body__image {
  float: right;
  width: 58.33%; }
  .guidance__body__image img {
    display: block;
    width: 100%;
    height: auto; }

.guidance__body__text {
  float: left;
  width: 33.5%; }
  .guidance__body__text h3 {
    margin-bottom: 60px; }
  .guidance__body__text .btnlink, .guidance__body__text .btnlink--download {
    max-width: 288px;
    width: 100%;
    margin-top: 60px; }

@media screen and (max-width: 767px) {
  .guidance .container {
    padding-bottom: 50px; }
  .guidance__body {
    padding-top: 60px; }
  .guidance__body__image {
    float: none;
    width: calc(100% + 48px);
    margin-left: -24px; }
  .guidance__body__text {
    float: none;
    width: 100%;
    margin-top: 30px; }
    .guidance__body__text h3 {
      margin: 0px;
      position: absolute;
      left: 0px;
      top: 0px; }
    .guidance__body__text .btnlink, .guidance__body__text .btnlink--download {
      max-width: auto;
      max-width: initial;
      margin-top: 30px; } }

.search .pageheader {
  padding-top: 70px;
  height: 110px; }

.search .container {
  padding-top: 30px;
  padding-bottom: 60px; }

.search__empty {
  padding: 60px 0;
  text-align: center; }

.search__result .gsc-control-cse,
.search__result .gsc-webResult.gsc-result,
.search__result .gsc-results .gsc-imageResult {
  background-color: transparent !important;
  border-color: transparent !important; }

.search__result .gsc-result .gs-title {
  height: 1.4em !important; }

.search__result .gsc-table-result {
  border-collapse: separate; }

.search__result .gsc-control-cse {
  padding-left: 0px;
  padding-right: 0px; }

@media screen and (max-width: 767px) {
  .search .pageheader {
    height: auto; } }

.educational_policy__list {
  margin-top: 80px; }
  .educational_policy__list:after {
    content: "";
    display: block;
    width: 0px;
    height: 0px;
    float: none;
    clear: both;
    visibility: hidden; }

.educational_policy__list__block {
  position: relative;
  width: calc(33.3333% - 32px);
  height: auto;
  margin-left: 48px;
  float: left; }
  .educational_policy__list__block:nth-of-type(3n+1) {
    clear: both;
    margin-left: 0px; }
  .educational_policy__list__block img {
    display: block;
    width: 100%;
    height: auto; }
  .educational_policy__list__block h4 {
    font-size: 18px;
    font-weight: 600;
    margin: 20px 0 14px; }
  .educational_policy__list__block p {
    font-size: 15px;
    line-height: 32px; }

.educational_policy__section {
  border: none;
  margin: 80px 0 0 0;
  padding: 0; }
  .educational_policy__section h4 {
    font-size: 18px;
    font-weight: 600; }

@media screen and (max-width: 767px) {
  .educational_policy .container__right {
    margin-top: 0px; }
  .educational_policy__list {
    margin-top: 36px; }
  .educational_policy__list__block {
    width: 100%;
    margin-left: 0px;
    margin-bottom: 20px; }
    .educational_policy__list__block:last-of-type {
      margin-bottom: 0px; }
  .educational_policy__section {
    margin-top: 30px; }
    .educational_policy__section h4 {
      font-size: 15px;
      line-height: 24px; } }

.sitemap .pageheader {
  padding-top: 70px;
  height: 110px; }

.sitemap__list {
  max-width: 1152px;
  width: calc(100% - 60px);
  margin-left: auto;
  margin-right: auto; }

.sitemap__news {
  margin-bottom: 120px; }

.sitemap__list {
  margin-bottom: 50px; }

@media screen and (max-width: 767px) {
  .sitemap .pageheader {
    height: auto; }
  .sitemap__list {
    margin-left: 24px;
    margin-right: 24px; }
  .sitemap__news {
    margin-bottom: 40px; } }

.repository__main {
  margin-top: 70px;
  padding-top: 70px;
  border-top: 1px solid #D5D8DD; }

@media screen and (max-width: 767px) {
  .repository__main {
    margin-top: 40px;
    padding-top: 40px; } }

html.winos,
html.winos body {
  font-family: sans-serif; }
  html.winos .head_1, html.winos .index__about__content > h2, html.winos .single__header__title,
  html.winos .head_2,
  html.winos .head_3,
  html.winos .header,
  html.winos .footer,
  html.winos .index__firstview,
  html.winos .pageheader,
  html.winos .container__article__head h1,
  html.winos .container__article__head h2,
  html.winos .container__article__head h3,
  html.winos .container__article__head h4,
  html.winos .container__article__head h5,
  html.winos .container__article__head h6,
  html.winos .floatinglist__block h3,
  html.winos .classes__detail__outline h3,
  html.winos .projects__detail__outline h3,
  html.winos body .head_1,
  html.winos body .index__about__content > h2,
  html.winos body .single__header__title,
  html.winos body .head_2,
  html.winos body .head_3,
  html.winos body .header,
  html.winos body .footer,
  html.winos body .index__firstview,
  html.winos body .pageheader,
  html.winos body .container__article__head h1,
  html.winos body .container__article__head h2,
  html.winos body .container__article__head h3,
  html.winos body .container__article__head h4,
  html.winos body .container__article__head h5,
  html.winos body .container__article__head h6,
  html.winos body .floatinglist__block h3,
  html.winos body .classes__detail__outline h3,
  html.winos body .projects__detail__outline h3 {
    font-family: serif; }
