/* 各教室申込みフォーム
------------------------------------------------------------------------------------------------------------*/
label[for] {
  cursor: pointer;
  margin-bottom: 0;
}

.form {
  display: none;
}

.agree {
  display: block;
}


form.seach{display:block;}
form.seach > div{display:flex; justify-content:space-between; border:2px solid #000000; border-radius:30px; padding:.3em 0 .3em 10px; width:100%; }
.seach button.btn{border:none; font-size:1.5rem; align-items:center; background-color:transparent; display:inline-flex; align-items:center; justify-content:center;}
.seach button.btn i{line-height:1;}
.seach button.btn:hover{background-color:transparent; color:#999999;}
.seach button.btn:focus{background-color:transparent; color:#00431b;}
.seach .form-control{width:auto;}
.seach .form-control:focus{box-shadow:none;}
.seach input[type="text"]{border:none; background-color:transparent; font-family: 'Noto Sans JP',sans-serif; width:80%;}
@media (min-width: 576px) {
  form.seach{display:flex; justify-content:center; width:auto;}
  form.seach > div{width:auto;}
  .seach input[type="text"]{width:100%;}
}

ul.tag {
  list-style-type: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
}

ul.tag li {
  margin-bottom: .5em;
}

ul.tag li a {
  margin: 0 .3em;
  border: 1px solid #006837;
  border-radius: 5px;
  font-size: .8rem;
  color: #006837 !important;
  padding: .3em 1em;
}

ul.tag li a:hover {
  text-decoration: none;
  background-color: #006837;
  color: #ffffff !important;
}

ul.tag li a:before {
  display: inline-block;
  content: '#';
  margin-right: 5px;
}

ul.serch_result.note p {
  margin-bottom: 5px;
}

ul.serch_result.note a:hover {
  text-decoration: none;
}

ul.serch_result.note div.img_thumb div:first-child {
  width: 150px;
  margin: 0 auto 10px;
}

ul.serch_result.note div.img_thumb div:last-child {
  flex: 1;
}

@media (min-width: 768px) {
  ul.serch_result.note div.img_thumb div:first-child {
    margin: 0 10px 0 0;
  }

  ul.serch_result.note div.img_thumb {
    display: flex;
  }
}


div.form-horizontal {
  max-width: 800px;
  margin: 0 auto;
  background-color: #fafafa;
  border: #dddddd 1px solid;
  padding: 1.5em;
}

div.form-horizontal p.text-center {
  margin-bottom: 0;
}


ul.childmenu {
  list-style-type: none;
  padding: 0;
  margin: 0 -5px -10px;
  display: flex;
  flex-wrap: wrap;
}

ul.childmenu li {
  flex-basis: 50%;
  max-width: 50%;
  display: flex;
}

ul.childmenu li a {
  border: 1px solid #006837;
  padding: .8em 1.7em.8em 1em;
  display: flex;
  margin: 0 5px 10px;
  flex-grow: 1;
  align-items: center;
  font-size: .85rem;
  position: relative;
}

ul.childmenu li a:after {
  position: absolute;
  right: .8em;
  display: inline-block;
  content: '';
  width: 8px;
  height: 8px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  margin: 3px 0 3px 8px;
  border-right: 1px solid #006837;
  border-bottom: 1px solid #006837;
}

ul.childmenu li a:hover {
  text-decoration: none;
  color: #ffffff;
  background-color: #006837;
}

ul.childmenu li a:hover:after {
  border-right: 2px solid #ffffff;
  border-bottom: 2px solid #ffffff;
}

@media (min-width: 768px) {
  ul.childmenu li {
    flex-basis: 33.33%;
    max-width: 33.33%;
  }
}

@media (min-width:992px) {
  ul.childmenu li {
    flex-basis: 25%;
    max-width: 25%;
  }
}



#page main .container div.children_list h3 {
  border: none;
  padding: 0;
  margin-bottom: .3em;
  font-size: 1.75rem;
}

#page main .container div.children_list h3 span {
  color: #000000;
  font-size: 0.7rem;
  letter-spacing: 0.2em;
  display: block;
}

#page main .container div.children_list h3 span:first-letter {
  color: #006837;
}

#page main .container div.children_list ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

#page main .container div.children_list ul a {
  background-color: #006837;
  color: #ffffff;
  padding: 1.3em 2em;
  margin: 10px 0 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border: 1px solid #ffffff;
  position: relative;
}

#page main .container div.children_list ul a:nth-child(even) {
  margin: 10px 0 0 5px;
}

#page main .container div.children_list ul a:before {
  display: inline-block;
  content: '';
  width: 13px;
  height: 13px;
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: #ffffff;
}

#page main .container div.children_list ul a:after {
  display: inline-block;
  content: '';
  width: 8px;
  height: 8px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  margin: 3px 0 3px 8px;
  border-right: 1px solid #ffffff;
  border-bottom: 1px solid #ffffff;
}

#page main .container div.children_list ul a:hover {
  background-color: #ffffff;
  color: #006837;
  text-decoration: none;
  border: 1px solid #006837;
}

#page main .container div.children_list ul a:hover:after {
  border-right: 1px solid #006837;
  border-bottom: 1px solid #006837;
}

@media (min-width:768px) {
  #page main .container div.children_list ul {
    display: flex;
    flex-wrap: wrap;
  }

  #page main .container div.children_list ul>li {
    flex-basis: 50%;
    max-width: 50%;
    overflow: hidden;
  }

  #page main .container div.children_list ul li a {
    margin: 10px 5px 0 0;
  }

  #page main .container div.children_list ul li:nth-child(even) a {
    margin: 10px 0 0 5px;
  }
}





#page main ul.inner-link {
  list-style-type: none;
  margin: -10px -5px 0;
  padding: 0;
}

#page main ul.inner-link>li {
  margin: 0;
  padding: 0;
  width: 100%;
  flex: 1;
  display: flex;
}

#page main ul.inner-link>li>* {
  background-color: #eeeeee;
  /* background-color: #d8d8d8; */
  color: #333333;
  padding: 1.3em 2em;
  margin: 10px 5px 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border: 1px solid #ffffff;
  position: relative;
  flex-grow: 1;
  text-decoration:none;
  /* margin-top:50px; */
}

#page main ul.inner-link a:after {
  width: 8px;
  height: 8px;
  display: inline-block;
  margin: 3px 0 3px 8px;
  content: '';

  border-right: 1px solid #333333;
  border-bottom: 1px solid #333333;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

#page main ul.inner-link a[target="_blank"]:after {
  font-family: "Font Awesome 5 Free";
  content: "\f24d";
  font-size: 1.1em;
  margin: 0px 0 0px 15px;
  width: auto;
  height: auto;
  border: none;
  -webkit-transform: none;
  transform: none;
}

#page main ul.inner-link a[href$=".pdf"]:after {
  font-family: "Font Awesome 5 Free";
  content: '\f1c1';
  font-weight: 900;
  color: #cc0000;
  font-size: 1.1em;
  margin: 0px 0 0px 15px;
  width: auto;
  height: auto;
  border: none;
  -webkit-transform: none;
  transform: none;
}

#page main ul.inner-link a[href$=".doc"]:after,
#page main ul.inner-link a[href$=".docx"]:after {
  font-family: "Font Awesome 5 Free";
  content: '\f1c2';
  font-weight: 900;
  color: #2d5c9f;
  font-size: 1.1em;
  margin: 0px 0 0px 15px;
  width: auto;
  height: auto;
  border: none;
  -webkit-transform: none;
  transform: none;
}

#page main ul.inner-link>li>*:before {
  display: inline-block;
  content: '' !important;
  width: 13px;
  height: 13px;
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: #ffffff;
  margin: 0 !important;
}

#page main ul.inner-link a:hover {
  background-color: #ffffff;
  text-decoration: none;
  border: 1px solid #cccccc;
}

@media (min-width:768px) {
  #page main ul.inner-link:not(.one-col) {
    display: flex;
    flex-wrap: wrap;
  }

  #page main ul.inner-link:not(.one-col)>li {
    flex-basis: 50%;
    max-width: 50%;
    overflow: hidden;
  }

  #page main ul.inner-link>li.one-col {
    flex-basis: 100%;
    max-width: 100%;
  }
}


/* 20221013追加 st */
#page main ul.inner-link>li>.btn-blue{
  background-color: #a0d1ff;
  color: #333333;
  border: 1px solid #ffffff;
}
#page main ul.inner-link a.btn-blue:after{
  border-right: 1px solid #ffffff;
  border-bottom: 1px solid #ffffff;
}
#page main ul.inner-link a.btn-blue:hover {
background-color: #ffffff;
text-decoration: none;
border: 1px solid #a0d1ff;
}
#page main ul.inner-link>li>.btn-red{
  background-color: #ffa4a4;
  color: #333333;
  border: 1px solid #ffffff;
}
#page main ul.inner-link a.btn-red:after{
  border-right: 1px solid #ffffff;
  border-bottom: 1px solid #ffffff;
}
#page main ul.inner-link a.btn-red:hover {
background-color: #ffffff;
text-decoration: none;
border: 1px solid #ffa4a4;
}
/* 20221013追加 en */


#page main ol:not(.default) {
  list-style-type: none;
  margin: 5px 0 0px;
  padding: 0;
  counter-reset: num;
  overflow: hidden;
}

#page main ol:not(.default)>li {
  width: 100%;
  background-color: #ffffff;
  color: #333333;
  padding: 1.3em 2em 1.3em 3.1em;
  margin: 0px 0 10px;
  border: 1px solid #cccccc;
  position: relative;
  counter-increment: num;
}

/* #page main ol > li:after{display:inline-block; content: ''; width:13px; height:13px; position: absolute; bottom:0; right:0; border-left:1px solid #cccccc; border-top:1px solid #cccccc; margin:0;} */
#page main ol:not(.default)>li:before {
  display: inline-block;
  margin: auto;
  content: counter(num);
  font-family: 'Noto Sans JP', sans-serif;
  position: absolute;
  top: .6em;
  left: .7em;
  font-weight: 400;
  font-size: 1.5rem;
}



#page main>div.department {
  padding-top: 0;
  padding-bottom: 0;
}

#page main>div.department>section>div {
  margin-top: 0;
  margin-bottom: 0;
}

