@charset "UTF-8";
html, body {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-weight: normal;
  font-style: inherit;
  font-family: inherit;
  font-size: 1em; }

#header div, #header span, #header object, #header iframe, #header h1, #header h2, #header h3, #header h4, #header h5, #header h6, #header p, #header blockquote, #header pre, #header abbr, #header address, #header cite, #header code, #header del, #header dfn, #header em, #header img, #header ins, #header kbd, #header q, #header samp, #header small, #header strong, #header sub, #header sup, #header var, #header b, #header i, #header dl, #header dt, #header dd, #header ol, #header ul, #header li, #header fieldset, #header form, #header label, #header legend, #header table, #header caption, #header tbody, #header tfoot, #header thead, #header tr, #header th, #header td, #header article, #header aside, #header canvas, #header details, #header figcaption, #header figure, #header footer, #header header, #header hgroup, #header menu, #header nav, #header section, #header summary, #header time, #header mark, #header audio, #header video,
nav div,
nav span,
nav object,
nav iframe,
nav h1,
nav h2,
nav h3,
nav h4,
nav h5,
nav h6,
nav p,
nav blockquote,
nav pre,
nav abbr,
nav address,
nav cite,
nav code,
nav del,
nav dfn,
nav em,
nav img,
nav ins,
nav kbd,
nav q,
nav samp,
nav small,
nav strong,
nav sub,
nav sup,
nav var,
nav b,
nav i,
nav dl,
nav dt,
nav dd,
nav ol,
nav ul,
nav li,
nav fieldset,
nav form,
nav label,
nav legend,
nav table,
nav caption,
nav tbody,
nav tfoot,
nav thead,
nav tr,
nav th,
nav td,
nav article,
nav aside,
nav canvas,
nav details,
nav figcaption,
nav figure,
nav footer,
nav header,
nav hgroup,
nav menu,
nav nav,
nav section,
nav summary,
nav time,
nav mark,
nav audio,
nav video,
#breadCrumbs div,
#breadCrumbs span,
#breadCrumbs object,
#breadCrumbs iframe,
#breadCrumbs h1,
#breadCrumbs h2,
#breadCrumbs h3,
#breadCrumbs h4,
#breadCrumbs h5,
#breadCrumbs h6,
#breadCrumbs p,
#breadCrumbs blockquote,
#breadCrumbs pre,
#breadCrumbs abbr,
#breadCrumbs address,
#breadCrumbs cite,
#breadCrumbs code,
#breadCrumbs del,
#breadCrumbs dfn,
#breadCrumbs em,
#breadCrumbs img,
#breadCrumbs ins,
#breadCrumbs kbd,
#breadCrumbs q,
#breadCrumbs samp,
#breadCrumbs small,
#breadCrumbs strong,
#breadCrumbs sub,
#breadCrumbs sup,
#breadCrumbs var,
#breadCrumbs b,
#breadCrumbs i,
#breadCrumbs dl,
#breadCrumbs dt,
#breadCrumbs dd,
#breadCrumbs ol,
#breadCrumbs ul,
#breadCrumbs li,
#breadCrumbs fieldset,
#breadCrumbs form,
#breadCrumbs label,
#breadCrumbs legend,
#breadCrumbs table,
#breadCrumbs caption,
#breadCrumbs tbody,
#breadCrumbs tfoot,
#breadCrumbs thead,
#breadCrumbs tr,
#breadCrumbs th,
#breadCrumbs td,
#breadCrumbs article,
#breadCrumbs aside,
#breadCrumbs canvas,
#breadCrumbs details,
#breadCrumbs figcaption,
#breadCrumbs figure,
#breadCrumbs footer,
#breadCrumbs header,
#breadCrumbs hgroup,
#breadCrumbs menu,
#breadCrumbs nav,
#breadCrumbs section,
#breadCrumbs summary,
#breadCrumbs time,
#breadCrumbs mark,
#breadCrumbs audio,
#breadCrumbs video,
#btnList div,
#btnList span,
#btnList object,
#btnList iframe,
#btnList h1,
#btnList h2,
#btnList h3,
#btnList h4,
#btnList h5,
#btnList h6,
#btnList p,
#btnList blockquote,
#btnList pre,
#btnList abbr,
#btnList address,
#btnList cite,
#btnList code,
#btnList del,
#btnList dfn,
#btnList em,
#btnList img,
#btnList ins,
#btnList kbd,
#btnList q,
#btnList samp,
#btnList small,
#btnList strong,
#btnList sub,
#btnList sup,
#btnList var,
#btnList b,
#btnList i,
#btnList dl,
#btnList dt,
#btnList dd,
#btnList ol,
#btnList ul,
#btnList li,
#btnList fieldset,
#btnList form,
#btnList label,
#btnList legend,
#btnList table,
#btnList caption,
#btnList tbody,
#btnList tfoot,
#btnList thead,
#btnList tr,
#btnList th,
#btnList td,
#btnList article,
#btnList aside,
#btnList canvas,
#btnList details,
#btnList figcaption,
#btnList figure,
#btnList footer,
#btnList header,
#btnList hgroup,
#btnList menu,
#btnList nav,
#btnList section,
#btnList summary,
#btnList time,
#btnList mark,
#btnList audio,
#btnList video,
#contentHeader div,
#contentHeader span,
#contentHeader object,
#contentHeader iframe,
#contentHeader h1,
#contentHeader h2,
#contentHeader h3,
#contentHeader h4,
#contentHeader h5,
#contentHeader h6,
#contentHeader p,
#contentHeader blockquote,
#contentHeader pre,
#contentHeader abbr,
#contentHeader address,
#contentHeader cite,
#contentHeader code,
#contentHeader del,
#contentHeader dfn,
#contentHeader em,
#contentHeader img,
#contentHeader ins,
#contentHeader kbd,
#contentHeader q,
#contentHeader samp,
#contentHeader small,
#contentHeader strong,
#contentHeader sub,
#contentHeader sup,
#contentHeader var,
#contentHeader b,
#contentHeader i,
#contentHeader dl,
#contentHeader dt,
#contentHeader dd,
#contentHeader ol,
#contentHeader ul,
#contentHeader li,
#contentHeader fieldset,
#contentHeader form,
#contentHeader label,
#contentHeader legend,
#contentHeader table,
#contentHeader caption,
#contentHeader tbody,
#contentHeader tfoot,
#contentHeader thead,
#contentHeader tr,
#contentHeader th,
#contentHeader td,
#contentHeader article,
#contentHeader aside,
#contentHeader canvas,
#contentHeader details,
#contentHeader figcaption,
#contentHeader figure,
#contentHeader footer,
#contentHeader header,
#contentHeader hgroup,
#contentHeader menu,
#contentHeader nav,
#contentHeader section,
#contentHeader summary,
#contentHeader time,
#contentHeader mark,
#contentHeader audio,
#contentHeader video,
#contentInfo div,
#contentInfo span,
#contentInfo object,
#contentInfo iframe,
#contentInfo h1,
#contentInfo h2,
#contentInfo h3,
#contentInfo h4,
#contentInfo h5,
#contentInfo h6,
#contentInfo p,
#contentInfo blockquote,
#contentInfo pre,
#contentInfo abbr,
#contentInfo address,
#contentInfo cite,
#contentInfo code,
#contentInfo del,
#contentInfo dfn,
#contentInfo em,
#contentInfo img,
#contentInfo ins,
#contentInfo kbd,
#contentInfo q,
#contentInfo samp,
#contentInfo small,
#contentInfo strong,
#contentInfo sub,
#contentInfo sup,
#contentInfo var,
#contentInfo b,
#contentInfo i,
#contentInfo dl,
#contentInfo dt,
#contentInfo dd,
#contentInfo ol,
#contentInfo ul,
#contentInfo li,
#contentInfo fieldset,
#contentInfo form,
#contentInfo label,
#contentInfo legend,
#contentInfo table,
#contentInfo caption,
#contentInfo tbody,
#contentInfo tfoot,
#contentInfo thead,
#contentInfo tr,
#contentInfo th,
#contentInfo td,
#contentInfo article,
#contentInfo aside,
#contentInfo canvas,
#contentInfo details,
#contentInfo figcaption,
#contentInfo figure,
#contentInfo footer,
#contentInfo header,
#contentInfo hgroup,
#contentInfo menu,
#contentInfo nav,
#contentInfo section,
#contentInfo summary,
#contentInfo time,
#contentInfo mark,
#contentInfo audio,
#contentInfo video,
#pageTop div,
#pageTop span,
#pageTop object,
#pageTop iframe,
#pageTop h1,
#pageTop h2,
#pageTop h3,
#pageTop h4,
#pageTop h5,
#pageTop h6,
#pageTop p,
#pageTop blockquote,
#pageTop pre,
#pageTop abbr,
#pageTop address,
#pageTop cite,
#pageTop code,
#pageTop del,
#pageTop dfn,
#pageTop em,
#pageTop img,
#pageTop ins,
#pageTop kbd,
#pageTop q,
#pageTop samp,
#pageTop small,
#pageTop strong,
#pageTop sub,
#pageTop sup,
#pageTop var,
#pageTop b,
#pageTop i,
#pageTop dl,
#pageTop dt,
#pageTop dd,
#pageTop ol,
#pageTop ul,
#pageTop li,
#pageTop fieldset,
#pageTop form,
#pageTop label,
#pageTop legend,
#pageTop table,
#pageTop caption,
#pageTop tbody,
#pageTop tfoot,
#pageTop thead,
#pageTop tr,
#pageTop th,
#pageTop td,
#pageTop article,
#pageTop aside,
#pageTop canvas,
#pageTop details,
#pageTop figcaption,
#pageTop figure,
#pageTop footer,
#pageTop header,
#pageTop hgroup,
#pageTop menu,
#pageTop nav,
#pageTop section,
#pageTop summary,
#pageTop time,
#pageTop mark,
#pageTop audio,
#pageTop video,
aside div,
aside span,
aside object,
aside iframe,
aside h1,
aside h2,
aside h3,
aside h4,
aside h5,
aside h6,
aside p,
aside blockquote,
aside pre,
aside abbr,
aside address,
aside cite,
aside code,
aside del,
aside dfn,
aside em,
aside img,
aside ins,
aside kbd,
aside q,
aside samp,
aside small,
aside strong,
aside sub,
aside sup,
aside var,
aside b,
aside i,
aside dl,
aside dt,
aside dd,
aside ol,
aside ul,
aside li,
aside fieldset,
aside form,
aside label,
aside legend,
aside table,
aside caption,
aside tbody,
aside tfoot,
aside thead,
aside tr,
aside th,
aside td,
aside article,
aside aside,
aside canvas,
aside details,
aside figcaption,
aside figure,
aside footer,
aside header,
aside hgroup,
aside menu,
aside nav,
aside section,
aside summary,
aside time,
aside mark,
aside audio,
aside video,
#footer div,
#footer span,
#footer object,
#footer iframe,
#footer h1,
#footer h2,
#footer h3,
#footer h4,
#footer h5,
#footer h6,
#footer p,
#footer blockquote,
#footer pre,
#footer abbr,
#footer address,
#footer cite,
#footer code,
#footer del,
#footer dfn,
#footer em,
#footer img,
#footer ins,
#footer kbd,
#footer q,
#footer samp,
#footer small,
#footer strong,
#footer sub,
#footer sup,
#footer var,
#footer b,
#footer i,
#footer dl,
#footer dt,
#footer dd,
#footer ol,
#footer ul,
#footer li,
#footer fieldset,
#footer form,
#footer label,
#footer legend,
#footer table,
#footer caption,
#footer tbody,
#footer tfoot,
#footer thead,
#footer tr,
#footer th,
#footer td,
#footer article,
#footer aside,
#footer canvas,
#footer details,
#footer figcaption,
#footer figure,
#footer footer,
#footer header,
#footer hgroup,
#footer menu,
#footer nav,
#footer section,
#footer summary,
#footer time,
#footer mark,
#footer audio,
#footer video,
body.top div,
body.top span,
body.top object,
body.top iframe,
body.top h1,
body.top h2,
body.top h3,
body.top h4,
body.top h5,
body.top h6,
body.top p,
body.top blockquote,
body.top pre,
body.top abbr,
body.top address,
body.top cite,
body.top code,
body.top del,
body.top dfn,
body.top em,
body.top img,
body.top ins,
body.top kbd,
body.top q,
body.top samp,
body.top small,
body.top strong,
body.top sub,
body.top sup,
body.top var,
body.top b,
body.top i,
body.top dl,
body.top dt,
body.top dd,
body.top ol,
body.top ul,
body.top li,
body.top fieldset,
body.top form,
body.top label,
body.top legend,
body.top table,
body.top caption,
body.top tbody,
body.top tfoot,
body.top thead,
body.top tr,
body.top th,
body.top td,
body.top article,
body.top aside,
body.top canvas,
body.top details,
body.top figcaption,
body.top figure,
body.top footer,
body.top header,
body.top hgroup,
body.top menu,
body.top nav,
body.top section,
body.top summary,
body.top time,
body.top mark,
body.top audio,
body.top video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-weight: normal;
  font-style: inherit;
  font-family: inherit;
  font-size: 1em; }

#header ol, #header ul,
nav ol,
nav ul,
#breadCrumbs ol,
#breadCrumbs ul,
#btnList ol,
#btnList ul,
#contentHeader ol,
#contentHeader ul,
#contentInfo ol,
#contentInfo ul,
#pageTop ol,
#pageTop ul,
aside ol,
aside ul,
#footer ol,
#footer ul,
body.top ol,
body.top ul {
  list-style: none; }

:focus {
  outline: 0; }

img {
  border: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

caption, th, td {
  text-align: left;
  font-weight: normal; }

blockquote:before, blockquote:after, q:before, q:after {
  content: ""; }

blockquote, q {
  quotes: "" ""; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

html {
  height: 100%; }

body {
  font-size: 14px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 14px;
  word-wrap: break-word;
  position: relative;
  margin: 0 auto;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(225, 225, 225, 0.4);
  color: #666;
  min-height: 100%;
  min-width: 1024px;
  width: 100%; }
  html[lang=en] body {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; }

a {
  transition: all 0.3s; }

a:link {
  color: #1d4fb3;
  text-decoration: none; }

a:visited {
  color: #1d4fb3;
  text-decoration: none; }

a:hover {
  color: #2285db;
  text-decoration: none; }

a:active {
  color: #2285db;
  text-decoration: none; }

img {
  display: block; }

.android * {
  max-height: 999999px; }

hr {
  border-top: 1px solid #ccc;
  border-width: 1px 0px 0px 0px;
  height: 1px;
  margin: 0 0 30px; }

#header {
  background: #fff;
  position: relative;
  z-index: 20; }
  #header section {
    width: 1024px;
    margin: 0 auto;
    min-height: 79px;
    position: relative;
    z-index: 2;
    background: #fff;
    border-right: 3px solid #fff; }
    #header section h1 {
      position: absolute;
      left: 0px;
      top: 20px;
      width: 371px;
      height: 40px;
      background: url("/assets/css/images/common/header_logotext.svg") no-repeat right center;
      background-size: 291px 20px;
      color: transparent; }
      #header section h1 a {
        display: block;
        width: 371px;
        height: 40px;
        color: transparent; }
        #header section h1 a:before {
          content: '';
          width: 70px;
          height: 40px;
          position: absolute;
          left: 0px;
          top: 0px;
          background: url("/assets/css/images/common/header_logo_mark.svg") no-repeat;
          background-size: contain; }
      html[lang=en] #header section h1 {
        width: 451px;
        height: 35px;
        background: url("/assets/css/images/common/header_logotext_en.svg") no-repeat right center;
        background-size: 381px 25px;
        top: 25px; }
        html[lang=en] #header section h1 a {
          width: 451px;
          height: 3px; }
          html[lang=en] #header section h1 a:before {
            width: 61px;
            height: 35px; }
      .intra #header section h1 {
        background: url("images/common/header_logo_intra.svg") no-repeat left 25px;
        background-size: 294px 24px;
        width: 294px;
        height: 50px; }
        .intra #header section h1 a:before {
          width: 35px;
          height: 20px; }
        .intra #header section h1 a:after {
          content: '';
          display: block;
          position: absolute;
          left: 43px;
          top: 0;
          background: url("/assets/css/images/common/header_logotext.svg") no-repeat right center;
          background-size: contain;
          width: 209px;
          height: 14px; }
    #header section ul {
      max-width: 560px;
      position: absolute;
      right: 60px;
      top: 50%;
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
      font-size: 12px; }
      #header section ul li {
        float: left;
        margin: 0 0 0 18px;
        line-height: 12px;
        height: 12px; }
        #header section ul li a {
          color: #666;
          display: inline-block;
          position: relative;
          padding: 0 0 0 15px;
          height: 12px; }
          #header section ul li a:before {
            content: '';
            width: 6px;
            height: 9px;
            background: url("/assets/css/images/common/arrow_s_g_r.svg") no-repeat center center;
            background-size: contain;
            position: absolute;
            left: 5px;
            top: 50%;
            margin: -5px 0 0; }
          #header section ul li a:hover {
            color: #8f7ed5; }
    #header section #searchField {
      background: #fff;
      position: absolute;
      top: 50%;
      right: 0;
      width: 40px;
      overflow: hidden;
      height: 40px;
      margin: -20px 0 0;
      border-radius: 5px;
      transition: all 0.4s ease-in-out;
      box-sizing: border-box; }
      #header section #searchField.hover {
        width: 218px;
        box-shadow: rgba(134, 134, 134, 0.5) 0px 1px 5px 0px; }
      #header section #searchField form {
        display: block;
        height: 40px;
        padding-left: 40px; }
        #header section #searchField form #searchword {
          border: none !important;
          padding: 0 !important;
          display: block;
          width: 178px;
          height: 40px;
          box-sizing: border-box;
          display: block;
          font-size: 12px;
          border-radius: 0;
          background: none !important;
          font-size: 13px; }
        #header section #searchField form #search {
          border: none;
          color: transparent;
          width: 40px;
          background: #fff url("/assets/css/images/common/icn_search.svg") no-repeat center center;
          height: 40px;
          display: block;
          cursor: pointer;
          border-radius: 0;
          position: absolute;
          left: 0;
          top: 0; }
          #header section #searchField form #search:hover {
            opacity: 0.95; }
  #header nav {
    border-top: 1px solid #d8d8d8;
    border-bottom: 1px solid #d8d8d8; }
    #header nav > ul {
      width: 1024px;
      margin: 0 auto;
      height: 47px;
      display: table; }
      #header nav > ul a {
        color: #333; }
      #header nav > ul > li {
        position: relative;
        height: 47px;
        display: table-cell;
        vertical-align: middle; }
        #header nav > ul > li a[target="_blank"]:after {
          content: '';
          display: inline-block;
          width: 12px;
          height: 10px;
          margin: 0 0 0 4px;
          background-image: url("/assets/css/images/common/icn_blank.svg");
          background-position: left center;
          background-repeat: no-repeat;
          background-size: contain; }
        #header nav > ul > li a[href$=".pdf"]:after {
          content: '';
          background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
          background-position: left center;
          background-repeat: no-repeat;
          background-size: contain;
          display: inline-block;
          width: 12px !important;
          height: 13px !important;
          margin: 0 0 0 5px;
          position: relative;
          top: 2px; }
        #header nav > ul > li > a:after {
          content: '';
          width: 100%;
          height: 0px;
          position: absolute;
          left: 0;
          bottom: 0;
          background: #8f7ed5;
          transition: all 0.3s; }
        #header nav > ul > li:hover > a {
          color: #8f7ed5; }
        #header nav > ul > li:hover > a:after {
          height: 4px; }
        #header nav > ul > li:hover ul {
          -ms-transform: translate(0, 0);
              transform: translate(0, 0); }
        #header nav > ul > li > a {
          position: relative;
          display: block;
          height: 47px;
          vertical-align: middle;
          font-weight: bold;
          text-align: center;
          font-size: 15px;
          background: #fff;
          position: relative;
          z-index: 2;
          border-bottom: 1px solid #d8d8d8;
          border-top: 1px solid #d8d8d8;
          margin: -1px 0;
          line-height: 49px;
          border-left: 1px solid #d8d8d8;
          transition: all 0.3s; }
        #header nav > ul > li ul {
          position: absolute;
          left: 0;
          top: 100%;
          -ms-transform: translate(0, -100%);
              transform: translate(0, -100%);
          background: #fff;
          z-index: 1;
          padding: 15px 20px;
          white-space: nowrap;
          transition: all 0.3s;
          border: 1px solid #d8d8d8;
          margin: -1px 0 0; }
          .intra #header nav > ul > li ul {
            width: 235px;
            box-sizing: border-box; }
          #header nav > ul > li ul li a {
            display: inline-block;
            position: relative;
            padding: 0 0 0 15px;
            transition: all 0.3s;
            font-size: 13px;
            display: block;
            padding-top: 5px;
            padding-bottom: 5px; }
            #header nav > ul > li ul li a:before {
              content: '';
              width: 6px;
              height: 9px;
              background: url("/assets/css/images/common/arrow_s_g_r.svg") no-repeat center center;
              background-size: contain;
              position: absolute;
              left: 5px;
              top: 50%;
              margin: -5px 0 0; }
            #header nav > ul > li ul li a:hover {
              color: #8f7ed5; }
          #header nav > ul > li ul li.bdrBtm {
            border-bottom: 1px solid #d8d8d8;
            margin-bottom: 10px; }
            #header nav > ul > li ul li.bdrBtm a {
              margin-bottom: 10px; }
          #header nav > ul > li ul li:last-child {
            margin: 0; }
        #header nav > ul > li.cur > a {
          color: #8f7ed5; }
          #header nav > ul > li.cur > a:after {
            height: 4px; }
        #header nav > ul > li:nth-child(1) > a {
          width: 80px;
          color: transparent; }
          #header nav > ul > li:nth-child(1) > a span {
            display: block;
            height: 47px; }
            #header nav > ul > li:nth-child(1) > a span:before, #header nav > ul > li:nth-child(1) > a span:after {
              content: '';
              position: absolute;
              left: 0;
              top: 0;
              width: 100%;
              height: 100%;
              transition: all 0.3s; }
            #header nav > ul > li:nth-child(1) > a span:before {
              background: url("/assets/css/images/common/nav_home.svg") no-repeat center center;
              opacity: 1; }
            #header nav > ul > li:nth-child(1) > a span:after {
              background: url("/assets/css/images/common/nav_home_over.svg") no-repeat center center;
              opacity: 0; }
            #header nav > ul > li:nth-child(1) > a span:hover:before {
              opacity: 0; }
            #header nav > ul > li:nth-child(1) > a span:hover:after {
              opacity: 1; }
        #header nav > ul > li:nth-child(1).cur > a span:before {
          opacity: 0; }
        #header nav > ul > li:nth-child(1).cur > a span:after {
          opacity: 1; }
        #header nav > ul > li:nth-child(2) > a {
          width: 186px; }
        .intra #header nav > ul > li:nth-child(2) > a {
          width: 235px; }
        #header nav > ul > li:nth-child(3) > a {
          width: 134px; }
        .intra #header nav > ul > li:nth-child(3) > a {
          width: 235px; }
        #header nav > ul > li:nth-child(4) > a {
          width: 151px; }
        .intra #header nav > ul > li:nth-child(4) > a {
          width: 235px; }
        #header nav > ul > li:nth-child(5) > a {
          width: 109px; }
        .intra #header nav > ul > li:nth-child(5) > a {
          width: 235px;
          border-right: 1px solid #d8d8d8; }
        #header nav > ul > li:nth-child(6) > a {
          width: 239px; }
        #header nav > ul > li:nth-child(7) > a {
          width: 120px;
          border-right: 1px solid #d8d8d8; }
        #header nav > ul > li:nth-child(7) ul {
          right: 0;
          left: auto; }
        html[lang=en] #header nav > ul > li:nth-child(1) {
          width: 80px; }
          html[lang=en] #header nav > ul > li:nth-child(1) > a {
            width: 80px; }
        html[lang=en] #header nav > ul > li:nth-child(2) {
          width: 145px; }
          html[lang=en] #header nav > ul > li:nth-child(2) > a {
            width: 145px; }
        html[lang=en] #header nav > ul > li:nth-child(3) {
          width: 94px; }
          html[lang=en] #header nav > ul > li:nth-child(3) > a {
            width: 94px; }
        html[lang=en] #header nav > ul > li:nth-child(4) {
          width: 151px; }
          html[lang=en] #header nav > ul > li:nth-child(4) > a {
            width: 151px; }
        html[lang=en] #header nav > ul > li:nth-child(5) {
          width: 245px; }
          html[lang=en] #header nav > ul > li:nth-child(5) > a {
            width: 245px; }
        html[lang=en] #header nav > ul > li:nth-child(6) {
          border-left: 1px solid #d8d8d8;
          border-right: 1px solid #d8d8d8; }

