@charset "UTF-8";
/*
Theme Name:IEHEテーマ
Author: Unigraphic
Description: IEHEテーマ

last edit: 2025.6.30
*/
/*フォント設定*/
html {
  font-size: 10px; /* initial 10px */
}

body {
  font-family: "Noto Serif JP", sans-serif;
  font-size: 1.5rem;
  /* default font-size 15px */
  font-weight: 400;
  line-height: 1.6;
  color: #404040;
}

/*----------------------------------------------------------
/* 制作・デバッグ用
-----------------------------------------------------------*/
/*** 制作用 仕切りアタリ
#wrapper{
  border:solid 2px #12abd1;
}
#wrapper article{
  border:solid 2px #12d1a1;
}
footer{
  border:dashed 2px #aed112;
  border-top:dashed 4px #aed112;
}
 ***/
/*----------------------------------------------------------
/* define
-----------------------------------------------------------*/
/*** デバッグ用 テンプレート名表示 ***/
.debug-comment {
  /* 2025.5.23～制作期間表示ON */
  display: none !important;
  margin: 0 auto 0;
  padding: 2px 15px 0 15px;
  text-align: center;
  line-height: 1;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.2rem;
  color: #fff;
  background-color: #2f2f55;
}

/*----------------------------------------------------------
/* リセット・基本定義
-----------------------------------------------------------*/
h2, h3, h4, h5, h6 {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  font-weight: 400;
}

/* 段落 */
p {
  margin: 0.4em 0 1.2em 0;
}

/* 自動整形で発生した空のpタグを消す */
p:empty {
  display: none;
}

/* アンカー */
a,
a:link,
a:visited,
a:active {
  text-decoration: none;
  color: #404040;
}

a:active,
a:hover {
  text-decoration: underline;
}

a.no-udline {
  text-decoration: none !important;
}

/*** 詳細以外のページリストスタイルリセット ***/
ul,
ul li,
ol,
ol li {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* テーブルのセル内の文字自動折り返し */
table tr th,
table tr td {
  overflow-wrap: anywhere;
}

/*** イメージ ***/
img {
  max-width: 100%;
  height: auto;
}

/*** 汎用クラス ***/
.mb5 {
  margin-bottom: 5px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.mb35 {
  margin-bottom: 35px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.mb45 {
  margin-bottom: 45px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

.mb55 {
  margin-bottom: 55px !important;
}

.mb60 {
  margin-bottom: 60px !important;
}

.mb65 {
  margin-bottom: 65px !important;
}

.mb70 {
  margin-bottom: 70px !important;
}

.mb75 {
  margin-bottom: 75px !important;
}

.mb80 {
  margin-bottom: 80px !important;
}

.mb85 {
  margin-bottom: 85px !important;
}

.mb90 {
  margin-bottom: 90px !important;
}

.mb95 {
  margin-bottom: 95px !important;
}

.mb100 {
  margin-bottom: 100px !important;
}

.indent1 {
  padding-left: 1em;
  text-indent: -1em;
}

/* ▲付ボタン */
.sankakuicon-btn {
  display: inline-block;
  width: 100px;
  height: 40px;
  margin: 0 0 0 0;
  line-height: 40px;
  text-align: center;
  border: solid 1px #e4e4e4;
  border-radius: 90px;
}

.sankakuicon-btn::before {
  display: inline-block;
  content: "▲";
  margin-right: 4px;
  color: #8965c9;
  -webkit-transform: rotateZ(90deg);
  transform: rotateZ(90deg);
}

/* スモールデバイスでボタンタップ時の枠線OFF */
*:focus {
  outline: none;
}

/* ホバーエフェクト */
a.hoveffect {
  transition: all 0.2s ease-out;
}

a.hoveffect:hover {
  opacity: 0.7;
}

/* 汎用ボタン ＞ 付き */
.cmn-btn,
.cmn-btn:hover {
  text-decoration: none !important;
}

.cmn-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 0;
  width: 208px;
  height: 70px;
  transition: all 0.2s ease-out;
}

.cmn-btn > span {
  position: relative;
  display: inline-block;
}

.cmn-btn > span::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -16px;
  width: 18px;
  height: 18px;
  border-top: solid 1px #404040;
  border-right: solid 1px #404040;
  transform: translateY(-50%) rotate(45deg);
}

/* 茶ボタン */
.cmn-btn.cha-btn {
  color: #fff;
  background-color: #8E7C64;
  border-radius: 35px;
}

.cmn-btn.cha-btn > span::after {
  border-top: solid 1px #fff;
  border-right: solid 1px #fff;
}

/* 白ボタン */
.cmn-btn.shiro-btn {
  color: #404040;
  border: solid 1px #404040;
  border-radius: 35px;
}

.cmn-btn.shiro-btn > span::after {
  border-top: solid 1px #404040;
  border-right: solid 1px #404040;
}

@media print, screen and (min-width: 1200px) {
  .cmn-btn > span::after {
    transition: all 0.2s ease-out;
  }
  .cmn-btn:hover > span::after {
    right: -26px;
  }
}
/* 投稿がない時のアナウンンス */
.no-data-announe {
  margin: 0 auto 0;
  text-align: center;
}

.no-data-announe span {
  display: inline-block;
  padding: 16px 40px;
  border: solid 1px #707070;
}

/*-------------------------------------------------------------------
/*  構造包含
--------------------------------------------------------------------*/
/* 全包含 */
#wrapper {
  margin: 0 auto 0;
  width: 100%;
  max-width: 1920px;
}

@media screen and (max-width: 767px) {
  /* ヘッダーfixオフセット */
  #wrapper {
    padding-top: 89px;
  }
}
/*-------------------------------------------------------------------
/*  ヘッダー
--------------------------------------------------------------------*/
header {
  position: relative;
  margin: 0 auto 0;
  width: 100%;
  max-width: 1920px;
  background-color: #fff;
}

header .hd-inner {
  position: relative;
  width: 100%;
}

/* ロゴ */
.hd-logo-block a img {
  display: block;
  margin-right: 10px;
  width: 57px;
}

.hd-logo-block a .hd-org-name {
  line-height: 1.1;
  font-size: 1.6rem;
}

.hd-logo-block a .hd-org-name span {
  display: block;
  margin-top: 6px;
  font-size: 0.9rem;
}