#page main>div.department>section:nth-child(even) {
  padding-top: 6rem;
  padding-bottom: 6rem;
}

#page main>div.department>section:last-child {
  padding-bottom: 3rem;
}

div.department p.youtube {
  margin-bottom: 10px;
  margin: 0 auto;
}

div.department p.youtube iframe {
  display: block;
}

div.department p.youtube+p {
  text-align: left;
}

div.department>section.catch {
  background-color: #EBF5E8;
  padding: 3em 0;
  position: relative;
}

div.department>section.catch:before {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 30px 25px 0 25px;
  border-color: #EBF5E8 transparent transparent transparent;
  position: absolute;
  margin: 0 auto;
  display: block;
  top: 100%;
  left: 0;
  right: 0;
  content: '';
}

#page main>div.department>section h3:not(.wbd) {
  color: #333333;
  line-height: 1.6;
  margin: 0 0 4rem;
  font-size: 1rem;
  border: none;
  background-color: transparent;
  padding: 0;
}

#page main>div.department>section h3 span {
  display: block;
  font-size: 4rem;
  font-family: 'Poiret One', sans-serif, cursive;
  line-height: 1;
  margin-bottom: 5px;
}

div.department>section.course {
  padding-top: 6rem !important;
  padding-bottom: 6rem !important;
  transform: skew(0deg, -2deg);
  background-color: #EBF5E8;
}

div.department>section.course>* {
  transform: skew(0deg, 2deg);
}

#page main>div.department>section h3.wbd,
#page main>div.department>section h4 {
  border: none;
  padding: 0;
  color: #333333;
  font-size: 1.5rem;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 500;
  background-color: transparent;
}

@media (min-width:992px) {
  div.department p.youtube+p {
    text-align: center;
  }

  div.department>section.course>section {
    position: relative;
    margin-top: 3em;
    padding-bottom: 3em;
    overflow: hidden;
    margin-bottom: 0;
  }

  #page main>div.department>section.course>section>div {
    margin-top: 0;
    margin-bottom: 0;
  }

  div.department>section.course>section::before {
    content: '';
    position: absolute;
    display: block;
    background-color: #ffffff;
    border: none;
    top: 3em;
    bottom: auto;
    left: auto;
    right: 0;
    width: 50%;
    height: 100%;
    z-index: -1;
  }

  div.department>section.course>section:nth-child(even)::before {
    left: 0;
    right: auto;
  }

  div.department.food>section.course>section:last-child::before {
    display: none;
  }
}

#page main>div.department>section.flow img {
  margin-bottom: 10px;
}

#page main>div.department>section h3.wbd,
#page main>div.department>section h4.wbd {
  text-align: center;
  border-top: 1px solid #9fc6b4;
  border-bottom: 1px solid #9fc6b4;
  padding: .4em;
}


div.department>section dl {
  margin: 4em 0 0;
}

div.department>section dl>div {
  margin-bottom: 1.5em;
  flex-grow: 1;
}

div.department>section dl>div:last-child {
  margin-bottom: 0;
}

div.department>section dl>div dt {
  font-size: 1.18rem;
  font-weight: normal;
  text-align: center;
}

div.department>section dl>div ul.dot li:after {
  top: calc(1rem - 7px);
}

div.department>section dl.license>div {
  border: 1px solid #dddddd;
}

div.department>section dl.license>div dt {
  padding: .8em 1em;
  border-bottom: 1px solid #dddddd;
  margin: 0;
}

div.department>section dl.learning_flow>div>dd>p {
  font-size: 1.18rem;
  margin-bottom: 3px;
}

div.department>section dl.learning_flow>div>dd>ul+p {
  margin-top: 10px;
}

div.department>section dl.learning_flow>div dt {
  padding: .4em 1em;
  background-color: #eeeeee;
  margin: 0;
}

div.department.healthnursingclass>section dl.learning_flow>div dt {
  background-color: #ffffff;
}

div.department>section dl>div>dd {
  padding: .8em 1em;
  margin: 0;
}

@media (min-width:992px) {
  div.department>section dl {
    display: flex;
  }

  div.department>section dl>div {
    margin-bottom: 0;
  }

  div.department>section dl>div ul {
    margin-bottom: 0;
    font-size: .85rem;
  }

  div.department>section dl.license>div {
    border-right: none;
  }

  div.department>section dl.license>div:last-child {
    border-right: 1px solid #dddddd;
  }

  div.department>section dl.learning_flow {
    margin-right: -10px;
  }

  div.department>section dl.learning_flow>div {
    margin-right: 10px;
    flex: 1;
  }
}

#title.circulation h2 {
  background-color: #006837;
}

#title.food h2 {
  background-color: #fc7f79;
}

#title.symbiotic h2 {
  background-color: #4ec400;
}

#title.veterinaryclass h2 {
  background-color: #2d7aff;
}

#title.healthnursingclass h2 {
  background-color: #771a37;
}

div.department.circulation>section.catch {
  background-color: #f2f7f5;
}

div.department.circulation>section.catch:before {
  border-color: #f2f7f5 transparent transparent transparent;
}

div.department.circulation>section.course {
  background-color: #f2f7f5;
}

div.department.circulation>section.course ul.dot>li::after {
  background-color: #006837;
}

div.department.food>section.catch {
  background-color: #fff8f8;
}

div.department.food>section.catch:before {
  border-color: #fff8f8 transparent transparent transparent;
}

div.department.food>section.course {
  background-color: #fff8f8;
}

div.department.food>section.course ul.dot>li::after {
  background-color: #fc7f79;
}

#page main>div.department.food>section h4.reset {
  color: #333 !important;
}

div.department.food>section.flow img {
  margin-bottom: 10px;
}

div.department.symbiotic>section.catch {
  background-color: #f6fcf2;
}

div.department.symbiotic>section.catch:before {
  border-color: #f6fcf2 transparent transparent transparent;
}

div.department.symbiotic>section.course {
  background-color: #f6fcf2;
}

div.department.symbiotic>section.course ul.dot>li::after {
  background-color: #4ec400;
}

#page main>div.department.symbiotic>section h4.reset {
  color: #333 !important;
}

div.department.veterinaryclass>section.catch {
  background-color: #f4f8ff;
}

div.department.veterinaryclass>section.catch:before {
  border-color: #f4f8ff transparent transparent transparent;
}

div.department.veterinaryclass>section.course {
  background-color: #f4f8ff;
}

div.department.veterinaryclass>section.course ul.dot>li::after {
  background-color: #2d7aff;
}

#page main>div.department.veterinaryclass>section.course h4.reset {
  border-bottom: 1px solid #cccccc !important;
}

#page main>div.department.veterinaryclass>section h4.reset {
  color: #333 !important;
}

div.department.healthnursingclass>section.catch {
  background-color: #f8f3f5;
}

div.department.healthnursingclass>section.catch:before {
  border-color: #f8f3f5 transparent transparent transparent;
}

div.department.healthnursingclass>section.course {
  background-color: #f8f3f5;
}

div.department.healthnursingclass>section.course img {
  margin-bottom: 10px;
}

#page main>div.department.healthnursingclass>section h4.reset {
  color: #333 !important;
}