#pageTop {
  width: 80px;
  height: 60px;
  position: fixed;
  right: 10px;
  bottom: 0;
  font-size: 11px;
  text-align: center;
  color: #737676;
  display: none;
  transition: 0s; }
  #pageTop span {
    width: 80px;
    height: 60px;
    box-sizing: border-box;
    padding: 38px 0 12px;
    line-height: 1;
    transition: all 0.3s;
    display: block; }
    #pageTop span:before {
      content: '';
      display: block;
      background: url("/assets/css/images/common/arrow_top.svg") left top no-repeat;
      width: 30px;
      height: 17px;
      position: absolute;
      top: 10px;
      left: 50%;
      margin: 0 0 0 -15px; }
  #pageTop:hover span {
    opacity: 0.8; }
    #pageTop:hover span:before {
      opacity: 0.8; }

#footer {
  background: url("/assets/css/images/common/noize_gray.png"); }
  #footer a[target="_blank"]:after {
    content: '';
    display: inline-block;
    width: 12px;
    height: 10px;
    margin: 0 0 0 4px;
    background-image: url("/assets/css/images/common/icn_blank.svg");
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain; }
  #footer a[href$=".pdf"]:after {
    content: '';
    background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    width: 12px !important;
    height: 13px !important;
    margin: 0 0 0 5px;
    position: relative;
    top: 2px; }
  #footer #sitemap {
    border-top: 1px solid #d8d8d8; }
    #footer #sitemap nav {
      padding: 30px 0 40px;
      border-top: 2px solid #fff;
      background: url("/assets/css/images/common/noize_light_gray.png"); }
      #footer #sitemap nav > ul {
        width: 1024px;
        margin: 0 auto;
        overflow: hidden; }
        #footer #sitemap nav > ul > li {
          float: left;
          width: 170px; }
          #footer #sitemap nav > ul > li:nth-child(5) {
            width: 190px; }
          #footer #sitemap nav > ul > li:last-child {
            width: 149px; }
          #footer #sitemap nav > ul > li a {
            color: #595959;
            transition: all 0.3s;
            margin: 0 0 26px;
            display: inline-block; }
            #footer #sitemap nav > ul > li a:hover {
              color: #8f7ed5; }
          #footer #sitemap nav > ul > li > a {
            font-weight: bold;
            font-size: 14px;
            line-height: 16px; }
          #footer #sitemap nav > ul > li ul li {
            font-size: 11px;
            line-height: 1.6; }
            #footer #sitemap nav > ul > li ul li a {
              margin: 0 0 11px; }
        #footer #sitemap nav > ul.lower {
          border-top: 1px solid #ccc;
          margin-top: 23px;
          padding-top: 30px; }
  #footer section {
    width: 1024px;
    margin: 0 auto;
    overflow: hidden;
    font-size: 11px;
    position: relative;
    padding: 22px 0 55px; }
    #footer section > ul {
      overflow: hidden;
      margin: 0 0 11px; }
      #footer section > ul li {
        float: left;
        border-right: 1px solid #595959;
        line-height: 1;
        margin: 0 8px 0 0;
        padding: 0 8px 0 0; }
        #footer section > ul li a {
          display: block;
          color: #595959; }
          #footer section > ul li a:hover {
            color: #8f7ed5; }
        #footer section > ul li:last-child {
          border-right: none; }
    #footer section h1 {
      color: rgba(0, 0, 0, 0);
      width: 250px;
      height: 18px;
      background: url("/assets/css/images/common/header_logotext.svg") left top no-repeat;
      background-size: contain;
      position: absolute;
      right: 0;
      top: 23px; }
      html[lang=en] #footer section h1 {
        width: 273px;
        height: 17px;
        background: url("/assets/css/images/common/header_logotext_en.svg") right top no-repeat;
        background-size: contain; }
    #footer section .adderss {
      position: absolute;
      right: 0;
      top: 46px; }
    .intra #footer section {
      padding-bottom: 15px; }
      .intra #footer section > ul {
        margin-bottom: 10px; }
      .intra #footer section .extention {
        margin-bottom: 30 px; }

#breadCrumbs {
  background: #f7f7f7;
  border-bottom: 1px solid #d8d8d8; }
  #breadCrumbs ul {
    width: 1024px;
    margin: 0 auto;
    font-size: 12px;
    overflow: hidden;
    padding: 14px 0 14px; }
    #breadCrumbs ul li {
      display: inline-block;
      margin: 0 4px 0 0;
      color: #808080; }
      #breadCrumbs ul li:after {
        content: '';
        width: 4px;
        height: 7px;
        display: inline-block;
        background: url("/assets/css/images/common/bread_crumbs.svg");
        margin: 0 0 0 10px;
        position: relative;
        top: -1px; }
      #breadCrumbs ul li:last-child:after {
        display: none; }

#container {
  position: relative; }
  #container #navOverlay {
    background: rgba(0, 0, 0, 0.5);
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: none;
    z-index: 10; }
  #container article {
    padding: 40px 0;
    width: 1024px;
    margin: 0 auto;
    min-height: 600px; }
    #container article:after {
      content: '';
      display: block;
      height: 0;
      clear: both; }
    #container article main {
      width: 704px;
      float: left;
      /* background: rgba(blue,0.5); */ }
    #container article aside {
      width: 280px;
      float: right;
      /* background: rgba(yellow,0.5); */ }
  #container #mainHeader {
    position: relative;
    margin: 24px auto 10px;
    height: 181px;
    width: 100%;
    max-width: 1200px;
    min-width: 1020px;
    overflow: hidden; }
    #container #mainHeader img {
      position: absolute;
      top: 0;
      left: 50%;
      -ms-transform: translate(-50%, 0);
          transform: translate(-50%, 0); }
    #container #mainHeader:before {
      content: '';
      width: 100%;
      height: 3px;
      background: url("/assets/css/images/common/pixel_bdr.png") left top repeat-x;
      position: absolute;
      left: 0;
      top: 0;
      z-index: 1; }
    #container #mainHeader h1 {
      position: absolute;
      left: 50%;
      top: 0;
      z-index: 2;
      min-width: 262px;
      height: 181px;
      margin: 0 0 0 -512px;
      padding: 110px 24px 0;
      background: url("images/common/title_base.jpg") bottom right no-repeat, url("images/common/title_base_repeat.png") bottom left repeat-x;
      color: #fff;
      font-size: 24px;
      font-weight: bold;
      box-sizing: border-box; }
      #container #mainHeader h1:after {
        content: '';
        height: 3px;
        background: #5035ad;
        position: absolute;
        left: 0;
        top: 0;
        right: 0; }
      #container #mainHeader h1 small {
        display: block;
        font-size: 12px; }

.tabs ol, .tabs ul {
  list-style: none; }

.tabs .triggers {
  border-top: 1px solid #dbdbdb;
  border-bottom: 1px solid #dbdbdb;
  margin: 0 0 19px;
  box-sizing: border-box;
  padding: 0; }
  .subPage .tabs .triggers {
    margin-top: -1px; }
  .tabs .triggers li {
    float: left;
    padding: 14px 20px;
    line-height: 1;
    position: relative;
    cursor: pointer;
    box-sizing: border-box;
    font-weight: bold;
    font-size: 12px;
    transition: 0.3s; }
    .tabs .triggers li:after {
      content: '';
      display: block;
      height: 0px;
      width: 100%;
      background: #8f7ed5;
      position: absolute;
      left: 0;
      bottom: -1px;
      transition: 0.3s; }
    .tabs .triggers li.cur {
      color: #8f7ed5; }
      .tabs .triggers li.cur:after {
        content: '';
        display: block;
        height: 3px;
        width: 100%;
        background: #8f7ed5;
        position: absolute;
        left: 0;
        bottom: -1px; }
    .tabs .triggers li:hover {
      color: #8f7ed5; }
      .tabs .triggers li:hover:after {
        content: '';
        display: block;
        height: 3px;
        width: 100%;
        background: #8f7ed5;
        position: absolute;
        left: 0;
        bottom: -1px; }
  .tabs .triggers:after {
    content: '';
    display: block;
    clear: both; }

.tabs .targets > div ol, .tabs .targets > div ul {
  list-style: none; }

.tabs .targets > div ul li {
  font-size: 14px;
  line-height: 24px; }
  .tabs .targets > div ul li a[target="_blank"] .text:after {
    content: '';
    display: inline-block;
    width: 12px;
    height: 10px;
    margin: 0 0 0 4px;
    background-image: url("/assets/css/images/common/icn_blank.svg") !important;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain; }
  .tabs .targets > div ul li a[href$=".pdf"] .text:after {
    content: '';
    background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    width: 12px;
    height: 13px;
    margin: 0 0 0 5px;
    position: relative;
    top: 2px; }
  .tabs .targets > div ul li a .date {
    font-weight: bold;
    color: #333;
    display: block;
    font-size: 1em;
    padding: 0;
    margin: 0; }
  .tabs .targets > div ul li a p {
    margin: 0; }

#whatsNew .targets > div {
  height: 360px;
  overflow-y: scroll;
  display: none;
  margin: 0 0 50px; }
  .subPage #whatsNew .targets > div {
    height: auto;
    overflow-y: visible; }
    .subPage #whatsNew .targets > div.scroll {
      height: 221px;
      overflow-y: scroll;
      margin: 0; }
  #whatsNew .targets > div:first-child {
    display: block; }
  #whatsNew .targets > div ul {
    margin: -10px 0 0;
    padding: 0; }
    #whatsNew .targets > div ul li {
      border-bottom: 1px dotted #dbdbdb;
      position: relative; }
      #whatsNew .targets > div ul li .date:after {
        display: inline-block;
        color: #fff;
        font-size: 10px;
        line-height: 17px;
        min-width: 5.6em;
        padding: 0 5px;
        text-align: center;
        box-sizing: border-box; }
      #whatsNew .targets > div ul li.sales .date:after {
        content: '受託事業';
        background: #3b9592; }
        html[lang=en] #whatsNew .targets > div ul li.sales .date:after {
          content: 'Sales'; }
      #whatsNew .targets > div ul li.gishi .date:after {
        content: '鉄道設計技士試験';
        background: #70c6c3; }
        html[lang=en] #whatsNew .targets > div ul li.gishi .date:after {
          content: 'Gishi'; }
      #whatsNew .targets > div ul li.others .date:after {
        content: 'その他';
        background: #999; }
        html[lang=en] #whatsNew .targets > div ul li.others .date:after {
          content: 'Other'; }
      #whatsNew .targets > div ul li.publish .date:after {
        content: '出版物';
        background: #74a8d4; }
        html[lang=en] #whatsNew .targets > div ul li.publish .date:after {
          content: 'Publication'; }
      #whatsNew .targets > div ul li.event .date:after {
        content: 'イベント';
        background: #7b8ed3; }
        html[lang=en] #whatsNew .targets > div ul li.event .date:after {
          content: 'Event'; }
      #whatsNew .targets > div ul li.rd .date:after {
        content: 'R&D';
        background: #b578ce; }
      #whatsNew .targets > div ul li:last-child {
        border-bottom: none; }
      #whatsNew .targets > div ul li.new .date {
        position: relative;
        display: inline-block; }
        #whatsNew .targets > div ul li.new .date:before {
          position: absolute;
          right: -10px;
          top: 48%;
          content: 'NEW!';
          display: block;
          color: #ff6600;
          font-weight: bold;
          font-size: 12px;
          line-height: 1.1;
          font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
          -ms-transform: translate(100%, -50%);
              transform: translate(100%, -50%); }
      #whatsNew .targets > div ul li .date:after {
        margin: 0 0 0 10px;
        -ms-transform: translate(0, -2px);
            transform: translate(0, -2px); }
      #whatsNew .targets > div ul li a {
        padding: 10px 10px 10px 0;
        display: block;
        position: relative; }

#info {
  margin: 0 0 60px !important; }
  #info ol, #info ul {
    list-style: none;
    padding: 0;
    margin: 0; }
  #info h2.bdrTitle {
    border-bottom: 1px solid #dbdbdb !important;
    margin: 0 0 15px !important;
    padding-bottom: 12px !important; }
    #info h2.bdrTitle:before {
      bottom: 8px !important; }
    #info h2.bdrTitle:after {
      bottom: 8px !important; }
  #info .scroll {
    height: 221px;
    overflow-y: scroll;
    margin: 0; }
  #info ul li {
    border-bottom: 1px dotted #dbdbdb;
    position: relative;
    font-size: 14px;
    line-height: 24px; }
    #info ul li a[target="_blank"] .text:after {
      content: '';
      display: inline-block;
      width: 12px;
      height: 10px;
      margin: 0 0 0 4px;
      background-image: url("/assets/css/images/common/icn_blank.svg") !important;
      background-position: left center;
      background-repeat: no-repeat;
      background-size: contain; }
    #info ul li a[href$=".pdf"] .text:after {
      content: '';
      background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
      background-position: left center;
      background-repeat: no-repeat;
      background-size: contain;
      display: inline-block;
      width: 12px;
      height: 13px;
      margin: 0 0 0 5px;
      position: relative;
      top: 2px; }
    #info ul li span,
    #info ul li a {
      padding: 13px 10px 10px 0;
      display: block;
      position: relative; }
      #info ul li span .date,
      #info ul li a .date {
        font-weight: bold;
        color: #333;
        display: block;
        padding: 0;
        margin: 0;
        font-size: 1em; }
        #info ul li span .date:after,
        #info ul li a .date:after {
          display: inline-block;
          color: #fff;
          font-size: 10px;
          line-height: 17px;
          min-width: 5.6em;
          padding: 0 5px;
          text-align: center;
          box-sizing: border-box; }
      #info ul li span p,
      #info ul li a p {
        margin: 0; }
    #info ul li.sales .date:after {
      content: '受託事業';
      background: #3b9592; }
      html[lang=en] #info ul li.sales .date:after {
        content: 'Sales'; }
    #info ul li.gishi .date:after {
      content: '鉄道設計技士試験';
      background: #70c6c3; }
      html[lang=en] #info ul li.gishi .date:after {
        content: 'Gishi'; }
    #info ul li.others .date:after {
      content: 'その他';
      background: #999; }
      html[lang=en] #info ul li.others .date:after {
        content: 'Other'; }
    #info ul li.publish .date:after {
      content: '出版物';
      background: #74a8d4; }
      html[lang=en] #info ul li.publish .date:after {
        content: 'Publication'; }
    #info ul li.event .date:after {
      content: 'イベント';
      background: #7b8ed3; }
      html[lang=en] #info ul li.event .date:after {
        content: 'Event'; }
    #info ul li.rd .date:after {
      content: 'R&D';
      background: #b578ce; }
    #info ul li:last-child {
      border-bottom: none; }
    #info ul li.new .date {
      position: relative;
      display: inline-block; }
      #info ul li.new .date:before {
        position: absolute;
        right: -10px;
        top: 48%;
        content: 'NEW!';
        display: block;
        color: #ff6600;
        font-weight: bold;
        font-size: 12px;
        line-height: 1.1;
        font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
        -ms-transform: translate(100%, -50%);
            transform: translate(100%, -50%); }
    #info ul li.update .date {
      position: relative;
      display: inline-block; }
      #info ul li.update .date:before {
        position: absolute;
        right: -10px;
        top: 48%;
        content: 'UPDATE!!';
        display: block;
        color: #ff6600;
        font-weight: bold;
        font-size: 12px;
        line-height: 1.1;
        font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
        -ms-transform: translate(100%, -50%);
            transform: translate(100%, -50%); }
    #info ul li .date:after {
      margin: 0 0 0 10px;
      -ms-transform: translate(0, -2px);
          transform: translate(0, -2px); }

.subInfo {
  margin: 10px 0 0; }
  .subInfo dt {
    font-size: 14px;
    line-height: 1;
    padding: 5px;
    display: inline-block;
    background: #f2f2f2; }
  .subInfo dd {
    display: inline-block;
    margin: 0; }

.subPage #container main .columns {
  margin: 0 0 20px; }
  .subPage #container main .columns ul {
    margin: 0 -15px 0 0;
    list-style: none;
    padding: 0; }
    .subPage #container main .columns ul.upperImageList li {
      padding-left: 0; }
      .subPage #container main .columns ul.upperImageList li > .upperImage {
        margin-bottom: 20px; }
      .subPage #container main .columns ul.upperImageList li > .bottom {
        position: relative;
        padding-left: 95px; }
        .subPage #container main .columns ul.upperImageList li > .bottom .thumb {
          top: 0; }
    .subPage #container main .columns ul li {
      float: left;
      width: 342px;
      border-top: 1px solid #dbdbdb;
      padding: 15px 0 0 95px;
      margin: 0 15px 29px 0;
      min-height: 128px;
      position: relative;
      box-sizing: border-box; }
      .subPage #container main .columns ul li:before {
        content: '';
        display: block;
        width: 79px;
        height: 1px;
        background-color: #8f7ed5;
        position: absolute;
        left: 0;
        top: -1px; }
      .subPage #container main .columns ul li:nth-child(odd) {
        clear: both; }
      .subPage #container main .columns ul li .thumb {
        display: block;
        position: absolute;
        left: 0;
        top: 15px; }
        .subPage #container main .columns ul li .thumb img {
          transition: all 0.3s;
          border: 1px solid #e6e6e6;
          box-sizing: border-box; }
        .subPage #container main .columns ul li .thumb:hover img {
          opacity: 0.8; }
      .subPage #container main .columns ul li h3 {
        font-weight: bold;
        font-size: 14px;
        line-height: 18px;
        color: #333;
        margin: 0 0 8px; }
        .subPage #container main .columns ul li h3 a.arrow {
          position: relative;
          padding: 0 0 0 13px; }
          .subPage #container main .columns ul li h3 a.arrow:before {
            content: '';
            display: block;
            width: 5px;
            height: 7px;
            background: url("/assets/css/images/common/arrow_s_p_r.svg") left top no-repeat;
            background-size: contain;
            position: absolute;
            left: 0;
            top: 3px; }
      .subPage #container main .columns ul li h4 {
        font-weight: bold;
        font-size: 13px;
        margin: 0; }
      .subPage #container main .columns ul li dl {
        margin: 0;
        font-size: 13px;
        line-height: 20px; }
        .subPage #container main .columns ul li dl dt {
          float: left; }
          .subPage #container main .columns ul li dl dt:after {
            content: ':';
            display: inline-block;
            padding: 0 5px; }
        .subPage #container main .columns ul li dl dd {
          overflow: hidden; }
      .subPage #container main .columns ul li p {
        font-size: 13px;
        line-height: 20px;
        margin: 0 0 10px; }
        .subPage #container main .columns ul li p:last-child {
          margin: 0; }
      .subPage #container main .columns ul li .text {
        color: #333; }
      .subPage #container main .columns ul li .link {
        margin: 0 0 5px; }
        .subPage #container main .columns ul li .link a {
          position: relative;
          display: block;
          padding: 0 0 0 10px;
          color: #1d4fb3; }
          .subPage #container main .columns ul li .link a:after {
            content: '';
            width: 6px;
            height: 9px;
            background: url("/assets/css/images/common/arrow_s_b_r.svg") no-repeat center center;
            background-size: contain;
            position: absolute;
            left: 0;
            top: 5px;
            margin: 0; }
          .subPage #container main .columns ul li .link a:hover {
            color: #2285db; }
    .subPage #container main .columns ul.smallThumb li {
      min-height: 95px;
      margin: 0 15px 29px 0; }
    .subPage #container main .columns ul:after {
      content: '';
      display: block;
      clear: both; }
  .subPage #container main .columns.mgWide {
    margin-bottom: 27px !important; }
  .subPage #container main .columns.noColor ul li {
    min-height: auto;
    padding-left: 0; }
    .subPage #container main .columns.noColor ul li:before {
      content: none; }
    .subPage #container main .columns.noColor ul li:after {
      content: none; }
  .subPage #container main .columns.textIndent {
    margin: 0 0 28px; }
    .subPage #container main .columns.textIndent ul li {
      margin: 0 15px 19px 0; }
      .subPage #container main .columns.textIndent ul li h3 {
        margin-bottom: 3px; }
      .subPage #container main .columns.textIndent ul li p {
        padding-left: 1em; }

.subPage #container main .arrowList > ul {
  list-style-type: none;
  margin: -8px 0 0;
  padding: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .subPage #container main .arrowList > ul li {
    width: 234px;
    box-sizing: border-box;
    font-weight: bold;
    margin: 8px 0; }
    .subPage #container main .arrowList > ul li a {
      display: block; }

.subPage #container main.single .arrowList > ul li {
  width: 341px; }

.subPage #container main.single .columnList.column4 > ul > li {
  width: 244px; }

.subPage #container main.single .columnList.column3 > ul > li {
  width: 329px; }

.subPage #container main.single .columnList.column2 > ul > li {
  width: 504px; }

.subPage #container main.single .columnList > ul {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 0;
  margin: 0 -8px; }
  .subPage #container main.single .columnList > ul > li {
    border-top: 1px solid #dbdbdb;
    padding: 15px 0 0 95px;
    margin: 0 8px 35px;
    position: relative;
    box-sizing: border-box;
    list-style-type: none;
    min-height: 80px; }
    .subPage #container main.single .columnList > ul > li:before {
      content: '';
      display: block;
      width: 79px;
      height: 1px;
      background-color: #8f7ed5;
      position: absolute;
      left: 0;
      top: -1px; }
    .subPage #container main.single .columnList > ul > li a.thumb {
      display: block;
      position: absolute;
      left: 0;
      top: 15px; }
    .subPage #container main.single .columnList > ul > li h3 {
      font-weight: bold;
      font-size: 14px;
      line-height: 18px;
      color: #333;
      margin: 0 0 8px; }
      .subPage #container main.single .columnList > ul > li h3 a.arrow {
        position: relative;
        padding: 0 0 0 13px;
        display: block; }
      .subPage #container main.single .columnList > ul > li h3 a:before {
        content: '';
        display: block;
        width: 5px;
        height: 7px;
        background: url(/assets/css/images/common/arrow_s_p_r.svg) left top no-repeat;
        background-size: contain;
        position: absolute;
        left: 3px;
        top: 3px; }
    .subPage #container main.single .columnList > ul > li p {
      padding: 0 0 9px;
      margin: 0;
      font-size: 13px;
      line-height: 20px; }
    .subPage #container main.single .columnList > ul > li .disc {
      list-style-type: none;
      margin: 0;
      padding: 6px 0 0;
      border-top: 1px dotted #dbdbdb; }
      .subPage #container main.single .columnList > ul > li .disc li a[target="_blank"]:after {
        content: '';
        display: inline-block;
        width: 12px;
        height: 10px;
        margin: 0 0 0 4px;
        background-image: url("/assets/css/images/common/icn_blank.svg");
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain; }
      .subPage #container main.single .columnList > ul > li .disc li a[href$=".pdf"]:after {
        content: '';
        background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain;
        display: inline-block;
        width: 12px !important;
        height: 13px !important;
        margin: 0 0 0 5px;
        position: relative;
        top: 2px; }
      .subPage #container main.single .columnList > ul > li .disc li a {
        display: block;
        padding: 3px 0 3px 17px;
        position: relative;
        font-size: 13px;
        line-height: 20px; }
        .subPage #container main.single .columnList > ul > li .disc li a:before {
          content: '';
          display: block;
          width: 3px;
          height: 3px;
          margin-top: -2px;
          background: #999999;
          position: absolute;
          left: 5px;
          top: 50%; }

.subPage #container main.single .columnList.noThumb > ul > li {
  padding-left: 0;
  min-height: auto; }

.subPage #container main.single .columnList.noColor > ul > li:before {
  content: none; }

