@charset "UTF-8";
/* ==============================================================
*  ベース
* ============================================================ */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent; }

body {
  line-height: 1; }

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

ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

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

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

html, body {
  height: 100%; }

html {
  overflow-x: hidden;
  font-size: 62.5%; }

body {
  color: #333333;
  font-size: 1.25rem;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
  line-height: 1.7;
  background-color: #fff;
  -webkit-text-size-adjust: none; }
  @media screen and (min-width: 981px) {
    body {
      font-size: 1.6rem; } }

a {
  color: #2a4198;
  text-decoration: none;
  cursor: pointer; }
  a:hover {
    text-decoration: underline; }

.wrap {
  position: relative;
  overflow: hidden; }

img {
  vertical-align: bottom; }

@media screen and (max-width: 980px) {
  img {
    width: 100%;
    height: auto; } }
@media screen and (min-width: 981px) {
  a, a:hover, a::after, a span,
  a::before, button, input[type=button], input[type=reset], input[type=submit] {
    touch-action: manipulation;
    -moz-transition: 0.25s;
    -webkit-transition: 0.25s;
    -ms-transition: 0.25s;
    transition: 0.4s; }

  .inner, .inner_pc, .breadcrumb {
    width: 1040px;
    margin-left: auto;
    margin-right: auto; } }
/* ==============================================================
*  レイアウト
* ============================================================ */
/*
*  header style
* ----------------------------------------*/
#headArea {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  height: 88px;
  background: #fff; }
  #headArea #logo img.mark {
    width: 88px;
    height: 88px; }
  #headArea #logo .name {
    display: flex; }
  #headArea #logo .name img {
    width: 100%;
    opacity: 1; }

/* fixed */
#headArea,
#headArea.fixed,
#logo img,
#logo .name,
nav,
#menuBtn {
  transition: all 0.7s cubic-bezier(0.23, 1, 0.32, 1);
  -webkit-transition: all 0.7s cubic-bezier(0.23, 1, 0.32, 1);
  -moz-transition: all 0.7s cubic-bezier(0.23, 1, 0.32, 1);
  -o-transition: all 0.7s cubic-bezier(0.23, 1, 0.32, 1); }

#headArea.fixed,
.menuOpen #headArea {
  position: fixed;
  width: 100%;
  height: 60px;
  background-color: rgba(255, 255, 255, 0.9);
  border-bottom: 1px solid #2a4198;
  z-index: 555; }
  #headArea.fixed #logo img.mark,
  .menuOpen #headArea #logo img.mark {
    width: 60px;
    height: 60px; }
  #headArea.fixed #logo .name,
  .menuOpen #headArea #logo .name {
    width: 210px;
    height: 22px; }
  #headArea.fixed nav,
  .menuOpen #headArea nav {
    padding-top: 0; }
  #headArea.fixed li a::before,
  .menuOpen #headArea li a::before {
    height: 22px;
    margin: 0 auto; }

.menuOpen #headArea,
#top.menuOpen #headArea {
  background-color: rgba(0, 0, 0, 0.5) !important;
  border-bottom: 1px solid white; }
  .menuOpen #headArea #logo .name,
  #top.menuOpen #headArea #logo .name {
    display: inline-block;
    background: url(/kango/_wp/wp-content/themes/teikyo-u/common/img/logo.png) left center no-repeat;
    background-size: 210px; }
    .menuOpen #headArea #logo .name img,
    #top.menuOpen #headArea #logo .name img {
      opacity: 0; }
  .menuOpen #headArea nav li a,
  #top.menuOpen #headArea nav li a {
    color: #fff; }
  .menuOpen #headArea .access a::before,
  #top.menuOpen #headArea .access a::before {
    background: url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_access_top.png) center center no-repeat;
    background-size: 13px; }
  .menuOpen #headArea .qa a::before,
  #top.menuOpen #headArea .qa a::before {
    background: url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_qa_top.png) center center no-repeat;
    background-size: 18px; }
  .menuOpen #headArea .request a::before,
  #top.menuOpen #headArea .request a::before {
    background: url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_request_top.png) center center no-repeat;
    background-size: 21px; }

#top.menuOpen #headArea #logo .name img {
  display: none; }

#headArea.fixed nav,
.menuOpen #headArea nav {
  height: 60px; }
  #headArea.fixed nav #menuBtn,
  .menuOpen #headArea nav #menuBtn {
    height: 60px; }

/* top header */
#top header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%; }
  #top header li a {
    color: #fff; }
  #top header .access a::before {
    background: url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_access_top.png) center center no-repeat;
    background-size: 13px; }
  #top header .qa a::before {
    background: url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_qa_top.png) center center no-repeat;
    background-size: 18px; }
  #top header .request a::before {
    background: url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_request_top.png) center center no-repeat;
    background-size: 21px; }
  #top header #logo {
    z-index: 10; }

#top #headArea,
#top #headArea.fixed {
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 500; }

#logo,
#logo a {
  display: flex;
  justify-content: flex-start;
  align-items: center; }
  #logo .mark,
  #logo a .mark {
    margin-right: 15px; }

nav {
  display: flex;
  justify-content: space-around;
  align-items: center;
  padding: 5px 15px 0; }
  nav #menuBtn {
    width: 50px;
    height: 70px;
    display: flex;
    align-items: center;
    margin-left: 30px;
    z-index: 998;
    -o-transition: all 200ms ease-in;
    -webkit-transition: all 200ms ease-in;
    -moz-transition: all 200ms ease-in;
    transition: all 200ms ease-in; }
  nav ul {
    display: flex;
    justify-content: space-around;
    flex-wrap: nowrap;
    padding-top: 5px;
    z-index: 10; }
    nav ul li {
      display: block;
      margin: 0 10px;
      white-space: nowrap; }
    nav ul li a {
      display: block;
      color: #2a4198;
      font-size: 13px;
      font-weight: 500; }
      nav ul li a::before {
        content: "";
        display: block;
        width: 30px;
        height: 30px;
        margin: 0 auto; }
    nav ul .access a::before {
      background: url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_access.png) center center no-repeat;
      background-size: 13px; }
    nav ul .qa a::before {
      background: url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_qa.png) center center no-repeat;
      background-size: 18px; }
    nav ul .request a::before {
      background: url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_request.png) center center no-repeat;
      background-size: 21px; }

.menu_trigger,
.menu_trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box; }

.menu_trigger {
  display: block;
  position: relative;
  width: 100%;
  height: 34px; }

a.menu_trigger small {
  position: absolute;
  left: 0;
  bottom: -13px;
  width: 100%;
  color: #2a4198;
  font-size: 10px;
  text-align: center; }

a.menu_trigger.active small {
  color: #fff; }

#top a.menu_trigger small {
  color: #fff; }

a.menu_trigger:hover {
  text-decoration: none; }

.menu_trigger span {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  width: 32px;
  height: 4px;
  background-color: #2a4198;
  border-radius: 4px; }

#top .menu_trigger span,
#top .menu_trigger span:nth-of-type(2)::after {
  background-color: #fff; }

.menu_trigger span:nth-of-type(1) {
  top: 0; }

.menu_trigger span:nth-of-type(2) {
  top: 10px; }

.menu_trigger span:nth-of-type(3) {
  bottom: 10px; }

.menu_trigger span:nth-of-type(2)::after {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 4px;
  background-color: #2a4198;
  border-radius: 4px;
  transition: all .4s; }

.menu_trigger.active span:nth-of-type(1) {
  transform: translateY(20px) scale(0); }

.menu_trigger.active span:nth-of-type(2) {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg); }

.menu_trigger.active span:nth-of-type(2)::after {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg); }

.menu_trigger.active span:nth-of-type(3) {
  transform: translateY(-20px) scale(0); }

/*-----------------------------------------------------------------------
SP only ～980
-----------------------------------------------------------------------*/
@media screen and (max-width: 980px) {
  #headArea {
    height: 65px; }
    #headArea #logo img:first-child {
      width: 65px;
      height: 65px; }
    #headArea #logo .name img {
      width: 190px;
      height: 20px; }

  #headArea.fixed nav {
    padding: 0; }
  #headArea.fixed #logo img:last-child {
    width: 170px;
    height: 18px; }

  .menuOpen #headArea #logo .name,
  #top.menuOpen #headArea #logo .name {
    background: url(/kango/_wp/wp-content/themes/teikyo-u/common/img/logo.png) left center no-repeat;
    background-size: 170px; }

  nav {
    padding: 0 !important; }
    nav ul {
      display: none; }
    nav #menuBtn {
      margin-right: 0;
      margin-left: -15px; }
      nav #menuBtn .menu_trigger {
        position: relative;
        width: 100%;
        height: auto; }
        nav #menuBtn .menu_trigger span:nth-of-type(1) {
          top: -6px; }
        nav #menuBtn .menu_trigger span:nth-of-type(2) {
          top: 4px; }
        nav #menuBtn .menu_trigger span:nth-of-type(3) {
          bottom: 12px; }
        nav #menuBtn .menu_trigger small {
          bottom: -28px; }

  .menuOpen #headArea nav #menuBtn {
    margin-right: 5px; }

  .menuOpen #menuBtn .menu_trigger span:nth-of-type(2) {
    top: -7px; } }
/*
*  navigation
* ----------------------------------------*/
#breadcrumb {
  margin: 0 auto;
  padding: 15px 0; }
  #breadcrumb li {
    display: inline-block;
    margin-right: 5px;
    font-size: 1.2rem; }
    #breadcrumb li::before {
      font-size: 1.1rem;
      font-family: monospace;
      content: '>';
      padding-right: 8px;
      color: #726e6d; }
    #breadcrumb li:first-child::before {
      display: none; }

#menu_area {
  position: fixed;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
  z-index: -9999; }
  #menu_area:before {
    content: "";
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(255, 145, 30, 0.9);
    background: -moz-linear-gradient(left, rgba(255, 145, 30, 0.9) 30%, rgba(255, 98, 154, 0.9) 100%);
    background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255, 145, 30, 0.9)), color-stop(100%, rgba(255, 98, 154, 0.9)));
    background: -webkit-linear-gradient(left, rgba(255, 145, 30, 0.9) 30%, rgba(255, 98, 154, 0.9) 100%);
    background: -o-linear-gradient(left, rgba(255, 145, 30, 0.9) 30%, rgba(255, 98, 154, 0.9) 100%);
    background: -ms-linear-gradient(left, rgba(255, 145, 30, 0.9) 30%, rgba(255, 98, 154, 0.9) 100%);
    background: linear-gradient(to right, rgba(255, 145, 30, 0.9) 30%, rgba(255, 98, 154, 0.9) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$start-color', endColorstr='$end-color',GradientType=1 );
    opacity: 0;
    -o-transition: all 200ms ease-in;
    -webkit-transition: all 200ms ease-in;
    -moz-transition: all 200ms ease-in;
    transition: all 200ms ease-in; }
  #menu_area .inner {
    position: relative;
    z-index: 10;
    opacity: 0;
    -o-transition: all 200ms ease-in;
    -webkit-transition: all 200ms ease-in;
    -moz-transition: all 200ms ease-in;
    transition: all 200ms ease-in;
    padding: 3% 0; }

.menuOpen {
  position: fixed;
  height: 100vh;
  width: 100%; }
  .menuOpen #menuBtn a span {
    background-color: #fff !important; }
    .menuOpen #menuBtn a span:after {
      background-color: #fff !important; }
  .menuOpen #menu_area {
    display: block;
    z-index: 100;
    overflow-y: auto; }
    .menuOpen #menu_area:before {
      opacity: 1; }
    .menuOpen #menu_area .inner {
      opacity: 1; }

#menu_area {
  text-align: center; }
  #menu_area h2 {
    display: inline-block;
    margin-top: 40px;
    color: #fff;
    font-weight: 100;
    text-align: center;
    position: relative;
    padding-bottom: 10px; }
    #menu_area h2:before {
      content: "";
      width: 80%;
      height: 1px;
      background: #fff;
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      margin: auto; }
  #menu_area .gnav {
    margin-top: 30px;
    text-align: left;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    #menu_area .gnav li:nth-child(2),
    #menu_area .gnav li:nth-child(4) {
      position: relative; }
      #menu_area .gnav li:nth-child(2) a,
      #menu_area .gnav li:nth-child(4) a {
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        z-index: 100; }
    #menu_area .gnav li {
      box-sizing: border-box;
      width: 32%;
      margin-top: 2%;
      position: relative;
      border: 2px solid #fff;
      font-size: 2rem;
      overflow: hidden; }
      #menu_area .gnav li a {
        display: block;
        padding: 15px;
        color: #fff;
        position: relative;
        text-decoration: none; }
        #menu_area .gnav li a:hover {
          background: white;
          color: #2a4198; }
        #menu_area .gnav li a:after {
          content: "";
          left: calc(100% + 15px);
          width: 30px;
          height: 1px;
          background: rgba(255, 255, 255, 0.2);
          top: 0;
          bottom: 0;
          margin: auto;
          position: absolute;
          -o-transition: all 400ms cubic-bezier(0.645, 0.045, 0.355, 1) 0.1s;
          -webkit-transition: all 400ms cubic-bezier(0.645, 0.045, 0.355, 1) 0.1s;
          -moz-transition: all 400ms cubic-bezier(0.645, 0.045, 0.355, 1) 0.1s;
          transition: all 400ms cubic-bezier(0.645, 0.045, 0.355, 1) 0.1s; }
        #menu_area .gnav li a:hover:after {
          width: 300px;
          background: white; }
      #menu_area .gnav li span {
        display: none; }
      #menu_area .gnav li ul {
        display: block;
        border-top: 1px solid #fff; }
        #menu_area .gnav li ul li {
          width: auto;
          margin-top: 0;
          border: none; }
          #menu_area .gnav li ul li a {
            border-bottom: none; }
            #menu_area .gnav li ul li a:after {
              display: none; }
  #menu_area .target,
  #menu_area .instagram {
    display: flex;
    justify-content: center;
    margin-top: 40px; }
    #menu_area .target li,
    #menu_area .instagram li {
      width: 50%;
      font-size: 2rem; }
      #menu_area .target li a,
      #menu_area .instagram li a {
        display: block;
        padding: 15px;
        box-sizing: border-box;
        border: 2px solid #fff;
        text-align: center;
        color: #fff;
        text-decoration: none; }
        #menu_area .target li a:hover {
          background: #fff;
          color: #2a4198; }
          #menu_area .instagram li a {
            background: rgba(255, 255, 255, 0.8);
            color: #2a4198;
          }
          #menu_area .instagram li a:hover {
            background: rgba(255, 255, 255, 0.2);
          }
  #menu_area .btn {
    display: flex;
    justify-content: space-between;
    margin-top: 50px; }
    #menu_area .btn li {
      width: 23%;
      box-sizing: border-box;
      border: 2px solid #fff; }
      #menu_area .btn li a {
        display: block;
        background: rgba(255, 255, 255, 0.8);
        color: #2a4198;
        text-decoration: none;
        text-align: center;
        padding: 15px;
        font-size: 2rem;
        font-weight: 700; }
        #menu_area .btn li a:hover {
          background: rgba(255, 255, 255, 0.2); }

/*-------------------------------------
SP only ～980
-------------------------------------*/
@media screen and (max-width: 980px) {
  #breadcrumb {
    padding: 15px 5%; }

  .menuOpen #menu_area .inner {
    padding-bottom: 80px; }

  #menu_area {
    text-align: center; }
    #menu_area h2 {
      display: inline-block;
      color: #fff;
      font-weight: 100;
      text-align: center;
      position: relative;
      padding-bottom: 10px; }
      #menu_area h2:first-child {
        margin-top: 60px; }
      #menu_area h2:before {
        content: "";
        width: 80%;
        height: 1px;
        background: #fff;
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto; }
    #menu_area .gnav {
      margin-top: 20px;
      padding: 0 5%; }
      #menu_area .gnav li {
        width: 48%;
        font-size: 4.5vw; }
        #menu_area .gnav li a::after {
          display: none; }
        #menu_area .gnav li ul li {
          font-size: 3.5vw; }
    #menu_area .target {
      display: flex;
      justify-content: space-between;
      margin-top: 20px;
      padding: 0 5%; }
      #menu_area .target li {
        width: 50%;
        margin: 0 auto; }
        #menu_area .target li a {
          display: block;
          padding: 15px;
          box-sizing: border-box;
          border: 2px solid #fff;
          text-align: center;
          color: #fff;
          font-size: 4.5vw;
          text-decoration: none; }
          #menu_area .target li a:hover {
            background: #fff;
            color: #2a4198; }
    #menu_area .btn {
      flex-wrap: wrap;
      margin-top: 30px;
      padding: 0 5%; }
      #menu_area .btn li {
        width: 48%;
        margin-top: 10px; }
        #menu_area .btn li a {
          padding: 15px 5px;
          font-size: 3.8vw; } }
