/* ★★　独自CSSここから　★★ */

/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	共通（body）
   ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
body {
  background: #fff; /* 全体に白色がデフォルト */
  overflow-x: hidden; /* 横スクロール非表示、100vw指定、スクロールバーと連動 */
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "BIZ UDPGothic", Meiryo, sans-serif;
}
/* スクロールバーの一括設定 */
/* スクロールの幅の設定 */ ::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}
/* スクロールの背景の設定 */ ::-webkit-scrollbar-track {
  background: #fff;
}
/* スクロールのつまみ部分の設定 */ ::-webkit-scrollbar-thumb {
  background: #10a768;
  border-radius: 2px;
}

p{
	margin-bottom:0;
}

/* 親要素を超えたいとき */
.content_over_wrap {
  width: 99.6vw;
  margin: 0 calc(50% - 50vw);
  position: relative;
}

.content_innner {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 15px;
  position: relative;
  z-index: 5;
}

/* --------------------------------------------------
	デフォルト見出し
-------------------------------------------------- */

h2.ttl__style01,
.col_danraku_midashi  {
  font-weight: 600;
  padding: .5rem;
  font-size: clamp(2rem, 1.59rem + 2.05vw, 3rem);
  display: flex;
  align-items: start;
  gap: 5px;
  border-bottom: 1px solid #e2e2e2;
  color: #10a768;
    margin-bottom: 40px;
}

h2.ttl__style01::after,
.col_danraku_midashi::after {
  display: none;
}

h3.ttl__style02,
.col_internal_chumidashi {
  display: flex;
  align-items: center;
  padding: .5em .7em;
  background-color: #f0faf3;
  font-size: clamp(1.5rem, 1.227rem + 1.36vw, 2rem);
  margin-top: 2em;
  border-radius: 3px;
}

h3.ttl__style02::before,
.col_internal_chumidashi::before {
  display: inline-block;
  width: 5px;
  height: 1.5em;
  margin-right: .5em;
  background-color: #10a768;
  content: '';
}

h4.ttl__style03,
.col_internal_komidashi {
	border-left:none;
  font-size: clamp(1.5rem, 1.336rem + 0.82vw, 1.9rem);
  margin-left: .5rem;
    margin-left: 0;
    padding-left: 2px;
}
h4.ttl__style03::before,
.col_internal_komidashi::before {
    width: 1.5em;
    height: 1.5em;
    font-family: fontawesome;
    content: "\f0da";
    display: inline-block;
    color: #10a768;
    font-weight: 700;
    font-size: 1em;
    border-radius: 1em;
    border: 3px solid #10a768;
    background-color: #fff;
    padding-left: 10px;
    margin-right: 5px;
}
@media(max-width:499px){

h4.ttl__style03::before,
.col_internal_komidashi::before {
    padding-left: 7px;
}
}

h5.ttl__style04,
.col_internal_komidashi02 {
  border-bottom: none;
  margin-bottom: 0 !important;
  line-height: 1.6;
}
@media print, (min-width: 769px) {
    .ttl__style04:not(:first-child) {
        margin-top: 15px;
    }
}

h5.ttl__style04::before,
.col_internal_komidashi02::before {
  width: 18px;
    height: 18px;
    font-family: fontawesome;
    content: "\f0da";
    display: inline-block;
    vertical-align: text-top;
    color: #fff;
    font-weight: 700;
    font-size: 10px;
    border-radius: 30px;
    background-color: #4076e2;
    padding-left: 8px;
    padding-top: 1px;
	margin-right: 5px;
}