.blueThTb {
  width: 100%;
  border-top: 1px solid #dbdbdb;
  border-left: 1px solid #dbdbdb; }
  .blueThTb th {
    border-bottom: 1px solid #dbdbdb;
    border-right: 1px solid #dbdbdb;
    background: #e3f1fa;
    text-align: center;
    font-weight: bold;
    line-height: 1;
    padding: 17px 16px 16px; }
    .blueThTb th:nth-child(1) {
      width: 84px;
      box-sizing: border-box; }
    .blueThTb th:nth-child(4) {
      width: 162px;
      box-sizing: border-box; }
  .blueThTb td {
    border-bottom: 1px solid #dbdbdb;
    border-right: 1px solid #dbdbdb;
    padding: 12px 15px 11px;
    vertical-align: top;
    font-size: 14px;
    line-height: 20px; }
    .blueThTb td a {
      display: block; }
      .blueThTb td a span {
        font-size: 12px; }
  .blueThTb.nowrap th {
    white-space: nowrap; }

.subPage #container main section#columns3 h2 {
  margin: 0 0 16px; }
  .subPage #container main section#columns3 h2 .allList {
    font-size: 12px;
    position: absolute;
    right: 0;
    bottom: 2px;
    color: #333;
    padding: 0 0 0 12px;
    display: block; }
    .subPage #container main section#columns3 h2 .allList:hover {
      color: #8f7ed5; }
    .subPage #container main section#columns3 h2 .allList:after {
      content: '';
      width: 6px;
      height: 9px;
      background: url("/assets/css/images/common/arrow_s_b_r.svg") no-repeat center center;
      background-size: contain;
      position: absolute;
      left: 0;
      top: 50%;
      margin: -5px 0 0; }

.subPage #container main section#columns3 > div ul {
  margin: 0 -16px 0 0;
  overflow: hidden;
  list-style: none;
  padding: 0; }
  .subPage #container main section#columns3 > div ul li {
    float: left;
    width: 224px;
    margin: 0 16px 20px 0;
    position: relative; }
    .subPage #container main section#columns3 > div ul li a[target="_blank"] .text:after {
      content: '';
      display: inline-block;
      width: 12px;
      height: 10px;
      margin: 0 0 0 4px;
      background-image: url("/assets/css/images/common/icn_blank.svg") !important;
      background-position: left center;
      background-repeat: no-repeat;
      background-size: contain; }
    .subPage #container main section#columns3 > div ul li a[href$=".pdf"] .text:after {
      content: '';
      background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
      background-position: left center;
      background-repeat: no-repeat;
      background-size: contain;
      display: inline-block;
      width: 12px;
      height: 13px;
      margin: 0 0 0 5px;
      position: relative;
      top: 2px; }
    .subPage #container main section#columns3 > div ul li:nth-child(3n+1) {
      clear: both; }
    .subPage #container main section#columns3 > div ul li .date {
      font-weight: bold;
      color: #333;
      display: block;
      margin: 0;
      font-size: 14px; }
    .subPage #container main section#columns3 > div ul li .text {
      margin: 0; }
    .subPage #container main section#columns3 > div ul li figure {
      display: block;
      width: 100%;
      height: 168px;
      box-sizing: border-box;
      overflow: hidden;
      margin: 0;
      padding: 0;
      border: 1px solid #dbdbdb;
      position: relative;
      margin: 0 0 8px; }
      .subPage #container main section#columns3 > div ul li figure img {
        width: auto !important;
        height: auto;
        max-width: 100% !important;
        max-height: 100%;
        position: absolute;
        left: 50%;
        top: 50%;
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
        padding: 0;
        margin: 0 !important;
        display: block;
        backface-visibility: hidden; }
    .subPage #container main section#columns3 > div ul li a:after {
      position: absolute;
      left: 1px;
      top: 1px;
      line-height: 22px;
      display: inline-block;
      color: #fff;
      font-size: 10px;
      line-height: 17px;
      min-width: 5.6em;
      padding: 0 5px;
      text-align: center;
      box-sizing: border-box;
      font-weight: bold; }
    .subPage #container main section#columns3 > div ul li.sales .date:after {
      content: '受託事業';
      background: #3b9592; }
      html[lang=en] .subPage #container main section#columns3 > div ul li.sales .date:after {
        content: 'Sales'; }
    .subPage #container main section#columns3 > div ul li.gishi .date:after {
      content: '鉄道設計技士試験';
      background: #70c6c3; }
      html[lang=en] .subPage #container main section#columns3 > div ul li.gishi .date:after {
        content: 'Gishi'; }
    .subPage #container main section#columns3 > div ul li.others a:after {
      content: 'その他';
      background: #999; }
      html[lang=en] .subPage #container main section#columns3 > div ul li.others a:after {
        content: 'Other'; }
    .subPage #container main section#columns3 > div ul li.publish a:after {
      content: '出版物';
      background: #b578ce; }
      html[lang=en] .subPage #container main section#columns3 > div ul li.publish a:after {
        content: 'Publication'; }
    .subPage #container main section#columns3 > div ul li.event a:after {
      content: 'イベント';
      background: #7b8ed3; }
      html[lang=en] .subPage #container main section#columns3 > div ul li.event a:after {
        content: 'Event'; }
    .subPage #container main section#columns3 > div ul li.rd a:after {
      content: 'R&D';
      background: #b578ce; }
    .subPage #container main section#columns3 > div ul li.management a:after {
      content: '運営';
      background: #5b955a; }
    .subPage #container main section#columns3 > div ul li.lecture a:after {
      content: '講演・交流';
      background: #a1b263; }
    .subPage #container main section#columns3 > div ul li.awarding a:after {
      content: '表彰';
      background: #e3a158; }
    .subPage #container main section#columns3 > div ul li.international a:after {
      content: '国際';
      background: #e15052; }
    .subPage #container main section#columns3 > div ul li.business a:after {
      content: '事業';
      background: #ee8396; }
    .subPage #container main section#columns3 > div ul li a {
      display: block; }
      .subPage #container main section#columns3 > div ul li a img {
        width: 224px;
        height: auto;
        margin: 0 0 5px;
        transition: all 0.3s; }
      .subPage #container main section#columns3 > div ul li a:hover img {
        opacity: 0.8; }
    .subPage #container main section#columns3 > div ul li.new a .date:after {
      content: 'NEW!';
      color: #ff6600;
      font-weight: bold;
      font-size: 12px;
      line-height: 1.1;
      font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
      margin: 0 0 0 8px;
      -ms-transform: translate(0, -3px);
          transform: translate(0, -3px); }

#pressRelease .targets {
  margin: 0 0 30px; }
  #pressRelease .targets > div {
    display: none; }
    #pressRelease .targets > div:first-child {
      display: block; }
    #pressRelease .targets > div ul {
      margin: 0 -16px 0 0;
      overflow: hidden; }
      #pressRelease .targets > div ul li {
        float: left;
        width: 224px;
        margin: 0 16px 20px 0;
        position: relative; }
        #pressRelease .targets > div ul li:nth-child(3n+1) {
          clear: both; }
        #pressRelease .targets > div ul li a {
          display: block; }
          #pressRelease .targets > div ul li a figure {
            display: block;
            width: 100%;
            height: 168px;
            box-sizing: border-box;
            overflow: hidden;
            margin: 0;
            padding: 0;
            border: 1px solid #dbdbdb;
            position: relative; }
            #pressRelease .targets > div ul li a figure img {
              width: auto !important;
              height: auto;
              max-width: 100% !important;
              max-height: 100%;
              position: absolute;
              left: 50%;
              top: 50%;
              -ms-transform: translate(-50%, -50%);
                  transform: translate(-50%, -50%);
              padding: 0;
              margin: 0 !important;
              display: block;
              backface-visibility: hidden; }
          #pressRelease .targets > div ul li a:after {
            position: absolute;
            left: 1px;
            top: 1px;
            line-height: 22px;
            display: inline-block;
            color: #fff;
            font-size: 10px;
            line-height: 17px;
            min-width: 5.6em;
            padding: 0 5px;
            text-align: center;
            box-sizing: border-box;
            font-weight: bold; }
        #pressRelease .targets > div ul li.sales .date:after {
          content: '受託事業';
          background: #3b9592; }
          html[lang=en] #pressRelease .targets > div ul li.sales .date:after {
            content: 'Sales'; }
        #pressRelease .targets > div ul li.gishi .date:after {
          content: '鉄道設計技士試験';
          background: #70c6c3; }
          html[lang=en] #pressRelease .targets > div ul li.gishi .date:after {
            content: 'Gishi'; }
        #pressRelease .targets > div ul li.others a:after {
          content: 'その他';
          background: #999; }
          html[lang=en] #pressRelease .targets > div ul li.others a:after {
            content: 'Other'; }
        #pressRelease .targets > div ul li.publish a:after {
          content: '出版物';
          background: #b578ce; }
          html[lang=en] #pressRelease .targets > div ul li.publish a:after {
            content: 'Publication'; }
        #pressRelease .targets > div ul li.event a:after {
          content: 'イベント';
          background: #7b8ed3; }
          html[lang=en] #pressRelease .targets > div ul li.event a:after {
            content: 'Event'; }
        #pressRelease .targets > div ul li.rd a:after {
          content: 'R&D';
          background: #b578ce; }
        #pressRelease .targets > div ul li.management a:after {
          content: '運営';
          background: #5b955a; }
        #pressRelease .targets > div ul li.lecture a:after {
          content: '講演・交流';
          background: #a1b263; }
        #pressRelease .targets > div ul li.awarding a:after {
          content: '表彰';
          background: #e3a158; }
        #pressRelease .targets > div ul li.international a:after {
          content: '国際';
          background: #e15052; }
        #pressRelease .targets > div ul li.business a:after {
          content: '事業';
          background: #ee8396; }
        #pressRelease .targets > div ul li a:hover img {
          opacity: 0.8; }
        #pressRelease .targets > div ul li.new a .date:after {
          content: 'NEW!';
          color: #ff6600;
          font-weight: bold;
          font-size: 12px;
          line-height: 1.1;
          font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
          margin: 0 0 0 8px;
          -ms-transform: translate(0, -3px);
              transform: translate(0, -3px); }

#pressReleaseLists .targets > div {
  height: 360px;
  overflow-y: scroll;
  display: none;
  margin: 0 0 50px; }
  .subPage #pressReleaseLists .targets > div {
    height: auto;
    overflow-y: visible; }
  #pressReleaseLists .targets > div:first-child {
    display: block; }
  #pressReleaseLists .targets > div ul {
    margin: -10px 0 0;
    padding: 0; }
    #pressReleaseLists .targets > div ul li {
      border-bottom: 1px dotted #dbdbdb;
      position: relative; }
      #pressReleaseLists .targets > div ul li figure {
        position: absolute;
        left: 0;
        top: 18px;
        width: 164px;
        height: 123px;
        transition: 0.3s;
        display: block;
        box-sizing: border-box;
        overflow: hidden;
        margin: 0;
        padding: 0;
        border: 1px solid #dbdbdb; }
        #pressReleaseLists .targets > div ul li figure img {
          width: auto !important;
          height: auto;
          max-width: 100% !important;
          max-height: 100%;
          position: absolute;
          left: 50%;
          top: 50%;
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
          padding: 0;
          margin: 0 !important;
          display: block;
          backface-visibility: hidden; }
      #pressReleaseLists .targets > div ul li img {
        display: block; }
      #pressReleaseLists .targets > div ul li .date:after {
        display: inline-block;
        color: #fff;
        font-size: 10px;
        line-height: 17px;
        min-width: 5.6em;
        padding: 0 5px;
        text-align: center;
        box-sizing: border-box; }
      #pressReleaseLists .targets > div ul li .text {
        margin-bottom: 6px; }
        #pressReleaseLists .targets > div ul li .text .sub:before {
          content: '';
          display: block; }
      #pressReleaseLists .targets > div ul li.gishi .date:after {
        content: '鉄道設計技士試験';
        background: #70c6c3; }
        html[lang=en] #pressReleaseLists .targets > div ul li.gishi .date:after {
          content: 'Gishi'; }
      #pressReleaseLists .targets > div ul li.sales .date:after {
        content: '受託事業';
        background: #3b9592; }
        html[lang=en] #pressReleaseLists .targets > div ul li.sales .date:after {
          content: 'Sales'; }
      #pressReleaseLists .targets > div ul li.others .date:after {
        content: 'その他';
        background: #999; }
        html[lang=en] #pressReleaseLists .targets > div ul li.others .date:after {
          content: 'Other'; }
      #pressReleaseLists .targets > div ul li.publish .date:after {
        content: '出版物';
        background: #b578ce; }
        html[lang=en] #pressReleaseLists .targets > div ul li.publish .date:after {
          content: 'Publication'; }
      #pressReleaseLists .targets > div ul li.event .date:after {
        content: 'イベント';
        background: #7b8ed3; }
        html[lang=en] #pressReleaseLists .targets > div ul li.event .date:after {
          content: 'Event'; }
      #pressReleaseLists .targets > div ul li.rd .date:after {
        content: 'R&D';
        background: #b578ce; }
      #pressReleaseLists .targets > div ul li.management .date:after {
        content: '運営';
        background: #5b955a; }
      #pressReleaseLists .targets > div ul li.lecture .date:after {
        content: '講演・交流';
        background: #a1b263; }
      #pressReleaseLists .targets > div ul li.awarding .date:after {
        content: '表彰';
        background: #e3a158; }
      #pressReleaseLists .targets > div ul li.international .date:after {
        content: '国際';
        background: #e15052; }
      #pressReleaseLists .targets > div ul li.business .date:after {
        content: '事業';
        background: #ee8396; }
      #pressReleaseLists .targets > div ul li.new .date {
        position: relative;
        display: inline-block; }
        #pressReleaseLists .targets > div ul li.new .date:before {
          position: absolute;
          right: -10px;
          top: 48%;
          content: 'NEW!';
          display: block;
          color: #ff6600;
          font-weight: bold;
          font-size: 12px;
          line-height: 1.1;
          font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
          -ms-transform: translate(100%, -50%);
              transform: translate(100%, -50%); }
      #pressReleaseLists .targets > div ul li .date:after {
        margin: 0 0 0 10px;
        -ms-transform: translate(0, -2px);
            transform: translate(0, -2px); }
      #pressReleaseLists .targets > div ul li .body {
        color: #333;
        margin: 0; }
      #pressReleaseLists .targets > div ul li a {
        padding: 14px 10px 14px 180px;
        display: block;
        position: relative;
        min-height: 123px; }
        #pressReleaseLists .targets > div ul li a:hover img {
          opacity: 0.8; }