/*-------------------------------------
PC only 981～
-------------------------------------*/
@media screen and (min-width: 981px) {
  #breadcrumb {
    width: 1040px; } }
/*
*  footer
* ----------------------------------------*/
#naviArea ul {
  display: flex;
  justify-content: space-around;
  padding: 0 2%; }
  #naviArea ul li {
    position: relative;
    width: 120px;
    text-align: center; }
  #naviArea ul a {
    display: block;
    position: relative;
    padding-top: 130px;
    text-align: center;
    font-weight: bold; }
    #naviArea ul a:hover {
      text-decoration: none; }
  #naviArea ul a::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 120px;
    height: 120px;
    background: #fff;
    border: 1px solid #2a4198;
    border-radius: 100%; }
  #naviArea ul a:hover::before {
    background-color: #2a4198;
    color: #fff; }
  #naviArea ul .access a::before {
    background: #fff url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_access.png) center center no-repeat;
    background-size: 27px; }
  #naviArea ul .access a:hover::before {
    background: #2a4198 url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_access_top.png) center center no-repeat;
    background-size: 27px; }
  #naviArea ul .qa a::before {
    background: #fff url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_qa.png) center center no-repeat;
    background-size: 39px; }
  #naviArea ul .qa a:hover::before {
    background: #2a4198 url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_qa_top.png) center center no-repeat;
    background-size: 39px; }
  #naviArea ul .request a::before {
    background: #fff url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_request.png) center center no-repeat;
    background-size: 42px; }
  #naviArea ul .request a:hover::before {
    background: #2a4198 url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_request_top.png) center center no-repeat;
    background-size: 42px; }
#naviArea .link_btn {
  font-weight: bold; }

footer {
  padding: 50px 0 0;
  background: #f7f7f7; }
  footer .b_box {
    position: relative; }
  footer .name * {
    display: block;
    text-align: center; }
  footer .name span {
    font-size: 1.4rem; }
  footer .name strong {
    color: #2a4198;
    font-size: 2.2rem; }
  footer dl dd .time {
    display: inline-block; }
  footer .policy_link {
    margin-top: 30px;
    text-align: center; }
    footer .policy_link li {
      display: inline-block;
      margin: 0 10px; }
      footer .policy_link li a {
        color: #333;
        font-size: 1.3rem; }

#copyRight {
  padding: 38px 0;
  font-size: 1.2rem;
  text-align: center; }

#pageTop {
  position: fixed;
  bottom: 16px;
  right: 20px;
  z-index: 999; }
  #pageTop span {
    position: relative;
    display: block;
    z-index: 999;
    padding: 0;
    border-radius: 100%;
    width: 56px;
    height: 56px;
    border: 1px solid #2a4198;
    background-color: #fff;
    color: #2a4198;
    font-weight: bold;
    text-decoration: none;
    text-align: center;
    cursor: pointer; }
    #pageTop span::before {
      position: absolute;
      top: 45%;
      left: 38%;
      content: "";
      display: block;
      width: 12px;
      height: 12px;
      border: 1px solid;
      border-color: #2a4198 #2a4198 transparent transparent;
      transform: rotate(-45deg); }
    #pageTop span:hover {
      text-decoration: none;
      opacity: 0.7; }

/*-------------------------------------------------------------------------
SP only ～980
-------------------------------------------------------------------------*/
@media screen and (max-width: 980px) {
  #naviArea {
    padding: 40px 5% 20px; }
    #naviArea ul {
      margin-bottom: 20px;
      padding: 0 2%; }
      #naviArea ul li {
        width: 80px; }
      #naviArea ul a {
        display: block;
        position: relative;
        padding-top: 90px;
        text-align: center;
        font-weight: bold; }
      #naviArea ul a::before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 80px;
        height: 80px;
        background: #fff;
        border: 1px solid #2a4198;
        border-radius: 100%; }
      #naviArea ul a:hover::before {
        background-color: #2a4198;
        color: #fff; }
    #naviArea .link_btn a {
      padding: 15px 0;
      font-size: 3vw; }

  footer {
    padding: 0 5%;
    text-align: center; }
    footer .b_box {
      padding: 20px 15px; }
    footer .name {
      position: absolute;
      top: -45px;
      left: 0;
      right: 0;
      margin: auto; }
    footer .link_btn {
      width: 90%;
      margin: 0 auto 30px; }
    footer dl dt {
      font-size: 1.6rem;
      font-weight: bold; }
    footer dl dd .time {
      padding-left: 5em;
      text-indent: -7em; }

  #top footer {
    padding: 70px 5% 0; } }
/*-------------------------------------------------------------------------
PC only 981～
-------------------------------------------------------------------------*/
@media screen and (min-width: 981px) {
  #naviArea {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 1040px;
    margin: 0 auto;
    padding: 80px 0; }
    #naviArea ul {
      width: 46%;
      padding: 0 2%; }
      #naviArea ul li {
        position: relative;
        width: 120px;
        text-align: center; }
      #naviArea ul a {
        display: block;
        position: relative;
        padding-top: 130px;
        text-align: center;
        font-weight: bold; }
        #naviArea ul a:hover {
          text-decoration: none; }
      #naviArea ul a::before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 120px;
        height: 120px;
        background: #fff;
        border: 1px solid #2a4198;
        border-radius: 100%; }
      #naviArea ul a:hover::before {
        background-color: #2a4198;
        color: #fff; }
    #naviArea .link_btn {
      width: 48%; }
      #naviArea .link_btn a {
        font-size: 2rem;
        line-height: 100px; }

  footer {
    padding: 50px 0 0; }
    footer .inner {
      width: 1040px;
      margin: 0 auto; }
    footer #naviArea {
      justify-content: space-around;
      padding: 0 0 40px; }
      footer #naviArea ul {
        width: 54%;
        padding: 0; }
        footer #naviArea ul li {
          position: relative;
          width: auto;
          height: 60px;
          margin-right: 26px; }
        footer #naviArea ul a {
          display: block;
          position: relative;
          padding-top: 0;
          padding-left: 74px;
          text-align: center;
          font-weight: bold;
          line-height: 60px; }
          footer #naviArea ul a:hover {
            text-decoration: none; }
        footer #naviArea ul a::before {
          content: "";
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          width: 60px;
          height: 60px;
          background: #fff;
          border: 1px solid #2a4198;
          border-radius: 100%; }
        footer #naviArea ul a:hover::before {
          background-color: #2a4198;
          color: #fff; }
        footer #naviArea ul .access a::before {
          background-size: 30%; }
        footer #naviArea ul .access a:hover::before {
          background-size: 30%; }
        footer #naviArea ul .qa a::before, footer #naviArea ul .qa a:hover::before {
          background-size: 38%; }
        footer #naviArea ul .request a::before, footer #naviArea ul .request a:hover::before {
          background-size: 40%; }
      footer #naviArea .link_btn {
        width: 40%; }
        footer #naviArea .link_btn a {
          font-size: 1.7rem;
          line-height: 58px; }
    footer .b_box {
      padding: 36px 0; }
    footer .name {
      position: absolute;
      top: -50px;
      left: 50%;
      -webkit-transform: translate(-50%, 0);
      transform: translate(-50%, 0); }
    footer dl {
      text-align: center;
      letter-spacing: 2px; }
      footer dl dt {
        font-size: 24px;
        font-weight: bold; }
      footer dl dd {
        font-size: 1.4rem; }
        footer dl dd .time {
          padding-left: 6em;
          text-indent: -8em; }
    footer #copyRight {
      margin-top: 40px;
      background: #fff; }

  #top footer {
    padding: 94px 0 0; } }
/* ==============================================================
*  モジュール（汎用的に使用できるスタイル）
* ============================================================ */
/*
*  box
* ----------------------------------------*/
/* pickup_box ---------------------------*/
.pickup_box {
  position: relative;
  margin: 0 auto;
  padding: 30px;
  background: #f7f7f7; }
  .pickup_box .main_box dt {
    padding-bottom: 10px;
    border-bottom: 1px solid #ccc; }

.ribbon {
  position: absolute;
  top: -5px;
  left: -5px;
  width: 107px;
  height: 107px;
  overflow: hidden; }
  .ribbon:before, .ribbon:after {
    content: "";
    position: absolute;
    background: #b71c1c;
    width: 20px;
    height: 20px;
    z-index: -1; }
  .ribbon:before {
    bottom: 0;
    left: 0; }
  .ribbon:after {
    top: 0;
    right: 0; }
  .ribbon span {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    width: 180px;
    height: 32px;
    background: #ff911e;
    color: #fff;
    font-size: 16px;
    top: 27px;
    left: -48px;
    transform: rotate(-45deg);
    box-shadow: 0 2px 0px rgba(0, 0, 0, 0.2); }

.ribbon_s {
  position: absolute;
  top: -5px;
  left: -5px;
  width: 84px;
  height: 84px;
  overflow: hidden; }
  .ribbon_s:before, .ribbon_s:after {
    content: "";
    position: absolute;
    background: #b71c1c;
    width: 20px;
    height: 20px;
    z-index: -1; }
  .ribbon_s:before {
    bottom: 0;
    left: 0; }
  .ribbon_s:after {
    top: 0;
    right: 0; }
  .ribbon_s span {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    width: 130px;
    height: 27px;
    background: #ff911e;
    color: #fff;
    font-size: 15px;
    top: 18px;
    left: -32px;
    transform: rotate(-45deg);
    box-shadow: 0 2px 0px rgba(0, 0, 0, 0.2); }

/* border box -------------------------*/
.b_box {
  border: 8px solid #fff; }

/* gradation box ----------------------------*/
.grd_box {
  width: 50%;
  background: #ff911e;
  background: -moz-linear-gradient(left, #ff911e 30%, #ff629a 100%);
  background: -webkit-gradient(linear, left top, right top, color-stop(0%, #ff911e), color-stop(100%, #ff629a));
  background: -webkit-linear-gradient(left, #ff911e 30%, #ff629a 100%);
  background: -o-linear-gradient(left, #ff911e 30%, #ff629a 100%);
  background: -ms-linear-gradient(left, #ff911e 30%, #ff629a 100%);
  background: linear-gradient(to right, #ff911e 30%, #ff629a 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$start-color', endColorstr='$end-color',GradientType=1 ); }

/*-------------------------------------
SP only ～980
-------------------------------------*/
@media screen and (max-width: 980px) {
  .scroll_box {
    overflow: auto;
    white-space: nowrap;
    margin-bottom: 10px; }
    .scroll_box table {
      width: 100%; }
    .scroll_box::-webkit-scrollbar {
      height: 5px; }
    .scroll_box::-webkit-scrollbar-track {
      background: #F1F1F1; }
    .scroll_box::-webkit-scrollbar-thumb {
      background: #BCBCBC; } }
/*-------------------------------------
PC only 981～
-------------------------------------*/
@media screen and (min-width: 981px) {
  .inner_box {
    width: 1040px;
    margin: 0 auto; }

  .flex_box {
    display: flex;
    justify-content: space-between;
    align-items: center; } }
/*
*  form
* ----------------------------------------*/
/*
*  table
* ----------------------------------------*/
table:not([class]) {
  width: 100%;
  margin: 15px 0;
  border: 1px solid #ccc;
  border-collapse: inherit; }
  table:not([class]) th, table:not([class]) td {
    padding: 10px 5px;
    border-top: 1px solid #ccc;
    text-align: center;
    vertical-align: middle; }
  table:not([class]) th {
    background: #EDEDED;
    color: #2a4198;
    border-left: 1px solid #fff; }
  table:not([class]) td,
  table:not([class]) tr > td:first-child.bdr_d {
    border-left: 1px dashed #ccc; }
  table:not([class]) tr > th:first-child,
  table:not([class]) tr > td:first-child {
    border-left: 0; }
  table:not([class]) tr:first-child th {
    border-top: 0; }

table.no_border th, table.no_border td {
  padding: 5px 10px; }
table.no_border th {
  color: #2a4198;
  text-align: left;
  white-space: nowrap; }

.border_nt td {
  border-top: 0 !important; }

.border_nb td {
  border-bottom: 0 !important; }

.br_l {
  border-left: 1px dashed #ccc !important; }

/*-------------------------------------
SP only ～980
-------------------------------------*/
/*-------------------------------------
PC only 981～
-------------------------------------*/
/*
*  parts scss
* ----------------------------------------*/
#mainArea p {
  margin-bottom: 1em; }
  #mainArea p.read_copy {
    margin-bottom: 30px;
    font-size: 1.9rem;
    font-weight: bold;
    letter-spacing: 4px;
    text-align: center; }
#mainArea a {
  text-decoration: underline; }
  #mainArea a:hover {
    text-decoration: none; }

/* title ------------------------------------------*/
#mainArea h2 {
  position: relative;
  display: block;
  margin: 50px auto 30px;
  padding: 0;
  text-align: center;
  color: #ff629a;
  font-size: 2.9rem;
  letter-spacing: 6px; }
  #mainArea h2 span {
    display: inline-block;
    padding: 0 10px;
    background: #fff; }
  #mainArea h2::before, #mainArea h2::after {
    content: "";
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 250px;
    height: 1px;
    background-color: #ff629a;
    z-index: -1; }
  #mainArea h2::before {
    left: 0; }
  #mainArea h2::after {
    right: 0; }
  #mainArea h2:first-child {
    margin-top: 30px; }
#mainArea h3 {
  margin: 40px 0 20px;
  padding: 5px 15px;
  background: #FADAE4;
  color: #ff629a;
  border-radius: 30px;
  text-align: center;
  font-family: "Hiragino Mincho ProN", "HGS明朝E", "メイリオ", "Meiryo", serif; }
#mainArea h4 {
  margin: 30px 0 15px; }

/* link button ------------------------------------------*/
.link_btn a {
  display: block;
  position: relative;
  background-color: #fff;
  border: 1px solid #2a4198;
  border-radius: 4px;
  text-align: center;
  text-decoration: none !important; }
  .link_btn a::before {
    display: block;
    position: absolute;
    right: 0;
    top: 50%;
    content: "";
    width: 40px;
    height: 1px;
    background: #2a4198; }
  .link_btn a:hover {
    background: #2a4198;
    color: #fff;
    text-decoration: none; }
    .link_btn a:hover::after {
      background: #fff; }

.link_pdf a {
  display: block;
  position: relative;
  width: 50%;
  margin: auto;
  padding: 20px 0;
  background-color: #fff;
  border: 1px solid #2a4198;
  border-radius: 4px;
  font-weight: bold;
  text-align: center;
  text-decoration: none !important; }
  .link_pdf a::before {
    display: block;
    position: absolute;
    right: 0;
    top: 50%;
    content: "";
    width: 40px;
    height: 1px;
    background: #2a4198; }
  .link_pdf a::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-left: 8px;
    margin-bottom: 3px;
    background: url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_pdf.gif) left center no-repeat;
    vertical-align: middle; }
  .link_pdf a:hover {
    background: #2a4198;
    color: #fff;
    text-decoration: none; }

.link_word a {
  display: block;
  position: relative;
  width: 50%;
  margin-top: 10px;
  padding: 20px 0;
  background-color: #fff;
  border: 1px solid #2a4198;
  border-radius: 4px;
  font-weight: bold;
  text-align: center;
  text-decoration: none !important; }
  .link_word a::before {
    display: block;
    position: absolute;
    right: 0;
    top: 50%;
    content: "";
    width: 40px;
    height: 1px;
    background: #2a4198; }
  .link_word a::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-left: 8px;
    margin-bottom: 3px;
    background: url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_word.gif) left center no-repeat;
    vertical-align: middle; }
  .link_word a:hover {
    background: #2a4198;
    color: #fff;
    text-decoration: none; }

.link_blank a {
  display: block;
  position: relative;
  width: 50%;
  margin: auto;
  padding: 20px 0;
  background-color: #fff;
  border: 1px solid #2a4198;
  border-radius: 4px;
  font-weight: bold;
  text-align: center;
  text-decoration: none !important; }
  .link_blank a::before {
    display: block;
    position: absolute;
    right: 0;
    top: 50%;
    content: "";
    width: 40px;
    height: 1px;
    background: #2a4198; }
  .link_blank a::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-left: 8px;
    margin-bottom: 3px;
    background: url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_blank.png) left center no-repeat;
    vertical-align: middle; }
  .link_blank a:hover {
    background: #2a4198;
    color: #fff;
    text-decoration: none; }
  .link_blank a:hover::after {
    background: url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_blank2.png) left center no-repeat; }
	
.link_list {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  margin: 40px auto 0 !important;
  padding: 20px; }
  .link_list::after {
    content: "";
    display: block;
    width: 48%; }
  .link_list li {
    width: 48%;
    margin: 0 1%; }
    .link_list li a {
      display: block;
      position: relative;
      margin-top: 10px;
      padding: 20px 0;
      background-color: #fff;
      border: 1px solid #2a4198;
      border-radius: 4px;
      font-weight: bold;
      text-align: center;
      text-decoration: none !important; }
      .link_list li a::before {
        display: block;
        position: absolute;
        right: 0;
        top: 50%;
        content: "";
        width: 40px;
        height: 1px;
        background: #2a4198; }
      .link_list li a::after {
        content: "";
        display: inline-block;
        width: 16px;
        height: 16px;
        margin-left: 8px;
        margin-bottom: 3px;
        background: url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_blank.png) left center no-repeat;
        vertical-align: middle; }
      .link_list li a:hover {
        background: #2a4198;
        color: #fff;
        text-decoration: none; }
      .link_list li a:hover::after {
        background: url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_blank2.png) left center no-repeat; }

.pdf_list {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  margin-top: -10px;
  padding: 0 20px; }
  .pdf_list::after {
    content: "";
    display: block;
    width: 48%; }
  .pdf_list li {
    width: 48%;
    margin: 0 1%; }
    .pdf_list li a {
      display: block;
      position: relative;
      padding: 20px 0;
      background-color: #fff;
      border: 1px solid #2a4198;
      border-radius: 4px;
      font-weight: bold;
      text-align: center;
      text-decoration: none !important; }
      .pdf_list li a::before {
        display: block;
        position: absolute;
        right: 0;
        top: 50%;
        content: "";
        width: 40px;
        height: 1px;
        background: #2a4198; }
      .pdf_list li a::after {
        content: "";
        display: inline-block;
        width: 16px;
        height: 16px;
        margin-left: 8px;
        margin-bottom: 3px;
        background: url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_pdf.gif) left center no-repeat;
        vertical-align: middle; }
      .pdf_list li a:hover {
        background: #2a4198;
        color: #fff;
        text-decoration: none; }

/* list style ------------------------------------------*/
#mainArea ol, #mainArea ul:not([class]) {
  margin-left: 35px; }
#mainArea ol, #mainArea ul {
  margin-bottom: 1em; }
  #mainArea ol li, #mainArea ul li {
    margin-bottom: 10px; }