ul.dep-sns{list-style-type:none; padding:0; margin-bottom: 80px;}
ul.dep-sns li{margin-bottom:5px;}
ul.dep-sns li a{display:flex; align-items:center; color:#ffffff !important; -webkit-transition: all .3s; transition: all .3s; padding:.8rem 1rem; text-decoration:none;}
/* ul.dep-sns > li:nth-child(1) > a{background-color:#2b4987; border:1px solid #2b4987;}
ul.dep-sns > li:nth-child(2) > a{background-color:#d72b7f; border:1px solid #d72b7f;}
ul.dep-sns > li:nth-child(3) > a{background-color:#1f97cb; border:1px solid #1f97cb;} */
ul.dep-sns > li > a.facebook{background-color:#2b4987; border:1px solid #2b4987;}
ul.dep-sns > li > a.instagram{background-color:#d72b7f; border:1px solid #d72b7f;}
ul.dep-sns > li > a.twitter{background-color:#1f97cb; border:1px solid #1f97cb;}
ul.dep-sns li a:hover{background-color:#ffffff;}
/* ul.dep-sns > li:nth-child(1) > a:hover{color:#2b4987 !important;}
ul.dep-sns > li:nth-child(2) > a:hover{color:#d72b7f !important;}
ul.dep-sns > li:nth-child(3) > a:hover{color:#1f97cb !important;} */
ul.dep-sns > li > a.facebook:hover{color:#2b4987 !important;}
ul.dep-sns > li > a.instagram:hover{color:#d72b7f !important;}
ul.dep-sns > li > a.twitter:hover{color:#1f97cb !important;}
ul.dep-sns svg{display:block; width:35px; height:35px; margin-right:10px;}
ul.dep-sns svg *{fill:#ffffff; -webkit-transition: all .3s; transition: all .3s;}
/* ul.dep-sns > li:nth-child(1) > a:hover svg *{fill:#2b4987;}
ul.dep-sns > li:nth-child(2) > a:hover svg *{fill:#d72b7f;}
ul.dep-sns > li:nth-child(3) > a:hover svg *{fill:#1f97cb;} */
ul.dep-sns > li > a.facebook:hover svg *{fill:#2b4987;}
ul.dep-sns > li > a.instagram:hover svg *{fill:#d72b7f;}
ul.dep-sns > li > a.twitter:hover svg *{fill:#1f97cb;}
ul.dep-sns li a span{line-height:1.4;}
@media (min-width:768px) {
  ul.dep-sns{display:flex; margin:0 -15px 80px;}
  ul.dep-sns li{flex:1;}
  ul.dep-sns li a{margin:0 15px 1rem;}

}


div.departmentlist>div {
  overflow: hidden;
}

div.departmentlist>div a figure {
  margin: 0 !important;
  overflow: hidden;
}

div.departmentlist>div a figure img {
  margin: 0;
  -webkit-transform: scale(1);
  transform: scale(1);
  -webkit-transition: .3s ease-in-out;
  transition: .3s ease-in-out;
}

div.departmentlist>div a:hover figure img {
  display: block;
  -webkit-transform: scale(1.3);
  transform: scale(1.3);
}

div.departmentlist div.title_d>div {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
}

div.departmentlist div.title_d>div img {
  width: 100%;
}

main .container div.departmentlist h3 {
  border: none;
  position: relative;
  letter-spacing: .4em;
  display: block;
  border: none !important;
  padding: 0 !important;
  font-size: 2rem !important;
}

main .container div.departmentlist h3>div {
  background-color: #ffffff;
  display: inline-block;
  padding: .05em 20px .05em 0;
}

main .container div.departmentlist h3:before {
  display: block;
  position: absolute;
  content: '';
  z-index: -1;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  margin: auto;
  background-color: #006837;
}

div.departmentlist>div a:hover {
  text-decoration: none;
}

main .container div.departmentlist>div h4 {
  font-size: 1.5rem;
  z-index: 2;
  margin: auto;
  display: block;
  text-align: center;
  margin: 1.9rem 0 0 !important;
  padding: 1.5rem 0 !important;
  position: relative;
  border: none !important;
  letter-spacing: .4em;
}

main .container div.departmentlist>div h4:before {
  display: block;
  position: absolute;
  content: '';
  z-index: 2;
  width: 45px;
  height: 2px;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  background-color: #006837;
}

main .container div.departmentlist>div a.de01 h4:before {
  background-color: #006837 !important;
}

main .container div.departmentlist>div a.de02 h4:before {
  background-color: #fc7f79 !important;
}

main .container div.departmentlist>div a.de03 h4:before {
  background-color: #4ec400 !important;
}

main .container div.departmentlist>div a.de04 h4:before {
  background-color: #2d7aff !important;
}

main .container div.departmentlist>div a.de05 h4:before {
  background-color: #771a37 !important;
}

main .container div.departmentlist>div a.de06 h4:before {
  background-color: #575757 !important;
}

div.departmentlist>div h4+p {
  margin: 0 0 15px;
  font-size: .8rem;
}

div.departmentlist>div a {
  color: #333333 !important;
}

div.departmentlist>div a>p:last-child {
  margin: auto 0 30px;
}

div.departmentlist .btn {
  font-family: 'Poiret One', sans-serif, cursive;
  font-weight: 700;
}

div.departmentlist .btn span {
  display: inline-block;
  margin-left: 8px;
}

@media (min-width:768px) {
  div.departmentlist>div {
    display: flex;
    flex-wrap: wrap;
    margin: -20px -15px;
  }

  div.departmentlist>div>div {
    display: flex;
    flex-basis: 50%;
    max-width: 50%;
  }

  div.departmentlist>div a {
    flex:1;
    margin: 20px 15px;
  }

  div.departmentlist>div a>p:last-child {
    margin: auto 0 0;
  }
}


div.about-rgu>div {
  margin-top: 6em;
  text-align: left;
}

div.about-rgu>div:first-child {
  margin-top: 0em;
}

div.about-rgu>div:first-child span {
  color: #006837;
  font-size: 1.5rem;
}

main:not(#index) .container div.about-rgu h3 {
  border: none;
  padding: 0 0 .7em;
  position: relative;
  font-weight: 500;
}

@media (min-width:768px) {
  main:not(#index) .container div.about-rgu h3:after {
    display: block;
    position: absolute;
    content: '';
    z-index: 2;
    width: 50px;
    height: 3px;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    background-color: #006837;
  }
}

@media (min-width:992px) {
  main:not(#index) .container div.about-rgu h3 {
    font-size: 2rem;
  }

  div.about-rgu>div {
    margin-top: 6em;
    text-align: center;
  }
}


div.spirit-txt div.bgc {
  background-color: #F6F6F6;
  padding: 1em 2em;
}

div.paean>div.row {
  align-items: center;
}

div.paean>div.row div {
  color: #6c757d;
  font-family: 'Noto Serif JP', serif;
}

div.paean>div.row>div:nth-child(odd) {
  text-align: left;
  font-size: 2.5rem;
  font-weight: 500;
}

div.paean>div.row>div:nth-child(even) {
  letter-spacing: 0.15em;
  font-size: 1.2em;
  font-weight: 600;
}

div.paean>div.row>div:nth-child(even) span {
  color: #008043;
}

div.paean>div.row>div p {
  margin-bottom: 0;
}

div.paean>div:not(.row) {
  margin-top: 7rem;
  text-align: center;
}

div.paean>div.music a {
  display: inline-flex;
  justify-content: left;
  border: 2px solid #1a5632;
  width: 100%;
}

div.paean>div.music a:hover {
  text-decoration: none;
  color: #333333;
}

div.paean>div.music a>div {
  margin: 0;
  padding: 20px;
  background-color: #1a5632;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

div.paean>div.music a>div:before {
  -webkit-transition: all .3s;
  transition: all .3s;
}

div.paean>div.music a:hover>div:before {
  content: 'PLAY';
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #ffffff;
  font-weight: 800;
}

div.paean>div.music a p {
  margin: 0;
  padding: 15px;
  text-align: left;
  -webkit-transition: all .3s;
  transition: all .3s;
}

div.paean>div.music a:hover p {
  background-color: #fafafa;
}

div.paean>div.music a span {
  display: block;
  font-size: 1.4rem;
}

div.paean>div.music a i {
  color: #ffffff;
  -webkit-transition: all .3s;
  transition: all .3s;
}

div.paean>div.music a:hover i {
  opacity: 0;
}

div.paean img {
  width: 90%;
}

@media (min-width:576px) {
  div.paean>div.row>div:nth-child(odd) {
    text-align: center;
  }

  div.paean img {
    width: 70%;
  }
}

@media (min-width:992px) {
  div.paean>div.music a {
    width: auto;
  }
}


div.content {
  margin-top: 6em;
}

div.content>div {
  margin-bottom: 50px;
}

div.content>div:last-child {
  margin-bottom: 0px;
}

#page main .container div.content>div h3 {
  font-size: 1.5rem;
  z-index: 2;
  margin: auto;
  display: block;
  text-align: center;
  position: relative;
  border: none !important;
  letter-spacing: .4em;
  margin: 25px 0 30px !important;
  padding: 0 0 25px !important;
  letter-spacing: .1em;
}

#page main .container div.content>div h3:before {
  display: block;
  position: absolute;
  content: '';
  z-index: 2;
  width: 45px;
  height: 2px;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  background-color: #006837;
}

div.content ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

div.content ul a {
  color: #000;
  margin: 0 0 10px;
  display: block;
  position: relative;
  background: transparent;
  border: 2px solid #000;
  font-weight: 400;
  font-family: 'Noto Sans JP', sans-serif;
  -webkit-transition: all .3s;
  transition: all .3s;
  border-radius: 20px;
  padding: .3rem 40px .3rem 1rem;
}

div.content ul a:after {
  display: inline-flex;
  align-items: center;
  content: '\02192';
  font-weight: 400;
  position: absolute;
  right: 10px;
  top: 0;
  bottom: 0;
  margin: auto;
}

div.content ul a:hover,
div.content ul a:focus,
div.content ul a:active {
  background: #006837;
  border: 2px solid #006837;
  color: #ffffff;
  text-decoration: none;
}

@media(min-width:992px) {
  div.content ul:not(.one_col) {
    display: flex;
    flex-wrap: wrap;
  }

  div.content ul:not(.one_col) li {
    display: block;
    flex-basis: 50%;
    max-width: 50%;
  }

  div.content ul:not(.one_col) a {
    margin-right: 5px;
  }

  div.content ul:not(.one_col) li:nth-child(even) a {
    margin-left: 5px;
  }

  div.content>div:nth-last-child(-n+2) {
    margin-bottom: 0px;
  }
}


/* 理念と歴史
------------------------------------------------------------------------------------------------------------*/
div.table-scroll {
  font-size: .85rem;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  height: 400px;
}

div.table-scroll>* {
  margin-bottom: 0;
}

@media(max-width:768px) {
  div.table-scroll {
    background: linear-gradient(to top, rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.2)) 0 0/100% 20px, linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.2)) bottom/100% 20px;
    background-repeat: no-repeat;
    background-attachment: scroll;
  }

  div.table-scroll>* {
    background: linear-gradient(to top, hsla(0, 0%, 100%, 0), white 15px) 0 0 / 100% 50px, linear-gradient(to bottom, hsla(0, 0%, 100%, 0), white 15px) bottom / 100% 50px;
    background-repeat: no-repeat;
    background-attachment: local;
    border-collapse: collapse;
  }
}

@media(min-width:768px) {
  div.table-scroll {
    overflow-y: visible;
    height: auto;
  }
}

.time-list dl {
  margin: 0;
  border: 1px solid #e4e4e4;
}

.time-list dl>div>* {
  margin: 0;
  padding: 15px 20px;
}

.time-list dl>div dt {
  background: rgba(228, 228, 228, .5);
  border-bottom: 1px solid #ffffff;
}

.time-list dl>div dd {
  flex: 1;
  border-bottom: 1px solid #e4e4e4;
}

.time-list dl>div:last-child>* {
  border: none;
}

@media(min-width:768px) {
  .time-list dl>div {
    display: flex;
  }

  .time-list dl>div dt {
    text-align: right;
  }

  .time-list dl.history>div dt {
    width: 160px;
  }

  .time-list dl.academic>div dt {
    width: 260px;
  }
}

.academic ul.cdd_menu {
  margin: 2rem 0;
}

.academic ul.cdd_menu .nav-pills li a {
  color: #999999;
  font-size: 1.2rem;
}

.academic ul.cdd_menu .nav-pills .nav-link.active,
.academic ul.cdd_menu .nav-pills .show>.nav-link {
  background-color: #ffffff;
  color: #333333 !important;
}

/* 教育基本方針
------------------------------------------------------------------------------------------------------------*/
div.educationpolicy>div.ex {
  border-bottom: solid 2px #006837;
  border-top: solid 2px #006837;
  padding: 1em;
}

main .container div.educationpolicy h3 {
  margin-top: 2.5em !important;
  border: none !important;
  display: table;
  padding-bottom: .1em !important;
  font-weight: 500;
}

main .container div.educationpolicy h3>small {
  font-size: 0.7rem;
  color: #000000;
  letter-spacing: 0.2em;
  display: block;
}

main .container div.educationpolicy h3>small>span {
  color: #006837;
}

main .container div.educationpolicy h3.ed01 {
  color: #006837;
}

main .container div.educationpolicy h3.ed02 {
  color: #235FD6;
}

main .container div.educationpolicy h3+h4,
main .container div.educationpolicy h4+h5 {
  margin-top: 0;
}

main:not(#index) .container div.educationpolicy h4 {
  border: none !important;
  color: #333 !important;
  overflow: hidden;
  position: relative;
  padding: .3rem 2rem .3rem .5rem;
}

main:not(#index) .container div.educationpolicy div:not(.de00) h4:after {
  width: 12px;
  height: 12px;
  display: inline-block;
  margin: 3px;
  content: '';
  border-right: 2px solid #006837;
  border-bottom: 2px solid #006837;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: all .3s;
  transition: all .3s;
  position: absolute;
  right: .5rem;
}

main:not(#index) .container div.educationpolicy div:not(.de00) h4[aria-expanded="true"]:after {
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}

main:not(#index) .container div.educationpolicy .de00 h4 {
  border-bottom: solid 1px #666 !important;
}

main:not(#index) .container div.educationpolicy .de01 h4 {
  border-bottom: solid 1px #006837 !important;
}

main:not(#index) .container div.educationpolicy .de02 h4 {
  border-bottom: solid 1px #fc7f79 !important;
}

main:not(#index) .container div.educationpolicy .de03 h4 {
  border-bottom: solid 1px #4ec400 !important;
}

main:not(#index) .container div.educationpolicy .de04 h4 {
  border-bottom: solid 1px #2d7aff !important;
}

main:not(#index) .container div.educationpolicy .de05 h4 {
  border-bottom: solid 1px #771a37 !important;
}

div.educationpolicy strong {
  display: block;
  margin: 15px 0 5px;
}

div.educationpolicy div.row>div:first-child {
  margin: 15px 0 5px;
}

@media (min-width:768px) {
  div.educationpolicy .panel {
    display: block !important;
  }

/*
  main:not(#index) .container div.educationpolicy div:not(.de00) h4:after {
    display: none;
  }
  div.educationpolicy .collapse:not(.show) {
    display: block !important;
  }
*/

 main:not(#index) .container div.educationpolicy:not(.all-collapse) div:not(.de00) h4:after {
   display: none;
}
.educationpolicy:not(.all-collapse) .collapse:not(.show){ display: block !important;}

}

main .container div.educationpolicy.all-collapse > ul{
    padding-top:4rem;
    /* border-top:2px solid #006837; */
    display:block !important;
}
main .container div.educationpolicy.all-collapse > ul li{font-size:1.05rem; }
main .container div.educationpolicy.all-collapse > ul li a{background-color:transparent; border:1px solid #006837; padding:.8rem ; border-radius:0;}
main .container div.educationpolicy.all-collapse > ul li a.active{background-color:#006837;}
@media (min-width:576px) {
  main .container div.educationpolicy.all-collapse > ul{display:flex !important; justify-content:center;}
  main .container div.educationpolicy.all-collapse > ul li{flex:1; display:flex; }
  main .container div.educationpolicy.all-collapse > ul li a{flex:1; display:flex; align-items:center; justify-content:center; }
}

main .container div.educationpolicy.all-collapse div.ex{border-bottom: solid 2px #006837; padding-bottom:1rem;}

main .container div.educationpolicy.all-collapse h5[data-toggle="collapse"]{padding: 0 !important; background-color: transparent !important; border: none !important; color: #333333 !important; text-align: left;}
main .container div.educationpolicy.all-collapse div.ex h5{color:#006837 !important;}

main .container div.educationpolicy.all-collapse h3[data-toggle="collapse"],
main .container div.educationpolicy.all-collapse h4[data-toggle="collapse"],
main .container div.educationpolicy.all-collapse h5[data-toggle="collapse"]{cursor:pointer;}

main .container div.educationpolicy.all-collapse h3[data-toggle="collapse"],
main .container div.educationpolicy.all-collapse h5[data-toggle="collapse"]{position:relative; padding-right:30px !important; cursor:pointer;}
main .container div.educationpolicy.all-collapse h3[data-toggle="collapse"]:after,
main .container div.educationpolicy.all-collapse h5[data-toggle="collapse"]:after{
  width: 12px;
  height: 12px;
  display: block;
  margin:auto 10px;
  content: '';
  border-right: 2px solid #006837;
  border-bottom: 2px solid #006837;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: all .3s;
  transition: all .3s;
  position: absolute;
  right: 0rem;
  top:0; bottom:0;
}

main .container div.educationpolicy.all-collapse h3[aria-expanded="true"]:after,
main .container div.educationpolicy.all-collapse h5[aria-expanded="true"]:after{
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}
main .container div.educationpolicy.all-collapse .tab-content ul a{text-decoration:underline;}



@media (max-width:768px) {
  main:not(#index) .container div.educationpolicy h4 {
    margin-top: 1.5em;
  }

  main:not(#index) .container div.educationpolicy div:not(.de00) h4 {
    cursor: pointer;
    -webkit-transition: all .3s;
    transition: all .3s;
  }
}

main .container div.educationpolicy div.purpose{
    margin-bottom: 5rem;
    padding-bottom: 5rem;
    border-bottom: 6px double #006837;
}



/* 学長メッセージ
------------------------------------------------------------------------------------------------------------*/
/* 
#greeting .img {
  width: 40%;
  margin-left: auto;
}

#greeting .txt>div {
  background-color: #006837;
  color: #ffffff;
  flex: 1;
  padding: 1em;
  font-family: 'Noto Serif JP', serif;
  font-weight: 500;
}

#greeting .txt span.bigger {
  font-size: 120%;
}

#greeting .greetingtxt {
  background-color: #EBF5E8;
  padding: 2em;
}

#greeting .greetingtxt>div {
  position: relative;
  padding: 1em 0;
}

#greeting .greetingtxt>div:before,
.greetingtxt>div:after {
  background-color: #006837;
  left: 0;
  content: '';
  display: block;
  height: 1px;
  width: 10%;
  position: absolute;
}

#greeting .greetingtxt>div:before {
  top: 0;
}

#greeting .greetingtxt>div:after {
  bottom: 0;
  right: 0;
  left: auto;
}

#greeting .greetingtxt>div>p:last-child {
  margin-bottom: 0;
}

@media (min-width:576px) {
  #greeting>div.block {
    display: flex;
    flex-direction: row-reverse;
    position: relative;
  }

  #greeting .img {
    width: 40%;
    margin-right: 1em;
  }

  #greeting .txt {
    display: flex;
    align-items: center;
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    z-index: -1;
  }

  #greeting .greetingtxt {
    padding: 3em;
  }

  #greeting .img {
    margin-right: 2em;
  }

  #greeting .txt>div {
    padding: 2em;
    padding-right: 220px;
  }
}

@media (min-width:768px) {
  #greeting .img {
    display: flex;
    flex-direction: row-reverse;
    align-items: flex-end;
    max-width: 800px;
    width: 100%;
    margin: 0 auto;
  }

  #greeting .img p {
    margin: 0;
  }

  #greeting .txt>div {
    padding: 3em;
    padding-right: 300px;
  }
}
*/


#greeting .block{display:flex; align-items:center; flex-direction: row-reverse; position: relative;}

#greeting .img {
  width: 35%;
  margin-left: 1em;
}

#greeting .txt {
  flex:1;
  display: flex;
  align-items: center;
  width: 100%;
}
#greeting .txt:before{content:''; display:flex; align-items:center; position:absolute; left:0; right:0; top:1.5rem; bottom:1.5rem; background-color: #006837; z-index:-1;}

#greeting .txt>div {
  color: #ffffff;
  flex: 1;
  padding: 1em 0 1em 1em;
  font-family: 'Noto Serif JP', serif;
  font-weight: 500;
  font-size:1.05rem;
}
#greeting .txt>div > p{margin-bottom:0;}

#greeting .greetingtxt {
  background-color: #EBF5E8;
  padding: 2em;
}
@media (min-width:576px) {
  #greeting .txt>div {
    font-size:1.3rem;
    padding: 1em;
  }
  #greeting .txt span.bigger {
    font-size: 120%;
  }

  #greeting .txt:before{top:auto; bottom:auto; min-height:200px;}

}
@media (min-width:768px) {
  #greeting > div.block {
    display: block;
  }

  #greeting .img {
    width:auto;
    display:flex;
    align-items:flex-end;
    flex-direction: row-reverse;
    padding-right: 50px;
    margin:0;
  }
  #greeting .img > img{margin-left: 1em;}
  
  #greeting .txt {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    z-index: -1;
  }
  #greeting .txt:before{display:none;}
  
  #greeting .txt>div {
    background-color: #006837;
    flex: 1;
    position:static;
  }
}


#greeting .greetingtxt>div {
  position: relative;
  padding: 1em 0;
}

#greeting .greetingtxt>div:before,
.greetingtxt>div:after {
  background-color: #006837;
  left: 0;
  content: '';
  display: block;
  height: 1px;
  width: 10%;
  position: absolute;
}

#greeting .greetingtxt>div:before {
  top: 0;
}

#greeting .greetingtxt>div:after {
  bottom: 0;
  right: 0;
  left: auto;
}

