@charset "UTF-8";
html {
  font-size: 12px; }

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: inherit;
  font-size: 100%;
  vertical-align: baseline; }

html {
  line-height: 1; }

ol, ul {
  list-style: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle; }

q, blockquote {
  quotes: none; }

q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none; }

p.margintop_0{
	margin-top: auto;
}
ol.margintop_0{
	margin-top: auto;
}

a img {
  border: none; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block; }

@font-face {
  font-family: YuGothicM;
  src: local("Yu Gothic Medium"); }

body {
  background: #ffffff;
  width: 100%;
  font-family: "Arial", "Sawarabi Gothic",-apple-system,BlinkMacSystemFont,"Helvetica Neue","游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif;
  -webkit-text-size-adjust: 100%; }

a {
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s; }
  .gakkai a {
    color: #c95d05; }
    .gakkai a:hover {
      color: #fb9e53; }
  .kenkyu a {
    color: #1160d2; }
    .kenkyu a:hover {
      color: #6fa5f3; }

.fixwidth {
  max-width: 991px;
  /*	min-width: 320px;*/
  margin: auto; }
  @media only screen and (max-width: 991px) {
    .fixwidth {
      margin: 0 10px; } }

* sup {
  font-size: 75%; }

* sub {
  font-size: 75%;
  vertical-align: baseline; }

#navbox {
  display: none; }

.fixed {
  position: fixed;
  width: 100%;
  height: 100%; }


@media only screen and (min-width: 991px) {
  #gNav > ul {
    display: table;
    width: 100%; }
    #gNav > ul > li {
      display: table-cell; }
  #gNav a {
    display: block; }
  .pulldown #gNav > ul > li {
    position: relative; }
    .pulldown #gNav > ul > li > li > ul {
      position: absolute;
      left: 0;
      right: 0; } 
li a.font-small{
	font-size: 85%!important;
}

}

@media only screen and (max-width: 991px) {
  #gNav > ul {
    display: block; }
    #gNav > ul > li {
      display: block; }
    #gNav > ul a {
      display: block; } }

/*-------------------------------------------------------

design

基本的なレイアウト、各種パーツの振る舞い、スタンダートな文章デザインをここで設定する
css作成作業の大部分がこのゾーンでの作業になる

-------------------------------------------------------*/
#header {
  padding: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 15px 0;
  overflow: hidden; }
  #header h1 {
    float: left;
    margin-bottom: 18px; }
    #header h1 a img {
      -webkit-transition: all 0.2s;
      -o-transition: all 0.2s;
      transition: all 0.2s;
      padding: 5px 0;
      display: block;
      height: 60px; }
    #header h1 a:hover img {
      opacity: 0.4; }
    #header h1 a.current:hover img {
      opacity: 1; }
    @media only screen and (max-width: 991px) {
      #header h1 {
        margin-bottom: 0; } }
    @media only screen and (max-width: 767px) {
      #header h1 {
        float: none;
        width: calc(100% - 50px);
        max-width: 254px; }
        #header h1 a {
          display: block; }
          #header h1 a img {
            height: auto; } }
  #header #tNav {
    float: right;
    margin-bottom: 10px; }
    #header #tNav ul {
      padding: 0;
      overflow: hidden;
      position: relative; }
      #header #tNav ul li {
        float: left;
        padding: 0 10px;
        border-left: #d1d1d1 1px solid; }
        #header #tNav ul li:first-child {
          border-left: none; }
        #header #tNav ul li:last-child {
          padding-right: 0; }
        #header #tNav ul li a {
          display: block;
          padding: 2px 0px 2px 0px;
          color: #1160d2;
          text-decoration: none;
          font-size: 0.75rem; }
          #header #tNav ul li a .fa {
            margin-right: 2px; }
  @media only screen and (max-width: 767px) {
    #header #tNav {
      display: none; } }
  #header #tbutton {
    clear: right;
    float: right; }
    #header #tbutton li {
      margin-bottom: 9px; }
    #portalTop #header #tbutton {
      display: none; }
    #header #tbutton a {
      font-size: 0.91667rem;
      padding: 5px 10px; }
      #header #tbutton a.current {
        pointer-events: none; }
  @media only screen and (max-width: 991px) {
    #header #tbutton {
      display: none; } }

@media only screen and (min-width: 991px) {
  #gNav {
    clear: both;
    margin-bottom: 5px;
    border-bottom: #ddd 3px solid; }
    #gNav > ul {
      margin: auto;
      border-left: #ddd 1px dotted; }
      #gNav > ul > li {
        display: block;
        float: left;
        padding: 5px;
        width: 50%;
        width: calc(100% / 2);
        margin-right: 0;
        border-right: #ddd 1px dotted;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; }
		.kenkyu #gNav > ul > li {
          width: 16.66667%; }
       
        .gakkai #gNav > ul > li{
          width: 16.66667%; }
	
        .kenkyu.enpage #gNav > ul > li {
          width: 33.33333%; }
        #gNav > ul > li.last-child {
          margin-right: 0; }
        #gNav > ul > li > ul {
          display: none; }
        #gNav > ul > li > a {
          text-align: center;
          height: 46px;
          line-height: 1.3;
          padding: 9px 0 0;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          text-decoration: none;
          font-size: 0.8rem;
          -webkit-transition: all 0.2s;
          -o-transition: all 0.2s;
          transition: all 0.2s;
          background: #fff;
          position: relative; }
	
	       .kenkyu #gNav > ul > li > a {
          text-align: center;
          height: 46px;
          line-height: 1.3;
          padding: 9px 0 0;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          text-decoration: none;
          font-size: 0.91667rem;
          -webkit-transition: all 0.2s;
          -o-transition: all 0.2s;
          transition: all 0.2s;
          background: #fff;
          position: relative; }
	
          #gNav > ul > li > a {
            color: #0c4699; }
            #gNav > ul > li > a:hover {
              background: #e5effd; }
            #gNav > ul > li > a.current, #gNav > ul > li > a.current:hover {
              background: #e5effd; }
          .gakkai #gNav > ul > li > a {
            color: #8d4104; }
            .gakkai #gNav > ul > li > a:hover {
              background: #fee4cf; }
            .gakkai #gNav > ul > li > a.current, .gakkai #gNav > ul > li > a.current:hover {
              background: #fee4cf; }
          #gNav > ul > li > a:before {
            content: "";
            position: absolute;
            left: 50%;
            bottom: -8px;
            -webkit-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
            transform: translateX(-50%);
            width: 0;
            height: 3px;
            background: #ddd;
            -webkit-transition: all 0.2s;
            -o-transition: all 0.2s;
            transition: all 0.2s; }
          #gNav > ul > li > a:hover:before, #gNav > ul > li > a.current:before {
            width: calc(100% + 5px + 5px);
            background: #1160d2; }
            .gakkai #gNav > ul > li > a:hover:before, .gakkai #gNav > ul > li > a.current:before {
              background: #c95d05; }
          #gNav > ul > li > a:after {
            content: attr(data-text);
            display: block;
            font-size: 0.66667rem;
            font-weight: normal; } }

@media only screen and (max-width: 991px) {
  #gNav {
    position: absolute;
    z-index: 10000;
    top: 0;
    bottom: 100%;
    left: 0;
    right: 0;
    -webkit-overflow-scrolling: touch;
    pointer-events: none; }
    #gNav ul {
      padding: 0;
      margin: 0;
      overflow-y: auto;
      max-height: 100%;
      pointer-events: auto; }
      #gNav ul li a {
        background: #333;
        border-bottom: #000 1px solid;
        color: #fff;
        padding: 2em 2em;
        overflow: hidden;
        font-size: 0.91667rem;
        text-decoration: none;
        padding-top: 0;
        padding-bottom: 0;
        line-height: 0;
        border-bottom-width: 0; }
        .gakkai #gNav ul li a {
          background: #fb9e53;
          border-bottom-color: #c95d05; }
        .kenkyu #gNav ul li a {
          background: #6fa5f3;
          border-bottom-color: #1160d2; }
        .gakkai #gNav ul li a:hover {
          color: #fee4cf; }
        .kenkyu #gNav ul li a:hover {
          color: #e5effd; }
        .gakkai #gNav ul li a:hover:before, .gakkai #gNav ul li a:hover:after {
          background: #fee4cf; }
        .kenkyu #gNav ul li a:hover:before, .kenkyu #gNav ul li a:hover:after {
          background: #e5effd; }
        .gakkai #gNav ul li a.current {
          color: #4d2302;
          background: #fee4cf; }
        .kenkyu #gNav ul li a.current {
          color: #072a5c;
          background: #e5effd; }
      #gNav ul li.hasChild > a {
        position: relative; }
        #gNav ul li.hasChild > a:before, #gNav ul li.hasChild > a:after {
          content: "";
          position: absolute;
          top: 50%;
          -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
          transform: translateY(-50%);
          width: 0.5em;
          height: 0.3em;
          background: #fff;
          -webkit-transition: all 0.2s;
          -o-transition: all 0.2s;
          transition: all 0.2s; }
        #gNav ul li.hasChild > a:before {
          -webkit-transform-origin: right;
          -ms-transform-origin: right;
          transform-origin: right;
          right: 1.5em; }
        #gNav ul li.hasChild > a:after {
          -webkit-transform-origin: left;
          -ms-transform-origin: left;
          transform-origin: left;
          right: 1em; }
      #gNav ul li.hasChild li > a {
        padding-top: 0;
        padding-bottom: 0;
        line-height: 0;
        border-bottom-width: 0; }
        .gakkai #gNav ul li.hasChild li > a {
          background: #c95d05; }
        .kenkyu #gNav ul li.hasChild li > a {
          background: #1160d2; }
      .gakkai #gNav ul li.hasChild.active > a:before, .gakkai #gNav ul li.hasChild.active > a:after, .gakkai #gNav ul li.hasChild.current > a:before, .gakkai #gNav ul li.hasChild.current > a:after {
        background: #fb9e53; }
      .kenkyu #gNav ul li.hasChild.active > a:before, .kenkyu #gNav ul li.hasChild.active > a:after, .kenkyu #gNav ul li.hasChild.current > a:before, .kenkyu #gNav ul li.hasChild.current > a:after {
        background: #6fa5f3; }
      #gNav ul li.hasChild.active > a:before, #gNav ul li.hasChild.current > a:before {
        -webkit-transform: translateY(-50%) skewY(45deg);
        -ms-transform: translateY(-50%) skewY(45deg);
        transform: translateY(-50%) skewY(45deg); }
      #gNav ul li.hasChild.active > a:after, #gNav ul li.hasChild.current > a:after {
        -webkit-transform: translateY(-50%) skewY(-45deg);
        -ms-transform: translateY(-50%) skewY(-45deg);
        transform: translateY(-50%) skewY(-45deg); }
      .gnavactive #gNav ul li.hasChild.active > a, .gnavactive #gNav ul li.hasChild.current > a {
        padding: 2em 2em;
        line-height: 1;
        border-bottom-width: 1px; }
      .gakkai #gNav ul li.hasChild.active li a:hover, .gakkai #gNav ul li.hasChild.current li a:hover {
        background: #8d4104; }
      .kenkyu #gNav ul li.hasChild.active li a:hover, .kenkyu #gNav ul li.hasChild.current li a:hover {
        background: #0c4699; }
      .gakkai #gNav ul li.hasChild.active li a.current, .gakkai #gNav ul li.hasChild.current li a.current {
        color: #8d4104;
        background: #fee4cf; }
      .kenkyu #gNav ul li.hasChild.active li a.current, .kenkyu #gNav ul li.hasChild.current li a.current {
        color: #0c4699;
        background: #e5effd; }
      .gnavactive #gNav ul li.hasChild.active li a, .gnavactive #gNav ul li.hasChild.current li a {
        padding: 2em 2em;
        line-height: 1;
        border-bottom-width: 1px; }
    .gnavactive #gNav {
      top: 42px;
      bottom: 0; }
      .gnavactive #gNav > ul > li > a {
        padding: 2em 2em;
        line-height: 1;
        border-bottom-width: 1px; } }

@media only screen and (max-width: 639px) {
  #gNav ul li a {
    padding: 1.5em 2em; }
  .gnavactive #gNav ul li.hasChild.active > a, .gnavactive #gNav ul li.hasChild.current > a {
    padding: 1.5em 2em; }
  .gnavactive #gNav ul li.hasChild.active li a, .gnavactive #gNav ul li.hasChild.current li a {
    padding: 1.5em 2em; }
  .gnavactive #gNav > ul > li > a {
    padding: 1.5em 2em; } }

@media only screen and (max-width: 399px) {
  #gNav ul li a {
    padding: 1em 1.5em; }
  #gNav ul li.hasChild li a {
    font-size: 0.83333rem; }
  .gnavactive #gNav ul li.hasChild.active > a, .gnavactive #gNav ul li.hasChild.current > a {
    padding: 1em 1.5em; }
  .gnavactive #gNav ul li.hasChild.active li a, .gnavactive #gNav ul li.hasChild.current li a {
    padding: 1em 1.5em; }
  .gnavactive #gNav > ul > li > a {
    padding: 1em 1.5em; } }

#gNavbg {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: none;
  opacity: 0;
  background: #000;
  z-index: 9999; }

#gNavopener {
  display: none;
  position: absolute;
  z-index: 10000;
  top: 25px;
  right: 18px;
  width: 36px;
  height: 4px;
  background: #7b7b7b;
  cursor: pointer;
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
  border-radius: 0;
  border: #666 0 solid; }
  #gNavopener:after {
    display: block;
    content: "menu";
    position: absolute;
    top: 18px;
    right: 0;
    width: 36px;
    text-align: center;
    font-size: 0.83333rem;
    line-height: 1;
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
    overflow: hidden; }
  #gNavopener span {
    display: block;
    position: relative;
    top: -9px;
    width: 100%;
    height: 38px;
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s; }
    #gNavopener span:before, #gNavopener span:after {
      display: block;
      content: "";
      position: absolute;
      right: 50%;
      -webkit-transform: translateX(50%);
      -ms-transform: translateX(50%);
      transform: translateX(50%);
      width: 36px;
      height: 4px;
      background: #7b7b7b;
      -webkit-transition: all 0.2s;
      -o-transition: all 0.2s;
      transition: all 0.2s; }
    #gNavopener span:before {
      top: 0px; }
    #gNavopener span:after {
      top: 18px; }

body.gnavactive #gNavbg {
  opacity: 0.8; }

body.gnavactive #gNavopener {
  top: 0;
  right: 0;
  width: 980px;
  max-width: 100%;
  background: #eee;
  cursor: pointer;
  height: auto;
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
  border-width: 1px 0; }
  body.gnavactive #gNavopener:after {
    position: static;
    width: 100%;
    height: 40px;
    font-size: 1rem;
    text-align: center;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    -webkit-box-pack: center;
    justify-content: center;
    -ms-flex-pack: center;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
  body.gnavactive #gNavopener span {
    top: 0;
    width: 100%;
    height: 0; }
    body.gnavactive #gNavopener span:before, body.gnavactive #gNavopener span:after {
      width: 0;
      height: 0; }

@media only screen and (max-width: 991px) {
 #gNavopener {
    top: 80px;
    right: 27px;
    display: block; } }

@media only screen and (max-width: 991px) {
 body:not(#top)  #gNavopener {
    top: 50px;
    right: 27px;
    display: block; } }

/*
@media only screen and (max-width: 767px) {
  #gNavopener {
    top: 70px;
    right: 18px; } }
*/



@media only screen and (max-width: 399px) {
#gNavopener {
    top: 70px;
    right: 18px; } }