@media screen and (max-width: 767px) {
  header {
    position: fixed;
    top: 0;
    left: 0;
    margin: 0 auto 0;
    width: 100%;
    height: 90px;
    z-index: 50;
  }
  header .hd-inner {
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    padding: 14px 14px 0 14px;
  }
  /* H1 */
  header .hd-inner .hd-logo-block a {
    text-decoration: none;
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    flex-wrap: nowrap;
    justify-content: space-between;
  }
  .hd-org-name {
    font-size: 1.6rem;
  }
  .hd-org-name span {
    display: block;
    font-size: 1rem;
  }
  /*** 小メニュー(アクセス～EN) ***/
  .hd-sml-menu {
    display: none;
  }
}
@media print, screen and (min-width: 1200px) {
  header .hd-inner {
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    align-items: center;
    justify-content: space-between;
    height: 110px;
  }
  /*** ロゴ ***/
  .hd-logo-block {
    position: absolute;
    top: 50%;
    left: 15px;
    transform: translateY(-50%);
    z-index: 10;
  }
  .hd-logo-block a {
    text-decoration: none;
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    align-items: center;
    color: #404040;
  }
  .hd-logo-block a img {
    margin-right: 25px;
  }
  .hd-logo-block a .hd-org-name {
    font-size: 2.2rem;
  }
  .hd-logo-block a .hd-org-name span {
    font-size: 0.9rem;
  }
  /*** 小メニュー(アクセス～EN) ***/
  .hd-sml-menu {
    margin: 0 15px 17px 0;
  }
  #menu-hdsmlmenu {
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    align-items: center;
    justify-content: flex-end;
  }
  #menu-hdsmlmenu > li:nth-of-type(n+2) {
    margin-left: 10px;
  }
  #menu-hdsmlmenu > li a {
    font-family: "Noto Sans JP", sans-serif;
    text-decoration: none;
    line-height: 1;
    font-size: 1.4rem;
    color: #707070;
  }
  #menu-hdsmlmenu > li:nth-of-type(-n+3) a {
    display: inline-block;
    padding: 2px 4px 3px 4px;
    background-color: #fff;
    border: solid 1px #C6CFD5;
    transition: all 0.2s ease-out;
  }
  #menu-hdsmlmenu > li:nth-of-type(4),
  #menu-hdsmlmenu > li:nth-of-type(5) {
    font-family: "Barlow", sans-serif;
    font-weight: 400;
  }
  #menu-hdsmlmenu > li:nth-of-type(-n+3) a:hover,
  #menu-hdsmlmenu > li:nth-of-type(3) a {
    display: inline-block;
    padding: 2px 4px 3px 4px;
    color: #fff;
    background-color: #8E7C64;
    border: solid 1px #8E7C64;
  }
  #menu-hdsmlmenu > li:nth-of-type(4) a:hover,
  #menu-hdsmlmenu > li:nth-of-type(5) a:hover {
    text-decoration: underline;
  }
  #menu-hdsmlmenu > li:nth-of-type(5)::before {
    content: "|";
    margin-right: 10px;
  }
}
/*-------------------------------------------------------------------
/*  GLナビ（ラージデバイス）ヘッダーナビ
--------------------------------------------------------------------*/
@media print, screen and (min-width: 1200px) {
  .hd-navi-block {
    width: 100%;
  }
  /* GLナビを並列に配置 ※メガメニューのbg表示のため */
  .menu-global-navi {
    position: relative;
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: flex-end;
  }
  /* GLナビの親包含 */
  .menu-globalnavi-container,
  .menu-globalnavi-container2 {
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: flex-end;
  }
  #menu-globalnavi,
  #menu-globalnavi2 {
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    align-items: center;
    justify-content: flex-end;
    margin: 0 0 0 0;
  }
  /* GLナビUL疑似要素で茶帯BG出す */
  #menu-globalnavi::after {
    content: "";
    position: absolute;
    top: 60px;
    left: 0;
    display: block;
    width: 100%;
    height: 155px;
    background-color: rgba(118, 86, 45, 0.9);
    mix-blend-mode: multiply;
    opacity: 0;
    transition: all 0.2s ease-out;
    visibility: hidden;
    z-index: -1;
  }
  #menu-globalnavi:hover::after {
    visibility: visible;
    opacity: 1;
    z-index: 1;
  }
  #menu-globalnavi > li,
  #menu-globalnavi2 > li {
    position: relative;
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    height: 60px;
  }
  #menu-globalnavi > li::after,
  #menu-globalnavi2 > li::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 7.5px 11px 7.5px;
    border-color: transparent transparent #8E7C64 transparent;
    transform: translateX(-50%);
    transition: all 0.2s ease-out;
    opacity: 0;
  }
  #menu-globalnavi > li:hover::after,
  #menu-globalnavi2 > li:hover::after {
    opacity: 1;
  }
  /* 子メニュー(sub-menu)をもつWPの生成アンカーのアタリを消す */
  #menu-globalnavi .menu-item-has-children > a {
    pointer-events: none;
  }
  #menu-globalnavi > li > a,
  #menu-globalnavi2 > li > a {
    text-decoration: none;
    display: block;
    padding: 0 20px 0 10px;
    font-size: 1.4rem;
    color: #404040;
    border-left: solid 1px #404040;
  }
  #menu-globalnavi > li > a span,
  #menu-globalnavi2 > li > a span {
    display: block;
    margin: 2px auto 0;
    width: 100%;
    font-family: "Barlow Condensed", sans-serif;
    font-size: 1.2rem;
    font-weight: 400;
  }
  /** 子メガメニュー表示 **/
  #menu-globalnavi .menu-item-has-children .sub-menu {
    position: absolute;
    top: 60px;
    right: 0;
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    flex-wrap: wrap;
    justify-content: flex-end;
    padding: 50px 15px 50px 0;
    width: 820px;
    visibility: hidden;
    opacity: 0;
    transition: all 0.2s ease-out;
    z-index: -1;
  }
  /* 機構について */
  #menu-globalnavi #menu-item-19885 .sub-menu li {
    display: inline-block;
  }
  #menu-globalnavi #menu-item-19885 .sub-menu li:nth-of-type(n+2) {
    margin-left: 1em;
  }
  /* センター紹介 */
  #menu-globalnavi #menu-item-19890 .sub-menu {
    justify-content: space-between;
  }
  #menu-globalnavi #menu-item-19890 .sub-menu li:nth-of-type(n+5) {
    margin-top: 4px;
  }
  /* 教育・研究・学習支援 */
  #menu-globalnavi #menu-item-19893 .sub-menu {
    text-align: right;
  }
  /* センター紹介 */
  #menu-globalnavi .menu-item-has-children .sub-menu a {
    position: relative;
    display: inline-block;
    text-decoration: none;
    font-size: 1.4rem;
    color: #fff;
  }
  #menu-globalnavi .menu-item-has-children .sub-menu a::before {
    content: "□ ";
    font-family: "Noto Sans JP", sans-serif;
    font-size: 1.6rem;
  }
  #menu-globalnavi .menu-item-has-children .sub-menu a:hover::before {
    content: "■ ";
  }
  /* 子メニューON */
  #menu-globalnavi .menu-item-has-children:hover .sub-menu {
    visibility: visible;
    opacity: 1;
    z-index: 2;
  }
}
@media screen and (max-width: 1199px) {
  /* スモールデバイスで非表示 */
  .menu-global-navi {
    display: none !important;
  }
}
/*-------------------------------------------------------------------
/*  GLナビ（スモールデバイス）
--------------------------------------------------------------------*/
@media screen and (max-width: 1199px) {
  #hd-menu-sd {
    position: relative;
    z-index: 50;
  }
  /* SPナビOPENボタン */
  .sdmenu-btn {
    display: block;
    position: fixed;
    top: 10px;
    right: 14px;
    cursor: pointer;
    width: 50px;
    height: 64px;
    text-align: center;
    opacity: 0.7;
    transition: 0.2s ease-in-out;
    z-index: 30;
  }
  .sdmenu-btn:hover {
    opacity: 1;
  }
  .sdmenu-btn.active {
    opacity: 0;
    pointer-events: none;
  }
  .sdmenu-btn .menu-label {
    display: block;
    font-family: "Barlow", sans-serif;
    line-height: 1;
    font-size: 1.3rem;
    color: #747474;
  }
  .sdmenu-btn span:nth-of-type(n+2) {
    display: block;
    position: absolute;
    width: 50px;
    height: 2px;
    left: 0;
    background: #747474;
    transition: 0.2s ease-in-out;
  }
  .sdmenu-btn span:nth-child(2) {
    top: 25px;
  }
  .sdmenu-btn span:nth-child(3) {
    top: 42px;
  }
  .sdmenu-btn span:nth-child(4) {
    top: 60px;
  }
  .sdmenu-btn.active span:nth-child(2) {
    top: 40px;
    left: 0;
    transform: rotate(-45deg);
  }
  .sdmenu-btn.active span:nth-child(3),
  .sdmenu-btn.active span:nth-child(4) {
    top: 40px;
    transform: rotate(45deg);
  }
  /** ウインドウオープン **/
  /*** js側 クラス名active 付与で表示ON／OFF ***/
  .globalnavi-sp.active,
  .sp-fade.active {
    visibility: visible;
    opacity: 1;
  }
  .globalnavi-sp.active {
    z-index: 45;
  }
  .sp-fade.active {
    cursor: pointer;
    z-index: 20;
  }
  /* SPナビ包含 */
  .globalnavi-sp {
    visibility: hidden;
    position: fixed;
    z-index: -10;
    top: 24px;
    left: 50%;
    color: #fff;
    background-color: rgba(49, 32, 10, 0.85);
    mix-blend-mode: multiply;
    padding: 30px 20px 30px 20px;
    width: 90%;
    height: 80vh;
    opacity: 0;
    transition: opacity 0.6s ease, visibility 0.6s ease;
    transform: translateX(-50%);
    overflow: auto;
  }
  /*** メニューヘッダー ***/
  #spmenu-header {
    position: relative;
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    margin: 0 auto 20px;
  }
  /* タイトル */
  #spmenu-header .sp-menu-title {
    display: inline-block;
    font-family: "Barlow", sans-serif;
    font-size: 3rem;
  }
  /** cloce Ｘボタン **/
  #spmenu-header .sdmenu-closebtn {
    cursor: pointer;
    position: relative;
    width: 50px;
    height: 2px;
    left: 0;
    width: 50px;
    height: 50px;
  }
  #spmenu-header .sdmenu-closebtn span {
    position: absolute;
    width: 50px;
    height: 2px;
    left: 0;
    background: #fff;
  }
  #spmenu-header .sdmenu-closebtn span:nth-child(1) {
    top: 22px;
    left: 0;
    transform: rotate(-45deg);
  }
  #spmenu-header .sdmenu-closebtn span:nth-child(2),
  #spmenu-header .sdmenu-closebtn span:nth-child(3) {
    top: 22px;
    transform: rotate(45deg);
  }
  /*** メニューリスト ***/
  .globalnavi-sp ul {
    margin: 0 auto 0;
    width: 90%;
  }
  #menu-globalnavi-1 li a,
  #menu-globalnavi2-1 li a {
    text-decoration: none;
  }
  #menu-globalnavi-1 > li > a,
  #menu-globalnavi2-1 > li > a {
    position: relative;
    display: block;
    padding: 0 0 5px 0;
    font-size: 2rem;
    color: #fff;
    border-bottom: solid 1px #BBAF90;
  }
  #menu-globalnavi-1 > li > a::after,
  #menu-globalnavi2-1 > li > a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    width: 10px;
    height: 10px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    transform: translateY(-50%) rotate(45deg);
    transition: all 0.2s ease-out;
  }
  #menu-globalnavi-1 > li .open::after,
  #menu-globalnavi2-1 > li .open::after {
    transform: translateY(-50%) rotate(135deg);
  }
  #menu-globalnavi-1 > li > a span,
  #menu-globalnavi2-1 > li > a span {
    display: none;
  }
  #menu-globalnavi-1 > li:nth-of-type(n+2),
  #menu-globalnavi2-1,
  #menu-globalnavi2-1 > li:nth-of-type(n+2) {
    margin-top: 20px;
  }
  #menu-globalnavi2-1 {
    margin-bottom: 30px;
  }
  /* 子メニュー */
  #menu-globalnavi-1 > li .sub-menu,
  #menu-globalnavi2-1 > li .sub-menu {
    margin: 15px 0 0 0;
  }
  #menu-globalnavi-1 > li .sub-menu > li a,
  #menu-globalnavi2-1 > li .sub-menu > li a {
    position: relative;
    display: block;
    padding: 0 0 5px 20px;
    color: #fff;
    font-size: 1.6rem;
  }
  #menu-globalnavi-1 > li .sub-menu > li a::before,
  #menu-globalnavi2-1 > li .sub-menu > li a::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 10px;
    height: 10px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    transform: translateY(-50%) rotate(45deg);
  }
  /* PCでの小メニュー */
  #menu-hdsmlmenu-1 {
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: flex-start;
  }
  #menu-hdsmlmenu-1 > li {
    width: 48%;
  }
  #menu-hdsmlmenu-1 > li a {
    color: #fff;
  }
  #menu-hdsmlmenu-1 > li:nth-of-type(odd) {
    margin-right: 4%;
  }
  #menu-hdsmlmenu-1 > li:nth-of-type(3) {
    margin: 0 0 10px 0;
    width: 100%;
  }
  #menu-hdsmlmenu-1 > li:nth-of-type(n+3) {
    margin-top: 8px;
  }
  #menu-hdsmlmenu-1 > li:nth-of-type(-n+3) a {
    text-decoration: none;
    display: block;
    padding: 8px 10px;
    text-align: center;
    border: solid 1px #fff;
  }
  #menu-hdsmlmenu-1 > li:nth-of-type(1) a,
  #menu-hdsmlmenu-1 > li:nth-of-type(2) a {
    width: 100%;
  }
  #menu-hdsmlmenu-1 > li:nth-of-type(3) a {
    width: 48%;
    color: #31200a;
    background-color: #fff;
  }
  #menu-hdsmlmenu-1 > li:nth-of-type(4),
  #menu-hdsmlmenu-1 > li:nth-of-type(5) {
    display: inline-block !important;
    width: auto;
  }
  #menu-hdsmlmenu-1 > li:nth-of-type(4) a,
  #menu-hdsmlmenu-1 > li:nth-of-type(5) a {
    display: inline-block;
  }
  #menu-hdsmlmenu-1 > li:nth-of-type(4)::after {
    content: " ｜ ";
    color: #fff;
  }
  /* SPメニューオープン時の影 */
  .sp-fade {
    visibility: hidden;
    position: fixed;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
    opacity: 0;
    -webkit-transition: opacity 0.6s ease, visibility 0.6s ease;
    transition: opacity 0.6s ease, visibility 0.6s ease;
    z-index: -10;
  }
}
@media screen and (max-width: 767px) {
  /** 基本設定／メニュー包含 **/
  .menu-global-navi-container {
    top: 84px;
  }
  .sp_openswitch {
    cursor: pointer;
  }
  #menu-globalnavi-1 .sub-menu {
    display: none;
  }
}
@media (min-width: 768px) {
  .glnavi-sp-openbtn,
  .globalnavi-sp,
  .sp-fade {
    display: none;
  }
}
/*-------------------------------------------------------------------
/*  トップページ
--------------------------------------------------------------------*/
/*** 基本包含 ***/
/* 暫定 */
.home #wrapper article > section:nth-of-type(n+3) {
  margin-top: 80px;
}