#greeting .greetingtxt>div>p:last-child {
  margin-bottom: 0;
}

/* イベント
----------------------------------------------------------------------------------------------------*/

/*.pict_area{display:flex; flex-wrap:wrap;}*/
.pict_area img {
  margin-bottom: 10px;
}

.pict_area>div a {
  display: block;
  color: #333333;
}

.pict_area>div a:hover {
  text-decoration: none;
}

.pict_area>div a p {
  margin-top: 5px;
  font-size: 1.1rem;
}

.pict_area>div a p>small {
  font-family: 'Poiret One', cursive;
  display: block;
  font-weight: 600;
  color: #333333;
}

.pict_area a>div.hoverwhite {
  position: relative;
}

.pict_area a>div.hoverwhite:before {
  -webkit-transition: all .3s;
  transition: all .3s;
  position: absolute;
  display: block;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  content: '';
  z-index: 1;
}

.pict_area a:hover>div.hoverwhite:before {
  background-color: rgba(255, 255, 255, 0.4);
}


dl.grid-container {
  column-count: 2;
  column-gap: 1px;
}
@media screen and (min-width: 769px) {
  dl.grid-container {
    column-count: 3;
    column-gap: 1px;
  }
}

dl.grid-container .grid {
  display: block;
  -webkit-column-break-inside: avoid;
  -moz-column-break-inside: avoid;
  column-break-inside: avoid;
  margin: 0 0 1px;
}

