@charset "UTF-8";
.header .menu .global > ul, .header .menu .target ul, .header .menu .assist, .header .menu .in-campus ul, footer .footer-contents, footer .footer-contents .other-link .assist-wrap .assist, footer .footer-contents .univ-info .access, footer .footer-contents .other-link {
  display: inline-block; }
  .header .menu .global > ul, .header .menu .target ul, .header .menu .assist, .header .menu .in-campus ul, footer .footer-contents, footer .footer-contents .other-link .assist-wrap .assist, footer .footer-contents .univ-info .access, footer .footer-contents .other-link {
    display: block; }
  .header .menu .global > ul:after, .header .menu .target ul:after, .header .menu .assist:after, .header .menu .in-campus ul:after, footer .footer-contents:after, footer .footer-contents .other-link .assist-wrap .assist:after, footer .footer-contents .univ-info .access:after, footer .footer-contents .other-link:after {
    content: "";
    display: block;
    clear: both;
    height: 0; }

/* inner extend */
/* icon extend */
/* inner mixin */
/* --------------------------------------------

	FileName	:	common.css

-------------------------------------------- */
article, section, header, footer, nav, menu, aside, figure, figcaption, main {
  display: block;
  padding: 0;
  margin: 0; }

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0; }

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

fieldset, img {
  border: 0; }

img {
  vertical-align: top; }

address, caption, cite, code, dfn, em, strong, th, var, u {
  font-style: normal;
  font-weight: normal;
  text-decoration: none; }

a {
  outline: 0;
  vertical-align: baseline; }

a > * {
  cursor: pointer; }

ol, ul {
  list-style: none; }

caption, th {
  text-align: left; }

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
  vertical-align: bottom; }

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

abbr, acronym {
  border: 0; }

@font-face {
  font-family: 'fontello';
  src: url("../font/fontello.eot?14293958");
  src: url("../font/fontello.eot?14293958#iefix") format("embedded-opentype"), url("../font/fontello.woff2?14293958") format("woff2"), url("../font/fontello.woff?14293958") format("woff"), url("../font/fontello.ttf?14293958") format("truetype"), url("../font/fontello.svg?14293958#fontello") format("svg");
  font-weight: normal;
  font-style: normal; }

/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */
/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */
/*
@media screen and (-webkit-min-device-pixel-ratio:0) {
  @font-face {
    font-family: 'fontello';
    src: url('../font/fontello.svg?14293958#fontello') format('svg');
  }
}
*/
[class^="icon-"]:before, [class*=" icon-"]:before {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  margin-right: .2em;
  text-align: center;
  /* opacity: .8; */
  /* For safety - reset parent styles, that can break glyph codes*/
  font-variant: normal;
  text-transform: none;
  /* fix buttons height, for twitter bootstrap */
  line-height: 1em;
  /* Animation center compensation - margins should be symmetric */
  /* remove if not needed */
  margin-left: .2em;
  /* you can be more comfortable with increased icons size */
  /* font-size: 120%; */
  /* Font smoothing. That was taken from TWBS */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  /* Uncomment for 3D effect */
  /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */ }

.icon-right-dir:before {
  content: '\e800'; }

.icon-right-circle:before {
  content: '\e801'; }

.icon-down-circle:before {
  content: '\e802'; }

.icon-down-dir:before {
  content: '\e803'; }

.icon-up-dir:before {
  content: '\e804'; }

.icon-left-dir:before {
  content: '\e805'; }

.icon-left-circle:before {
  content: '\e806'; }

.icon-up-circle:before {
  content: '\e807'; }

.icon-cancel:before {
  content: '\e808'; }

.icon-search:before {
  content: '\f50d'; }

/* -------------------------------------
		header
	-------------------------------------- */
.header {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  transition: background-color 0.3s;
  box-sizing: border-box; }
  @media print, screen and (min-width: 768px) {
    .header {
      min-width: 1000px;
      background: rgba(255, 255, 255, 0.75);
      padding: 0 40px;
      box-sizing: border-box; }
      .header.scrolled {
        background: white; } }
  @media print, screen and (min-width: 768px) and (max-width: 1200px) {
    .header {
      padding: 0 15px; } }
  @media only screen and (max-width: 767px) {
    .header {
      padding: 0 15px;
      background: white;
      box-shadow: 0 3px 3px rgba(51, 51, 51, 0.3); } }
  @media print {
    .header {
      position: absolute; } }
  .header .header-inner {
    position: relative;
    max-width: 1400px;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    box-sizing: border-box; }
    @media print, screen and (min-width: 768px) {
      .header .header-inner {
        height: 150px; } }
    @media only screen and (max-width: 767px) {
      .header .header-inner {
        height: 60px; } }
    .header .header-inner .logo {
      position: relative;
      left: 0;
      overflow: hidden;
      float: left;
      width: 232px; }
      @media print, screen and (min-width: 768px) {
        .header .header-inner .logo {
          /* ---- 2022.6.22 top: 20px; ---- */
          top: 14px; } }
      @media only screen and (max-width: 767px) {
        .header .header-inner .logo {
          width: 170px;
          top: 10px; } }

/* ---- 2022.5.26 ---- */
    .header .header-inner .logo-after {
      position: relative;
      top: 14px;
      left: 20px;
      overflow: hidden;
      float: left;
      width: 190px; 
      font-size: 12px;
      font-weight: bold; 
      color: #000;
      padding 4px 3px 4px 10px;
      line-height: 140%; }
      @media only screen and (max-width: 767px) {
        .header .header-inner .logo-after {
          width: 168px;
          left: 6px;
          top: 18px; 
          font-size: 9px; } }