@media only screen and (max-width: 399px) {
body:not(#top) #gNavopener {
    top: 30px;
    right: 18px; } }


main {
  overflow: hidden; }

main > aside {
  float: left;
  width: 200px;
  margin-top: 0 !important; }
  main > aside + article {
    float: right;
    width: calc(100% - 218px);
    margin-top: 0; }
  @media only screen and (max-width: 767px) {
    main > aside,
    main > aside + article {
      float: none;
      width: 100%; } }

#sNav {
  margin-top: 0;
  margin-bottom: 18px; }
  #sNav ul {
    padding: 0;
    margin: 0; }
    #sNav ul {
      padding: 0;
      zoom: 1;
      display: -webkit-box;
      display: -moz-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-justify-content: flex-start;
      -moz-justify-content: flex-start;
      -ms-justify-content: flex-start;
      -webkit-box-pack: start;
      justify-content: flex-start;
      -ms-flex-pack: flex-start; }
      #sNav ul:before, #sNav ul:after {
        content: "";
        display: table; }
      #sNav ul:after {
        clear: both; }
      #sNav ul > * {
        float: left;
        margin: 0 9px 9px 0;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; }
      #sNav ul > li:before {
        content: none; }
      @media only screen and (min-width: 1199px) {
        #sNav ul > * {
          width: calc((100% - 0px)/1 - 1px); }
        #sNav ul > *:nth-child(1n) {
          margin-right: 0; } }
      @media only screen and (min-width: 992px) and (max-width: 1199px) {
        #sNav ul > * {
          width: calc((100% - 0px)/1 - 1px); }
        #sNav ul > *:nth-child(1n) {
          margin-right: 0; } }
      @media only screen and (min-width: 768px) and (max-width: 991px) {
        #sNav ul > * {
          width: calc((100% - 0px)/1 - 1px); }
        #sNav ul > *:nth-child(1n) {
          margin-right: 0; } }
      @media only screen and (min-width: 640px) and (max-width: 767px) {
        #sNav ul > * {
          width: calc((100% - 27px)/4 - 1px); }
        #sNav ul > *:nth-child(4n) {
          margin-right: 0; } }
      @media only screen and (min-width: 400px) and (max-width: 639px) {
        #sNav ul > * {
          width: calc((100% - 18px)/3 - 1px); }
        #sNav ul > *:nth-child(3n) {
          margin-right: 0; } }
      @media only screen and (max-width: 399px) {
        #sNav ul > * {
          width: calc((100% - 9px)/2 - 1px); }
        #sNav ul > *:nth-child(2n) {
          margin-right: 0; } }
    #sNav ul li {
      margin-bottom: 1px; }
      @media only screen and (max-width: 639px) {
        #sNav ul li {
          margin-bottom: 9px; } }
      #sNav ul li:before {
        content: none; }
      #sNav ul li a {
        display: block;
        padding: 9px 9px 9px 28px;
        text-decoration: none;
        border: #999 1px solid;
        position: relative;
        border-radius: 5px; }
        @media only screen and (max-width: 767px) {
          #sNav ul li a {
            padding: 2px 9px 2px 26px; } }
        .gakkai #sNav ul li a {
          background: #fee4cf;
          border-color: #8d4104;
          color: #8d4104; }
        .kenkyu #sNav ul li a {
          background: #e5effd;
          border-color: #0c4699;
          color: #0c4699; }
        #sNav ul li a:before {
          position: absolute;
          content: "";
          top: 50%;
          left: 9px;
          -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
          transform: translateY(-50%);
          border: transparent 6.66667px solid;
          border-left-width: 8px;
          -webkit-transition: all 0.2s;
          -o-transition: all 0.2s;
          transition: all 0.2s; }
          @media only screen and (max-width: 767px) {
            #sNav ul li a:before {
              border: transparent 5.33333px solid;
              border-left-width: 8px; } }
          .gakkai #sNav ul li a:before {
            border-left-color: #c95d05; }
          .kenkyu #sNav ul li a:before {
            border-left-color: #1160d2; }
        .gakkai #sNav ul li a:hover {
          background: #feedde;
          border-color: #4d2302;
          color: #4d2302; }
        .kenkyu #sNav ul li a:hover {
          background: #f3f8fe;
          border-color: #072a5c;
          color: #072a5c; }
        #sNav ul li a:hover:before {
          left: 12px; }
      #sNav ul li .current {
        pointer-events: none; }
        .gakkai #sNav ul li .current {
          background: #fb9e53;
          border-color: #8d4104;
          color: #fff; }
        .kenkyu #sNav ul li .current {
          background: #6fa5f3;
          border-color: #0c4699;
          color: #fff; }
        .gakkai #sNav ul li .current:before,
        .kenkyu #sNav ul li .current:before {
          border-left-color: #fff; }
      #sNav ul li.headline a {
        color: #fff;
        margin-top: 5px;
        padding: 9px;
        pointer-events: none; }
        #sNav ul li.headline a:before {
          content: none; }
        .kenkyu #sNav ul li.headline a {
          background-color: #1160d2; }

#sNavbg {
  display: none; }

.roundNav {
  padding: 30px 0 20px; }
  .roundNav li:before {
    content: none; }
  .roundNav a {
    text-decoration: none;
    background: #ccc;
    display: block;
    padding: 10px 10px 10px 30px;
    border-radius: 10px;
    position: relative;
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s; }
    .roundNav a:before {
      position: absolute;
      top: 50%;
      left: 10px;
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%);
      content: "";
      border: transparent 5px solid;
      border-left: #fff 10px solid;
      border-right: none;
      -webkit-transition: all 0.2s;
      -o-transition: all 0.2s;
      transition: all 0.2s; }
    .roundNav a:hover {
      background: #bbb; }
    .roundNav a:hover:before {
      left: 14px; }
  .roundNav ul {
    display: none; }

#breadcrumbs {
  background: #eee;
  clear: both;
  display: none; }
  #breadcrumbs ul {
    overflow: hidden;
    padding: 0 20px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    #breadcrumbs ul li {
      float: left;
      padding: 5px 0; }
      #breadcrumbs ul li span, #breadcrumbs ul li a {
        display: block;
        height: 30px;
        line-height: 30px;
        padding: 0 5px 0 5px;
        font-size: 100%; }
      #breadcrumbs ul li a:before, #breadcrumbs ul li a:after {
        content: "";
        position: absolute;
        top: 50%;
        right: 10px;
        width: 3px;
        height: 11px;
        background: #666; }
      #breadcrumbs ul li a:before {
        -webkit-transform-origin: bottom right;
        -ms-transform-origin: bottom right;
        transform-origin: bottom right;
        -webkit-transform: translateY(-100%) skew(45deg);
        -ms-transform: translateY(-100%) skew(45deg);
        transform: translateY(-100%) skew(45deg); }
      #breadcrumbs ul li a:after {
        -webkit-transform-origin: top right;
        -ms-transform-origin: top right;
        transform-origin: top right;
        -webkit-transform: skew(-45deg);
        -ms-transform: skew(-45deg);
        transform: skew(-45deg); }
      #breadcrumbs ul li.home a {
        padding-left: 40px;
        background: url(../img/icon_home.png) 0 50% no-repeat; }

@media only screen and (max-width: 991px) {
  #breadcrumbs ul {
    overflow: hidden;
    padding: 0; }
    #breadcrumbs ul li {
      padding: 5px 0; }
      #breadcrumbs ul li span, #breadcrumbs ul li a {
        height: 18px;
        line-height: 18px;
        font-size: 94%; }
      #breadcrumbs ul li a {
        padding-right: 15px; }
        #breadcrumbs ul li a:before, #breadcrumbs ul li a:after {
          right: 0px;
          height: 6px; }
      #breadcrumbs ul li.home a {
        padding-left: 25px;
        -webkit-background-size: contain;
        background-size: contain; } }

@media only screen and (max-width: 639px) {
  #breadcrumbs ul li {
    padding: 3px 0; }
    #breadcrumbs ul li span, #breadcrumbs ul li a {
      height: 12px;
      line-height: 12px;
      font-size: 70%; }
    #breadcrumbs ul li a {
      padding-right: 12px; }
      #breadcrumbs ul li a:before, #breadcrumbs ul li a:after {
        width: 2px;
        height: 4px; }
    #breadcrumbs ul li.home a {
      padding-left: 18px; } }

#pageTitleBox {
  font-size: 185%;
  padding: 0.8em 1em;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  color: #fff;
  position: relative; }
  .gakkai #pageTitleBox {
    background: #fb9e53; }
  .kenkyu #pageTitleBox {
    background: #6fa5f3; }
  #top #pageTitleBox {
    display: none; }
  #pageTitleBox h2 {
    color: #fff;
    text-align: center;
    margin: 0 auto; }
  @media only screen and (max-width: 991px) {
    #pageTitleBox {
      font-size: 130%; } }
  @media only screen and (max-width: 767px) {
    #pageTitleBox {
      height: auto;
      line-height: 1.4;
      font-size: 120%;
      margin-bottom: 18px; } }
  @media only screen and (max-width: 639px) {
    #pageTitleBox {
      font-size: 100%; } }

main {
  padding: 30px 0 50px; }
  main .unit {
    margin-top: 0; }
  main .unit + .unit {
    margin-top: 36px; }
  main .flexbasic > .unit + .unit {
    margin-top: 0; }
  main div, main applet, main object, main iframe, main h1, main h2, main h3, main h4, main h5, main h6, main p, main blockquote, main pre, main address, main cite, main code, main del, main dfn, main ins, main kbd, main samp, main strike, main tt, main var, main dl, main dt, main dd, main ol, main ul, main li, main fieldset, main form, main label, main legend, main article, main aside, main canvas, main details, main embed, main figure, main figcaption, main footer, main header, main hgroup, main menu, main nav, main output, main ruby, main section, main summary, main time, main mark, main audio, main video, main table {
    margin-top: 18px; }
  main li,
  main p,
  main table {
    font-size: 1rem;
    line-height: 1.8; }

main li.plusialius_li{
	font-size: 0.9rem;
    line-height: 1.8; 
}
    @media only screen and (max-width: 767px) {
      main li,
      main p,
      main table {
        font-size: 0.91667rem; 
		} }
    @media only screen and (max-width: 639px) {
      main li,
      main p,
      main table {
        font-size: 0.83333rem; } }
    @media only screen and (max-width: 399px) {
      main li,
      main p,
      main table {
        font-size: 0.75rem; } }
  main h1, main h2, main h3, main h4, main h5, main h6 {
    line-height: 1.3;
    margin-top: 36px; }
    main h1:first-child, main h2:first-child, main h3:first-child, main h4:first-child, main h5:first-child, main h6:first-child {
      margin-top: 0; }
    @media only screen and (max-width: 639px) {
      main h1, main h2, main h3, main h4, main h5, main h6 {
        margin-top: 27px; } }
    @media only screen and (max-width: 399px) {
      main h1, main h2, main h3, main h4, main h5, main h6 {
        margin-top: 18px; } }
  main li {
    margin-top: 9px; }
  main li:first-child {
    margin-top: 0; }
  main h3,
  main #topInfo section.unit h3 {
    font-size: 1.25rem;
    padding: 0.5em 0.8em;
    border-bottom: none;
    color: #fff; }
    main h3 *:before,
    main #topInfo section.unit h3 *:before {
      content: none; }
    .gakkai main h3, .gakkai
    main #topInfo section.unit h3 {
      background: #fb9e53; }
    .kenkyu main h3, .kenkyu
    main #topInfo section.unit h3 {
      background: #6fa5f3; }
    main h3 span,
    main #topInfo section.unit h3 span {
      margin-left: 1em;
      font-size: 0.75rem;
      color: inherit;
      font-weight: inherit; }
   h3 span.px10 {
      margin-left: 0em !important;
      font-size: 0.75rem;
      color: inherit;
      font-weight: inherit; }
	


   main h3 span.titlename,
    main #topInfo section.unit h3 span.titlename {
      font-size: 1rem;
      color: inherit;
      font-weight: inherit;
	  display: block;
	  text-align: right;
}

#topInfo-new div {
	margin-top: 0;
}


    @media only screen and (max-width: 767px) {
      main h3,
      main #topInfo section.unit h3 {
        font-size: 1.16667rem; } }
    @media only screen and (max-width: 639px) {
      main h3,
      main #topInfo section.unit h3 {
        font-size: 1.08333rem; } }
    @media only screen and (max-width: 399px) {
      main h3,
      main #topInfo section.unit h3 {
        font-size: 0.91667rem; } }
  main #topInfo section.unit h3 {
    font-size: 1.16667rem; }
  main h4,
  main #topInfo section.unit h4 {
    font-size: 1.16667rem;
    padding: 0.3em 0.8em;
    border-radius: 0 15px 0 0;
    border-width: 2px;
    border-style: solid;
    clear: both; }
    .gakkai main h4, .gakkai
    main #topInfo section.unit h4 {
      border-color: #fb9e53;
      color: #c95d05; }
    .kenkyu main h4, .kenkyu
    main #topInfo section.unit h4 {
      border-color: #6fa5f3;
      color: #1160d2; }
    @media only screen and (max-width: 767px) {
      main h4,
      main #topInfo section.unit h4 {
        font-size: 1.08333rem; } }
    @media only screen and (max-width: 639px) {
      main h4,
      main #topInfo section.unit h4 {
        font-size: 1rem; } }
    @media only screen and (max-width: 399px) {
      main h4,
      main #topInfo section.unit h4 {
        font-size: 0.83333rem; } }
    main h4.accordionbtn,
    main #topInfo section.unit h4.accordionbtn {
      position: relative;
      cursor: pointer;
      -webkit-transition: all 0.2s;
      -o-transition: all 0.2s;
      transition: all 0.2s; }
      .gakkai main h4.accordionbtn:hover, .gakkai
      main #topInfo section.unit h4.accordionbtn:hover {
        border-color: #fb9e53;
        color: #c95d05; }
      .kenkyu main h4.accordionbtn:hover, .kenkyu
      main #topInfo section.unit h4.accordionbtn:hover {
        border-color: #6fa5f3;
        color: #1160d2; }
      main h4.accordionbtn:after,
      main #topInfo section.unit h4.accordionbtn:after {
        position: absolute;
        top: 50%;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        right: 9px;
        border: #666 1px solid;
        content: "-";
        font-size: 0.83333rem;
        width: 20px;
        height: 20px;
        line-height: 20px;
        text-align: center; }
      main h4.accordionbtn.noactive:after,
      main #topInfo section.unit h4.accordionbtn.noactive:after {
        content: "+"; }
  main #topInfo section.unit h4 {
    font-size: 1.08333rem;
    border-width: 2px; }
  main h5,
  main #topInfo section.unit h5 {
    border-width: 0 0 1px 2px;
    border-style: solid;
    line-height: 1.5;
    font-size: 1.08333rem;
    padding: 0.2em 0.4em; }
    .gakkai main h5,
    .gakkai main #topInfo section.unit h5 {
      border-color: #c95d05;
      color: #c95d05; }
    .kenkyu main h5,
    .kenkyu main #topInfo section.unit h5 {
      border-color: #1160d2;
      color: #1160d2; }