/* inner／max幅1200px */
.sec_top .inner {
  position: relative;
  margin: 0 auto 0;
  width: 100%;
  max-width: 1200px;
}

@media screen and (max-width: 1199px) {
  .sec_top .inner {
    padding: 0 20px;
  }
}
/** 見出し **/
.home h2 {
  display: inline-block;
  padding: 8px 1em 0 0;
  font-family: "Times New Roman", sans-serif;
  font-size: 5.2rem;
  border-top: solid 5px #8E7C64;
}

@media screen and (max-width: 767px) {
  .sec_top .inner {
    padding: 0 20px;
  }
}
/*-------------------------------------------------------------------
/*  トップページ／ MV(スライド)
--------------------------------------------------------------------*/
/* 包含 */
#mv-box {
  position: relative;
}

/*** 組織メニュー ***/
.nav_org-menu {
  margin: 0 auto 0;
  width: 100%;
  background-color: #EAE9E4;
}

/* タイトル */
.nav_org-menu .orgmenu-title {
  display: flex !important;
  flex-wrap: wrap;
  align-items: flex-start;
  align-items: center;
  margin: 0 0 10px 0;
  color: #404040;
}

.nav_org-menu .orgmenu-title > span::before {
  display: inline-block;
  content: "";
  margin: 0 15px 0 15px;
  vertical-align: middle;
  width: 1px;
  height: 28px;
  background-color: #404040;
}

#menu-orgmenu {
  margin: 0 auto 0;
  width: 100%;
}

#menu-orgmenu > li a {
  text-decoration: none;
  display: flex !important;
  flex-wrap: wrap;
  align-items: flex-start;
  align-items: center;
  justify-content: space-between;
  padding: 18px 15px;
  width: 100%;
  color: #404040;
}

#menu-orgmenu > li a::after {
  display: inline-block;
  content: "";
  background: url("./images/top/icon_orgmenu.png") center center/cover no-repeat;
  margin-right: 10px;
  width: 26px;
  height: 26px;
  transition: all 0.2s ease-out;
}

#menu-orgmenu > li a:hover::after {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  /* MV */
  #mainslide-1 .n2-ss-slide-backgrounds {
    min-height: 210px;
  }
  /*** 組織メニュー ***/
  .nav_org-menu {
    padding: 20px 0 20px 0;
    width: 100%;
    background-color: #EAE9E4;
  }
  .menu-orgmenu-container {
    margin: 0 auto 0;
    width: 86%;
  }
  /* タイトル */
  .nav_org-menu .orgmenu-title {
    justify-content: center;
    margin: 0 auto 15px;
    width: 84%;
  }
  .nav_org-menu .orgmenu-title img {
    width: 212px;
  }
  .nav_org-menu .orgmenu-title > span {
    position: relative;
    display: block;
    padding-left: 30px;
    font-size: 1.2rem;
  }
  .nav_org-menu .orgmenu-title > span::before {
    position: absolute;
    top: 0;
    left: 0;
    height: 40px;
  }
  #menu-orgmenu > li {
    border-top: solid 1px #fff;
  }
  #menu-orgmenu > li a::after {
    background: url("./images/top/icon_orgmenu.png") center center/26px no-repeat #fff;
    width: 36px;
    height: 20px;
    border-radius: 12px;
  }
}
@media print, screen and (min-width: 1200px) {
  /* MVの組織メニュー用影処理 */
  .n2-ss-slider-wrapper-inside::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to top, rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0) 36%, rgba(0, 0, 0, 0) 100%);
    z-index: 1;
  }
  /*** 組織メニュー ***/
  .nav_org-menu {
    position: absolute;
    left: 50%;
    bottom: 46px;
    width: 90%;
    background-color: transparent;
    transform: translateX(-50%);
    z-index: 1px;
  }
  /* タイトル */
  .nav_org-menu .orgmenu-title,
  #menu-orgmenu > li a {
    color: #fff;
  }
  .nav_org-menu .orgmenu-title > span::before {
    margin: 0 24px 0 20px;
  }
  #menu-orgmenu {
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .nav_org-menu .orgmenu-title > span::before {
    background-color: #fff;
  }
  #menu-orgmenu > li {
    width: 24%;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
  }
  #menu-orgmenu > li:nth-of-type(n+5) {
    margin-top: 10px;
  }
  #menu-orgmenu > li a {
    padding: 14px 5px;
    color: #fff;
  }
  #menu-orgmenu > li a::after {
    background: url("./images/top/icon_orgmenu.png") center center/cover no-repeat;
    margin-right: 10px;
    width: 26px;
    height: 26px;
  }
}
/*-------------------------------------------------------------------
/*  トップページ／ ニュース表示(notice)
--------------------------------------------------------------------*/
/* 包含 */
#sec_notice {
  position: relative;
}

#home-news-wrap {
  position: relative;
}

/*** 切り替えタブ ***/
/*********************************************************/
#home-news-tabs {
  display: flex !important;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: flex-end;
  margin: 0 0 0 0;
  border: none;
}

#home-news-tabs li {
  width: 100px;
  padding: 0 4px;
}

#home-news-tabs li:nth-of-type(n+2) {
  margin-left: 4px;
  border-left: solid 2px #C9C9C9;
}

#home-news-tabs li a {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  text-decoration: none;
  display: block;
  padding: 0 1em 8px;
  text-align: center;
  font-size: 1.2rem;
  color: #404040;
}

#home-news-tabs li a::after {
  content: "";
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 100%;
  height: 2px;
  transition: all 0.2s ease-out;
}

/** 色分け **/
/* 全記事 */
#home-news-tabs li .all:hover::after,
#home-news-tabs li .all.active::after {
  background-color: #8E7C64;
}

/* イベント */
#home-news-tabs li .event:hover::after,
#home-news-tabs li .event.active::after {
  background-color: #6E8E64;
}

/* ニュース */
#home-news-tabs li .news:hover::after,
#home-news-tabs li .news.active::after {
  background-color: #B98643;
}

/* 受賞・成果 */
#home-news-tabs li .award-result:hover::after,
#home-news-tabs li .award-result.active::after,
#home-news-tabs li .achievements:hover::after,
#home-news-tabs li .achievements.active::after {
  background-color: #BF8DB2;
}

/* 採用情報 */
#home-news-tabs li .recruit:hover::after,
#home-news-tabs li .recruit.active::after,
#home-news-tabs li .careers:hover::after,
#home-news-tabs li .careers.active::after {
  background-color: #7C97BE;
}

/*** タブ切り替え連動の見出しとカテゴリー名 ***/
/*********************************************************/
.post-title-link-box .cate-title {
  margin: 10px 0 15px 0;
  font-size: 2.6rem;
}

.post-title-link-box .ichiran-link a {
  position: relative;
  display: inline-block;
  padding-left: 1.4em;
  font-family: "Noto Sans JP", sans-serif;
  text-decoration: none;
  font-size: 1.2rem;
}

.post-title-link-box .ichiran-link a:hover {
  text-decoration: underline;
}

.post-title-link-box .ichiran-link a::after {
  content: "▼";
  position: absolute;
  top: 1px;
  left: 0;
  font-size: 1.2rem;
  transform: rotateZ(-90deg);
}

/* NEWマーク／ 一覧と詳細ページ共通 */
.new-label {
  display: inline-block;
  margin-left: 1em;
  padding: 1px 6px 3px 6px;
  line-height: 1;
  font-size: 1.2rem;
  color: #A21C31;
  background-color: #fff;
  border: solid 1px #A21C31;
}

/** 色分け **/
/* 全記事 */
#all-post-tab .post-title-link-box .cate-title,
#all-post-tab .post-title-link-box .ichiran-link a::after,
.cate-label .all {
  color: #8E7C64;
}

/* イベント */
#event-notice-tab .post-title-link-box .cate-title,
#event-notice-tab .post-title-link-box .ichiran-link a::after,
.cate-label .event {
  color: #6E8E64;
}

/* ニュース */
#news-notice-tab .post-title-link-box .cate-title,
#news-notice-tab .post-title-link-box .ichiran-link a::after,
.cate-label .news {
  color: #B98643;
}

/* 受賞・成果 */
#award-result-post-cont .post-title-link-box .cate-title,
#award-result-post-cont .post-title-link-box .ichiran-link a::after,
.cate-label .award-result,
#achievements-notice-tab .post-title-link-box .cate-title,
#achievements-notice-tab .post-title-link-box .ichiran-link a::after,
.cate-label .achievements {
  color: #BF8DB2;
}

/* 採用情報 */
#recruit-post-cont .post-title-link-box .cate-title,
#recruit-post-cont .post-title-link-box .ichiran-link a::after,
.cate-label .recruit,
#careers-notice-tab .post-title-link-box .cate-title,
#careers-notice-tab .post-title-link-box .ichiran-link a::after,
.cate-label .careers {
  color: #7C97BE;
}

/* 記事一覧ボタン */
.btm-kiji-ichiran-link {
  margin: 60px auto 0;
  width: 100%;
}

/*** 記事リスト表示 ***/
/*********************************************************/
/* 日付と英字案内 */
.cmn-notice-list > li .post-box .post-detail .btm-meta {
  display: flex !important;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  width: 100%;
  font-size: 1.3rem;
}

.cmn-notice-list > li .post-box .post-detail .btm-meta .eng-guide-text {
  color: #909090;
}