/* BugFix */
@media screen and (-webkit-min-device-pixel-ratio: 0) {
  dl.grid-container .grid {
    display: block !important;
  }
}

div.facility figure {
  position: relative;
  overflow: hidden;
  color: #ffffff;
  margin: 0;
}

div.facility figcaption {
  position: absolute;
  bottom: -100%;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, .6);
  -webkit-transition: .3s;
  transition: .3s;
  opacity: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

div.facility figure:hover figcaption {
  bottom: 0;
  left: 0;
}

div.facility figure figcaption p {
  text-align: center;
}

div.facility figure figcaption p>span {
  display: block;
}

div.facility .grid .btn {
  font-family: 'Poiret One', sans-serif, cursive;
  align-self: center;
  position: static;
  margin: 0 5px;
  padding: .8rem;
  font-weight: 600;
  color: #004200;
  border: 2px solid #ffffff;
  background-color: #ffffff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

#page div.facility .grid .btn:after {
  display: none;
}

#page div.facility .grid a.btn:hover,
#page div.facility .grid a.btn:focus,
#page div.facility .grid a.btn:active {
  background: #004200;
  color: #ffffff;
}

#page div.facility .grid>div p {
  font-weight: bold;
}

#page div.facility .grid a:hover {
  text-decoration: none;
}

#page div.facility .grid a:hover .btn:after {
  color: #ffffff;
}






div.underdep {
  display: flex;
  flex-wrap: wrap;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

div.underdep>a {
  display: block;
  position: relative;
}

div.underdep img {
  width: 100%;
  -webkit-transform: scale(1);
  transform: scale(1);
  -webkit-transition: .3s ease-in-out;
  transition: .3s ease-in-out;
}

div.underdep>a:hover figure img {
  -webkit-transform: scale(1.3);
  transform: scale(1.3);
}

div.underdep>a figure {
  margin: 0;
  padding: 0;
  overflow: hidden;
}

div.underdep>a div.bg {
  position: absolute;
  margin: auto;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  background-color: rgba(0, 0, 0, .6);
  display: flex;
  -webkit-transition: all .3s;
  transition: all .3s;
}

div.underdep>a:hover div.bg {
  background-color: rgba(87, 142, 207, .5);
}

div.underdep>a.de01:hover div.bg {
  background-color: rgba(0, 104, 55, .5);
}

div.underdep>a.de02:hover div.bg {
  background-color: rgba(252, 127, 121, .5);
}

div.underdep>a.de03:hover div.bg {
  background-color: rgba(78, 196, 0, .5);
}

div.underdep>a.de04:hover div.bg {
  background-color: rgba(45, 122, 255, .5);
}

div.underdep>a.de05:hover div.bg {
  background-color: rgba(119, 26, 55, .5);
}

div.underdep>a.de06:hover div.bg {
  background-color: rgba(87, 87, 87, .5);
}

div.underdep>a div.button {
  position: absolute;
  z-index: 2;
  top: 20px;
  bottom: 20px;
  left: 20px;
  right: 20px;
  display: flex;
}

div.underdep>a div.line {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  z-index: 2;
}

div.underdep p {
  color: #ffffff;
  margin: 0;
  text-align: center;
}

div.underdep p>small {
  color: #ffffff !important;
  display: block;
}

div.underdep>a:hover div.line::before,
div.underdep>a:hover div.line::after {
  width: 100%;
}

div.underdep>a:hover p::before,
div.underdep>a:hover p::after {
  height: 100%;
}

div.underdep>a div.line::after {
  right: 0;
  bottom: 0;
  transition-duration: 0.4s;
}

div.underdep p::after {
  right: 0;
  bottom: 0;
  transition-duration: 0.4s;
}

div.underdep>a div.line::before {
  left: 0;
  top: 0;
  transition-duration: 0.4s;
}

div.underdep p::before {
  left: 0;
  top: 0;
  transition-duration: 0.4s;
}

div.underdep>a {
  flex-basis: 50%;
  max-width: 50%;
}

@media (min-width:576px) {
  div.underdep>a div.line {
    padding: 40px;
  }

  div.underdep>a div.line::before,
  div.underdep>a div.line::after {
    content: "";
    width: 0;
    height: 2px;
    position: absolute;
    transition: all 0.2s linear;
    background: #fff;
  }

  div.underdep p::before,
  div.underdep p::after {
    content: "";
    width: 2px;
    height: 0;
    position: absolute;
    transition: all 0.2s linear;
    transition-delay: 0s;
    background: #fff;
  }
}

@media (min-width: 992px) {
  div.underdep>a {
    flex-basis: 33.33%;
    max-width: 33.33%;
  }
}

@media (min-width:1200px) {
  div.underdep>a {
    flex: 1;
  }

  div.underdep>a div.line {
    padding: 10px;
  }

  div.underdep>a div.button {
    top: 10px;
    bottom: 10px;
    left: 10px;
    right: 10px;
  }

  div.underdep p {
    font-size: 1.1rem;
  }
}



/* 情報公開・研究実績
------------------------------------------------------------------------------------------------------------*/
@media (min-width:768px) {
  div.report table.table>tbody>tr>td:first-child {
    width: 180px;
  }

  div.disclose table.table>tbody>tr>th {
    width: 300px !important;
  }
}



main:not(#index) .container .bs-collapse h4 {
  cursor: pointer;
  -webkit-transition: all .3s;
  transition: all .3s;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

main:not(#index) .container .bs-collapse h4:after {
  width: 12px;
  height: 12px;
  display: inline-block;
  margin: 3px;
  content: '';
  border-right: 2px solid #006837;
  border-bottom: 2px solid #006837;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: all .3s;
  transition: all .3s;
}

main:not(#index) .container .bs-collapse h4[aria-expanded="true"]:after {
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}



main:not(#index) .container div.request h5 {
  color: #333333;
}

main:not(#index) .container div.request h5 strong {
  color: #1a784b;
}

main:not(#index) .container div.request h5 small {
  color: #000000 !important;
}

div.overseas table tr>td>span {
  display: block;
  font-weight: bold;
}

/* Youtubeレスポンシブ
----------------------------------------------------------------------------------------------------------- */

.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}


/* 動画集
------------------------------------------------------------------------------------------------------------*/
#movie .youtube {
  position: relative;
  padding:0;
}

#movie .youtube a::before {
  position: absolute;
  font-family: "Font Awesome 5 Brands";
  content: '\f167';
  font-size: 40px;
  font-weight: 900;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  color: #cc0000;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 2;
}

#movie .youtube a::after {
  background: #ffffff;
  position: absolute;
  content: '';
  display: flex;
  justify-content: center;
  align-items: center;
  width: 15px;
  height: 15px;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}

#movie .youtube img {
  margin-bottom: 1rem;
}

#movie .youtube p {
  text-align: center;
}


div.scholarship table thead tr>th:nth-child(1) {
  width: 35%;
}


#page div.disclose .table-bordered,
#page div.disclose .table-bordered tbody tr>th,
#page div.disclose .table-bordered tbody tr>td {
  border: 1px solid #cccccc !important;
  padding: .5rem .75rem;
}

#page div.disclose a:before {
  font-family: "Font Awesome 5 Free";
  content: '\f0c1';
  font-weight: 900;
  display: inline-block;
  margin-right: 7px;
  -webkit-transition: all .3s;
  transition: all .3s;
  color: #333333;
  font-size: 1.2em;
}

#page div.disclose a[href^="http"]:before {
  font-weight: normal;
  content: "\f24d";
}

#page div.disclose a[href$=".pdf"]:before {
  content: '\f1c1';
  font-weight: 900;
  color: #cc0000;
}

a.underline{
    text-decoration: underline;
    color: #007bff!important;
}
#page section.flow a[href$=".pdf"]:before {
    font-family: "Font Awesome 5 Free";
    content: '\f1c1';
    font-weight: 900;
    color: #cc0000;
    margin-right: 5px;
}



div.sitemap ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
}

div.sitemap>ul {
  border: 1px solid #18552e;
  padding: 1em;
}

div.sitemap>ul>li {
  border-bottom: 1px solid #18552e;
  padding: .5em 0;
}

div.sitemap ul li a {
  position: relative;
  padding-left: 13px;
}

div.sitemap ul li a:before {
  width: 5px;
  height: 5px;
  display: inline-block;
  margin: 3px 8px 3px 0;
  content: '';
  position: absolute;
  left: 0;
  top: .3rem;
  border-right: 1px solid #333333;
  border-bottom: 1px solid #333333;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transition: all .3s;
  transition: all .3s;
}

div.sitemap ul li a:hover:before {
  left: 2px;
}

div.sitemap>ul>li ul {
  padding: 2px 5px 5px 20px;
}

div.sitemap>ul>li>a {
  display: block;
}

div.sitemap>ul li:last-child {
  border-bottom: none;
}

@media (min-width: 992px) {
  div.sitemap>ul {
    padding: 0;
    font-size: .9rem;
  }

  div.sitemap ul li {
    display: flex;
    border-bottom: 1px solid #18552e;
  }

  div.sitemap>ul>li {
    padding: 0;
  }

  div.sitemap ul li.page_item_has_children>a {
    width: 30%;
    align-self: flex-start;
  }

  div.sitemap>ul>li ul {
    border-left: 1px solid #18552e;
    flex-grow: 1;
    padding: 0;
  }

  div.sitemap ul li a {
    padding: .3em .5em .3em 18px;
  }

  div.sitemap ul li a:before {
    width: 7px;
    height: 7px;
    left: .3em;
    top: .7rem;
  }

  div.sitemap ul li a:hover:before {
    left: calc(.3em + 2px);
  }
}



.nav-pills .nav-link.active,
.nav-pills .show>.nav-link,
.nav-pills .nav-link.active small,
.nav-pills .show>.nav-link small {
  border-radius: 0;
  color: #fff !important;
}