h6.ttl__style05{
  margin-left: .3rem;
}
.col_marker_yellow{
	 background: linear-gradient(120deg, #FFEFAD 20%, #FFDF9B 100%);
  background-repeat: no-repeat;
  background-position:0 100%;
  background-size: 100% 60%; 
}

.col_uline{
	text-decoration: underline;
}

a.link_green{
	text-decoration: underline;
    color: #10a768;
}
a.link_green:hover{
	text-decoration: none;
}
/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	共通パーツ
   ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/

/*  本文中　画像左寄せ */
.col_textarea_full img.f_l {
  padding: 0 10px 5px 10px;
  margin: 5px;
  float: left;
}
/*  本文中　画像右寄せ */
.col_textarea_full img.f_r {
  padding: 2px 0px 5px 15px;
  float: right;
  margin: 5px;
}
.f_img {
  width: 30%;
}
/*  画像レスポンシブ */
@media screen and (max-width :768px) {
  /*  本文中　画像左寄せ */
  .col_textarea_full img.f_l {
    float: none;
    display: block;
    margin: 0 auto;
    padding: 0;
  }
  /*  本文中　画像右寄せ */
  .col_textarea_full img.f_r {
    float: none;
    display: block;
    margin: 0 auto;
  }
  .f_img {
    width: 100%;
  }
}

/*--------------------------------------------
					ボタン
----------------------------------------------*/
.bpts_btn_fuwa {
  text-decoration: none !important;
  background: #10a768;
  border-radius: 100px;
  position: relative;
  display: block;
  justify-content: space-around;
  align-items: center;
  margin: 1em;
  padding: 20px 40px 20px 25px;
  transition: 0.3s ease-in-out;
  font-weight: 500;
  color: #FFF !important;
  max-width: 400px;
  width: auto;
}
.bpts_btn_fuwa:after {
  content: none!important;
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 1.5em;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 11px;
  height: 11px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.bpts_btn_fuwa:hover {
  opacity: 1;
  background: #0c8b56;
}
.bpts_btn_fuwa:before {
  content: none;
}
.bpts_btn_fuwa:hover:after {
  right: 1em;
}
/* 目次に使うfuwaボタン */
.bpts_btn_fuwa.mokuji{
	display: inline-block;
    padding: 5px 1.5em;
    margin: 5px;
}
.bpts_btn_fuwa.mokuji::before{
    content: "\f0dd";
    font-family: fontawesome;
    display: inline-block;
    vertical-align: top;
    background-repeat: no-repeat;
    background-size: contain;
    width: 15px;
    height: 15px;
    font-size: 13px;
}

/* --------------------------------------------------
	テキストシート（文字の背景）
-------------------------------------------------- */
/*　テキストシート　*/
.col_txtsheet {
  width: auto;
  margin: 1em auto 3em auto;
  padding: 1em 1.2em;
  border-radius: 20px;
  background-color: #F5F5F5; /*　色　*/
  border-radius: 5px;
}
.col_txtsheet p {
  padding: 0;
  margin: .5em 0;
}
/*　テキストシート　*/
.col_txtsheet.white {
  background-color: #fff; /*　色　*/
}

/* --------------------------------------------------
	デフォルトアコーディオン
-------------------------------------------------- */
.pcollapse.pcollapse_t1 .pcollapse__toggle ,
.pcollapse.pcollapse_t2 .pcollapse__toggle {
  font-size: clamp(1.5rem, 1.459rem + 0.21vw, 1.6rem);
    padding-right: 1.5em;
	transition:.3s all;
}
.pcollapse.pcollapse_t1 .pcollapse__toggle:hover ,
.pcollapse.pcollapse_t2 .pcollapse__toggle:hover {
	background-color: #eee;
}

.pcollapse__toggle::after {
  color: #10a768;
}
/* アコーディオンにh5が入るときは下余白消す */
.pcollapse__head h5.ttl__style04  {
	margin-bottom:0;
	padding-bottom: 0;
}
/* アコーディオン1 */
.pcollapse.pcollapse_t1 .pcollapse__content {
  border-left: 3px solid #7bdbb3;
}

/* アコーディオン2 */
.pcollapse.pcollapse_t2 .pcollapse__head {
  background-color: #f0faf3;
  border-radius: 4px;
}
.pcollapse.pcollapse_t2 .pcollapse__toggle {
  color: #10a768;
}
/* ========================
		続きを読むbox
===========================*/
/*全体*/
.unit_more_box {
  margin: 2em 0 0; /*前後の余白*/
  padding: 0;
}
/*ボタン装飾*/
.unit_more_box label {
  padding: 10px 0;
  font-weight: bold;
  cursor: pointer;
  width: 100%;
  display: inline-block;
  text-align: center;
  background: #10a768;
  -webkit-transition: .4s;
  -o-transition: .4s;
  transition: .4s;
  color: #fff;
}
/*ボタンホバー時*/
.unit_more_box label:hover {
  background: #A3A3A3;
}
/*チェックは見えなくする*/
.unit_more_box input {
  display: none;
}
/*中身を非表示にしておく*/
.unit_more_box .more_show {
  height: 0;
  padding: 0;
  overflow: hidden;
  opacity: 0;
  -webkit-transition: 0.8s;
  -o-transition: 0.8s;
  transition: 0.8s;
}
/*クリックで中身表示*/
.unit_more_box input:checked ~ .more_show {
  padding:60px 20px 20px 20px;
  height: auto;
  opacity: 1;
}

.f_title_name{
	font-weight: bold;
}
.col_fixing .col_internal_chumidashi{
	margin-top: 0;
}

/* --------------------------------------------------
	デフォルトリンクボタン 
-------------------------------------------------- */
.plink.plink_type_box_arrow_rr,
.plink_type_box_arrow_rr.calendar-item__link {
  border-radius: 4px;
}
.plink.plink_type_box_border_btm{
  border-radius: 0px;
}
/* 目立たせたいボタン */
.plink.plink_type_box_main-light, .plink_type_box_main-light.calendar-item__link{
      border-color: rgba(64, 118, 226, .4);
    background-color: rgba(64, 118, 226, .4);
}

/* bpts */
.bpts_both {
  clear: both;
  font-size: 0px;
  line-height: 0px;
}

/* スペーサー */
.bpts_spacer_h5 {
  margin: 0px;
  padding: 0px;
  width: 100%;
  height: 5px;
}

.bpts_spacer_h7 {
  margin: 0px;
  padding: 0px;
  width: 100%;
  height: 7px;
}

.bpts_spacer_h10 {
  margin: 0px;
  padding: 0px;
  width: 100%;
  height: 10px;
}

.bpts_spacer_h15 {
  margin: 0px;
  padding: 0px;
  width: 100%;
  height: 15px;
}

.bpts_spacer_h20 {
  margin: 0px;
  padding: 0px;
  width: 100%;
  height: 20px;
  line-height: 20px;
}

.bpts_spacer_h30 {
  margin: 0px;
  padding: 0px;
  width: 100%;
  height: 30px;
  line-height: 20px;
}

.bpts_spacer_h40 {
  margin: 0px;
  padding: 0px;
  width: 100%;
  height: 40px;
  line-height: 20px;
}

.bpts_spacer_h80 {
  margin: 0px;
  padding: 0px;
  width: 100%;
  height: 80px;
  line-height: 20px;
}

.bpts_spacer_h120 {
  margin: 0px;
  padding: 0px;
  width: 100%;
  height: 120px;
  line-height: 20px;
}

/* 改行　スマホ表示時に消える */
.bpts_br_pc {
  display: block;
}

@media (max-width: 768px) {
  .bpts_br_pc {
    display: none;
  }
}

/* 改行　PC時に消えて、スマホ表示時に出す */
.bpts_br_sp {
  display: none;
}

@media (max-width: 499px) {
  .bpts_br_sp {
    display: block;
  }
}
.wrap{
  display: inline-block;
}

/* --------------------------------------------------
	テーブル
-------------------------------------------------- */
/* =================================
           デフォルトテーブル 
 ==================================*/
.table.tbl__style_3 thead tr th,
.table.tbl__style_3 tbody tr .thead_th_bg {
  background-color: #10a768;
}

/* =================================
           テーブル 
 ==================================*/
.unit_table_department {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #506AD3;
  margin: 1.5em 0;
}

.unit_table_department th {
  width: 13%;
  padding: 5px;
}

.unit_table_department tbody td {
  border-left: 1px #506AD3 solid;
}

.unit_table_department td {
  text-align: center;
  padding: 5px 0;
}

.unit_table_department td:first-child {
  text-align: center;
}

/* 曜日の部分 */
.unit_table_department th {
  width: 15%;
  color: white;
  background: #506AD3;
  border: 1px solid #506AD3;
  text-align: center;
}

/* 色違いの部分 */
.unit_table_department th.th02 {
  background: #506AD3;
}

/* 初診・再診・対象の部分 */
.unit_table_department tr td.td_title {
  color: white;
  background: #506AD3;
}

/* 色違いの部分 */
.unit_table_department tr td.td_title02 {
  color: white;
  background: #506AD3;
}

.unit_table_department tr td {
  background: #fff;
}

.unit_table_department tr td.name {
  background: #F2F2FB;
}

@media only screen and (max-width: 240px) {
  .unit_table_department {
    width: auto;
    margin: 0;
  }

  .unit_table_department thead {
    display: initial;
    float: left;
  }

  .unit_table_department tbody {
    display: block;
    width: auto;
    overflow-x: scroll;
    white-space: nowrap;
    padding: 5px;
  }

  .unit_table_department th {
    display: block;
    width: auto;
  }

  .unit_table_department tbody tr {
    display: inline-block;
    margin: 0 -3px;
  }

  .unit_table_department td {
    display: block;
    width: 100%;
    padding: 5px 10px;
    padding-left: -10px;
  }
}

@media (max-width:960px) {
  .unit_table_department {
    font-size: 0.8em;
  }
}

/* =================================
           横並びのテーブル 
 ==================================*/
.unit_table_side {
  max-width: 1100px;
  width: 100%;
  margin: 50px auto;
}

.unit_table_side table {
  width: 100%;
  border-collapse: collapse;
  border-width: 1px;
}

.unit_table_side table tr th,
.unit_table_side table tr td {
  text-align: left;
  vertical-align: top;
  padding: .8em 0;
  border-bottom: #D3D3D3 1px solid;
}

.unit_table_side table tr th {
  width: 20%;
  font-weight: bold;
}

@media screen and (max-width:768px) {
  .unit_table_side {
    width: 100%;
  }

  .unit_table_side table,
  .unit_table_side table tbody,
  .unit_table_side table tr,
  .unit_table_side table tr th,
  .unit_table_side table tr td {
    display: block;
  }

  .unit_table_side table tr {
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #D5D5D5;
  }

  .unit_table_side table {
    width: 100%;
    border-width: 0 0 1px 0;
  }

  .unit_table_side table tr th,
  .unit_table_side table tr td {
    width: 100%;
    border-bottom: none;
  }

  .unit_table_side table tr th {
    width: 100%;
    padding: 0;
  }

  .unit_table_side table tr td {
    border-width: 0px 1px 0px 1px;
    padding-top: .3em;
  }
}

/* --------------------------------------------------
	左固定テーブル
-------------------------------------------------- */
.col_fixing {
  margin-top: 15px;
  padding: 20px 25px 20px 25px;
  border: 1px solid #caa82b;
  margin-bottom: 30px;
}

.col_fixing_title {
  background: url("../image/common/icon-komidashi.svg")no-repeat;
  background-size: 30px 30px;
  padding: 0 0 0 2em;
  font-size: 1.2em;
  font-weight: bold;
  margin-bottom: 10px;
}

/**/
.col_fixing_wrapper {
  border-bottom: 1px #CCCCCC dotted;
  padding: 9px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.col_fixing_contents_wrapper {
  width: 100%;
}

.col_fixing_contents {}

.col_fixing_subtitle {
  width: 125px;
  font-weight: bold;
  color: #666;
}

@media (max-width: 500px) {
  .col_fixing_contents_wrapper {
    width: 100%;
    margin-left: 0px;
  }

  .col_fixing_contents {
    margin-left: 0px;
    /* width:100%; */
  }

  .col_fixing_subtitle {
    width: 100%;
    margin: 0px auto;
    text-align: center;
  }

  .col_fixing_wrapper {
    display: block;
  }
}

/* fixingbox 簡易リスト版 */
.col_fixing_list {
  width: 100%;
  padding: 0 .5em;
  font-size: .95em;
}

.col_fixing_list dt {
  float: left;
  font-weight: bold;
  border-bottom: solid 1px #C1C1C1;
  margin-bottom: .5em;
  padding: 0;
  width: 120px;
  text-align: center;
}

.col_fixing_list dd {
  margin-left: 120px;
  border-bottom: solid 1px #C1C1C1;
  margin-bottom: .5em;
}

@media (max-width: 500px) {
  .col_fixing_list dt {
    padding: 0;
    margin: 0;
    float: none;
    text-align: center;
    border-bottom: none;
    width: 100%;
    background: #F5F5F5;
  }

  .col_fixing_list dd {
    margin-left: 0;
    border-bottom: none;
  }
}

/*画像つきテキストエリア*/
.unit_side_imgarea {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  margin-bottom: 3em;
}

/*テキストを左にする場合*/
.unit_side_imgarea.reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

/*画像wrap*/
.unit_side_imgarea .img_wrap {
  width: 40%;
  margin: 10px 30px;
}

.unit_side_imgarea .img_wrap img {
  width: 100%;
}

/*本文wrap*/
.unit_side_imgarea .text_wrap {
  /* Take the remaining width */
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

@media (max-width:768px) {

  /*画像つきテキストエリア*/
  .unit_side_imgarea {
    display: block;
  }

  /*画像wrap*/
  .unit_side_imgarea .img_wrap {
    width: 100%;
    margin: 0 auto;
  }
}

/* --------------------------------------------------
	リストマーク
-------------------------------------------------- */
ol,
ul {
  padding-left: 0;
  list-style: none;
}

/*  リストの上下を均等にあける */
.col_mark_number,
.col_mark_circle,
.col_mark_number_square,
.col_mark_check,
.col_mark_triangle,
.col_mark_kome {
  margin: 10px 0;
  text-align: left;
}

/* 三角矢印 */
.col_mark_triangle {
  margin: 0 0 15px 5px;
  list-style-type: none;
}

.col_mark_triangle li {
  position: relative;
  padding: 0em 0.3em;
}

.col_mark_triangle li:before {
  position: absolute;
  content: '';
  top: 0.5em;
  left: 0.2em;
  height: 0;
  width: 0;
  border-style: solid;
  border-width: 6px 0 6px 9px;
  border-color: transparent transparent transparent #506AD3;
}

/*三角マーク下に円マークをいれる時の対策*/
.col_mark_triangle li>.col_mark_circle li:before {
  border-width: 5px 5px 5px 5px !important;
}

/*  数字マーク */
ol:not([class]),
.col_mark_number {
  margin: 0 0 10px 25px;
}

ol:not([class]) li,
.col_mark_number li {
  position: relative;
  margin-bottom: 10px;
  list-style-type: decimal !important;
}

/*  数字マーク　２階層目*/
.col_mark_number li>.col_mark_number li {
  list-style-type: lower-alpha;
}

/*  円マーク */
ul:not([class]),
.col_mark_circle {
  margin: 0;
  margin-left: .3rem;
}

ul:not([class]) li,
.col_mark_circle li {
  position: relative;
  margin-bottom: 5px;
  line-height: 1.7;
  text-align: justify;
  padding-left: 1em;
}

ul:not([class]) li::after,
.col_mark_circle li::after {
  display: block;
  content: '';
  position: absolute;
  top: .5em;
  left: 0;
  width: 6px;
  height: 6px;
  background-color: #10a768;
  /*　色　*/
  border-radius: 100%;
}

/*  （）付き数字 */
.col_mark_number02 {
  margin-left: 2em;
}

.col_mark_number02 li {
  list-style-type: none;
  counter-increment: cnt;
  position: relative;
}

.col_mark_number02 li:before {
  content: "(" counter(cnt) ")";
  display: inline-block;
  margin-left: -2em;
  width: 2em;
  position: absolute;
  top: 0;
  left: 0;
}

/* 数字マーク・四角で囲う版 */
.col_mark_number_square {
  counter-reset: number;
  /*数字をリセット*/
  list-style-type: none !important;
  /*数字を一旦消す*/
  padding: 0;
  width: 94%;
  margin: 0 auto 20px auto;
}

.col_mark_number_square li {
  position: relative;
  padding: 0.7em;
  line-height: 1.5;
  background: #F4F4F4;
  border-left: solid 35px #caa82b;
  margin-bottom: 5px;
}

.col_mark_number_square li:before {
  font-size: 1em;
  /* 以下数字をつける */
  position: absolute;
  counter-increment: number;
  content: counter(number);
  /*数字のデザイン変える*/
  display: inline-block;
  color: white;
  font-weight: bold;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  left: -35px;
  width: 35px;
  height: 1em;
  line-height: 1;
  text-align: center;
}

/*  チェックマーク */
.col_mark_check {
  margin: 0 0 15px 25px;
}

.col_mark_check li {
  position: relative;
  margin-bottom: 10px;
}

.col_mark_check li::after {
  display: block;
  content: '';
  position: absolute;
  top: .5em;
  left: -1.1em;
  width: 12px;
  height: 7px;
  border-left: 2px solid #506AD3;
  /*　色　*/
  border-bottom: 2px solid #506AD3;
  /*　色　*/
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

/* ※印 */
.col_mark_kome li {
  margin: 0 0 5px 20px;
  list-style-type: none;
  text-indent: -1em;
}

.col_mark_kome li:before {
  margin-right: 5px;
  display: inline;
  content: "※";
}

/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	共通（トップページ）
   ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/

.home-contents {
  padding-bottom: 0;
}

/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	トップページ（全体枠)
   ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.pblock,
.pblock-full,
.pblock-slim,
.pblock-wide {
  max-width: 100%;
  /* デフォルトは1030px /powercmsx/themes/small_site/css/style.cssにオリジナル記載 */
  margin-left: auto;
  margin-right: auto;
  padding: 0 15px
}

@media screen and (min-width:769px) and (max-width:1090px) {

  .pblock,
  .pblock-full,
  .pblock-slim,
  .pblock-wide {
    min-width: 100%;
  }
}

/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	トップページ toppage content 1
   ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/

.home-contents>div:nth-child(3) {
  padding-top: 0px;
}

.home-contents>div:nth-child(3)>.pblock>.content_over_wrap {
  padding-bottom: 80px;
  padding-top: 50px;
  position: relative;
}

/* 背景 */
.top_bg_deco {
  position: absolute;
  width: 400px;
  height: 400px;
  z-index: 0;
}

.top_bg_deco.top {
  top: 0px;
  left: -5vw;
}

.top_bg_deco.middle {
  top: 13%;
  right: 1vw;
}

.top_bg_deco.bottom {
  bottom: -20%;
  left: 50%;
}

.top_bg_deco.top .circle {
  width: 45vw;
  height: 90vh;
  background-image: url(/med/chokakugengo/assets/common/img-top_bg_01.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.top_bg_deco.middle .circle {
  width: 35vw;
  height: 35vw;
  background-image: url(/med/chokakugengo/assets/common/img-top_bg_green.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.top_bg_deco.bottom .circle {
  width: 40vw;
  height: 40vw;
  background-image: url(/med/chokakugengo/assets/common/img-top_bg_blue.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
@media(max-width:768px){
.top_bg_deco.top {
  top: 0px;
  left: -5vw;
}

.top_bg_deco.middle {
  top: 13%;
  right: auto;
}
.top_bg_deco.middle .circle{
    right: 0;
    position: absolute;
}

.top_bg_deco.bottom {
  bottom: -20%;
  left: 50%;
}
}

/* ４つのパネルのwrap */
#top_panel_wrap {
  padding: 50px 0;
  position: relative;

}

/* #top_panel_wrap{
  animation: fade-in .5s ease-in 2s both;
} */
/* パネル4枚　2列 */
#top_panel_wrap .top_panel_wrap_flex {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 45px;
  justify-content: space-between;
}

/* ------------パネル -----------*/
.top_panel_box {
  overflow: hidden;
}

.top_panel_box a {
  display: flex;
  padding: 20px 22px 20px 25px;
  background-image: linear-gradient(90deg, #6fcc48, #368ae9);
  border: 1px solid #fff;
  justify-content: space-between;
  height: 215px;
  align-items: center;
  border-radius: 200px;

  overflow: hidden;
  position: relative;
  z-index: 1;
}

.top_panel_box a::after {
  background-image: linear-gradient(90deg, #D4F9CC, #D4F9CC);
  opacity: 1;
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 100%;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: .4s cubic-bezier(0.45, 0, 0.55, 1);
  z-index: -1;
}

.top_panel_box a,
.top_panel_box h3 {
  color: #fff;
  margin-bottom: 0;
  font-size: clamp(1.8rem, 1.516rem + 1.68vw, 2.6rem);
  font-weight: 500;
  text-decoration: none;
  transition: all .3s linear;
}

.top_panel_box h3 {
  transition-delay: .05s;
}

.top_panel_box h3>span {
  font-size: clamp(1.2rem, 1.09rem + 0.48vw, 1.4rem);
  display: flex;
  align-items: center;
  margin-top: 5px;
  gap: 8px;
}

.top_panel_box h3>span::after {
  content: "\f0da";
    font-family: fontawesome;
  display: block;
  background-repeat: no-repeat;
  background-size: contain;
    width: 15px;
    height: 15px;
    font-size: 13px;
}

/* パネルの画像 */
.top_panel_imgbox {
  width: 60%;
  overflow: hidden;
  border-radius: 105px;
  height: 100%;
}

.top_panel_img {
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  transition: all .3s;
}

/* 代表者挨拶 */
.top_greeting .top_panel_img {
  background-image: url("/med/chokakugengo/assets/image/img-photo_sakamoto.jpg");
}

/* 研究について */
.top_research .top_panel_img {
  background-image: url("/med/chokakugengo/assets/image/img-top_panel_research.jpg");
}

/* スタッフ紹介 */
.top_staff .top_panel_img {
  background-image: url("/med/chokakugengo/assets/image/img-top_panel_staff.jpg");
}

/* 業績一覧 */
.top_achievement .top_panel_img {
  background-image: url("/med/chokakugengo/assets/image/img-top_panel_achievement.jpg");
}

/* パネル　ホバー */
.top_panel_box a:hover {
  /* background-image: linear-gradient(90deg, #D4F9CC, #D4F9CC); */
  opacity: 1;
  border: 1px solid #10a768;
}

.top_panel_box a:hover::after {
  transform: scale(1, 1);
}

.top_panel_box a:hover,
.top_panel_box a:hover h3 {
  color: #0D8B50;
}

.top_panel_box a:hover .top_panel_img {
  transform: scale(1.1);
}

@media(max-width:768px) {
#top_panel_wrap {
    padding-top:0;
}
  /* パネル1枚の調整 */
  .top_panel_box a {
    padding: 11px 11px 11px 20px;
    height: 140px;
  }
}

@media(max-width:599px) {

  /* パネル4枚　1列に */
  #top_panel_wrap .top_panel_wrap_flex {
    grid-template-columns: 1fr;
    gap: 15px;
  }

  /* パネル1枚の調整 */
  .top_panel_box a {
    padding: 11px 11px 11px 20px;
    height: 85px;
  }

  .top_panel_imgbox {
    width: max(30%, 100px);
  }
}

/* 聞き取り困難症・聴覚情報処理障害（LiD/APD）公式ホームページへのリンク */
.top_tolid-apd_wrap {
  margin: 80px auto 0;
}

/* 文章（flex） */
.top_tolid-apd_wrap>div p {
  color: #1d5ddd;
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 20px;
  font-weight: 300;
  font-size: clamp(1.8rem, 1.411rem + 1.73vw, 2.6rem);
  margin-bottom: 4.5rem;
}

/* 耳のイラスト */
.top_tolid-apd_wrap>div p::after {
  content: "";
  display: block;
  width: 100px;
  height: auto;
  background-image: url(/med/chokakugengo/assets/common/img-lidapd-ear.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  max-width: 100px;
}

.top_tolid-apd .w-md-50 {
  width: 100% !important;
  max-width: 800px;
}

.top_tolid-apd a.plink.plink_type_box {
  border-radius: 50px;
  color: #1d5ddd;
  border: 1px solid #1d5ddd;
  font-size: clamp(1.4rem, 1.071rem + 1.44vw, 2rem);
  height: auto;
  background-color: #fff;
  transition: all .3s;
  font-weight: 500;

  overflow: hidden;
  position: relative;
  z-index: 1;
}

.top_tolid-apd a.plink.plink_type_box:hover {
  opacity: 1;
}

.top_tolid-apd a.plink.plink_type_box::before {
  background-image: linear-gradient(90deg, #d7e3fb, #D4F9CC);
  opacity: 1;
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 100%;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: .4s cubic-bezier(0.45, 0, 0.55, 1);
  z-index: -1;
}

/* ホバー */
.top_tolid-apd a.plink.plink_type_box:hover {
  opacity: 1;
}

.top_tolid-apd a.plink.plink_type_box:hover::before {
  transform: scale(1, 1);
}
@media(max-width:768px) {
  .top_tolid-apd_wrap {
    margin-top: 20px;
    margin-bottom: 0;
    padding: 0 10px;
  }
  .top_tolid-apd a.plink.plink_type_box{
    border-radius: 25px;
  }

  /* 文章（flex） */
  .top_tolid-apd_wrap>div p {
    margin-bottom: 3rem;
    gap: 10px;
    font-size: 1.8rem;
  }

  /* 耳のイラスト */
  .top_tolid-apd_wrap>div p::after {
    width: 75%;
  }
}

/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	メインビジュアル
   ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
/* メインビジュアルを角丸に */
.home-mv {
  width: 98%;
  border-radius: 14px;
  overflow: hidden;
}
.home-mv__slide{
  border-radius: 14px;
  overflow: hidden;
  height: 400px;
}
/* メインビジュアルのアイテム高さ */
.home-mv__item {
  border: 0px solid red;
  width: 100%;
}

@media (max-width: 768px) {
.home-mv{
  width:97%;
}
  .home-mv__slide {
    height: 350px;
  }
}

.slick-dots {
  position: relative !important;
  z-index: 1;
  display: none !important;
}

/* 画像１枚の時（スライドショーなし） */
.slick-dots {
  display: none !important;
}

/* メインビジュアルを背景画像として登録。スマホ可変対応。CMS上ではダミー画像 */
/* 1枚目 */
.slick-track>div:nth-child(1) {
  border: 0px solid red !important;
  background-image: url(/med/chokakugengo/assets/common/img-top_slide_00.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
}

@media screen and (min-width:769px) and (max-width:1100px) {
  .slick-track>div:nth-child(1) {
    background-position: center;
    background-color: #fff;
  }
}

@media screen and (min-width:500px) and (max-width:768px) {
  .slick-track>div:nth-child(1) {
    background-position: center;
    background-color: #fff;
  }
}

@media (max-width: 499px) {
  .slick-track>div:nth-child(1) {
    background-size: cover;
    background-position: center;
    background-color: #fff;
  }
}

/* メインビジュアル　透過アイテム */
.home-mv__item::after {
  border: 0px solid red;
  position: absolute;
  content: "";
  bottom: -35%;
  right: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background-image: url(/med/chokakugengo/assets/image/img-mainvisual-bg.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: bottom right 0px;
}
.home-mv__item::after,.home-mv__item::before {
  animation: opacity 1.5s both ease-in;
}

/* メインビジュアル文字 */
.home-mv__item::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 500px;
  height: 200px;
  z-index: 2;
  background-image: url(/med/chokakugengo/assets/image/img-top_title.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: bottom 15px right 5px;
}

@media(max-width:768px) {
  .home-mv__item::after {
    width: 200%;
    bottom: -22%;
  }

  .home-mv__item::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 90%;
    height: 200px;
    z-index: 2;
    background-image: url(/med/chokakugengo/assets/image/img-top_title.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: bottom 15px right 5px;
  }
}

/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	共通（news）
   ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/

/* Informationのアイテムをgridで組み替える */
.home-events__link {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-auto-rows: auto;
  justify-content: flex-start;
  gap: 0.5em;
}

/* 画像 */
.home-events__fig {
  grid-column: 1 / 3;
  grid-row: 1 / 2;
  margin-bottom: 0;
  border-radius: 10px;
  border: 1px solid #dbdbdb;
}

/* 日付 */
.home-events__date {
  grid-column: 2 / 3;
  grid-row: 2 / 3;
  margin-bottom: 0;
  letter-spacing: normal;
  transform: translateY(0.1rem);
  font-family: "Noto Sans JP";
}

/* 「お知らせ」などのタグ */
.home-events__tags {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
  justify-content: flex-start;
  position: relative;
  top: auto;
  right: auto;
  margin-bottom: 0;
}

.home-events__tags .ptag__item {
  margin: 0 !important;
  padding: 3px 10px;
  background: none;
  border: 1px solid #10a768;
  border-radius: 999rem;
  color: #10a768;
  font-size: .8em;
  line-height: 100%;
}

/* タイトル文 */
.home-events__txt {
  grid-column: 1 / 3;
  grid-row: 3 / 4;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  font-size: 1.4rem;
}

/* 一覧を見る */
.plink.plink_type_inline_line_r,
.plink.plink_type_inline_line_r:hover {
  color: #10a768;
}

.plink.plink_type_inline_line_r::after {
  background-color: #10a768;
}

@media(max-width:768px) {
  .home-events__link {
    grid-template-columns: 35% auto 1fr;
    grid-template-rows: 22% auto;
    gap: 15px 3%;
    display: grid;
  }

  .home-events__fig {
    grid-column: 1 / 2;
    grid-row: 1 / 3;
    margin-bottom: 0;
  }

  .home-events__date {
    grid-column: 2 / 3;
    grid-row: 1 / 2;
    align-self: center;
    height: 1.5rem;
    padding-bottom: 2rem;
    font-size: .9em;
  }

  .home-events__tags {
    grid-column: 3 / 4;
    grid-row: 1 / 2;
    position: relative;
    top: auto;
    right: auto;
    margin-bottom: 0;
  }

  .home-events__tags .ptag__item {
    padding: 0px 10px;
    margin: 0 !important;
  }

  .home-events__txt {
    padding-top: 0px;
    grid-column: 2 / 4;
    grid-row: 2 / 3;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }
}

/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	#news-1
   ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
#news-1 {
  /* background-image: url(../image/lid-apd/img-top_news_bg.jpg); */
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  background-color: #f6f8f7;
  padding: 80px 0 120px;
}

/* 元のスタイルを打ち消す */
#news-1 .ttl__style01::after {
  display: none;
}

#news-1 .ttl__style01 {
  color: #0dbd74;
  font-weight: 500;
  font-size: clamp(2rem, 1.122rem + 3.85vw, 3.6rem);
  margin-bottom: 40px;
  border-bottom: 1px solid #0dbd74;
  width: 100%;
}

/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	共通（メインメニュー）
   ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
/* ヘッダーサイト名 */
.nav-top .g-nav__medium_site-jp__ttl span {
  font-size: 0.7em;
  display: block;
}

/* メインメニュー　余白調整　 */
@media print, (min-width: 1200px) {
    .nav-top .gnav-main__link1 {
        padding: 20px 1em;
    }
}
/* メインメニュー 文字色1階層目 */
.nav-top .gnav-main__link1-jp {
  color: #333 !important;
}

/* メインメニュー 文字色2階層目 */
.gnav-main__link2 {
  color: #333;
}

/* メインメニュー ドロップダウン（背景） */
.nav-top .gnav-main__box1_ptn1 {
  /* 背景色変更 */
  background: rgba(255, 255, 255, 1);
  box-shadow: 0px 2px 4px rgba(0,0,0,0.2);
  
  width: 320px;
  /* 子メニューの幅3セット */
}
 /* ヘッダー1段目の下線削除、位置調整 */
.nav-top .g-nav__head{
  border-bottom:none !important;
  margin-top: -1px;
}
/* メインメニュー ドロップダウン（ボーダー） */
.nav-top .gnav-main__item2 {
  border-bottom: 1px solid rgba(255, 255, 255, 0.8);
  /* 境界線カラー変更 */
}

/* メインメニュー ドロップダウン（アイコン＞） */
.nav-top .gnav-main__link2::before {
  color: 3333;
}

/* アイコンホバー時 */
.nav-top .gnav-main__link2:hover::before {
  color: #0d8b50;
}

/* メインメニュー ドロップダウン（子メニュー背景） */
.nav-top .gnav-main__link2 {
  background: rgba(255, 255, 255, 0.8);
  /* 背景色変更 */
  width: 320px;
  /* 子メニューの幅3セット */
}

/* メインメニュー ドロップダウン（子メニューhover背景） */
.nav-top .gnav-main__item2:hover .gnav-main__link2 {
  background: #d4f9cc;
  /* 背景色変更 */
  color: #0d8b50;
  width: 320px;
  /* 子メニューの幅3セット */
  border-radius: 1px;
  -webkit-backdrop-filter: blur(24px);
  backdrop-filter: blur(24px);
}

/* ドロップダウンメニューの下線 */
.gnav-main__list2>li {}

.gnav-main__list2>li:last-child {}

/* 上線アニメーション、親のみ */
ul.gnav-main__list1>li:nth-child(1)>div>a,
ul.gnav-main__list1>li:nth-child(2)>div>a,
ul.gnav-main__list1>li:nth-child(3)>div>a,
ul.gnav-main__list1>li:nth-child(4)>div>a,
ul.gnav-main__list1>li:nth-child(5)>div>a,
ul.gnav-main__list1>li:nth-child(6)>div>a {
  position: relative;
  /*  display: inline-block;*/
  text-decoration: none;
}

ul.gnav-main__list1>li:nth-child(1)>div>a::after,
ul.gnav-main__list1>li:nth-child(2)>div>a::after,
ul.gnav-main__list1>li:nth-child(3)>div>a::after,
ul.gnav-main__list1>li:nth-child(4)>div>a::after,
ul.gnav-main__list1>li:nth-child(5)>div>a::after,
ul.gnav-main__list1>li:nth-child(6)>div>a::after {
  position: absolute;
  top: 0px;
  /* 外側に調整、bottomで下線 */
  left: 0;
  content: '';
  width: 100%;
  height: 0px;
  background: #caa82b;
  transform: scale(0, 1);
  transform-origin: center top;
  transition: transform .3s;
}

ul.gnav-main__list1>li:nth-child(1)>div>a:hover::after,
ul.gnav-main__list1>li:nth-child(2)>div>a:hover::after,
ul.gnav-main__list1>li:nth-child(3)>div>a:hover::after,
ul.gnav-main__list1>li:nth-child(4)>div>a:hover::after,
ul.gnav-main__list1>li:nth-child(5)>div>a:hover::after,
ul.gnav-main__list1>li:nth-child(6)>div>a:hover::after {
  transform: scale(1, 1);
}

/* 下線アニメーション非表示 */
.nav-top .gnav-main__link1::before {
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 0px;
  background: transparent !important;
}
.nav-top .gnav-main__link1:hover::before {
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 3px;
  background: transparent !important;
}

/* 子メニューあるメインメニューは左パディングを広げる */
li.gnav-main__item1:has(.gnav-main__box1) .gnav-main__link1{
	padding-left: 1.25em;
}
/* 子メニューがあるものに下向き矢印つける */
li.gnav-main__item1:has(.gnav-main__box1) .gnav-main__link1::before{
    font-family: fontawesome;
    content: "\f105";
    transform: rotate(90deg);
    bottom: auto;
    top: 12px;
	left: 4px;
    width: 10px;
    height: 20px;
	display: flex;
    align-items: center;
    transition: all .3s;
}
li.gnav-main__item1:has(.gnav-main__box1) .gnav-main__link1:hover::before{
    top: 15px;
}

/* 5px下げた分の調整 */
.gnav-main__box1 {
  margin-top: 0px !important;
}

/* グローバルメニュー斜め青 */
.nav-top .gnav-main {
  background-color: #fff;
  color: #666;
}

/* グローバルメニュー内容中央寄せ */
.nav-top .gnav-main {
  justify-content: center !important;
}
/* グローバルメニュー全体に下線 */
.nav-top .gnav-main{
  border-bottom: 1px solid #eaeaea;
}
/* 親メニュー同士に隙間あける */
@media print, (min-width: 1200px) {
    .nav-top .gnav-main__list1 {
       gap: 5px;
    }
}
/* グローバルメニュー親ホバー時の背景色 */
.gnav-main__item1,
.gnav-main__item1 span {
  position: relative;
  transition: all .3s;
}

.gnav-main__item1::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.gnav-main__item1:hover {
  color: #0d8b50 !important;
}

.gnav-main__item1:hover::before {
  background: #d4f9cc;
  border-radius: 0px;
  color: #0d8b50 !important;
}

.gnav-main__item1:hover span {
  color: #0d8b50 !important;
}

.nav-top .gnav-main__link1-jp {
  color: inherit;
}

/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	グローバルメニュータイトル文字
   ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.nav-top .g-nav__medium_site-jp__ttl {
  font-size: 2.0rem ;
}

/* h1位置調整 */
@media print,
(min-width: 1200px) {
  .nav-top .g-nav__medium_site-jp {
    padding: 5px 0px 0px 0px !important;
    line-height: 1.4;
  }
}
@media screen and (max-width: 768.98px) {
    .nav-top .g-nav__medium_site-jp__ttl {
        font-size: 1.6rem;
    }
    .nav-top .g-nav__medium_site {
        padding: 10px 20px;
    }
}

/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	共通（サブメニュー、右上アイコン）
   ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.gnav-main__list3 {
  z-index: 9999;
  position: absolute;
  top: -2px;
  right: 132px;
  border: 0px solid red;
  /*    margin-right: 147px;*/
  margin-top: 0px;
  width: 500px;
  height: 75px;
}

.nav-top .gnav-main__link3-jp {
  border-left: 0px solid #fff;
  color: #000;
  font-size: 10px;
  margin-top: 5px;
  text-align: center;
}

.gnav-main__link3-jp {
  height: 100%;
}

.nav-top .gnav-main__item3:last-child .gnav-main__link3-jp {
  border-right: 0px solid #fff;
}

.gnav-main__item3 {
  margin: 0px 0px 15px 0px;
  padding: 20px 0px;
  width: 30px;
  height: 100%;
}

.gnav-main__list3 {
  margin: 0px 15px;
}
.gnav-main__list3 li:nth-child(1) {
    content: "";
    background-image: url(/med/chokakugengo/assets/common/icon-mail.svg);
    background-repeat: no-repeat;
    background-position: top 10px center;
    background-size: 30px 30px;
    width: 80px;
    /* height: 100%; */
    vertical-align: middle;
    border-left: 1px solid #D3D3D3;
}
.gnav-main__list3 li:nth-child(2) {
    content: "";
    background-image: url(/med/chokakugengo/assets/common/icon-link.svg);
    background-repeat: no-repeat;
    background-position: top 10px center;
    background-size: 30px 30px;
    width: 80px;
    /* height: 100%; */
    vertical-align: middle;
    border-left: 1px solid #D3D3D3;
}
/* 大学リンクとサーチボタン位置調整 */
.g-nav__fbox_col02 {
  margin-right: -1px;
}

/* スマホ表示時のメニュー背景（不透明度100） */
.nav-top .g-nav__link-blk{
    background: rgba(255, 255, 255, 1);
}
/* スマホ表示時のメニュー */
.nav-top .g-nav__list_lv1-link{
	padding: 15px 0;
}
.nav-top .pcollapse.pcollapse_t1 .pcollapse__toggle{
    padding-block: 15px;
}
.nav-top .g-nav__list_lv2-link{
    padding: 15px 0;
}
.nav-top .g-nav__list_lv2-link::before{
	display:none;
}
.nav-top .g-nav__sns{
	display:none;
}
.nav-top .g-nav__menu-link {
    height: calc(100vh - 135px - 120px) !important;
}
@media(max-width:369px){
.nav-top .g-nav__menu-link {
    height: calc(100vh - 163px - 120px) !important;
}
}
@media screen and (max-width: 1199.98px) {
    .nav-top .g-nav__menu-list {
        background: #10a768;
        color: #fff;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}
/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	グローバルメニュー
   ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
/* グローバルメニュー大学名のリンク色 */
.g-nav__logo-link {
  color: #333 !important;
}

/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	ヘッダーメニュー（右上の虫眼鏡)
   ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
/* 黒 */
._g-nav__link-img {
  filter: brightness(0) invert(0);
}

/* 白 */
.g-nav__link-img {
  filter: brightness(1) invert(1);
}

.g-nav__link-txt {
  color: #fff;
}

/* アイコンの背景色をメインカラーから変更する */
.g-nav__search>.g-nav__link_btn {
  background-color: #10a768 !important;
}

/* スマホ用 */
.g-nav__search_sp .g-nav__link_btn {
  background-color:#10a768 !important;
}

/* 虫眼鏡大学リンク位置調整 */
.g-nav__fbox_col02 {
  margin-right: -1px;
}

/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	トップページバナー（作成していなくても場所が空欄で出ている）
   ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.home-bnr {
  display: none !important;
}

/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	フッター（サブメニュー)
   ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.ft {
  z-index: 10;
}

.ft__medium_site {
  font-size: 2rem;
  line-height: 1.4;
  margin-top: 1rem;
}

.w-md-20 {
  width: 60% !important;
  /* サブメニューの幅拡張（デフォルトは20%） */
}

.ft__cont div:nth-child(3) {
  display: none;
}

@media screen and (min-width:600px) and (max-width:768px) {
  .w-md-20 {
    width: 100% !important;
    /* タブレット用 */
  }
}

@media (max-width: 599px) {
  .w-md-20 {
    width: 100% !important;
    /* スマホ用 */
  }
}

/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	フッター（2ブロック目のリンク)
   ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.ft .col {
  border: 0px solid red;
  max-width: 100%;
  /* 2ブロック目のリンクを横幅いっぱいにする */
}

.ft .col > a.plink_type_box_arrow_rr{
  border-radius: 0;
}

.ft__cont div:nth-child(2) {
  font-size: 1.4rem;
  /* 研究案内などのリンクの文字サイズ */
}

/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	フッター（3ブロック目のリンク)
   ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/

/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	フッター（copyright)
   ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.ft__copy {
  background: transparent !important;
  color: #333;
  border-top: 1px solid #efefef;
  font-weight: 500;
  background-size: cover;
  background-repeat: repeat-x;
  padding: 3px 0;
  font-size: 1.2rem;
}

/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	上に戻るボタン
   ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.nav-top .pagetop a.scroll {
  border-radius: 5px;
  background-color: transparent;
}

.nav-top .pagetop a.scroll::after {
  border-radius: 100px;
  background-color: #10a768;
  
}

/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	スタッフ紹介
   ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.group_staff > li {
    margin-bottom: 2em;
    border: 1px #ACACAC solid;
    border-radius: 10px;
    padding: 1em 2em;
    display: flex;
    gap: 2em;
}
.group_staff > li img {
    border-radius: 10px;
    max-width: 200px;
    margin-bottom: 1em;
}
.group_staff > li > div.txt_area {
    width: 100%;
}
/* 名前 */
.group_staff .flex_name {
    display: flex;
    justify-content: space-between;
    align-items: center;
    align-content: center;
    font-size: 1.5rem;
    margin: 1em 0;
}
.group_staff .flex_name h5{
    font-size: 1.95rem;
    margin-bottom: 0;
}
.group_staff .flex_name a {
    text-decoration: none;
    background: #10a768;
    padding: .5em 2em;
    color: #fff !important;
    border-radius: 10px;
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    text-align: center;
    text-decoration: none !important;
    position: relative;
    transition: 0.5s;
}
.group_staff .flex_name a::before {
  content: ''!important;
  width: 7px;
  height: 7px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  margin-right: 1em;
}
.group_staff .flex_name a:hover {
  background: #0c8b56;
  color: #fff;
  opacity: 1;
}
.group_staff h5 span {
    color: #10a768;
    margin-left: 1em;
    font-weight: normal;
    font-size: .8em;
    vertical-align: middle;
}
/* 所属、専門 */
.group_staff span.tag_senmon,
.group_staff_belong span.tag_belong {
    background: #6F6F6F;
    color: #fff;
    padding: .3em 1em;
    min-width: 7em;
    border-radius: 10px;
    font-size: .85em;
    display: inline-block;
    margin-right: .6em;
    line-height: 1.2;
    text-align: center;
    vertical-align: middle;
}
.group_staff_belong{
  margin-bottom: 1.5rem;
  padding-bottom: 1rem;
}
.group_staff_senmon > p,
.group_staff_belong > p{
  font-size: .95em;
}

.group_staff .unit_table_side {
  margin: 1em 0;
}
.group_staff .unit_table_side th {
  padding-left: .5em;
}
.group_staff .unit_table_side td{
  font-size: .95em;
}
.group_staff .unit_table_side tr:last-child th, .group_staff .unit_table_side tr:last-child td {
  border-bottom: none;
}
@media screen and (max-width : 768px) {
  .group_staff li {
    display: block;
    text-align: center;
  }
  .group_staff_belong, .group_staff_senmon{
	text-align:left;
  }
  .group_staff .flex_name {
    display: block;
  }
  .group_staff .flex_name a {
    width: 150px;
    padding: .3em 1em;
    margin: 0 auto .8em auto;
  }
  .group_staff h5 span{
    margin-left: 0;
  }
  .group_staff th, .group_staff td {
    font-size: .9em;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .group_staff .flex_name h5{
    font-size: 1.5em;
        display: flex;
        flex-direction: column;
    margin-bottom: 10px;
  }
.group_staff .unit_table_side td{
  padding: .5em;
}
}
/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	下層　カテゴリページ（Information）
   ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.acc__box > a:hover{
	color:#fff
}
.pbox_clr_light, .news .news-tab {
	background-color: #f6f8f7;
	border-radius: 40px;
}
@media screen and (max-width: 768.98px) {
    .news .news-tab {
        margin: 0 auto 40px;
    }
}
/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	汎用アニメーション
   ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/

@keyframes opacity {
  0% {
    opacity: 0.0;
  }

  100% {
    opacity: 1.0;
  }
}
@keyframes fade-in {
  0% {
    opacity: 0.0;
  }

  100% {
    opacity: 1.0;
  }
}

/* ★★　独自CSSここまで　★★ */