@media screen and (max-width: 767px) {
  /* 包含 */
  #home-news-wrap {
    padding: 180px 0 60px 0;
  }
  .post-title-link-box {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  .post-title-link-box .cate-titlebox {
    position: relative;
  }
  .post-title-link-box .cate-titlebox .ichiran-link {
    position: absolute;
    top: 0;
    right: 0;
  }
  /*** 切り替えタブ ***/
  #home-news-tabs {
    justify-content: space-between;
    margin: 0 auto 30px;
  }
  #home-news-tabs::after {
    content: "";
    width: 30%;
    height: 0;
    order: 1;
  }
  #home-news-tabs li {
    width: 30%;
    padding: 0 4px;
  }
  #home-news-tabs li:nth-of-type(n+4) {
    margin-top: 20px;
  }
  /*** 記事リスト表示 ***/
  /*********************************************************/
  .cmn-notice-list > li .post-box .post-detail a {
    display: block;
    text-decoration: none;
    width: 100%;
    height: 100%;
  }
  .cmn-notice-list > li {
    margin-bottom: 30px;
    padding-bottom: 10px;
    border-bottom: solid 1px #707070;
  }
  /* サムネイル */
  .cmn-notice-list > li .post-box .thumb-box {
    border: solid 1px #C6CFD5;
  }
  /* アクセント／アニメ */
  .notice-btm-accent {
    position: absolute;
    left: 20px;
    bottom: 0;
    width: 60px;
    z-index: 2;
  }
  .notice-btm-accent_bg {
    position: absolute;
    left: 20px;
    bottom: -20px;
    width: 99px;
    z-index: 1;
  }
}
@media print, screen and (min-width: 1200px) {
  /* 包含 */
  #sec_notice .inner {
    padding: 0 60px;
  }
  /*** 切り替えタブ ***/
  /*********************************************************/
  #home-news-tabs {
    justify-content: flex-end;
    margin: 0 0 0 0;
  }
  #home-news-tabs li {
    width: 100px;
    padding: 0 4px;
  }
  /*** 記事リスト表示 ***/
  /*********************************************************/
  /* 包含 */
  .cmn-post-cont {
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
  }
  .cmn-post-cont .post-title-link-box {
    margin-top: -27px;
    width: 200px;
  }
  .cmn-post-cont .cmn-postlist-wrap {
    width: calc(100% - 240px);
  }
  /** リスト **/
  .cmn-notice-list {
    margin-top: 60px;
  }
  .cmn-notice-list > li:nth-of-type(n+2) {
    margin-top: 60px;
  }
  .cmn-notice-list > li a,
  .cmn-notice-list > li a:hover {
    text-decoration: none;
  }
  .cmn-notice-list > li .post-box {
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    align-items: normal;
    justify-content: space-between;
  }
  .cmn-notice-list > li .post-box .post-detail a {
    display: block;
    text-decoration: none;
    width: 100%;
    height: 100%;
    transition: all 0.2s ease-out;
  }
  .cmn-notice-list > li .post-box .post-detail a:hover {
    background-color: #ededed;
  }
  /* サムネイル */
  .cmn-notice-list > li .post-box .thumb-box {
    width: 28%;
    border: solid 1px #C6CFD5;
  }
  .cmn-notice-list > li .post-box .thumb-box.event {
    position: relative;
  }
  .cmn-notice-list > li .post-box .thumb-box.event p {
    margin: 0 0 0 0;
    text-align: center;
  }
  .cmn-notice-list > li .post-box .thumb-box.event .cover-btn {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
  }
  /*
  .cmn-notice-list > li .post-box .thumb-box.event p > a,
  .cmn-notice-list > li .post-box .thumb-box > a{
    display: block;
    position: relative;
    width:100%;
    padding-top: 63% !important;
  }
  */
  .cmn-notice-list > li .post-box .thumb-box.event p,
  .cmn-notice-list > li .post-box .thumb-box > a {
    display: block;
    position: relative;
    width: 100%;
    padding-top: 63% !important;
  }
  .cmn-notice-list > li .post-box .thumb-box.event p > a {
    pointer-events: none !important;
  }
  .cmn-notice-list > li .post-box .thumb-box img {
    position: absolute;
    top: 0;
    right: 50%;
    transform: translateX(50%);
    width: auto;
    height: 100%;
    z-index: -1;
  }
  /* 記事情報 */
  .cmn-notice-list > li .post-box .post-detail {
    position: relative;
    width: calc(100% - (28% + 15px));
    border-bottom: solid 1px #BBAF90;
  }
  /* カテゴリとNEW */
  .cmn-notice-list > li .post-box .post-detail .upper-meta {
    margin: 0 0 10px 0;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 1.2rem;
  }
  /* 記事タイトル */
  .cmn-notice-list > li .post-box .post-detail .post-title {
    margin: 0 0 0 0;
    font-size: 1.5rem;
  }
  /* 日付と英字案内 */
  .cmn-notice-list > li .post-box .post-detail .btm-meta {
    position: absolute;
    bottom: 10px;
    left: 0;
  }
  /* アクセント／アニメ */
  .notice-btm-accent {
    position: absolute;
    left: 80px;
    bottom: -80px;
    z-index: 2;
  }
  .notice-btm-accent_bg {
    position: absolute;
    left: 80px;
    bottom: -100px;
    z-index: 1;
  }
}
/*-------------------------------------------------------------------
/*  トップページ／導入部
--------------------------------------------------------------------*/
/* 包含 */
#top-intro-inner {
  position: relative;
  margin: 0 auto 0;
  width: 100%;
  max-width: 1200px;
}

#sec_top-intro {
  background: url("./images/top/top-intro-bg_ld.jpg") center center/cover no-repeat;
}

/* メインテーマ */
.site-main-theme {
  position: relative;
  margin: 0 auto 45px;
  z-index: 1;
}

.site-main-theme p {
  position: relative;
  margin: 0 auto 0;
  z-index: 1;
}

.site-main-theme p > span {
  font-weight: 600;
}

/* 取り組みボタン */
.torikumi-link {
  position: relative;
  margin: 0 auto 90px;
  z-index: 1;
}

/*** ピックアップコンテンツ ***/
#pickup-contents-box {
  display: flex !important;
  flex-wrap: wrap;
  align-items: flex-start;
}

#pickup-contents-box > div {
  position: relative;
}

/** 機構のことbox **/
.about-iehe-ban a:hover img {
  opacity: 0.6;
  transition: all 0.2s ease-out;
}

.accent-univ-image {
  position: absolute;
  right: 0;
  bottom: 0;
}

/* リアルバナー */
.real-ban {
  position: relative;
  background: url("./images/top/real-ban_color_bg.png") 0 0/cover no-repeat;
  z-index: 1;
}

.real-ban::after {
  content: "";
  position: absolute;
  top: 20px;
  right: -20px;
  background-color: rgba(187, 175, 114, 0.46);
}

.real-bar-obj {
  background-color: rgba(187, 175, 114, 0.46);
}

.real-ban a:hover img {
  opacity: 0;
}

/*** エフェクトタイミング ***/
/* ふわっとスピード */
.dur10 {
  animation-duration: 1s;
}

.dur15 {
  animation-duration: 1.5s;
}

.dur18 {
  animation-duration: 1.8s;
}

/* 遅延タイミング */
.delay04 {
  animation-delay: 0.4s;
}

.delay08 {
  animation-delay: 0.4s;
}

.delay14 {
  animation-delay: 0.4s;
}

.delay18 {
  animation-delay: 0.4s;
}

@media screen and (max-width: 767px) {
  /* 包含 */
  #top-intro-inner {
    padding: 90px 0 0 0;
  }
  /* メインテーマ */
  .site-main-theme {
    margin: 0 auto 30px;
    width: 90%;
  }
  .site-main-theme p {
    text-align: center;
  }
  .site-main-theme p > span {
    font-size: 2.6rem;
  }
  /** 機構のことbox **/
  .about-iehe-box {
    margin: 0 0 80px 50px;
    order: 1;
  }
  .about-iehe-box img {
    width: 210px;
    order: 1;
  }
  /* リアルバナー */
  .real-box {
    margin: 0 auto 0;
    width: 100%;
    order: 2;
  }
  .real-ban {
    position: relative;
    background: url("./images/top/real-ban_color_bg.png") 0 0/cover no-repeat;
    z-index: 1;
  }
  .real-ban::after {
    content: "";
    position: absolute;
    top: 20px;
    right: -20px;
    background-color: rgba(187, 175, 114, 0.46);
  }
  /** リアルbox **/
  .real-bar-obj {
    width: 100px;
    height: 434px;
  }
  /* リアルバナー */
  .real-ban {
    position: absolute;
    top: 40px;
    left: 20px;
    width: 86%;
    box-shadow: 20px 20px 0 rgba(187, 175, 114, 0.46);
    z-index: 2;
  }
  /* 学校イメージ */
  .accent-univ-image {
    width: 50%;
  }
  /* アクセント幾何学模様／スマホではアニメしない */
  #geometric-pt-accent-wrap {
    position: absolute;
    top: 20px;
    right: 15px;
    width: 38%;
    z-index: 0;
  }
  #geometric-pt-accent-wrap,
  #geometric-pt-accent-wrap img {
    animation: none !important;
  }
}
@media print, screen and (min-width: 1200px) {
  /* 包含 */
  #top-intro-inner {
    padding: 130px 0 76px;
    position: relative;
    margin: 0 auto 0;
    width: 100%;
    max-width: 1200px;
  }
  /* メインテーマ */
  .site-main-theme {
    margin: 0 auto 45px;
    width: 50%;
  }
  .site-main-theme p:nth-of-type(2) {
    text-align: right;
  }
  .site-main-theme p > span {
    font-size: 4rem;
  }
  /* アクセント幾何学模様 */
  #geometric-pt-accent-wrap {
    position: absolute;
    top: 110px;
    right: 0;
  }
  #geometric-pt-accent-wrap.animate__animated.viewon {
    animation-duration: 20s !important;
  }
  .geometric-pt-accent.animate__animated.viewon {
    animation-duration: 13s !important;
    animation-iteration-count: infinite;
  }
  /*** ピックアップコンテンツ ***/
  #pickup-contents-box {
    align-items: normal;
    justify-content: space-between;
  }
  #pickup-contents-box > div {
    position: relative;
    width: 46%;
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
  }
  /** リアルbox **/
  .real-bar-obj {
    width: 230px;
    height: 560px;
  }
  /* リアルバナー */
  .real-ban {
    position: absolute;
    right: 20px;
    bottom: 80px;
    box-shadow: 20px 20px 0 rgba(187, 175, 114, 0.46);
    z-index: 2;
  }
  .real-ban img {
    transition: all 0.2s ease-out;
  }
  /** 機構のことbox **/
  .about-iehe-ban {
    margin-top: 30px;
  }
  /* 取り組みボタン */
  .torikumi-link {
    margin: 0 auto 130px;
  }
}
/*-------------------------------------------------------------------
/*  トップページ／外部リンク
--------------------------------------------------------------------*/
/* 包含 */
.sec_top.external-ban {
  background-color: #E0DCC8;
}

.external-ban-box {
  margin: 0 auto 0;
}