#mainArea ol ol, #mainArea ol ul,
#mainArea ul ol, #mainArea ul ul {
  margin-left: 0 !important; }
#mainArea ul:not([class]) li {
  list-style: disc; }
#mainArea ul:not([class]) ul:not([class]) {
  margin-left: 35px !important; }
  #mainArea ul:not([class]) ul:not([class]) li {
    text-indent: 0 !important; }

.list_none {
  margin-left: 0 !important; }
  .list_none li {
    list-style: none; }

.list_notes li {
  margin-bottom: 5px !important;
  padding-left: 2em;
  text-indent: -2em;
  font-size: 1.3rem; }

ol.list_parentheses {
  margin: 10px 0 0; }
  ol.list_parentheses > li {
    list-style-type: none !important;
    padding-left: 2em;
    text-indent: -1.8em;
    counter-increment: cnt; }
    ol.list_parentheses > li::before {
      display: marker;
      content: "(" counter(cnt) ") "; }

/*----------------------------------------------------------------------------------------
SP only ～980
----------------------------------------------------------------------------------------*/
@media screen and (max-width: 980px) {
  #mainArea p.read_copy {
    font-size: 3vw; }
  #mainArea a {
    text-decoration: underline; }
    #mainArea a:hover {
      text-decoration: none; }

  /* title ------------------------------------------*/
  #mainArea h2 {
    padding: 0;
    font-size: 4.2vw;
    letter-spacing: 2px; }
    #mainArea h2::before, #mainArea h2::after {
      content: "";
      position: absolute;
      top: 50%;
      display: inline-block;
      width: 250px;
      height: 1px;
      background-color: #ff629a;
      z-index: -1; }
    #mainArea h2::before {
      left: 0; }
    #mainArea h2::after {
      right: 0; }
    #mainArea h2:first-child {
      margin-top: 30px; }
  #mainArea h3 {
    margin: 40px 0 20px;
    padding: 5px 15px;
    background: #FADAE4;
    color: #ff629a;
    border-radius: 30px;
    text-align: center; }

  /* list style ------------------------------------------*/
  #mainArea ol, #mainArea ul:not([class]) {
    margin-left: 25px; }

  /* link button ------------------------------------------*/
  .link_pdf a,
  .link_word a,
  .link_blank a {
    width: auto; }
    .link_pdf a::before,
    .link_word a::before,
	.link_blank a::before {
      display: none; } }
.center {
  text-align: center !important; }

.right {
  text-align: right !important; }

.left {
  text-align: left !important; }

.mt0 {
  margin-top: 0 !important; }

.mb0 {
  margin-bottom: 0 !important; }

.mr0 {
  margin-right: 0 !important; }

.ml0 {
  margin-left: 0 !important; }

.small {
  font-size: 1.2rem; }

.notes {
  font-size: 1.3rem; }

.c_red {
  color: #B30003; }

.w80p {
  width: 80% !important; }

.p_relative {
  position: relative; }

/*----------------------------------------------------------------------------------------
SP only ～980
----------------------------------------------------------------------------------------*/
@media screen and (max-width: 980px) {
  .indent {
    padding: 0 2%; }

  .n_line {
    display: block; } }
/*----------------------------------------------------------------------------------------
PC only 981～
----------------------------------------------------------------------------------------*/
@media screen and (min-width: 981px) {
  .indent {
    width: 1020px;
    margin: 0 auto; } }
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-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 {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .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; }

/* Slider */
.slick-loading .slick-list {
  background: #fff url("./ajax-loader.gif") center center no-repeat; }

/* Icons */
@font-face {
  font-family: "slick";
  src: url("/kango/_wp/wp-content/themes/teikyo-u/common/css/fonts/slick.eot");
  src: url("/kango/_wp/wp-content/themes/teikyo-u/common/css/fonts/slick.eot?#iefix") format("embedded-opentype"), url("/kango/_wp/wp-content/themes/teikyo-u/common/css/fonts/slick.woff") format("woff"), url("/kango/_wp/wp-content/themes/teikyo-u/common/css/fonts/slick.ttf") format("truetype"), url("/kango/_wp/wp-content/themes/teikyo-u/common/css/fonts/slick.svg") format("svg");
  font-weight: normal;
  font-style: normal; }
/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none; }
  .slick-prev:hover, .slick-prev:focus,
  .slick-next:hover,
  .slick-next:focus {
    outline: none;
    background: transparent;
    color: transparent; }
    .slick-prev:hover:before, .slick-prev:focus:before,
    .slick-next:hover:before,
    .slick-next:focus:before {
      opacity: 1; }
  .slick-prev.slick-disabled:before,
  .slick-next.slick-disabled:before {
    opacity: 0.25; }
  .slick-prev:before,
  .slick-next:before {
    font-family: "slick";
    font-size: 20px;
    line-height: 1;
    color: white;
    opacity: 0.75;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.slick-prev {
  left: -25px; }
  [dir="rtl"] .slick-prev {
    left: auto;
    right: -25px; }
  .slick-prev:before {
    content: "←"; }
    [dir="rtl"] .slick-prev:before {
      content: "→"; }

.slick-next {
  right: -25px; }
  [dir="rtl"] .slick-next {
    left: -25px;
    right: auto; }
  .slick-next:before {
    content: "→"; }
    [dir="rtl"] .slick-next:before {
      content: "←"; }

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px; }

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%; }
  .slick-dots li {
    position: relative;
    display: inline-block;
    height: 20px;
    width: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer; }
    .slick-dots li button {
      border: 0;
      background: transparent;
      display: block;
      height: 20px;
      width: 20px;
      outline: none;
      line-height: 0px;
      font-size: 0px;
      color: transparent;
      padding: 5px;
      cursor: pointer; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none; }
        .slick-dots li button:hover:before, .slick-dots li button:focus:before {
          opacity: 1; }
      .slick-dots li button:before {
        position: absolute;
        top: 0;
        left: 0;
        content: "?";
        width: 20px;
        height: 20px;
        font-family: "slick";
        font-size: 20px;
        line-height: 20px;
        text-align: center;
        color: black;
        opacity: 0.25;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .slick-dots li.slick-active button:before {
      color: black;
      opacity: 0.75; }

/* ==============================================================
*  各ページ固有のスタイル
* ============================================================ */
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-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 {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .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; }

/*
*  top
* ----------------------------------------*/
#top #silderArea {
  z-index: 0;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 840px; }
  #top #silderArea .slide01 {
    background-image: url(/kango/_wp/wp-content/themes/teikyo-u/img/mainvisual01.png); }
  #top #silderArea .slide02 {
    background-image: url(/kango/_wp/wp-content/themes/teikyo-u/img/mainvisual02.png); }
  #top #silderArea .slide03 {
    background-image: url(/kango/_wp/wp-content/themes/teikyo-u/img/mainvisual03.png); }
  #top #silderArea .slide {
    width: 100vw;
    height: 840px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center; }
#top #mainvisual {
  position: relative;
  height: 840px;
  background-size: cover; }
  #top #mainvisual .read_copy {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    color: #ff629a;
    font-size: 4.0rem;
    letter-spacing: 6px;
    position: absolute;
    top: 53%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    white-space: nowrap;
    text-shadow: 2px 2px 10px rgba(0, 0, 0, 0.2);
    z-index: 5; }
  #top #mainvisual .btn_scroll {
    position: absolute;
    bottom: 10px;
    left: 0;
    right: 0;
    width: 54px;
    margin: auto;
    animation: fluffy1 3s ease infinite; }
    #top #mainvisual .btn_scroll img {
      width: 54px; }
@keyframes fluffy1 {
  0% {
    transform: translateY(-20px); }
  5% {
    transform: translateY(-20px); }
  10% {
    transform: translateY(-20px); }
  20% {
    transform: translateY(-15px); }
  25% {
    transform: translateY(-20px); }
  30% {
    transform: translateY(-15px); }
  50% {
    transform: translateY(-20px); }
  100% {
    transform: translateY(-20px); } }
#top #newsArea {
  background-color: #f7f7f7; }
  #top #newsArea .inner_box {
    position: relative; }
  #top #newsArea #inportArea {
    margin-bottom: 30px; }
    #top #newsArea #inportArea h2 {
      color: #B30003; }
  #top #newsArea h2 {
    color: #2a4198;
    letter-spacing: 2px; }
  #top #newsArea dl {
    overflow: hidden; }
    #top #newsArea dl dt, #top #newsArea dl dd {
      float: left;
      margin-bottom: 10px; }
    #top #newsArea dl dt {
      position: relative;
      clear: both;
      width: 84px;
      padding-right: 36px;
      white-space: nowrap; }
      #top #newsArea dl dt::after {
        content: "";
        display: block;
        position: absolute;
        top: 50%;
        right: 0;
        width: 30px;
        height: 1px;
        background: #d6d6d6; }
    #top #newsArea dl dd {
      width: 540px;
      padding-left: 8px; }
      #top #newsArea dl dd span.label_new {
        display: inline-block;
        padding: 0 5px;
        color: #E83A3D;
        border: 1px solid #E83A3D;
        border-radius: 4px;
        font-size: 12px;
        vertical-align: text-bottom; }
#top #menuArea {
  padding: 100px 0; }
  #top #menuArea section {
    position: relative;
    margin-bottom: 60px; }
    #top #menuArea section:hover .grd_box {
      background: rgba(255, 255, 255, 0.8);
      border: 2px solid #ff629a;
      text-decoration: none;
      box-sizing: border-box; }
      #top #menuArea section:hover .grd_box a {
        text-decoration: none; }
      #top #menuArea section:hover .grd_box span.title {
        color: #ff6593; }
  #top #menuArea .img_box {
    margin: 0 auto; }
  #top #menuArea .grd_box {
    position: absolute;
    height: 100px;
    margin: auto;
    padding: 70px 0;
    text-align: center; }
    #top #menuArea .grd_box a {
      display: flex;
      justify-content: center;
      align-items: center;
      flex-wrap: wrap;
      flex-direction: column;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      box-sizing: border-box; }
      #top #menuArea .grd_box a span.title {
        display: inline-block;
        padding: 0 8px;
        color: #fff;
        font-size: 42px;
        line-height: 46px; }
#top #ocArea {
  min-height: 400px;
  background: url(/kango/_wp/wp-content/themes/teikyo-u/img/oc_bnr_bg.png) center center no-repeat;
  background-size: cover;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