.contentLeadArea {
  margin: 40px 0 48px; }
  .contentLeadArea.mgNarrow {
    margin: 30px 0 55px; }
  .contentLeadArea p {
    margin: 0 0 30px; }
    .contentLeadArea p.mgNarrow {
      margin: 0 0 15px; }
  .contentLeadArea .slashOrangeArea {
    margin: 0 0 40px; }
  .contentLeadArea .basicTb {
    margin: 0 0 40px;
    width: 100%; }
    .contentLeadArea .basicTb a[target="_blank"]:after {
      content: '';
      display: inline-block;
      width: 12px;
      height: 10px;
      margin: 0 0 0 4px;
      background-image: url("/assets/css/images/common/icn_blank.svg");
      background-position: left center;
      background-repeat: no-repeat;
      background-size: contain; }
    .contentLeadArea .basicTb a[href$=".pdf"]:after {
      content: '';
      background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
      background-position: left center;
      background-repeat: no-repeat;
      background-size: contain;
      display: inline-block;
      width: 12px !important;
      height: 13px !important;
      margin: 0 0 0 5px;
      position: relative;
      top: 2px; }
    .contentLeadArea .basicTb a[href$=".docx"]:after,
    .contentLeadArea .basicTb a[href$=".doc"]:after {
      content: '';
      background-image: url("images/common/icn_docx.svg") !important;
      background-position: left center;
      background-repeat: no-repeat;
      background-size: contain;
      display: inline-block;
      width: 12px !important;
      height: 13px !important;
      margin: 0 0 0 5px;
      position: relative;
      top: 2px; }
    .contentLeadArea .basicTb a[href$=".xls"]:after,
    .contentLeadArea .basicTb a[href$=".xlsx"]:after {
      content: '';
      background-image: url("images/common/icn_xls.svg") !important;
      background-position: left center;
      background-repeat: no-repeat;
      background-size: contain;
      display: inline-block;
      width: 12px !important;
      height: 13px !important;
      margin: 0 0 0 5px;
      position: relative;
      top: 2px; }
  .contentLeadArea .grayBox {
    margin: 0 0 40px !important; }
  .contentLeadArea .boxLink + .ancList {
    margin-top: 32px; }
  .contentLeadArea .bdrBox h2 {
    font-weight: bold;
    font-size: 20px;
    line-height: 1.4;
    border: 1px solid #d8d8d8;
    box-sizing: border-box;
    padding: 11px 23px;
    position: relative;
    margin: 0;
    background: #fcf6e1; }
    .contentLeadArea .bdrBox h2:before {
      content: '';
      display: block;
      width: 5px;
      background: #c4b47d;
      border-top: 1px solid #c4b47d;
      border-bottom: 1px solid #c4b47d;
      position: absolute;
      left: -1px;
      top: -1px;
      bottom: 0; }
    .contentLeadArea .bdrBox h2:after {
      content: '';
      display: block;
      width: 1px;
      background: #c3c3c3;
      position: absolute;
      left: 7px;
      top: 0;
      bottom: 0; }
  .contentLeadArea .bdrBox .inner {
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    padding: 25px 23px; }
    .contentLeadArea .bdrBox .inner p {
      margin-bottom: 15px;
      font-weight: bold; }
      .contentLeadArea .bdrBox .inner p a[target="_blank"]:after {
        content: '';
        display: inline-block;
        width: 12px;
        height: 10px;
        margin: 0 0 0 4px;
        background-image: url("/assets/css/images/common/icn_blank.svg");
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain; }
      .contentLeadArea .bdrBox .inner p a[href$=".pdf"]:after {
        content: '';
        background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain;
        display: inline-block;
        width: 12px !important;
        height: 13px !important;
        margin: 0 0 0 5px;
        position: relative;
        top: 2px; }
      .contentLeadArea .bdrBox .inner p a[href$=".docx"]:after,
      .contentLeadArea .bdrBox .inner p a[href$=".doc"]:after {
        content: '';
        background-image: url("images/common/icn_docx.svg") !important;
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain;
        display: inline-block;
        width: 12px !important;
        height: 13px !important;
        margin: 0 0 0 5px;
        position: relative;
        top: 2px; }
      .contentLeadArea .bdrBox .inner p a[href$=".xls"]:after,
      .contentLeadArea .bdrBox .inner p a[href$=".xlsx"]:after {
        content: '';
        background-image: url("images/common/icn_xls.svg") !important;
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain;
        display: inline-block;
        width: 12px !important;
        height: 13px !important;
        margin: 0 0 0 5px;
        position: relative;
        top: 2px; }
      .contentLeadArea .bdrBox .inner p:last-of-type {
        margin: 0; }
      .contentLeadArea .bdrBox .inner p a {
        padding: 0 8px;
        display: inline-block;
        font-weight: normal; }
      .contentLeadArea .bdrBox .inner p span {
        font-weight: normal; }
    .contentLeadArea .bdrBox .inner hr {
      border-top: 1px dotted #ccc;
      margin: 20px 0; }
    .contentLeadArea .bdrBox .inner .disc {
      list-style-type: disc;
      margin: 0;
      padding: 0 0 0 1em;
      font-size: 12px;
      line-height: 21px; }
  .contentLeadArea .bdrBox.small h2 {
    font-size: 16px;
    padding: 7px 23px; }
  .contentLeadArea .bdrBox.small .inner {
    padding: 25px 23px 20px; }
    .contentLeadArea .bdrBox.small .inner p {
      margin: 0 0 5px; }

.ancList {
  overflow: hidden;
  border: 1px solid #d8d8d8;
  padding: 6px 18px;
  list-style: none; }
  .ancList li {
    float: left; }
    .ancList li a {
      font-size: 13px;
      position: relative;
      padding: 7px 0 7px 20px;
      width: 145px;
      display: block; }
      .ancList li a:before {
        content: '';
        display: block;
        width: 8px;
        height: 8px;
        background: url("images/common/arrow_down.svg") left top no-repeat;
        background-size: contain;
        position: absolute;
        left: 0;
        top: 13px; }
  .ancList.widthAuto {
    padding: 10px 0 13px 18px; }
    .ancList.widthAuto li {
      margin-right: 20px; }
      .ancList.widthAuto li:nth-child(5n) {
        margin-right: 0; }
      .ancList.widthAuto li a {
        width: auto; }
  .ancList.singleAnc li {
    float: none; }
  .ancList.spaceBetween {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .ancList.spaceBetween.separate5 li {
      -ms-flex-preferred-size: 100px;
          flex-basis: 100px;
      -ms-flex-positive: 3;
          flex-grow: 3; }
    .ancList.spaceBetween li {
      float: auto; }
      .ancList.spaceBetween li:nth-child(5n) {
        margin-right: 20px; }

.contentsList {
  margin: 0 0 55px !important;
  border-bottom: none !important; }
  .contentsList ol, .contentsList ul {
    list-style: none; }
  .contentsList h2 {
    margin: 0 0 20px !important; }
  .contentsList > h3 {
    border-bottom: 1px dotted #ccc;
    padding: 0 0 8px 15px !important;
    margin: 0 0 18px !important;
    position: relative; }
    .contentsList > h3:before {
      bottom: 8px !important;
      top: 0; }
  .contentsList h2 + h3 {
    padding-top: 2px !important; }
    .contentsList h2 + h3:before {
      top: 2px !important; }
  .contentsList .leftFigWrap + h3 {
    margin: 50px 0 18px !important; }
  .contentsList > div {
    padding: 0 0 24px !important;
    margin: 0 0 20px !important;
    border-bottom: 1px dotted #ccc; }
    .contentsList > div.leftFigWrap {
      margin: -8px 0 0; }
      .contentsList > div.leftFigWrap figure {
        display: block !important;
        width: 164px !important;
        height: 123px;
        box-sizing: border-box;
        overflow: hidden;
        margin: 6px 20px 0 0 !important;
        padding: 0;
        border: 1px solid #dbdbdb;
        position: relative; }
        .contentsList > div.leftFigWrap figure a {
          display: block;
          width: 100%;
          height: 100%; }
        .contentsList > div.leftFigWrap figure img {
          width: auto;
          height: auto;
          max-width: 100% !important;
          max-height: 100%;
          position: absolute;
          left: 50%;
          top: 50%;
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
          padding: 0;
          margin: 0 !important;
          display: block;
          backface-visibility: hidden; }
    .contentsList > div.singleLink {
      padding: 0 0 15px !important; }
      .contentsList > div.singleLink + h3 {
        padding-top: 30px !important; }
        .contentsList > div.singleLink + h3:before {
          top: 30px !important; }
    .contentsList > div.new h4 {
      position: relative;
      display: inline-block; }
      .contentsList > div.new h4:before {
        position: absolute;
        right: -10px;
        top: 48%;
        content: 'NEW!';
        display: block;
        color: #ff6600;
        font-weight: bold;
        font-size: 12px;
        line-height: 1.1;
        font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
        -ms-transform: translate(100%, -50%);
            transform: translate(100%, -50%); }
    .contentsList > div.update h4 {
      position: relative;
      display: inline-block; }
      .contentsList > div.update h4:before {
        position: absolute;
        right: -10px;
        top: 48%;
        content: 'UPDATE!';
        display: block;
        color: #ff6600;
        font-weight: bold;
        font-size: 12px;
        line-height: 1.1;
        font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
        -ms-transform: translate(100%, -50%);
            transform: translate(100%, -50%); }
    .contentsList > div p {
      margin: 0;
      padding: 0; }
    .contentsList > div div {
      margin: 0 !important; }
    .contentsList > div h4 {
      margin: 5px 0; }
      .contentsList > div h4 a {
        position: relative;
        display: block;
        padding: 0 0 0 14px;
        font-size: 14px;
        font-weight: bold; }
        .contentsList > div h4 a:before {
          content: '';
          display: block;
          width: 6px;
          height: 8px;
          background: url("/assets/css/images/common/arrow_s_p_r.svg") left top no-repeat;
          background-size: contain;
          position: absolute;
          left: 0;
          top: 6px; }
    .contentsList > div .disc {
      list-style-type: disc;
      padding: 0 0 0 15px;
      margin: 0; }
      .contentsList > div .disc li {
        font-size: 13px;
        line-height: 26px; }
    .contentsList > div > div p {
      font-size: 13px;
      line-height: 20px; }
      .contentsList > div > div p:last-child {
        margin: 0 0 4px; }

.programList {
  border-bottom: none !important;
  margin-bottom: 90px !important; }
  .programList > div {
    margin: 0 0 40px !important; }
    .programList > div h4.grayTitle {
      font-size: 16px;
      line-height: 1.5;
      background: #f2f2f2;
      border-top: 1px solid #dadada;
      padding: 8px 10px;
      margin: 0 0 15px; }
      .programList > div h4.grayTitle a {
        padding: 0; }
        .programList > div h4.grayTitle a:before {
          content: none; }
      .programList > div h4.grayTitle sup {
        font-size: 10px; }
    .programList > div p {
      margin: 0;
      font-size: 14px;
      line-height: 1.7; }
      .programList > div p.bold {
        font-weight: bold; }
    .programList > div ol {
      margin: 0; }
    .programList > div .indent {
      padding: 0 10px; }
    .programList > div .subInfo {
      font-weight: bold; }
  .programList > div + h3 {
    margin-top: 55px !important; }
  .programList.mgNarrow > div {
    margin: 0 0 30px !important; }
  .programList.getsurei > div h4 a:after {
    content: '';
    background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    width: 12px;
    height: 13px;
    margin: 0 0 0 5px;
    position: relative;
    top: 2px; }

.arrowLink {
  margin: 0 0 5px;
  position: relative;
  padding: 0 0 0 12px; }
  .arrowLink a[target="_blank"]:after {
    content: '';
    display: inline-block;
    width: 12px;
    height: 10px;
    margin: 0 0 0 4px;
    background-image: url("/assets/css/images/common/icn_blank.svg");
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain; }
  .arrowLink a[href$=".pdf"]:after {
    content: '';
    background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    width: 12px !important;
    height: 13px !important;
    margin: 0 0 0 5px;
    position: relative;
    top: 2px; }
  .arrowLink a[href$=".xls"]:after,
  .arrowLink a[href$=".xlsx"]:after {
    content: '';
    background-image: url("images/common/icn_xls.svg") !important;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    width: 12px !important;
    height: 13px !important;
    margin: 0 0 0 5px;
    position: relative;
    top: 2px; }
  .arrowLink a[href$=".docx"]:after,
  .arrowLink a[href$=".doc"]:after {
    content: '';
    background-image: url("images/common/icn_docx.svg") !important;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    width: 12px !important;
    height: 13px !important;
    margin: 0 0 0 5px;
    position: relative;
    top: 2px; }
  .arrowLink:before {
    content: '';
    display: block;
    width: 6px;
    height: 9px;
    background: url("/assets/css/images/common/arrow_s_b_r.svg") no-repeat center center;
    background-size: contain;
    position: absolute;
    left: 0;
    top: 5px;
    margin: 0 0 0; }
  .arrowLink.arrowPurple:before {
    background: url("/assets/css/images/common/arrow_s_p_r.svg") no-repeat center center;
    background-size: contain; }
  .arrowLink.boxLink {
    padding: 7px 12px 8px 23px !important;
    border: 1px solid #dbdbdb;
    display: inline-block; }
    .arrowLink.boxLink:before {
      left: 11px !important;
      top: 50% !important;
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%); }
    .arrowLink.boxLink a {
      display: block; }

.shoulderList {
  border-bottom: none !important;
  margin: 0 0 55px !important; }
  .shoulderList .arrowLink {
    margin-top: 35px !important; }
  .shoulderList h3 {
    margin-bottom: 15px !important; }
  .shoulderList > section {
    border-bottom: none !important; }
    .shoulderList > section:last-of-type {
      margin: 0 !important; }
    .shoulderList > section h4 {
      padding: 0 !important;
      font-size: 14px !important;
      background: #f7f7f7;
      border-top: 1px solid #dfdfdf;
      margin: 0 0 15px !important;
      border-bottom: none !important; }
      .shoulderList > section h4:before {
        content: none !important; }
      .shoulderList > section h4 .shoulder {
        color: #fff;
        display: inline-block;
        line-height: 1;
        width: 93px;
        text-align: center;
        padding: 9px 10px 9px;
        box-sizing: border-box;
        margin: -1px 12px 0 0; }
    .shoulderList > section > p {
      margin: 0 !important;
      font-weight: bold;
      font-size: 16px !important; }
    .shoulderList > section .subInfo {
      text-align: right; }
      .shoulderList > section .subInfo dd p {
        margin: 0; }
  .shoulderList.blue h4 .shoulder {
    background: #74a8d4;
    border-top: 1px solid #6998bf; }
  .shoulderList.purple h4 .shoulder {
    background: #9a8dce;
    border-top: 1px solid #8b7fba; }

.libList {
  margin-bottom: 56px !important;
  border-bottom: none !important; }
  .libList:last-of-type {
    margin-bottom: 20px !important; }
  .libList .book {
    border-left: 1px solid #d8d8d8;
    border-right: 1px solid #d8d8d8;
    margin-bottom: 0 !important;
    padding-bottom: 12px; }
    .libList .book:last-of-type {
      border-bottom: 1px solid #d8d8d8 !important; }
    .libList .book h3 {
      margin: 0;
      background: #f7f7f7;
      padding: 0;
      font-size: 14px;
      position: relative;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center;
      border-top: 1px solid #d8d8d8; }
      .libList .book h3:before {
        content: '';
        display: block;
        width: 5px;
        background: #916bce;
        position: absolute;
        left: -0px;
        top: -0px;
        bottom: 0; }
      .libList .book h3 .shoulder {
        font-weight: normal;
        padding: 10px 10px 10px 15px;
        min-width: 78px;
        box-sizing: border-box;
        position: relative; }
      .libList .book h3 .name {
        padding: 10px;
        position: relative;
        font-size: 16px;
        line-height: 22px; }
        .libList .book h3 .name:before {
          content: '';
          display: block;
          width: 1px;
          background: #d8d8d8;
          position: absolute;
          left: 0;
          top: -1px;
          bottom: 0; }
        .libList .book h3 .name small {
          display: block;
          font-size: 13px;
          line-height: 18px; }
    .libList .book p {
      margin: 0 0 0 75px;
      padding: 12px 12px 0 16px; }
      .libList .book p.dataList {
        border-top: 1px dotted #d8d8d8;
        letter-spacing: -.4em;
        margin-top: 12px;
        padding: 0 0 0 60px;
        position: relative; }
        .libList .book p.dataList a[href$=".pdf"]:after {
          content: '';
          background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
          background-position: left center;
          background-repeat: no-repeat;
          background-size: contain;
          display: inline-block;
          width: 12px !important;
          height: 13px !important;
          margin: 0 0 0 5px;
          position: relative;
          top: 2px; }
        .libList .book p.dataList a[href$=".docx"]:after,
        .libList .book p.dataList a[href$=".doc"]:after {
          content: '';
          background-image: url("images/common/icn_docx.svg") !important;
          background-position: left center;
          background-repeat: no-repeat;
          background-size: contain;
          display: inline-block;
          width: 12px !important;
          height: 13px !important;
          margin: 0 0 0 5px;
          position: relative;
          top: 2px; }
        .libList .book p.dataList a[href$=".xls"]:after,
        .libList .book p.dataList a[href$=".xlsx"]:after {
          content: '';
          background-image: url("images/common/icn_xls.svg") !important;
          background-position: left center;
          background-repeat: no-repeat;
          background-size: contain;
          display: inline-block;
          width: 12px !important;
          height: 13px !important;
          margin: 0 0 0 5px;
          position: relative;
          top: 2px; }
        .libList .book p.dataList:empty {
          display: none; }
        .libList .book p.dataList:before {
          content: '資料：';
          display: block;
          letter-spacing: 0;
          position: absolute;
          left: 16px;
          margin-top: 12px; }
        .libList .book p.dataList a {
          display: inline-block;
          letter-spacing: normal;
          background: #e6e6e6;
          font-size: 13px;
          line-height: 13px;
          border: 1px solid #ccc;
          padding: 4px 10px;
          margin: 12px 8px 0 0;
          box-sizing: border-box; }
    .libList .book.outOfStock .detail:after {
      content: '在庫切れ';
      display: inline-block;
      color: #fff;
      background: #ff6600;
      line-height: 1;
      font-size: 13px;
      line-height: 13px;
      padding: 4px 6px;
      margin-left: 10px; }

.note {
  margin-top: 20px !important;
  margin-bottom: 30px !important;
  font-size: 12px !important;
  line-height: 18px !important; }
  .note p {
    margin: 0; }

.seminarTb {
  font-size: 13px;
  line-height: 19px;
  margin: 0 0 24px; }
  .seminarTb th {
    box-sizing: border-box;
    padding: 17px 0 14px; }
    .seminarTb th:nth-child(1) {
      width: 45px; }
    .seminarTb th:nth-child(2) {
      width: 160px; }
    .seminarTb th:nth-child(3) {
      width: 112px; }
    .seminarTb th:nth-child(4) {
      width: 140px; }
    .seminarTb th:nth-child(5) {
      width: 50px; }
    .seminarTb th:nth-child(6) {
      width: 92px; }
    .seminarTb th:nth-child(7) {
      width: 49px; }
    .seminarTb th:nth-child(8) {
      width: 48px; }
  .seminarTb td {
    padding: 9px 10px 7px; }
    .seminarTb td a[target="_blank"]:after {
      content: '';
      display: inline-block;
      width: 12px;
      height: 10px;
      margin: 0 0 0 4px;
      background-image: url("/assets/css/images/common/icn_blank.svg");
      background-position: left center;
      background-repeat: no-repeat;
      background-size: contain; }
    .seminarTb td a[href$=".pdf"]:after {
      content: '';
      background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
      background-position: left center;
      background-repeat: no-repeat;
      background-size: contain;
      display: inline-block;
      width: 12px !important;
      height: 13px !important;
      margin: 0 0 0 5px;
      position: relative;
      top: 2px; }
    .seminarTb td:nth-child(1) {
      text-align: center; }
    .seminarTb td:nth-child(8) {
      text-align: center; }
      .seminarTb td:nth-child(8) span {
        display: block;
        position: relative; }
        .seminarTb td:nth-child(8) span:before {
          content: '';
          display: block;
          width: 14px;
          height: 14px;
          background: url("images/common/icn_state.png");
          background-position: -31px 0;
          position: absolute;
          left: 50%;
          top: 0;
          -ms-transform: translate(-50%, 0);
              transform: translate(-50%, 0); }
    .seminarTb td a {
      display: inline; }
    .seminarTb td .noteNum {
      color: #f96600;
      display: inline-block;
      font-size: 11px;
      font-weight: bold;
      margin-left: 5px; }
    .seminarTb td .noteText {
      color: #f96600; }
  .seminarTb .closed td {
    background: #ededed;
    color: #808080; }
    .seminarTb .closed td:nth-child(2):before {
      content: '終了';
      background: #999999;
      color: #fff;
      font-size: 10px;
      line-height: 1;
      display: inline-block;
      padding: 3px 4px;
      margin-right: 4px; }
    .seminarTb .closed td:nth-child(8) span:before {
      content: '済';
      background: none; }
  .seminarTb .deadline td:nth-child(2) .noteText:after {
    content: ' ※受付を締切ました'; }
  .seminarTb .deadline td:nth-child(8) span {
    position: relative;
    display: block; }
    .seminarTb .deadline td:nth-child(8) span:before {
      content: '';
      display: block;
      width: 14px;
      height: 14px;
      background: url("images/common/icn_state.png");
      background-position: -62px 0;
      position: absolute;
      left: 50%;
      top: 0;
      -ms-transform: translate(-50%, 0);
          transform: translate(-50%, 0); }
  .seminarTb .few td:nth-child(8) span {
    position: relative;
    display: block; }
    .seminarTb .few td:nth-child(8) span:before {
      content: '';
      display: block;
      width: 16px;
      height: 14px;
      background: url("images/common/icn_state.png");
      background-position: 0 0;
      position: absolute;
      left: 50%;
      top: 0;
      -ms-transform: translate(-50%, 0);
          transform: translate(-50%, 0); }

.iconBox {
  border: 1px solid #d8d8d8;
  padding: 25px 23px 23px;
  margin: 0 0 35px; }
  .iconBox h3 {
    font-size: 14px;
    line-height: 1;
    font-weight: bold;
    margin: 0 0 20px;
    padding: 0; }
  .iconBox p {
    margin: 0;
    padding: 0; }
  .iconBox .listWrap {
    overflow: hidden;
    margin: 0 0 17px; }
  .iconBox ul {
    list-style-type: none;
    padding: 0;
    margin: 0; }
    .iconBox ul li {
      float: left;
      margin: 0 30px 0 0;
      overflow: hidden;
      line-height: 1; }
      .iconBox ul li span {
        width: 16px;
        height: 14px;
        line-height: 1;
        float: left;
        display: inline-block;
        margin: 0 28px 0 0; }
        .iconBox ul li span:after {
          content: '…';
          display: block;
          margin: 0 10px 0 0;
          padding: 0 0 0 21px; }
      .iconBox ul li:nth-child(1) span {
        background: url("images/common/icn_state.png") no-repeat;
        background-position: -31px 0; }
      .iconBox ul li:nth-child(2) span {
        background: url("images/common/icn_state.png") no-repeat;
        background-position: 0 0; }
      .iconBox ul li:nth-child(3) span {
        background: url("images/common/icn_state.png") no-repeat;
        background-position: -61px 0; }
  .iconBox p.date {
    margin: 0;
    padding: 0;
    line-height: 1;
    float: left; }
    .iconBox p.date:after {
      content: '';
      display: block;
      clear: both;
      clear: right; }

.subPage #container main .singleColumn > h3 {
  padding: 0;
  font-size: 14px;
  margin: 0 0 10px;
  padding: 0; }
  .subPage #container main .singleColumn > h3:before {
    background: none; }

.subPage #container main .singleColumn p {
  font-size: 14px;
  line-height: 25px; }

.subPage #container main .singleColumn ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
  font-size: 14px;
  line-height: 25px; }

.noteArea {
  margin: 0 0 22px; }
  .noteArea p {
    overflow: hidden;
    margin: 0;
    padding: 0 0 0 35px;
    position: relative;
    font-size: 14px;
    line-height: 30px; }
    .noteArea p span {
      color: #f96600;
      display: block;
      font-weight: bold;
      position: absolute;
      left: 0;
      top: 0; }

.orangeText {
  color: #f96600; }

.subPage #container main .arrowLinkList {
  margin: 0 0 30px;
  padding: 0;
  list-style-type: none; }

.subPage #container main .checkedList {
  margin: 0 0 30px;
  padding: 0;
  list-style-type: none; }
  .subPage #container main .checkedList a[target="_blank"]:after {
    content: '';
    display: inline-block;
    width: 12px;
    height: 10px;
    margin: 0 0 0 4px;
    background-image: url("/assets/css/images/common/icn_blank.svg");
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain; }
  .subPage #container main .checkedList a[href$=".pdf"]:after {
    content: '';
    background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    width: 12px !important;
    height: 13px !important;
    margin: 0 0 0 5px;
    position: relative;
    top: 2px; }
  .subPage #container main .checkedList li {
    margin: 6px 0;
    padding: 0 0 0 18px;
    position: relative; }
    .subPage #container main .checkedList li:before {
      content: '';
      display: block;
      width: 12px;
      height: 9px;
      background: url("images/common/icn_checked.svg");
      position: absolute;
      left: 0;
      top: 50%;
      margin-top: -6px; }

.subPage #container main .numList {
  padding: 0 0 0 1.4em;
  margin: 0 0 30px; }
  .subPage #container main .numList a[target="_blank"]:after {
    content: '';
    display: inline-block;
    width: 12px;
    height: 10px;
    margin: 0 0 0 4px;
    background-image: url("/assets/css/images/common/icn_blank.svg");
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain; }
  .subPage #container main .numList a[href$=".pdf"]:after {
    content: '';
    background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    width: 12px !important;
    height: 13px !important;
    margin: 0 0 0 5px;
    position: relative;
    top: 2px; }
  .subPage #container main .numList li {
    margin: 8px 0; }

.subPage #container main .slashArea {
  background: url("images/common/slash_base.png");
  border: 1px solid #d8d8d8;
  padding: 12px 23px 9px;
  margin: 0 0 30px;
  line-height: 1.7; }
  .subPage #container main .slashArea a[target="_blank"]:after {
    content: '';
    display: inline-block;
    width: 12px;
    height: 10px;
    margin: 0 0 0 4px;
    background-image: url("/assets/css/images/common/icn_blank.svg");
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain; }
  .subPage #container main .slashArea a[href$=".pdf"]:after {
    content: '';
    background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    width: 12px !important;
    height: 13px !important;
    margin: 0 0 0 5px;
    position: relative;
    top: 2px; }
  .subPage #container main .slashArea ul {
    margin: 0;
    list-style-type: none;
    padding: 1px 0; }
    .subPage #container main .slashArea ul li {
      margin: 10px 0;
      padding: 0 0 0 18px;
      position: relative; }
      .subPage #container main .slashArea ul li:before {
        content: '';
        display: block;
        width: 12px;
        height: 9px;
        background: url("images/common/icn_checked.svg");
        position: absolute;
        left: 0;
        top: 50%;
        margin-top: -6px; }
  .subPage #container main .slashArea + section {
    margin-top: 40px; }
  .subPage #container main .slashArea + section > h2.bdrTitle {
    padding-top: 13px !important; }
    .subPage #container main .slashArea + section > h2.bdrTitle:before {
      top: 12px; }
    .subPage #container main .slashArea + section > h2.bdrTitle:after {
      top: 12px; }
  section .subPage #container main .slashArea {
    margin-bottom: 55px; }

.subPage #container main .slashOrangeArea {
  background: url("images/common/slash_orange_base.png");
  padding: 5px; }
  .subPage #container main .slashOrangeArea .inner {
    background: #fff;
    padding: 19px 18px;
    margin-bottom: 0; }
    .subPage #container main .slashOrangeArea .inner p {
      margin: 0;
      text-align: center;
      font-weight: bold;
      color: #ff6600;
      font-size: 16px; }

.subPage #container main .pageList h2 {
  margin: 0; }

.subPage #container main .pageList h3 {
  margin: 0;
  background: #f7f7f7;
  border-left: 1px solid #d8d8d8;
  border-right: 1px solid #d8d8d8;
  padding: 10px 0 10px 15px;
  font-size: 14px; }

.subPage #container main .pageList ul {
  border-left: 1px solid #d8d8d8;
  border-right: 1px solid #d8d8d8;
  border-bottom: 1px solid #d8d8d8;
  margin: 0;
  padding: 0;
  list-style-type: none; }
  .subPage #container main .pageList ul li {
    border-bottom: 1px dotted #d8d8d8;
    margin: 0 15px;
    padding: 17px 0 16px; }
    .subPage #container main .pageList ul li:last-child {
      border-bottom: none; }
    .subPage #container main .pageList ul li h4 {
      margin: 0 0 3px;
      padding: 0;
      font-size: 16px; }
      .subPage #container main .pageList ul li h4 a[href$=".pdf"]:after {
        top: 0; }
      .subPage #container main .pageList ul li h4 .linkOthers {
        display: inline-block;
        border: 1px solid #d8d8d8;
        background: #e6e6e6;
        font-weight: normal;
        font-size: 12px;
        line-height: 12px;
        padding: 1px 6px 3px 5px;
        margin: 0 0 0 8px;
        position: relative;
        top: -1px;
        box-sizing: border-box; }
        .subPage #container main .pageList ul li h4 .linkOthers.guideline:before {
          content: '概要'; }
          html[lang=en] .subPage #container main .pageList ul li h4 .linkOthers.guideline:before {
            content: 'Summary'; }
        .subPage #container main .pageList ul li h4 .linkOthers[href$=".pdf"]:after {
          top: 2px;
          right: 1px; }
    .subPage #container main .pageList ul li p {
      margin: 0;
      padding: 0;
      text-align: right; }
      .subPage #container main .pageList ul li p span {
        display: inline-block;
        margin: 0 0 0 15px;
        font-size: 13px; }
      .subPage #container main .pageList ul li p .grayRnd {
        background: #ededed;
        border-radius: 8px;
        height: 17px;
        line-height: 17px;
        padding: 0 8px;
        font-size: 11px; }

.subPage #container main .pageList > p {
  text-align: right;
  margin: 20px 0 0; }
  .subPage #container main .pageList > p a {
    position: relative;
    padding-left: 30px; }
    .subPage #container main .pageList > p a:before {
      content: '';
      width: 24px;
      height: 24px;
      display: inline-block;
      background: url("images/common/icn_pdf_l.png");
      position: absolute;
      left: 0;
      top: -5px;
      transition: all 0.3s; }
    .subPage #container main .pageList > p a:hover:before {
      opacity: 0.8; }

.subPage #container main .lectureInfo {
  background: #f2f2f2;
  border: 1px solid #d8d8d8;
  padding: 5px;
  margin: 0 0 40px;
  width: 100%; }
  .subPage #container main .lectureInfo .column {
    border-bottom: 1px solid #d8d8d8;
    display: table;
    width: 100%; }
    .subPage #container main .lectureInfo .column > div {
      display: table-cell; }
      .subPage #container main .lectureInfo .column > div.num {
        background: url("images/events/getsurei/bg_blue.png");
        width: 143px;
        height: 100%;
        vertical-align: middle;
        text-align: center; }
        .subPage #container main .lectureInfo .column > div.num p {
          font-weight: bold;
          color: #fff; }
          .subPage #container main .lectureInfo .column > div.num p span {
            font-size: 18px; }
    .subPage #container main .lectureInfo .column h3 {
      margin: 0; }
  .subPage #container main .lectureInfo div {
    margin-bottom: 0; }
    .subPage #container main .lectureInfo div.apply .inner {
      padding: 25px 20px; }
    .subPage #container main .lectureInfo div.apply h3 {
      margin: 0;
      font-weight: bold;
      font-size: 14px;
      line-height: 1.4;
      box-sizing: border-box;
      padding: 8px 13px;
      position: relative;
      margin: 0 0 15px;
      background: #fcf6e1; }
      .subPage #container main .lectureInfo div.apply h3:before {
        content: '';
        display: block;
        width: 4px;
        background: #c4b47d;
        border-top: 1px solid #c4b47d;
        border-bottom: 1px solid #c4b47d;
        position: absolute;
        left: -1px;
        top: -1px;
        bottom: 0; }
    .subPage #container main .lectureInfo div.apply .texts {
      border-bottom: 1px dotted #dbdbdb;
      margin-bottom: 15px;
      padding-bottom: 15px; }
      .subPage #container main .lectureInfo div.apply .texts p {
        margin: 0 0 5px;
        font-weight: bold; }
        .subPage #container main .lectureInfo div.apply .texts p a[target="_blank"]:after {
          content: '';
          display: inline-block;
          width: 12px;
          height: 10px;
          margin: 0 0 0 4px;
          background-image: url("/assets/css/images/common/icn_blank.svg");
          background-position: left center;
          background-repeat: no-repeat;
          background-size: contain; }
        .subPage #container main .lectureInfo div.apply .texts p a[href$=".pdf"]:after {
          content: '';
          background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
          background-position: left center;
          background-repeat: no-repeat;
          background-size: contain;
          display: inline-block;
          width: 12px !important;
          height: 13px !important;
          margin: 0 0 0 5px;
          position: relative;
          top: 2px; }
        .subPage #container main .lectureInfo div.apply .texts p a[href$=".docx"]:after,
        .subPage #container main .lectureInfo div.apply .texts p a[href$=".doc"]:after {
          content: '';
          background-image: url("images/common/icn_docx.svg") !important;
          background-position: left center;
          background-repeat: no-repeat;
          background-size: contain;
          display: inline-block;
          width: 12px !important;
          height: 13px !important;
          margin: 0 0 0 5px;
          position: relative;
          top: 2px; }
        .subPage #container main .lectureInfo div.apply .texts p:last-of-type {
          margin: 0; }
        .subPage #container main .lectureInfo div.apply .texts p a {
          padding: 0 8px;
          display: inline-block;
          font-weight: normal; }
        .subPage #container main .lectureInfo div.apply .texts p span {
          font-weight: normal; }
    .subPage #container main .lectureInfo div.apply .note p {
      margin: 0;
      font-size: 12px;
      line-height: 18px; }
  .subPage #container main .lectureInfo .inner {
    background: #fff;
    padding: 20px; }
    .subPage #container main .lectureInfo .inner .subInfo dd p {
      margin: 0; }

.subPage #container main > section .bdrBox {
  border: 1px solid #d8d8d8;
  padding: 25px 23px;
  margin: 0 0 40px; }
  .subPage #container main > section .bdrBox .inner {
    margin: 0; }
  .subPage #container main > section .bdrBox h4 {
    font-size: 16px;
    line-height: 1.4;
    border-bottom: 1px dotted #ccc;
    font-weight: bold;
    padding: 0 0 3px 13px;
    margin: 0 0 13px;
    position: relative; }
    .subPage #container main > section .bdrBox h4:before {
      content: '';
      display: block;
      width: 4px;
      background: #8f7ed5;
      position: absolute;
      left: 0;
      top: 0;
      bottom: 8px !important; }
  .subPage #container main > section .bdrBox p {
    margin: 0; }
  .subPage #container main > section .bdrBox .note {
    font-size: 12px;
    margin-top: 4px; }