.external-ban-box > p {
  margin: 0 0 0 0;
}

.external-ban-box > p a {
  text-decoration: none;
}

.external-ban-box > p a:hover img {
  opacity: 0.6;
  transition: all 0.2s ease-out;
}

@media screen and (max-width: 767px) {
  /* 包含 */
  .home #wrapper .sec_top.external-ban {
    margin-top: 60px;
    padding: 60px 0 60px 0;
    clip-path: polygon(0 5%, 100% 0, 100% 100%, 0 100%);
  }
  .external-ban-box {
    width: 90%;
  }
  .external-ban-box p:nth-of-type(n+2) {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 1200px) {
  /* 包含 */
  .sec_top.external-ban {
    padding: 125px 0 50px 0;
    clip-path: polygon(0 25%, 100% 0, 100% 100%, 0 100%);
  }
  .sec_top.external-ban .inner {
    padding: 0 60px;
  }
  .external-ban-box {
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
  }
  .external-ban-box p {
    width: 22%;
  }
  .external-ban-box::before,
  .external-ban-box::after {
    content: "";
    width: 22%;
  }
  .external-ban-box::before {
    order: 1;
  }
  .external-ban-box::after {
    order: 2;
  }
}
/*-------------------------------------------------------------------
/*  トップページ／ 下方リンク群 書類・問い合わせ先・links
--------------------------------------------------------------------*/
/* 包含 */
.sec_top.top-lower-links {
  background-color: #EAE9E4;
}

.materials-contact-navi {
  margin: 0 auto 0;
}

@media screen and (max-width: 767px) {
  .sec_top.top-lower-links {
    margin-top: 0 !important;
    padding: 60px 0 80px 0;
  }
  .materials-contact-navi {
    width: 90%;
  }
}
@media print, screen and (min-width: 1200px) {
  /* 包含 */
  .sec_top.top-lower-links {
    margin-top: -1px !important;
    padding: 120px 0;
  }
  .sec_top.top-lower-links .inner {
    padding: 0 60px;
  }
}
/*** 書類 問い合わせ ***/
.materials-contact-navi {
  margin: 0 auto 0;
}

.materials-contact-navi > ul > li {
  width: 100%;
}

.materials-contact-navi > ul > li a {
  text-decoration: none;
  display: flex !important;
  flex-wrap: wrap;
  align-items: flex-start;
  align-items: center;
  justify-content: center;
  padding: 15px 17px;
  font-size: 1.5rem;
  background-color: #B1A08A;
  border-radius: 10px;
}

.materials-contact-navi > ul > li a:hover {
  opacity: 0.6;
  transition: all 0.2s ease-out;
}

.materials-contact-navi > ul > li a span {
  display: inline-block;
  text-align: center;
}

.materials-contact-navi > ul > li a img {
  padding-right: 6px;
}

@media screen and (max-width: 767px) {
  .materials-contact-navi {
    margin: 0 auto 60px;
  }
  .materials-contact-navi > ul > li:nth-of-type(n+2) {
    margin-top: 20px;
  }
  .materials-contact-navi > ul > li a {
    justify-content: flex-start;
  }
  .materials-contact-navi > ul > li a > span {
    display: block;
    width: calc(100% - 100px);
    text-align: left;
  }
}
@media print, screen and (min-width: 1200px) {
  .materials-contact-navi {
    margin: 0 auto 120px;
  }
  .sec_top.top-lower-links .inner {
    padding: 0 60px;
  }
  .materials-contact-navi > ul {
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
  }
  .materials-contact-navi > ul > li {
    width: 49%;
  }
  .materials-contact-navi > ul > li:nth-of-type(n+3) {
    margin-top: 24px;
  }
  .materials-contact-navi > ul > li a {
    justify-content: center;
  }
}
/*** links ***/
.relation-links {
  margin: 0 auto 0;
}

.relation-links > ul > li > a {
  text-decoration: none;
  display: flex !important;
  flex-wrap: wrap;
  align-items: flex-start;
  align-items: center;
  padding: 10px 17px;
  height: 100%;
  min-height: 80px;
  font-size: 1.5rem;
  background-color: #fff;
  border-radius: 4px;
}

.relation-links > ul > li > a:hover {
  opacity: 0.6;
  transition: all 0.2s ease-out;
}

.relation-links > ul > li > a img {
  display: block;
  margin-right: 14px;
  width: 86px;
}

.relation-links > ul > li > a span {
  display: inline-block;
  width: calc(100% - 100px);
  line-height: 1.2;
}

@media screen and (max-width: 767px) {
  .home .links-box h2 {
    margin: 0 0 20px 0;
  }
  .relation-links {
    width: 90%;
  }
  .relation-links > ul > li:nth-of-type(n+2) {
    margin-top: 20px;
  }
  .relation-links > ul > li > a {
    height: 116px !important;
  }
}
@media print, screen and (min-width: 1200px) {
  /* 包含 */
  .links-box {
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
  }
  .links-box h2 {
    width: 160px;
  }
  .relation-links {
    width: calc(100% - 180px);
  }
  .relation-links > ul {
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    flex-wrap: wrap;
    align-items: normal;
    justify-content: space-between;
  }
  .relation-links > ul::before,
  .relation-links > ul::after,
  .relation-links > ul > li {
    width: 24%;
  }
  .relation-links > ul::before,
  .relation-links > ul::after {
    content: "";
  }
  .relation-links > ul::before {
    order: 1;
  }
  .relation-links > ul::after {
    order: 2;
  }
  .relation-links > ul > li:nth-of-type(n+5) {
    margin-top: 12px;
  }
  .relation-links > ul > li > a {
    padding: 10px 10px;
  }
  .relation-links > ul > li > a img {
    width: 60px;
  }
  .relation-links > ul > li > a span {
    width: calc(100% - 74px);
  }
  .relation-links > ul > li > a .no-image-link {
    width: 100%;
  }
}
/*----------------------------------------------------------
/* エフェクト 汎用設定
-----------------------------------------------------------*/
/* inview用初期値 */
.inview-target {
  opacity: 0;
}

.inview-target.viewon {
  opacity: 1;
}

/* テーマ／1文字ずつフェードイン */
.hitomoji-fadein {
  opacity: 0;
  transition: opacity 1.6s ease-out;
}

/* テーマ／1文字ずつフェードイン */
.hitomoji-typing {
  opacity: 0;
  transition: opacity 0.2s ease-out;
}

/* テキストフェードイン */
@keyframes text-fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/*-------------------------------------------------------------------
/*  下層ページ／基本共通
--------------------------------------------------------------------*/
/*** 包含 ***/
/* 基本1カラムはinner／max幅800px */
.cmnpage-inner {
  position: relative;
  margin: 0 auto 0;
  width: 100%;
  max-width: 800px;
}

/* 2カラム(ページ内メニューあり)はinner／max幅1000px */
/* 機構概要、機構の取り組み,教職員書類一覧・規程等・教授会議資料等、刊行物 */
.page-outline .cmnpage-inner,
.page-attempt .cmnpage-inner,
.page-faculty-related-documents .cmnpage-inner,
.page-publications .cmnpage-inner {
  max-width: 1000px;
}

@media screen and (max-width: 1199px) {
  .cmnpage-inner {
    padding: 0 15px;
  }
}
/** ページタイトル（H1） **/
.article_cmnpage h1,
.article_newspage h1 {
  display: flex !important;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
  margin: 0 auto 60px;
  height: 180px;
  width: 100%;
  background-color: #EAE9E4;
}

.article_cmnpage h1 span,
.article_newspage h1 span,
#realprofessor-title img {
  position: relative;
  display: inline-block;
  line-height: 1.2;
  font-weight: 600;
  animation: text-fadein 1.4s ease-out 0.6s both;
}

.article_cmnpage h1 span::after,
.article_newspage h1 span::after {
  content: "";
  position: absolute;
  bottom: -34px;
  left: 50%;
  transform: translateX(-50%);
  width: 60px;
  height: 5px;
  background-color: #8E7C64;
}

/*** バーの色分け ***/
/* イベント */
h1 .event.cate-label::after {
  background-color: #6E8E64 !important;
}

/* ニュース */
h1 .news.cate-label::after {
  background-color: #B98643 !important;
}

/* 受賞・成果 */
h1 .achievements.cate-label::after {
  background-color: #BF8DB2 !important;
}

/* 採用情報 */
h1 .careers.cate-label::after {
  background-color: #7C97BE !important;
}

/* 子カテゴリの表示しない */
h1 > span:nth-of-type(2) {
  display: none !important;
}

/* 教員そのリアルH1 */
#realprofessor-title {
  align-content: center;
}

#realprofessor-title img {
  margin-top: 16px;
}

#realprofessor-title > span {
  display: flex !important;
  flex-wrap: wrap;
  align-items: flex-start;
  align-items: center;
  justify-content: center;
  margin: 10px 0 0 0;
  width: 100%;
  font-size: 2.4rem;
  color: #8E7C64;
}

#realprofessor-title span .sml {
  margin: 0 0 0 0;
  font-size: 1.6rem;
}

#realprofessor-title span::after {
  content: none !important;
}

@media screen and (max-width: 767px) {
  /** ページタイトル（H1） **/
  .article_cmnpage h1,
  .article_newspage h1 {
    align-content: center;
  }
  .article_cmnpage h1 span,
  .article_newspage h1 span {
    margin-top: -34px;
    font-size: 3.2rem;
  }
}
@media screen and (max-width: 1199px) {
  .article_cmnpage h1,
  .article_newspage h1 {
    padding: 0 15px;
  }
}
@media print, screen and (min-width: 1200px) {
  .article_cmnpage h1 span,
  .article_newspage h1 span {
    margin-top: 46px;
    font-size: 4rem;
  }
}
/*-------------------------------------------------------------------
/*  機構長挨拶
--------------------------------------------------------------------*/
/* 包含 */
.greeting-cont .greeting-intro-box {
  margin: 0 auto 50px;
}

.greeting-intro-box .wp-block-columns {
  justify-content: space-between;
}

.greeting-intro-box .wp-block-columns .greeting-profile-pic {
  flex-basis: 36% !important;
}

.greeting-intro-box .wp-block-columns .greeting-profile-pic figure {
  margin-bottom: 0 !important;
  text-align: center;
}

.greeting-intro-box .wp-block-columns .greeting-profile {
  display: flex !important;
  flex-wrap: wrap;
  align-items: flex-start;
  align-content: space-between;
  flex-basis: 56% !important;
}

.greeting-profile .greeting-title {
  margin: 48px 0 0 0;
  font-size: 2.4rem;
}