.kenkyu main h5.beside{
	border-width: 0 0 0px 3px;
}
.kenkyu main div.summary{
    border-style: solid;
    line-height: 1.5;
    border-color: #1160d2;	
	border-width: 1px;
	padding: 0em 0.4em 1em 0.4em; 
}

    @media only screen and (max-width: 767px) {
      main h5,
      main #topInfo section.unit h5 {
        font-size: 1rem; } }
    @media only screen and (max-width: 639px) {
      main h5,
      main #topInfo section.unit h5 {
        font-size: 0.91667rem; } }
    @media only screen and (max-width: 399px) {
      main h5,
      main #topInfo section.unit h5 {
        font-size: 0.83333rem; } }
  main h5,
  main #topInfo section.unit h5 {
    position: relative; }
  main #topInfo section.unit h5 {
    font-size: 1rem; }
  main ul,
  main ol {
    padding-left: 1.8em; }
  main ol li {
    list-style: decimal; }
  main ul li {
    position: relative;
    list-style: none; }
    main ul li:before {
      content: "●";
      position: absolute;
      left: -1.3em; }
      .gakkai main ul li:before {
        color: #c95d05; }
      .kenkyu main ul li:before {
        color: #1160d2; }
    main ul li > ul > li:before {
      content: "○"; }
    main ul li > ul > li > ul > li:before {
      content: "■"; }
  main figure {
    margin: 18px 0 0;
    padding: 0;
    text-align: center; }
    main figure img {
      vertical-align: bottom; }
    main figure figcaption {
      font-size: 0.91667rem; }
  main table {
    border-width: 1px 1px 0 0;
    border-style: solid;
    width: 100%; }
    .gakkai main table {
      border-color: #8d4104; }
    .kenkyu main table {
      border-color: #0c4699; }
    main table th,
    main table td {
      border-width: 0 0 1px 1px;
      border-style: solid;
      padding: 3px 5px; }
      .gakkai main table th, .gakkai
      main table td {
        border-color: #8d4104; }
      .kenkyu main table th, .kenkyu
      main table td {
        border-color: #0c4699; }
    main table thead th {
      background: #c95d05;
      color: #fff; }
    main table tbody th {
      vertical-align: top;
      min-width: 20%; }
      .gakkai main table tbody th {
        background: #fee4cf; }
      .kenkyu main table tbody th {
        background: #e5effd; }
    main table tbody td div, main table applet, main table object, main table iframe, main table h1, main table h2, main table h3, main table h4, main table h5, main table h6, main table p, main table blockquote, main table pre, main table address, main table cite, main table code, main table del, main table dfn, main table ins, main table kbd, main table samp, main table strike, main table tt, main table var, main table dl, main table dt, main table dd, main table ol, main table ul, main table li, main table fieldset, main table form, main table label, main table legend, main table article, main table aside, main table canvas, main table details, main table embed, main table figure, main table figcaption, main table footer, main table header, main table hgroup, main table menu, main table nav, main table output, main table ruby, main table section, main table summary, main table time, main table mark, main table audio, main table video, main table table {
      margin-top: 18px; }
      main table tbody td div:first-child, main table applet:first-child, main table object:first-child, main table iframe:first-child, main table h1:first-child, main table h2:first-child, main table h3:first-child, main table h4:first-child, main table h5:first-child, main table h6:first-child, main table p:first-child, main table blockquote:first-child, main table pre:first-child, main table address:first-child, main table cite:first-child, main table code:first-child, main table del:first-child, main table dfn:first-child, main table ins:first-child, main table kbd:first-child, main table samp:first-child, main table strike:first-child, main table tt:first-child, main table var:first-child, main table dl:first-child, main table dt:first-child, main table dd:first-child, main table ol:first-child, main table ul:first-child, main table li:first-child, main table fieldset:first-child, main table form:first-child, main table label:first-child, main table legend:first-child, main table article:first-child, main table aside:first-child, main table canvas:first-child, main table details:first-child, main table embed:first-child, main table figure:first-child, main table figcaption:first-child, main table footer:first-child, main table header:first-child, main table hgroup:first-child, main table menu:first-child, main table nav:first-child, main table output:first-child, main table ruby:first-child, main table section:first-child, main table summary:first-child, main table time:first-child, main table mark:first-child, main table audio:first-child, main table video:first-child, main table table:first-child {
        margin-top: 0 !important; }
    main table tbody td li {
      margin-top: 9px; }
  main .namelist {
    padding: 0;
    zoom: 1;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: flex-start;
    -moz-justify-content: flex-start;
    -ms-justify-content: flex-start;
    -webkit-box-pack: start;
    justify-content: flex-start;
    -ms-flex-pack: flex-start; }
    main .namelist:before, main .namelist:after {
      content: "";
      display: table; }
    main .namelist:after {
      clear: both; }
    main .namelist > * {
      float: left;
      margin: 0 10px 10px 0;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }
    main .namelist > li:before {
      content: none; }

#publish_list thead th{
	background: #1160d2;;
	color:#fff;
	font-weight: 600;
	
}
#publish_list tr th{
text-align: center;	
}

    @media only screen and (min-width: 1199px) {
      main .namelist > * {
        width: calc((100% - 20px)/3 - 1px); }
      main .namelist > *:nth-child(3n) {
        margin-right: 0; } }
    @media only screen and (min-width: 992px) and (max-width: 1199px) {
      main .namelist > * {
        width: calc((100% - 20px)/3 - 1px); }
      main .namelist > *:nth-child(3n) {
        margin-right: 0; } }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      main .namelist > * {
        width: calc((100% - 10px)/2 - 1px); }
      main .namelist > *:nth-child(2n) {
        margin-right: 0; } }
    @media only screen and (min-width: 640px) and (max-width: 767px) {
      main .namelist > * {
        width: calc((100% - 10px)/2 - 1px); }
      main .namelist > *:nth-child(2n) {
        margin-right: 0; } }
    @media only screen and (min-width: 400px) and (max-width: 639px) {
      main .namelist > * {
        width: calc((100% - 0px)/1 - 1px); }
      main .namelist > *:nth-child(1n) {
        margin-right: 0; } }
    @media only screen and (max-width: 399px) {
      main .namelist > * {
        width: calc((100% - 0px)/1 - 1px); }
      main .namelist > *:nth-child(1n) {
        margin-right: 0; } }
  main .namelist li {
    font-size: 0.83333rem; }
  main span.smallbtn .dummylink, main span.smallbtn a {
    display: inline;
    border-radius: 10px;
    margin-left: 9px;
    padding: 0 9px;
    font-size: 0.75rem;
    color: #fff;
    text-decoration: none; }
    .gakkai main span.smallbtn .dummylink, .gakkai main span.smallbtn a {
      background: #8d4104; }
    .kenkyu main span.smallbtn .dummylink, .kenkyu main span.smallbtn a {
      background: #0c4699; }
    @media only screen and (max-width: 639px) {
      main span.smallbtn .dummylink, main span.smallbtn a {
        font-size: 0.66667rem; } }
  main span.smallbtn + span a {
    margin-left: 4.5px; }
  main span.smallbtn .dummylink {
    background: #999 !important;
    cursor: default !important; }
  .jppage.symposium main .unit,
.jppage.symposium_backnumber main .unit,
  .jppage.student main .unit,
.jppage.student_backnumber main .unit  {
    border-bottom: #666 1px solid;
    padding: 0 18px 18px;
    overflow: hidden;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    @media only screen and (max-width: 399px) {
      .jppage.symposium main .unit,
		jppage.symposium_backnumbe main .unit,
      .jppage.student main .unit,
		.jppage.student_backnumber main .unit{
        padding: 0 0 18px; } }
    .jppage.symposium main .unit + .unit,
    .jppage.symposium_backnumber main .unit + .unit,
    .jppage.student main .unit + .unit,
.jppage.student_backnumber main .unit + .unit{
      margin-top: 18px; }
  .jppage.symposium main table,
  .jppage.symposium_backnumber main table,
  .jppage.student main table,
.jppage.student_backnumber main table{
    border: none;
    display: block; }
    @media only screen and (max-width: 399px) {
      .jppage.symposium main table,
      .jppage.symposium_backnumber main table,		
      .jppage.student main table,
		.jppage.student_backnumber main table{
        clear: both; } }
    .jppage.symposium main table tbody th,
	.jppage.symposium main table tbody td,
    .jppage.symposium_backnumber main table tbody th,
	.jppage.symposium_backnumber main table tbody td,
    .jppage.student main table tbody th,
    .jppage.student main table tbody td,
.jppage.student_backnumber main table tbody th,
.jppage.student_backnumber main table tbody td{
      border: none;
      font-size: 0.91667rem; }
      @media only screen and (max-width: 639px) {
        .jppage.symposium main table tbody th, 
		  .jppage.symposium main table tbody td,
        .jppage.symposium_backnumber main table tbody th, 
		  .jppage.symposium_backnumber main table tbody td,		  
        .jppage.student main table tbody th,
        .jppage.student main table tbody td,
         .jppage.student_backnumber main table tbody th,
		  .jppage.student_backnumber main table tbody td{
          font-size: 0.83333rem; } }
      @media only screen and (max-width: 399px) {
        .jppage.symposium main table tbody th,
		 .jppage.symposium main table tbody td,
		  .jppage.symposium_backnumber main table tbody th,
		 .jppage.symposium_backnumber main table tbody td,
        .jppage.student main table tbody th,
        .jppage.student main table tbody td,
        .jppage.student_backnumber main table tbody th,
        .jppage.student_backnumber main table tbody td{
          font-size: 0.75rem; } }
    .jppage.symposium main table tbody th,
    .jppage.student main table tbody th,
    .jppage.symposium_backnumber main table tbody th,
    .jppage.student_backnumber main table tbody th {
      min-width: 5em;
      background: none;
      font-weight: bold;
      color: #333; }
    .jppage.symposium main table tbody td:before
    .jppage.symposium_backnumber main table tbody td:before
    /*.jppage.student main table tbody td:before */{
      content: "： "; }
    .jppage.symposium main table.name th, .jppage.symposium main table.name td,
    .jppage.student main table.name th,
    .jppage.student main table.name td,
    .jppage.student_backnumber main table.name th,
    .jppage.student_backnumber main table.name td {
      border: none;
      padding: 0;
      font-size: 1rem; }
      @media only screen and (max-width: 639px) {
        .jppage.symposium main table.name th, .jppage.symposium main table.name td,
        .jppage.student main table.name th,
        .jppage.student main table.name td,
		 .jppage.student_backnumber main table.name th,
        .jppage.student_backnumber main table.name td{
          font-size: 0.83333rem; } }
      @media only screen and (max-width: 399px) {
        .jppage.symposium main table.name th, .jppage.symposium main table.name td,
        .jppage.student main table.name th,
        .jppage.student main table.name td,
		  .jppage.student_backnumber main table.name th,
        .jppage.student_backnumber main table.name td{
          font-size: 0.75rem; } }
    .jppage.symposium main table.name th,
    .jppage.student main table.name th,
.jppage.symposium_backnumber main table.name th,
    .jppage.student_backnumber main table.name th{
      min-width: 3em;
      background: none;
      font-weight: normal;
      color: #333; }
    .jppage.symposium main table.name th:before,
    .jppage.student main table.name th:before,
.jppage.symposium_backnumber main table.name th:before,
    .jppage.student_backnumber main table.name th:before{
      content: "-"; }
    .jppage.symposium main table.name th:after,
    .jppage.student main table.name th:after,
jppage.symposium_backnumber main table.name th:after,
    .jppage.student_backnumber main table.name th:after {
      content: "："; }
    .jppage.symposium main table.name td:before,
    .jppage.student main table.name td:before,
.jppage.symposium_backnumber main table.name td:before,
    .jppage.student_backnumber main table.name td:before{
      content: none; }
  .jppage.symposium main figure.floatContentsR,
  .jppage.student main figure.floatContentsR,
  .jppage.symposium_backnumber main figure.floatContentsR,
  .jppage.student_backnumber main figure.floatContentsR {
    max-width: 33.3%; }
    @media only screen and (max-width: 399px) {
      .jppage.symposium main figure.floatContentsR + table,
      .jppage.student main figure.floatContentsR + table,
	  .jppage.symposium_backnumber main figure.floatContentsR + table,
      .jppage.student_backnumber main figure.floatContentsR + table {
        clear: none; } }
  .enpage.symposium main table tbody th,
	.enpage.symposium main table tbody td,
  .enpage.student main table tbody th,
  .enpage.student main table tbody td,
.enpage.symposium_backnumber main table tbody th,
	.enpage.symposium_backnumber main table tbody td,
  .enpage.student_backnumber main table tbody th,
  .enpage.student_backnumber main table tbody td{
    font-size: 0.91667rem; }
  .enpage.symposium main table tbody th,
  .enpage.student main table tbody th,
  .enpage.symposium_backnumber  main table tbody th,
  .enpage.student_backnumber  main table tbody th {
    min-width: 5em;
    width: 15%; }
  main div.english,
  main div.spain,
  main div.chinese,
  main div.international {
    padding: 18px; }
    @media only screen and (max-width: 639px) {
      main div.english,
      main div.spain,
      main div.chinese,
      main div.international {
        padding: 9px; } }
  main div.english {
    border: #3fa2ca 2px solid; }
  main div.spain {
    border: #e1736b 2px solid; }
  main div.chinese {
    border: #78af23 2px solid; }
  main div.international {
    border: #c38b0d 2px solid; }
  @media only screen and (max-width: 767px) {
    main {
      padding: 0 0 36px; } }

.intro .flexbasic li:before {
  content: none; }

.info .unit,
#topInfo section.unit {
  counter-reset: h4; }
  .info .unit h4:before,
  #topInfo section.unit h4:before {
    counter-increment: h4;
    content: counter(h4, upper-roman) ". "; }

  .info .unit h4.infotitle:before,
  #topInfo section.unit h4.infotitle:before {
    content: none; }

    .info .unit h4.infotitle {
		text-align: center; }

    .info .unit h3.serialnumber {
    background-color:#0c4699;
	text-align: center; }

.info .unit h3.infotitle {	
    margin-top: 5px; }




.info .unit section,
#topInfo section.unit section {
  counter-reset: h5; }
  .info .unit section h5:before,
  #topInfo section.unit section h5:before {
    counter-increment: h5;
    content: counter(h5, decimal) ". "; }

main .unitNav {
  padding: 20px 0 18px;
  text-align: center;
  clear: both; }
  main .unitNav a {
    display: inline-block;
    border-width: 1px;
    border-style: solid;
    font-size: 0.91667rem;
    padding: 5px 10px;
    margin: 0 10px;
    position: relative;
    text-decoration: none;
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
    cursor: pointer; }
    .gakkai main .unitNav a {
      border-color: #c95d05;
      color: #c95d05; }
    .kenkyu main .unitNav a {
      border-color: #1160d2;
      color: #1160d2; }
    .gakkai main .unitNav a:hover {
      background: #fee4cf; }
    .kenkyu main .unitNav a:hover {
      background: #e5effd; }
    main .unitNav a.prev {
      padding-right: 30px; }
    main .unitNav a.next {
      padding-left: 30px; }
    main .unitNav a:before, main .unitNav a:after {
      content: "";
      position: absolute;
      width: 2px;
      height: 0.6em;
      -webkit-transition: all 0.2s;
      -o-transition: all 0.2s;
      transition: all 0.2s; }
      .gakkai main .unitNav a:before, .gakkai main .unitNav a:after {
        background: #c95d05; }
      .kenkyu main .unitNav a:before, .kenkyu main .unitNav a:after {
        background: #1160d2; }
    main .unitNav a.next:before, main .unitNav a.next:after {
      left: 15px; }
      main .unitNav a.next:before:hover, main .unitNav a.next:after:hover {
        left: 10px; }
    main .unitNav a.prev:before, main .unitNav a.prev:after {
      right: 15px; }
      main .unitNav a.prev:before:hover, main .unitNav a.prev:after:hover {
        right: 10px; }
    main .unitNav a.next:before, main .unitNav a.prev:before {
      bottom: 50%; }
    main .unitNav a.next:after, main .unitNav a.prev:after {
      top: 50%; }
    main .unitNav a.next:after, main .unitNav a.prev:before {
      -webkit-transform: skewX(45deg);
      -ms-transform: skewX(45deg);
      transform: skewX(45deg); }
    main .unitNav a.next:before, main .unitNav a.prev:after {
      -webkit-transform: skewX(-45deg);
      -ms-transform: skewX(-45deg);
      transform: skewX(-45deg); }

main .unit:last-child .unitNav .prev,
main .unit:first-child .unitNav .next {
  display: none; }

.vollist .unit {
  overflow: hidden;
  border-bottom: #666 1px solid;
  padding: 0 18px 18px; }
  @media only screen and (max-width: 639px) {
    .vollist .unit {
      padding: 0 0 18px; } }
  .vollist .unit + .unit {
    margin-top: 18px; }
  .vollist .unit figure {
    float: left;
    width: 20%;
    text-align: center; }
    @media only screen and (max-width: 639px) {
      .vollist .unit figure {
        float: none;
        width: 100%;
        text-align: center; } }
    .vollist .unit figure img {
      width: 100%;
      margin-bottom: 9px; }
      @media only screen and (max-width: 639px) {
        .vollist .unit figure img {
          width: auto;
          max-width: 66.6%; } }
    .vollist .unit figure figcaption {
      font-size: 0.83333rem;
      margin-top: 0; }
    .vollist .unit figure + div {
      float: right;
      width: 80%;
      width: calc(80% - 10px); }
      @media only screen and (max-width: 639px) {
        .vollist .unit figure + div {
          float: none;
          width: 100%; } }
  .vollist .unit h3 span {
    margin-left: 0;
    font-size: 1.08333rem; }
  .vollist .unit div {
    margin-top: 18px; }
    .vollist .unit div > *:first-child {
      margin-top: 0; }
    .vollist .unit div .message {
      padding: 0.5em 1em;
      border-radius: 10px;
      margin-top: 18px; }
      .gakkai .vollist .unit div .message {
        background: #fee4cf; }
      .kenkyu .vollist .unit div .message {
        background: #e5effd; }
      .vollist .unit div .message:first-child {
        margin-top: 0; }
    .vollist .unit div h3:first-child,
    .vollist .unit div h4:first-child,
    .vollist .unit div h5:first-child,
    .vollist .unit div h3 + ul,
    .vollist .unit div h4 + ul,
    .vollist .unit div h5 + ul {
      margin-top: 0; }
    .vollist .unit div .message + h3,
    .vollist .unit div .message + h4,
    .vollist .unit div .message + h5,
    .vollist .unit div ul + h3,
    .vollist .unit div ul + h4,
    .vollist .unit div ul + h5,
    .vollist .unit div h3 + h3,
    .vollist .unit div h4 + h4,
    .vollist .unit div h5 + h5 h3 + h4,
    .vollist .unit div h4 + h5 {
      margin-top: 9px; }
    .vollist .unit div ul {
      padding: 0; }
      .vollist .unit div ul li {
        background: #fff;
        padding: 0.3em 0.5em;
        font-size: 0.83333rem;
        margin-bottom: 0;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        overflow: hidden;
        margin-top: 0;
        line-height: 1.2;
        border: transparent 1px solid;
        -webkit-transition: all 0.2s;
        -o-transition: all 0.2s;
        transition: all 0.2s; }
        @media only screen and (max-width: 639px) {
          .vollist .unit div ul li {
            font-size: 0.75rem; } }
        @media only screen and (max-width: 399px) {
          .vollist .unit div ul li {
            font-size: 0.66667rem; } }
        .vollist .unit div ul li:before {
          content: none; }
        .kenkyu .vollist .unit div ul li {
          border-color: #f3f8fe; }
          .kenkyu .vollist .unit div ul li:nth-child(2n) {
            background: #f3f8fe; }
        .gakkai .vollist .unit div ul li {
          border-color: #feedde; }
          .gakkai .vollist .unit div ul li:nth-child(2n) {
            background: #feedde; }
    .vollist .unit div .name {
      float: right;
      text-align: right;
      display: block;
      padding: 0.1em 0;
      font-size: 12px; }
      .vollist .unit div .name:before {
        content: "－"; }
      .sousyo .vollist .unit div .name {
        width: auto; }
      @media only screen and (max-width: 639px) {
        .vollist .unit div .name {
          font-size: 100%; } }
    .vollist .unit div p {
      margin: 0; }
    .vollist .unit div h4 {
      border-radius: 0;
      margin-top: 18px;
      padding: 0.2em 0.5em;
      border-style: solid;
      border-width: 0 0 1px 3px;
      font-size: 1.08333rem; }
      .gakkai .vollist .unit div h4 {
        border-color: #c95d05; }
      .sousyo .vollist .unit div h4 {
        border-color: #1160d2; }
      .sousyo .vollist .unit div h4 .name {
        color: #fff; }
      .vollist .digital-book div h4 {
		  border-width: 0 0 0 3px;
	  }
      @media only screen and (max-width: 639px) {
        .vollist .unit div h4 {
          font-size: 1rem; } }
      @media only screen and (max-width: 399px) {
        .vollist .unit div h4 {
          font-size: 0.91667rem; } }
    .vollist .unit div h5 {
      color: #1160d2;
      margin-top: 18px;
      padding: 0.2em 0.5em;
      border: none;
      font-size: 0.91667rem; }
      .sousyo .vollist .unit div h5 {
        background: #e5effd; }
      @media only screen and (max-width: 639px) {
        .vollist .unit div h5 {
          font-size: 0.83333rem; } }
      @media only screen and (max-width: 399px) {
        .vollist .unit div h5 {
          font-size: 0.75rem; } }

.rounded-link {
		display: block;
		width: fit-content;
		
		margin: 1em 0;
		padding: 12px 3em 12px 2em;
		
		border: 1px solid;
		border-radius: 28px;
		
		text-decoration: none;
	}
.rounded-link::before {
		content: ">";
		font-size: 125%;
		margin-right: 0.5em;
	}

body.info .date {
  text-align: right;
  font-size: 0.91667rem; }
  @media only screen and (max-width: 767px) {
    body.info .date {
      font-size: 0.83333rem; } }
  @media only screen and (max-width: 639px) {
    body.info .date {
      font-size: 0.75rem; } }
  @media only screen and (max-width: 399px) {
    body.info .date {
      font-size: 0.66667rem; } }

.kenkyupublList figure {
  float: left;
  width: 15%; }
.kenkyupublList div {
  float: right;
  width: 85%;
  width: calc(85% - 10px);
  margin: 0 0 18px; }
  .kenkyupublList div h4 {
    font-size: 0.91667rem !important;
    color: #666 !important;
    background: #ddd;
    font-weight: bold;
    padding: 5px 10px;
    margin-bottom: 0 !important; }
  .kenkyupublList div h5 {
    font-size: 0.91667rem;
    padding: 5px 10px;
    margin-bottom: 0; }
  .kenkyupublList div section {
    border: #ccc 1px solid;
    padding: 5px;
    margin-bottom: 9px; }
  .kenkyupublList div li {
    padding: 5px 10px;
    line-height: 1.5; }
  .kenkyupublList div .name {
    width: auto !important;
    font-weight: normal; }

.grouplist {
  counter-reset: li; }
  .grouplist li:before {
    counter-increment: li;
    content: counter(li, decimal); }
  .grouplist li {
    list-style: none;
    position: relative;
    padding-left: 4em; }
    .grouplist li:before {
      position: absolute;
      top: 0;
      left: 0;
      background: #1160d2;
      display: block;
      width: 2em;
      height: 2em;
      text-align: center;
      display: -webkit-box;
      display: -moz-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: center;
      -moz-justify-content: center;
      -ms-justify-content: center;
      -webkit-box-pack: center;
      justify-content: center;
      -ms-flex-pack: center;
      -webkit-align-items: center;
      -moz-align-items: center;
      -ms-align-items: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      font-size: 2em;
      color: #fff; }
  .grouplist h4 {
    margin: 0 0 5px 5px;
    background: #6fa5f3;
    color: #fff !important;
    border: none; }
  .grouplist p {
    margin: 0 0 9px 5px; }
  .grouplist .more {
    display: none; }

#index.group .indexgroupcount {
  counter-reset: h3;
  counter-reset: h3 0; }
  #index.group .indexgroupcount h3:before {
    counter-increment: h3;
    content: counter(h3, decimal); }
  #index.group .indexgroupcount h3 {
    position: relative;
    padding-left: 2.5em; }
    #index.group .indexgroupcount h3:before {
      position: absolute;
      top: 0;
      left: 0;
      bottom: 0;
      background: #1160d2;
      color: #fff;
      width: 2em;
      text-align: center;
      display: -webkit-box;
      display: -moz-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: center;
      -moz-justify-content: center;
      -ms-justify-content: center;
      -webkit-box-pack: center;
      justify-content: center;
      -ms-flex-pack: center;
      -webkit-align-items: center;
      -moz-align-items: center;
      -ms-align-items: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; }
  #index.group .indexgroupcount th {
    width: 20% !important; }

#mainVisual {
  background: #eee; }
  #mainVisual p {
    height: 320px;
    padding: 30px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    .gakkai #mainVisual p {
      background: url(../../gakkai/img/mainVisual.jpg) 50% 50% no-repeat; }
    .kenkyu #mainVisual p {
      background: url(../../kenkyu/img/mainVisual.jpg) 50% 50% no-repeat; }
    @media only screen and (max-width: 767px) {
      #mainVisual p {
        height: 250px;
        padding: 18px; } }
    @media only screen and (max-width: 639px) {
      #mainVisual p {
        height: 200px; } }
    @media only screen and (max-width: 399px) {
      #mainVisual p {
        height: 150px; } }
    #mainVisual p span {
      display: block;
      font-size: 240%;
      font-weight: bold; }
      .gakkai #mainVisual p span {
        color: #333;
        text-shadow: 0 0 20px #fff, 0 0 20px #fff, 0 0 20px #fff; }
      .kenkyu #mainVisual p span {
        color: #fff;
        text-shadow: 0 0 20px #000, 0 0 20px #000; }
      @media only screen and (max-width: 767px) {
        #mainVisual p span {
          font-size: 1.83333rem;
          line-height: 1.3; } }
      @media only screen and (max-width: 639px) {
        #mainVisual p span {
          font-size: 1.5rem; } }
      @media only screen and (max-width: 399px) {
        #mainVisual p span {
          font-size: 1.41667rem; } }

#mainVisual-new {
  background: #eee; }
  #mainVisual-new p {
	display: grid;
    place-content: center;
	justify-content: stretch;
    height: 320px;
	max-width: 980px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;}
    .gakkai #mainVisual-new p {
      background: url(../../gakkai/img/mainVisual_new.jpg) 50% 50% no-repeat; }
#mainVisual-new img.visual_text {
	 max-width: 250px; width: 100%; 
}
		
    .kenkyu #mainVisual-new p {
      background: url(../../kenkyu/img/mainVisual_new.jpg) 50% 50% no-repeat; }
    @media only screen and (max-width: 767px) {
      #mainVisual-new p {
        height: 250px;
        padding: 0; } }
    @media only screen and (max-width: 639px) {
      #mainVisual-new p {
        height: 200px; } 
    .gakkai #mainVisual-new p {
      background: url(../../gakkai/img/mainVisual_01.jpg) ;
		background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    
		}
 .kenkyu #mainVisual-new p {
      background: url(../../kenkyu/img/mainVisual_01.jpg) ;
		background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    
		}		
	@media only screen and (min-width: 639px) {
		img.visual_text{
			display: none;
		}
	}

}
	@media only screen and (min-width: 639px) {
	img.visual_text{
					display: none;
				}
	}

    @media only screen and (max-width: 399px) {
      #mainVisual-new p {
        height: 150px; } }
    #mainVisual-new p span {
      display: block;
	  word-break: keep-all;
	  line-height: 1.1;
	  padding: 4px 0;
	  background-color: rgb(255 255 255 / 50%);
	  color: #000;
      font-size: 240%;
	  text-shadow: 0 0 20px #fff, 0 0 20px #fff, 0 0 20px #fff;
	  }
      @media only screen and (max-width: 767px) {
        #mainVisual-new p span {
          font-size: 1.83333rem;
          line-height: 1.3; } }
      @media only screen and (max-width: 639px) {
        #mainVisual-new p span {
          font-size: 1.5rem; } }
      @media only screen and (max-width: 399px) {
        #mainVisual-new p span {
          font-size: 1.41667rem; } }