#top #ocArea .title img {
  max-width: 506.5px;
  transition: 0.4s;
}
#top #ocArea .title .pc {
  display: block;
}
#top #ocArea .title .sp {
  display: none;
}
#top #ocArea .title img:hover {
  opacity: .8;
}
  /*
  #top #ocArea p {
    margin: 0 auto;
    text-align: center;
    position: relative;
    z-index: 10; }
    #top #ocArea p a {
      display: block;
      width: 100%;
      height: 100%;
      font-size: 32px;
      background: rgba(255, 255, 255, 0.9);
      color: #ff629a;
      font-family: Century Gothic, Arial, Helvetica, "sans-serif";
      font-weight: bold;
      line-height: 150px;
      letter-spacing: 5px; }
      #top #ocArea p a:before, #top #ocArea p a:after {
        content: "";
        position: absolute;
        left: 0;
        height: 8px;
        width: 100%;
        background: rgba(255, 145, 30, 0.9);
        background: -moz-linear-gradient(left, rgba(255, 145, 30, 0.9) 0%, rgba(255, 98, 154, 0.9) 100%);
        background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255, 145, 30, 0.9)), color-stop(100%, rgba(255, 98, 154, 0.9)));
        background: -webkit-linear-gradient(left, rgba(255, 145, 30, 0.9) 0%, rgba(255, 98, 154, 0.9) 100%);
        background: -o-linear-gradient(left, rgba(255, 145, 30, 0.9) 0%, rgba(255, 98, 154, 0.9) 100%);
        background: -ms-linear-gradient(left, rgba(255, 145, 30, 0.9) 0%, rgba(255, 98, 154, 0.9) 100%);
        background: linear-gradient(to right, rgba(255, 145, 30, 0.9) 0%, rgba(255, 98, 154, 0.9) 100%);
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$start-color', endColorstr='$end-color',GradientType=1 ); }
      #top #ocArea p a:before {
        top: 0; }
      #top #ocArea p a:after {
        bottom: 0; }
      #top #ocArea p a:hover {
        opacity: .8;
        text-decoration: none; }
*/
/*-------------------------------------------------------------------------
SP only ～980
-------------------------------------------------------------------------*/
@media screen and (max-width: 980px) {
  #top #silderArea {
    height: 75vh;
    min-height: 480px; }
    #top #silderArea .slide01 {
      background-image: url(/kango/_wp/wp-content/themes/teikyo-u/img/mainvisual01_sp.png); }
    #top #silderArea .slide02 {
      background-image: url(/kango/_wp/wp-content/themes/teikyo-u/img/mainvisual02_sp.png); }
    #top #silderArea .slide03 {
      background-image: url(/kango/_wp/wp-content/themes/teikyo-u/img/mainvisual03_sp.png); }
    #top #silderArea .slide {
      height: 75vh;
      min-height: 480px; }
  #top #mainvisual {
    height: 75vh;
    min-height: 480px; }
    #top #mainvisual .read_copy {
      font-size: 2.5rem; }
    #top #mainvisual::after {
      display: none; }
  #top #newsArea {
    padding: 70px 5%; }
    #top #newsArea .b_box {
      border: none; }
  #top #menuArea {
    padding: 60px 0; }
    #top #menuArea section {
      position: relative;
      margin-bottom: 20px; }
      #top #menuArea section:nth-child(even) .img_box {
        text-align: right; }
      #top #menuArea section:nth-child(even) .grd_box {
        left: 0; }
      #top #menuArea section:nth-child(odd) .grd_box {
        right: 0; }
    #top #menuArea .img_box {
      display: none;
      margin: 0 auto; }
      #top #menuArea .img_box img {
        width: 60%; }
    #top #menuArea .grd_box {
      /*			position: absolute;
      			top: 0;
      			bottom: 0;*/
      float: none;
      position: inherit;
      width: 100%;
      height: 100px;
      margin: auto;
      padding: 0;
      text-align: center;
      z-index: 100; }
      #top #menuArea .grd_box a {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap;
        flex-direction: column;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        box-sizing: border-box; }
        #top #menuArea .grd_box a:hover {
          background: #fff;
          border: 2px solid #ff629a;
          text-decoration: none; }
          #top #menuArea .grd_box a:hover span.title {
            color: #ff6593; }
        #top #menuArea .grd_box a span.title {
          display: inline-block;
          padding: 0 8px;
          color: #fff;
          font-size: 7vw; }
  #top #newsArea {
    padding: 50px 5%; }
    #top #newsArea h2 {
      margin-bottom: 20px;
      text-align: center; }
      #top #newsArea h2::before, #top #newsArea h2::after {
        content: "";
        display: inline-block;
        width: 30px;
        height: 2px;
        margin: 0 12px;
        background-color: #ccc;
        vertical-align: middle; }
    #top #newsArea dl {
      margin-bottom: 20px; }
      #top #newsArea dl dt {
        float: left;
        width: 23%;
        padding-right: 0; }
        #top #newsArea dl dt::after {
          display: none; }
      #top #newsArea dl dd {
        float: right;
        width: 74%; }
    #top #newsArea .link_btn {
      width: 90%;
      margin: 0 auto; }
      #top #newsArea .link_btn a {
        padding: 15px 0; }
  #top #ocArea {
    min-height: auto;
    background: url(/kango/_wp/wp-content/themes/teikyo-u/img/oc_bnr_bg_sp.png) center center no-repeat;
  }
  #top #ocArea .title img {
    width: 100%;
    max-width: 100%;
  }
  #top #ocArea .title .pc {
    display: none;
  }
  #top #ocArea .title .sp {
    display: block;
  }
    /*
    #top #ocArea p {
      width: 85%; }
      #top #ocArea p a {
        font-size: 6vw; }
    */
}
/*-------------------------------------------------------------------------
PC only 981～
-------------------------------------------------------------------------*/
@media screen and (min-width: 981px) {
  #top #newsArea {
    padding: 70px; }
    #top #newsArea h2 {
      position: absolute;
      top: -18px;
      left: 50px;
      color: #2a4198;
      font-size: 2.2rem;
      letter-spacing: 2px; }
    #top #newsArea .b_box {
      width: 680px;
      padding: 40px 40px 30px; }
    #top #newsArea .link_btn {
      position: absolute;
      right: 0;
      bottom: 40px;
      width: 300px; }
      #top #newsArea .link_btn a {
        padding: 18px 0; }
  #top #menuArea {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: wrap;
    width: 100%;
    margin: 0 auto;
    padding: 80px 0 10px; }
    #top #menuArea * {
      -moz-transition: 0.25s;
      -webkit-transition: 0.25s;
      -ms-transition: 0.25s;
      transition: 0.4s; }
    #top #menuArea section {
      position: relative;
      width: 31%;
      margin-bottom: 70px; }
      #top #menuArea section .img_box img {
        width: 100%; }
      #top #menuArea section .grd_box {
        left: 0;
        right: 0;
        bottom: 30px;
        width: 80%;
        height: 70px;
        padding: 0;
        background: rgba(255, 145, 30, 0.8);
        background: -moz-linear-gradient(left, rgba(255, 145, 30, 0.8) 0%, rgba(255, 98, 154, 0.8) 100%);
        background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255, 145, 30, 0.8)), color-stop(100%, rgba(255, 98, 154, 0.8)));
        background: -webkit-linear-gradient(left, rgba(255, 145, 30, 0.8) 0%, rgba(255, 98, 154, 0.8) 100%);
        background: -o-linear-gradient(left, rgba(255, 145, 30, 0.8) 0%, rgba(255, 98, 154, 0.8) 100%);
        background: -ms-linear-gradient(left, rgba(255, 145, 30, 0.8) 0%, rgba(255, 98, 154, 0.8) 100%);
        background: linear-gradient(to right, rgba(255, 145, 30, 0.8) 0%, rgba(255, 98, 154, 0.8) 100%);
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$start-color', endColorstr='$end-color',GradientType=1 ); }
        #top #menuArea section .grd_box a span.title {
          font-size: 36px;
          line-height: 70px; }
  #top #ocArea p {
    width: 560px; } }
/*
*  page
* ----------------------------------------*/
#titleArea {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 88px;
  color: #fff;
  text-shadow: 2px 2px 10px rgba(0, 0, 0, 0.2); }

/* backBtn ---------------------------------------*/
#backBtn {
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin-top: 70px;
  margin-bottom: 50px;
  padding-top: 50px;
  border-top: 1px solid #2a4198; }
  #backBtn p {
    width: 360px;
    margin: 0 auto;
    text-align: center; }
  #backBtn a {
    display: block;
    padding: 10px;
    background: #2a4198 url(../img/icon_back.png) 30px center no-repeat;
    color: #fff;
    border: 1px solid #2a4198;
    border-radius: 4px;
    text-decoration: none;
    font-size: 2.0rem;
    font-weight: bold; }
    #backBtn a:hover {
      background: #fff url(../img/icon_back2.png) 20px center no-repeat;
      color: #2a4198;
      border: 1px solid #2a4198; }
  #backBtn p.home a {
    background: #2a4198 url(../img/icon_home.png) 30px center no-repeat; }
    #backBtn p.home a:hover {
      background: #fff url(../img/icon_home2.png) 20px center no-repeat; }

/* linkArea ---------------------------------------*/
.linkArea {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 40px auto;
  padding: 20px; }
  .linkArea p {
    width: 48%;
    margin: 0 1% !important;
    text-align: center; }
  .linkArea a {
    position: relative;
    display: block;
    padding: 20px 0;
    color: #fff;
    font-size: 1.9rem;
    font-weight: bold;
    border-radius: 4px;
    text-decoration: none !important;
    background: #ff911e;
    background: -moz-linear-gradient(left, #ff911e 30%, #ff629a 100%);
    background: -webkit-gradient(linear, left top, right top, color-stop(0%, #ff911e), color-stop(100%, #ff629a));
    background: -webkit-linear-gradient(left, #ff911e 30%, #ff629a 100%);
    background: -o-linear-gradient(left, #ff911e 30%, #ff629a 100%);
    background: -ms-linear-gradient(left, #ff911e 30%, #ff629a 100%);
    background: linear-gradient(to right, #ff911e 30%, #ff629a 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$start-color', endColorstr='$end-color',GradientType=1 ); }
    .linkArea a:hover {
      text-decoration: underline !important; }
      .linkArea a:hover::after {
        right: 20px; }
    .linkArea a::after {
      content: "";
      position: absolute;
      right: 30px;
      top: 0;
      bottom: 0;
      margin: auto;
      display: block;
      width: 8px;
      height: 8px;
      border-top: 2px solid #fff;
      border-right: 2px solid #fff;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg); }

/* pagelink ---------------------------------------*/
.pageLink {
  text-align: center; }
  .pageLink li {
    display: inline-block;
    min-width: 150px;
    margin: 0 5px; }
    .pageLink li a {
      display: block;
      position: relative;
      padding: 5px 20px 5px 35px;
      border: 1px solid #2a4198;
      border-radius: 4px;
      text-decoration: none !important; }
      .pageLink li a::after {
        content: "";
        position: absolute;
        left: 15px;
        top: 12px;
        display: block;
        width: 6px;
        height: 6px;
        border-top: 2px solid #2a4198;
        border-right: 2px solid #2a4198;
        -webkit-transform: rotate(135deg);
        transform: rotate(135deg); }
      .pageLink li a:hover {
        background: #2a4198;
        color: #fff; }
        .pageLink li a:hover::after {
          top: 16px;
          border-color: #fff; }

/* intro (学院紹介) ----------------------------------------*/
#faculty #titleArea {
  background: url(/kango/_wp/wp-content/themes/teikyo-u/intro/img/keyvisual.png) center center no-repeat;
  background-size: cover; }
#faculty #area01 .read_copy {
  font-family: "Georgia", "游明朝", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "HGS明朝E", "メイリオ", "Meiryo", serif;
  line-height: 2.0em;
  text-align: left; }
#faculty #area01 .indent {
  display: flex;
  justify-content: center; }
#faculty section#messageArea .message_box {
  margin: 40px 0; }
#faculty section#messageArea .text_box h3 {
  position: relative;
  margin: 0 auto 30px;
  padding: 5px;
  background: none;
  color: #333;
  font-size: 2.5rem;
  font-family: "Hiragino Mincho ProN", "HGS明朝E", "メイリオ", "Meiryo", serif;
  text-align: center;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }
  #faculty section#messageArea .text_box h3::before, #faculty section#messageArea .text_box h3::after {
    position: absolute;
    content: '';
    width: 20px;
    height: 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
  #faculty section#messageArea .text_box h3::before {
    top: 0;
    left: 0;
    border-top: 1px solid #555;
    border-left: 1px solid #555; }
  #faculty section#messageArea .text_box h3::after {
    bottom: 0;
    right: 0;
    border-bottom: 1px solid #555;
    border-right: 1px solid #555; }
#faculty section#messageArea .text_box dl {
  text-align: right; }
#faculty section#messageArea .text_box dt, #faculty section#messageArea .text_box dd {
  display: inline-block;
  font-family: "Georgia", "游明朝", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "HGS明朝E", "メイリオ", "Meiryo", serif;
  vertical-align: bottom; }
#faculty section#messageArea .text_box dd {
  padding-left: 10px;
  font-size: 1.9rem;
  font-weight: 800; }
#faculty #area03 table th, #faculty #area03 table td {
  padding: 10px 15px; }
#faculty #area03 table td {
  text-align: left; }
#faculty #area03 table tr:last-child td {
  border-bottom: 0; }

#faculty.facility #titleArea {
  background: url(/kango/_wp/wp-content/themes/teikyo-u/intro/img/keyvisual2.png) center center no-repeat;
  background-size: cover; }
#faculty.facility #flooa {
  justify-content: space-around;
  flex-wrap: wrap;
  align-items: stretch; }
  #faculty.facility #flooa p {
    width: 32%; }
    #faculty.facility #flooa p img {
      width: 100%; }
#faculty.facility .photoArea {
  display: flex;
  justify-content: flex-start;
  align-items: top;
  flex-wrap: wrap;
  margin: 30px 0 0;
  padding: 0 1%; }
  #faculty.facility .photoArea dl, #faculty.facility .photoArea p {
    position: relative;
    margin-bottom: 50px;
    margin: 0 18px 50px; }
  #faculty.facility .photoArea dt {
    position: absolute;
    top: -10px;
    left: -10px;
    min-width: 50%;
    padding: 0 10px;
    background: #fff;
    color: #ff629a;
    border: 1px solid #ff629a;
    text-align: center;
    font-weight: bold; }
  #faculty.facility .photoArea dd {
    max-width: 300px; }
#faculty.facility .pickup_box {
  margin-bottom: 50px; }
#faculty.facility .main_box {
  display: flex;
  justify-content: space-between; }
  #faculty.facility .main_box dl {
    margin-left: 30px; }
  #faculty.facility .main_box dt {
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 1px solid #ccc;
    font-size: 1.8rem;
    font-weight: bold; }
  #faculty.facility .main_box p {
    margin-bottom: 0 !important; }

/* features (特長) --------------------------------------------*/
#features #titleArea {
  background: url(/kango/_wp/wp-content/themes/teikyo-u/point/img/keyvisual.png) center center no-repeat;
  background-size: cover; }
#features #area01 #area01_1 {
  justify-content: flex-start;
  align-items: flex-start;
  padding: 0 2%; }
  #features #area01 #area01_1 > p {
    width: 43%;
    padding: 50px 0 0; }
  #features #area01 #area01_1 div {
    display: flex; }
  #features #area01 #area01_1 dl:first-child {
    position: relative;
    width: 250px;
    margin-right: 20px;
    padding-right: 40px;
    text-align: center; }
    #features #area01 #area01_1 dl:first-child::after {
      content: "+";
      position: absolute;
      right: 0;
      top: 40%;
      font-size: 3.0rem;
      font-weight: bold; }
  #features #area01 #area01_1 dl:nth-child(2) {
    width: 185px;
    margin-right: 40px;
    border: 1px solid #2a4198;
    border-radius: 4px; }
    #features #area01 #area01_1 dl:nth-child(2) dt {
      padding: 5px; }
    #features #area01 #area01_1 dl:nth-child(2) p {
      margin-bottom: 0;
      text-align: center; }
  #features #area01 #area01_1 li {
    margin-bottom: 3px; }
#features #area01 #area01_2 {
  padding: 0 2%;
  align-items: stretch; }
  #features #area01 #area01_2 dl {
    display: flex;
    flex-direction: column;
    width: 32%; }
  #features #area01 #area01_2 dt {
    position: relative;
    margin-bottom: 20px;
    padding: 5px;
    border: 1px solid #2a4198;
    background: #2a4198;
    color: #fff;
    border-radius: 4px;
    text-align: center;
    font-size: 1.8rem;
    font-weight: bold; }
    #features #area01 #area01_2 dt::after {
      content: "";
      position: absolute;
      bottom: -21px;
      left: 50%;
      display: inline-block;
      width: 1px;
      height: 20px;
      background: #2a4198; }
  #features #area01 #area01_2 dd {
    height: 100%;
    padding: 14px;
    border: 1px solid #2a4198;
    border-radius: 4px; }
#features #area01 #area01_3 dl {
  overflow: hidden;
  width: 1000px;
  margin: 0 auto 10px; }
#features #area01 #area01_3 dt {
  float: left;
  width: 50px;
  padding-right: 20px;
  color: #fff;
  text-align: center;
  font-weight: bold; }
  #features #area01 #area01_3 dt span {
    position: relative;
    display: block;
    width: 60px;
    height: 60px;
    background: #2a4198;
    border-radius: 100%;
    line-height: 60px; }
    #features #area01 #area01_3 dt span::after {
      content: "";
      position: absolute;
      right: -20px;
      top: 0;
      bottom: 0;
      width: 20px;
      height: 1px;
      margin: auto;
      background: #2a4198; }
#features #area01 #area01_3 dd {
  float: right;
  width: 880px;
  min-height: 20px;
  padding: 20px;
  background: #f7f7f7; }
#features #area01 #area01_3 dl:nth-child(2),
#features #area01 #area01_3 dl:nth-child(3),
#features #area01 #area01_3 dl:nth-child(4) {
  position: relative;
  padding-top: 50px;
  color: #000;
  vertical-align: middle;
  text-decoration: none;
  font-size: 15px; }
  #features #area01 #area01_3 dl:nth-child(2)::before,
  #features #area01 #area01_3 dl:nth-child(3)::before,
  #features #area01 #area01_3 dl:nth-child(4)::before {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    content: "";
    display: block;
    width: 18px;
    height: 18px;
    border-top: 4px solid #2a4198;
    border-right: 4px solid #2a4198;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg); }
#features #area01 #area01_3 dl.pass_rate {
  text-align: center; }
  #features #area01 #area01_3 dl.pass_rate dt {
    float: none;
    display: inline-block;
    width: auto;
    margin-bottom: 15px;
    padding: 0;
    font-size: 2.6rem;
    background: linear-gradient(transparent 60%, yellow 0%);
    color: #333;
    font-weight: normal; }
  #features #area01 #area01_3 dl.pass_rate dd {
    float: none;
    width: auto;
    height: auto;
    padding: 0;
    background: none;
    font-size: 3.2rem; }
    #features #area01 #area01_3 dl.pass_rate dd span {
      font-size: 2.0rem; }
    #features #area01 #area01_3 dl.pass_rate dd:last-child {
      font-size: 2.2rem; }
#features #area02 #area02_1 {
  justify-content: space-around;
  align-items: flex-start;
  margin-top: 50px; }
  #features #area02 #area02_1 dl {
    position: relative;
    width: 300px; }
  #features #area02 #area02_1 dt {
    position: absolute;
    top: -10px;
    left: -10px;
    width: 50%;
    background: #fff;
    color: #ff629a;
    border: 1px solid #ff629a;
    text-align: center;
    font-weight: bold; }
  #features #area02 #area02_1 dd:last-child {
    margin-top: 20px; }