.greeting-profile .profile-basic-info .univ-name {
  margin: 0 0 2px 0;
  font-size: 2.2rem;
}

.greeting-profile .profile-basic-info .affiliation {
  margin: 0 0 2px 0;
  font-size: 1.4rem;
}

.greeting-profile .profile-basic-info .signature-name {
  margin: 0 0 0 0;
  font-size: 1.8rem;
}

.greeting-profile .profile-basic-info .signature-name > span {
  font-size: 1.4rem;
}

.greeting-cont .greeting-sent {
  margin: 0 0 0 0;
}

@media screen and (max-width: 767px) {
  .greeting-profile .greeting-title {
    margin: 48px 0 20px 0;
  }
}
/*-------------------------------------------------------------------
/*  機構概要
--------------------------------------------------------------------*/
/* 戦略 */
.overview-strategy > li:nth-of-type(n+2) {
  margin-top: 1.5em !important;
}

/* 沿革 */
.cmn-table2.overview-history {
  margin-top: 40px;
}

.cmn-table2.overview-history table tbody tr td:nth-of-type(1) {
  width: 20%;
}

/*-------------------------------------------------------------------
/*  センター・院 ページ
--------------------------------------------------------------------*/
/* センター紹介 MV */
.cmn-center-mv {
  position: relative;
  margin: 0 auto 50px;
}

.cmn-center-mv .inner-site-link {
  position: absolute;
  right: 0;
  bottom: 0;
  margin: 0 0 0 0;
}

.cmn-center-mv .inner-site-link a {
  display: flex !important;
  flex-wrap: wrap;
  align-items: flex-start;
  align-items: center;
  justify-content: space-between;
  padding: 0 10px;
  width: 200px;
  height: 42px;
  font-size: 1.5rem;
  color: #404040 !important;
  background-color: #fff;
  border: solid 1px #B1A08A;
}

.cmn-center-mv .inner-site-link a::after {
  content: "";
  width: 15px;
  height: 16px;
  background: url("./images/common/icon_external-link.png") center center/cover no-repeat;
}

/*** 教員の紹介表 ***/
.center-staff-table table,
.center-staff-table table tbody,
.center-staff-table table tbody tr td {
  border: none;
}

.center-staff-table table {
  margin: 0 0 0 0;
  width: 100%;
}

.center-staff-table table tr td {
  padding-top: 6px;
  padding-bottom: 6px;
}

.center-staff-table table tr td:nth-of-type(1) {
  width: 17%;
  padding: 6px 20px 6px 6px;
}

.center-staff-table table tr td:nth-of-type(2) {
  width: 19%;
  padding: 6px 10px 6px 6px;
}

/* アンカー色 */
#center-cont a {
  color: #744200;
}

@media screen and (max-width: 767px) {
  /* 包含 */
  .center-staff-table {
    margin: 20px 0 20px 0;
    padding: 0 0 16px 0;
    width: 100%;
    overflow-x: auto;
  }
  .wp-block-table.center-staff-table table {
    width: 900px;
  }
}
/*-------------------------------------------------------------------
/*  機構構成図
--------------------------------------------------------------------*/
/* 包含 */
.orgchart-wrap {
  text-align: center;
}

/*-------------------------------------------------------------------
/*  教員紹介
--------------------------------------------------------------------*/
/*** 教員そのリアルモーダル ***/
/*****************************************************/
/* 教員そのリアルボタン */
#about-real-btn {
  cursor: pointer;
  margin: 0 auto 76px;
  text-align: center;
  font-weight: bold;
  color: #744200;
}

.about-real-btn img {
  vertical-align: top;
}

/** モーダルダイアログ **/
#modal-real .modal-dialog {
  width: 100%;
  max-width: 800px;
}

#modal-real .modal-content {
  padding: 20px;
  background-color: rgba(131, 103, 66, 0.9);
  border: none;
}

#modal-real .modal-body {
  margin: 0 0 0 0;
  color: #fff;
}

#modal-real .modal-body p {
  margin: 0 0 0 0;
  color: #fff;
}

#modal-real .modal-body .md {
  margin: 0 0 10px 0;
  font-size: 1.8rem;
  font-weight: bold;
}

/* クローズボタン */
#modal-real .btn {
  position: absolute;
  top: 10px;
  right: 10px;
  background-color: transparent;
  border: none;
}

/* モーダル／ bootstrap override */
.modal.fade .modal-dialog,
.modal.fade .modal-dialog.modal-work {
  top: 20%;
  transform: translate(0, 0);
}

.modal-backdrop {
  background-color: transparent !important;
}

.modal-backdrop.show {
  opacity: 0.6;
}

#modal-real .modal-content,
#modal-real .modal-body {
  position: static;
}

@media print, screen and (min-width: 1200px) {
  #modal-real .modal-content {
    padding: 50px;
  }
}
/*** 教員紹介表 ***/
/*****************************************************/
/*** 表 ***/
.staff-table-box {
  border-bottom: solid 1px #8E7C64;
}

.staff-table-box figure {
  margin-bottom: 0;
}

.staff-table-box table tbody tr td:nth-of-type(1),
.staff-table-box table tbody tr:last-of-type td {
  border-bottom: none;
}

/** 項目名と内容基本スタイル **/
/* 氏名とリアル*/
.staff-table-box table th:nth-of-type(3),
.staff-table-box table td:nth-of-type(3),
.staff-table-box table th:nth-of-type(4),
.staff-table-box table td:nth-of-type(4) {
  text-align: center;
}

.staff-table-box table th a,
.staff-table-box table td a {
  display: inline-block;
  color: #744200;
}

.staff-table-box table td:nth-of-type(4) a::after {
  display: inline-block;
  content: "";
  margin-left: 8px;
  width: 9px;
  height: 9px;
  border-top: solid 1px #744200;
  border-right: solid 1px #744200;
  transform: rotate(45deg);
}

/* センター名 */
.staff-table-box table th:nth-of-type(1),
.staff-table-box table td:nth-of-type(1) {
  width: 22%;
}

/* 役職 */
.staff-table-box table th:nth-of-type(2),
.staff-table-box table td:nth-of-type(2) {
  width: 37%;
}

/* 氏名 */
.staff-table-box table th:nth-of-type(3),
.staff-table-box table td:nth-of-type(3) {
  width: 19%;
}

/* リアルのリンク */
.staff-table-box table thead th:nth-of-type(4) {
  color: #fff;
  background-color: #8E7C64;
}

@media print, screen and (min-width: 1200px) {
  .cmnpage-wrapper .staff-table-box:nth-of-type(n+3) table thead {
    display: none;
  }
}
/*-------------------------------------------------------------------
/*  教員そのリアル
--------------------------------------------------------------------*/
/* 全包含背景 */
.article_cmnpage.realprofessor {
  padding-bottom: 50px;
  background: url("./images/real/real_bg.jpg") center top/cover no-repeat;
}

/*** プロフィール ***/
/* 包含 */
#real-profile-cont {
  margin: 0 auto 90px;
}

/* 教授写真 */
.profile-pic-box {
  margin: 0 0 40px 0;
  border-radius: 20px 0 0 0;
}

.profile-pic-box img {
  width: 100%;
  border-radius: 20px 0 0 0;
}

/* 職階 */
.profile-detail .position {
  margin: 0 0 0 0;
  font-size: 1.6rem;
}

/* 名前 */
.profile-detail .professor-name {
  margin: 0 0 10px 0;
  font-size: 3rem;
}

/* 仮名（読み） */
.profile-detail .professor-name-yomi {
  margin: 0 0 54px 0;
  font-size: 1.3rem;
}

/* 所属・専門分野見出し */
.profile-detail .affiliation-specialization-title {
  margin: 0 0 5px 0;
  font-size: 1.4rem;
  color: #8E7C64;
}

/* 所属・専門分野 */
.profile-detail .affiliation,
.profile-detail .specialization {
  font-size: 1.6rem;
}

.profile-detail .affiliation {
  margin: 0 0 34px 0;
}

.profile-detail .specialization {
  margin: 0 0 0 0;
}

/*** 記事 ***/
/* 包含 */
#real-professor-article-cont {
  margin: 0 auto 60px;
}

/* 記事タイトル */
#real-professor-article-cont .professor-article-title {
  margin: 0 auto 42px;
  text-align: center;
}

.professor-article-titlewrap {
  display: inline-block;
  position: relative;
  margin: 0 0 0 0;
}

#real-professor-article-cont .professor-article-title .professor-article-titlewrap p {
  display: inline-block;
  margin: 0 0 0 0;
  font-size: 2.8rem;
}

#real-professor-article-cont .professor-article-title .professor-article-titlewrap .accent-double-quotation {
  position: absolute;
  top: -34px;
  left: 0;
  line-height: 1;
  font-size: 7rem;
  font-weight: bold;
  color: #8E7C64;
  opacity: 0;
  animation-duration: 1.5s;
}

#real-professor-article-cont .professor-article-title .professor-article-titlewrap .accent-double-quotation.viewon {
  transition: opacity 1s ease-out;
  opacity: 1;
}

/* 記事写真 */
.professor-article-photo {
  position: relative;
}

.real-article-photobox {
  animation-delay: 3s;
  animation-duration: 4.6s;
}

.professor-article-photo img {
  width: 100%;
}

.real-professor-original-hp-link {
  margin: 0 0 50px 0 !important;
}

.real-professor-original-hp-link a {
  color: #744200;
}

.real-professor-external-link {
  margin: 0 auto 0;
}

.real-professor-external-link .cmn-btn span {
  font-size: 2.2rem;
}

@media screen and (max-width: 767px) {
  /* 記事写真 */
  .professor-article-photo {
    margin: 0 auto 60px;
    width: 90%;
  }
  .professor-article-photo .clip-parts-upleft {
    position: absolute;
    top: -16px;
    left: -16px;
    width: 60px;
  }
  .professor-article-photo .clip-parts-lowright {
    position: absolute;
    right: -16px;
    bottom: -16px;
    width: 60px;
  }
}
@media print, screen and (min-width: 1200px) {
  /*** プロフィール ***/
  #real-profile-cont {
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
  }
  #real-profile-cont .profile-pic-box {
    margin: 0 0 0 0;
    width: 50%;
  }
  #real-profile-cont .profile-detail {
    width: 42%;
  }
  /*** 記事 ***/
  /* 包含 */
  #real-professor-article-cont {
    margin: 0 auto 90px;
  }
  /* 記事写真 */
  .professor-article-photo {
    margin: 0 auto 60px;
    width: 66%;
  }
  .professor-article-photo .clip-parts-upleft {
    position: absolute;
    top: -26px;
    left: -26px;
    width: 100px;
  }
  .professor-article-photo .clip-parts-lowright {
    position: absolute;
    right: -26px;
    bottom: -26px;
    width: 100px;
  }
  .real-professor-original-hp-link {
    margin: 0 0 30px 0 !important;
  }
}
/*-------------------------------------------------------------------
/*  下層2カラムページ共通
/*  機構概要、機構の取り組み
--------------------------------------------------------------------*/
/* 包含 */
.page-outline .cmnpage-wrapper,
.page-attempt .cmnpage-wrapper,
.page-faculty-related-documents .cmnpage-wrapper,
.page-publications .cmnpage-wrapper {
  display: flex !important;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
}