.top-section__title {
    font-size: 1.5rem;
    padding: 0.5em;
	font-weight: bold;
}

.gakkai .top-section__title {
  background: none;
  color: #c95d05; }
.kenkyu .top-section__title {
  word-break: keep-all;
  background: none;
  color: #1160d2; }

#topNav {
  margin-bottom: 35px;
  clear: both; }
  #topNav li {
    border: #aaa 1px solid;
    border-radius: 10px;
    padding: 0 0 25px;
    margin-top: 0 !important;
    background: #eee; }
    .gakkai #topNav li, #topNav li.gakkai {
      border-color: #8d4104; }
    body.kenkyu #topNav li, #topNav li.kenkyu {
      border-color: #0c4699; }
    #topNav li:before {
      content: none; }
  #topNav h3 {
    text-align: center;
    font-size: 1.66667rem;
    line-height: 1.3;
    font-family: "Sawarabi Mincho" ,'Lucida Grande','Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
    font-weight: normal;
    color: #fff;
    padding: 0;
    margin: 18px 18px 9px;
    background: none;
    border-bottom: transparent 1px solid; }
    @media only screen and (max-width: 399px) {
      #topNav h3 {
        font-size: 1.16667rem; } }
    .gakkai #topNav h3 {
      color: #8d4104;
      border-color: #8d4104; }
    body.kenkyu #topNav h3 {
      color: #0c4699;
      border-color: #0c4699; }
    #topNav h3 img {
      width: 100%;
      height: 80px;
      border: none;
      padding: 10px;
      background: #fff;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      border-radius: 8px; }
  #topNav p {
    padding: 0 18px;
    font-size: 0.91667rem;
    font-family: "Sawarabi Mincho" ,'Lucida Grande','Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
    line-height: 1.7;
    min-height: 8.5em;
    text-align: center; }
    @media only screen and (max-width: 399px) {
      #topNav p {
        font-size: 0.83333rem; } }
    .gakkai #topNav p {
      color: #8d4104; }
    body.kenkyu #topNav p {
      color: #0c4699; }
  #topNav figure {
    background: #fff;
    margin: 0; }
    #topNav figure img {
      border-radius: 9px 9px 0 0;
      width: 100%;
      min-height: 180px;
      display: block;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }
  #topNav .more {
    display: none; }

#topNav-new {
  margin-bottom: 35px;
  clear: both; }
#topNav-new li:before {
  	content: none; }
#topNav-new h3 {
	color: black;
	font-weight: bold;
	background: none;
}
#topNav-new .more {
	display: none;
}

@media screen and (min-width: 768px) {
	#topNav-new li {
  		position: relative;
		height: 340px;
	}
	#topNav-new li figure {
    	text-align: left;
		padding-bottom: 20px;
	}
	#topNav-new li figure img {
		height: 270px;
	}
	#topNav-new div {
		position: absolute;
		z-index: 10;
		right: 0;
		bottom: 0px;
		width: 50vw;
		background-color: rgb(229 229 229 / 75%);
		padding: 16px;
		width: 50%;
	}
	#topNav-new h3 {
		padding: 4px;
		font-size: 1.5rem;
	}
	#topNav-new div p {
		text-align: left;
	}
	#topNav-new>ul>li:nth-child(2n) figure {
		text-align: right;
	}
	#topNav-new>ul>li:nth-child(2n) div {
		right: unset;
		left: 0;
	}
}