#features #area02 #area02_2 {
  margin: -10px 1% 0;
  padding: 30px;
  background: #f7f7f7; }
  #features #area02 #area02_2 p:first-child {
    width: auto;
    margin: 0; }
    #features #area02 #area02_2 p:first-child img {
      width: 100%; }
  #features #area02 #area02_2 p:last-child {
    width: 65%; }
#features #area03 .flex_box > p {
  width: 460px; }
#features #area03 #area03_1 {
  margin: -10px 1% 0;
  padding: 30px;
  background: #f7f7f7; }
  #features #area03 #area03_1 p:first-child {
    width: auto;
    margin: 0; }
    #features #area03 #area03_1 p:first-child img {
      width: 100%; }
  #features #area03 #area03_1 dl {
    width: 65%; }
    #features #area03 #area03_1 dl dt {
      margin-bottom: 10px;
      color: #2a4198;
      font-size: 1.8rem;
      font-weight: bold; }
#features #area03 .main_box {
  display: flex;
  justify-content: space-between; }
  #features #area03 .main_box p {
    margin-bottom: 0 !important; }
    #features #area03 .main_box p:first-child {
      margin-right: 20px; }
#features #area04 #area04_1 {
  justify-content: space-around; }
  #features #area04 #area04_1 dl {
    position: relative; }
  #features #area04 #area04_1 dd {
    position: absolute;
    left: 0;
    right: 0;
    bottom: -15px;
    display: inline-block;
    margin: auto;
    text-align: center;
    z-index: 99; }
    #features #area04 #area04_1 dd span {
      display: inline-block;
      padding: 5px 10px;
      background: #2a4198;
      color: #fff; }
#features #area04 .text {
  margin-top: 30px; }
#features #area05 .main_box {
  display: flex; }
  #features #area05 .main_box p {
    margin-right: 20px;
    margin-bottom: 0; }
  #features #area05 .main_box dt {
    margin-bottom: 10px;
    color: #2a4198;
    font-size: 1.8rem;
    font-weight: bold; }
#features #area05 .linkArea {
  margin: 20px 0 0;
  padding: 0; }

/* education (教育紹介) -------------------------------------------*/
#education #titleArea {
  background: url(/kango/_wp/wp-content/themes/teikyo-u/education/img/keyvisual.png) center center no-repeat;
  background-size: cover; }
#education #goal .flex_box {
  align-items: stretch; }
  #education #goal .flex_box p.icon {
    margin-bottom: 0;
    background: #fff;
    text-align: center; }
    #education #goal .flex_box p.icon img {
      padding: 15px 30px;
      background: #f7f7f7; }
  #education #goal .flex_box dt {
    font-weight: bold; }
  #education #goal .flex_box .school {
    position: relative; }
    #education #goal .flex_box .school::before {
      content: "";
      position: absolute;
      top: 0;
      bottom: 0;
      margin: auto;
      right: -54px;
      width: 0;
      height: 0;
      border-style: solid;
      border-color: transparent transparent transparent #ff629a;
      border-width: 24px 0 24px 24px; }
    #education #goal .flex_box .school::after {
      content: "";
      position: absolute;
      top: 0;
      bottom: 0;
      margin: auto;
      right: -30px;
      width: 20px;
      height: 18px;
      background: #ff629a; }
    #education #goal .flex_box .school dl {
      position: relative;
      display: flex;
      float: right;
      clear: both; }
      #education #goal .flex_box .school dl.three {
        width: 80%;
        margin-bottom: 2px; }
        #education #goal .flex_box .school dl.three::before {
          content: "";
          display: block;
          position: absolute;
          left: -30px;
          bottom: 0;
          width: 66px;
          height: 57px;
          background: url(/kango/_wp/wp-content/themes/teikyo-u/education/img/icon_01.png) left center no-repeat; }
      #education #goal .flex_box .school dl.two {
        position: relative;
        width: 90%;
        margin-bottom: 2px; }
    #education #goal .flex_box .school dt, #education #goal .flex_box .school dd {
      padding: 15px;
      background: #c9e6ff; }
    #education #goal .flex_box .school dt {
      width: 50px;
      color: #2a4198;
      white-space: nowrap; }
    #education #goal .flex_box .school dd {
      width: auto; }
  #education #goal .flex_box .hospital {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: #ffe9f0; }
    #education #goal .flex_box .hospital dl {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center; }
    #education #goal .flex_box .hospital dt {
      margin: 20px 0;
      color: #ff629a;
      text-align: center; }
#education #area01 .subtitle {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
  background: #FADAE4; }
  #education #area01 .subtitle h3 {
    margin: 0;
    padding: 10px 20px;
    border-radius: 4px;
    text-align: left; }
  #education #area01 .subtitle span {
    display: inline-block;
    margin-right: 10px;
    padding: 5px 10px;
    background-color: #ff629a;
    color: #fff;
    font-size: 1.4rem;
    text-align: center;
    vertical-align: middle; }
  #education #area01 .subtitle .icon,
  #education #area01 .subtitle .icon span {
    display: inline-block;
    transition: all .4s;
    box-sizing: border-box; }
  #education #area01 .subtitle .icon {
    position: relative;
    width: 30px;
    margin-right: 15px; }
  #education #area01 .subtitle .icon span {
    position: absolute;
    left: 6px;
    width: 20px;
    height: 4px;
    padding: 0; }
  #education #area01 .subtitle .icon span:nth-of-type(1) {
    top: 5px;
    transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg); }
  #education #area01 .subtitle .icon span:nth-of-type(2) {
    top: 5px;
    transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg); }
  #education #area01 .subtitle .icon.active span:nth-of-type(1) {
    display: none; }
  #education #area01 .subtitle .icon.active span:nth-of-type(2) {
    top: 5px;
    transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg); }
#education #area01 .c_box {
  display: none; }
#education #area01 table thead th {
  border-left: 1px dashed #ff629a;
  background: none;
  color: #333;
  width: 20%;
  box-sizing: border-box;
  padding: 0 10px 10px;
  vertical-align: top; }
  #education #area01 table thead th:first-child {
    border-left: 0; }
  #education #area01 table thead th:nth-child(1) strong {
    color: #00B097; }
  #education #area01 table thead th:nth-child(2) strong {
    color: #EC6D81; }
  #education #area01 table thead th:nth-child(3) strong {
    color: #009FDE; }
  #education #area01 table thead th:nth-child(4) strong {
    color: #5C6FB4; }
  #education #area01 table thead th:nth-child(5) strong {
    color: #F39800; }
  #education #area01 table thead th strong {
    display: block;
    margin-bottom: 10px;
    text-align: center; }
  #education #area01 table thead th span {
    display: block;
    font-size: 1.2rem;
    text-align: left; }
#education #area01 table tbody th {
  font-size: 1.3rem; }
#education #area01 table tr {
  position: relative; }
#education #area01 table td {
  border-bottom: 1px solid #ff629a;
  text-align: left;
  width: 20%;
  border-left: 1px dashed #ff629a;
  padding: 10px;
  box-sizing: border-box;
  vertical-align: top; }
  #education #area01 table td:first-child {
    border-left: 0; }
  #education #area01 table td.term {
    background: #ff629a;
    color: #fff;
    font-size: 1.2rem;
    font-weight: bold;
    letter-spacing: 3px;
    padding: 5px 10px;
    height: 20px; }
  #education #area01 table td.subtitle {
    border-top: 1px solid #ff629a; }
    #education #area01 table td.subtitle h3 {
      margin: 20px 0 00px;
      padding: 0;
      background: none;
      color: #ff629a;
      border-radius: 30px; }
      #education #area01 table td.subtitle h3 span {
        display: inline-block;
        width: 40px;
        height: 40px;
        border-radius: 100%;
        background-color: #ff629a;
        color: #fff;
        line-height: 1.2;
        font-size: 1.2rem;
        margin: 0 0 5px;
        box-sizing: border-box;
        padding-top: 5px;
        text-align: center;
        margin-right: 10px; }
  #education #area01 table td ul {
    list-style-type: disc;
    margin-left: 1.3em; }
    #education #area01 table td ul li {
      font-size: 1.2rem;
      margin-bottom: 5px;
      line-height: 1.4; }
#education #area01 .link_pdf {
  margin-top: 30px; }
#education #area01_1 .flex_box {
  flex-wrap: wrap;
  align-items: stretch; }
#education #area01_1 .box {
  width: 48%;
  margin-bottom: 20px; }
  #education #area01_1 .box h3 {
    text-align: center; }
  #education #area01_1 .box dl dt {
    margin-bottom: 15px;
    padding: 5px 0;
    border-radius: 30px;
    font-weight: bold;
    text-align: center; }
  #education #area01_1 .box.spe dt {
    background: #BFECFF;
    color: #009FDE; }
  #education #area01_1 .box.int dt {
    background: #CFD5E9;
    color: #5C6FB4; }
#education #area02 .teaching_area {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }
  #education #area02 .teaching_area .list {
    width: 47%;
    margin-top: 2%; }
    #education #area02 .teaching_area .list p {
      font-size: 1.4rem; }
  #education #area02 .teaching_area .wrap_box {
    display: flex;
    align-items: center;
    justify-content: space-between; }
    #education #area02 .teaching_area .wrap_box .photo {
      width: 45%;
      min-height: 150px; }
      #education #area02 .teaching_area .wrap_box .photo img {
        width: 100%; }
    #education #area02 .teaching_area .wrap_box .text {
      width: 52%; }
      #education #area02 .teaching_area .wrap_box .text .teaching_name {
        font-size: 2rem;
        font-weight: 700;
        border-bottom: 1px solid #ddd;
        margin-bottom: 8px;
        padding-bottom: 8px; }
      #education #area02 .teaching_area .wrap_box .text .teaching_copy {
        font-size: 1.4rem;
        font-weight: 700;
        color: #ff629a; }
#education #area03 .flex_box {
  align-items: flex-end;
  justify-content: space-around; }
  #education #area03 .flex_box .read_copy span {
    background: -webkit-linear-gradient(transparent 50%, #f0e900 50%);
    background: -o-linear-gradient(transparent 50%, #f0e900 50%);
    background: linear-gradient(transparent 50%, #f0e900 50%); }
  #education #area03 .flex_box .text {
    width: 800px; }
  #education #area03 .flex_box .name {
    text-align: right; }
  #education #area03 .flex_box > p {
    width: 120px;
    margin-bottom: 0; }
#education #area03 table {
  margin-top: 0; }
  #education #area03 table span {
    display: block;
    font-size: 1.2rem; }
#education #area03 .pickup_box {
  margin-top: 50px; }
#education #area03 .main_box {
  display: flex; }
  #education #area03 .main_box p {
    margin-bottom: 0; }
  #education #area03 .main_box dl {
    margin-left: 30px; }
    #education #area03 .main_box dl dt {
      margin-bottom: 15px;
      font-size: 1.7rem;
      font-weight: bold; }
#education #area04 table th, #education #area04 table td {
  width: 20%; }

#education.practice #titleArea {
  background: url(/kango/_wp/wp-content/themes/teikyo-u/education/img/keyvisual2.png) center center no-repeat;
  background-size: cover; }
#education.practice #area01 .flex_box {
  align-items: flex-start;
  margin-bottom: 30px; }
#education.practice #area01 .grade {
  width: 32%; }
  #education.practice #area01 .grade h3 {
    position: relative;
    margin: 0 auto 20px;
    text-align: center; }
    #education.practice #area01 .grade h3::after {
      content: ">";
      display: block;
      position: absolute;
      top: 10px;
      right: -14px;
      font-family: monospace;
      font-size: 2.0rem; }
  #education.practice #area01 .grade:last-child h3::after {
    display: none; }
  #education.practice #area01 .grade span {
    display: inline-block;
    width: 46%;
    margin: 0 1%;
    vertical-align: text-top; }
  #education.practice #area01 .grade h3 + p {
    text-align: center; }
  #education.practice #area01 .grade h3 + p span {
    background: #ededed;
    border-radius: 30px; }
#education.practice #area02 .flex_box {
  position: relative;
  margin-bottom: 60px;
  align-items: flex-start; }
  #education.practice #area02 .flex_box:nth-child(even) {
    flex-direction: row-reverse; }
  #education.practice #area02 .flex_box:nth-child(even) .intro_box {
    left: 20px; }
#education.practice #area02 .read_copy + .flex_box {
  margin-top: 60px; }
#education.practice #area02 .intro_box {
  position: absolute;
  top: -30px;
  right: 20px;
  align-items: flex-start;
  width: 440px;
  padding: 20px 30px 10px;
  background: #fff;
  border: 1px solid #ff629a; }
  #education.practice #area02 .intro_box h3 {
    margin: 0 auto 20px;
    border-radius: 0;
    text-align: center; }
    #education.practice #area02 .intro_box h3 span {
      display: inline-block; }
#education.practice #area02 .pickup_box {
  margin-top: 50px; }
#education.practice #area02 .main_box {
  display: flex; }
  #education.practice #area02 .main_box p {
    margin-bottom: 0; }
  #education.practice #area02 .main_box dl {
    margin-left: 30px; }
    #education.practice #area02 .main_box dl dt {
      margin-bottom: 15px;
      font-size: 1.7rem;
      font-weight: bold; }
#education.practice #message .flex_box {
  align-items: stretch; }
  #education.practice #message .flex_box .photo span {
    display: block; }
  #education.practice #message .flex_box .text {
    width: 62%; }
  #education.practice #message .flex_box .read_copy span {
    background: -webkit-linear-gradient(transparent 50%, #f0e900 50%);
    background: -o-linear-gradient(transparent 50%, #f0e900 50%);
    background: linear-gradient(transparent 50%, #f0e900 50%); }
#education.practice #area03_p .flex_box {
  align-items: flex-start; }
  #education.practice #area03_p .flex_box > p {
    width: 420px; }
    #education.practice #area03_p .flex_box > p img {
      width: 100%; }
#education.practice #area03_p .area03_1 {
  width: 580px;
  margin-left: 50px; }
  #education.practice #area03_p .area03_1 > dl {
    position: relative;
    height: 140px; }
  #education.practice #area03_p .area03_1 > dl dt {
    position: absolute;
    top: -18px;
    left: -20px;
    width: 200px;
    padding: 5px;
    background: #2a4198;
    color: #fff;
    text-align: center;
    font-size: 2.0rem;
    font-weight: bold;
    z-index: 10; }
  #education.practice #area03_p .area03_1 > dl dd {
    position: absolute;
    top: 20px;
    left: 0;
    width: 500px;
    margin-bottom: 30px;
    margin-left: auto;
    padding: 10px;
    border: 1px solid #2a4198;
    font-size: 1.8rem;
    font-weight: 500;
    text-align: center;
    z-index: 1; }
#education.practice #area03_p .main_box {
  display: flex;
  justify-content: space-between; }
  #education.practice #area03_p .main_box p {
    margin-bottom: 0 !important; }
    #education.practice #area03_p .main_box p:first-child {
      margin-right: 20px; }
  #education.practice #area03_p .main_box dt {
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #ccc;
    font-weight: bold; }
#education.practice #area03_p > .pickup_box {
  margin-top: 40px; }

/* entry (英皇娱乐官网,英皇娱乐平台) -------------------------------------------*/
#entry #titleArea {
  background: url(/kango/_wp/wp-content/themes/teikyo-u/exam/img/keyvisual.png) center center no-repeat;
  background-size: cover; }
#entry table .first {
  width: 85px; }
#entry table .application {
  width: 340px; }
#entry table .date {
  width: 200px; }
#entry #area01 .flex_box {
  justify-content: center;
  margin: 0 auto;
  padding: 30px 0 20px;
  background: #f7f7f7; }
  #entry #area01 .flex_box dl {
    width: 300px;
    margin: 0 20px;
	box-sizing: border-box;}
  #entry #area01 .flex_box dt,
  #entry #area01 .flex_box dd {
    text-align: center; }
  #entry #area01 .flex_box dt {
    margin-bottom: 20px;
  }
  #entry #area01 .flex_box dt img {
    padding: 5px;
    border: 1px solid #ccc; }
#entry #area01 .flex_box dd .link_blank a {
		width: 90%;
	}
#entry.tuition #area01 table {
  margin-top: 0; }