.nav-pills .nav-link#nav-circulation-tab.active,
.nav-pills .show>.nav-link#nav-circulation-tab {
  background-color: #006837 !important;
}

.nav-pills .nav-link#nav-food01-tab.active,
.nav-pills .show>.nav-link#nav-food01-tab {
  background-color: #fc7f79 !important;
}

.nav-pills .nav-link#nav-food02-tab.active,
.nav-pills .show>.nav-link#nav-food02-tab {
  background-color: #FF9409 !important;
}

.nav-pills .nav-link#nav-symbiotic-tab.active,
.nav-pills .show>.nav-link#nav-symbiotic-tab {
  background-color: #4ec400 !important;
}

.nav-pills .nav-link#nav-veterinary-tab.active,
.nav-pills .show>.nav-link#nav-veterinary-tab {
  background-color: #2d7aff !important;
}

.nav-pills .nav-link#nav-healthnursing-tab.active,
.nav-pills .show>.nav-link#nav-healthnursing-tab {
  background-color: #771a37 !important;
}

.nav-pills li a {
  border-radius: 0;
}

ul.cdd_menu {
  padding: 0;
  list-style: none;
}

@media(max-width:992px) {
  ul.cdd_menu {
    display: block;
    margin: 0 auto;
    position: relative;
    z-index: 9999;
    background: #EEE;
    z-index: 1;
  }

  ul.cdd_menu li span,
  ul.cdd_menu li a {
    display: block;
    margin: 0;
  }

  ul.cdd_menu li span {
    cursor: pointer;
    position: relative;
    padding: .5rem 2rem .5rem 1rem;
  }

  ul.cdd_menu li span:before {
    width: 12px;
    height: 12px;
    display: inline-block;
    margin: 3px;
    content: '';
    border-right: 2px solid #006837;
    border-bottom: 2px solid #006837;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: all .3s;
    transition: all .3s;
    position: absolute;
    right: 15px;
  }

  ul.cdd_menu li a {
    padding: .5rem 1rem;
  }

  ul.cdd_menu li a:hover {
    background-color: #fafafa;
  }

  ul.cdd_menu ul>li {
    border-bottom: 1px solid #efefef;
  }

  ul.cdd_menu ul>li:last-child {
    border-bottom: none;
  }

  ul.cdd_menu li a:hover,
  ul.cdd_menu li a:hover small {
    text-decoration: none;
    color: #333333 !important;
  }

  ul.cdd_menu,
  li.cdd_menu-dropdown>ul {
    padding: 0;
    list-style: none;
  }

  li.cdd_menu-dropdown>ul {
    position: absolute;
    border: 1px solid #CCC;
    background-color: rgba(255, 255, 255, 0.9);
    visibility: hidden;
    opacity: 0;
    display: block;
    width: 100%;
  }

  li.cdd_menu-dropdown:hover>ul {
    visibility: visible;
    transition: .5s;
    opacity: 1;
  }

}

@media(min-width:992px) {
  ul.cdd_menu li span {
    display: none;
  }

  .nav-pills li {
    border-right: solid 1px #666;
    line-height: 1em;
    font-size: .9rem;
    flex: 1;
    flex-basis: auto;
    max-width: none;
    display: flex;
  }

  .nav-pills li a {
    padding: 0.1em 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex-grow: 1;
  }

  .nav-pills li:last-child {
    border: none;
  }

  .nav-pills a small {
    display: block;
  }
}


div.archivement .container_ss {
  max-width: 700px;
  margin: 0 auto;
}

div.archivement table th {
  width: 28%;
}

div.archivement table small {
  display: block;
}

/*
ul.nav-pills.department_tab{background-color:#efefef;}
ul.nav-pills.department_tab{display:block;}
@media(min-width:768px){
  ul.nav-pills.department_tab{display:flex; text-align:center; flex-wrap:wrap;}
  ul.nav-pills.department_tab small{display:block;}
  ul.nav-pills.department_tab li{flex-basis: calc(100% / 3); max-width: calc(100% / 3); display:flex; justify-content:center;}
  ul.nav-pills.department_tab li a{flex-grow:1; display:flex; flex-direction: column; justify-content:center; align-items:center;}
}
@media(min-width:992px) {
  ul.nav-pills.department_tab{background-color:#ffffff;}
  ul.nav-pills.department_tab li{flex:1;}
} */


div.careerlist dl {
  margin-bottom: 5px;
}

div.careerlist dl>div {
  display: flex;
  font-size: .9rem;
  border-left: 1px solid #e4e4e4;
  border-right: 1px solid #e4e4e4;
}

div.careerlist dl>div>* {
  margin: 0;
  padding: 15px 20px;
  display: flex;
}

div.careerlist dl>div:nth-child(1) {
  border-top: 1px solid #e4e4e4;
}

div.careerlist dl>div>dt {
  font-weight: normal;
  flex: 1;
  border-bottom: 1px solid #e4e4e4;
  justify-content: flex-start;
  align-items: center;
}

div.careerlist dl>div>dd {
  background: rgba(228, 228, 228, .5);
  border-bottom: 1px solid #ffffff;
  width: 100px;
  align-items: center;
  justify-content: center;
}

div.careerlist div.tab-content p {
  text-align: right;
  margin: 5px 0 20px;
}

@media(min-width:992px) {
  div.careerlist .nav-pills li a {
    padding: 0.5em 1em;
  }

  div.careerlist dl {
    display: flex;
    flex-wrap: wrap;
  }

  div.careerlist dl>div {
    flex-basis: calc(50% - 10px);
    max-width: calc(50% - 10px);
    margin: 0 5px 0 0;
  }

  div.careerlist dl>div:nth-child(even) {
    margin: 0 0 0 5px;
  }

  div.careerlist dl>div:nth-child(-n+2) {
    border-top: 1px solid #e4e4e4;
  }
}

div.circle a {
  display: block;
}

div.circle a:hover {
  text-decoration: none;
  color: #333333;
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}

div.circle .thumbs {
  width: 100%;
  max-width: 220px;
  position: relative;
  overflow: hidden;
}

@media(min-width : 480px) {
  div.circle .thumbs {
    max-width: 150px;
  }
}

div.circle .thumbs::before {
  content: "";
  display: block;
  padding-top: 100%;
}

div.circle .thumbs img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  object-fit: cover;
}

div.circle div.image {
  margin-bottom: 0;
}

div.circle .slider-circle.slick-initialized .slick-slide {
  margin: 0 10px;
  background-color: #ffffff;
}

div.circle .slider-circle.slick-initialized .slick-slide.slick-center {
  position: relative;
  z-index: 2;
}

div.circle .slider-circle.slick-initialized .slick-list {
  padding-top: 50px !important;
  padding-bottom: 40px !important;
}

div.circle .slider-circle p {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 0;
}

div.circle .slider-circle .hoverwhite+p {
  justify-content: center;
}

div.circle .slider-circle .hoverwhite>p>small {
  font-size: 75%;
  display: inline-flex;
  align-items: center;
}

div.circle .slider-circle .hoverwhite>p>span {
  line-height: 1.3;
}

div.circle .slider-circle .hoverwhite>p>span>strong {
  font-size: 130%;
  display: inline-block;
  margin-right: 3px;
}

div.circle .slider-circle .slick-center p>span {
  color: #006837;
  font-weight: 500;
}

div.circle .slick-prev,
div.circle .slick-next {
  top: 50%;
}

div.circle .slider-circle ul.slick-dots {
  display: none !important;
}

.all_circle ul.cdd_menu {
  display: block;
  margin: 0 auto 30px;
  position: relative;
  z-index: 5;
}

.all_circle ul.cdd_menu li span,
.all_circle ul.cdd_menu li a {
  display: block;
  margin: 0;
}

.all_circle ul.cdd_menu li span {
  cursor: pointer;
  position: relative;
  padding: .5rem 2rem .5rem 1rem;
  background: #ffffff;
  border: 1px solid #cccccc;
}

.all_circle ul.cdd_menu li span:before {
  width: 12px;
  height: 12px;
  display: inline-block;
  margin: 3px;
  content: '';
  border-right: 2px solid #006837;
  border-bottom: 2px solid #006837;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: all .3s;
  transition: all .3s;
  position: absolute;
  right: 15px;
}

.all_circle ul.cdd_menu li a {
  padding: .5rem 1rem;
}

.all_circle ul.cdd_menu li a:hover {
  background-color: #fafafa;
}

.all_circle ul.cdd_menu ul>li {
  border-bottom: 1px solid #efefef;
}

.all_circle ul.cdd_menu ul>li:last-child {
  border-bottom: none;
}

.all_circle ul.cdd_menu li a:hover,
.all_circle ul.cdd_menu li a:hover small {
  text-decoration: none;
  color: #333333 !important;
}

.all_circle ul.cdd_menu,
.all_circle li.cdd_menu-dropdown>ul {
  padding: 0;
  list-style: none;
}

.all_circle li.cdd_menu-dropdown>ul {
  position: absolute;
  border: 1px solid #CCC;
  background-color: rgba(255, 255, 255, 0.9);
  visibility: hidden;
  opacity: 0;
  display: block;
  width: 100%;
  overflow-y: scroll;
  height: 400px;
  -webkit-overflow-scrolling: touch;
}

.all_circle li.cdd_menu-dropdown:hover>ul {
  visibility: visible;
  transition: .5s;
  opacity: 1;
}

div.circle .all_circle p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  font-size: .9rem;
}

div.circle .all_circle a {
  margin-bottom: 10px;
  overflow: hidden;
  background: transparent !important;
}

div.circle a img,
div.circle_page dl.grid-container a img {
  -webkit-transition: all .3s;
  transition: all .3s;
}

div.circle a:hover img,
div.circle_page dl.grid-container a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}

div.circle>div.slider-circle div.image {
  overflow: hidden;
  width: 100%;
  padding-top: 100%;
  position: relative;
}

div.circle>div.slider-circle div.image img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  max-width: 200%;
  max-height: 200%;
}


div.circle_page div.library div.image {
  overflow: hidden;
  width: 100%;
  padding-top: 100%;
  position: relative;
}

div.circle_page div.library div.image img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  max-width: 200%;
  max-height: 200%;
}