@media only screen and (max-width: 767px) {
	#topNav-new ul {
		padding: 0
	}
  #topNav-new li {
    border-radius: 16px;
    padding: 0 0 25px;
    margin-top: 0 !important;
	margin-bottom: 1rem;
    background: #eee; }
    .gakkai #topNav-new li, #topNav-new li.gakkai {
      border-color: #8d4104; }
    body.kenkyu #topNav-new li, #topNav-new li.kenkyu {
      border-color: #0c4699; }
  #topNav-new h3 {
    text-align: center;
    font-size: 1.4rem;
    line-height: 1.3;
    font-weight: bold;
    color: #000;
    padding: 0;
    margin: 18px 18px 9px;
    background: none;
    border-bottom: transparent 1px solid; }
    @media only screen and (max-width: 399px) {
      #topNav-new h3 {
        font-size: 1.16667rem; } }
    .gakkai #topNav-new h3 {
      border-color: #8d4104; }
    body.kenkyu #topNav-new h3 {
      border-color: #0c4699; }
  #topNav-new figure {
    background: #fff;
    margin: 0; }
    #topNav-new figure img {
      border-radius: 9px 9px 0 0;
      width: 100%;
      min-height: 180px;
      display: block;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }
	#topNav-new p {
	  min-height: 8.5em;
	}
  #topNav-new .more {
    display: none; }
} 

  #topNav-new p {
    padding: 0 18px;
    font-size: 0.91667rem;
    line-height: 1.7;
    text-align: center; }
    @media only screen and (max-width: 399px) {
      #topNav-new p {
        font-size: 0.83333rem; } }

.top-events__list {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
}
@media screen and (min-width:768px) {
#topInfo-new .slick-track {
  display: flex !important;
}
#topInfo-new .slick-slide {
  height: auto !important;
}
}
.top-event {
	border: 2px solid #efefef !important;
	margin: 8px;
	position: relative;
	font-size: 1rem;
    line-height: 1.8;
}
.top-event::before {
	content: none;
}
.top-event a {
	text-decoration: none;
}
.top-event__desc {
	padding: 4px 8px;
	margin-top: 0;
}
.top-event__thumb {
	position: relative;
	object-fit: contain;
	aspect-ratio: 16 / 9;
	width: 100%;
	box-sizing: border-box;
}
.top-event__thumb.thumb--common {
	padding: 26px;
}
.top-event__label {
	margin: 0;
	display: block;
	position: absolute;
	z-index: 10;
	width: 80px;
	height: 60px;
}
.top-event__label span {
	display: block;
	text-align: left;
	font-size: 0.7rem;
	color: white;
}
.top-event__date {
	display: block;
	padding: 2px 4px;
	color: black;
	background-color: #e5e5e5;
	text-decoration: none;
	text-align: right;
	font-size: 0.8rem;
}
.top-event__title {
	color: black;
	text-decoration: underline;
}
.top-event__label--text {
	margin: 0;
}
.top-events__list .slick-dots {
	background-color: unset;
}
.top-events__list .slick-dots li button:before {
	color: #D9D9D9;
}
.gakkai .top-events__list .slick-dots li.slick-active button:before {
	color: #C95D05;
}
.kenkyu .top-events__list .slick-dots li.slick-active button:before {
	color: #1160D2;
}
@media screen and (min-width:768px) {
	.top-event__label {
		top: 0;
		clip-path: polygon(0 0, 0% 100%, 100% 0);
		width: 80px;
		height: 70px;
	}
	.top-event__label--text {
		position: absolute;
    	top: 10px;
    	left: 3px;
    	width: 45px;
    	height: 30px;
    	transform: rotate(317deg);
    	display: grid;
    	place-content: center;
	}
	.top-event__label--text span {
		line-height: 1.3;
		text-align: center;
		word-break: keep-all;
		overflow-wrap: anywhere;
	}
}
@media screen and (max-width:767px) {
	#topInfo-new .top-events__list {
		display: grid;
    	grid-template-columns: 1fr auto;
	}
	.top-events__list .slick-dots {
		display: grid !important;
    	align-content: center;
    	gap: 16px;
	}
	.top-event__thumb {
		aspect-ratio: unset;
	}
	.top-event__thumb.thumb--common {
		padding: 2px;
	}
	.top-event__label {
		bottom: 0;
		width: fit-content;
		height: fit-content;
		padding: 4px 16px;
	}
	.top-event a {
		display: grid;
		grid-template-columns: 2fr 3fr;
		gap: 4px;
		align-items: center;
	}
	.top-event__date {
		background-color: unset;
		text-align: left;
	}
}

#topInfo #news {
  border: #aaa 1px solid;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }
  #top #topInfo #news {
	float: left;
    width: calc(100% - 250px - 18px);
    margin-bottom: 35px; }
    @media only screen and (max-width: 767px) {
      #top #topInfo #news {
        float: none;
        width: 100%; } }
  #topInfo #news h3 {
    border-bottom: #aaa 1px solid;
    padding: 20px 30px 14px;
    margin: 0;
    background: none;
    font-size: 1.16667rem;
    position: relative; }
    #topInfo #news h3:before {
      position: absolute;
      content: "";
      top: 50%;
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%);
      left: 0;
      width: 5px;
      height: 80%;
      -webkit-transition: all 0.2s;
      -o-transition: all 0.2s;
      transition: all 0.2s; } 
    .gakkai #topInfo #news h3 {
      color: #c95d05; }
    .gakkai #topInfo #news h3:before {
      background: #c95d05; }
    .kenkyu #topInfo #news h3 {
      color: #1160d2; }
    .kenkyu #topInfo #news h3:before {
      background: #1160d2; }
    @media only screen and (max-width: 767px) {
      #topInfo #news h3 {
        padding: 9px 18px; } }
    @media only screen and (max-width: 639px) {
      #topInfo #news h3 {
        font-size: 1rem; } }
  #topInfo #news:hover h3:before {
    height: 100%; }
  #topInfo #news .btnBox {
    position: absolute;
    top: 50%;
    right: 12px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    margin-bottom: 0; }
    #topInfo #news .btnBox span {
      font-size: inherit;
      display: inline;
      margin: 0; }
    #topInfo #news .btnBox a + a {
      margin-top: 9px; }
    @media only screen and (max-width: 639px) {
      #topInfo #news .btnBox span {
        display: none; }
      #topInfo #news .btnBox a + a {
        margin-top: 5px; } }

#topInfo div {
  max-height: 650px;
  overflow: auto;
  margin-top: 0; }
  @media only screen and (max-width: 767px) {
    #topInfo div {
      max-height: 450px; } }
  @media only screen and (max-width: 639px) {
    #topInfo div {
      max-height: 320px; } }

#topInfo #info > div {
  padding: 20px; }

#topInfo #info h3 {
  font-size: 1rem; }

#topInfo section.unit {
  border: none;
  max-height: 20em;
  overflow: hidden;
  padding: 15px 10px;
  font-size: 83.3%;
  position: relative;
  margin-bottom: 18px;
  border: #ccc 3px solid;
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s; }
  .gakkai #topInfo section.unit:hover {
    border-color: #c95d05; }
  .kenkyu #topInfo section.unit:hover {
    border-color: #1160d2; }
  #topInfo section.unit:last-child {
    margin-bottom: 0; }
  #topInfo section.unit section {
    border: none; }
  #topInfo section.unit .anchor {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
    z-index: 100;
    font-size: 100%; }
    #topInfo section.unit .anchor:after {
      position: absolute;
      top: calc(100% - 2em);
      bottom: 0;
      left: 0;
      right: 0;
      background: #ccc;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      content: "続きを読む";
      text-align: center;
      -webkit-transition: all 0.2s;
      -o-transition: all 0.2s;
      transition: all 0.2s; }
  #topInfo section.unit:hover .anchor:after {
    color: #fff; }
    .gakkai #topInfo section.unit:hover .anchor:after {
      background: #c95d05; }
    .kenkyu #topInfo section.unit:hover .anchor:after {
      background: #1160d2; }

#topInfo #topside {
  float: right;
  width: 250px; }
  @media only screen and (max-width: 767px) {
    #topInfo #topside {
      float: none;
      width: 100%; } }
  #topInfo #topside ul {
    padding: 0;
    margin-top: 0; }
    #topInfo #topside ul {
      padding: 0;
      zoom: 1;
      display: -webkit-box;
      display: -moz-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-justify-content: flex-start;
      -moz-justify-content: flex-start;
      -ms-justify-content: flex-start;
      -webkit-box-pack: start;
      justify-content: flex-start;
      -ms-flex-pack: flex-start; }
      #topInfo #topside ul:before, #topInfo #topside ul:after {
        content: "";
        display: table; }
      #topInfo #topside ul:after {
        clear: both; }
      #topInfo #topside ul > * {
        float: left;
        margin: 0 9px 9px 0;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; }
      #topInfo #topside ul > li:before {
        content: none; }
      @media only screen and (min-width: 1199px) {
        #topInfo #topside ul > * {
          width: calc((100% - 0px)/1 - 1px); }
        #topInfo #topside ul > *:nth-child(1n) {
          margin-right: 0; } }
      @media only screen and (min-width: 992px) and (max-width: 1199px) {
        #topInfo #topside ul > * {
          width: calc((100% - 0px)/1 - 1px); }
        #topInfo #topside ul > *:nth-child(1n) {
          margin-right: 0; } }
      @media only screen and (min-width: 768px) and (max-width: 991px) {
        #topInfo #topside ul > * {
          width: calc((100% - 0px)/1 - 1px); }
        #topInfo #topside ul > *:nth-child(1n) {
          margin-right: 0; } }
      @media only screen and (min-width: 640px) and (max-width: 767px) {
        #topInfo #topside ul > * {
          width: calc((100% - 9px)/2 - 1px); }
        #topInfo #topside ul > *:nth-child(2n) {
          margin-right: 0; } }
      @media only screen and (min-width: 400px) and (max-width: 639px) {
        #topInfo #topside ul > * {
          width: calc((100% - 9px)/2 - 1px); }
        #topInfo #topside ul > *:nth-child(2n) {
          margin-right: 0; } }
      @media only screen and (max-width: 399px) {
        #topInfo #topside ul > * {
          width: calc((100% - 0px)/1 - 1px); }
        #topInfo #topside ul > *:nth-child(1n) {
          margin-right: 0; } }
    #topInfo #topside ul li {
      padding: 0;
      margin-bottom: 9px; }
      #topInfo #topside ul li:before {
        content: none; }
      #topInfo #topside ul li a {
        display: block;
        padding: 9px;
        text-decoration: none;
        border: transparent 1px solid;
        border-radius: 5px;
        font-weight: bold;
        background-position: 50%;
        background-repeat: no-repeat;
        background-size: cover;
        font-size: 1.08333rem;
        position: relative;
        text-shadow: -2px -2px #fff, -2px -1px #fff, -2px 0px #fff, -2px 1px #fff, -2px 2px #fff, -1px -2px #fff, -1px -1px #fff, -1px 0px #fff, -1px 1px #fff, -1px 2px #fff, 0px -2px #fff, 0px -1px #fff, 0px 0px #fff, 0px 1px #fff, 0px 2px #fff, 1px -2px #fff, 1px -1px #fff, 1px 0px #fff, 1px 1px #fff, 1px 2px #fff, 2px -2px #fff, 2px -1px #fff, 2px 0px #fff, 2px 1px #fff, 2px 2px #fff; }
        @media only screen and (max-width: 639px) {
          #topInfo #topside ul li a {
            font-size: 0.91667rem; } }
        .gakkai #topInfo #topside ul li a {
          border-color: #c95d05; }
#topInfo #topside ul li a.gakkai.intro {
    background-image: url(../../gakkai/img/top-banner-intro.jpg);
}
#topInfo #topside ul li a.gakkai.symposium {
    background-image: url(../../gakkai/img/top-banner-symposium.jpg);
}
#topInfo #topside ul li a.gakkai.student {
    background-image: url(../../gakkai/student/img/student_img.jpg);
    background-size: 200%;
    background-position: 50% 0;
}
#topInfo #topside ul li a.kenkyu.sdgs {
    background-image: url(../../gakkai/img/top-banner-sdgs.jpg);
}
#topInfo #topside ul li a.kenkyu.intro {
    background-image: url(../../kenkyu/img/top-banner-intro.jpg);
}
#topInfo #topside ul li a.kenkyu.group {
    background-image: url(../../kenkyu/img/top-banner-group.jpg);
}
#topInfo #topside ul li a.kenkyu.symposium {
    background-image: url(../../kenkyu/img/top-banner-symposium.jpg);
}


        .kenkyu #topInfo #topside ul li a {
          border-color: #1160d2; }
        #topInfo #topside ul li a.kenkyu {
          font-weight: normal;
          color: #e5effd;
          border-color: #1160d2;
          background-image: url(../../img/top-kenkyu.jpg);
          text-shadow: -2px -2px #072a5c, -2px -1px #072a5c, -2px 0px #072a5c, -2px 1px #072a5c, -2px 2px #072a5c, -1px -2px #072a5c, -1px -1px #072a5c, -1px 0px #072a5c, -1px 1px #072a5c, -1px 2px #072a5c, 0px -2px #072a5c, 0px -1px #072a5c, 0px 0px #072a5c, 0px 1px #072a5c, 0px 2px #072a5c, 1px -2px #072a5c, 1px -1px #072a5c, 1px 0px #072a5c, 1px 1px #072a5c, 1px 2px #072a5c, 2px -2px #072a5c, 2px -1px #072a5c, 2px 0px #072a5c, 2px 1px #072a5c, 2px 2px #072a5c; }
        #topInfo #topside ul li a.gakkai {
          font-weight: normal;
          color: #fee4cf;
          border-color: #c95d05;
          background-image: url(../../gakkai/img/top-publ.jpg);
          text-shadow: -2px -2px #4d2302, -2px -1px #4d2302, -2px 0px #4d2302, -2px 1px #4d2302, -2px 2px #4d2302, -1px -2px #4d2302, -1px -1px #4d2302, -1px 0px #4d2302, -1px 1px #4d2302, -1px 2px #4d2302, 0px -2px #4d2302, 0px -1px #4d2302, 0px 0px #4d2302, 0px 1px #4d2302, 0px 2px #4d2302, 1px -2px #4d2302, 1px -1px #4d2302, 1px 0px #4d2302, 1px 1px #4d2302, 1px 2px #4d2302, 2px -2px #4d2302, 2px -1px #4d2302, 2px 0px #4d2302, 2px 1px #4d2302, 2px 2px #4d2302; }
        #topInfo #topside ul li a span {
          position: absolute;
          z-index: -1;
          right: 0;
          top: 50%;
          height: 100%;
          overflow: hidden;
          -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
          transform: translateY(-50%);
          display: block;
          -webkit-transition: all 0.2s;
          -o-transition: all 0.2s;
          transition: all 0.2s; }
          #topInfo #topside ul li a span i {
            -webkit-transition: all 0.2s;
            -o-transition: all 0.2s;
            transition: all 0.2s;
            -webkit-transform: rotate(5deg);
            -ms-transform: rotate(5deg);
            transform: rotate(5deg);
            font-size: 4.16667rem;
            line-height: 1; }
        #topInfo #topside ul li a:hover span {
          padding-right: 10px; }
          #topInfo #topside ul li a:hover span i {
            -webkit-transform: translateY(-10%) scale(0.66);
            -ms-transform: translateY(-10%) scale(0.66);
            transform: translateY(-10%) scale(0.66);
            -webkit-transform-origin: right;
            -ms-transform-origin: right;
            transform-origin: right; }