.subPage #container main .basicTb {
  border: 1px solid #ebebeb;
  width: 100%; }
  .subPage #container main .basicTb a[target="_blank"]:after {
    content: '';
    display: inline-block;
    width: 12px;
    height: 10px;
    margin: 0 0 0 4px;
    background-image: url("/assets/css/images/common/icn_blank.svg");
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain; }
  .subPage #container main .basicTb a[href$=".pdf"]:after {
    content: '';
    background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    width: 12px !important;
    height: 13px !important;
    margin: 0 0 0 5px;
    position: relative;
    top: 2px; }
  .subPage #container main .basicTb a[href$=".docx"]:after,
  .subPage #container main .basicTb a[href$=".doc"]:after {
    content: '';
    background-image: url("images/common/icn_docx.svg") !important;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    width: 12px !important;
    height: 13px !important;
    margin: 0 0 0 5px;
    position: relative;
    top: 2px; }
  .subPage #container main .basicTb a[href$=".xls"]:after,
  .subPage #container main .basicTb a[href$=".xlsx"]:after {
    content: '';
    background-image: url("images/common/icn_xls.svg") !important;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    width: 12px !important;
    height: 13px !important;
    margin: 0 0 0 5px;
    position: relative;
    top: 2px; }
  .subPage #container main .basicTb th {
    width: 120px;
    background: #f7f7f7;
    font-size: 14px;
    font-weight: bold;
    padding: 20px;
    border-bottom: 1px solid #ebebeb;
    box-sizing: border-box; }
  .subPage #container main .basicTb td {
    padding: 20px;
    border-bottom: 1px solid #ebebeb; }

.subPage #container main .grayBox {
  background: #f7f7f7;
  border: 1px solid #ebebeb;
  padding: 25px;
  margin: 0 0 30px; }
  .subPage #container main .grayBox p {
    margin: 0; }
  .subPage #container main .grayBox > div {
    margin: 0 0 24px; }
    .subPage #container main .grayBox > div h4 {
      font-size: 14px;
      line-height: 1.4;
      border-bottom: 1px dotted #ccc;
      font-weight: bold;
      padding: 0 0 3px;
      margin: 0 0 5px; }
    .subPage #container main .grayBox > div p {
      font-size: 14px;
      line-height: 1.5; }

.subPage #container main .pdfNote {
  text-align: right;
  margin: 40px 0 0; }
  .subPage #container main .pdfNote a {
    position: relative;
    padding-left: 30px; }
    .subPage #container main .pdfNote a:before {
      content: '';
      width: 24px;
      height: 24px;
      display: inline-block;
      background: url("images/common/icn_pdf_l.png");
      position: absolute;
      left: 0;
      top: -5px;
      transition: all 0.3s; }
    .subPage #container main .pdfNote a:hover:before {
      opacity: 0.8; }

.subPage #container main .eventList {
  list-style-type: none;
  padding-left: 0;
  margin: 0 0 80px;
  border-top: 1px solid #dbdbdb;
  border-bottom: 1px solid #dbdbdb; }
  .subPage #container main .eventList li {
    border-bottom: 1px dotted #dbdbdb;
    padding: 12px 10px 11px; }
    .subPage #container main .eventList li:last-child {
      border-bottom: none; }
    .subPage #container main .eventList li .date {
      min-width: 277px;
      display: inline-block;
      position: relative;
      margin-right: 17px; }
      .subPage #container main .eventList li .date:after {
        content: '';
        background: #ccc;
        font-size: 12px;
        line-height: 1;
        color: #fff;
        display: block;
        text-align: center;
        box-sizing: border-box;
        min-width: 84px;
        padding: 4px 10px 5px 10px;
        position: absolute;
        right: 0;
        top: 0; }
    .subPage #container main .eventList li a {
      line-height: 24px; }
    .subPage #container main .eventList li.comingsoon .date:after {
      content: '受付開始前';
      background: #81b593; }
    .subPage #container main .eventList li.accepting .date:after {
      content: '受付中';
      background: #74a8d4; }
    .subPage #container main .eventList li.closing .date:after {
      content: '受付締切';
      background: #ff6600; }
    .subPage #container main .eventList li.ending {
      background: #f2f2f2; }
      .subPage #container main .eventList li.ending .date:after {
        content: '開催終了';
        background: #999999; }

.subPage #container main .redBtn a {
  display: block;
  text-align: center;
  width: 344px;
  padding: 14px 0;
  margin: 0 auto;
  background: #eb381d;
  font-weight: bold;
  font-size: 16px;
  line-height: 16px;
  letter-spacing: 0.2em;
  border-radius: 5px;
  box-shadow: 0 1px 0 #b3210b;
  color: #fff;
  position: relative; }
  .subPage #container main .redBtn a:after {
    content: '';
    width: 5px;
    height: 7px;
    display: block;
    background: url("images/common/arrow_s_w_r.svg") no-repeat;
    background-size: contain;
    position: absolute;
    right: 15px;
    top: 50%;
    margin: -3px 0 0; }

.subPage #container main .redBtn a[target="_blank"]:after {
  background: url("images/common/icn_blank_w.svg") no-repeat;
  width: 12px;
  height: 10px;
  margin-top: -5px; }

.brankSS {
  display: block;
  clear: both;
  padding-bottom: 5px;
  width: 100%; }

.brankS {
  display: block;
  clear: both;
  padding-bottom: 10px;
  width: 100%; }

.brankSM {
  display: block;
  clear: both;
  padding-bottom: 15px;
  width: 100%; }

.brankM {
  display: block;
  clear: both;
  padding-bottom: 30px;
  width: 100%; }

.brankL {
  display: block;
  clear: both;
  padding-bottom: 50px;
  width: 100%; }

.brankSS + p {
  margin-top: 0; }

.brankSS + ul {
  margin-top: 0; }

.brankS + p {
  margin-top: 0; }

.brankS + ul {
  margin-top: 0; }

.brankL + p {
  margin-top: 0; }

body.top #container #mainBanners {
  width: 100%;
  max-width: 1200px;
  min-width: 1020px;
  height: 420px;
  overflow: hidden;
  margin: 0 auto;
  position: relative; }
  body.top #container #mainBanners .slide {
    position: absolute;
    left: 50%;
    top: 0;
    -ms-transform: translate(-50%, 0);
        transform: translate(-50%, 0);
    width: 1200px; }
    body.top #container #mainBanners .slide li {
      position: absolute;
      left: 0;
      top: 0;
      display: none; }
      body.top #container #mainBanners .slide li a img {
        transition: all 0.3s;
        display: block; }
      body.top #container #mainBanners .slide li a:hover img {
        opacity: 0.8; }
      body.top #container #mainBanners .slide li:first-child {
        display: block; }
  body.top #container #mainBanners .pager {
    position: absolute;
    left: 50%;
    bottom: 24px;
    z-index: 10;
    margin: 0 0 0 -495px; }
    body.top #container #mainBanners .pager li {
      width: 20px;
      height: 6px;
      border: 1px solid #dfdfdf;
      box-sizing: border-box;
      background: #fff;
      cursor: pointer;
      float: left;
      margin: 0 4px 0 0; }
      body.top #container #mainBanners .pager li.cur {
        background: #8f7ed5; }
  body.top #container #mainBanners #importantInfo {
    position: absolute;
    right: 88px;
    bottom: 55px;
    width: 330px;
    height: 274px; }
    body.top #container #mainBanners #importantInfo h2 {
      background: #906bce;
      background: linear-gradient(to right, #906bce 0%, #7084cf 100%);
      color: #fff;
      font-size: 16px;
      font-weight: bold;
      padding: 15px;
      position: relative; }
      body.top #container #mainBanners #importantInfo h2:after {
        content: '';
        display: block;
        width: 100%;
        height: 3px;
        background: #5035ac;
        position: absolute;
        left: 0;
        top: 0;
        right: 0; }
      body.top #container #mainBanners #importantInfo h2 a {
        color: #fff;
        font-size: 14px;
        position: absolute;
        right: 15px;
        top: 50%;
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%);
        font-weight: normal; }
        body.top #container #mainBanners #importantInfo h2 a:before {
          background: url("images/common/arrow_s_w_r.svg") no-repeat center center; }
    body.top #container #mainBanners #importantInfo ul {
      background: #fff;
      height: 230px;
      overflow-y: scroll;
      padding: 6px 15px 0 15px; }
      body.top #container #mainBanners #importantInfo ul li {
        border-bottom: 1px dotted #dbdbdb; }
        body.top #container #mainBanners #importantInfo ul li a[target="_blank"] .text:after {
          content: '';
          display: inline-block;
          width: 12px;
          height: 10px;
          margin: 0 0 0 4px;
          background-image: url("/assets/css/images/common/icn_blank.svg") !important;
          background-position: left center;
          background-repeat: no-repeat;
          background-size: contain; }
        body.top #container #mainBanners #importantInfo ul li a[href$=".pdf"] .text:after {
          content: '';
          background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
          background-position: left center;
          background-repeat: no-repeat;
          background-size: contain;
          display: inline-block;
          width: 12px;
          height: 13px;
          margin: 0 0 0 5px;
          position: relative;
          top: 2px; }
        body.top #container #mainBanners #importantInfo ul li a[href$=".docx"] .text:after,
        body.top #container #mainBanners #importantInfo ul li a[href$=".doc"] .text:after {
          content: '';
          background-image: url("images/common/icn_docx.svg") !important;
          background-position: left center;
          background-repeat: no-repeat;
          background-size: contain;
          display: inline-block;
          width: 12px;
          height: 13px;
          margin: 0 0 0 5px;
          position: relative;
          top: 2px; }
        body.top #container #mainBanners #importantInfo ul li a[href$=".xls"] .text:after,
        body.top #container #mainBanners #importantInfo ul li a[href$=".xlsx"] .text:after {
          content: '';
          background-image: url("images/common/icn_xls.svg") !important;
          background-position: left center;
          background-repeat: no-repeat;
          background-size: contain;
          display: inline-block;
          width: 12px;
          height: 13px;
          margin: 0 0 0 5px;
          position: relative;
          top: 2px; }
        body.top #container #mainBanners #importantInfo ul li.new .date {
          position: relative;
          display: inline-block; }
          body.top #container #mainBanners #importantInfo ul li.new .date:before {
            position: absolute;
            right: -10px;
            top: 48%;
            content: 'NEW!';
            display: block;
            color: #ff6600;
            font-weight: bold;
            font-size: 12px;
            line-height: 1.1;
            font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
            -ms-transform: translate(100%, -50%);
                transform: translate(100%, -50%); }
        body.top #container #mainBanners #importantInfo ul li span,
        body.top #container #mainBanners #importantInfo ul li a {
          padding: 10px 0;
          display: block; }
          body.top #container #mainBanners #importantInfo ul li span h3,
          body.top #container #mainBanners #importantInfo ul li a h3 {
            font-weight: bold;
            font-size: 14px;
            line-height: 14px;
            color: #333;
            margin-bottom: 8px; }
  .intra body.top #container #mainBanners {
    height: 520px; }

body.top #container #mainNav {
  width: 100%;
  max-width: 1200px;
  min-width: 1020px;
  overflow: hidden;
  margin: 0 auto;
  position: relative;
  background: url("/assets/css/images/common/noize_dark_gray.png");
  padding: 12px 0; }
  body.top #container #mainNav ul {
    overflow: hidden;
    width: 1024px;
    margin: 0 auto; }
    body.top #container #mainNav ul li {
      float: left;
      width: 333px;
      margin: 0 12px 0 0;
      box-sizing: border-box;
      position: relative; }
      body.top #container #mainNav ul li a {
        display: block;
        color: #fff;
        background: rgba(0, 0, 0, 0.8);
        height: 80px;
        box-sizing: border-box;
        padding: 30px 30px 30px 103px;
        font-size: 18px;
        line-height: 1;
        font-weight: bold;
        transition: all 0.3s;
        transform: translate3d(0, 0, 0); }
        body.top #container #mainNav ul li a:after {
          content: '';
          display: block;
          width: 17px;
          height: 30px;
          background: url("/assets/css/images/common/arrow_grad_r.svg") left top no-repeat;
          background-size: contain;
          position: absolute;
          right: 14px;
          top: 50%;
          -ms-transform: translate(0, -50%);
              transform: translate(0, -50%); }
        body.top #container #mainNav ul li a:hover {
          opacity: 0.6; }
      body.top #container #mainNav ul li:before {
        content: '';
        display: block;
        width: 1px;
        height: 80px;
        background: #181818;
        position: absolute;
        left: 88px;
        top: 0;
        z-index: 1; }
      body.top #container #mainNav ul li:after {
        content: '';
        display: block;
        width: 1px;
        height: 80px;
        background: #181818;
        position: absolute;
        right: 49px;
        top: 0; }
      body.top #container #mainNav ul li.general a:before {
        content: '';
        display: block;
        width: 44px;
        height: 57px;
        background: url("/assets/css/images/top/icon_grad1.svg") left top no-repeat;
        background-size: contain;
        position: absolute;
        left: 22px;
        top: 50%;
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%); }
      body.top #container #mainNav ul li.staff a:before {
        content: '';
        display: block;
        width: 54px;
        height: 45px;
        background: url("/assets/css/images/top/icon_grad2.svg") left top no-repeat;
        background-size: contain;
        position: absolute;
        left: 17px;
        top: 50%;
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%); }
      body.top #container #mainNav ul li.research a:before {
        content: '';
        display: block;
        width: 54px;
        height: 45px;
        background: url("/assets/css/images/top/icon_grad3.svg") left top no-repeat;
        background-size: contain;
        position: absolute;
        left: 17px;
        top: 50%;
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%); }
      body.top #container #mainNav ul li:last-child {
        margin: 0; }

body.top #container main.single {
  width: 1024px; }
  body.top #container main.single section {
    margin-bottom: 80px; }
    body.top #container main.single section#info {
      margin-bottom: 80px !important; }
      body.top #container main.single section#info h2 .arrowLink {
        font-size: 14px;
        line-height: 14px;
        color: #000;
        position: absolute;
        right: 0;
        top: 50%;
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%); }
      body.top #container main.single section#info .scroll {
        height: 170px; }
        body.top #container main.single section#info .scroll ul li splatean,
        body.top #container main.single section#info .scroll ul li a {
          display: -ms-flexbox;
          display: flex;
          -ms-flex-pack: justify;
              justify-content: space-between;
          -ms-flex-align: start;
              align-items: flex-start; }
          body.top #container main.single section#info .scroll ul li splatean .date:before,
          body.top #container main.single section#info .scroll ul li a .date:before {
            top: 45%; }
          body.top #container main.single section#info .scroll ul li splatean .text,
          body.top #container main.single section#info .scroll ul li a .text {
            width: 855px; }
    body.top #container main.single section .panels {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      margin: 0 -8px -32px; }
      body.top #container main.single section .panels .panel {
        position: relative;
        background: #f7f7f7;
        margin: 0 8px 32px;
        width: 100%; }
        body.top #container main.single section .panels .panel.column {
          width: 48%; }
        body.top #container main.single section .panels .panel h3 {
          border-bottom: 1px solid #dbdbdb;
          border-top: 2px solid #8f7ed5;
          font-size: 16px;
          font-weight: bold;
          color: #333333;
          padding: 12px 15px; }
        body.top #container main.single section .panels .panel .links {
          display: -ms-flexbox;
          display: flex;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
          padding: 8px 0; }
        body.top #container main.single section .panels .panel .arrowLink {
          width: 224px;
          margin: 8px 0 8px  20px; }
          body.top #container main.single section .panels .panel .arrowLink a {
            display: block;
            width: 100%;
            border-box: box-sizing;
            padding: 0 0 0 12px; }
    body.top #container main.single section .arrowLink {
      margin: 0 0 5px; }
      body.top #container main.single section .arrowLink a[target="_blank"]:after {
        content: '';
        display: inline-block;
        width: 12px;
        height: 10px;
        margin: 0 0 0 4px;
        background-image: url("/assets/css/images/common/icn_blank.svg");
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain; }
      body.top #container main.single section .arrowLink a[href$=".pdf"]:after {
        content: '';
        background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain;
        display: inline-block;
        width: 12px !important;
        height: 13px !important;
        margin: 0 0 0 5px;
        position: relative;
        top: 2px; }
      body.top #container main.single section .arrowLink a {
        position: relative; }
      body.top #container main.single section .arrowLink.boxLink {
        border: 1px solid #dbdbdb;
        margin-bottom: 56px !important; }
    body.top #container main.single section .boxLinks {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      padding-top: 24px;
      border-top: 1px solid #dbdbdb;
      margin-bottom: -16px; }
      body.top #container main.single section .boxLinks .arrowLink {
        width: 330px;
        box-sizing: border-box;
        margin-bottom: 16px !important;
        margin-right: 15px; }
        body.top #container main.single section .boxLinks .arrowLink:nth-child(3n) {
          margin-right: 0; }

body.top #container main #importantInfo {
  background: #f7f7f7;
  border: 1px solid #dbdbdb;
  padding: 15px 15px 11px;
  margin: 0 0 35px; }
  body.top #container main #importantInfo h2 {
    background: #f96600;
    color: #fff;
    display: inline-block;
    padding: 6px 9px 5px 28px;
    line-height: 1;
    position: relative;
    margin: 0 0 12px; }
    body.top #container main #importantInfo h2:after {
      content: '';
      display: block;
      width: 15px;
      height: 15px;
      background: url("/assets/css/images/common/icn_attention.svg") left top no-repeat;
      background-size: contain;
      position: absolute;
      left: 7px;
      top: 50%;
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%); }
  body.top #container main #importantInfo ul li {
    overflow: hidden;
    margin: 0 0 5px;
    color: #333; }
    body.top #container main #importantInfo ul li a[target="_blank"] p:last-child:after {
      content: '';
      display: inline-block;
      width: 12px;
      height: 10px;
      margin: 0 0 0 4px;
      background-image: url("/assets/css/images/common/icn_blank.svg") !important;
      background-position: left center;
      background-repeat: no-repeat;
      background-size: contain; }
    body.top #container main #importantInfo ul li a[href$=".pdf"] p:last-child:after {
      content: '';
      background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
      background-position: left center;
      background-repeat: no-repeat;
      background-size: contain;
      display: inline-block;
      width: 12px;
      height: 13px;
      margin: 0 0 0 5px;
      position: relative;
      top: 2px; }
    body.top #container main #importantInfo ul li:last-child {
      margin: 0; }
    body.top #container main #importantInfo ul li a {
      color: #333;
      display: block; }
      body.top #container main #importantInfo ul li a:hover {
        color: #8f7ed5; }
    body.top #container main #importantInfo ul li .date {
      font-size: 13px;
      font-weight: bold;
      float: left;
      margin: 0 10px 0 0;
      display: block; }
    body.top #container main #importantInfo ul li div {
      overflow: hidden; }
      body.top #container main #importantInfo ul li div .title {
        font-size: 13px;
        font-weight: bold; }
      body.top #container main #importantInfo ul li div .text {
        font-size: 13px; }

body.top #container main section h2 {
  font-size: 22px;
  font-weight: bold;
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  color: #000;
  line-height: 1;
  margin: 0 0 13px;
  position: relative; }
  body.top #container main section h2 .small {
    font-size: 11px;
    display: inline-block;
    padding: 0 0 0 12px; }
  body.top #container main section h2 .allList {
    font-size: 12px;
    position: absolute;
    right: 0;
    bottom: 2px;
    color: #333;
    padding: 0 0 0 12px;
    display: block; }
    body.top #container main section h2 .allList:hover {
      color: #8f7ed5; }
    body.top #container main section h2 .allList:after {
      content: '';
      width: 6px;
      height: 9px;
      background: url("/assets/css/images/common/arrow_s_b_r.svg") no-repeat center center;
      background-size: contain;
      position: absolute;
      left: 0;
      top: 50%;
      margin: -5px 0 0; }
  body.top #container main section h2.bdrTitle {
    border: none;
    background: none;
    padding: 3px 23px 5px 23px;
    margin: 0 0 16px;
    font-weight: bold;
    font-size: 20px; }
    body.top #container main section h2.bdrTitle:before {
      content: '';
      display: block;
      width: 5px;
      background: #916bce;
      background: #8f7ed5;
      border-top: 1px solid #8f7ed5;
      border-bottom: 1px solid #8f7ed5;
      position: absolute;
      left: -1px;
      top: -1px;
      bottom: 0; }
    body.top #container main section h2.bdrTitle:after {
      content: '';
      display: block;
      width: 1px;
      background: #c3c3c3;
      position: absolute;
      left: 7px;
      top: 0;
      bottom: 0; }

body.top #container main section#publications h2 {
  margin: 0 0 23px; }

body.top #container main section#publications ul {
  margin: 0 -15px 0 0; }
  body.top #container main section#publications ul li {
    float: left;
    width: 342px;
    border-top: 1px solid #dbdbdb;
    padding: 15px 0 0 95px;
    margin: 0 15px 29px 0;
    min-height: 128px;
    position: relative;
    box-sizing: border-box; }
    body.top #container main section#publications ul li:after {
      content: '';
      display: block;
      width: 79px;
      height: 1px;
      background: #8f7ed5;
      position: absolute;
      left: 0;
      top: -1px; }
    body.top #container main section#publications ul li:nth-child(3n) {
      clear: both; }
    body.top #container main section#publications ul li .thumb {
      display: block;
      position: absolute;
      left: 0;
      top: 15px; }
      body.top #container main section#publications ul li .thumb img {
        transition: all 0.3s;
        border: 1px solid #e6e6e6;
        box-sizing: border-box; }
      body.top #container main section#publications ul li .thumb:hover img {
        opacity: 0.8; }
    body.top #container main section#publications ul li h3 {
      font-weight: bold;
      font-size: 14px;
      line-height: 18px;
      color: #333;
      margin: 0 0 8px; }
    body.top #container main section#publications ul li p {
      font-size: 13px;
      line-height: 20px;
      margin: 0 0 10px; }
    body.top #container main section#publications ul li .text {
      color: #333; }
    body.top #container main section#publications ul li .link {
      margin: 0 0 5px; }
      body.top #container main section#publications ul li .link a {
        position: relative;
        display: block;
        padding: 0 0 0 10px;
        color: #1d4fb3; }
        body.top #container main section#publications ul li .link a:after {
          content: '';
          width: 6px;
          height: 9px;
          background: url("/assets/css/images/common/arrow_s_b_r.svg") no-repeat center center;
          background-size: contain;
          position: absolute;
          left: 0;
          top: 5px;
          margin: 0; }
        body.top #container main section#publications ul li .link a:hover {
          color: #2285db; }
  body.top #container main section#publications ul:after {
    content: '';
    display: block;
    clear: both; }

body.top #container aside img {
  max-width: 280px; }