#entry.tuition #area01 dl {
  overflow: hidden;
  width: 560px;
  margin: 0 auto 20px; }
  #entry.tuition #area01 dl dt, #entry.tuition #area01 dl dd {
    float: left;
    padding: 8px 10px;
    border-bottom: 1px solid #ccc; }
  #entry.tuition #area01 dl dt {
    clear: both;
    width: 190px;
    color: #2a4198;
    font-weight: bold; }
  #entry.tuition #area01 dl dd {
    float: right;
    width: 330px;
    text-align: right; }
	
#entry.tuition #area01 p.small {
  margin-bottom: 0 !important;
  text-align: right; }

/* school_life (学生生活) ----------------------------------------*/
#campuslife #titleArea {
  background: url(/kango/_wp/wp-content/themes/teikyo-u/school_life/img/keyvisual.png) center center no-repeat;
  background-size: cover; }
#campuslife #events .link_btn a {
  width: 50%;
  margin: auto;
  padding: 20px 0;
  font-weight: bold; }
  #campuslife #events .link_btn a::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-left: 8px;
    background: url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_blank.png) left center no-repeat;
    vertical-align: text-top; }
  #campuslife #events .link_btn a:hover::after {
    background: url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_blank2.png) left center no-repeat; }
#campuslife #area01 .flex_box {
  align-items: flex-start; }
#campuslife #area01 .eventbox {
  width: 48%; }
  #campuslife #area01 .eventbox dl {
    position: relative;
    width: 98%;
    margin: 40px auto 0; }
    #campuslife #area01 .eventbox dl dt {
      position: absolute;
      top: -15px;
      left: 0;
      padding: 10px;
      background: #fff;
      color: #2a4198;
      border: 2px solid #f0e900;
      font-weight: bold; }
  #campuslife #area01 .eventbox h3, #campuslife #area01 .eventbox .img {
    text-align: center; }
  #campuslife #area01 .eventbox h3 {
    margin-top: 0; }
  #campuslife #area01 .eventbox .img {
    margin-bottom: 15px; }
#campuslife #area02 .flex_box {
  align-items: stretch;
  margin-bottom: 30px; }
  #campuslife #area02 .flex_box p {
    width: 30%;
    margin-bottom: 0; }
  #campuslife #area02 .flex_box dl {
    width: 63%;
    padding: 30px;
    background: #f7f7f7; }
    #campuslife #area02 .flex_box dl dt {
      margin-bottom: 15px;
      padding-bottom: 10px;
      border-bottom: 1px solid #2a4198;
      color: #2a4198;
      font-size: 2.0rem;
      font-weight: bold; }
#campuslife #area03 .flex_box {
  align-items: stretch;
  flex-wrap: wrap;
  justify-content: space-around; }
  #campuslife #area03 .flex_box .topics {
    width: 43%;
    margin-bottom: 30px;
    padding: 20px;
    background: #f7f7f7;
    border-radius: 4px; }
  #campuslife #area03 .flex_box p {
    text-align: center; }
  #campuslife #area03 .flex_box dt {
    margin-bottom: 15px;
    padding-bottom: 10px;
    color: #2a4198;
    border-bottom: 1px solid #2a4198;
    font-weight: bold;
    font-size: 1.8rem;
    text-align: center; }
#campuslife #area03 .linkArea {
  width: auto;
  margin: 0; }
#campuslife #area03 .linkArea p {
  width: 60%; }
#campuslife #area04 .flex_box {
  align-items: stretch; }
#campuslife #area04 .imgbox {
  width: 303px; }
  #campuslife #area04 .imgbox img {
    width: 303px; }
#campuslife #area04 .textbox {
  width: 700px; }
#campuslife #area04 dl {
  display: flex;
  align-items: flex-start;
  margin-top: 30px; }
#campuslife #area04 dt {
  display: inline-block;
  margin-bottom: 10px;
  padding: 5px 20px;
  border: 1px solid #2a4198;
  color: #2a4198;
  font-weight: bold;
  white-space: nowrap; }
#campuslife #area04 dd {
  padding: 5px 20px; }
#campuslife #area04 ul {
  margin-left: 25px; }
#campuslife #area06 .flex_box {
  justify-content: space-around;
  align-items: flex-start;
  flex-wrap: wrap;
  margin-top: 50px; }
  #campuslife #area06 .flex_box dl {
    position: relative;
    width: 300px;
    margin: 0 18px 50px; }
  #campuslife #area06 .flex_box dt {
    position: absolute;
    top: -10px;
    left: -10px;
    width: 50%;
    background: #fff;
    color: #ff629a;
    border: 1px solid #ff629a;
    text-align: center;
    font-weight: bold; }

/* future (就職?進学) ----------------------------------------*/
#career #titleArea {
  background: url(/kango/_wp/wp-content/themes/teikyo-u/future/img/keyvisual.png) center center no-repeat;
  background-size: cover; }
#career #area01 #area01_1 dl {
  overflow: hidden;
  margin-bottom: 30px; }
#career #area01 #area01_1 dt {
  float: left;
  width: 300px; }
#career #area01 #area01_1 dd {
  float: right;
  width: 700px; }
#career #area01 #area01_1 dd.name {
  display: inline-block;
  margin: auto; }
  #career #area01 #area01_1 dd.name span {
    display: inline-block;
    padding: 5px 10px;
    background: #2a4198;
    color: #fff; }
#career #area01 #area01_1 dd:not([class]) {
  margin-top: 15px; }
#career #area01 #area01_1 .title {
  width: 50%;
  margin: 30px auto;
  background: #f0e900;
  border-radius: 30px;
  font-size: 2.4rem;
  font-weight: bold;
  text-align: center; }
#career #area01 #area01_2 dl {
  padding: 20px;
  background: #f7f7f7; }
#career #area01 #area01_2 dt {
  margin-bottom: 10px;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center; }
#career #area01 #area01_3 .flex_box {
  align-items: stretch;
  margin-top: 30px; }
#career #area01 #area01_3 .photo {
  position: relative; }
  #career #area01 #area01_3 .photo span {
    display: block; }
  #career #area01 #area01_3 .photo .job {
    position: absolute;
    bottom: 60px;
    right: 0;
    padding: 3px 10px;
    background: #fff;
    color: #ff629a;
    border: 1px solid #ff629a;
    border-radius: 30px; }
  #career #area01 #area01_3 .photo .job + .name {
  	margin-top: 15px;
  }
#career #area01 #area01_3 .text {
  width: 62%; }
#career #area01 #area01_3 .read_copy span {
  background: linear-gradient(transparent 50%, #f0e900 50%); }
#career #area01 #area01_4 {
  align-items: stretch; }
  #career #area01 #area01_4 dl {
    padding-bottom: 30px;
    background: #f7f7f7; }
    #career #area01 #area01_4 dl dt {
      padding: 30px;
      color: #ff629a;
      text-align: center;
      font-size: 2.0rem;
      font-weight: bold; }
    #career #area01 #area01_4 dl dd {
      padding: 0 30px; }
  #career #area01 #area01_4 > p {
    width: 38%;
    text-align: center; }
#career #area02 .choice {
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin: 0 50px;
  text-align: center; }
  #career #area02 .choice li {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 120px;
    height: 120px;
    color: #2a4198;
    border: 1px solid #2a4198;
    border-radius: 100%;
    font-weight: bold; }
#career #area02 #area02_2 .flex_box {
  align-items: stretch;
  margin-top: 30px; }
#career #area02 #area02_2 .photo span {
  display: block; }
#career #area02 #area02_2 .text {
  width: 62%; }
#career #area02 #area02_2 .read_copy span {
  background: linear-gradient(transparent 50%, #f0e900 50%); }
#career #area03 .brackets {
  position: relative;
  width: 600px;
  margin: 0 auto 30px;
  padding: 5px;
  background: none;
  color: #333;
  font-size: 2.5rem;
  font-family: "Georgia", "游明朝", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "HGS明朝E", "メイリオ", "Meiryo", serif;
  text-align: center;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }
  #career #area03 .brackets::before, #career #area03 .brackets::after {
    position: absolute;
    content: '';
    width: 20px;
    height: 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
  #career #area03 .brackets::before {
    top: 0;
    left: 0;
    border-top: 1px solid #555;
    border-left: 1px solid #555; }
  #career #area03 .brackets::after {
    bottom: 0;
    right: 0;
    border-bottom: 1px solid #555;
    border-right: 1px solid #555; }
#career #area03 .counterplan {
  border: 1px solid #FADAE4; }
  #career #area03 .counterplan dt {
    padding: 10px;
    background: #FADAE4;
    color: #ff629a;
    position: relative;
    font-size: 2.0rem;
    font-weight: bold;
    text-align: center; }
    #career #area03 .counterplan dt::after {
      border-top: 15px solid #FADAE4;
      border-left: 20px solid transparent;
      border-right: 20px solid transparent;
      content: "";
      position: absolute;
      bottom: -22px;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%); }
  #career #area03 .counterplan dd {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    padding: 20px 15px 15px; }
    #career #area03 .counterplan dd p {
      margin-right: 30px;
      margin-bottom: 0; }
#career #area03 .pass_rate {
  margin: 30px 0;
  text-align: center; }
  #career #area03 .pass_rate dt {
    display: inline-block;
    margin-bottom: 15px;
    font-size: 2.6rem;
    background: linear-gradient(transparent 60%, yellow 0%); }
  #career #area03 .pass_rate dd {
    font-size: 3.2rem; }
    #career #area03 .pass_rate dd span {
      font-size: 2.0rem; }
    #career #area03 .pass_rate dd:last-child {
      font-size: 2.2rem; }
#career #area03 .pickup_box {
  margin-top: 30px; }
#career #area03 .main_box {
  display: flex; }
  #career #area03 .main_box p:first-child {
    margin-right: 20px;
    margin-bottom: 0; }
  #career #area03 .main_box dt {
    margin-bottom: 10px;
    color: #2a4198;
    font-size: 1.8rem;
    font-weight: bold; }
#career #area04 .flex_box {
  justify-content: center; }
#career #area04 p {
  margin: 20px 50px;
  text-align: center; }

/* oc (オープンキャンパス) ----------------------------------------*/
#oc #titleArea {
  background: url(/kango/_wp/wp-content/themes/teikyo-u/oc/img/keyvisual.png) center center no-repeat;
  background-size: cover; }
#oc table .date {
  width: 420px; }
#oc #area02 .flex_box {
  align-items: stretch; }
#oc #area02 .linkArea {
  justify-content: flex-start;
  margin: 10px 0 20px;
  padding: 0; }
  #oc #area02 .linkArea p {
    display: inline-block;
    width: auto;
    margin: 0 !important; }
    #oc #area02 .linkArea p a {
      padding-left: 20px;
      padding-right: 70px; }

/* news (お知らせ) -------------------------------------------*/
#news #titleArea {
  background: url(/kango/_wp/wp-content/themes/teikyo-u/news/img/keyvisual.png) center center no-repeat;
  background-size: cover; }
#news #new_article h2 {
  margin: 40px 0 40px;
  padding: 5px 25px;
  background: none;
  color: #ff629a;
  border-radius: 0;
  text-align: left;
  font-size: 1.8rem; }
  #news #new_article h2::before, #news #new_article h2::after {
    top: 0;
    width: 10px;
    height: 100%;
    background: none;
    border-top: 3px solid #ff629a;
    border-bottom: 3px solid #ff629a; }
  #news #new_article h2::before {
    border-left: 3px solid #ff629a; }
  #news #new_article h2::after {
    border-right: 3px solid #ff629a; }
#news #new_article h3 {
  padding: 5px 10px;
  border-bottom: 2px solid #ff629a;
  border-radius: 0;
  background: none;
  color: #ff629a;
  font-size: 1.7rem; }
#news #new_article .inner {
	overflow: hidden;
  width: auto;
  padding: 0 1%; }
#news #new_article .photo_boxL,
#news #new_article .photo_boxR {
  display: flex;
  justify-content: space-between;
  align-items: flex-start; }
  #news #new_article .photo_boxL img,
  #news #new_article .photo_boxR img {
    width: 100%; }
  #news #new_article .photo_boxL .photo30,
  #news #new_article .photo_boxR .photo30 {
    width: 30%; }
  #news #new_article .photo_boxL .text70,
  #news #new_article .photo_boxR .text70 {
    width: 67%; }
  #news #new_article .photo_boxL .photo40,
  #news #new_article .photo_boxR .photo40 {
    width: 40%; }
  #news #new_article .photo_boxL .text60,
  #news #new_article .photo_boxR .text60 {
    width: 57%; }
#news #new_article .photo_boxR {
  flex-direction: row-reverse; }

/* access (交通アクセス) -------------------------------------------*/
#access #titleArea {
  background: url(/kango/_wp/wp-content/themes/teikyo-u/access/img/keyvisual.png) center center no-repeat;
  background-size: cover; }
#access #area01 .flex_box {
  justify-content: space-around; }
#access #area01 .area01_1 {
  padding: 30px;
  background: #f7f7f7; }
#access #area01 .school_name span {
  display: block;
  font-size: 1.8rem;
  font-weight: bold; }
#access #area02 .ggmap {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0; }
#access #area02 .ggmap iframe,
#access #area02 .ggmap object,
#access #area02 .ggmap embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }
#access #area02 small {
  position: absolute;
  bottom: -30px; }

/* question (よくある質問) -------------------------------------------*/
#qa #titleArea {
  background: url(/kango/_wp/wp-content/themes/teikyo-u/question/img/keyvisual.png) center center no-repeat;
  background-size: cover; }
#qa .qa_box {
  width: 80%;
  margin: 10px auto 40px; }
#qa .accordionlist {
  border-top: 1px solid #DFDFDF;
  border-bottom: 1px solid #DFDFDF; }
#qa .accordionlist dt {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #fff;
  padding: 10px 0 10px 40px;
  border-top: 1px solid #DFDFDF;
  cursor: pointer; }
  #qa .accordionlist dt p {
    margin-bottom: 0; }
#qa .accordionlist dt:first-child {
  border-top: none !important; }
#qa .accordionlist dt .title {
  font-weight: 700; }
  #qa .accordionlist dt .title::before {
    position: absolute;
    left: 5px;
    top: 12px;
    content: "Q";
    display: block;
    width: 24px;
    height: 24px;
    margin-right: 10px;
    background: #ff911e;
    color: #fff;
    text-align: center;
    border-radius: 100%;
    line-height: 24px; }
#qa .accordionlist dd {
  display: none;
  position: relative;
  background: #fff;
  padding: 10px 0 20px 40px; }
  #qa .accordionlist dd::before {
    position: absolute;
    left: 5px;
    top: 12px;
    content: "A";
    display: block;
    width: 24px;
    height: 24px;
    margin-right: 10px;
    background: #ff629a;
    color: #fff;
    text-align: center;
    border-radius: 100%;
    font-weight: bold;
    line-height: 24px; }
#qa .qa_icon,
#qa .qa_icon span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box; }
#qa .qa_icon {
  position: relative;
  width: 30px;
  height: 15px;
  margin-right: 5px; }
#qa .qa_icon span {
  position: absolute;
  left: 6px;
  width: 50%;
  height: 2px;
  background-color: #F88789;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -ms-border-radius: 4px;
  -moz-border-radius: 4px;
  -o-border-radius: 4px; }
#qa .qa_icon span:nth-of-type(1) {
  top: 5px;
  transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg); }
#qa .qa_icon span:nth-of-type(2) {
  top: 5px;
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg); }
#qa .qa_icon.active span:nth-of-type(1) {
  display: none; }
#qa .qa_icon.active span:nth-of-type(2) {
  top: 5px;
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg); }

/* graduate (卒業生の方) -------------------------------------------*/
#graduate #titleArea {
  background: url(/kango/_wp/wp-content/themes/teikyo-u/graduate/img/keyvisual.png) center center no-repeat;
  background-size: cover; }
#graduate .sending {
  display: table;
  background: #f7f7f7; }
  #graduate .sending dt, #graduate .sending dd {
    display: table-cell;
    padding: 10px 20px;
    vertical-align: top; }
  #graduate .sending dt {
    margin-right: 20px;
    padding: 10px 20px;
    color: #2a4198;
    font-weight: bold;
    white-space: nowrap; }