#news-new>div {
	border: 2px solid #ececec;
}
dl.newslist {
  padding: 18px 9px;
  overflow: hidden;
  font-size: 1rem;
  line-height: 1.8;
  margin-top: 0; }
  .unit > dl.newslist {
    padding-top: 0;
    padding-bottom: 0; }
  dl.newslist dt {
    color: #419a4c;
    float: left;
    clear: right;
    width: 80px;
    margin-top: 0; }
  dl.newslist dd {
    float: right;
    width: calc(100% - 80px);
    padding-left: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin-top: 0;
    margin-bottom: 9px; }
  @media only screen and (max-width: 767px) {
    dl.newslist dt, dl.newslist dd {
      font-size: 0.91667rem; } }
  @media only screen and (max-width: 639px) {
    dl.newslist dt, dl.newslist dd {
      font-size: 0.83333rem;
      float: none;
      width: 100%;
      padding-left: 0; } }

dl.newslist-new {
  display: grid;
  grid-template-columns: 5rem 9rem 1fr;
  gap: 1.5rem;
  padding: 18px 9px;
  overflow: auto;
  max-height: 400px;
  line-height: 1.8;
  margin-top: 0; }
  .unit > dl.newslist-new {
    padding-top: 0;
    padding-bottom: 0; }
  dl.newslist-new dt {
    color: black;
    margin-top: 0; }
  dl.newslist-new dd a {
	color: black;
  }
  dl.newslist-new dd.newslist-new__genre {
	display: block;
	width: 9rem;
	height: fit-content; 
	text-align: center;
	padding-left: 2px;
	 padding-right: 2px;
  }
  .gakkai .newslist-new__genre.genre--kouen,
  .gakkai .top-event__label.label--kouen {
	color: white;
	background-color: #E83419;
  }
  .kenkyu .newslist-new__genre.genre--kouen,
  .kenkyu .top-event__label.label--kouen {
	color: white;
	background-color: #1160d2;
  }
  .newslist-new__genre.genre--gakubu,
  .top-event__label.label--gakubu {
	color: white;
	background-color: #DD1367;
  }
  .newslist-new__genre.genre--oshirase,
  .top-event__label.label--oshirase {
	color: black;
	background-color: #FBBD01;
  }
  .newslist-new__genre.genre--gakkasai,
  .top-event__label.label--gakkasai {
	color: black;
	background-color: #1B963B;
  }
  .newslist-new__genre.genre--newsletter,
  .top-event__label.label--newsletter {
	color: white;
	background-color: #374001;
  }
  .kenkyu .newslist-new__genre.genre--newsletter,
  .kenkyu .top-event__label.label--newsletter {
	color: white;
	background-color: #28A839;
  }
  .newslist-new__genre.genre--jinbun,
  .top-event__label.label--jinbun {
	color: white;
	background-color: #EC6906;
  }
  .kenkyu .newslist-new__genre.genre--syuppan,
  .kenkyu .top-event__label.label--syuppan {
	color: white;
	background-color: #031f5a;
  }
  dl.newslist-new dd {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin-top: 0;}

#news_backnumber .newslist-new__genre{
    /*margin-left: 1rem;
    width: 30%;
    float: left;*/
	display: none;
}

  @media only screen and (max-width: 767px) {
	dl.newslist-new {
	  gap: 6px;
	  grid-template-columns: min-content 1fr;
	}
	dl.newslist-new dd:not(.newslist-new__genre) {
	  grid-column: 1 / span 2;
	  margin-bottom: 0.8rem;
	}
    dl.newslist-new dt, dl.newslist-new dd {
      font-size: 0.91667rem; }
	dl.newslist-new dd.newslist-new__genre {
		width: 7rem;
    }
  }
  @media only screen and (max-width: 639px) {
    dl.newslist-new dt, dl.newslist-new dd {
      font-size: 0.83333rem;
      float: none;
      width: 100%;
      padding-left: 0; } }

.oshirase-btnbox {
    border: none !important;
	margin: 0 16px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2rem;
	justify-content: center;
	overflow: visible !important;
}
#top main {
	overflow: visible;
}
.oshirase-btn {
	font-size: 1rem;
	font-weight: bold;
	text-decoration: none;
	border: 2px solid #e9e9e9;
	border-radius: 16px;
	padding: 16px 4rem;
    box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.35);
	margin-bottom: 2rem;
	text-align: center;
}
.oshirase-btn.btn--symposium::after {
	content: "シンポジウム・講演会のご案内"
}
.oshirase-btn.btn--backnumber::after {
	content: "過去のお知らせ"
}
.oshirase-btn::before {
	content: "▶";
	margin-right: 1rem;
}
.gakkai .oshirase-btn {
	color: #5A1903;
	background: #C95D05;
	background: linear-gradient(90deg, #C95D05, #FFFFFF 100%);
}
.kenkyu .oshirase-btn {
	color: #1160d2;
	background: #E0E1FB;
	background: linear-gradient(90deg, #E0E1FB, #FFFFFF 100%);
}
@media only screen and (max-width: 767px) {
	.oshirase-btn {
		font-size: 0.7rem;
		padding: 16px 16px;	
		text-align: center;
	}
	.oshirase-btnbox {
		gap: 1rem;
	}
	.oshirase-btn.btn--symposium::after {
		content: "シンポジウム"
	}
	.oshirase-btn.btn--backnumber::after {
		content: "過去のお知らせ"
			
	}
}
.link-list {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 8px;
	padding: unset;
}
@media only screen and (max-width: 767px) {
	.link-list {
	display: none
	}
}
.link-item {
	margin: 0;
}
.link-item::before {
	content: none;
}
.link-item a {
	display: block;
    padding: 9px;
    text-decoration: none;
    border-radius: 5px;
    font-weight: bold;
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    font-size: 1.08333rem;
    position: relative;
    text-shadow: -2px -2px #fff, -2px -1px #fff, -2px 0px #fff, -2px 1px #fff, -2px 2px #fff, -1px -2px #fff, -1px -1px #fff, -1px 0px #fff, -1px 1px #fff, -1px 2px #fff, 0px -2px #fff, 0px -1px #fff, 0px 0px #fff, 0px 1px #fff, 0px 2px #fff, 1px -2px #fff, 1px -1px #fff, 1px 0px #fff, 1px 1px #fff, 1px 2px #fff, 2px -2px #fff, 2px -1px #fff, 2px 0px #fff, 2px 1px #fff, 2px 2px #fff; }
.gakkai .link-item a {
	border: #c95d05 1px solid;
}
.kenkyu .link-item a {
	border: #1160d2 1px solid;
}
    .link-item a span {
      position: absolute;
      z-index: -1;
      right: 0;
      top: 50%;
      height: 100%;
      overflow: hidden;
      transform: translateY(-50%);
      display: block;
      transition: all 0.2s; }
      .link-item a span i {
        transition: all 0.2s;
        transform: rotate(5deg);
        font-size: 4.16667rem;
        line-height: 1; }
    .link-item a:hover span {
      padding-right: 10px; }
      .link-item a:hover span i {
        transform: translateY(-10%) scale(0.66);
        transform-origin: right; }

   .link-item__icon {
		display: inline-block;
		height: 4.16667rem;
   }
	.link-item__icon::before {
		display: block;
		content: "";
		height: 4.16667rem;
		width: 4.16667rem;
		background-repeat: no-repeat;
	}
   .gakkai .link-item__icon.icon--symposium::before {
		background-image: url("../../common/img/presentation-fill-gakkai.svg");
   }
   .kenkyu .link-item__icon.icon--symposium::before {
		background-image: url("../../common/img/presentation-fill-kenkyu.svg");
   }

   .link-item__icon.icon--gakubu::before {
		background-image: url("../../common/img/student.svg");
   }

#commonNav {
	margin-bottom: 30px;
}
#commonNav ul {
	display: grid;
	gap: 8px;
	grid-template-columns: 2fr 2fr 3fr;
}
@media only screen and (max-width: 767px) {
	#commonNav ul {
		grid-template-columns: 1fr 1fr;
	}
}
#commonNav ul li a {
  box-sizing: border-box;
  display: block;
  height: 70px;
  padding: 9px;
  text-decoration: none;
  border: transparent 1px solid;
  border-radius: 5px;
  font-weight: bold;
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  font-size: 1.08333rem;
}
  @media only screen and (max-width: 639px) {
    #commonNav ul li a {
      font-size: 0.91667rem; } }
  .gakkai #commonNav ul li a {
          border-color: #c95d05; }
#commonNav ul li a.kenkyu.sdgs {
    background-image: url(../../gakkai/img/top-banner-sdgs.jpg);
	background-position: left;
}
#commonNav ul li a.kanagawa {
    background-image: url("../../common/img/logo.svg");
	background-color: white;
	background-repeat: no-repeat;
	background-size: contain;
	padding: 12px;
	background-origin: content-box;
}
.kenkyu #commonNav ul li a {
          border-color: #1160d2; }
#commonNav ul li a.kenkyu {
  display: grid;
  align-content: center;
  font-weight: normal;
  color: #e5effd;
  border-color: #1160d2;
  background-image: url(../../img/top-kenkyu.jpg);
  text-shadow: -2px -2px #072a5c, -2px -1px #072a5c, -2px 0px #072a5c, -2px 1px #072a5c, -2px 2px #072a5c, -1px -2px #072a5c, -1px -1px #072a5c, -1px 0px #072a5c, -1px 1px #072a5c, -1px 2px #072a5c, 0px -2px #072a5c, 0px -1px #072a5c, 0px 0px #072a5c, 0px 1px #072a5c, 0px 2px #072a5c, 1px -2px #072a5c, 1px -1px #072a5c, 1px 0px #072a5c, 1px 1px #072a5c, 1px 2px #072a5c, 2px -2px #072a5c, 2px -1px #072a5c, 2px 0px #072a5c, 2px 1px #072a5c, 2px 2px #072a5c; }
#commonNav ul li a.gakkai {
  display: grid;
  align-content: center;
  font-weight: normal;
  color: #fee4cf;
  border-color: #c95d05;
  background-image: url(../../gakkai/img/top-publ.jpg);
  text-shadow: -2px -2px #4d2302, -2px -1px #4d2302, -2px 0px #4d2302, -2px 1px #4d2302, -2px 2px #4d2302, -1px -2px #4d2302, -1px -1px #4d2302, -1px 0px #4d2302, -1px 1px #4d2302, -1px 2px #4d2302, 0px -2px #4d2302, 0px -1px #4d2302, 0px 0px #4d2302, 0px 1px #4d2302, 0px 2px #4d2302, 1px -2px #4d2302, 1px -1px #4d2302, 1px 0px #4d2302, 1px 1px #4d2302, 1px 2px #4d2302, 2px -2px #4d2302, 2px -1px #4d2302, 2px 0px #4d2302, 2px 1px #4d2302, 2px 2px #4d2302; }
#commonNav ul li a span {
  position: absolute;
  z-index: -1;
  right: 0;
  top: 50%;
  height: 100%;
  overflow: hidden;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  display: block;
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s; }
  #commonNav ul li a span i {
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
    -webkit-transform: rotate(5deg);
    -ms-transform: rotate(5deg);
    transform: rotate(5deg);
    font-size: 4.16667rem;
    line-height: 1; }
#commonNav ul li a:hover span {
  padding-right: 10px; }
  #commonNav ul li a:hover span i {
    -webkit-transform: translateY(-10%) scale(0.66);
    -ms-transform: translateY(-10%) scale(0.66);
    transform: translateY(-10%) scale(0.66);
    -webkit-transform-origin: right;
    -ms-transform-origin: right;
    transform-origin: right; }

#footer {
  clear: both;
  padding: 30px 0 50px; }
  .gakkai #footer {
    background: #fee4cf; }
  .kenkyu #footer {
    background: #e5effd; }
  #footer .fixwidth {
    max-width: 940px; }
  #footer figure {
    margin: 0 0 19px;
    text-align: center; }
    #footer figure img {
      height: 60px;
      margin: 0 20px; }
  #footer address {
    clear: both;
    font-size: 50%;
    text-align: center; }

#fNav {
  margin-bottom: 30px; }
  #fNav > ul {
    text-align: center; }
    #fNav > ul > li {
      display: inline-block; }
      #fNav > ul > li:after {
        content: " / "; }
      #fNav > ul > li:last-child:after {
        content: ""; }
      #fNav > ul > li > a {
        font-size: 75%; }
      #fNav > ul > li ul {
        display: none; }
  #portalTop #fNav {
    display: none; }

#main .sitemap_data ul li a {
  display: block;
  line-height: 1.2;
  padding: 0.5em;
  text-decoration: none;
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
  border-top-width: 0;
  border-left-width: 3px;
  border-bottom-width: 1px;
  border-right-width: 0;
  border-color: #ccc;
  border-style: solid;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

#main .sitemap_data {
  overflow: hidden; }
  #main .sitemap_data ul {
    padding-left: 0; }
    #main .sitemap_data ul li {
      float: left;
      width: 100%; }
      #main .sitemap_data ul li:before {
        content: none; }
      .gakkai #main .sitemap_data ul li:hover > a {
        border-color: #8d4104; }
      .kenkyu #main .sitemap_data ul li:hover > a {
        border-color: #0c4699; }
      .gakkai #main .sitemap_data ul li a:hover {
        border-color: #c95d05; }
      .kenkyu #main .sitemap_data ul li a:hover {
        border-color: #1160d2; }
      #main .sitemap_data ul li a .short {
        display: none; }
      #main .sitemap_data ul li ul {
        padding-top: 18px;
        padding-left: 20px;
        margin-top: 0;
        overflow: hidden; }
        #main .sitemap_data ul li ul li {
          margin-top: 0;
          margin-bottom: 18px;
          position: relative;
          float: left;
          width: calc(50% - 9px); }
          #main .sitemap_data ul li ul li:nth-child(2n) {
            float: right;
            clear: right; }
          #main .sitemap_data ul li ul li:nth-child(2n-1) {
            clear: left; }
          #main .sitemap_data ul li ul li:before, #main .sitemap_data ul li ul li:after {
            content: "";
            display: block;
            background: #ccc;
            position: absolute;
            z-index: 1;
            -webkit-transition: background 0.05s, z-index 0.05s 0.05s;
            -o-transition: background 0.05s, z-index 0.05s 0.05s;
            transition: background 0.05s, z-index 0.05s 0.05s; }
          #main .sitemap_data ul li ul li:before {
            width: 2px;
            height: auto;
            position: absolute;
            top: -1000px;
            bottom: calc(100% - 0.6em - 0.5em);
            left: -9px; }
          #main .sitemap_data ul li ul li:after {
            width: 9px;
            height: 2px;
            position: absolute;
            top: calc(1.5em * 1.1 - 9px);
            left: -9px; }
          #main .sitemap_data ul li ul li:hover:before, #main .sitemap_data ul li ul li:hover:after {
            -webkit-transition: all 0.2s;
            -o-transition: all 0.2s;
            transition: all 0.2s;
            z-index: 1000; }
            .gakkai #main .sitemap_data ul li ul li:hover:before, .gakkai #main .sitemap_data ul li ul li:hover:after {
              background: #c95d05; }
            .kenkyu #main .sitemap_data ul li ul li:hover:before, .kenkyu #main .sitemap_data ul li ul li:hover:after {
              background: #1160d2; }
          #main .sitemap_data ul li ul li li,
          #main .sitemap_data ul li ul li li:nth-child(2n) {
            position: relative;
            float: none;
            width: 100%; }
        #main .sitemap_data ul li ul span {
          display: block;
          border: #ddd 1px solid;
          line-height: 1.2;
          padding: 0.5em;
          border-radius: 5px;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box; }
  #main .sitemap_data > ul > li {
    margin-top: 9px;
    margin-bottom: 9px; }
    #main .sitemap_data > ul > li:last-child {
      margin-bottom: 0; }