body.top #container aside section {
  background: #f7f7f7;
  margin: 0 0 17px;
  border-bottom: 1px solid #e8e8e8; }
  body.top #container aside section h2 {
    font-size: 15px;
    border-bottom: 1px solid #e8e8e8;
    padding: 10px 20px;
    font-weight: bold;
    color: #333; }
  body.top #container aside section ul {
    padding: 16px 16px 8px; }
    body.top #container aside section ul li {
      margin: 0 0 8px;
      border: 1px solid #e6e6e6;
      background: #fff;
      font-size: 12px;
      line-height: 20px;
      position: relative; }
      body.top #container aside section ul li a {
        display: block;
        color: #4c4c4c;
        padding: 10px 15px 10px 20px; }
        body.top #container aside section ul li a strong {
          font-size: 14px;
          color: #1d4fb3;
          margin: 0 0 3px;
          display: block;
          position: relative;
          transition: 0.3s; }
          body.top #container aside section ul li a strong:before {
            content: '';
            display: block;
            width: 6px;
            height: 9px;
            background: url("/assets/css/images/common/arrow_s_b_r.svg") no-repeat center center;
            background-size: contain;
            position: absolute;
            left: -10px;
            top: 5px;
            margin: 0 0 0; }
        body.top #container aside section ul li a:hover strong {
          color: #2285db; }
        body.top #container aside section ul li a:last-child strong {
          margin: 0; }
        body.top #container aside section ul li a:hover p {
          color: #8f7ed5; }
        body.top #container aside section ul li a:hover dl {
          color: #8f7ed5; }
      body.top #container aside section ul li a[target="_blank"] strong:after {
        content: '';
        display: inline-block;
        width: 12px;
        height: 10px;
        margin: 0 0 0 4px;
        background-image: url("/assets/css/images/common/icn_blank.svg") !important;
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain; }
      body.top #container aside section ul li:last-child {
        margin: 0; }
    body.top #container aside section ul.bnr {
      padding: 0 16px 16px; }
      body.top #container aside section ul.bnr li {
        border: none; }
        body.top #container aside section ul.bnr li a {
          padding: 0; }
          body.top #container aside section ul.bnr li a img {
            transition: all 0.3s; }
          body.top #container aside section ul.bnr li a:hover img {
            opacity: 0.8; }
  body.top #container aside section a {
    position: relative;
    display: block; }
    body.top #container aside section a h2 {
      position: relative;
      transition: 0.3s; }
      html[lang=en] body.top #container aside section a h2 {
        padding: 30px 20px;
        border: none; }
      body.top #container aside section a h2:before {
        content: '';
        display: block;
        width: 6px;
        height: 9px;
        background: url("/assets/css/images/common/arrow_s_b_r.svg") no-repeat center center;
        background-size: contain;
        position: absolute;
        left: 10px;
        top: 50%;
        margin: -5px 0 0; }
        html[lang=en] body.top #container aside section a h2:before {
          display: none; }
      body.top #container aside section a h2:after {
        content: '';
        display: block;
        width: 100%;
        height: 2px;
        display: block;
        background: #8f7ed5;
        position: absolute;
        left: 0;
        top: 0; }
    body.top #container aside section a .text {
      padding: 10px 20px;
      color: #737676;
      font-size: 13px;
      line-height: 20px; }
    body.top #container aside section a:hover h2 {
      color: #8f7ed5; }
  body.top #container aside section img.icnDictionary {
    position: absolute;
    right: -10px;
    top: 8px; }
  body.top #container aside section img.icnSearch {
    position: absolute;
    right: -10px;
    top: 14px; }

.subPage #container article {
  padding: 40px 0 50px; }

.subPage #container aside #sideNav {
  padding: 4px;
  background: #e8e8e8;
  margin: 0 0 15px; }
  .subPage #container aside #sideNav h2 {
    border: 1px solid #808080;
    color: #fff;
    font-size: 15px;
    font-weight: bold;
    line-height: 1.1; }
    .subPage #container aside #sideNav h2 a {
      display: block;
      color: #fff;
      padding: 27px 10px 23px 10px;
      box-sizing: border-box;
      background: #595959;
      transition: all 0.3s; }
      .subPage #container aside #sideNav h2 a:hover {
        opacity: 0.8; }
  .subPage #container aside #sideNav h3 {
    background: #d8d8d8;
    color: #666666;
    box-sizing: border-box;
    padding: 18px 0 18px 15px;
    line-height: 1;
    font-weight: bold; }
  .subPage #container aside #sideNav > ul > li a[target="_blank"]:after {
    content: '';
    display: inline-block;
    width: 12px;
    height: 10px;
    margin: 0 0 0 4px;
    background-image: url("/assets/css/images/common/icn_blank.svg");
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain; }
  .subPage #container aside #sideNav > ul > li a[href$=".pdf"]:after {
    content: '';
    background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    width: 12px !important;
    height: 13px !important;
    margin: 0 0 0 5px;
    position: relative;
    top: 2px; }
  .subPage #container aside #sideNav > ul > li > a {
    display: block;
    position: relative;
    border-bottom: 1px solid #d8d8d8;
    border-left: 1px solid #d8d8d8;
    border-right: 1px solid #d8d8d8;
    font-size: 14px;
    background: #f2f2f2;
    box-sizing: border-box;
    padding: 15px 0 15px 28px;
    line-height: 1;
    transition: all 0.3s; }
    .subPage #container aside #sideNav > ul > li > a:before {
      content: '';
      display: block;
      width: 5px;
      height: 7px;
      background: url("/assets/css/images/common/arrow_s_p_r.svg") left top no-repeat;
      background-size: contain;
      position: absolute;
      left: 12px;
      top: 50%;
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%); }
    .subPage #container aside #sideNav > ul > li > a:hover {
      color: #fff;
      background: #8f7ed5;
      border-color: #8f7ed5; }
      .subPage #container aside #sideNav > ul > li > a:hover:before {
        content: '';
        display: block;
        width: 5px;
        height: 7px;
        background: url("/assets/css/images/common/arrow_s_rp_r.svg") left top no-repeat;
        background-size: contain; }
  .subPage #container aside #sideNav > ul > li .child {
    display: none; }
    .subPage #container aside #sideNav > ul > li .child li a {
      display: block;
      position: relative;
      border-bottom: 1px solid #d8d8d8;
      border-left: 1px solid #d8d8d8;
      border-right: 1px solid #d8d8d8;
      font-size: 14px;
      background: #fff;
      box-sizing: border-box;
      padding: 15px 0 15px 44px;
      line-height: 1;
      transition: all 0.3s; }
      .subPage #container aside #sideNav > ul > li .child li a:before {
        content: '';
        display: block;
        width: 5px;
        height: 7px;
        background: url("/assets/css/images/common/arrow_s_p_r.svg") left top no-repeat;
        background-size: contain;
        position: absolute;
        left: 29px;
        top: 50%;
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%); }
      .subPage #container aside #sideNav > ul > li .child li a:hover {
        background: #e0deff; }
    .subPage #container aside #sideNav > ul > li .child li.cur a {
      background: #e0deff; }
  .subPage #container aside #sideNav > ul > li.cur > a {
    color: #fff;
    background: #8f7ed5;
    border-color: #8f7ed5; }
    .subPage #container aside #sideNav > ul > li.cur > a:before {
      content: '';
      display: block;
      width: 5px;
      height: 7px;
      background: url("/assets/css/images/common/arrow_s_rp_r.svg") left top no-repeat;
      background-size: contain; }
  .subPage #container aside #sideNav > ul > li.cur .child {
    display: block; }

.subPage #container aside section .bnr {
  padding: 15px;
  background: #f7f7f7;
  border-bottom: 1px solid #e8e8e8; }
  .subPage #container aside section .bnr a {
    padding: 0; }
    .subPage #container aside section .bnr a img {
      transition: all 0.3s; }
    .subPage #container aside section .bnr a:hover img {
      opacity: 0.8; }