div.circle_page>article>div.row .d-flex {
  flex-wrap: wrap;
  margin: 0 -0.25rem;
}

div.circle_page>article>div.row .d-flex img {
  margin: 0 0.25rem 0.25rem;
}


div.other-image {
  display: flex;
  margin: 0 -10px;
}

div.other-image>div {
  flex-basis: calc(50% - 10px);
  max-width: calc(50% - 10px);
  margin: 0 5px;
}

div.other-image>div p {
  display: flex;
  justify-content: center;
}

@media(min-width:992px) {
  div.other-image>div {
    flex-basis: calc(25% - 10px);
    max-width: calc(25% - 10px);
  }
}

body>ul.productlist {
  display: none;
}

.table>tbody.number-sort>tr>td:first-child {
  text-align: center;
}



div.access_btn {
  display: block;
}

div.access_btn>div {
  text-align: center;
}

div.access_btn .btn {
  width: 222px;
}

div.access_btn>div .btn {
  margin: 0 auto 10px;
  display: table;
}

@media(min-width:768px) {
  div.access_btn>div:last-child {
    display: block;
  }

  div.access_btn>div .btn {
    margin: 0 0 10px;
    display: inline-block;
  }

  div.access_btn>div:last-child>.btn {
    margin-bottom: 0px;
  }

  div.access_btn>div:last-child>.btn:first-child {
    margin-right: 10px;
  }
}

@media(min-width:992px) {
  div.access_btn {
    display: flex;
    justify-content: center;
  }

  div.access_btn>div:first-child {
    margin: 0 10px 0 0;
  }
}



div.careersupport div.message>div:last-child span {
  color: #006837;
}

div.careersupport div.message>div:last-child>p:last-child {
  color: #006837;
  font-size: 1.1rem;
  font-weight: 500;
}

div.careersupport div.schedule p {
  border-bottom: solid 1px #ccc;
  padding-bottom: .3em;
}

div.careersupport div.schedule ul {
  margin-bottom: 25px;
}

div.careersupport div.theme table {
  margin-bottom: 0;
}

div.careersupport div.theme>div.col_two>div:last-child table {
  border-top: none;
}

div.careersupport div.theme table th {
  width: 70px !important;
  vertical-align: top;
  text-align: center;
}

div.careersupport div.theme ul {
  margin-bottom: 0;
}

@media(min-width:992px) {
  div.careersupport div.schedule {
    display: flex;
    justify-content: space-between;
    margin-right: -25px;
  }

  div.careersupport div.schedule>div {
    flex-grow: 1;
    margin-right: 25px;
  }
  div.careersupport div.schedule>div:nth-child(2){flex:1;}
  div.careersupport div.schedule>div:not(:nth-child(2)){width:240px; flex-grow:0;}

  div.careersupport div.theme ul {
    font-size: .85rem;
  }

  div.careersupport div.theme ul.dot>li::after {
    top: calc(1rem - 5px);
  }

  div.careersupport div.theme>div.col_two {
    display: flex;
    margin-right: -10px;
  }

  div.careersupport div.theme>div.col_two>div {
    margin-right: 10px;
    flex: 1;
  }

  div.careersupport div.theme>div.col_two>div:last-child table {
    border-top: 1px solid #dee2e6;
  }
}


div.catalogs>div>p {
  font-size: 1.1rem;
  text-align: center;
  font-weight: 400;
  margin-bottom: .25rem;
}

div.catalogs div.bg {
  background-color: #F1F1F1;
  padding: 1.5rem;
}


div.action-plan img {
  float: none;
  margin: 0 auto 20px;
}

@media(min-width:992px) {
  div.action-plan img {
    float: left;
    margin: 0 20px 20px;
  }
}

p.courseguide,
p.study-abroad {
  background-color: #eee;
}


table.tb-skill>tbody>tr>th {
  text-align: center;
}


/* ホバーで吹き出し（使用予定あり？）*/
div.balloon {
  position: relative;
}

p.arrow_box {
  display: none;
  position: absolute;
  padding: 16px;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
  background: #333;
  color: #fff;
}

p.arrow_box:after {
  position: absolute;
  bottom: 100%;
  left: 50%;
  width: 0;
  height: 0;
  margin-left: -10px;
  border: solid transparent;
  border-color: rgba(51, 51, 51, 0);
  border-bottom-color: #333;
  border-width: 10px;
  pointer-events: none;
  content: " ";
}

span:hover+p.arrow_box {
  display: block;
}

a.black span.fc-title {
  color: #cc0000;
}


/* 教員一覧 */
.teacher-list ul.nav-tabs {
  display: block;
  border-bottom: none;
}

.teacher-list ul.nav-tabs>li {
  border-bottom: 1px solid #333333;
}

.teacher-list ul.nav-tabs>li:last-child {
  border-bottom: none;
}

.teacher-list ul.nav-tabs>li>a.active {
  color: #ffffff !important;
  border-radius: 0;
}

.teacher-list ul.nav-tabs>li>a[href*='circulation'].active {
  background-color: #006837;
  border-color: #006837;
}

.teacher-list ul.nav-tabs>li>a[href*='food'].active {
  background-color: #FC7F79;
  border-color: #FC7F79;
}

.teacher-list ul.nav-tabs>li>a[href*='symbiotic'].active {
  background-color: #4EC400;
  border-color: #4EC400;
}

.teacher-list ul.nav-tabs>li>a[href*='veterinary'].active {
  background-color: #2D7AFF;
  border-color: #2D7AFF;
}

.teacher-list ul.nav-tabs>li>a[href*='healthnursing'].active {
  background-color: #771A37;
  border-color: #771A37;
}

.teacher-list table>thead>tr>th {
  border-top: 1px solid #3b683d;
  border-bottom: 1px solid #3b683d;
  text-align: left;
  padding: .2rem .75rem;
}

.teacher-list table>tbody>tr>td {
  padding: .2rem .75rem;
  text-align: left;
}

.teacher-list table>tbody>tr>td:first-child {
  text-align: left;
}

.teacher-list table>tbody>tr>td span {
  color: #3b683d;
}

@media(min-width:992px) {
  .teacher-list ul.nav-tabs {
    display: flex;
  }

  .teacher-list ul.nav-tabs>li {
    border-right: 1px solid #333333;
    border-bottom: none;
  }

  .teacher-list ul.nav-tabs>li:last-child {
    border-right: none;
  }

  .teacher-list ul.nav-tabs>li>a {
    padding: .25rem 1rem;
  }
}

/* 教員詳細 */
main#teacher .container h3 {
  border: none;
  padding: 0;
  margin-bottom: .5rem;
  font-size: 1.7rem;
  letter-spacing: .05rem;
}

main#teacher .container h3 small {
  font-size: 60%;
}

main#teacher .container p {
  margin-bottom: .25rem;
}

/* main#teacher .outer-link {
  margin: 1rem 0;
}

main#teacher .outer-link>a {
  background-color: #999999;
  color: #ffffff;
  width: 35px;
  height: 35px;
  padding: .25rem;
  margin: 0 .2rem;
  display: flex;
  display: -ms-flexbox;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
}

main#teacher .outer-link>a:first-of-type {
  width: auto;
  padding: .2rem .75rem;
  margin-left: 0;
  margin-right: 1rem;
  border-radius: 20px;
}

main#teacher .outer-link>a:hover {
  text-decoration: none;
} */
main#teacher .outer-link {
  margin: 1rem 0;
  justify-content:left;
  display:block;
}
@media (min-width: 992px) {
  main#teacher .outer-link {display:flex;}
}

main#teacher .outer-link > div{display:flex; justify-content:center;}
@media (min-width: 768px) {
  main#teacher .outer-link > div{justify-content:flex-start;}
}
main#teacher .outer-link > div > a {
  background-color: #999999;
  color: #ffffff;
  width: 35px;
  height: 35px;
  padding: .25rem;
  margin: 0 .2rem;
  display: flex;
  display: -ms-flexbox;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  /* display:inline-block; */
}

main#teacher .outer-link > div.outer-link-research{margin-bottom:5px;}
@media (min-width: 992px) {
  main#teacher .outer-link > div.outer-link-research{ margin-bottom:0;}
}
main#teacher .outer-link > div.outer-link-research > a{
  width: auto;
  padding: .2rem .75rem;
  margin-left: 0;
  margin-right: .5rem;
  border-radius: 20px;
}
main#teacher .outer-link > div.outer-link-research > a span{display:flex; align-items:center;}
main#teacher .outer-link>div>a:hover {
  text-decoration: none;
}

main#teacher dl.labonumber {
  display: block;
  margin-bottom: 0;
  border: 1px solid #999999;
  border-radius: 5px;
}

main#teacher dl.labonumber>dt {
  background-color: #999999;
  color: #ffffff;
  padding: .1rem 2rem;
  font-weight: normal;
}

main#teacher dl.labonumber>dd {
  padding: .1rem 2rem;
  margin-bottom: 0;
}

main#teacher .table>tbody>tr>th {
  width: 30%;
  color: #006837;
}

main#teacher .table>tbody>tr>td span {
  display: inline-block;
  min-width: 115px;
  padding: .1rem .5rem;
  margin: .25rem .5rem .25rem 0;
  font-size: 85%;
  text-align: center;
  border: 1px solid #999999;
  border-radius: 5px;
}

main#teacher .table>tbody>tr>td a {
  color: #538E72;
}

@media(min-width: 768px) {
  main#teacher dl.labonumber {
    display: inline-flex;
    display: -ms-flexbox;
    justify-content: center;
    align-items: center;
  }

  main#teacher .table>tbody>tr>th {
    width: 25%;
  }

  main#teacher .table>tbody>tr>td span {
    min-width: 150px;
    font-size: 90%;
  }
}

main#page .container div.covid {
  border: 5px solid #333333 !important;
}

main#page .container div.covid,
main .container div.covid h5 {
  color: #fd3f3f !important;
}

main#page .container div.covid h4 {
  border-left: none;
  padding: 0;
  color: #fd3f3f;
}




div.tcircle a {
  display: block;
}

div.tcircle a:hover {
  text-decoration: none;
  color: #333333;
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}

div.tcircle .thumbs {
  width: 100%;
  max-width: 220px;
  position: relative;
  overflow: hidden;
}