@media print, screen and (min-width: 1200px) {
  /* 包含 */
  .page-outline .cmnpage-wrapper .two-column-cont,
  .page-attempt .cmnpage-wrapper .two-column-cont,
  .page-faculty-related-documents .cmnpage-wrapper .two-column-cont,
  .page-publications .cmnpage-wrapper .two-column-cont {
    width: 72%;
  }
}
/*-------------------------------------------------------------------
/*  ページャー 一覧ページ共通
--------------------------------------------------------------------*/
/* 上側 */
.cmn_archive-pagenavi.upper {
  margin: 0 auto 50px;
  text-align: center;
}

/* 下側 */
.cmn_archive-pagenavi.bottom {
  margin: 50px auto 0;
  text-align: center;
}

.cmn_archive-pagenavi {
  text-align: center;
}

.cmn_archive-pagenavi .wp-pagenavi {
  margin: 0 auto 0;
  text-align: center;
}

.cmn_archive-pagenavi .wp-pagenavi span,
.cmn_archive-pagenavi .wp-pagenavi a {
  display: inline-block;
  padding: 2px 4px;
  margin: 0 8px;
  color: #404040;
  border: solid 1px #fff;
}

.cmn_archive-pagenavi .wp-pagenavi .pages {
  margin: 0 14px 0 0;
}

.cmn_archive-pagenavi .wp-pagenavi .nextpostslink {
  margin: 0 0 0 14px;
}

.cmn_archive-pagenavi .wp-pagenavi .previouspostslink {
  margin: 0 14px 0 0;
}

/* NEWSとEVENT色 */
.cmn_archive-pagenavi .wp-pagenavi a:hover {
  text-decoration: underline;
  color: #744200;
  border: solid 1px #fff;
}

.cmn_archive-pagenavi .wp-pagenavi .current {
  color: #744200;
  border: solid 1px #744200;
}

/*-------------------------------------------------------------------
/*  汎用ページ内リンクメニュー／プラグイン TOC
--------------------------------------------------------------------*/
#toc_container {
  position: -webkit-sticky;
  position: sticky;
  top: 50px;
  margin: 0 0 0 0 !important;
  padding: 0 0 0 0 !important;
  width: 170px !important;
  border: none !important;
}

#toc_container .toc_list,
#toc_container .toc_list > li {
  list-style: none !important;
}

#toc_container .toc_list > li {
  position: relative;
  padding: 8px 15px 8px 2px;
  border-bottom: solid 1px #8E7C64;
}

#toc_container .toc_list > li::before {
  content: none !important;
}

#toc_container .toc_list > li:hover {
  border-bottom: solid 1px #A21C31;
}

#toc_container .toc_list > li a {
  text-decoration: none;
  position: relative;
  display: block;
  transition: all 0.2s ease-out;
  color: #404040;
}

#toc_container .toc_list > li a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -13px;
  width: 12px;
  height: 12px;
  border-top: solid 1px #707070;
  border-right: solid 1px #707070;
  transform: translateY(-50%) rotate(45deg);
  transition: all 0.2s ease-out;
}

#toc_container .toc_list > li a:hover {
  color: #744200;
}

#toc_container .toc_list > li a:hover::after {
  border-top: solid 2px #A21C31;
  border-right: solid 2px #A21C31;
}

/*-------------------------------------------------------------------
/*  教職員書類一覧・規程等・教授会議資料等（機構内限定 認証ページ）
--------------------------------------------------------------------*/
/*** 認証フォーム ***/
/* ログイン */
.certification-page-formbox_login,
.certification-page-formbox_logout {
  margin: 0 0 20px 0;
}

.certification-page-formbox_logout {
  width: 100%;
}

/* 書類提出参考例 注釈 */
.page-faculty-related-documents .admission-docments-notes {
  margin: 15px 0 0 0;
  padding: 15px;
  background-color: #EAE9E4;
}

@media print, screen and (min-width: 1200px) {
  /*** 認証フォーム ***/
  /* ログイン前／ログアウト中表示 */
  .certification-page-formbox_login {
    display: inline-block;
    margin: 0 0 0 0;
    text-align: left;
  }
  /* ログイン中表示 */
  .certification-page-formbox_logout {
    margin: 0 0 30px 0;
    width: 100%;
    text-align: right;
  }
}
/*-------------------------------------------------------------------
/*  刊行物
--------------------------------------------------------------------*/
.page-publications .publications-listupper-notes {
  margin: 0 0 4px 0;
  font-size: 1.3rem;
  text-align: right;
}

/*-------------------------------------------------------------------
/*  プライバシーポリシー
--------------------------------------------------------------------*/
#privacypolicy-cont {
  margin: 0 auto 40px;
}

#privacypolicy-cont h2 {
  padding-bottom: 10px;
  font-size: 1.7rem;
  font-weight: normal;
}

#privacypolicy-cont p {
  margin-bottom: 30px;
}

#privacypolicy-cont p:last-of-type {
  margin-bottom: 0;
}

#privacypolicy-btm-contact {
  margin: 0 0 1em 0;
}

/*-------------------------------------------------------------------
/*  サイトマップ・404
--------------------------------------------------------------------*/
#sitemap-cont h2 a,
#sitemap-cont ul li a {
  color: #404040;
}

/*-------------------------------------------------------------------
/*  アクセス
--------------------------------------------------------------------*/
/* 包含 */
#access-cont > div > div:nth-of-type(n+2) {
  margin-top: 40px;
}

/* 周辺環境マップ */
.access-mv {
  margin: 0 auto 40px;
}

/** リセット **/
.access-cmn-2columncont .info-box p {
  margin: 0 0 0 0;
}

/* ●見出し */
.access-cmn-2columncont .info-box .cmn-brocktitle-maru {
  margin: 0 0 10px 0;
  font-size: 1.8rem;
}

/* ■見出し */
.access-cmn-2columncont .info-box .cmn-brocktitle-shikaku {
  margin: 0 0 6px 0;
}

/* グレー帯見出し */
.access-block .block-title-bg {
  margin: 0 0 1em 0;
  padding: 6px 8px 8px;
  background-color: #EAE9E4;
}

/*** センター等所在地 ***/
.access-block .access-center-place-info,
.access-block .access-center-place-info tr th,
.access-block .access-center-place-info tr td {
  border: none;
}

.access-block .access-center-place-info tr th,
.access-block .access-center-place-info tr td {
  padding: 10px 6px;
}

.access-block .access-center-place-info tr td {
  vertical-align: top;
}

.access-block .access-center-place-info tr td:nth-of-type(1) {
  width: 60px;
}

.access-block .access-center-place-info tr td:nth-of-type(2) {
  width: calc(100% - 70px);
}

.access-block .access-center-place-info tr td p {
  margin: 0 0 0 0;
  text-indent: -1em;
  padding-left: 1em;
}

.access-block .access-center-place-info tr td p:nth-of-type(n+2) {
  margin-top: 8px;
  text-indent: -1em;
  padding-left: 1em;
}

/* 仙台駅からのアクセス */
.subway-bus-access-info > div > div:nth-of-type(n+2) {
  margin-top: 30px;
  padding-top: 30px;
  border-top: solid 1px #707070;
}

/* グーグルマップ */
#gglmap-wrap {
  position: relative;
  width: 100%;
  padding-top: 42%;
}

#gglmap-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  filter: grayscale(100%);
  -webkit-filter: grayscale(100%);
  transition: all 0.2s ease-out;
}

#gglmap-wrap iframe:hover {
  filter: none;
  -webkit-filter: none;
  transition: all 0.2s ease-out;
}

@media screen and (max-width: 767px) {
  /* 所在と写真のブロック */
  .access-cmn-2columncont {
    display: block !important;
  }
  .access-cmn-2columncont .photo-box {
    margin: 16px 0 0 0;
  }
  /* グーグルマップ */
  #gglmap-wrap {
    width: 100%;
    padding-top: 100%;
  }
}
@media print, screen and (min-width: 1200px) {
  /** 汎用2カラムレイアウト 住所など **/
  .access-block.access-cmn-2columncont,
  .access-block .access-cmn-2columncont {
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    align-items: flex-start;
    justify-content: space-between;
    width: 100%;
  }
  .access-block .access-cmn-2columncont .info-box {
    width: calc(100% - (26% + 30px));
  }
  .access-block .access-cmn-2columncont .photo-box {
    width: 26%;
  }
  /*住所のみ*/
  .address-cont.access-cmn-2columncont .info-box {
    width: calc(100% - (36% + 30px));
  }
  .address-cont.access-cmn-2columncont .photo-box {
    width: 36%;
  }
}
/*-------------------------------------------------------------------
/*  お問合わせ
--------------------------------------------------------------------*/
#contact-list table tr td:nth-of-type(1) {
  color: #8E7C64;
}

#contact-list table tr td:nth-of-type(2) a {
  display: inline-block;
  margin: 0 0 6px 0;
  color: #744200;
}

/*-------------------------------------------------------------------
/* フッター
--------------------------------------------------------------------*/
footer {
  margin-top: 100px;
  background-color: #BBAF90;
}

.home footer,
.single-realofprofessor footer {
  margin-top: 0 !important;
}

/* 基本情報 */
.ft-org-name {
  margin: 0 0 10px 0;
  line-height: 1.2;
}

.ft-org-name > span {
  display: block;
  margin: 3px 0 0 0;
  font-size: 1.1rem;
}

.basis-info {
  font-family: "Noto Sans JP", sans-serif;
}

.basis-info p {
  margin: 0 0 0 0;
  font-size: 1.2rem;
}

.basis-info .md {
  margin: 0 0 5px 0;
  font-size: 1.4rem;
}

/* メニューとコピーライト */
.ft-menu_copy-box {
  display: flex !important;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: flex-end;
}

.footer-navi {
  margin: 0 0 0 0;
  font-family: "Noto Sans JP", sans-serif;
}

.footer-navi ul li {
  position: relative;
  padding-left: 1em;
}