/* ---- /2022.5.26 ---- */

    .header .header-inner .menu-btn {
      position: absolute;
      right: 0;
      top: 18px;
      cursor: pointer;
      transition: all 0.2s; }
      @media print, screen and (min-width: 768px) {
        .header .header-inner .menu-btn {
          display: none !important; } }
      @media only screen and (max-width: 767px) {
        .header .header-inner .menu-btn {
          display: inline-block; }
          .header .header-inner .menu-btn > a {
            width: 32px;
            height: 25px;
            display: block;
            position: relative; }
            .header .header-inner .menu-btn > a span {
              transition: all 0.2s;
              display: inline-block;
              position: absolute;
              left: 0;
              width: 100%;
              height: 3px;
              /* 2022.6.23 background-color: #387e5a; */
              background-color: #a0d8ea; }
              .header .header-inner .menu-btn > a span:nth-of-type(1) {
                top: 0; }
              .header .header-inner .menu-btn > a span:nth-of-type(2) {
                top: 11px; }
              .header .header-inner .menu-btn > a span:nth-of-type(3) {
                bottom: 0; }
          .header .header-inner .menu-btn.active a span:nth-of-type(1) {
            -webkit-transform: translateY(11px) rotate(-45deg);
            transform: translateY(11px) rotate(-45deg); }
          .header .header-inner .menu-btn.active a span:nth-of-type(2) {
            opacity: 0; }
          .header .header-inner .menu-btn.active a span:nth-of-type(3) {
            -webkit-transform: translateY(-11px) rotate(45deg);
            transform: translateY(-11px) rotate(45deg); } }
  @media print, screen and (min-width: 768px) {
    .header .menu {
      display: block !important; } }
  @media only screen and (max-width: 767px) {
    .header .menu {
      display: none;
      position: fixed;
      /* ---- 2022.6.23 background: #387e5a; ---- */
      background: #a0d8ea;
      top: 60px;
      left: 0;
      right: 0;
      bottom: 0;
      height: 100%;
      width: 100%;
      overflow-y: auto;
      padding-bottom: 60px;
      box-sizing: border-box; } }
  @media only screen and (max-width: 767px) {
    .header .menu .global > ul, .header .menu .target ul {
      width: 100%;
      /* ---- 2022.6.23 background: #387e5a; ---- */
      background: #a0d8ea;
      /* ---- 2022.6.23 border-bottom: 2px solid #459a6e; ---- */
      border-bottom: 2px solid #c1e6f1; }
      .header .menu .global > ul > li, .header .menu .target ul > li {
        float: left;
        width: 50%;
        box-sizing: border-box;
        /* ---- 2022.6.23 border-right: 1px solid #459a6e; ---- */
        border-right: 1px solid #c1e6f1;
        /* ---- 2022.6.23 border-bottom: 1px solid #459a6e; ---- */
        border-bottom: 1px solid #c1e6f1;
        line-height: 1; }
        .header .menu .global > ul > li:nth-child, .header .menu .target ul > li:nth-child {
          border-right: none; }
        .header .menu .global > ul > li a, .header .menu .target ul > li a {
          position: relative;
          display: block;
          color: #fff;
          text-decoration: none;
          transition: all 0.2s;
          font-size: 14px;
          font-size: 0.93333rem;
          padding: 14px 8px; }
          .header .menu .global > ul > li a:after, .header .menu .target ul > li a:after {
            content: '\e800';
            margin: auto;
            color: #fff;
            line-height: 1;
            font-size: 10px;
            font-size: 0.66667rem;
            font-family: "fontello";
            font-style: normal;
            font-weight: normal;
            speak: none;
            display: inline-block;
            text-decoration: inherit;
            text-align: center;
            font-variant: normal;
            text-transform: none;
            line-height: 1em;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            position: absolute;
            right: 8px;
            top: 50%;
            -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
            text-indent: 0; }
          .header .menu .global > ul > li a:hover, .header .menu .target ul > li a:hover {
            /* ---- 2022.6.23 background: #2f694b; ---- */
            background: #61bedc; }
        .header .menu .global > ul > li .sub-wrapper, .header .menu .target ul > li .sub-wrapper {
          display: none !important; } }
  @media print, screen and (min-width: 768px) {
    .header .menu .global {
      /* ---- 2022.6.23 background: #387e5a; ---- */
      background: #a0d8ea;
      position: absolute;
      top: 90px;
      left: 0;
      right: 0; } }
  @media only screen and (max-width: 767px) {
    .header .menu .global {
      padding-top: 42px; }
      .header .menu .global > ul > li > ul {
        display: none !important; } }
  @media print, screen and (min-width: 768px) {
    .header .menu .global > ul {
      width: 100%;
      display: -ms-flexbox;
      display: flex;
      display: -webkit-flex;
      display: -ms-flex;
      max-width: 1400px;
      margin-left: auto;
      margin-right: auto; }
      .header .menu .global > ul > li {
        height: 60px;
        -ms-flex: auto;
        flex: auto;
        -webkit-flex: auto; }
        .header .menu .global > ul > li > a {
          position: relative;
          display: block;
          font-size: 15px;
          font-size: 1rem;
          /* ---- 2022.6.23 color: #fff; ---- */
          color: #333;
          text-decoration: none;
          transition: all 0.2s;
          text-align: center;
          height: 100%; }
          .header .menu .global > ul > li > a span {
            position: relative;
            vertical-align: middle;
            display: inline-block;
            top: 50%;
            -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }
          .header .menu .global > ul > li > a:before {
            content: '';
            position: absolute;
            width: 1px;
            height: auto;
            top: 10px;
            bottom: 9px;
            left: 0;
            border-left: 1px dotted rgba(255, 255, 255, 0.25); }
        .header .menu .global > ul > li:last-child > a:after {
          content: '';
          position: absolute;
          width: 1px;
          height: auto;
          top: 10px;
          bottom: 9px;
          right: 0;
          border-left: 1px dotted rgba(255, 255, 255, 0.4); }
        .header .menu .global > ul > li .sub-wrapper {
          position: absolute;
          z-index: -1;
          width: 100%;
          top: 60px;
          left: 0;
          right: 0;
          opacity: 0;
          visibility: hidden;
          -webkit-transform: translate(0, -15px);
          transform: translate(0, -15px);
          transition: all 0.25s; }
          .header .menu .global > ul > li .sub-wrapper.visible {
            opacity: 0.9999;
            visibility: visible;
            -webkit-transform: translate(0, 0);
            transform: translate(0, 0); }
        .header .menu .global > ul > li .sub {
          /* ---- 2022.6.23 background: #2f694b; ---- */
          background: #61bedc;
          max-width: 1400px;
          margin: 0 auto;
          box-sizing: border-box;
          display: table; }
          .header .menu .global > ul > li .sub dt, .header .menu .global > ul > li .sub dd {
            display: table-cell;
            vertical-align: top; }
          .header .menu .global > ul > li .sub dt {
            /* ---- 2022.6.23 background: #2b6246; */
            background: #53b6d7;
            width: 24%;
            padding: 25px; }
            .header .menu .global > ul > li .sub dt a {
              display: block;
              text-decoration: none; }
              .header .menu .global > ul > li .sub dt a:hover span {
                /* ---- 2022.6.23 color: rgba(255, 255, 255, 0.6); ---- */
                color: rgba(255, 64, 64, 0.6); }
            .header .menu .global > ul > li .sub dt span {
              color: #fff;
              font-size: 16px;
              font-size: 1.06667rem;
              position: relative;
              display: block;
              padding-left: 20px;
              line-height: 1.2;
              transition: color 0.2s; }
              .header .menu .global > ul > li .sub dt span:before {
                background: #fff;
                padding: 4px;
                content: '\e800';
                margin: auto;
                /* ---- 2022.6.23 color: #387e5a; ---- */
                color: #a0d8ea;
                line-height: 1;
                font-size: 12px;
                font-size: 0.8rem;
                font-family: "fontello";
                font-style: normal;
                font-weight: normal;
                speak: none;
                display: inline-block;
                text-decoration: inherit;
                text-align: center;
                font-variant: normal;
                text-transform: none;
                line-height: 1em;
                -webkit-font-smoothing: antialiased;
                -moz-osx-font-smoothing: grayscale;
                position: absolute;
                left: 0;
                top: 50%;
                bottom: auto;
                -webkit-transform: translate(0, -50%);
                transform: translate(0, -50%);
                transition: all 0.2s;
                border-radius: 3px; }
            .header .menu .global > ul > li .sub dt img {
              margin: 12px 0 0;
              border-radius: 4px; }
          .header .menu .global > ul > li .sub dd {
            vertical-align: top;
            padding: 25px;
            width: 76%; }
          .header .menu .global > ul > li .sub ul {
            display: -ms-flexbox;
            display: flex;
            display: -webkit-flex;
            -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
            flex-wrap: wrap;
            -ms-flex-preferred-size: auto;
            flex-basis: auto;
            -webkit-flex-basis: auto;
            width: 100%; }
            .header .menu .global > ul > li .sub ul li {
              width: 23.5%;
              max-width: 23.5%;
              border-bottom: 1px dotted rgba(255, 255, 255, 0.2);
              margin-left: 2%; }
              .header .menu .global > ul > li .sub ul li:nth-child(4n+1) {
                margin-left: 0; }
              .header .menu .global > ul > li .sub ul li:nth-child(1), .header .menu .global > ul > li .sub ul li:nth-child(2), .header .menu .global > ul > li .sub ul li:nth-child(3), .header .menu .global > ul > li .sub ul li:nth-child(4) {
                border-top: 1px dotted rgba(255, 255, 255, 0.2); }
              .header .menu .global > ul > li .sub ul li a {
                font-size: 14px;
                font-size: 0.93333rem;
                text-align: left;
                color: #333;
                position: relative;
                line-height: 1.4;
                color: #fff;
                text-decoration: none;
                padding: 13px 0 12px 18px;
                display: block;
                transition: all 0.2s; }
                .header .menu .global > ul > li .sub ul li a:before {
                  content: '\e800';
                  margin: auto;
                  color: #fff;
                  line-height: 1;
                  font-size: 14px;
                  font-size: 0.93333rem;
                  font-family: "fontello";
                  font-style: normal;
                  font-weight: normal;
                  speak: none;
                  display: inline-block;
                  text-decoration: inherit;
                  text-align: center;
                  font-variant: normal;
                  text-transform: none;
                  line-height: 1em;
                  -webkit-font-smoothing: antialiased;
                  -moz-osx-font-smoothing: grayscale;
                  position: absolute;
                  left: 0;
                  top: 50%;
                  bottom: auto;
                  -webkit-transform: translate(0, -50%);
                  transform: translate(0, -50%);
                  vertical-align: middle; }
                .header .menu .global > ul > li .sub ul li a:hover {
                  /* ---- 2022.6.23 color: rgba(255, 255, 255, 0.6); ---- */
                  color: rgba(255, 64, 64, 0.6); }
        .header .menu .global > ul > li.active > a, .header .menu .global > ul > li.sub-open > a, .header .menu .global > ul > li > a:hover {
          /* ---- 2022.6.23 background: #2f694b; ---- */
          background: #61bedc; } }
  @media print, screen and (min-width: 768px) and (max-width: 1400px) {
    .header .menu .global > ul > li:first-child a:before {
      display: none; }
    .header .menu .global > ul > li:last-child a:after {
      display: none; } }
  @media only screen and (max-width: 767px) {
    .header .menu .global > ul li:last-child {
      border-bottom: none; }
    .header .menu .global > ul li.active > a, .header .menu .global > ul li > a:hover {
      /* ---- 2022.6.23 background: #2f694b; ---- */
      background: #61bedc; } }
  @media print, screen and (min-width: 768px) {
    .header .menu .wiget {
      max-width: 1400px;
      width: 100%;
      margin-left: auto;
      margin-right: auto;
      position: relative;
      top: -150px;
      right: 0; } }
  @media print, screen and (min-width: 768px) {
    .header .menu .wiget .wiget-inner {
      position: relative;
      right: 0; } }
  .header .menu .search .search-link {
    position: absolute;
    top: 0;
    right: 0;
    text-decoration: none;
    width: 40px;
    height: 40px;
    /* ---- 2022.6.23 background: #387e5a; ---- */
    background: #a0d8ea;
    transition: all 0.2s; }
    .header .menu .search .search-link:hover {
      /* ---- 2022.6.23 background: #285b41; ---- */
      background: #53b6d7; }
    .header .menu .search .search-link span {
      display: block;
      text-indent: -9999px;
      white-space: nowrap;
      overflow: hidden; }
    .header .menu .search .search-link:after {
      content: '\f50d';
      margin: auto;
      color: #fff;
      line-height: 1;
      font-size: 14px;
      font-size: 0.93333rem;
      font-family: "fontello";
      font-style: normal;
      font-weight: normal;
      speak: none;
      display: inline-block;
      text-decoration: inherit;
      text-align: center;
      font-variant: normal;
      text-transform: none;
      line-height: 1em;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      position: absolute;
      left: 50%;
      top: 50%;
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%); }
    @media only screen and (max-width: 767px) {
      .header .menu .search .search-link {
        display: none; } }
  .header .menu .search .search-box {
    display: none; }
    @media only screen and (max-width: 767px) {
      .header .menu .search .search-box {
        display: block !important;
        /* ---- 2022.6.23 background: #387e5a; ---- */
        background: #a0d8ea;
        box-sizing: border-box;
        padding: 0;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        box-sizing: border-box;
        /* ---- 2022.6.23 border-bottom: 2px solid #459a6e; ---- */
        border-bottom: 2px solid #c1e6f1; }
        .header .menu .search .search-box .search-box-inner {
          display: table;
          width: 100%; }
        .header .menu .search .search-box .keyword {
          display: table-cell;
          padding: 5px;
          background: #fff; } }
    @media only screen and (max-width: 767px) and (max-width: 767px) {
      .header .menu .search .search-box .keyword {
        /* ---- 2022.6.23 background: #387e5a; ---- */
        background: #a0d8ea; } }
    @media only screen and (max-width: 767px) {
          .header .menu .search .search-box .keyword input {
            font-size: 16px;
            height: 30px;
            width: 100%;
            border: 0;
            outline: 0;
            box-sizing: border-box;
            vertical-align: top;
            padding: 5px;
            background: #eaf8e8;
            border-radius: 0; }
        .header .menu .search .search-box .btn {
          display: table-cell;
          width: 40px;
          vertical-align: top; }
          .header .menu .search .search-box .btn button {
            width: 40px;
            height: 40px;
            /* ---- 2022.6.23 background: #387e5a; ---- */
            background: #a0d8ea;
            transition: all 0.2s;
            padding: 0;
            border: 0;
            -moz-appearance: none;
            appearance: none;
            -webkit-appearance: none;
            outline: 0;
            cursor: pointer;
            display: block;
            text-indent: -9999px;
            white-space: nowrap;
            overflow: hidden;
            position: relative;
            /* ---- 2022.6.23 border-left: 1px solid #459a6e; ---- */
            border-left: 1px solid #c1e6f1; }
            .header .menu .search .search-box .btn button:after {
              content: '\f50d';
              margin: auto;
              color: #fff;
              line-height: 1;
              font-size: 20px;
              font-size: 1.33333rem;
              font-family: "fontello";
              font-style: normal;
              font-weight: normal;
              speak: none;
              display: inline-block;
              text-decoration: inherit;
              text-align: center;
              font-variant: normal;
              text-transform: none;
              line-height: 1em;
              -webkit-font-smoothing: antialiased;
              -moz-osx-font-smoothing: grayscale;
              position: absolute;
              left: 50%;
              top: 50%;
              -webkit-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
              text-indent: 0; }
            .header .menu .search .search-box .btn button:hover {
              background: #285b41; } }
  @media print, screen and (min-width: 768px) {
    .header .menu .target {
      position: absolute;
      right: 0;
      top: 55px; }
      .header .menu .target dt {
        display: none; }
      .header .menu .target ul li {
        float: left;
        margin-left: 20px;
        font-size: 13px;
        font-size: 0.86667rem; }
        .header .menu .target ul li a {
          text-decoration: none;
          color: #333;
          padding-left: 10px;
          position: relative;
          transition: all 0.2s; }
          .header .menu .target ul li a:hover {
            color: #48a173; }
          .header .menu .target ul li a:before {
            content: '\e800';
            margin: auto;
            /* ---- 2022.6.23 color: #387e5a; ---- */
            color: #a0d8ea;
            line-height: 1;
            font-size: 12px;
            font-size: 0.8rem;
            font-family: "fontello";
            font-style: normal;
            font-weight: normal;
            speak: none;
            display: inline-block;
            text-decoration: inherit;
            text-align: center;
            font-variant: normal;
            text-transform: none;
            line-height: 1em;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            position: absolute;
            top: 50%;
            left: 0;
            -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%); } }
  @media only screen and (max-width: 767px) {
    .header .menu .target dt {
      font-size: 12px;
      font-size: 0.8rem;
      color: #fff;
      padding: 5px 8px;
      /* ---- 2022.6.23 background: #2f694b; ---- */
      background: #61bedc;
      /* ---- 2022.6.23 border-bottom: 1px solid #459a6e; ---- */
      border-bottom: 1px solid #c1e6f1; }
    .header .menu .target dd {
      /* ---- 2022.6.23 background: #387e5a; ---- */
      background: #a0d8ea; }
    .header .menu .target ul li a {
      font-size: 14px;
      font-size: 0.93333rem;
      color: #fff;
      text-decoration: none; }
    .header .menu .target ul li:nth-last-child(1), .header .menu .target ul li:nth-last-child(2) {
      border-bottom: none; } }
  .header .menu .request {
    color: #fff;
    background: #e73a7b;
    text-decoration: none;
    line-height: 1;
    transition: all 0.2s; }
    .header .menu .request:hover {
      background: #d41a60; }
    @media print, screen and (min-width: 768px) {
      .header .menu .request {
        text-align: center;
        position: absolute;
        top: 0;
        right: 41px;
        width: 90px;
        font-size: 12px;
        font-size: 0.8rem;
        padding: 14px 0; } }
    @media only screen and (max-width: 767px) {
      .header .menu .request {
        text-align: center;
        font-size: 16px;
        font-size: 1.06667rem;
        display: block;
        padding: 16px 8px;
        margin: 20px 10px 0;
        position: relative;
        border-radius: 3px; }
        .header .menu .request:after {
          content: '\e800';
          margin: auto;
          color: #fff;
          line-height: 1;
          font-size: 12px;
          font-size: 0.8rem;
          font-family: "fontello";
          font-style: normal;
          font-weight: normal;
          speak: none;
          display: inline-block;
          text-decoration: inherit;
          text-align: center;
          font-variant: normal;
          text-transform: none;
          line-height: 1em;
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          position: absolute;
          right: 12px;
          top: 50%;
          -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
          text-indent: 0; } }
  @media print, screen and (min-width: 768px) {
    .header .menu .assist {
      position: absolute;
      right: 150px;
      top: 13px; }
      .header .menu .assist li {
        float: left;
        margin-left: 16px;
        font-size: 12px;
        font-size: 0.8rem; }
        .header .menu .assist li a {
          text-decoration: none;
          color: #333;
          transition: all 0.2s; }
          .header .menu .assist li a:hover {
            color: #4ba878; } }
  @media only screen and (max-width: 767px) {
    .header .menu .assist {
      /* ---- 2022.6.23 background: #285b41;
      background: #387e5a; ---- */
      background: #53b6d7;
      margin: 15px 0 0; }
      .header .menu .assist li {
        font-size: 13px;
        font-size: 0.86667rem;
        text-align: center;
        float: left;
        width: 50%;
        padding: 6px 0; }
        .header .menu .assist li a {
          text-decoration: none;
          color: #fff; }
          .header .menu .assist li a:hover {
            text-decoration: underline; } }
  .header .menu .in-campus {
    display: none; }
    @media only screen and (max-width: 767px) {
      .header .menu .in-campus {
        display: block;
        margin: 15px 8px 0;
        padding: 0 0 0; }
        .header .menu .in-campus dt {
          color: #fff;
          /* ---- 2022.6.23 background: #459a6e; ---- */
          background: #53b6d7;
          font-size: 12px;
          font-size: 0.8rem;
          text-align: center;
          padding: 5px 0; }
        .header .menu .in-campus dd {
          /* ---- 2022.6.23 background: #74c19a; ---- */
          background: #53b6d7;
          padding: 8px; }
          .header .menu .in-campus dd ul li {
            float: left;
            width: 49.5%;
            font-size: 12px;
            font-size: 0.8rem;
            text-align: center;
            margin-bottom: 1%; }
            .header .menu .in-campus dd ul li:first-child {
              width: 100%; }
            .header .menu .in-campus dd ul li:nth-child(2n) {
              clear: left;
              margin-right: 1%; }
            .header .menu .in-campus dd ul li:nth-last-child(1), .header .menu .in-campus dd ul li:nth-last-child(2) {
              margin-bottom: 0; }
            .header .menu .in-campus dd ul li a {
              line-height: 1.2;
              /* ---- 2022.6.23 background: #387e5a; ---- */
              background: #a0d8ea;
              color: #fff;
              text-decoration: none;
              display: block;
              transition: all 0.2s;
              border-radius: 3px;
              padding: 10px 3px; }
              .header .menu .in-campus dd ul li a:hover {
                background: #306c4d; } }
  .header .menu .sns {
    display: none; }
    @media only screen and (max-width: 767px) {
      .header .menu .sns {
        display: block;
        text-align: center;
        margin: 20px 0 0;
        padding: 0 0 25px; }
        .header .menu .sns li {
          display: inline-block;
          margin-right: 3px;
          width: 40px; }
          .header .menu .sns li:last-child {
            margin-right: 0; } }

.search-fancybox .fancybox-close {
  top: -36px;
  right: -36px; }

/* -------------------------------------
		検索BOX ポップアップ
	-------------------------------------- */
.search-fancybox .fancybox-inner {
  height: auto !important; }
  .search-fancybox .fancybox-inner .search-box {
    background-color: rgba(255, 255, 255, 0);
    min-width: 600px; }
  .search-fancybox .fancybox-inner .search-box-inner {
    display: table;
    width: 100%;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.6); }
  .search-fancybox .fancybox-inner .keyword {
    display: table-cell;
    padding: 5px;
    background: #fff; }
    .search-fancybox .fancybox-inner .keyword input {
      font-size: 16px;
      height: 50px;
      width: 100%;
      border: 0;
      outline: 0;
      box-sizing: border-box;
      vertical-align: top;
      padding: 5px;
      background: rgba(255, 255, 255, 0);
      border-radius: 0; }
  .search-fancybox .fancybox-inner .btn {
    display: table-cell;
    width: 60px;
    vertical-align: top; }
    .search-fancybox .fancybox-inner .btn button {
      width: 60px;
      height: 60px;
      /* ---- 2022.6.23 background: #387e5a; ---- */
      background: #a0d8ea;
      transition: all 0.2s;
      padding: 0;
      border: 0;
      -moz-appearance: none;
      appearance: none;
      -webkit-appearance: none;
      outline: 0;
      cursor: pointer;
      display: block;
      text-indent: -9999px;
      white-space: nowrap;
      overflow: hidden;
      position: relative; }
      .search-fancybox .fancybox-inner .btn button:after {
        content: '\f50d';
        margin: auto;
        color: #fff;
        line-height: 1;
        font-size: 24px;
        font-size: 1.6rem;
        font-family: "fontello";
        font-style: normal;
        font-weight: normal;
        speak: none;
        display: inline-block;
        text-decoration: inherit;
        text-align: center;
        font-variant: normal;
        text-transform: none;
        line-height: 1em;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        position: absolute;
        left: 50%;
        top: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        text-indent: 0; }
      .search-fancybox .fancybox-inner .btn button:hover {
        /* ---- 2022.6.23 background: #204934; ---- */
        background: #53b6d7; }

/* -------------------------------------
	footer
-------------------------------------- */
footer {
  width: 100%;
  background: #fff;
  padding: 0 0 40px; }
  @media only screen and (max-width: 767px) {
    footer {
      /* ---- 2022.6.23 border-top: 4px solid #387e5a; ---- */
      border-top: 4px solid #a0d8ea; } }
  footer .in-campus {
    /* ---- 2022.6.23 background: #246342; ---- */
    background: #53b6d7; }
    @media only screen and (max-width: 767px) {
      footer .in-campus {
        display: none; } }
    footer .in-campus ul {
      display: -ms-flexbox;
      display: flex;
      display: -webkit-flex;
      display: -ms-flex;
      width: 100%;
      max-width: 1400px;
      margin-left: auto;
      margin-right: auto; }
      footer .in-campus ul li {
        -ms-flex: 1;
        flex: 1;
        -webkit-flex: 1;
        height: 45px;
        border-right: 1px solid #fff;
        text-align: center;
        font-size: 13px;
        font-size: 0.86667rem;
        vertical-align: middle; }
        footer .in-campus ul li:first-child {
          border-left: 1px solid #fff; }
          @media print, screen and (min-width: 768px) and (max-width: 1400px) {
            footer .in-campus ul li:first-child {
              border-left: none; } }
        @media print, screen and (min-width: 768px) and (max-width: 1400px) {
          footer .in-campus ul li:last-child {
            border-right: none; } }
        footer .in-campus ul li a {
          display: block;
          text-decoration: none;
          color: #fff;
          line-height: 1;
          height: 100%;
          padding: 0 7px;
          /* ---- 2022.6.23 background: #246342; ---- */
          background: #53b6d7;
          transition: all 0.2s; }
          footer .in-campus ul li a:hover {
            /* ---- 2022.6.23 background: #163e29; ---- */
            background: #2682a2; }
          footer .in-campus ul li a span {
            position: relative;
            display: inline-block;
            top: 50%;
            -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }
  footer nav.group {
    text-align: center;
    padding: 22px 0 20px; }
    @media only screen and (max-width: 767px) {
      footer nav.group {
        padding: 25px 0; } }
    footer nav.group span {
      line-height: 1; }
      @media print, screen and (min-width: 768px) {
        footer nav.group span {
          font-size: 13px;
          font-size: 0.86667rem;
          display: inline-block;
          padding: 0 25px;
          margin: 7px 0 7px 0;
          border-right: 1px solid #bbb; }
          footer nav.group span:nth-child(2), footer nav.group span:last-child {
            border: none; } }
      @media only screen and (max-width: 767px) {
        footer nav.group span {
          display: block;
          margin: 0 0 0.7em; }
          footer nav.group span:last-child {
            margin-bottom: 0; } }
      footer nav.group span a {
        line-height: 1.2;
        color: #333;
        text-decoration: none; }
        footer nav.group span a:hover {
          text-decoration: underline; }
        @media only screen and (max-width: 767px) {
          footer nav.group span a {
            font-size: 12px;
            font-size: 0.8rem; }
            footer nav.group span a:last-child {
              margin: 0; } }
  @media print, screen and (min-width: 768px) {
    footer .footer-inner {
      /* ---- 2022.6.23 border-top: 1px solid #387e5a; ---- */
      border-top: 1px solid #a0d8ea;
      padding: 0 40px;
      box-sizing: border-box; } }
  @media print, screen and (min-width: 768px) and (max-width: 1200px) {
    footer .footer-inner {
      padding: 0 15px; } }
  footer .footer-contents {
    max-width: 1400px;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    box-sizing: border-box;
    position: relative;
    box-sizing: border-box; }
    @media print, screen and (min-width: 768px) {
      footer .footer-contents {
        padding-top: 50px; } }
    @media print, screen and (min-width: 768px) {
      footer .footer-contents .other-link {
        width: 35%;
        float: right; } }
    @media only screen and (max-width: 767px) {
      footer .footer-contents .other-link .assist-wrap {
        background: #e6e6e6;
        padding: 25px 10px; } }
    footer .footer-contents .other-link .assist-wrap .assist li {
      font-size: 12px;
      font-size: 0.8rem;
      float: left;
      margin: 0 2% 2% 0;
      text-align: center; }
      @media print, screen and (min-width: 768px) {
        footer .footer-contents .other-link .assist-wrap .assist li {
          width: 32%; }
          footer .footer-contents .other-link .assist-wrap .assist li:nth-child(3n) {
            margin-right: 0; } }
      @media only screen and (max-width: 767px) {
        footer .footer-contents .other-link .assist-wrap .assist li {
          width: 49%; }
          footer .footer-contents .other-link .assist-wrap .assist li:nth-child(2n) {
            margin-right: 0; }
          footer .footer-contents .other-link .assist-wrap .assist li:last-child {
            margin-bottom: 0; } }
      footer .footer-contents .other-link .assist-wrap .assist li a {
        box-sizing: border-box;
        border-radius: 3px;
        /* ---- 2022.6.23 border: 1px solid #387e5a; ---- */
        border: 1px solid #a0d8ea;
        display: block;
        text-decoration: none;
        position: relative;
        background: #fff;
        line-height: 1;
        transition: all 0.2s; }
        @media print, screen and (min-width: 768px) {
          footer .footer-contents .other-link .assist-wrap .assist li a {
            padding: 7px 12px 7px 5px; } }
        @media only screen and (max-width: 767px) {
          footer .footer-contents .other-link .assist-wrap .assist li a {
            padding: 11px 12px 11px 5px; } }
        footer .footer-contents .other-link .assist-wrap .assist li a:after {
          content: '\e800';
          margin: auto;
          /* ---- 2022.6.23 color: #387e5a; ---- */
          color: #a0d8ea;
          line-height: 1;
          font-size: 11px;
          font-size: 0.73333rem;
          font-family: "fontello";
          font-style: normal;
          font-weight: normal;
          speak: none;
          display: inline-block;
          text-decoration: inherit;
          text-align: center;
          font-variant: normal;
          text-transform: none;
          line-height: 1em;
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          position: absolute;
          right: 3px;
          top: 50%;
          -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
          text-indent: 0;
          transition: all 0.2s; }
        footer .footer-contents .other-link .assist-wrap .assist li a:hover {
          /* ---- 2022.6.23 background: #387e5a; ---- */
          background: #a0d8ea;
          color: #fff; }
          footer .footer-contents .other-link .assist-wrap .assist li a:hover:after {
            color: #fff; }
    @media print, screen and (min-width: 768px) {
      footer .footer-contents .univ-info {
        float: right;
        width: 41%;
        margin: 0 2% 25px 0; } }
    @media only screen and (max-width: 767px) {
      footer .footer-contents .univ-info .access {
        /* ---- 2022.6.23 background: #387e5a; ---- */
        background: #a0d8ea;
        padding: 30px 0; } }
    @media print, screen and (min-width: 768px) {
      footer .footer-contents .univ-info .access .campus {
        float: left;
        width: 48%; }
        footer .footer-contents .univ-info .access .campus:first-child {
          margin-right: 4%; } }
    @media only screen and (max-width: 767px) {
      footer .footer-contents .univ-info .access .campus {
        color: #fff;
        text-align: center; }
        footer .footer-contents .univ-info .access .campus:first-child {
          margin-bottom: 25px; } }
    footer .footer-contents .univ-info .access .campus dl {
      position: relative; }
      footer .footer-contents .univ-info .access .campus dl dt {
        font-weight: bold; }
        @media print, screen and (min-width: 768px) {
          footer .footer-contents .univ-info .access .campus dl dt {
            font-size: 13px;
            font-size: 0.86667rem;
            /* ---- 2022.6.23 color: #387e5a; ---- */
            color: #a0d8ea; } }
        @media only screen and (max-width: 767px) {
          footer .footer-contents .univ-info .access .campus dl dt {
            font-size: 14px;
            font-size: 0.93333rem; } }
      footer .footer-contents .univ-info .access .campus dl dd.info {
        margin-top: 0.6em;
        line-height: 1.8;
        font-size: 12px;
        font-size: 0.8rem; }
      @media print, screen and (min-width: 768px) {
        footer .footer-contents .univ-info .access .campus dl dd.link {
          position: absolute;
          right: 0;
          bottom: 0;
          font-size: 12px;
          font-size: 0.8rem; } }
      @media only screen and (max-width: 767px) {
        footer .footer-contents .univ-info .access .campus dl dd.link {
          font-size: 13px;
          font-size: 0.86667rem; } }
      footer .footer-contents .univ-info .access .campus dl dd.link a {
        font-weight: bold; }
        @media print, screen and (min-width: 768px) {
          footer .footer-contents .univ-info .access .campus dl dd.link a {
            color: #333; } }
        @media only screen and (max-width: 767px) {
          footer .footer-contents .univ-info .access .campus dl dd.link a {
            color: #fff; } }
    @media print, screen and (min-width: 768px) {
      footer .footer-contents .univ-info .juaa-wrap {
        margin-top: 25px; } }
    @media only screen and (max-width: 767px) {
      footer .footer-contents .univ-info .juaa-wrap {
        padding: 15px 30px; } }
    footer .footer-contents .univ-info .juaa-wrap .juaa {
      display: table; }
      @media only screen and (max-width: 767px) {
        footer .footer-contents .univ-info .juaa-wrap .juaa {
          margin: 0 auto; } }
      footer .footer-contents .univ-info .juaa-wrap .juaa dt, footer .footer-contents .univ-info .juaa-wrap .juaa dd {
        display: table-cell;
        height: 100%; }
      footer .footer-contents .univ-info .juaa-wrap .juaa dt {
        padding-right: 5px;
        min-width: 35px; }
        footer .footer-contents .univ-info .juaa-wrap .juaa dt img {
          width: 30px; }
      footer .footer-contents .univ-info .juaa-wrap .juaa dd {
        vertical-align: middle;
        line-height: 1.4; }
        @media print, screen and (min-width: 768px) {
          footer .footer-contents .univ-info .juaa-wrap .juaa dd {
            font-size: 11px;
            font-size: 0.73333rem; } }
        @media only screen and (max-width: 767px) {
          footer .footer-contents .univ-info .juaa-wrap .juaa dd {
            font-size: 12px;
            font-size: 0.8rem; } }
    footer .footer-contents .sns {
      margin: 15px 0 0; }
      @media only screen and (max-width: 767px) {
        footer .footer-contents .sns {
          display: none; } }
      footer .footer-contents .sns li {
        display: inline-block;
        margin-right: 3px;
        width: 40px; }
        footer .footer-contents .sns li a {
          transition: all 0.2s; }
          footer .footer-contents .sns li a:hover {
            opacity: .7; }
    @media print, screen and (min-width: 768px) {
      footer .footer-contents .copy {
        width: 20%;
        float: left; } }
    @media only screen and (max-width: 767px) {
      footer .footer-contents .copy {
        padding-top: 25px;
        /* ---- 2022.6.23 border-top: 1px solid #387e5a; ---- */
        border-top: 1px solid #a0d8ea; } }
    @media only screen and (max-width: 767px) {
      footer .footer-contents .copy .copy-logo {
        text-align: center; } }
    footer .footer-contents .copy .copy-logo img {
      width: 232px; }
      @media only screen and (max-width: 767px) {
        footer .footer-contents .copy .copy-logo img {
          width: 160px; } }
    footer .footer-contents .copy .copy-txt {
      font-size: 10px;
      font-size: 0.66667rem;
      display: block;
      text-align: center;
      clear: right; }
      @media print, screen and (min-width: 768px) {
        footer .footer-contents .copy .copy-txt {
          margin-top: 50px;
          text-align: left; } }
      @media only screen and (max-width: 767px) {
        footer .footer-contents .copy .copy-txt {
          margin-top: 10px; } }

.pagetop {
  display: none;
  z-index: 100; }
  @media print, screen and (min-width: 768px) {
    .pagetop {
      right: 20px;
      bottom: 20px; } }
  @media only screen and (max-width: 767px) {
    .pagetop {
      right: 10px !important;
      bottom: 20px !important;
      position: fixed !important; } }
  .pagetop a {
    display: block;
    position: relative;
    text-decoration: none;
    background: #555;
    display: block;
    text-indent: -9999px;
    white-space: nowrap;
    overflow: hidden;
    transition: all 0.2s;
    border-radius: 50px; }
    @media print, screen and (min-width: 768px) {
      .pagetop a {
        width: 54px;
        height: 54px; } }
    @media only screen and (max-width: 767px) {
      .pagetop a {
        width: 40px;
        height: 40px; } }
    .pagetop a:hover {
      background: #222; }
    .pagetop a:after {
      content: '\e804';
      margin: auto;
      color: #fff;
      line-height: 1;
      font-size: 20px;
      font-size: 1.33333rem;
      font-family: "fontello";
      font-style: normal;
      font-weight: normal;
      speak: none;
      display: inline-block;
      text-decoration: inherit;
      text-align: center;
      font-variant: normal;
      text-transform: none;
      line-height: 1em;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      position: absolute;
      left: 50%;
      top: 50%;
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      text-indent: 0; }
  @media print {
    .pagetop {
      display: none !important; } }

/* -------------------------------------
		common
	-------------------------------------- */
html {
  font-size: 93.75%; }

body {
  font-family: "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
  width: 100%;
  min-width: 1000px;
  *font-size: small;
  *font: x-small;
  -webkit-text-size-adjust: 100%;
  line-height: 1.65;
  font-size: 15px;
  font-weight: 500;
  position: relative; }
  .ie body {
    font-family: Arial, "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
    font-weight: normal; }
    .ie body select, .ie body button, .ie body input, .ie body textarea {
      font-family: Arial, "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif; }
  @media only screen and (max-width: 767px) {
    body {
      min-width: 320px; } }

a {
  /* ---- 2022.6.23 color: #387e5a; ---- */
  color: #2682a2; }
  a:hover {
    text-decoration: none; }
  a.tel-disable {
    color: #333;
    cursor: default;
    text-decoration: none; }
    a.tel-disable:hover {
      cursor: default;
      color: #333;
      text-decoration: none; }
  a.tel-enable {
    /* ---- 2022.6.23 color: #387e5a; ---- */
    color: #2682a2; }
    a.tel-enable:hover {
      text-decoration: none; }

ul, ol {
  list-style-type: none; }

img {
  width: auto;
  height: auto;
  max-width: 100%; }

select, button, input, textarea {
  font-family: "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif; }

@media only screen and (max-width: 767px) {
  .pc-only {
    display: none !important; } }

@media print, screen and (min-width: 768px) {
  .sp-only {
    display: none !important; } }


/*---- 2022.7.7 インスタグラムロゴ ---- */
.instagram-logo-lg {
	display: inline-block;
	padding: 40px;
}
.instagram-logo-lg img {
	width: 80px;
	height: 80px;
}

.instagram-logo-md {
	display: inline-block;
	padding: 16px;
}
.instagram-logo-md img {
	width: 32px;
	height: 32px;
}

.sukusuku-instagram {
	margin-top: -60px;
}
.sukusuku-instagram + h2 {
	margin-top: 1.0em;
}
.sukusuku-instagram > .instagram-logo-md {
	float: left;
}
.sukusuku-instagram > .instagram-logo-md + .note {
	padding-top: 10px;
}

@media only screen and (max-width: 767px) {
	.sukusuku-instagram {
		margin-top: -30px;
	}
}

/*---- 2022.7.7 フッター SNSアイコン(上書き) ---- */
footer .footer-contents .sns li {
	margin-right: 20px;
}
/*
.main .news .genelal-news .other-contents .sns li {
	margin-right: 20px !important;
}*/



/*---- 2023.3.6 ---- */
@media print, screen and (min-width: 768px) {
	.header .menu .global {
		border-bottom: 1px solid rgba(255, 255, 255, 0.75);
	}
	
	.header .menu .global > ul > li > a:before {
		border-left: 1px solid rgba(255, 255, 255, 1.0);
	}
}
/*---- /2023.3.6 ---- */