/*----------------------------------------------------------------------------------------
SP only ～980
----------------------------------------------------------------------------------------*/
@media screen and (max-width: 980px) {
  /* page common(SP) --------------------------------*/
  #titleArea {
    height: 120px;
    padding-top: 70px;
    letter-spacing: 10px;
    font-size: 4.5vw;
    letter-spacing: 0; }

  #mainArea {
    padding: 0 5%; }

  /* backBtn(SP) ---------------------------------------*/
  #backBtn p {
    width: 48%; }
  #backBtn a,
  #backBtn p.home a {
    font-size: 3vw;
    background-position: 10px center;
    background-size: 20px;
    text-indent: 1em; }

  /* linkArea(SP) ---------------------------------------*/
  .linkArea {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 40px auto;
    padding: 20px; }
    .linkArea p {
      width: 80%; }
    .linkArea a {
      padding: 20px 0;
      color: #fff;
      font-size: 3.2vw; }

  /* intro (学院紹介/SP) ----------------------------------------*/
  #faculty section#messageArea .message_box {
    margin: 40px 0; }
  #faculty section#messageArea .photo_box {
    width: 300px;
    margin: auto; }
    #faculty section#messageArea .photo_box p img {
      max-width: 300px;
    }
  #faculty section#messageArea .text_box h3 {
    margin-bottom: 15px;
    font-size: 4vw; }
    #faculty section#messageArea .text_box h3 span {
      display: block; }
  #faculty #area03 table th, #faculty #area03 table td {
    padding: 10px 15px; }
  #faculty #area03 table td {
    text-align: left; }
  #faculty #area03 table tr:last-child td {
    border-bottom: 0; }

  #faculty.facility #flooa {
    display: flex; }
    #faculty.facility #flooa p {
      width: 48%; }
  #faculty.facility .photoArea {
    justify-content: space-between;
    padding: 0; }
    #faculty.facility .photoArea dl {
      width: 100%;
      max-width: 300px;
      margin: 0 auto 30px; }
    #faculty.facility .photoArea dt {
      padding: 2px;
      font-size: 3vw; }
  #faculty.facility .main_box {
    display: inherit; }
    #faculty.facility .main_box dl {
      margin-left: 0;
      margin-top: 20px; }

  /* education (教育紹介/SP) -------------------------------------------*/
  #education #goal .flex_box div {
    width: auto; }
  #education #goal .flex_box p.icon {
    margin-bottom: 0;
    background: #fff;
    text-align: center; }
    #education #goal .flex_box p.icon img {
      max-width: 100px; }
  #education #goal .flex_box dt {
    font-weight: bold; }
  #education #goal .flex_box .school {
    position: relative;
    margin-bottom: 50px; }
    #education #goal .flex_box .school::before {
      content: "";
      position: absolute;
      top: auto;
      bottom: -45px;
      right: 0;
      left: 0;
      width: 0;
      height: 0;
      margin: auto;
      border-style: solid;
      border-color: #ff629a transparent transparent transparent;
      border-width: 24px 24px 0 24px;
      margin-top: -20px; }
    #education #goal .flex_box .school::after {
      top: auto;
      bottom: -25px;
      right: 0;
      left: 0;
      margin: auto;
      width: 20px;
      height: 18px;
      margin-top: -5px;
      background: #ff629a; }
    #education #goal .flex_box .school dl {
      position: relative;
      display: flex;
      margin-left: auto;
      float: none; }
    #education #goal .flex_box .school dt {
      width: 50px;
      white-space: nowrap; }
    #education #goal .flex_box .school dd {
      width: auto; }
  #education #goal .flex_box .hospital dd {
    padding: 0 20px; }
  #education #goal .flex_box .hospital .center {
    margin-top: 20px; }
    #education #goal .flex_box .hospital .center img {
      max-width: 125px; }
  #education #area01 .field th {
    display: block;
    width: 100%;
    padding: 20px 10px;
    border-left: 0;
    border-bottom: 1px dashed #ff629a; }
    #education #area01 .field th:last-child {
      border-bottom: 0; }
    #education #area01 .field th strong {
      text-align: left; }
  #education #area01 .subtitle h3 {
    padding: 10px 5px 10px 10px !important; }
  #education #area01 .subtitle span {
    padding: 5px;
    font-size: 3.6vw; }
  #education #area01 .subtitle .icon {
    margin-right: 10px; }
  #education #area01 .c_box {
    overflow: hidden;
    margin-bottom: 15px; }
    #education #area01 .c_box h4 {
      margin: 0;
      background: #ff629a;
      color: #fff;
      font-size: 3.8vw;
      font-weight: bold;
      letter-spacing: 3px;
      padding: 5px 10px;
      text-align: center; }
    #education #area01 .c_box .p_term,
    #education #area01 .c_box .l_term {
      width: 48%; }
    #education #area01 .c_box .p_term {
      float: left; }
    #education #area01 .c_box .l_term {
      float: right; }
    #education #area01 .c_box ul {
      margin-left: 1.3em; }
    #education #area01 .c_box ul li {
      font-size: 1.2rem;
      margin-bottom: 5px;
      line-height: 1.4; }
    #education #area01 .c_box dt {
      padding: 5px;
      background: #EDEDED;
      color: #2a4198;
      font-size: 3.3vw;
      font-weight: bold;
      text-align: center; }
    #education #area01 .c_box dd {
      padding: 10px;
      text-align: left; }
      #education #area01 .c_box dd.empty {
        min-height: 50px; }
    #education #area01 .c_box.first dl:nth-child(1) dd {
      min-height: 180px; }
    #education #area01 .c_box.first dl:nth-child(2) dd {
      min-height: 220px; }
    #education #area01 .c_box.first dl:nth-child(3) dd {
      min-height: 190px; }
    #education #area01 .c_box.second dl:nth-child(1) dd {
      min-height: 92px; }
    #education #area01 .c_box.second dl:nth-child(2) dd {
      min-height: 92px; }
    #education #area01 .c_box.second dl:nth-child(3) dd {
      min-height: 346px; }
    #education #area01 .c_box.second dl:nth-child(4) dd {
      min-height: 92px; }
    #education #area01 .c_box.third table {
      display: none; }
    #education #area01 .c_box.third .all {
      clear: both; }
      #education #area01 .c_box.third .all dt {
        padding: 5px;
        background: #EDEDED;
        color: #2a4198;
        font-size: 3.3vw;
        font-weight: bold;
        text-align: center; }
  #education #area01_1 .box {
    width: auto; }
  #education #area02 .teaching_area {
    display: inherit; }
    #education #area02 .teaching_area .list {
      width: auto;
      margin: 2% 0 30px; }
      #education #area02 .teaching_area .list p {
        font-size: 1.4rem; }
    #education #area02 .teaching_area .wrap_box {
      display: inherit; }
      #education #area02 .teaching_area .wrap_box .photo {
        width: auto;
        text-align: center; }
        #education #area02 .teaching_area .wrap_box .photo img {
          width: 100%;
          max-width: 300px; }
      #education #area02 .teaching_area .wrap_box .text {
        width: auto; }
  #education #area03 .flex_box {
    display: flex;
    align-items: flex-end;
    justify-content: space-around; }
    #education #area03 .flex_box .read_copy {
      text-align: left !important;
      margin-bottom: 15px; }
    #education #area03 .flex_box .text {
      width: 80%; }
    #education #area03 .flex_box .name {
      text-align: right; }
    #education #area03 .flex_box > p {
      width: 120px;
      text-align: right;
      margin-bottom: 0; }
      #education #area03 .flex_box > p img {
        max-width: 73px; }
  #education #area03 .pickup_box {
    margin-top: 50px; }
  #education #area03 .main_box {
    display: inherit; }
    #education #area03 .main_box p {
      margin-bottom: 20px; }
    #education #area03 .main_box dl {
      margin-left: 0; }
      #education #area03 .main_box dl dt {
        margin-bottom: 15px;
        padding-bottom: 10px;
        border-bottom: 1px solid #ccc;
        font-size: 1.7rem;
        font-weight: bold; }

  #education.practice #area01 .flex_box {
    align-items: flex-start;
    margin-bottom: 30px; }
  #education.practice #area01 .grade {
    width: auto; }
    #education.practice #area01 .grade h3 {
      position: inherit;
      margin: 0 auto 20px;
      text-align: center; }
      #education.practice #area01 .grade h3::after {
        display: none; }
    #education.practice #area01 .grade:last-child h3::after {
      display: none; }
    #education.practice #area01 .grade span {
      display: inline-block;
      width: 44%;
      margin: 0 3%;
      vertical-align: text-top; }
    #education.practice #area01 .grade p {
      display: flex;
      justify-content: space-around; }
    #education.practice #area01 .grade h3 + p {
      text-align: center; }
    #education.practice #area01 .grade h3 + p span {
      background: #ededed;
      border-radius: 30px; }
  #education.practice #area02 .flex_box {
    position: inherit;
    margin-bottom: 30px; }
    #education.practice #area02 .flex_box:nth-child(even) .intro_box {
      left: auto; }
  #education.practice #area02 .read_copy + .flex_box {
    margin-top: 0; }
  #education.practice #area02 .intro_box {
    position: relative;
    top: auto;
    right: auto;
    align-items: flex-start;
    width: auto;
    margin-top: -15px; }
  #education.practice #area02 .pickup_box {
    margin-top: 50px; }
  #education.practice #area02 .main_box {
    display: inherit; }
    #education.practice #area02 .main_box p {
      margin-bottom: 20px; }
    #education.practice #area02 .main_box dl {
      margin-left: 0; }
  #education.practice #message .flex_box {
    align-items: stretch; }
    #education.practice #message .flex_box .photo span {
      display: block;
      margin-top: 5px; }
    #education.practice #message .flex_box .text {
      width: auto; }
  #education.practice #area03_p .flex_box > p {
    width: 100%;
    max-width: 460px; }
  #education.practice #area03_p .area03_1 {
    width: auto;
    margin-left: 0; }
    #education.practice #area03_p .area03_1 > dl {
      position: relative;
      height: 140px; }
    #education.practice #area03_p .area03_1 > dl dt {
      position: absolute;
      top: -18px;
      left: -20px;
      width: 200px;
      padding: 5px;
      background: #2a4198;
      color: #fff;
      text-align: center;
      font-size: 2.0rem;
      font-weight: bold;
      z-index: 10; }
    #education.practice #area03_p .area03_1 > dl dd {
      position: absolute;
      top: 20px;
      left: 0;
      width: 500px;
      margin-bottom: 30px;
      margin-left: auto;
      padding: 10px;
      border: 1px solid #2a4198;
      font-size: 1.8rem;
      font-weight: 500;
      text-align: center;
      z-index: 1; }
  #education.practice #area03_p .main_box {
    display: inherit; }
    #education.practice #area03_p .main_box p {
      margin-bottom: 20px !important;
      text-align: center; }
      #education.practice #area03_p .main_box p:first-child {
        margin-right: 0; }
    #education.practice #area03_p .main_box dt {
      margin-bottom: 10px;
      padding-bottom: 10px;
      border-bottom: 1px solid #ccc;
      font-weight: bold; }
  #education.practice #area03_p > .pickup_box {
    margin-top: 40px; }

  /* entry (英皇娱乐官网,英皇娱乐平台) -------------------------------------------*/
  #entry #area01 .flex_box {
    display: flex;
    justify-content: space-around;
    width: auto;
    padding: 15px; }
    #entry #area01 .flex_box dl {
      width: 42%;
      margin: 0; }
    #entry #area01 .flex_box dt {
      text-align: center; }
    #entry #area01 .flex_box dd img {
      padding: 5px;
      border: 1px solid #ccc;
      box-sizing: border-box; }

  #entry.tuition #area01 table {
    margin-top: 0; }
  #entry.tuition #area01 dl {
    overflow: hidden;
    width: 560px;
    margin: 0 auto 20px; }
    #entry.tuition #area01 dl dt, #entry.tuition #area01 dl dd {
      float: left;
      padding: 8px 10px;
      border-bottom: 1px solid #ccc; }
    #entry.tuition #area01 dl dt {
      clear: both;
      width: 190px;
      color: #2a4198;
      font-weight: bold; }
    #entry.tuition #area01 dl dd {
      float: right;
      width: 330px;
      text-align: right; }
  #entry.tuition #area01 p.small {
    margin-bottom: 0 !important;
    text-align: right; }

  /* future (就職?進学/SP) ----------------------------------------*/
  #career #area01 #area01_1 dl {
    position: relative;
    width: auto;
    margin: 0 auto 30px; }
  #career #area01 #area01_1 dt {
    width: auto;
    text-align: center; }
  #career #area01 #area01_1 dt, #career #area01 #area01_1 dd {
    float: none; }
  #career #area01 #area01_1 dd {
    width: auto; }
  #career #area01 #area01_1 dd:not([class]) {
    margin-top: 10px; }
  #career #area01 #area01_1 dd.name,
  #career #area01 #area01_1 dd.name span {
    position: relative;
    display: block;
    width: 100%;
    margin-top: -4px;
    z-index: 10; }
  #career #area01 #area01_1 .title {
    width: 80%; }
  #career #area01 #area01_2 dl {
    padding: 20px;
    background: #f7f7f7; }
  #career #area01 #area01_2 dt {
    margin-bottom: 10px;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center; }
  #career #area01 #area01_3 .flex_box {
    align-items: stretch;
    margin-top: 30px; }
  #career #area01 #area01_3 .photo {
    position: relative; }
    #career #area01 #area01_3 .photo span {
      display: block; }
    #career #area01 #area01_3 .photo .job {
      position: absolute;
      bottom: 50px;
      right: 5px; }
    #career #area01 #area01_3 .photo .name {
      margin-top: 5px; }
  #career #area01 #area01_3 .text {
    width: auto; }
  #career #area01 #area01_3 .read_copy {
    margin-bottom: 15px; }
  #career #area01 #area01_4 dl {
    margin-top: 30px; }
  #career #area02 .choice {
    flex-wrap: wrap;
    margin: 0 2%; }
  #career #area02 #area02_2 .flex_box {
    align-items: stretch;
    margin-top: 30px; }
  #career #area02 #area02_2 .photo {
    position: relative; }
    #career #area02 #area02_2 .photo span.name {
      margin-top: 5px; }
  #career #area02 #area02_2 .text {
    width: auto; }
  #career #area02 #area02_2 .read_copy span {
    background: linear-gradient(transparent 50%, #f0e900 50%); }
  #career #area03 .brackets {
    width: auto;
    font-size: 4vw; }
  #career #area03 .pass_rate dt {
    font-size: 6.0vw; }
  #career #area03 .counterplan {
    overflow: inherit; }
    #career #area03 .counterplan dt, #career #area03 .counterplan dd {
      float: none; }
    #career #area03 .counterplan dt {
      width: auto;
      height: 60px;
      position: inherit;
      font-size: 2.0rem;
      line-height: 60px; }
      #career #area03 .counterplan dt::after {
        display: none; }
    #career #area03 .counterplan dd {
      display: inherit;
      width: auto;
      padding: 15px; }
      #career #area03 .counterplan dd p {
        margin-right: 0;
        margin-bottom: 15px; }
  #career #area03 .pickup_box {
    margin-top: 30px; }
  #career #area03 .main_box {
    display: inherit; }
    #career #area03 .main_box p:first-child {
      margin-right: 0;
      margin-bottom: 20px; }
    #career #area03 .main_box dt {
      margin-bottom: 10px;
      color: #2a4198;
      font-size: 1.8rem;
      font-weight: bold; }
  #career #area04 p:not([class]) {
    width: 100%;
    margin: 40px auto 20px;
    text-align: center; }

  /* oc (オープンキャンパス/SP) -------------------------------------------*/
  #oc table .date {
    width: 40%; }
  #oc #area02 .photo {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    text-align: center; }
    #oc #area02 .photo li {
      width: 48%; }

  /* point (特長/SP) --------------------------------------------*/
  #features #area01 #area01_1 {
    justify-content: flex-start;
    align-items: flex-start;
    padding: 0 2%; }
    #features #area01 #area01_1 > p {
      width: auto;
      margin-top: 20px;
      padding: 0; }
    #features #area01 #area01_1 div {
      display: flex;
      justify-content: space-around; }
    #features #area01 #area01_1 dl:first-child {
      position: relative;
      width: 47%;
      margin-right: 20px;
      padding-right: 40px;
      text-align: center; }
      #features #area01 #area01_1 dl:first-child::after {
        content: "+";
        position: absolute;
        right: 0;
        top: 40%;
        font-size: 3.0rem;
        font-weight: bold; }
    #features #area01 #area01_1 dl:nth-child(2) {
      width: 47%;
      margin-right: 0; }
      #features #area01 #area01_1 dl:nth-child(2) dt {
        text-align: center; }
      #features #area01 #area01_1 dl:nth-child(2) dt img {
        max-width: 174px; }
      #features #area01 #area01_1 dl:nth-child(2) p {
        margin-bottom: 10px; }
      #features #area01 #area01_1 dl:nth-child(2) ul {
        margin-left: 30px; }
  #features #area01 #area01_2 dl {
    width: auto;
    margin-bottom: 20px; }
  #features #area01 #area01_2 dt {
    margin-bottom: 10px;
    font-size: 3vw; }
    #features #area01 #area01_2 dt::after {
      bottom: -11px;
      height: 10px; }
  #features #area01 #area01_3 dl {
    position: relative;
    overflow: inherit;
    width: auto;
    margin: 0 auto 10px; }
  #features #area01 #area01_3 dt {
    position: absolute;
    top: -10px;
    left: 0;
    width: 50px;
    padding-right: 20px;
    color: #fff;
    text-align: center;
    font-weight: bold; }
    #features #area01 #area01_3 dt span {
      position: relative;
      display: block;
      width: 60px;
      height: 60px;
      background: #2a4198;
      border-radius: 100%;
      line-height: 60px; }
      #features #area01 #area01_3 dt span::after {
        display: none; }
  #features #area01 #area01_3 dd {
    float: none;
    width: auto;
    margin-left: 50px;
    padding: 20px 15px 20px 30px; }
  #features #area01 #area01_3 dl:nth-child(1),
  #features #area01 #area01_3 dl:nth-child(2) {
    position: relative;
    padding-top: 0;
    padding-bottom: 30px;
    color: #000;
    vertical-align: middle;
    text-decoration: none;
    font-size: 15px; }
    #features #area01 #area01_3 dl:nth-child(1)::after,
    #features #area01 #area01_3 dl:nth-child(2)::after {
      position: absolute;
      bottom: 5px;
      left: 0;
      right: 0;
      margin: auto;
      content: "";
      display: block;
      width: 18px;
      height: 18px;
      border-top: 4px solid #2a4198;
      border-right: 4px solid #2a4198;
      -webkit-transform: rotate(135deg);
      transform: rotate(135deg); }
  #features #area01 #area01_3 dl:nth-child(3) {
    padding-top: 0; }
  #features #area01 #area01_3 dl:nth-child(2)::before,
  #features #area01 #area01_3 dl:nth-child(3)::before {
    display: none; }
  #features #area01 #area01_3 dl.pass_rate dt {
    position: inherit;
    top: auto;
    font-size: 6.0vw; }
  #features #area01 #area01_3 dl.pass_rate dd {
    margin-left: 0; }
  #features #area02 #area02_1 {
    margin-top: 30px; }
    #features #area02 #area02_1 dl {
      width: 300px;
      margin: 0 auto 30px; }
    #features #area02 #area02_1 dd:last-child {
      margin-top: 10px; }
  #features #area02 #area02_2 {
    padding: 20px; }
    #features #area02 #area02_2 p:first-child {
      width: auto;
      margin: 0 0 20px;
      text-align: center; }
      #features #area02 #area02_2 p:first-child img {
        width: 100%;
        max-width: 400px; }
    #features #area02 #area02_2 p:last-child {
      width: auto;
      margin-bottom: 0; }
  #features #area03 .flex_box > p {
    width: 100% !important;
    max-width: 460px;
    margin: 0 auto; }
  #features #area03 #area03_1 {
    padding: 20px !important; }
    #features #area03 #area03_1 dl {
      position: relative;
      width: auto;
      height: auto;
      margin-top: 20px; }
    #features #area03 #area03_1 dt {
      font-size: 3vw; }
    #features #area03 #area03_1 dd {
      position: static;
      width: auto;
      margin-bottom: 0;
      margin-left: auto;
      padding: 0; }
  #features #area04 #area04_1 dl {
    position: relative;
    width: 100%;
    max-width: 300px;
    margin: auto;
    margin-bottom: 30px; }
  #features #area04 #area04_1 dd {
    position: absolute;
    left: 0;
    right: 0;
    bottom: -15px;
    display: inline-block;
    margin: auto;
    text-align: center;
    z-index: 99; }
    #features #area04 #area04_1 dd span {
      display: inline-block;
      padding: 5px 10px;
      background: #2a4198;
      color: #fff; }
  #features #area05 .main_box {
    display: inherit; }
    #features #area05 .main_box p {
      margin-right: 0;
      margin-bottom: 20px; }
    #features #area05 .main_box dt {
      margin-bottom: 10px;
      color: #2a4198;
      font-size: 1.8rem;
      font-weight: bold; }

  /* school_life (学生生活) -------------------------------------------*/
  #campuslife #events .link_btn a {
    width: 80%; }
  #campuslife #area01 .eventbox {
    width: 100%; }
    #campuslife #area01 .eventbox dl {
      width: 98%;
      margin: 30px auto 20px; }
      #campuslife #area01 .eventbox dl dt {
        top: -15px;
        left: 0;
        right: 0;
        width: 40%;
        margin: auto;
        text-align: center; }
  #campuslife #area02 .flex_box {
    padding: 20px;
    background: #f7f7f7; }
    #campuslife #area02 .flex_box p {
      width: 100%;
      margin: 0 auto; }
    #campuslife #area02 .flex_box dl {
      width: auto;
      padding: 20px 0 0; }
      #campuslife #area02 .flex_box dl dt {
        margin-bottom: 10px;
        padding-bottom: 5px;
        border-bottom: 1px solid #2a4198;
        color: #2a4198;
        font-size: 2.0rem;
        font-weight: bold;
        text-align: center; }
  #campuslife #area03 .flex_box {
    align-items: stretch;
    flex-wrap: wrap;
    justify-content: space-around; }
    #campuslife #area03 .flex_box .topics {
      width: auto;
      margin-bottom: 30px;
      padding: 20px;
      background: #f7f7f7;
      border-radius: 4px; }
    #campuslife #area03 .flex_box p {
      text-align: center; }
    #campuslife #area03 .flex_box dt {
      margin-bottom: 15px;
      padding-bottom: 10px;
      color: #2a4198;
      border-bottom: 1px solid #2a4198;
      font-weight: bold;
      font-size: 1.8rem;
      text-align: center; }
  #campuslife #area03 .linkArea {
    width: auto;
    margin: 0; }
  #campuslife #area03 .linkArea p {
    width: 80%; }
  #campuslife #area04 .flex_box {
    align-items: stretch; }
  #campuslife #area04 .imgbox img {
    width: 100%; }
  #campuslife #area04 .imgbox,
  #campuslife #area04 .textbox {
    width: auto; }
  #campuslife #area04 dl {
    display: flex;
    align-items: flex-start;
    margin-top: 30px; }
  #campuslife #area04 dt {
    display: inline-block;
    margin-bottom: 10px;
    padding: 5px 20px;
    border: 1px solid #2a4198;
    color: #2a4198;
    font-weight: bold;
    white-space: nowrap; }
  #campuslife #area04 dd {
    padding: 5px 20px; }
  #campuslife #area04 ul {
    margin-left: 25px; }
  #campuslife #area05 .linkArea {
    margin: 20px auto 0;
    padding: 0; }
  #campuslife #area06 .flex_box {
    display: flex;
    justify-content: space-between;
    padding: 0; }
    #campuslife #area06 .flex_box dl {
      width: 100%;
      max-width: 300px;
      margin: 0 auto 30px; }
    #campuslife #area06 .flex_box dt {
      padding: 2px;
      font-size: 3vw; }

  /* news（お知らせ）-------------------------------------------*/
  #news dl {
    overflow: hidden;
    margin-bottom: 20px; }
    #news dl dt, #news dl dd {
      margin-bottom: 10px; }
    #news dl dt {
      clear: both;
      float: left;
      width: 23%;
      padding-right: 0; }
      #news dl dt::after {
        display: none; }
    #news dl dd {
      float: right;
      width: 74%; }

  /* question (よくある質問) -------------------------------------------*/
  #qa .qa_box {
    width: auto; }
  #qa .accordionlist dt .title {
    width: 85%; } }