.footer-navi ul li::before {
  content: "▼";
  position: absolute;
  top: 18%;
  left: 0;
  font-size: 1.3rem;
  transform: rotateZ(-90deg);
}

.footer-navi ul li a {
  text-decoration: none;
  font-size: 1.2rem;
  color: #404040;
}

.footer-navi ul li a:hover {
  text-decoration: underline;
}

.ft-copy {
  margin: 0 0 0 0;
  font-size: 1.1rem;
}

/* ページトップ */
.pagetop-btn {
  position: fixed;
  right: 10px;
  bottom: 10px;
  z-index: 100;
}

@media screen and (max-width: 767px) {
  footer .inner {
    padding: 22px 32px;
  }
  /* 基本情報 */
  .ft-org-name {
    margin: 0 0 15px 0;
    font-size: 2.5rem;
  }
  .basis-info {
    margin: 0 auto 10px;
  }
  /* メニューとコピーライト */
  .ft-menu_copy-box {
    justify-content: center;
  }
  #menu-footernavi {
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    margin: 0 0 15px 0;
  }
  #menu-footernavi > li {
    width: 49%;
  }
  #menu-footernavi > li:nth-of-type(n+3) {
    margin-top: 4px;
  }
}
@media print, screen and (min-width: 1200px) {
  footer {
    padding: 20px 60px;
  }
  footer .inner {
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    align-items: normal;
    justify-content: space-between;
  }
  footer .inner > div {
    width: 50%;
  }
  /* 基本情報 */
  .ft-org-name {
    font-size: 2.1rem;
  }
  /* メニューとコピーライト */
  .ft-menu_copy-box {
    position: relative;
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: flex-end;
  }
  .footer-navi {
    margin: 0 0 0 0;
  }
  .ft-copy {
    position: absolute;
    right: 0;
    bottom: 0;
  }
  /* ページトップ */
  .pagetop-btn {
    right: 15px;
    bottom: 220px;
  }
}
/*-------------------------------------------------------------------
/*  詳細ページ
--------------------------------------------------------------------*/
/* 包含 */
#cmn-post-wrapper {
  margin-bottom: 60px;
  padding-bottom: 60px;
  border-bottom: solid 2px #BBAF90;
}

.single-metabox {
  margin: 0 0 30px 0;
}

/* 子カテゴリの表示しない */
.single-metabox .single-catebox {
  display: inline-block;
}

.single-metabox .single-catebox > span:nth-of-type(n+2) {
  display: none !important;
}

.single-metabox span {
  font-size: 1.6rem;
}

/*** カテゴリラベル ***/
.single-metabox .cate-label {
  display: inline-block;
  margin-left: 1em;
  padding: 6px 10px 7px 10px;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1;
  color: #fff;
  border-radius: 20px;
}

/** 色分け **/
/* イベント */
.single-metabox .event.cate-label {
  background-color: #6E8E64 !important;
}

/* ニュース */
.single-metabox .news.cate-label {
  background-color: #B98643 !important;
}

/* 受賞・成果 */
.single-metabox .achievements.cate-label {
  background-color: #BF8DB2 !important;
}

/* 採用情報 */
.single-metabox .careers.cate-label {
  background-color: #7C97BE !important;
}

/* イベントページのお申し込みボタン */
.event-reg-buttonbox {
  margin: 0 auto 0;
}

.event-reg-buttonbox .cmn-btn {
  width: 340px;
}

.event-reg-buttonbox .cmn-btn span {
  font-size: 2rem;
  font-weight: bold;
}

/**************************************************************************/
/*  エディタスタイル／ 下層ページ・投稿共通
/**************************************************************************/
/** 見出し **/
.article_cmnpage h2 {
  margin: 1.5em 0 16px 0;
  padding: 0 0 20px 0;
  line-height: 1.5;
  font-size: 2.6rem;
  border-bottom: solid 2px #BBAF90;
}

/*** 詳細ページH2 ***/
.single .article_cmnpage h2 {
  margin: 1.5em 0 50px 0;
}

/* ページの1番目の見出しの上の余白はなし */
.cmnpage-wrapper h2:nth-of-type(1),
.cmnpage-wrapper h3:nth-of-type(1) {
  margin-top: 0 !important;
}

.article_cmnpage h3,
#faculty-related-documents-cont h2,
#publications-cont h2 {
  margin: 1.5em 0 16px 0;
  padding: 0 0 0 14px !important;
  line-height: 1.5;
  font-size: 2.2rem;
  border-left: solid 3px #8E7C64;
  border-bottom: none !important;
}

.article_cmnpage h4 {
  position: relative;
  text-indent: -1em;
  margin: 1em 0 16px 0;
  padding-left: 1em;
  line-height: 1.5;
  font-size: 1.8rem;
}

.article_cmnpage h4::before {
  content: "●";
  color: #8E7C64;
}

.article_cmnpage h5 {
  margin: 2em 0 16px 0;
  padding: 4px 6px 5px 6px;
  line-height: 1.5;
  font-size: 1.6rem;
  background-color: #EAE9E4;
}

.article_cmnpage h6 {
  position: relative;
  text-indent: -1em;
  margin: 1em 0 16px 0;
  padding-left: 1em;
  line-height: 1.5;
  font-size: 1.5rem;
}

.article_cmnpage h6::before {
  content: "■";
  color: #404040;
}

@media print, screen and (min-width: 1200px) {
  .article_cmnpage h2 {
    font-size: 3rem;
  }
  .article_cmnpage h3 {
    font-size: 2.4rem;
  }
}
/*** 段落基本 ***/
.article_cmnpage p {
  margin: 1em 0 1.5em 0;
}

/*** リスト ※先頭インデント ***/
/* 共通見出し扱い */
.article_cmnpage ul li .md,
.article_cmnpage ol li .md {
  display: block;
  margin: 0 0 8px 0;
  font-weight: bold;
}

/* 頭●付リスト */
.article_cmnpage ul li {
  position: relative;
  padding-left: 1.2em;
  line-height: 1.3;
}

.article_cmnpage ul li::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "●";
  color: #8E7C64;
}

/* 頭数字付リスト */
.article_cmnpage ol li {
  position: relative;
  counter-increment: bangou;
  position: relative;
  padding-left: 1.8em;
}

.article_cmnpage ol li::before {
  content: counter(bangou);
  position: absolute;
  top: 0;
  left: 0;
  padding: 0 6px 1px 8px;
  font-weight: 600;
  color: #8E7C64;
  border-bottom: solid 1px #404040;
}

.article_cmnpage ul, ol {
  list-style: none;
  margin: 2em 0 2em 0;
}

.article_cmnpage ul li,
.article_cmnpage ol li {
  list-style: none;
  margin: 0;
}

.article_cmnpage ul li:nth-of-type(n+2),
.article_cmnpage ol li:nth-of-type(n+2) {
  margin-top: 1em;
}

/* 引用 */
.article_cmnpage .wp-block-quote {
  margin: 20px 0 20px 20px;
  padding: 6px 18px;
  border: double 3px #333;
}

.article_cmnpage .wp-block-quote > p,
.article_cmnpage .wp-block-quote > ul,
.article_cmnpage .wp-block-quote > div {
  margin: 0 0 0 0;
}

/*** 汎用テーブル ***/
/* cmn-table-set1 → 汎用表
/* cmn-table-set2 → 沿革表
/***********************************************/
/* セット包含 */
.cmn-table-set1,
.cmn-table-set2 {
  margin: 20px 0 30px 0;
}

/*** 汎用表 ***/
/* 表包含 */
/*
.cmn-table1 {
  margin: 20px auto 20px;
}
*/
.cmn-table1 table,
.cmn-table1 table thead,
.cmn-table1 table thead tr th,
.cmn-table1 table tbody,
.cmn-table1 table tbody tr td {
  border: none;
}

.cmn-table1 table {
  margin: 0 0 0 0;
  width: 100%;
}

.cmn-table1 table tr th {
  padding: 6px;
  text-align: center;
  font-size: 1.5rem;
  font-weight: 600;
  color: #8E7C64;
  background-color: #EAE9E4;
}

.cmn-table1 table tbody tr td {
  padding: 6px;
  border-bottom: solid 1px #B1A08A;
}

.cmn-table1 table tr th:nth-of-type(n+2),
.cmn-table1 table tr td:nth-of-type(n+2) {
  border-left: solid 10px #fff;
}

.cmn-table1 table tbody tr td a {
  color: #744200;
}

/*** 沿革表 ***/
/* 表包含 */
/*
.cmn-table2 {
  margin: 20px auto 20px;
}
*/
.cmn-table2 table,
.cmn-table2 table thead,
.cmn-table2 table thead tr th,
.cmn-table2 table tbody,
.cmn-table2 table tbody tr td {
  border: none;
}

.cmn-table2 table {
  margin: 0 0 0 0;
  width: 100%;
}

.cmn-table2 table tr td:nth-of-type(1) {
  padding: 6px;
  text-align: center;
  font-size: 1.5rem;
  color: #8E7C64;
  border-top: solid 1px #8E7C64;
  border-bottom: solid 1px #8E7C64;
}

.cmn-table2 table tbody tr td {
  padding: 6px;
  border-top: solid 1px #C6CFD5;
  border-bottom: solid 1px #C6CFD5;
}

.cmn-table2 table tr td:nth-of-type(2) {
  border-left: solid 20px #fff;
}

@media screen and (max-width: 767px) {
  /* 包含 */
  .cmn-table1,
  .cmn-table2 {
    margin: 20px 0 20px 0;
    padding: 0 0 16px 0;
    width: 100%;
    overflow-x: auto;
  }
  .wp-block-table.cmn-table1 table,
  .wp-block-table.cmn-table2 table {
    width: 200%;
    max-width: 900px;
  }
  .sp_slide-announce {
    display: block;
    margin: 0 0 0 0;
    text-align: right;
  }
}
@media print, (min-width: 768px) {
  .sp_slide-announce {
    display: none;
  }
}
/*** 画像 ***/
img.size-auto,
img.size-full,
img.size-large,
img.size-medium,
.attachment img,
.widget-container img {
  max-width: 100%;
  height: auto;
}

.alignleft,
img.alignleft {
  display: inline;
  float: left;
  margin-right: 20px;
  margin-top: 10px;
}

.alignright,
img.alignright {
  display: inline;
  float: right;
  margin-left: 20px;
  margin-top: 10px;
}

.aligncenter,
img.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

img.alignleft,
img.alignright,
img.aligncenter {
  margin-bottom: 15px;
}

/*-------------------------------------------------------------------
/*  
--------------------------------------------------------------------*//*# sourceMappingURL=style.css.map */