.subPage #container main {
  color: #333; }
  .subPage #container main.single {
    width: 1024px; }
    .subPage #container main.single section .panels.column3 .panel > div,
    .subPage #container main.single section .panels.column3 .panel a {
      width: 330px; }
  .subPage #container main #btnList {
    background: #f2f2f2;
    overflow: hidden;
    text-align: right;
    padding: 12px 14px;
    position: relative;
    margin: 0; }
    .subPage #container main #btnList li {
      display: inline-block;
      margin: 0 2px; }
      .subPage #container main #btnList li a {
        display: block;
        line-height: 1;
        padding: 8px 7px 7px 27px;
        color: #fff;
        font-size: 10px;
        position: relative;
        font-weight: bold;
        transition: all 0.3s; }
        .subPage #container main #btnList li a:hover {
          opacity: 0.8; }
      .subPage #container main #btnList li.btnPdf a {
        background: #eb381d; }
        .subPage #container main #btnList li.btnPdf a:before {
          content: '';
          display: block;
          width: 15px;
          height: 13px;
          background: url("/assets/css/images/common/icn_download.svg") left top no-repeat;
          background-size: contain;
          position: absolute;
          left: 6px;
          top: 50%;
          -ms-transform: translate(0, -50%);
              transform: translate(0, -50%); }
        .subPage #container main #btnList li.btnPdf a:after {
          content: '';
          display: block;
          width: 100%;
          height: 1px;
          background: #ad2915;
          position: absolute;
          left: 0;
          bottom: 0; }
      .subPage #container main #btnList li.btnPrint a {
        background: #999999; }
        .subPage #container main #btnList li.btnPrint a:before {
          content: '';
          display: block;
          width: 13px;
          height: 13px;
          background: url("/assets/css/images/common/icn_print.svg") left top no-repeat;
          background-size: contain;
          position: absolute;
          left: 7px;
          top: 50%;
          -ms-transform: translate(0, -50%);
              transform: translate(0, -50%); }
        .subPage #container main #btnList li.btnPrint a:after {
          content: '';
          display: block;
          width: 100%;
          height: 1px;
          background: #7e7e7e;
          position: absolute;
          left: 0;
          bottom: 0; }
  .subPage #container main #contentHeader {
    border-bottom: 1px solid #ccc;
    margin: 0;
    position: relative;
    border-bottom: 1px solid #dbdbdb;
    padding: 24px 0 18px; }
    .subPage #container main #contentHeader.plusEnTitle {
      padding: 27px 0 24px; }
    .subPage #container main #contentHeader.plusSubTitle {
      padding: 27px 0 24px; }
    .subPage #container main #contentHeader.plusPublishDate {
      padding: 27px 0 20px; }
      .subPage #container main #contentHeader.plusPublishDate + .slashArea {
        margin-top: 40px !important; }
    .subPage #container main #contentHeader.plusPurpleDate {
      padding: 25px 0 20px; }
      .subPage #container main #contentHeader.plusPurpleDate + .slashArea {
        margin-top: 40px !important; }
    .subPage #container main #contentHeader.single {
      padding: 36px 0 33px; }
    .subPage #container main #contentHeader:before {
      content: '';
      width: 100%;
      height: 3px;
      background: url("/assets/css/images/common/pixel_bdr.png") left top repeat-x;
      position: absolute;
      left: 0;
      top: 0; }
    .subPage #container main #contentHeader:after {
      content: '';
      width: 269px;
      height: 3px;
      background: #8f7ed5;
      position: absolute;
      left: 0;
      top: 0; }
    .subPage #container main #contentHeader + .slashArea {
      margin-top: 48px; }
    .subPage #container main #contentHeader + section {
      margin-top: 56px; }
    .subPage #container main #contentHeader h1 {
      font-size: 26px;
      line-height: 36px;
      font-weight: bold;
      /* margin: 0 0 5px; */ }
    .subPage #container main #contentHeader .enTitle,
    .subPage #container main #contentHeader .subTitle {
      font-size: 12px;
      color: #808080; }
    .subPage #container main #contentHeader .publishDate,
    .subPage #container main #contentHeader .purpleDate {
      font-size: 16px;
      font-weight: bold;
      color: #8f7ed5; }
    .subPage #container main #contentHeader #categoryLabel {
      display: inline-block;
      margin: 0 0 8px; }
      .subPage #container main #contentHeader #categoryLabel:before {
        display: inline-block;
        color: #fff;
        font-size: 10px;
        font-weight: bold;
        padding: 0 10px;
        line-height: 17px; }
      .subPage #container main #contentHeader #categoryLabel.sales .date:after {
        content: '受託事業';
        background: #3b9592; }
        html[lang=en] .subPage #container main #contentHeader #categoryLabel.sales .date:after {
          content: 'Sales'; }
      .subPage #container main #contentHeader #categoryLabel.gishi .date:after {
        content: '鉄道設計技士試験';
        background: #70c6c3; }
        html[lang=en] .subPage #container main #contentHeader #categoryLabel.gishi .date:after {
          content: 'Gishi'; }
      .subPage #container main #contentHeader #categoryLabel.others:before {
        content: 'その他';
        background: #999; }
        html[lang=en] .subPage #container main #contentHeader #categoryLabel.others:before {
          content: 'Other'; }
      .subPage #container main #contentHeader #categoryLabel.publish:before {
        content: '出版物';
        background: #74a8d4; }
        html[lang=en] .subPage #container main #contentHeader #categoryLabel.publish:before {
          content: 'Publication'; }
      .subPage #container main #contentHeader #categoryLabel.event:before {
        content: 'イベント';
        background: #7b8ed3; }
        html[lang=en] .subPage #container main #contentHeader #categoryLabel.event:before {
          content: 'Event'; }
      .subPage #container main #contentHeader #categoryLabel.rd:before {
        content: 'R&D';
        background: #b578ce; }
      .subPage #container main #contentHeader #categoryLabel.new:after {
        content: 'NEW!';
        color: #ff6600;
        font-size: 12px;
        font-weight: bold;
        margin: 0 0 0 10px;
        position: relative;
        top: 2px; }
    .subPage #container main #contentHeader .subtitle {
      font-size: 16px;
      margin: 0; }
  .subPage #container main section {
    border-bottom: 1px solid #ccc;
    margin: 0 0 30px; }
    .subPage #container main section:last-of-type {
      border-bottom: none; }
    .subPage #container main section h2 a[target="_blank"]:after, .subPage #container main section h3 a[target="_blank"]:after, .subPage #container main section h4 a[target="_blank"]:after, .subPage #container main section p a[target="_blank"]:after {
      content: '';
      display: inline-block;
      width: 12px;
      height: 10px;
      margin: 0 0 0 4px;
      background-image: url("/assets/css/images/common/icn_blank.svg");
      background-position: left center;
      background-repeat: no-repeat;
      background-size: contain; }
    .subPage #container main section h2 a[href$=".docx"]:after,
    .subPage #container main section h2 a[href$=".doc"]:after, .subPage #container main section h3 a[href$=".docx"]:after,
    .subPage #container main section h3 a[href$=".doc"]:after, .subPage #container main section h4 a[href$=".docx"]:after,
    .subPage #container main section h4 a[href$=".doc"]:after, .subPage #container main section p a[href$=".docx"]:after,
    .subPage #container main section p a[href$=".doc"]:after {
      content: '';
      background-image: url("images/common/icn_docx.svg") !important;
      background-position: left center;
      background-repeat: no-repeat;
      background-size: contain;
      display: inline-block;
      width: 12px !important;
      height: 13px !important;
      margin: 0 0 0 5px;
      position: relative;
      top: 2px; }
    .subPage #container main section h2 a[href$=".xls"]:after,
    .subPage #container main section h2 a[href$=".xlsx"]:after, .subPage #container main section h3 a[href$=".xls"]:after,
    .subPage #container main section h3 a[href$=".xlsx"]:after, .subPage #container main section h4 a[href$=".xls"]:after,
    .subPage #container main section h4 a[href$=".xlsx"]:after, .subPage #container main section p a[href$=".xls"]:after,
    .subPage #container main section p a[href$=".xlsx"]:after {
      content: '';
      background-image: url("images/common/icn_xls.svg") !important;
      background-position: left center;
      background-repeat: no-repeat;
      background-size: contain;
      display: inline-block;
      width: 12px !important;
      height: 13px !important;
      margin: 0 0 0 5px;
      position: relative;
      top: 2px; }
    .subPage #container main section h2 a[href$=".pdf"]:after, .subPage #container main section h3 a[href$=".pdf"]:after, .subPage #container main section h4 a[href$=".pdf"]:after, .subPage #container main section p a[href$=".pdf"]:after {
      content: '';
      background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
      background-position: left center;
      background-repeat: no-repeat;
      background-size: contain;
      display: inline-block;
      width: 12px !important;
      height: 13px !important;
      margin: 0 0 0 5px;
      position: relative;
      top: 2px; }
    .subPage #container main section.bdrNone {
      border-bottom: none; }
    .subPage #container main section.mb45 {
      margin-bottom: 45px; }
    .subPage #container main section.mb65 {
      margin-bottom: 65px; }
    .subPage #container main section h2 {
      font-weight: bold;
      font-size: 20px;
      line-height: 1.4;
      border: 1px solid #d8d8d8;
      background: #f7f7f7;
      box-sizing: border-box;
      padding: 11px 23px;
      position: relative;
      margin: 0 0 32px; }
      .subPage #container main section h2:before {
        content: '';
        display: block;
        width: 5px;
        background: #916bce;
        background: linear-gradient(to bottom, #916bce 0%, #7085cf 100%);
        border-top: 1px solid #8f7ed5;
        border-bottom: 1px solid #8f7ed5;
        position: absolute;
        left: -1px;
        top: -1px;
        bottom: 0; }
      .subPage #container main section h2:after {
        content: '';
        display: block;
        width: 1px;
        background: #c3c3c3;
        position: absolute;
        left: 7px;
        top: 0;
        bottom: 0; }
      .subPage #container main section h2.bdrTitle {
        border: none;
        background: none;
        padding: 0px 23px;
        margin: 0 0 16px;
        font-weight: bold; }
        .subPage #container main section h2.bdrTitle:before {
          border: none;
          top: 0;
          left: 0; }
      .subPage #container main section h2.arrowTitle span:after {
        content: '';
        display: inline-block;
        width: 12px;
        height: 19px;
        background: url("images/common/arrow_grad_r_bold.svg") left top no-repeat;
        margin-left: 13px;
        position: relative;
        top: 2px; }
      .subPage #container main section h2.arrowTitle span a {
        color: #000; }
        .subPage #container main section h2.arrowTitle span a:after {
          top: 0; }
      .subPage #container main section h2.linkTitle {
        padding: 0; }
        .subPage #container main section h2.linkTitle a {
          box-sizing: border-box;
          padding: 11px 23px;
          position: relative;
          display: block;
          color: #fff;
          background: #000;
          cursor: pointer; }
          .subPage #container main section h2.linkTitle a:before {
            content: '';
            display: block;
            width: 12px;
            height: 21px;
            background: url("/assets/css/images/common/arrow_grad_r.svg") no-repeat;
            background-size: contain;
            position: absolute;
            right: 12px;
            top: 50%;
            margin-top: -10px; }
          .subPage #container main section h2.linkTitle a:hover {
            opacity: 0.7; }
        .subPage #container main section h2.linkTitle a[target="_blank"]:after {
          position: relative;
          top: -3px; }
        .subPage #container main section h2.linkTitle:before {
          content: '';
          display: block;
          width: 5px;
          background: #8f7ed5;
          border-top: 1px solid #8f7ed5;
          border-bottom: 1px solid #8f7ed5;
          position: absolute;
          left: 0px;
          top: 0px;
          bottom: 0;
          z-index: 2; }
        .subPage #container main section h2.linkTitle:after {
          content: '';
          display: block;
          width: 1px;
          background: #333333;
          position: absolute;
          left: auto;
          right: 36px;
          top: 0;
          bottom: 0; }
      .subPage #container main section h2.linkGrayTitle a span {
        color: #333; }
        .subPage #container main section h2.linkGrayTitle a span:after {
          content: '';
          display: inline-block;
          width: 12px;
          height: 19px;
          background: url("images/common/arrow_grad_r_bold.svg") left center no-repeat;
          background-size: contain;
          position: relative;
          top: 2px;
          margin-left: 15px; }
    .subPage #container main section > h3 {
      font-size: 16px;
      line-height: 1.4;
      font-weight: bold;
      position: relative;
      padding: 0 0 0 15px;
      margin: 0 0 25px; }
      .subPage #container main section > h3:before {
        content: '';
        display: block;
        width: 4px;
        background: #8f7ed5;
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0; }
      .subPage #container main section > h3.noBdrTitle {
        padding: 10px 0 0;
        margin: 0 0 20px; }
        .subPage #container main section > h3.noBdrTitle:before {
          content: none; }
      .subPage #container main section > h3.linkTitle a {
        color: #333; }
        .subPage #container main section > h3.linkTitle a:after {
          content: '';
          display: inline-block;
          width: 9px;
          height: 15px;
          background: url("images/common/arrow_grad_r_bold.svg") left center no-repeat;
          background-size: contain;
          position: relative;
          top: 2px;
          margin-left: 10px; }
    .subPage #container main section div {
      font-size: 14px;
      line-height: 1.7;
      margin: 0 0 30px; }
      .subPage #container main section div.mb0 {
        margin-bottom: 0; }
    .subPage #container main section > h4 {
      font-size: 14px;
      line-height: 1.4;
      border-bottom: 1px dotted #ccc;
      font-weight: bold;
      margin: 0 0 24px;
      padding: 0 0 3px; }
    .subPage #container main section > h5 {
      font-size: 14px;
      line-height: 1.4; }
      .subPage #container main section > h5.linkTitle a {
        color: #333; }
        .subPage #container main section > h5.linkTitle a:after {
          content: '';
          display: inline-block;
          width: 9px;
          height: 15px;
          background: url("images/common/arrow_grad_r_bold.svg") left center no-repeat;
          background-size: contain;
          position: relative;
          top: 2px;
          margin-left: 7px; }
    .subPage #container main section > p {
      font-size: 14px;
      line-height: 1.7;
      margin: 0 0 30px; }
      .subPage #container main section > p.narrowBottom {
        margin: 0 0 15px; }
    .subPage #container main section .textCenter {
      text-align: center; }
    .subPage #container main section .textRight {
      text-align: right; }
    .subPage #container main section .textLarge {
      font-size: 18px; }
    .subPage #container main section .textSmall {
      font-size: 10px; }
    .subPage #container main section .textBold {
      font-weight: bold; }
    .subPage #container main section .movie iframe {
      width: 100%; }
    .subPage #container main section .photo img {
      width: 100%; }
    .subPage #container main section a img {
      transition: 0.3s; }
    .subPage #container main section a:hover img {
      opacity: 0.8; }
    .subPage #container main section > img {
      max-width: 100%; }
    .subPage #container main section figure {
      display: table;
      width: 1px; }
      .subPage #container main section figure span {
        border: 1px solid #d8d8d8;
        display: block;
        width: 100%; }
      .subPage #container main section figure a.zoom {
        display: block;
        position: relative;
        cursor: pointer; }
        .subPage #container main section figure a.zoom:after {
          content: '';
          display: block;
          width: 22px;
          height: 22px;
          background: url("images/common/zoom.png");
          position: absolute;
          right: 4px;
          bottom: 4px; }
    .subPage #container main section figcaption {
      font-size: 13px;
      line-height: 1.5;
      color: #666;
      margin: 6px 0; }
      .subPage #container main section figcaption:empty {
        margin: 0; }
    .subPage #container main section .leftFig {
      float: left;
      margin: 6px 15px 15px 0; }
      .subPage #container main section .leftFig img {
        max-width: 224px; }
      .subPage #container main section .leftFig.wide img {
        max-width: 705px; }
      .subPage #container main section .leftFig.imgMax div {
        width: 100%;
        max-width: 224px;
        min-width: 224px;
        margin: 0; }
        .subPage #container main section .leftFig.imgMax div img {
          width: 100%; }
    .subPage #container main section .leftFig + *:after {
      content: '';
      clear: both;
      display: block;
      height: 0; }
    .subPage #container main section .rightFig {
      float: right;
      margin: 6px 0 15px 15px; }
      .subPage #container main section .rightFig.imgMax div {
        width: 100%;
        max-width: 224px;
        min-width: 224px;
        margin: 0; }
        .subPage #container main section .rightFig.imgMax div img {
          width: 100%; }
      .subPage #container main section .rightFig img {
        max-width: 224px; }
      .subPage #container main section .rightFig.wide img {
        max-width: 705px; }
    .subPage #container main section .rightFig + *:after {
      content: '';
      clear: both;
      display: block;
      height: 0; }
    .subPage #container main section .leftFigWrap {
      overflow: hidden; }
      .subPage #container main section .leftFigWrap img {
        max-width: 224px; }
      .subPage #container main section .leftFigWrap.wide img {
        max-width: 705px; }
      .subPage #container main section .leftFigWrap figure {
        float: left;
        margin: 6px 15px 15px 0; }
        .subPage #container main section .leftFigWrap figure.imgMax div {
          width: 100%;
          max-width: 224px;
          min-width: 224px;
          margin: 0; }
          .subPage #container main section .leftFigWrap figure.imgMax div img {
            width: 100%; }
      .subPage #container main section .leftFigWrap div {
        overflow: hidden;
        margin: 0; }
        .subPage #container main section .leftFigWrap div p {
          margin: 0;
          padding: 0; }
    .subPage #container main section .rightFigWrap {
      overflow: hidden; }
      .subPage #container main section .rightFigWrap img {
        max-width: 224px; }
      .subPage #container main section .rightFigWrap.wide img {
        max-width: 705px; }
      .subPage #container main section .rightFigWrap figure {
        float: right;
        margin: 6px 0 15px 15px; }
        .subPage #container main section .rightFigWrap figure.imgMax div {
          width: 100%;
          max-width: 224px;
          min-width: 224px;
          margin: 0; }
          .subPage #container main section .rightFigWrap figure.imgMax div img {
            width: 100%; }
      .subPage #container main section .rightFigWrap div {
        overflow: hidden;
        margin: 0; }
        .subPage #container main section .rightFigWrap div p {
          margin: 0;
          padding: 0; }
    .subPage #container main section .centerFig {
      margin: 0 auto 30px; }
      .subPage #container main section .centerFig div {
        margin: 0; }
      .subPage #container main section .centerFig img {
        max-width: 704px; }
    .subPage #container main section .columnsPhoto > div {
      overflow: hidden;
      margin: 0 -16px 0 0; }
      .subPage #container main section .columnsPhoto > div figure {
        float: left;
        display: block;
        margin: 0 16px 0 0; }
        .subPage #container main section .columnsPhoto > div figure img {
          max-width: 100%;
          max-height: 100%;
          margin: 0 auto; }
        .subPage #container main section .columnsPhoto > div figure > div {
          margin: 0;
          border: 1px solid #d9d9d9;
          position: relative;
          overflow: hidden;
          box-sizing: border-box; }
          .subPage #container main section .columnsPhoto > div figure > div a {
            position: static;
            display: block;
            width: 100%;
            height: 100%; }
          .subPage #container main section .columnsPhoto > div figure > div img {
            position: absolute;
            left: 50%;
            top: 50%;
            -ms-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
            backface-visibility: hidden; }
    .subPage #container main section .columnsPhoto.columns2 figure {
      width: 342px; }
      .subPage #container main section .columnsPhoto.columns2 figure > div {
        width: 342px;
        height: 255px; }
    .subPage #container main section .columnsPhoto.columns3 figure {
      width: 222px; }
      .subPage #container main section .columnsPhoto.columns3 figure > div {
        width: 222px;
        height: 166px; }
    .subPage #container main section .columnsPhoto.columns4 figure {
      width: 162px; }
      .subPage #container main section .columnsPhoto.columns4 figure > div {
        width: 162px;
        height: 121px; }
    .subPage #container main section .flexFig {
      margin: 0 -15px 30px 0; }
      .subPage #container main section .flexFig.wideBottom {
        margin: 0 -15px 50px 0; }
      .subPage #container main section .flexFig div {
        display: table;
        table-layout: fixed;
        width: 100%; }
      .subPage #container main section .flexFig figure {
        display: table-cell;
        padding-right: 15px;
        vertical-align: top; }
        .subPage #container main section .flexFig figure img {
          width: 100%;
          max-width: 704px; }
    .subPage #container main section .centerFigfixedImg {
      margin: 0 auto 30px;
      width: 100%;
      max-width: 344px; }
      .subPage #container main section .centerFigfixedImg > div {
        margin: 0;
        width: 100%;
        height: 100%;
        min-height: 256px;
        margin: 0;
        font-size: 0;
        line-height: 0;
        position: relative;
        overflow: hidden;
        border: 1px solid #d9d9d9; }
        .subPage #container main section .centerFigfixedImg > div a {
          display: block;
          position: static;
          border: none;
          backface-visibility: hidden;
          width: 100%;
          height: 100%;
          min-height: 256px; }
        .subPage #container main section .centerFigfixedImg > div img {
          position: absolute;
          left: 50%;
          top: 50%;
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
          min-width: auto;
          min-height: auto;
          max-width: 100%;
          max-height: 100%;
          backface-visibility: hidden; }
    .subPage #container main section .flexFigFixedImg {
      margin: 0 -15px 30px 0; }
      .subPage #container main section .flexFigFixedImg > div {
        display: table;
        table-layout: fixed;
        width: 100%; }
        .subPage #container main section .flexFigFixedImg > div figure {
          display: table-cell;
          padding-right: 15px;
          vertical-align: top; }
          .subPage #container main section .flexFigFixedImg > div figure > div {
            width: 100%;
            margin: 0;
            font-size: 0;
            line-height: 0;
            padding-bottom: 74%;
            position: relative;
            overflow: hidden;
            border: 1px solid #d9d9d9;
            box-sizing: border-box; }
            .subPage #container main section .flexFigFixedImg > div figure > div a {
              display: block;
              position: static;
              border: none;
              backface-visibility: hidden; }
            .subPage #container main section .flexFigFixedImg > div figure > div img {
              position: absolute;
              left: 50%;
              top: 50%;
              -ms-transform: translate(-50%, -50%);
                  transform: translate(-50%, -50%);
              min-width: auto;
              min-height: auto;
              max-width: 100%;
              max-height: 100%;
              backface-visibility: hidden; }
    .subPage #container main section .panels {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      margin: 0 -8px 16px; }
      .subPage #container main section .panels .panel {
        position: relative;
        background: #f7f7f7;
        margin: 0 8px 32px; }
        .subPage #container main section .panels .panel > div,
        .subPage #container main section .panels .panel a {
          margin-bottom: 0; }
          .subPage #container main section .panels .panel > div figure,
          .subPage #container main section .panels .panel a figure {
            margin: 0;
            border-top: 1px solid #8f7ed5; }
          .subPage #container main section .panels .panel > div h3,
          .subPage #container main section .panels .panel a h3 {
            margin: 0;
            font-weight: normal;
            font-size: 12px;
            padding: 10px 15px;
            color: #333;
            position: relative; }
            .subPage #container main section .panels .panel > div h3 b,
            .subPage #container main section .panels .panel a h3 b {
              font-size: 14px; }
            .subPage #container main section .panels .panel > div h3.leftArrow,
            .subPage #container main section .panels .panel a h3.leftArrow {
              font-weight: bold;
              font-size: 14px;
              padding: 9px 15px 7px 15px; }
          .subPage #container main section .panels .panel > div .text,
          .subPage #container main section .panels .panel a .text {
            margin: 0;
            min-height: 56px;
            border-top: 1px solid #e0e0e0;
            box-sizing: border-box;
            padding: 9px 15px 10px; }
            .subPage #container main section .panels .panel > div .text p,
            .subPage #container main section .panels .panel a .text p {
              font-size: 12px;
              line-height: 18px;
              margin: 0;
              color: #333; }
        .subPage #container main section .panels .panel a {
          display: block; }
          .subPage #container main section .panels .panel a h3:after {
            position: absolute;
            right: 12px;
            top: 50%;
            margin: -7px 0 0;
            content: '';
            display: block;
            width: 8px;
            height: 14px;
            background: url("/assets/css/images/common/arrow_grad_r.svg") top left no-repeat;
            background-size: contain; }
          .subPage #container main section .panels .panel a h3.leftArrow {
            padding: 9px 15px 7px 25px;
            color: #1d4fb3; }
            .subPage #container main section .panels .panel a h3.leftArrow:after {
              content: '';
              display: block;
              width: 5px;
              height: 8px;
              background: url("/assets/css/images/common/arrow_s_p_r.svg") center left no-repeat;
              background-size: contain;
              left: 12px;
              margin-top: -4px; }
          .subPage #container main section .panels .panel a:hover h3 {
            color: #797979; }
            .subPage #container main section .panels .panel a:hover h3.leftArrow {
              color: #2285db; }
          .subPage #container main section .panels .panel a:hover .text p {
            color: #797979; }
      .subPage #container main section .panels.column4 .panel > div,
      .subPage #container main section .panels.column4 .panel a {
        width: 244px; }
        .subPage #container main section .panels.column4 .panel > div .text p,
        .subPage #container main section .panels.column4 .panel a .text p {
          font-size: 13px;
          line-height: 20px; }
      .subPage #container main section .panels.column3 .panel > div,
      .subPage #container main section .panels.column3 .panel a {
        width: 224px; }
        .subPage #container main section .panels.column3 .panel > div .text p,
        .subPage #container main section .panels.column3 .panel a .text p {
          font-size: 13px;
          line-height: 20px; }
    .subPage #container main section .cmsContents.intraCms {
      margin-bottom: 0; }
      .subPage #container main section .cmsContents.intraCms p {
        margin: 0;
        line-height: 2; }
      .subPage #container main section .cmsContents.intraCms .boxLink {
        margin-bottom: 10px !important;
        display: table; }
        .subPage #container main section .cmsContents.intraCms .boxLink:last-child {
          margin-bottom: 56px !important; }
        .subPage #container main section .cmsContents.intraCms .boxLink a {
          display: table-cell; }
      .subPage #container main section .cmsContents.intraCms ul li a[href$=".pdf"]:after {
        content: '';
        background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain;
        display: inline-block;
        width: 12px !important;
        height: 13px !important;
        margin: 0 0 0 5px;
        position: relative;
        top: 2px; }
      .subPage #container main section .cmsContents.intraCms ul li a[href$=".docx"]:after,
      .subPage #container main section .cmsContents.intraCms ul li a[href$=".doc"]:after {
        content: '';
        background-image: url("images/common/icn_docx.svg") !important;
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain;
        display: inline-block;
        width: 12px !important;
        height: 13px !important;
        margin: 0 0 0 5px;
        position: relative;
        top: 2px; }
      .subPage #container main section .cmsContents.intraCms ul li a[target="_blank"]:after {
        content: '';
        display: inline-block;
        width: 12px;
        height: 10px;
        margin: 0 0 0 4px;
        background-image: url("/assets/css/images/common/icn_blank.svg");
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain; }
      .subPage #container main section .cmsContents.intraCms ul li a[href$=".xls"]:after,
      .subPage #container main section .cmsContents.intraCms ul li a[href$=".xlsx"]:after {
        content: '';
        background-image: url("images/common/icn_xls.svg") !important;
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain;
        display: inline-block;
        width: 12px !important;
        height: 13px !important;
        margin: 0 0 0 5px;
        position: relative;
        top: 2px; }
      .subPage #container main section .cmsContents.intraCms ul.noitem {
        list-style-type: none;
        padding-left: 0; }
    .subPage #container main section .cmsContents iframe {
      max-width: 704px; }
    .subPage #container main section .cmsContents iframe + p {
      margin: 0; }
    .subPage #container main section .cmsContents figure {
      display: block;
      width: 100%;
      margin: 0 0 30px; }
    .subPage #container main section .cmsContents img {
      max-width: 100%; }
    .subPage #container main section .cmsContents .disc {
      margin: 0 0 0 1em;
      padding: 0; }
    .subPage #container main section .cmsContents p + .disc {
      margin-top: -1em; }
    .subPage #container main section .cmsContents .txtC {
      text-align: center; }
    .subPage #container main section .cmsContents .txtR {
      text-align: right; }
    .subPage #container main section .cmsContents .rightFigWrap figure {
      margin: 6px 0 15px 15px;
      width: auto; }
      .subPage #container main section .cmsContents .rightFigWrap figure.border {
        border: 1px solid #d8d8d8; }
    .subPage #container main section .cmsContents .interview {
      margin-bottom: 37px; }
      .subPage #container main section .cmsContents .interview p {
        display: -ms-flexbox;
        display: flex;
        font-size: 14px;
        line-height: 25px;
        margin-bottom: 20px; }
        .subPage #container main section .cmsContents .interview p span {
          margin-top: -7px;
          margin-right: 6px;
          min-width: 32px; }
      .subPage #container main section .cmsContents .interview.rightFigWrap div {
        padding-top: 7px; }
      .subPage #container main section .cmsContents .interview + hr {
        margin-bottom: 42px; }
    .subPage #container main section .cmsContents .withPurpleTitleBox {
      border: 1px solid #d8d8d8;
      margin-bottom: 40px; }
      .subPage #container main section .cmsContents .withPurpleTitleBox .purpleTitle {
        background: #9a8dce;
        color: #fff;
        font-weight: bold;
        margin: 0;
        padding: 0 17px 0 107px;
        position: relative; }
        .subPage #container main section .cmsContents .withPurpleTitleBox .purpleTitle .sub {
          margin: 0;
          padding: 0 0 0 15px;
          box-sizing: border-box;
          display: inline-block;
          position: absolute;
          top: 0;
          bottom: 0;
          left: 0;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-align: center;
              align-items: center;
          background: #6d5faa;
          height: 100%;
          white-space: nowrap; }
          .subPage #container main section .cmsContents .withPurpleTitleBox .purpleTitle .sub:after {
            content: '';
            display: block;
            height: 100%;
            width: 21px;
            background: url("images/common/arrow_triangle.png") right center no-repeat;
            background-size: cover;
            position: absolute;
            right: -21px;
            top: 0;
            bottom: 0; }
          .subPage #container main section .cmsContents .withPurpleTitleBox .purpleTitle .sub span {
            color: #6d5faa;
            width: 16px;
            height: 16px;
            background: #fff;
            display: -ms-flexbox;
            display: flex;
            -ms-flex-align: center;
                align-items: center;
            text-align: center;
            border-radius: 50%;
            -ms-flex-pack: center;
                justify-content: center;
            font-weight: bold;
            font-size: 12px;
            line-height: 12px;
            margin: -1px 0 0 3px;
            box-sizing: border-box; }
        .subPage #container main section .cmsContents .withPurpleTitleBox .purpleTitle h3 {
          margin: 0;
          padding: 8px 0;
          font-size: 16px; }
      .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner {
        margin: 0;
        padding: 16px;
        border: 7px solid #f0f2fa; }
        .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner section {
          border-bottom: none;
          padding-top: 14px;
          margin-bottom: 0; }
        .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner h3 {
          padding: 0;
          margin: 0 0 10px;
          font-size: 14px;
          border-bottom: 1px solid #a4a1af;
          font-weight: bold; }
          .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner h3:before {
            content: none; }
        .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner p {
          margin: 0; }
        .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner .disc {
          padding: 0;
          margin: 0;
          list-style-type: none; }
          .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner .disc li {
            position: relative;
            padding-left: 12px;
            font-size: 14px;
            line-height: 24px;
            margin-bottom: 5px; }
            .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner .disc li:before {
              content: '';
              display: block;
              width: 4px;
              height: 3px;
              border-radius: 50%;
              background: #333333;
              position: absolute;
              left: 4px;
              top: 11px; }
        .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner .blueBox {
          background: #e8f6fa;
          padding: 23px;
          margin-bottom: 0; }
          .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner .blueBox h4 {
            margin: 0 0 10px;
            padding: 0 0 0 25px;
            color: #598fbc;
            font-weight: bold;
            position: relative; }
            .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner .blueBox h4:before {
              content: '';
              display: block;
              width: 20px;
              height: 19px;
              position: absolute;
              left: 0;
              top: 0;
              background: url("images/common/icn_balloon.svg"); }
        .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner .columns {
          overflow: hidden;
          margin: 0 0 0 24px; }
          .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner .columns .column {
            float: left;
            margin-bottom: 0; }
            .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner .columns .column table {
              margin-bottom: 0; }
            .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner .columns .column:first-child {
              margin-right: 16px; }
        .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner span.green {
          color: #4a5c28;
          font-size: 12px;
          line-height: 12px;
          background: #d2dfba;
          display: inline-block;
          padding: 4px; }
        .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner span.orange {
          color: #95660d;
          background: #ebd4a9;
          font-size: 12px;
          line-height: 12px;
          display: inline-block;
          padding: 4px; }
        .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner .case1 p {
          font-weight: bold;
          font-size: 13px;
          margin-bottom: 9px; }
          .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner .case1 p span {
            font-size: 11px;
            display: inline-block;
            margin: 0 5px 0 0; }
        .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner .case1 table {
          border-top: 1px solid #d2dfba;
          border-left: 1px solid #d2dfba;
          font-size: 13px; }
          .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner .case1 table th {
            border-bottom: 1px solid #d2dfba;
            border-right: 1px solid #d2dfba;
            vertical-align: top;
            background: #edf2e3;
            padding: 5px 20px 5px 5px; }
          .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner .case1 table td {
            border-bottom: 1px solid #d2dfba;
            border-right: 1px solid #d2dfba;
            padding: 5px 20px 5px 5px;
            width: 210px;
            box-sizing: border-box; }
        .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner .case2 p {
          font-weight: bold;
          font-size: 13px;
          margin-bottom: 9px; }
          .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner .case2 p span {
            font-size: 11px;
            display: inline-block;
            margin: 0 5px 0 0; }
        .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner .case2 table {
          border-top: 1px solid #ebd4a9;
          border-left: 1px solid #ebd4a9;
          font-size: 13px; }
          .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner .case2 table th {
            border-bottom: 1px solid #ebd4a9;
            border-right: 1px solid #ebd4a9;
            vertical-align: top;
            background: #fff8eb;
            padding: 5px 20px 5px 5px; }
          .subPage #container main section .cmsContents .withPurpleTitleBox .boxInner .case2 table td {
            border-bottom: 1px solid #ebd4a9;
            border-right: 1px solid #ebd4a9;
            padding: 5px 20px 5px 5px;
            width: 210px;
            box-sizing: border-box; }
    .subPage #container main section .cmsContents .grayBox h3 {
      margin: 0 0 17px;
      font-size: 14px; }
      .subPage #container main section .cmsContents .grayBox h3.bdrTitle {
        border-bottom: 1px solid #a4a1af; }
    .subPage #container main section .cmsContents .grayBox .interview p {
      margin-bottom: 14px; }
      .subPage #container main section .cmsContents .grayBox .interview p:last-child {
        margin-bottom: 0; }
    .subPage #container main section .cmsContents .grayBox .rightFigWrap {
      margin-bottom: 0; }
    .subPage #container main section .cmsContents .grayBox + .interview {
      padding-top: 5px; }
    .subPage #container main section .cmsContents .inlineCenter {
      text-align: center; }
      .subPage #container main section .cmsContents .inlineCenter > div {
        display: inline-block;
        text-align: left; }
        .subPage #container main section .cmsContents .inlineCenter > div p a[href$=".xls"]:after,
        .subPage #container main section .cmsContents .inlineCenter > div p a[href$=".xlsx"]:after {
          content: '';
          background-image: url("images/common/icn_xls.svg") !important;
          background-position: left center;
          background-repeat: no-repeat;
          background-size: contain;
          display: inline-block;
          width: 12px !important;
          height: 13px !important;
          margin: 0 0 0 5px;
          position: relative;
          top: 2px; }
        .subPage #container main section .cmsContents .inlineCenter > div p a[href$=".docx"]:after,
        .subPage #container main section .cmsContents .inlineCenter > div p a[href$=".doc"]:after {
          content: '';
          background-image: url("images/common/icn_docx.svg") !important;
          background-position: left center;
          background-repeat: no-repeat;
          background-size: contain;
          display: inline-block;
          width: 12px !important;
          height: 13px !important;
          margin: 0 0 0 5px;
          position: relative;
          top: 2px; }
        .subPage #container main section .cmsContents .inlineCenter > div p a[href$=".pdf"]:after {
          content: '';
          background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
          background-position: left center;
          background-repeat: no-repeat;
          background-size: contain;
          display: inline-block;
          width: 12px !important;
          height: 13px !important;
          margin: 0 0 0 5px;
          position: relative;
          top: 2px; }
    .subPage #container main section .cmsContents .arrowDownBlock {
      border: 1px solid #ccc;
      text-align: center;
      position: relative;
      padding: 0 0 30px;
      margin: 0 0 37px; }
      .subPage #container main section .cmsContents .arrowDownBlock .sub {
        display: block;
        width: 80px;
        height: 42px;
        color: #fff;
        font-weight: bold;
        margin: 0 auto;
        text-align: center;
        font-size: 14px;
        line-height: 14px;
        padding-top: 22px;
        box-sizing: border-box;
        position: absolute;
        left: 50%;
        top: 0;
        margin: 0 0 0 -40px; }
      .subPage #container main section .cmsContents .arrowDownBlock h3 {
        font-size: 22px;
        margin: 0 0 13px;
        padding-top: 60px; }
        .subPage #container main section .cmsContents .arrowDownBlock h3.noMgb {
          margin: 0 0 -7px; }
      .subPage #container main section .cmsContents .arrowDownBlock p {
        margin: 0 0 10px;
        font-size: 14px;
        line-height: 21px; }
        .subPage #container main section .cmsContents .arrowDownBlock p:last-child {
          margin: 0; }
        .subPage #container main section .cmsContents .arrowDownBlock p.arrowLink:before {
          display: inline-block;
          margin-right: 5px;
          position: static; }
      .subPage #container main section .cmsContents .arrowDownBlock:before {
        content: '';
        display: block;
        width: 100%;
        height: 5px;
        background: #f2f2f2;
        position: absolute;
        left: 0;
        top: 0;
        right: 0; }
      .subPage #container main section .cmsContents .arrowDownBlock:after {
        content: '';
        display: block;
        width: 20px;
        height: 13px;
        background: url("images/common/arrow_down_b.svg");
        position: absolute;
        bottom: -27px;
        left: 50%;
        margin: 0 0 0 -10px; }
      .subPage #container main section .cmsContents .arrowDownBlock:nth-child(1) .sub {
        background: #81b593; }
      .subPage #container main section .cmsContents .arrowDownBlock:nth-child(2) .sub {
        background: #74b3af; }
      .subPage #container main section .cmsContents .arrowDownBlock:nth-child(3) .sub {
        background: #86b0d4; }
      .subPage #container main section .cmsContents .arrowDownBlock:nth-child(4) .sub {
        background: #94a2d3; }
      .subPage #container main section .cmsContents .arrowDownBlock:nth-child(5) .sub {
        background: #bb9dc7; }
      .subPage #container main section .cmsContents .arrowDownBlock:nth-child(6) {
        background: #fff8eb;
        border-color: #ebd4a9; }
        .subPage #container main section .cmsContents .arrowDownBlock:nth-child(6):before {
          background: #f5ebda; }
        .subPage #container main section .cmsContents .arrowDownBlock:nth-child(6):after {
          content: none;
          margin: 0; }
        .subPage #container main section .cmsContents .arrowDownBlock:nth-child(6) .sub {
          background: #c4b47d; }
    .subPage #container main section .arrowLink {
      margin: 0 0 5px; }
      .subPage #container main section .arrowLink a[target="_blank"]:after {
        content: '';
        display: inline-block;
        width: 12px;
        height: 10px;
        margin: 0 0 0 4px;
        background-image: url("/assets/css/images/common/icn_blank.svg");
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain; }
      .subPage #container main section .arrowLink a[href$=".pdf"]:after {
        content: '';
        background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain;
        display: inline-block;
        width: 12px !important;
        height: 13px !important;
        margin: 0 0 0 5px;
        position: relative;
        top: 2px; }
      .subPage #container main section .arrowLink a {
        position: relative; }
      .subPage #container main section .arrowLink.boxLink {
        border: 1px solid #dbdbdb;
        margin-bottom: 56px !important; }
    .subPage #container main section .accordion {
      border-bottom: 1px dotted #dbdbdb;
      padding: 11px 0;
      margin: 0; }
      .subPage #container main section .accordion dt {
        font-size: 14px;
        line-height: 24px;
        font-weight: bold;
        cursor: pointer;
        color: #1d4fb3;
        padding: 0 38px 0 0;
        margin: 0;
        position: relative; }
        .subPage #container main section .accordion dt:after {
          content: '';
          display: block;
          width: 13px;
          height: 13px;
          background: url("images/common/icn_accordion_plus.svg");
          position: absolute;
          right: 8px;
          top: 3px; }
      .subPage #container main section .accordion dd {
        overflow: hidden;
        height: 0;
        padding: 0;
        margin: 0; }
        .subPage #container main section .accordion dd .acInner {
          padding: 14px 35px 0 28px;
          margin: 0; }
          .subPage #container main section .accordion dd .acInner p {
            font-size: 14px;
            line-height: 21px;
            padding: 0;
            margin: 0; }
      .subPage #container main section .accordion.open dt:after {
        background: url("images/common/icn_accordion_minus.svg"); }
    .subPage #container main section.columns .arrowLink {
      width: 344px;
      box-sizing: border-box;
      margin: 0 15px 0 0;
      min-height: auto; }
      .subPage #container main section.columns .arrowLink:before {
        width: 6px;
        height: 9px;
        background: url("/assets/css/images/common/arrow_s_b_r.svg") no-repeat center center;
        background-size: contain; }
    .subPage #container main section.columns.mgWide .arrowLink.boxLink {
      margin-bottom: 29px !important; }
    .subPage #container main section.faqList {
      margin: 0 0 48px;
      border-bottom: none; }
      .subPage #container main section.faqList:last-of-type {
        margin-bottom: 70px; }
      .subPage #container main section.faqList h2 {
        margin: 0 0 15px; }
      .subPage #container main section.faqList .accordion dt {
        position: relative;
        padding-left: 27px;
        font-size: 14px;
        line-height: 24px; }
        .subPage #container main section.faqList .accordion dt:before {
          content: '';
          display: block;
          width: 20px;
          height: 18px;
          background: url("images/common/icn_q.svg");
          position: absolute;
          left: 1px;
          top: 2px; }
  .subPage #container main .backToList {
    border: 1px solid #dbdbdb;
    width: 100%;
    display: block;
    text-align: center;
    position: relative;
    font-size: 12px;
    line-height: 1;
    color: #333;
    font-weight: bold;
    padding: 17px 15px 16px 15px;
    margin: 0 0 30px;
    box-sizing: border-box;
    transition: 0.3s; }
    .subPage #container main .backToList:before {
      content: '';
      display: block;
      width: 11px;
      height: 10px;
      background: url("/assets/css/images/common/backtop.svg") left center no-repeat;
      display: inline-block;
      margin: 0 10px 0 0; }
    .subPage #container main .backToList:hover {
      background: #fafafa; }
  .subPage #container main #contentInfo {
    text-align: right;
    font-size: 14px;
    line-height: 24px;
    padding: 20px 0;
    margin: 0; }
    .subPage #container main #contentInfo.leftAlign {
      text-align: left; }
    .subPage #container main #contentInfo span {
      display: block; }
    .subPage #container main #contentInfo p {
      margin: 10px 0;
      padding: 0; }
    .subPage #container main #contentInfo p + .boxLink {
      margin-top: 10px; }
    .subPage #container main #contentInfo img + .arrowLink {
      margin-top: 15px; }
    .subPage #container main #contentInfo .arrowLink {
      margin-bottom: 10px;
      position: relative;
      padding: 0 0 0 12px; }
      .subPage #container main #contentInfo .arrowLink a[target="_blank"]:after {
        content: '';
        display: inline-block;
        width: 12px;
        height: 10px;
        margin: 0 0 0 4px;
        background-image: url("/assets/css/images/common/icn_blank.svg");
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain; }
      .subPage #container main #contentInfo .arrowLink a[href$=".pdf"]:after {
        content: '';
        background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain;
        display: inline-block;
        width: 12px !important;
        height: 13px !important;
        margin: 0 0 0 5px;
        position: relative;
        top: 2px; }
      .subPage #container main #contentInfo .arrowLink a[href$=".xls"]:after,
      .subPage #container main #contentInfo .arrowLink a[href$=".xlsx"]:after {
        content: '';
        background-image: url("images/common/icn_xls.svg") !important;
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain;
        display: inline-block;
        width: 12px !important;
        height: 13px !important;
        margin: 0 0 0 5px;
        position: relative;
        top: 2px; }
      .subPage #container main #contentInfo .arrowLink a[href$=".docx"]:after,
      .subPage #container main #contentInfo .arrowLink a[href$=".doc"]:after {
        content: '';
        background-image: url("images/common/icn_docx.svg") !important;
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain;
        display: inline-block;
        width: 12px !important;
        height: 13px !important;
        margin: 0 0 0 5px;
        position: relative;
        top: 2px; }
      .subPage #container main #contentInfo .arrowLink:before {
        content: '';
        display: block;
        width: 6px;
        height: 9px;
        background: url("/assets/css/images/common/arrow_s_b_r.svg") no-repeat center center;
        background-size: contain;
        position: absolute;
        left: 0;
        top: 5px;
        margin: 0 0 0; }
      .subPage #container main #contentInfo .arrowLink.arrowPurple:before {
        background: url("/assets/css/images/common/arrow_s_p_r.svg") no-repeat center center;
        background-size: contain; }
      .subPage #container main #contentInfo .arrowLink.boxLink {
        padding: 7px 12px 8px 23px;
        border: 1px solid #dbdbdb;
        display: inline-block; }
        .subPage #container main #contentInfo .arrowLink.boxLink:before {
          left: 11px;
          top: 50%;
          -ms-transform: translate(0, -50%);
              transform: translate(0, -50%); }
        .subPage #container main #contentInfo .arrowLink.boxLink a {
          display: block; }
    .subPage #container main #contentInfo .boxLink a[target="_blank"]:after {
      content: '';
      display: inline-block;
      width: 12px;
      height: 10px;
      margin: 0 0 0 4px;
      background-image: url("/assets/css/images/common/icn_blank.svg");
      background-position: left center;
      background-repeat: no-repeat;
      background-size: contain; }
    .subPage #container main #contentInfo .boxLink a[href$=".pdf"]:after {
      content: '';
      background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
      background-position: left center;
      background-repeat: no-repeat;
      background-size: contain;
      display: inline-block;
      width: 12px !important;
      height: 13px !important;
      margin: 0 0 0 5px;
      position: relative;
      top: 2px; }
  .subPage #container main .catalogue,
  .subPage #container main .feature {
    display: table;
    border: 1px solid #e6e6e6;
    width: 100%; }
    .subPage #container main .catalogue .thumb,
    .subPage #container main .feature .thumb {
      display: table-cell;
      vertical-align: top;
      box-sizing: border-box;
      width: 227px;
      padding: 23px 21px;
      background: #f7f7f7;
      border-right: 1px solid #e6e6e6; }
      .subPage #container main .catalogue .thumb a,
      .subPage #container main .feature .thumb a {
        display: block; }
        .subPage #container main .catalogue .thumb a img,
        .subPage #container main .feature .thumb a img {
          border: 1px solid #e6e6e6;
          transition: all 0.3s;
          background: #fff;
          width: 100%;
          height: auto; }
        .subPage #container main .catalogue .thumb a:hover img,
        .subPage #container main .feature .thumb a:hover img {
          opacity: 0.8; }
    .subPage #container main .catalogue .texts,
    .subPage #container main .feature .texts {
      display: table-cell;
      vertical-align: top;
      padding: 23px 22px; }
      .subPage #container main .catalogue .texts h2,
      .subPage #container main .feature .texts h2 {
        margin: 0 0 15px !important;
        font-size: 16px;
        font-weight: bold;
        position: relative;
        padding: 0 0 8px 15px !important;
        border-bottom: 1px dotted #ccc; }
        .subPage #container main .catalogue .texts h2:before,
        .subPage #container main .feature .texts h2:before {
          content: '';
          display: block;
          width: 4px;
          background: #8f7ed5;
          position: absolute;
          left: 0;
          top: 0;
          bottom: 8px !important; }
        .subPage #container main .catalogue .texts h2.catalogueNum,
        .subPage #container main .feature .texts h2.catalogueNum {
          background: none;
          border-top: none;
          border-right: none;
          border-left: none; }
          .subPage #container main .catalogue .texts h2.catalogueNum:after,
          .subPage #container main .feature .texts h2.catalogueNum:after {
            content: none; }
      .subPage #container main .catalogue .texts h3,
      .subPage #container main .feature .texts h3 {
        border-bottom: 1px dotted #ccc;
        margin: 0 0 18px !important;
        position: relative;
        font-size: 16px;
        line-height: 26px;
        font-weight: bold;
        position: relative;
        width: 100%; }
        .subPage #container main .catalogue .texts h3.new:after,
        .subPage #container main .feature .texts h3.new:after {
          position: absolute;
          right: 0;
          bottom: 12px;
          content: 'NEW!';
          display: block;
          color: #ff6600;
          font-weight: bold;
          font-size: 12px;
          line-height: 1.1;
          font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; }
        .subPage #container main .catalogue .texts h3 a.arrowLink,
        .subPage #container main .feature .texts h3 a.arrowLink {
          position: relative;
          padding: 0 31px 0 12px;
          display: block;
          font-size: 16px;
          line-height: 26px;
          margin: 0 0 12px; }
          .subPage #container main .catalogue .texts h3 a.arrowLink:before,
          .subPage #container main .feature .texts h3 a.arrowLink:before {
            content: '';
            display: block;
            width: 6px;
            height: 9px;
            background: url("/assets/css/images/common/arrow_s_p_r.svg") no-repeat center center;
            background-size: contain;
            position: absolute;
            left: 0;
            top: 8px;
            margin: 0 0 0; }
      .subPage #container main .catalogue .texts h2 + h3,
      .subPage #container main .feature .texts h2 + h3 {
        padding-top: 2px !important; }
        .subPage #container main .catalogue .texts h2 + h3:before,
        .subPage #container main .feature .texts h2 + h3:before {
          top: 2px !important; }
      .subPage #container main .catalogue .texts h3 + h2,
      .subPage #container main .feature .texts h3 + h2 {
        margin-top: -10px !important; }
      .subPage #container main .catalogue .texts h2,
      .subPage #container main .feature .texts h2 {
        margin: 0;
        padding: 0; }
      .subPage #container main .catalogue .texts h3,
      .subPage #container main .feature .texts h3 {
        margin: 0;
        padding: 0; }
      .subPage #container main .catalogue .texts p,
      .subPage #container main .feature .texts p {
        margin: 0 0 10px;
        padding: 0;
        font-size: 13px;
        line-height: 20px; }
        .subPage #container main .catalogue .texts p:last-child,
        .subPage #container main .feature .texts p:last-child {
          margin: 0; }
  .subPage #container main .catalogue + .slashArea,
  .subPage #container main .feature + .slashArea {
    margin: 32px 0 0; }
  .subPage #container main .catalogue + section,
  .subPage #container main .feature + section {
    margin-top: 40px; }
  .subPage #container main .numLinkList {
    list-style-type: none;
    margin: 0;
    padding: 0; }
    .subPage #container main .numLinkList li {
      font-weight: bold;
      position: relative;
      border-bottom: 1px dotted #dbdbdb;
      padding: 0 0 10px;
      margin: 0 0 8px; }
      .subPage #container main .numLinkList li a[target="_blank"]:after {
        content: '';
        display: inline-block;
        width: 12px;
        height: 10px;
        margin: 0 0 0 4px;
        background-image: url("/assets/css/images/common/icn_blank.svg");
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain; }
      .subPage #container main .numLinkList li a[href$=".pdf"]:after {
        content: '';
        background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain;
        display: inline-block;
        width: 12px !important;
        height: 13px !important;
        margin: 0 0 0 5px;
        position: relative;
        top: 2px; }
      .subPage #container main .numLinkList li .num {
        display: block;
        width: 30px;
        height: 30px;
        border: 1px solid #d8d8d8;
        background: #f7f7f7;
        text-align: center;
        font-size: 14px;
        padding: 8px 0;
        box-sizing: border-box;
        line-height: 1;
        position: absolute;
        left: 0;
        top: 0; }
      .subPage #container main .numLinkList li .text,
      .subPage #container main .numLinkList li a {
        padding: 4px 0 4px 39px;
        display: block; }