#main .sitemap_data .nositemap,
#main .sitemap_data i.def {
  display: none; }



#gNav .nonav,
#fNav .nonav,
#sNav .nonav,
#ffNav .nonav {
  display: none !important;
}



@media only screen and (max-width: 767px) {
  #main .sitemap_data {
    overflow: hidden; }
    #main .sitemap_data li ul li {
      float: none;
      width: 100%;
      clear: both; }
      #main .sitemap_data li ul li :nth-child(2n-1) {
        clear: both; }
      #main .sitemap_data li ul li ul li {
        float: none !important;
        width: 100%;
        position: relative; } }

@media only screen and (max-width: 639px) {
  #main .sitemap_data {
    overflow: hidden; }
  #main .sitemap_data li ul {
    padding-left: 19px; }
  #main .sitemap_data li ul li {
    float: none !important;
    width: 100%;
    position: relative; }
  #main .sitemap_data li ul li:before {
    left: -9px;
    bottom: calc(100% - 0.6em - 0.4em); }
  #main .sitemap_data li ul li:after {
    width: 9px;
    left: -9px; } }

#main .sitemap_data .headline {
  display: none; }

/*-------------------------------------------------------

state

:hover、:active、:focusなどの擬似要素や
.currentなどのページの状態によって部分的に変化を起こす際にここで設定

-------------------------------------------------------*/
.current {
  cursor: default; }

/*-------------------------------------------------------

cosmetic

その他、局所的に使用するスタイル
あるいは、汎用性の高いスタイル設定を記述

-------------------------------------------------------*/
.ouxs {
  display: inherit; }

.olxs {
  display: none; }

@media only screen and (max-width: 399px) {
  .ouxs {
    display: none; }
  .olxs {
    display: inherit; } }

.ouxs-s {
  display: inherit; }

.olxs-s {
  display: none; }

@media only screen and (min-width: 400px) and (max-width: 639px) {
  .ouxs-s {
    display: none; }
  .olxs-s {
    display: inherit; } }

.ous {
  display: inherit; }

.ols {
  display: none; }

@media only screen and (max-width: 639px) {
  .ous {
    display: none; }
  .ols {
    display: inherit; } }

.ous-m {
  display: inherit; }

.ols-m {
  display: none; }

@media only screen and (min-width: 640px) and (max-width: 767px) {
  .ous-m {
    display: none; }
  .ols-m {
    display: inherit; } }

.oum {
  display: inherit; }

.olm {
  display: none; }

@media only screen and (max-width: 767px) {
  .oum {
    display: none; }
  .olm {
    display: inherit; } }

.oum-l {
  display: inherit; }

.olm-l {
  display: none; }

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .oum-l {
    display: none; }
  .olm-l {
    display: inherit; } }

.oul {
  display: inherit; }

.oll {
  display: none; }

@media only screen and (max-width: 991px) {
  .oul {
    display: none; }
  .oll {
    display: inherit; } }

.oul-xl {
  display: inherit; }

.oll-xl {
  display: none; }

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .oul-xl {
    display: none; }
  .oll-xl {
    display: inherit; } }

.ouxl {
  display: inherit; }

.olxl {
  display: none; }

@media only screen and (min-width: 1199px) {
  .ouxl {
    display: none; }
  .olxl {
    display: inherit; } }

.dib {
  display: inline-block;
  font-size: inherit;
  color: inherit;
  font-weight: inherit; }

.displaynone {
  display: none; }

.wating {
  color: #f00;
  font-weight: bold; }

.ggmap,
.youtube {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
  margin-bottom: 30px; }
  .ggmap iframe,
  .ggmap object,
  .ggmap embed,
  .youtube iframe,
  .youtube object,
  .youtube embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.flex,
.flexbasic {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex; }
  .flex > *,
  .flexbasic > * {
    margin-top: 0; }
  .ua-safari .flex,
  .no-flexbox .flex, .ua-safari
  .flexbasic,
  .no-flexbox
  .flexbasic {
    display: block;
    overflow: hidden; }

.flex2x > * {
  width: 48%;
  width: calc(50% - 18px); }
  .flex2x > *:first-child, .flex2x > *:nth-child(2) {
    margin-top: 0 !important; }

.ua-safari .flex2x,
.no-flexbox .flex2x {
  overflow: hidden; }
  .ua-safari .flex2x > *,
  .no-flexbox .flex2x > * {
    float: left; }
    .ua-safari .flex2x > *:nth-child(2n),
    .no-flexbox .flex2x > *:nth-child(2n) {
      float: right; }

@media only screen and (max-width: 767px) {
  .flex2x {
    display: block; }
    .flex2x > * {
      width: 100%; }
      .flex2x > *:nth-child(2) {
        margin-top: 36px !important; } }

.jcsb {
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -ms-flex-pack: space-between; }

.jcar {
  -webkit-justify-content: space-around;
  -moz-justify-content: space-around;
  -ms-justify-content: space-around;
  justify-content: space-around;
  -ms-flex-pack: space-around; }

.jcc {
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -webkit-box-pack: center;
  justify-content: center;
  -ms-flex-pack: center; }

.aic {
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

.acsb {
  -webkit-align-content: space-between;
  -moz-align-content: space-between;
  -ms-align-content: space-between;
  -ms-flex-line-pack: justify;
  align-content: space-between; }

.fdcu {
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column; }

.fdrr {
  -webkit-flex-direction: row-reverse;
  -moz-flex-direction: row-reverse;
  -ms-flex-direction: row-reverse;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  flex-direction: row-reverse; }

.flwp, .flexbasic {
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.flexbasic {
  padding: 0; }
  #mainVisual .flexbasic > *,
  #main .flexbasic > *,
  #footer .flexbasic > * {
    float: left;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    #mainVisual .flexbasic > * > *:before,
    #main .flexbasic > * > *:before,
    #footer .flexbasic > * > *:before {
      content: none; }
  #mainVisual .flexbasic > .leftend,
  #main .flexbasic > .leftend,
  #footer .flexbasic > .leftend {
    clear: left; }
  #mainVisual .flexbasic > .rightend,
  #main .flexbasic > .rightend,
  #footer .flexbasic > .rightend {
    margin-right: 0 !important; }

.accordion dt {
  cursor: pointer;
  position: relative; }
  .accordion dt:before {
    position: absolute;
    content: "-";
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 18px;
    width: 1.5em;
    height: 1.5em;
    font-size: 1rem;
    background: #fff;
    border: #666 1px solid;
    text-align: center;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    -webkit-box-pack: center;
    justify-content: center;
    -ms-flex-pack: center;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
  .accordion dt.noactive:before {
    content: "+"; }

.accordion dd * {
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s; }

.accordion dd.noactive {
  margin-top: 0; }
  .accordion dd.noactive * {
    border-top: 0 !important;
    border-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
    overflow: hidden !important; }
    .ua-trident .accordion dd.noactive *,
    .ua-edge .accordion dd.noactive *,
    .ua-gecko .accordion dd.noactive * {
      font-size: 0 !important; }

.clearfix {
  zoom: 1; }
  .clearfix:before, .clearfix:after {
    content: "";
    display: table; }
  .clearfix:after {
    clear: both; }

.tablebreaker.breaking,
.tablebreaker.breaking tbody, .tablebreaker.breaking tr, .tablebreaker.breaking th, .tablebreaker.breaking td, .tablebreaker.breaking caption {
  display: block;
  width: 100%;
  border: none;
  padding: 0;
  background: none;
  font-size: 100%;
  line-height: 1.5; }

.tablebreaker.breaking {
  margin-bottom: 18px; }
  .tablebreaker.breaking thead {
    display: none; }
  .tablebreaker.breaking tr {
    margin-bottom: 18px; }
    .tablebreaker.breaking tr:last-child {
      margin-bottom: 0; }
  .tablebreaker.breaking th {
    border-bottom: #333 1px solid;
    margin-bottom: 9px; }
  .tablebreaker.breaking td {
    font-size: 94%; }
  .tablebreaker.breaking caption {
    font-size: 83.3%; }

.seminars_day {
  width: 16%; }

#navbox {
  display: none; }

.btnsHoverList > *,
.btnsHover {
  cursor: pointer !important; }

.px8 {
  font-size: 0.66667rem; }

.px9 {
  font-size: 0.75rem; }

.px10 {
  font-size: 0.83333rem; }

.px11 {
  font-size: 0.91667rem; }


.px12 {
  font-size: 1rem; }

.px13 {
  font-size: 1.08333rem; }

.px14 {
  font-size: 1.16667rem; }

.px15 {
  font-size: 1.25rem; }

.px16 {
  font-size: 1.33333rem; }

.px17 {
  font-size: 1.41667rem; }

.px18 {
  font-size: 1.5rem; }

.px19 {
  font-size: 1.58333rem; }

.px20 {
  font-size: 1.66667rem; }

.px21 {
  font-size: 1.75rem; }

.px22 {
  font-size: 1.83333rem; }

.px23 {
  font-size: 1.91667rem; }

.px24 {
  font-size: 2rem; }

.mincho {
  font-family: "Sawarabi Mincho", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important; }

.red {
  color: red; }

strong {
  font-weight: bold; }

.clear {
  clear: both; }

.txtAlignC,
.allTxtAlignC th,
.allTxtAlignC td {
  text-align: center; }

.txtAlignL {
  text-align: left; }

.txtAlignR {
  text-align: right; }

.vAlignMiddle {
  vertical-align: middle;
  margin: 0 5px; }

.linklist {
  margin-bottom: 18px;
  padding-left: 10px; }
  .linklist li {
    padding-left: 30px;
    margin-top: 0;
    position: relative;
    line-height: 1.5; }
    .linklist li:before, .linklist li:after {
      position: absolute;
      content: "";
      width: 0;
      height: 0;
      top: 0.75em;
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%);
      border: transparent 5px solid;
      border-right: none;
      border-left: transparent 10px solid;
      -webkit-transition: all 0.2s;
      -o-transition: all 0.2s;
      transition: all 0.2s; }
    .linklist li:before {
      left: 0px; }
    .linklist li:after {
      left: 10px; }
    .linklist li:hover:before {
      left: 5px; }
    .linklist li:hover:after {
      left: 15px; }
    .gakkai .linklist li:before {
      border-left-color: #fb9e53; }
    .gakkai .linklist li:after {
      border-left-color: #fee4cf; }
    .gakkai .linklist li a {
      color: #c95d05; }
    .kenkyu .linklist li:before {
      border-left-color: #6fa5f3; }
    .kenkyu .linklist li:after {
      border-left-color: #e5effd; }
    .kenkyu .linklist li a {
      color: #1160d2; }
    .linklist li a i {
      margin-left: 5px; }
    .linklist li a span {
      color: inherit; }
  #main td .linklist {
    margin: 0; }
    #main td .linklist li {
      padding-left: 26px;
      font-size: 0.91667rem; }
      #main td .linklist li a {
        font-size: 1rem; }
        #main td .linklist li a .fa {
          display: inline; }
      #main td .linklist li:before, #main td .linklist li:after {
        border-width: 4.5px;
        border-left-width: 9px;
        border-right: none; }
      #main td .linklist li:before {
        left: 0px; }
      #main td .linklist li:after {
        left: 9px; }
      #main td .linklist li:hover:before {
        left: 3px; }
      #main td .linklist li:hover:after {
        left: 12px; }

.floatContentsR {
  float: right;
  margin-bottom: 18px;
  margin-left: 9px; }

.floatContentsL {
  float: left;
  margin-bottom: 18px;
  margin-right: 9px; }

.floatContentsR,
.floatContentsL {
  max-width: 49%;
  max-width: calc(50% - 10px); }
  .floatContentsR img,
  .floatContentsL img {
    width: 100%; }

@media only screen and (max-width: 991px) {
  .floatContentsR,
  .floatContentsL {
    width: 200px;
    max-width: 49%;
    max-width: calc(50% - 5px); } }

@media only screen and (max-width: 639px) {
  .floatContentsR,
  .floatContentsL {
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 0;
    max-width: 33.3%; }
    .floatContentsR img,
    .floatContentsL img {
      vertical-align: bottom; } }

@media only screen and (max-width: 399px) {
  .floatContentsR,
  .floatContentsL {
    width: 100%;
    max-width: 100%;
    text-align: center;
    float: none; }
    .floatContentsR img,
    .floatContentsL img {
      width: 50%; } }


@media only screen and (max-width: 399px) {
  .floatContentsR,
  .floatContentsL {
    width: 100%;
    max-width: 100%;
    text-align: center;
    float: none; }
    .floatContentsR img,
    .floatContentsL img {
      width: 50%; } }

.PNcontroller {
  margin-top: 0; }