@media(min-width : 480px) {
    div.tcircle .thumbs {
      max-width: 150px;
    }
  }
  
  div.tcircle .thumbs::before {
    content: "";
    display: block;
    padding-top: 100%;
  }
  
  div.tcircle .thumbs img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    object-fit: contain;
  }
  
  div.tcircle div.image {
    margin-bottom: 0;
  }
  
  div.tcircle .slider-tcircle.slick-initialized .slick-slide {
    margin: 0 10px;
    background-color: #ffffff;
  }
  
  div.tcircle .slider-tcircle.slick-initialized .slick-slide.slick-center {
    position: relative;
    z-index: 2;
  }
  
  div.tcircle .slider-tcircle.slick-initialized .slick-list {
    padding-top: 50px !important;
    padding-bottom: 40px !important;
  }
  
  div.tcircle .slider-tcircle p {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 0;
  }
  
  div.tcircle .slider-tcircle .hoverwhite+p {
    justify-content: center;
  }
  
  div.tcircle .slider-tcircle .hoverwhite>p>small {
    font-size: 75%;
    display: inline-flex;
    align-items: center;
  }
  
  div.tcircle .slider-tcircle .hoverwhite>p>span {
    line-height: 1.3;
  }
  .slider-element>a>span, .slider-element>a>p{
    font-size: 70%;
  }
  @media (min-width:375px){
      .slider-element>a>span, .slider-element>a>p{
  font-size: 100%;
      }
  }
  div.tcircle .slider-tcircle .hoverwhite>p>span>strong {
    font-size: 100%;
    display: inline-block;
    margin-right: 0px;
  }
  @media (min-width:375px){
    div.tcircle .slider-tcircle .hoverwhite>p>span>strong {
      font-size: 130%;
      display: inline-block;
      margin-right: 3px;
    }
  }
  div.tcircle .slider-tcircle .slick-center p>span {
    color: #006837;
    font-weight: 500;
  }
  
  div.tcircle .slick-prev,
  div.tcircle .slick-next {
    top: 50%;
  }
  
  div.tcircle .slider-tcircle ul.slick-dots {
    display: none !important;
  }
  
  
  
  ul.magazine-list{list-style-type:none; padding:0; margin:0 -10px; display:flex; flex-wrap:wrap;}
  ul.magazine-list li{flex-basis:calc(50% - 20px); margin:0 10px 1rem;position: relative; padding: .4em; margin-bottom: 1.5rem; display:block; border-top: 2px solid #3b683d; border-bottom: 2px solid #3b683d;}
  /* ul.magazine-list li:before{position: absolute; display:block; content:''; background-color:#2c6836; width:10px; height:10px; left:0; top:.55rem;} */
  @media(min-width:768px) {
    ul.magazine-list li{flex-basis:calc((99.999% / 3) - 20px); }
  }
  div.magazine a{text-decoration: none;}
  @media(min-height: 768px){
      .magazine__height > div > div{min-height: 350px;}
  }
  span.number{
      background-color: #006837;
      color: #fff;
      font-size: .85rem;
      margin-left: .5rem;
      padding: .3rem .5rem;
  }
  
  
  div.school-map .map-area{position: relative;}
  div.school-map ul{list-style-type:none; padding:0;}
  div.school-map ul.marker > li{ position: absolute; top:0; left:0;}
  div.school-map ul.marker > li.pin-A{top:33%; left:23%;}
  div.school-map ul.marker > li.pin-B{top:32%; left:37%;}
  div.school-map ul.marker > li.pin-C{top:38%; left:47%;}
  div.school-map ul.marker > li.pin-D{top:41%; left:59.5%;}
  div.school-map ul.marker > li.pin-E{top:40%; left:82%;}
  div.school-map ul.marker > li.pin-F{top:52%; left:72%;}
  div.school-map ul.marker > li.pin-G{top:58%; left:72%;}
  div.school-map ul.marker > li.pin-H{top:59%; left:60%;}
  div.school-map ul.marker > li.pin-I{top:57%; left:52.5%;}
  div.school-map ul.marker > li.pin-J{top:53%; left:56.5%;}
  div.school-map ul.marker > li.pin-K{top:53%; left:54%;}
  div.school-map ul.marker > li.pin-L{top:46.5%; left:48%;}
  div.school-map ul.marker > li.pin-M{top:57.5%; left:21%;}
  div.school-map ul.marker > li.pin-N{top:68.8%; left:20.9%;}
  div.school-map ul.marker > li.pin-O{top:70%; left:76.5%;}
  div.school-map ul.marker > li.pin-P01{top:80%; left:38%;}
  div.school-map ul.marker > li.pin-P02{top:80%; left:57%;}
  div.school-map ul.marker > li.pin-Q{top:84.5%; left:8%;}
  div.school-map ul.marker > li.pin-R{top:59%; left:46.5%;}
  div.school-map ul.marker > li > div{cursor: pointer; text-align:center; line-height:1.1;}
  div.school-map ul.marker > li > div strong{display:flex; align-items:center; justify-content:center; width:20px; height:20px; line-height:0; border-radius:50%; margin:0 auto; background-color:#000000; color:#ffffff; }
  div.school-map ul.marker > li > div span{font-size:.6rem; line-height:1.4; background-color:#ffffff; padding:.2rem .5rem; display:inline-block;}
  div.school-map ul.marker > li > div span{display:none;}
  div.school-map ul.name{display:flex; flex-wrap:wrap; margin:0 -10px;}
  div.school-map ul.name li{display:flex; flex-basis:50%; margin-bottom:10px;}
  div.school-map ul.name li > div{display:flex; align-items:center; margin:0 10px; background-color:#ebf5e8; flex:1; cursor:pointer;	-webkit-transition: all .3s;	transition: all .3s; }
  div.school-map ul.name li > div:hover{background-color:#f2f2f2;}
  div.school-map ul.name li > div strong{
      align-self: stretch;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #ffffff;
      background-color:#006837;
      font-family: 'Red Hat Display', sans-serif;
      font-weight: 500;
      font-size: 1.3rem;
      padding: .5rem;
      width: 27px; height:auto;
  }
  div.school-map ul.name li > div span{margin-left:10px; font-size:.85rem;}
  @media (min-width: 768px) {
    div.school-map ul.name li{display:flex; flex-basis:33.333%; margin-bottom:10px;}
    div.school-map ul.name li > div strong{	width: 45px; height:45px;}
    div.school-map ul.marker li > div{display:flex; align-items:flex-start;}
    div.school-map ul.marker li > div strong{display:inline-flex;}
    div.school-map ul.marker > li > div span{font-size:.6rem; line-height:1.4; background-color:#ffffff; padding:.2rem .5rem; display:inline-block; display:none; position: relative; z-index:2;}
    div.school-map ul.marker > li > div:hover span{display:inline-block;}
  }
  
  div.school-map .modal-header{padding:.5rem 1rem 0; border-bottom:none;}
  main:not(#index) .container div.school-map .modal-body h3{border:none; padding:0; font-size:1.2rem; margin-top:1rem; }
  div.school-map .modal-body> img:nth-of-type(2){margin-top:30px;}
  
  #page h2.keyword span {
    font-size: 1.5rem;
    border-bottom: 2px solid #000000;
    display: inline-block;
    padding: 0 .3em .5em;
  }
  
  div.sdgs{
      display: flex;
      flex-wrap: wrap;
      margin-top: 3rem;
  }
  div.sdgs div{
      width: calc(100% / 4);
      padding: .25rem;
  }
  @media(min-width : 575px){
      div.sdgs div{width: calc(100% / 6);}
  }
  @media(min-width : 768px){
      div.sdgs div{width: calc(100% / 9);}
  }


div.basis h3 span{
    display: inline;
    padding: .25rem .5rem;
    margin-top: .25rem
}
div.basis h3 span.gray{
    background-color: #bbb;
    color: #fff;
}
div.basis h3 span.green{
    background-color: #18552e;
    color: #fff;
}
div.basis div.basis-flow > div{
    position: relative;
    margin-bottom: 70px;
}
div.basis div.basis-flow > div > div:after{
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% + 30px);
    margin: 0 auto;
    width: 0;
    height: 0;
    border-top: 25px solid #18552e;
    border-right: 40px solid transparent;
    border-left: 40px solid transparent;
}
div.basis div.basis-flow > div:last-child > div:after{
    display: none;
}
div.basis div.image{padding-top:66.5%;}
div.basis div.image img{max-height:inherit;}

.department .modal{padding:0 15px !important;}
.department .modal-dialog{max-width: 1140px;}
.department .modal-body{overflow-y: auto;}
.department .modal-dialog-scrollable .modal-content{overflow: hidden;}
.department .modal-dialog-scrollable {max-height: calc(100% - 3.5rem);
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: center;
  justify-content: center;
  height: 100%;}
.grad-wrap{position:relative;}
.grad-btn {
  z-index: 2;
  margin-left: auto;cursor: pointer;
  transition: .2s ease; display:table;
  margin-top:1rem;
  min-width:135px;
}
.greeting-img{width:50%; max-width:160px;}
.greeting-img + div{flex:1;}
/*
.grad-btn::before {
  content: "続きを読む"
}
*/
.grad-item {
  position: relative;
  overflow: hidden;
  height: 130px; /*隠した状態の高さ*/
}
.grad-item::before {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 40px; /*グラデーションで隠す高さ*/
  background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
  background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
  content: "";
}

.grad-trigger {
  display: none;
}
.grad-trigger:checked ~ .grad-btn::before {
  content: "閉じる"
}
.grad-trigger:checked ~ .grad-item {
  height: auto;
}
.grad-trigger:checked ~ .grad-item::before {
  display: none;
}

#page main .container div.children_list ul a:not(.noicon)[href$=".pdf"]::before{ margin-right:0; }

span.del {
    text-decoration-line: line-through;
    text-decoration-style:double;
    text-decoration-color: red;
  }

/* 追加 2022.09 St */
dl.certificate-step div{
  border-bottom: 1px solid #ccc;
  padding: .75rem 0;
}
dl.certificate-step div dt {
  min-width: 10%;
}
dl.certificate-step div dd{
  margin-bottom: 0;
}
/* 追加 2022.09 En */

.popupbanner{
    left: 0;
    bottom: 43px;
    z-index: 99;
}