/*----------------------------------------------------------------------------------------
PC only 981～
----------------------------------------------------------------------------------------*/
@media screen and (min-width: 981px) {
  /* page common --------------------------------*/
  #titleArea {
    height: 200px;
    letter-spacing: 10px;
    font-size: 2.2rem; }

  #mainArea {
    width: 1040px;
    margin: 0 auto; }
    #mainArea section {
      margin-bottom: 80px; }

  /* backBtn ---------------------------------------*/
  #backBtn p {
    width: 360px; }
  #backBtn a {
    font-size: 2.0rem; }

  /* faculty (学院紹介/PC) ----------------------------------------*/
  #faculty section#messageArea .message_box {
    display: flex;
    justify-content: space-around;
    margin: 40px 0; }
  #faculty section#messageArea .photo_box {
    width: 300px; }
    #faculty section#messageArea .photo_box p img {
      max-width: 300px;
    }
  #faculty section#messageArea .text_box {
    width: 600px; }
    #faculty section#messageArea .text_box h3 {
      width: 600px; }

  /* education (教育紹介/PC) -------------------------------------------*/
  #education #goal .flex_box {
    align-items: stretch; }
    #education #goal .flex_box p.icon {
      margin-bottom: 0;
      background: #fff;
      text-align: center; }
      #education #goal .flex_box p.icon img {
        padding: 15px 30px;
        background: #f7f7f7; }
    #education #goal .flex_box dt {
      font-weight: bold; }
    #education #goal .flex_box .school {
      width: 47%;
      position: relative; }
      #education #goal .flex_box .school::before {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        margin: auto;
        right: -54px;
        width: 0;
        height: 0;
        border-style: solid;
        border-color: transparent transparent transparent #ff629a;
        border-width: 24px 0 24px 24px; }
      #education #goal .flex_box .school::after {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        margin: auto;
        right: -30px;
        width: 20px;
        height: 18px;
        background: #ff629a; }
      #education #goal .flex_box .school dl {
        position: relative;
        display: flex;
        float: right;
        clear: both; }
        #education #goal .flex_box .school dl.three {
          width: 80%;
          margin-bottom: 2px; }
          #education #goal .flex_box .school dl.three::before {
            content: "";
            display: block;
            position: absolute;
            left: -30px;
            bottom: 0;
            width: 66px;
            height: 57px;
            background: url(/kango/_wp/wp-content/themes/teikyo-u/education/img/icon_01.png) left center no-repeat; }
        #education #goal .flex_box .school dl.two {
          position: relative;
          width: 90%;
          margin-bottom: 2px; }
      #education #goal .flex_box .school dt, #education #goal .flex_box .school dd {
        padding: 15px;
        background: #c9e6ff; }
      #education #goal .flex_box .school dt {
        width: 50px;
        color: #2a4198;
        white-space: nowrap; }
      #education #goal .flex_box .school dd {
        width: auto; }
    #education #goal .flex_box .hospital {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      width: 43%;
      padding: 1% 2%;
      background: #ffe9f0; }
      #education #goal .flex_box .hospital dl {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center; }
      #education #goal .flex_box .hospital dt {
        margin: 20px 0;
        color: #ff629a;
        text-align: center; }
  #education #area01 .c_box {
    display: none;
    margin-bottom: 15px; }
    #education #area01 .c_box h4 {
      margin: 0;
      background: #ff629a;
      color: #fff;
      font-size: 1.2rem;
      font-weight: bold;
      letter-spacing: 3px;
      padding: 5px 10px;
      height: 20px; }
    #education #area01 .c_box .l_term dt {
      display: none; }
    #education #area01 .c_box .inbox {
      display: flex;
      border-bottom: 1px solid #ff629a; }
      #education #area01 .c_box .inbox dl {
        display: flex;
        flex-direction: column;
        width: 20%; }
        #education #area01 .c_box .inbox dl:first-child dt, #education #area01 .c_box .inbox dl:first-child dd {
          border-left: 0; }
      #education #area01 .c_box .inbox dt {
        padding: 10px 5px;
        background: #EDEDED;
        color: #2a4198;
        border-bottom: 1px solid #fff;
        border-left: 1px solid #fff;
        font-size: 1.3rem;
        font-weight: bold;
        text-align: center; }
      #education #area01 .c_box .inbox dd {
        width: 100%;
        height: 100%;
        padding: 10px;
        text-align: left;
        border-left: 1px dashed #ff629a;
        box-sizing: border-box; }
        #education #area01 .c_box .inbox dd ul {
          margin-left: 1.3em; }
        #education #area01 .c_box .inbox dd ul li {
          font-size: 1.2rem;
          margin-bottom: 5px;
          line-height: 1.4; }
    #education #area01 .c_box.third div.p_term, #education #area01 .c_box.third div.l_term, #education #area01 .c_box.third .all {
      display: none; }

  /* school_life (学生生活/PC) ----------------------------------------*/
  #campuslife #area05 .flex_box > p {
    width: 300px; }
  #campuslife #area05 .rightbox {
    width: 700px; }
  #campuslife #area05 .linkArea {
    justify-content: flex-start;
    padding: 0; }
    #campuslife #area05 .linkArea p {
      margin: 0 !important; }

  /* news（お知らせ/PC）--------------------------------------*/
  #news section dl {
    overflow: hidden; }
    #news section dl dt, #news section dl dd {
      float: left;
      margin-bottom: 10px; }
    #news section dl dt {
      position: relative;
      clear: both;
      width: 100px;
      padding-right: 40px; }
      #news section dl dt::after {
        content: "";
        display: block;
        position: absolute;
        top: 50%;
        right: 0;
        width: 30px;
        height: 1px;
        background: #d6d6d6; }
    #news section dl dd {
      width: 870px;
      padding-left: 30px; } }



/* exam */
.howto_dl {
	display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
	margin-top: 30px
}
#mainArea .howto_dl p {
	margin-bottom: 0
}
.pdf_link a::after{
	content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-left: 8px;
    margin-bottom: 3px;
    background: url(/kango/_wp/wp-content/themes/teikyo-u/common/img/icon_pdf.gif) left center no-repeat;
    vertical-align: middle;
}

.list_indent {
	margin-left: 0 !important;
}
.list_indent li {
	list-style: none;
	margin-bottom: 5px;
	padding-left: 1.5em;
	text-indent: -1.5em
}
	  
/* recruit (採用情報) ----------------------------------------*/
#recruit #titleArea {
  background: url(/kango/_wp/wp-content/themes/teikyo-u/recruit/img/keyvisual.png) center center no-repeat;
  background-size: cover; }

/* TOP recruit_bnr 2024 */
#top .recruit_bnr {
  width: 1040px;
  margin: 0 auto 80px;
}
#top .recruit_bnr a {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 500px;
  min-height: 100px;
  margin: auto;
  padding: 20px;
  background-color: #2a4198;
  color: #fff;
  border: 1px solid #2a4198;
  border-radius: 4px;
  text-align: center;
  box-sizing: border-box;
}
#top .recruit_bnr a::after {
  display: block;
  position: absolute;
  right: 0;
  top: 50%;
  content: "";
  width: 40px;
  height: 1px;
  background: #fff;
}
#top .recruit_bnr a .copy,
#top .recruit_bnr a .tlt {
  position: relative;
  z-index: 2;
}
#top .recruit_bnr a .copy {
  font-weight: 500;
  font-size: 1.2rem;
  line-height: 1.4;
}
#top .recruit_bnr a .tlt {
  font-size: 2.2rem;
  font-weight: 700;
}
#top .recruit_bnr a:hover {
  background: #fff;
  color: #2a4198;
  text-decoration: none;
}

#top .recruit_bnr a:hover::before {
  opacity: 0;
}


@media screen and (max-width: 980px) {

  #top .recruit_bnr {
    width: 100%;
    padding: 0 5%;
    box-sizing: border-box;
  }
  
}


	  
/* インスタグラムリンク追加 ----------------------------------------*/
.instagram_link {
  width: 1040px;
  margin: 0 auto 80px;
  text-align: center;
}
#top .instagram_link {
  margin-bottom: 40px;
}
.instagram_link a {
  background-size: 110px auto;
  font-weight: bold;
}
.instagram_link a img {
  width: 50px;
  height: auto;
}
  #top .instagram_link a img {
    width: 80px;
    height: auto;
  }
.instagram_link a span {
  display: block;
  margin-top: 8px;
}
.instagram_link a:hover {
  text-decoration: none;
  opacity: 0.6;
}
@media screen and (max-width: 980px) {

  .instagram_link {
    width: 100%;
    padding: 0 5%;
    box-sizing: border-box;
  }
  .instagram_link a img {
    max-width: 50px;
  }
  #top .instagram_link a img {
    max-width: 60px;
  }
  
}