.subPage .newsInfo dl {
  margin: 0;
  padding: 16px 0;
  border-top: 1px solid #dbdbdb;
  border-bottom: 1px solid #dbdbdb; }
  .subPage .newsInfo dl dt {
    margin: 0 0 10px;
    padding: 0 5px;
    float: left;
    background: #e8e8e8;
    width: 76px;
    text-align: center; }
    .subPage .newsInfo dl dt:last-of-type {
      margin-bottom: 0; }
  .subPage .newsInfo dl dd {
    margin: 0 0 10px;
    padding: 0 0 0 12px;
    overflow: hidden; }
    .subPage .newsInfo dl dd p {
      margin: 0;
      padding: 0; }
    .subPage .newsInfo dl dd:last-of-type {
      margin-bottom: 0; }

.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -ms-touch-action: pan-y;
      touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    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; }

/*! fancyBox v2.1.5 fancyapps.com | fancyapps.com/fancybox/#license */
.fancybox-wrap,
.fancybox-skin,
.fancybox-outer,
.fancybox-inner,
.fancybox-image,
.fancybox-wrap iframe,
.fancybox-wrap object,
.fancybox-nav,
.fancybox-nav span,
.fancybox-tmp {
  padding: 0;
  margin: 0;
  border: 0;
  outline: none;
  vertical-align: top; }

.fancybox-wrap {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 8020; }

.fancybox-skin {
  position: relative;
  background: #f9f9f9;
  color: #444;
  text-shadow: none;
  border-radius: 4px; }

.fancybox-opened {
  z-index: 8030; }

.fancybox-opened .fancybox-skin {
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5); }

.fancybox-outer, .fancybox-inner {
  position: relative; }

.fancybox-inner {
  overflow: hidden; }

.fancybox-type-iframe .fancybox-inner {
  -webkit-overflow-scrolling: touch; }

.fancybox-error {
  color: #444;
  font: 14px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
  margin: 0;
  padding: 15px;
  white-space: nowrap; }

.fancybox-image, .fancybox-iframe {
  display: block;
  width: 100%;
  height: 100%; }

.fancybox-image {
  max-width: 100%;
  max-height: 100%; }

#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
  background-image: url("images/common/fancybox_sprite.png"); }

#fancybox-loading {
  position: fixed;
  top: 50%;
  left: 50%;
  margin-top: -22px;
  margin-left: -22px;
  background-position: 0 -108px;
  opacity: 0.8;
  cursor: pointer;
  z-index: 8060; }

#fancybox-loading div {
  width: 44px;
  height: 44px;
  background: url("images/common/fancybox_loading.gif") center center no-repeat; }

.fancybox-close {
  position: absolute;
  top: -18px;
  right: -18px;
  width: 36px;
  height: 36px;
  cursor: pointer;
  z-index: 8040; }

.fancybox-nav {
  position: absolute;
  top: 0;
  width: 40%;
  height: 100%;
  cursor: pointer;
  text-decoration: none;
  background: transparent url("blank.gif");
  /* helps IE */
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  z-index: 8040; }

.fancybox-prev {
  left: 0; }

.fancybox-next {
  right: 0; }

.fancybox-nav span {
  position: absolute;
  top: 50%;
  width: 36px;
  height: 34px;
  margin-top: -18px;
  cursor: pointer;
  z-index: 8040;
  visibility: hidden; }

.fancybox-prev span {
  left: 10px;
  background-position: 0 -36px; }

.fancybox-next span {
  right: 10px;
  background-position: 0 -72px; }

.fancybox-nav:hover span {
  visibility: visible; }

.fancybox-tmp {
  position: absolute;
  top: -99999px;
  left: -99999px;
  visibility: hidden;
  max-width: 99999px;
  max-height: 99999px;
  overflow: visible !important; }

/* Overlay helper */
.fancybox-lock {
  overflow: hidden !important;
  width: auto; }

.fancybox-lock body {
  overflow: hidden !important; }

.fancybox-lock-test {
  overflow-y: hidden !important; }

.fancybox-overlay {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  display: none;
  z-index: 8010;
  background: url("images/common/fancybox_overlay.png"); }

.fancybox-overlay-fixed {
  position: fixed;
  bottom: 0;
  right: 0; }

.fancybox-lock .fancybox-overlay {
  overflow: auto;
  overflow-y: scroll; }

/* Title helper */
.fancybox-title {
  visibility: hidden;
  font: normal 13px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
  position: relative;
  text-shadow: none;
  z-index: 8050; }

.fancybox-opened .fancybox-title {
  visibility: visible; }

.fancybox-title-float-wrap {
  position: absolute;
  bottom: 0;
  right: 50%;
  margin-bottom: -35px;
  z-index: 8050;
  text-align: center; }

.fancybox-title-float-wrap .child {
  display: inline-block;
  margin-right: -100%;
  padding: 2px 20px;
  background: transparent;
  /* Fallback for web browsers that doesn't support RGBa */
  background: rgba(0, 0, 0, 0.8);
  border-radius: 15px;
  text-shadow: 0 1px 2px #222;
  color: #FFF;
  font-weight: bold;
  line-height: 24px;
  white-space: nowrap; }

.fancybox-title-outside-wrap {
  position: relative;
  margin-top: 10px;
  color: #fff; }

.fancybox-title-inside-wrap {
  padding-top: 10px; }

.fancybox-title-over-wrap {
  position: absolute;
  bottom: 0;
  left: 0;
  color: #fff;
  padding: 10px;
  background: #000;
  background: rgba(0, 0, 0, 0.8); }

/*Retina graphics!*/
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min--moz-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {
  #fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
    background-image: url("fancybox_sprite@2x.png");
    background-size: 44px 152px;
    /*The size of the normal image, half the size of the hi-res image*/ }
  #fancybox-loading div {
    background-image: url("fancybox_loading@2x.gif");
    background-size: 24px 24px;
    /*The size of the normal image, half the size of the hi-res image*/ } }

@media print {
  #header section h1 {
    background-image: url("images/common/header_logotext.png"); }
    #header section h1 a:before {
      background: url("images/common/header_logo_mark.png") no-repeat; }
    html[lang=en] #header section h1 {
      background: url("images/common/header_logotext_en.png") no-repeat right center; }
  #header nav > ul > li ul {
    display: none; }
  #footer section h1 {
    background-image: url(images/common/header_logotext.png); } }

.wyg {
  font-size: 14px;
  line-height: 1.7; }
  .wyg a[href$=".pdf"]:after {
    content: '';
    background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    width: 12px !important;
    height: 13px !important;
    margin: 0 0 0 5px;
    position: relative;
    top: 2px; }
  .wyg a[href$=".pdf"] .text:after {
    content: '';
    background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    width: 12px;
    height: 13px;
    margin: 0 0 0 5px;
    position: relative;
    top: 2px; }
  .wyg a[href$=".docx"]:after,
  .wyg a[href$=".doc"]:after {
    content: '';
    background-image: url("images/common/icn_docx.svg") !important;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    width: 12px !important;
    height: 13px !important;
    margin: 0 0 0 5px;
    position: relative;
    top: 2px; }
  .wyg a[href$=".docx"] .text:after,
  .wyg a[href$=".doc"] .text:after {
    content: '';
    background-image: url("images/common/icn_docx.svg") !important;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    width: 12px;
    height: 13px;
    margin: 0 0 0 5px;
    position: relative;
    top: 2px; }
  .wyg a[href$=".xls"]:after,
  .wyg a[href$=".xlsx"]:after {
    content: '';
    background-image: url("images/common/icn_xls.svg") !important;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    width: 12px !important;
    height: 13px !important;
    margin: 0 0 0 5px;
    position: relative;
    top: 2px; }
  .wyg a[href$=".xls"] .text:after,
  .wyg a[href$=".xlsx"] .text:after {
    content: '';
    background-image: url("images/common/icn_xls.svg") !important;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    width: 12px;
    height: 13px;
    margin: 0 0 0 5px;
    position: relative;
    top: 2px; }
  .wyg a[target="_blank"]:after {
    content: '';
    display: inline-block;
    width: 12px;
    height: 10px;
    margin: 0 0 0 4px;
    background-image: url("/assets/css/images/common/icn_blank.svg");
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain; }
  .wyg a[target="_blank"] .text:after {
    content: '';
    display: inline-block;
    width: 12px;
    height: 10px;
    margin: 0 0 0 4px;
    background-image: url("/assets/css/images/common/icn_blank.svg") !important;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain; }
  .lectureInfo .wyg > *:first-of-type {
    margin-top: 0; }
  .lectureInfo .wyg > *:last-of-type {
    margin-bottom: 0; }
  .subPage #container main .lectureInfo .wyg {
    margin-bottom: 25px; }
  .wyg table {
    table-layout: fixed;
    width: 100%;
    border: 1px solid #dbdbdb;
    margin-top: 30px; }
    .wyg table + * {
      clear: both; }
    .wyg table th,
    .wyg table td {
      font-size: 14px;
      border-right: 1px solid #dbdbdb;
      border-bottom: 1px solid #dbdbdb;
      box-sizing: border-box; }
      .wyg table th a[href$=".pdf"]:after,
      .wyg table td a[href$=".pdf"]:after {
        content: '';
        background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain;
        display: inline-block;
        width: 12px !important;
        height: 13px !important;
        margin: 0 0 0 5px;
        position: relative;
        top: 2px; }
      .wyg table th a[href$=".pdf"] .text:after,
      .wyg table td a[href$=".pdf"] .text:after {
        content: '';
        background-image: url("/assets/css/images/common/icn_pdf.svg") !important;
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain;
        display: inline-block;
        width: 12px;
        height: 13px;
        margin: 0 0 0 5px;
        position: relative;
        top: 2px; }
      .wyg table th a[href$=".docx"]:after,
      .wyg table th a[href$=".doc"]:after,
      .wyg table td a[href$=".docx"]:after,
      .wyg table td a[href$=".doc"]:after {
        content: '';
        background-image: url("images/common/icn_docx.svg") !important;
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain;
        display: inline-block;
        width: 12px !important;
        height: 13px !important;
        margin: 0 0 0 5px;
        position: relative;
        top: 2px; }
      .wyg table th a[href$=".docx"] .text:after,
      .wyg table th a[href$=".doc"] .text:after,
      .wyg table td a[href$=".docx"] .text:after,
      .wyg table td a[href$=".doc"] .text:after {
        content: '';
        background-image: url("images/common/icn_docx.svg") !important;
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain;
        display: inline-block;
        width: 12px;
        height: 13px;
        margin: 0 0 0 5px;
        position: relative;
        top: 2px; }
      .wyg table th a[href$=".xls"]:after,
      .wyg table th a[href$=".xlsx"]:after,
      .wyg table td a[href$=".xls"]:after,
      .wyg table td a[href$=".xlsx"]:after {
        content: '';
        background-image: url("images/common/icn_xls.svg") !important;
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain;
        display: inline-block;
        width: 12px !important;
        height: 13px !important;
        margin: 0 0 0 5px;
        position: relative;
        top: 2px; }
      .wyg table th a[href$=".xls"] .text:after,
      .wyg table th a[href$=".xlsx"] .text:after,
      .wyg table td a[href$=".xls"] .text:after,
      .wyg table td a[href$=".xlsx"] .text:after {
        content: '';
        background-image: url("images/common/icn_xls.svg") !important;
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain;
        display: inline-block;
        width: 12px;
        height: 13px;
        margin: 0 0 0 5px;
        position: relative;
        top: 2px; }
      .wyg table th a[target="_blank"]:after,
      .wyg table td a[target="_blank"]:after {
        content: '';
        display: inline-block;
        width: 12px;
        height: 10px;
        margin: 0 0 0 4px;
        background-image: url("/assets/css/images/common/icn_blank.svg");
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain; }
      .wyg table th a[target="_blank"] .text:after,
      .wyg table td a[target="_blank"] .text:after {
        content: '';
        display: inline-block;
        width: 12px;
        height: 10px;
        margin: 0 0 0 4px;
        background-image: url("/assets/css/images/common/icn_blank.svg") !important;
        background-position: left center;
        background-repeat: no-repeat;
        background-size: contain; }
    .wyg table th {
      font-weight: bold;
      text-align: center;
      background: #e3f1fa;
      padding: 17px 16px 16px; }
    .wyg table td {
      line-height: 1.4;
      vertical-align: top;
      padding: 12px 15px 11px; }
    .wyg table thead th:last-of-type {
      border-right: none; }
    .wyg table tbody td:last-of-type {
      border-right: none; }
    .wyg table tbody tr:last-of-type th,
    .wyg table tbody tr:last-of-type td {
      border-bottom: none; }

.annotate {
  font-size: 12px;
  line-height: 1.5;
  margin-top: 20px;
  margin-bottom: 30px; }
  .annotate p {
    font-size: 12px;
    margin: 0; }

.wygMovie {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%; }
  .subPage #container main section .wygMovie {
    margin: 30px auto; }
  .wygMovie iframe {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0; }

.topSlider {
  max-width: 1200px;
  min-width: 1020px; }
  #container .topSlider {
    margin: 0 auto; }

.topSliderMain .slick-slide {
  position: relative;
  width: 1200px;
  height: 420px; }
  .topSliderMain .slick-slide a {
    display: block; }
  .topSliderMain .slick-slide img {
    position: absolute;
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%); }

.topSliderThumb {
  position: relative; }
  .topSliderThumb .slider {
    width: 960px;
    text-align: center;
    margin: 0 auto; }
  .topSliderThumb .slick-list {
    padding: 0 !important; }
  .topSliderThumb .slick-track {
    margin: 0 auto; }
  .topSliderThumb .slick-slide {
    position: relative;
    height: 56px;
    margin: 10px;
    cursor: pointer; }
    .topSliderThumb .slick-slide a {
      display: block; }
    .topSliderThumb .slick-slide img {
      display: block;
      width: 100%;
      box-sizing: border-box; }
  .topSliderThumb .slick-current {
    position: relative; }

.topSliderArrows {
  position: absolute;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
  width: 1020px;
  height: 22px; }
  .topSliderThumb .topSliderArrows {
    margin: 0 auto;
    pointer-events: none; }
    .topSliderThumb .topSliderArrows .slick-arrow {
      pointer-events: auto; }
  .topSliderArrows .slick-arrow {
    width: 13px;
    height: 22px;
    text-indent: 100%;
    white-space: nowrap;
    border: none;
    padding: 0;
    overflow: hidden;
    background: url(/assets/css/images/common/arrow_grad_r.svg) no-repeat;
    background-size: 12px auto;
    background-position: center center;
    cursor: pointer; }
  .topSliderArrows .slick-prev {
    -ms-transform: scale(-1, 1);
        transform: scale(-1, 1); }