ol.zengokakko {
  counter-reset: li;
  padding-left: 0; }
  ol.zengokakko li:before {
    counter-increment: li;
    content: "（" counter(li, decimal) "）"; }
  ol.zengokakko > li {
    list-style: none;
    position: relative;
    padding-left: 2.5em; }
    ol.zengokakko > li:before {
      position: absolute;
      left: 0;
      color: #333 !important; }

ul.comelist {
  padding-left: 0; }
  ul.comelist > li {
    list-style: none;
    position: relative;
    padding-left: 1.5em; }
    ul.comelist > li:before {
      position: absolute;
      left: 0;
      color: #333 !important; }
  ul.comelist > li {
    margin-top: 0;
    font-size: 0.83333rem; }
    ul.comelist > li:before {
      content: "※"; }

.tabledl {
  overflow: hidden; }
  .tabledl dt {
    float: left; }
  .tabledl dd {
    margin-bottom: 0.5em; }
  .tabledl.tdl1em dt {
    width: "1em"; }
  .tabledl.tdl1em dd {
    margin-left: "1.5em"; }
  .tabledl.tdl2em dt {
    width: "2em"; }
  .tabledl.tdl2em dd {
    margin-left: "2.5em"; }
  .tabledl.tdl3em dt {
    width: "3em"; }
  .tabledl.tdl3em dd {
    margin-left: "3.5em"; }
  .tabledl.tdl4em dt {
    width: "4em"; }
  .tabledl.tdl4em dd {
    margin-left: "4.5em"; }
  .tabledl.tdl5em dt {
    width: "5em"; }
  .tabledl.tdl5em dd {
    margin-left: "5.5em"; }

em {
  color: #c00; }

.enpage em {
  color: currentColor;
  font-style: italic; }

.fa-file-pdf {
  color: #f21d1d; }

.fa-file-word {
  color: #121b83; }

.fa-file-excel {
  color: #0e9a2f; }

.fa-file-powerpoint {
  color: #ff9300; }

a.btn {
  display: block;
  border: #aaa 1px solid;
  text-decoration: none;
  font-size: 50%;
  padding: 0 10px;
  min-width: 60px;
  text-align: center;
  border-radius: 3px;
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s; }
  .gakkai a.btn {
    color: #c95d05;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+0,fbede0+50,f2caa1+100 */
    background: #ffffff;
    /* Old browsers */
    background: -moz-linear-gradient(top, #ffffff 0%, #fbede0 50%, #f2caa1 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(top, #ffffff 0%, #fbede0 50%, #f2caa1 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(50%, #fbede0), to(#f2caa1));
    background: -o-linear-gradient(top, #ffffff 0%, #fbede0 50%, #f2caa1 100%);
    background: linear-gradient(to bottom, #ffffff 0%, #fbede0 50%, #f2caa1 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#fb9e53',GradientType=0 );
    /* IE6-9 */
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s; }
  .kenkyu a.btn {
    color: #1160d2;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+0,fbede0+50,f2caa1+100 */
    background: #ffffff;
    /* Old browsers */
    background: -moz-linear-gradient(top, #ffffff 0%, #e0e1fb 50%, #a1a7f2 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(top, #ffffff 0%, #e0e1fb 50%, #a1a7f2 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(50%, #e0e1fb), to(#a1a7f2));
    background: -o-linear-gradient(top, #ffffff 0%, #e0e1fb 50%, #a1a7f2 100%);
    background: linear-gradient(to bottom, #ffffff 0%, #e0e1fb 50%, #a1a7f2 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#6fa5f3',GradientType=0 );
    /* IE6-9 */
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s; }
  h5 > a.btn {
    position: absolute;
    top: 50%;
    right: 9px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%); }

a.btn:hover {
  opacity: 0.6; }

a.btn.icon {
  padding: 0 10px 0 25px;
  position: relative; }

a.btn.icon:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 10px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 10px;
  height: 10px;
  border-radius: 3px; }

.gakkai a.btn.icon:before {
  background: #c95d05; }

.kenkyu a.btn.icon:before {
  background: #1160d2; }

a.btn.icon:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 13px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border: transparent 3px solid;
  border-right: none;
  border-left-color: #fff;
  border-left-width: 5px; }

.btn a {
  display: inline-block;
  border: #1160d2 1px solid;
  padding: 10px 0;
  width: 33.3%;
  font-size: 110%;
  color: #1160d2;
  text-decoration: none;
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
  opacity: 1;
  cursor: pointer;
  position: relative; }

.btn.medium a {
  width: 50%; }

.btn.large a {
  width: 75%; }

.btn a:before,
.btn a:after {
  content: "";
  width: 18px;
  height: 4px;
  background: #1160d2;
  position: absolute;
  top: 50%;
  right: 10%;
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s; }

.btn a:before {
  -webkit-transform: translateY(-50%) translateY(2px) rotate(45deg);
  -ms-transform: translateY(-50%) translateY(2px) rotate(45deg);
  transform: translateY(-50%) translateY(2px) rotate(45deg);
  -webkit-transform-origin: top right;
  -ms-transform-origin: top right;
  transform-origin: top right; }

.btn a:after {
  -webkit-transform: translateY(-50%) translateY(-2px) rotate(-45deg);
  -ms-transform: translateY(-50%) translateY(-2px) rotate(-45deg);
  transform: translateY(-50%) translateY(-2px) rotate(-45deg);
  -webkit-transform-origin: bottom right;
  -ms-transform-origin: bottom right;
  transform-origin: bottom right; }

.btn a:hover {
  opacity: 0.6; }

.btn a:hover:before,
.btn a:hover:after {
  right: 8%; }

@media only screen and (max-width: 991px) {
  #main .btn a {
    width: 50%; } }

@media only screen and (max-width: 640px) {
  #main .btn a,
  #main .btn.large a {
    width: 100%;
    font-size: 100%; } }

@media only screen and (max-width: 639px) {
  #main .btn a {
    font-size: 94%;
    padding: 10px 20px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
  #main .btn a:before,
  #main .btn a:after {
    right: 10px;
    width: 10px;
    height: 3px; }
  #main .btn a:before {
    -webkit-transform: translateY(-50%) translateY(1px) rotate(60deg);
    -ms-transform: translateY(-50%) translateY(1px) rotate(60deg);
    transform: translateY(-50%) translateY(1px) rotate(60deg);
    -webkit-transform-origin: top right;
    -ms-transform-origin: top right;
    transform-origin: top right; }
  #main .btn a:after {
    -webkit-transform: translateY(-50%) translateY(-1px) rotate(-60deg);
    -ms-transform: translateY(-50%) translateY(-1px) rotate(-60deg);
    transform: translateY(-50%) translateY(-1px) rotate(-60deg);
    -webkit-transform-origin: bottom right;
    -ms-transform-origin: bottom right;
    transform-origin: bottom right; }
  #main .btn a:hover:before,
  #main .btn a:hover:after {
    right: 5px; } }

.icon .fa,
.icon .far {
  margin-left: 5px;
  font-style: normal !important; }

.hardNews {
  font-size: 100%;
  padding: 1em 0; }
  .gakkai .hardNews {
    background: #8d4104; }
  .kenkyu .hardNews {
    background: #0c4699; }
  .hardNews .hardNews_main {
    overflow: hidden;
    padding-right: 50px; }
  .hardNews .hardNews_title {
    float: left;
    width: 180px; }
    @media only screen and (max-width: 639px) {
      .hardNews .hardNews_title {
        float: none;
        width: 180px;
        margin-bottom: 0.8em; } }
  .hardNews h2 {
    font-size: 100%;
    font-weight: bold;
    background: #fff;
    border-radius: 30px;
    padding: 0.3em;
    text-align: center; }
    .gakkai .hardNews h2 {
      color: #4d2302; }
    .kenkyu .hardNews h2 {
      color: #072a5c; }
  .hardNews .hardNews_txt {
    margin-left: calc(180px + 1em); }
    @media only screen and (max-width: 639px) {
      .hardNews .hardNews_txt {
        margin-left: 0; } }
  .hardNews .hardNews_list {
    list-style: none; }
  .hardNews a {
    color: #fff; }
  .hardNews li {
    font-size: 100%;
    line-height: 1.5;
    position: relative;
    padding: 0em 0.3em 0.3em 1.3em; }
    .hardNews li:before {
      position: absolute;
      content: '';
      display: block;
      top: 0.5em;
      left: 0;
      width: 6px;
      height: 6px;
      border-style: solid;
      border-width: 0 3px 3px 0;
      -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
      transform: rotate(-45deg); }
      .gakkai .hardNews li:before {
        border-right-color: #fb9e53;
        border-bottom-color: #fb9e53; }
      .kenkyu .hardNews li:before {
        border-right-color: #6fa5f3;
        border-bottom-color: #6fa5f3; }

/*slick.css*/
.slick-slider {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

.slick-list, .slick-slider {
  position: relative;
  display: block; }

.slick-list {
  overflow: hidden;
  margin: 0;
  padding: 0; }

.slick-list:focus {
  outline: 0; }

.slick-list.dragging {
  cursor: pointer;
  cursor: hand; }

.slick-slider .slick-list, .slick-slider .slick-track {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block; }

.slick-track:after, .slick-track:before {
  display: table;
  content: ''; }

.slick-track:after {
  clear: both; }

.slick-loading .slick-track {
  visibility: hidden; }

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px; }

[dir='rtl'] .slick-slide {
  float: right; }

.slick-slide img {
  display: inline; }

.slick-slide img.slick-loading {
  display: none; }

.slick-slide.dragging img {
  pointer-events: none; }

.slick-initialized .slick-slide {
  display: block; }

.slick-loading .slick-slide {
  visibility: hidden; }

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

#slick li {
  text-align: center; }

#slick li img {
  vertical-align: bottom; }

#slick li.slick-slide,
#slickmobile {
  background: #2D77CE; }

#slickmobile li img {
  vertical-align: bottom; }

/*slick-theme.css*/
.slick-loading .slick-list {
  background: #fff url("ajax-loader.gif") center center no-repeat; }

/* Icons */
@font-face {
  font-family: 'slick';
  font-weight: normal;
  font-style: normal;
  src: url("fonts/slick.eot");
  src: url("fonts/slick.eot?#iefix") format("embedded-opentype"), url("fonts/slick.woff") format("woff"), url("fonts/slick.ttf") format("truetype"), url("fonts/slick.svg#slick") format("svg"); }

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  z-index: 100;
  top: 0;
  cursor: pointer;
  font-size: 1%;
  width: 50px;
  height: 100%;
  opacity: 0.6;
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s; }

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  opacity: 1; }

.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1; }

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: .25; }

.slick-prev:before,
.slick-next:before,
.slick-prev:after,
.slick-next:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 10px;
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
  text-decoration: none;
  display: block;
  width: 8px;
  height: 30px;
  background: #fff; }

.slick-next:before,
.slick-next:after {
  left: auto;
  right: 10px; }

.slick-prev {
  left: 0; }

[dir='rtl'] .slick-prev {
  right: 0;
  left: auto; }

.slick-prev:before,
[dir='rtl'] .slick-prev:after {
  -webkit-transform: translateY(0) rotate(-45deg);
  -ms-transform: translateY(0) rotate(-45deg);
  transform: translateY(0) rotate(-45deg);
  -webkit-transform-origin: top left;
  -ms-transform-origin: top left;
  transform-origin: top left; }

.slick-prev:after,
[dir='rtl'] .slick-prev:before {
  -webkit-transform: translateY(-100%) rotate(45deg);
  -ms-transform: translateY(-100%) rotate(45deg);
  transform: translateY(-100%) rotate(45deg);
  -webkit-transform-origin: bottom left;
  -ms-transform-origin: bottom left;
  transform-origin: bottom left; }

.slick-next {
  right: 0; }

[dir='rtl'] .slick-next {
  right: auto;
  left: 0; }

.slick-next:before,
[dir='rtl'] .slick-next:after {
  -webkit-transform: translateY(0) rotate(45deg);
  -ms-transform: translateY(0) rotate(45deg);
  transform: translateY(0) rotate(45deg);
  -webkit-transform-origin: top right;
  -ms-transform-origin: top right;
  transform-origin: top right; }

.slick-next:after,
[dir='rtl'] .slick-next:before {
  -webkit-transform: translateY(-100%) rotate(-45deg);
  -ms-transform: translateY(-100%) rotate(-45deg);
  transform: translateY(-100%) rotate(-45deg);
  -webkit-transform-origin: bottom right;
  -ms-transform-origin: bottom right;
  transform-origin: bottom right; }

/* Dots */
.slick-dotted.slick-slider {
  /*    margin-bottom: 30px;*/ }

.slick-dots {
  background: #20518C;
  /*    position: absolute;*/
  /*    bottom: 0px;*/
  display: block;
  /*    width: 100%;*/
  width: auto;
  padding: 0;
  margin: 0 auto;
  overflow: hidden;
  list-style: none;
  text-align: center;
  padding: 10px 0; }

.slick-dots li {
  position: relative;
  display: inline-block;
  width: 14px;
  height: 14px;
  margin: 0 8px 0;
  padding: 0;
  overflow: hidden;
  cursor: pointer; }

.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 100%;
  height: 100%;
  padding: 0;
  margin: 0;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent; }

.slick-dots li button:hover,
.slick-dots li button:focus {
  outline: none; }

.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
  opacity: 1; }

.slick-dots li button:before {
  text-align: center;
  font-family: 'slick';
  font-size: 14px;
  line-height: 15px;
  position: absolute;
  top: 0;
  left: 0;
  width: 14px;
  height: 14px;
  content: '•';
  text-align: center;
  /*    opacity: .25;*/
  color: #fff;
  opacity: 0.6;
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.slick-dots li.slick-active button:before {
  opacity: 1; }

/* Foundation v2.1.4 http://foundation.zurb.com */
/* Artfully masterminded by ZURB  */
/* -------------------------------------------------- 
   Table of Contents
-----------------------------------------------------
:: Shared Styles
:: Page Name 1
:: Page Name 2
*/
/* -----------------------------------------
   Shared Styles
----------------------------------------- */
/* Mobile */
#main #article table.scroll,
#main #article table.responsive {
  margin-bottom: 0; }

#main #article .pinned {
  position: absolute;
  left: 0;
  top: 0;
  background: #fff;
  width: 17%;
  overflow: hidden;
  /*		overflow-x: scroll;*/
  border-right: 1px solid #ccc;
  /*		border-left: 1px solid #ccc;*/ }

#main #article .pinned table {
  border-right: none;
  /*		border-left: none;*/
  width: 100%; }

#main #article .pinned table th, .pinned table td {
  white-space: nowrap; }

#main #article .pinned td:last-child {
  border-bottom: 0; }

#main #article div.table-wrapper {
  position: relative;
  margin-bottom: 20px;
  overflow: hidden;
  border-right: 1px solid #ccc; }

#main #article div.table-wrapper div.scrollable {
  margin-left: 17%; }

#main #article div.table-wrapper div.scrollable {
  overflow: scroll;
  overflow-y: hidden; }

#main #article table.responsive td, table.responsive th {
  /*		position: relative;*/
  white-space: nowrap;
  overflow: hidden; }

#main #article div.scrollable table.responsive th:first-child,
#main #article div.scrollable table.responsive td:first-child,
#main #article div.scrollable table.scroll th:first-child,
#main #article div.scrollable table.scroll td:first-child {
  display: none; }

#main #article .pinned table.responsive th:first-child,
#main #article .pinned table.responsive td:first-child,
#main #article .pinned table.scroll th:first-child,
#main #article .pinned table.scroll td:first-child {
  display: table-cell; }

#main #article table.markettable .dummy {
  /*
	padding: 0;
	display: none !important;
*/ }

.intro {
	
}

figure.info{
	float: right;
	margin: 0 30px 15px 10px;
	width: 30%;
	
}

@media only screen and (max-width: 639px) {
  figure.info {
	width: 100%;
    max-width: 100%;
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 0;
	float: none; 
     }
    .info img,
    .info img {
      vertical-align: bottom; } }

@media only screen and (max-width: 399px) {
  figure.info {
    width: 100%;
    max-width: 100%;
    text-align: center;
    float: none; }
    .info img,
    .info img {
      width: 50%; } }

@media only screen and (max-width: 399px){
 diV.infoimage img {
    width: 100%;
	}}
@media only screen and (max-width: 850px){
 diV.infoimage.wide img {
    width: 100%;
	}}

div.visual{
	margin-bottom: 36px;
	
}


div.infogallery{
	margin-bottom: 5px;
	text-align: center;
	
}
	div.infogallery p  {
   margin: 0 2px 36px 2px;
	}
div.infogallery.p-bottom1em p  {
	margin-bottom:18px;
	
}


	div.infogallery img  {
   margin:2px;
		/*width: 100%;*/
	}


div.infoimage p.image, p.caption {
   text-align: center; 
   margin: 5px;
}
p.caption {
   font-size: 80%; 
 }
p.caption-small {
	font-size: 60%; 
}
div.infoimage {
  margin: 5px 10px;
  display: inline-block;
	vertical-align: top;
  /*float: left; */
}


span.caution{
	color: red;
}


.info_table table {
  border-collapse: collapse!important;    /* セル間の隙間をなくす（最重要） */
  border-spacing: 0;            /* 念のための保険 */
  table-layout: auto;           /* 既定。内容に応じて列幅を決める */
}
.info_table table, .info_table table tbody th,.info_table table tbody td{
	border:none;
	
}

.info_table th,
.info_table td {
  padding: 0;                   /* デフォルトの内側余白を排除 */
  border: none;
  background: none !important;
  vertical-align: top;          /* 行の高さがズレにくい */
  text-align: left;             /* th の中央寄せを解除して自然に */
  font-weight: normal;          /* 太字だと幅が少し広がるため */
}
.info_table td {
  vertical-align: middle;          /* 行の高さがズレにくい */
}


/* “ラベル側(th)だけ極力詰めたい”場合のオプション */
.info_table th {
  white-space: nowrap;          /* 折返しで高さが伸びるのを回避 */
  width: 1%;                    /* 可能なら最小幅に寄せるヒント */
  padding-right: .25em;         /* 文字と値の間にごく小さな間 */
}

.info_table p{
	margin-top: 0.5em;
}
	