@charset "UTF-8";
/*/////////// base ////////////*/
html {
  -webkit-text-size-adjust: 100%;
  @import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200..900&display=swap");
  @import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&display=swap");
}

body {
  font-family: AxisStd-Regular, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Meiryo, メイリオ, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 100%;
  line-height: 1.2;
  color: #505B5E;
  background: #F5F4F0 none no-repeat 0 0 scroll;
  box-sizing: border-box;
  margin: 0px;
  padding: 0px;
  overflow-x: hidden;
}

.yumincho {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}

.mincho {
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}

.gothic {
  font-family: AxisStd-Regular, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Meiryo, メイリオ, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.noto-serif-jp {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-style: normal;
}

:target:before {
  height: 110px;
  /* ヘッダの高さ */
  margin: -110px 0 0;
  /* ヘッダの高さ */
  content: "";
  display: block;
}

img {
  height: auto;
  vertical-align: bottom;
}

.img_w100 {
  width: 100%;
}

.img_max100 {
  max-width: 100%;
}

#page-top {
  position: fixed;
  z-index: 101;
  bottom: 20px;
  right: 20px;
}

#page-top a {
  transition: 0.5s all;
  display: block;
}

#page-top a:hover {
  opacity: 0.7;
}

.clearfix, .wrapper, .main_wrapper {
  *zoom: 1;
}

.clearfix:after, .wrapper:after, .main_wrapper:after {
  content: "";
  display: table;
  clear: both;
}

p {
  line-height: 1.7;
}

p.alr {
  text-align: right;
}

a {
  text-decoration: none;
  color: #000;
}

strong {
  font-weight: 700;
  color: #2A5B88;
}

strong1 {
  font-weight: 700;
  color: #2A5B88;
  text-decoration: underline;
}

strong2 {
  font-weight: 700;
  color: #ff0000;
  text-decoration: underline;
}

.red {
  color: red;
}

.pt_20 {
  padding-top: 25px;
}

.mr_0 {
  margin-right: 0px !important;
}

.mt_10 {
  margin-top: 10px;
}

.mt_20 {
  margin-top: 20px;
}

.mt_30 {
  margin-top: 30px;
}

.mt_40 {
  margin-top: 40px;
}

.mt_60 {
  margin-top: 60px;
}

.mb_10 {
  margin-bottom: 10px;
}

.mb_20 {
  margin-bottom: 20px;
}

.mb_40 {
  margin-bottom: 40px;
}

.ml_10 {
  margin-left: 10px;
}

.ml_a {
  margin-left: auto;
}

.mr_a {
  margin-right: auto;
}

.pt_25 {
  padding-top: 25px !important;
}

strong {
  font-weight: 700;
}

.pc_none {
  display: none !important;
}

.center {
  text-align: center;
}

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

.map {
  height: 450px;
}

.fixed {
  position: fixed;
  z-index: 100;
  width: 100%;
  left: 0px;
  top: 0px;
  background: #FFF;
  /* box-shadow: 0px 0px 10px 0px #5bc0de inset; */
}

.content_block {
  padding: 50px 0px 0px;
}

.content_block_l {
  padding: 100px 0px 0px;
}

.local_lead {
  line-height: 1.6;
  margin-bottom: 20px;
}

.sub__wrap {
  max-width: 860px;
  box-sizing: border-box;
  margin: 0px auto;
  width: 90%;
  padding: 0px 20px;
}

.banner__list {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.banner__list li {
  width: 30%;
}

.banner__list li img {
  max-width: 100%;
  width: 100%;
  transition: 0.5s all;
}

.banner__list li img:hover {
  opacity: 0.7;
}

/*topバナー差し替え*/
.banner_wrap ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.banner_wrap .list_top li {
  width: 49%;
  text-align: center;
  margin-bottom: 20px;
}

.banner_wrap ul li img {
  width: 100%;
}

.banner_wrap .list_bottom li {
  width: calc(25% - 20px);
}

.banner_wrap li img:hover {
  opacity: 0.7;
}

.common_btn {
  width: 150px;
  display: block;
  background: #FFF;
  text-align: center;
  color: #FFF;
  border-radius: 20px;
  position: relative;
  padding: 10px 0px;
  transition: 0.5s all;
  color: #2A5B88;
  margin: 30px auto;
}

.common_btn:hover {
  background: #2A5B88;
  color: #FFF;
}

.common_btn_l a:hover {
  color: #fff;
}

.common_btn_l p:hover {
  color: #fff;
}

.common_btn:hover:before {
  color: #FFF;
}

.common_btn:before {
  content: "\f04b";
  transition: 0.5s all;
  font-family: FontAwesome;
  position: absolute;
  left: 15px;
  top: 13px;
  color: #2A5B88;
  font-size: 54%;
}

.common_btn_l {
  width: 360px;
  display: block;
  background: #FFF;
  text-align: center;
  color: #FFF;
  border-radius: 20px;
  position: relative;
  padding: 10px 0px;
  transition: 0.5s all;
  color: #2A5B88;
  margin: 30px auto;
}

.common_btn_2 {
  width: 360px;
  display: block;
  background: #F5F4F0;
  text-align: center;
  color: #FFF;
  border-radius: 20px;
  position: relative;
  padding: 10px 0px;
  transition: 0.5s all;
  color: #2A5B88;
  margin: 30px auto;
}

.common_btn_l:hover {
  background: #2A5B88;
  color: #FFF;
}

.common_btn_2:hover {
  background: #2A5B88;
  color: #FFF;
}

.common_btn_l:hover:before {
  color: #FFF;
}

.common_btn_l:before {
  content: "\f04b";
  transition: 0.5s all;
  font-family: FontAwesome;
  position: absolute;
  left: 15px;
  top: 13px;
  color: #2A5B88;
  font-size: 54%;
}


.itemlist_dl {
  margin-bottom: 15px;
}

.itemlist_dl dt {
  padding-left: 18px;
  margin-bottom: 8px;
  font-size: 94%;
  position: relative;
  box-sizing: border-box;
}

.itemlist_dl dt:before {
  content: "・";
  position: absolute;
  left: 0px;
  top: 0px;
}

.itemlist_dl dt:last-child {
  margin-bottom: 0px;
}

.checklist {
  padding: 30px 0px;
}

.checklist li {
  padding: 20px 20px 20px 35px;
  margin-bottom: 15px;
  position: relative;
  width: 100%;
  font-size: 134%;
  text-align: left;
  box-sizing: border-box;
  background: #FFF;
}

.checklist li:before {
  content: "\f00c";
  font-family: FontAwesome;
  position: absolute;
  font-size: 18px;
  left: 10px;
  top: 22px;
  color: #2A5B88;
}

.checklist li:last-child {
  margin-bottom: 0px;
}

.thesis ul li {
  padding-left: 18px;
  margin-bottom: 10px;
  position: relative;
  width: 100% !important;
  text-align: left;
}

.thesis ul li:before {
  content: "・";
  position: absolute;
  left: 0px;
  top: 0px;
}

.thesis ul li:last-child {
  margin-bottom: 0px;
}

.thesis ul li span {
  display: inline-block;
  background: #333;
  color: #FFF;
  padding: 2px 10px;
}

.itemlist li {
  padding-left: 18px;
  margin-bottom: 10px;
  position: relative;
  width: 100% !important;
  text-align: left;
  box-sizing: border-box;
}

.itemlist li:before {
  content: "・";
  position: absolute;
  left: 0px;
  top: 0px;
}

.itemlist li:last-child {
  margin-bottom: 0px;
}

.itemlist li span {
  display: inline-block;
  background: #333;
  color: #FFF;
  padding: 2px 10px;
}

.number_list {
  margin-bottom: 25px;
}

.number_list li {
  counter-increment: section;
  font-size: 100%;
  display: block;
  margin-bottom: 8px;
  padding-left: 20px;
  position: relative;
  line-height: 1.5;
}

.number_list li:before {
  content: counter(section) ".";
  font-weight: 500;
  position: absolute;
  left: 0px;
  color: #2A5B88;
  top: 0px;
}

header {
  width: 100%;
  position: relative;
  margin: 0px auto;
  background: #FFF;
  border-bottom: 4px solid #2A5B88;
}

header .tagline {
  padding: 30px 0px;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

header .tagline .logo {
  max-width: 300px;
  width: 30%;
}

header .tagline .nav__box {
  width: 70%;
}

header .tagline .nav__box .sub__nav {
  display: flex;
  flex-direction: row-reverse;
  margin-bottom: 10px;
}

header .tagline .nav__box .sub__nav li {
  background: url("../img/list_icon.jpg") no-repeat 0px 3px;
}

header .tagline .nav__box .sub__nav li:not(:first-child) {
  margin-right: 25px;
}

header .tagline .nav__box .sub__nav li a {
  display: block;
  padding: 0px 0px 0px 14px;
  font-size: 94%;
}

header .tagline .nav__box .sub__nav li a:hover {
  background: #FFBF00;
  color: #FFF;
}

.nav ul {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.nav ul .nav_contact {
  background: #2A5B88;
  color: #FFF;
  margin-left: 15px;
}

.nav ul .nav_contact:hover {
  background: #6B96BC;
}

.nav ul .nav_applicant {
  background: #FFBF00;
}

.nav ul li.border-none {
  border: none;
}

.nav ul li.border-right {
  border-right: 1px solid #2a5b88;
}

.nav ul .nav_applicant:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -13px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: #FFBF00 transparent transparent transparent;
  border-width: 13px 13px 0 13px;
}

.nav ul .drop_icon:after {
  content: "";
  transition: 0.5s all;
  opacity: 0;
  position: absolute;
  right: 0;
  bottom: -13px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: #FFBF00 transparent transparent transparent;
  border-width: 13px 13px 0 13px;
}

.nav ul .drop_icon:hover:after {
  opacity: 1;
}

.nav ul li {
  text-align: center;
  box-sizing: border-box;
  transition: 0.5s all;
  position: relative;
  width: 20%;
  z-index: 100;
  border: 1px solid #2a5b88;
  border-right: none;
}

.nav ul li a {
  display: block;
  text-decoration: none;
  transition: 0.5s all;
  height: 100%;
  font-size: 94%;
  padding: 7px 0px;
  text-align: center;
  color: #000;
  box-sizing: border-box;
  height: 100%;
  font-weight: bold;
}

.nav ul li a:hover {
  background: #FFBF00;
  color: #FFF;
}

.nav .pc_dropdown {
  width: 300px;
  display: none;
  height: auto;
  position: absolute;
  margin-left: 0px;
  top: 30px;
  left: 0px;
  box-sizing: border-box;
  z-index: 111;
  padding: 10px 10px 0px 10px;
  box-sizing: border-box;
  background: rgba(42, 91, 136, 0.9);
}

.nav .pc_dropdown li {
  width: 95%;
  margin: 0px 0px 5px 0px;
  border-bottom: 1px solid #FFF;
  border-left: none;
  padding: 0px;
  position: relative;
  transition: 0.5s all;
  z-index: 99;
}

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

.nav .pc_dropdown li:before {
  content: "\f10c";
  font-family: FontAwesome;
  position: absolute;
  left: 8px;
  top: 1px;
  color: #FFF;
  font-size: 11px;
}

.nav .pc_dropdown li a {
  display: block !important;
  font-size: 84% !important;
  padding: 0px 10px 7px 25px;
  height: auto !important;
  box-sizing: border-box;
  width: 100%;
  height: 100% !important;
  transition: 0.5s all;
  text-align: left;
  color: #FFF;
}

.nav .pc_dropdown li a:hover {
  background: transparent;
  color: #FFF;
  opacity: 0.7;
}

.wrapper, .main_wrapper {
  width: 1200px;
  margin: 0px auto;
  position: relative;
}

.main_img {
  width: 100%;
  position: relative;
  z-index: 1;
}

.main_img img {
  width: 100%;
}

.opencampus .copy {
  text-align: center;
  font-size: 144%;
  font-weight: bold;
  /*  margin-bottom: 30px;*/
}

.opencampus .lead {
  text-align: center;
  font-size: 114%;
}

.opencampus .btn {
  width: 360px;
  display: block;
  background: #2A5B88;
  text-align: center;
  color: #FFF;
  border-radius: 20px;
  position: relative;
  padding: 10px 0px;
  transition: 0.5s all;
  margin: 10px auto;
}

.opencampus .btn:hover {
  opacity: 0.7;
}

.opencampus .btn:hover:before {
  opacity: 0.7;
}

.opencampus .btn:before {
  content: "\f04b";
  transition: 0.5s all;
  font-family: FontAwesome;
  position: absolute;
  left: 15px;
  top: 13px;
  color: #FFF;
  font-size: 54%;
}

.page__link ul {
  margin-bottom: 30px;
  display: flex;
  flex-wrap: nowrap;
}

.page__link ul li:first-child {
  width: 50%;
  background: #0397bf;
  text-align: center;
  transition: 0.5s all;
  border-right: 1px solid #FFF;
  position: relative;
}

.page__link ul li:last-child {
  width: 50%;
  background: #2A5B88;
  text-align: center;
  transition: 0.5s all;
  border-right: 1px solid #FFF;
  position: relative;
}

.page__link ul li:after {
  content: "\f105";
  font-family: FontAwesome;
  position: absolute;
  top: 30px;
  right: 15px;
  color: #FFF;
}

.page__link ul li:hover {
  opacity: 0.8;
}

.page__link ul li:last-child {
  border-right: none;
}

.page__link ul li a {
  padding: 30px 0px;
  display: block;
  color: #FFF;
}

.teacher__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.teacher__list .box {
  width: 49%;
  background: #FFF;
  padding: 15px;
  box-sizing: border-box;
  margin-bottom: 25px;
}

.teacher__list .box .btn {
  width: 180px;
  display: block;
  background: #2A5B88;
  text-align: center;
  color: #FFF;
  border-radius: 20px;
  position: relative;
  padding: 10px 0px;
  transition: 0.5s all;
  margin: 0px auto;
}

.teacher__list .box .btn:hover {
  background: #2A5B88;
  color: #FFF;
}

.teacher__list .box .btn:hover:before {
  color: #FFF;
}

.teacher__list .box .btn:before {
  content: "\f04b";
  transition: 0.5s all;
  font-family: FontAwesome;
  position: absolute;
  left: 15px;
  top: 13px;
  color: #FFF;
  font-size: 54%;
}

.teacher__list .box .inner {
  padding: 20px 0px;
}

.teacher__list .box .inner .list li {
  padding-left: 18px;
  margin-bottom: 10px;
  position: relative;
  font-size: 94%;
  text-align: left;
}

.teacher__list .box .inner .list li:before {
  content: "・";
  position: absolute;
  left: 0px;
  top: 0px;
}

.teacher__list .box .inner .list li:last-child {
  margin-bottom: 0px;
}

.teacher__list .box .inner .list li span {
  display: inline-block;
  background: #333;
  color: #FFF;
  padding: 2px 10px;
}

.teacher__list .box .inner .lead {
  font-size: 94%;
}

.teacher__list .box .inner .sub_ttl {
  color: #2A5B88;
  margin-bottom: 10px;
  font-size: 104%;
}

.teacher__list .box .name {
  display: flex;
  flex-wrap: nowrap;
}

.teacher__list .box .name .pic img {
  max-width: 100%;
}

.teacher__list .box .name .ttl_box {
  padding-left: 20px;
}

.teacher__list .box .name .ttl_box .sub_ttl {
  font-size: 112%;
  border-left: 5px solid #2A5B88;
  padding-left: 17px;
  margin-bottom: 15px;
}

.teacher__list .box .name .ttl_box .subject {
  font-size: 94%;
}

.teacher__list .box .name .ttl_box .theme {
  color: #2A5B88;
  margin-bottom: 5px;
}

.teacher__list .box .name .ttl_box .list li {
  padding-left: 18px;
  margin-bottom: 5px;
  position: relative;
  text-align: left;
  font-size: 84%;
}

.teacher__list .box .name .ttl_box .list li:before {
  content: "・";
  position: absolute;
  left: 0px;
  top: 0px;
}

.teacher__list .box .name .ttl_box .list li:last-child {
  margin-bottom: 0px;
}

.top__copy {
  padding: 30px;
  max-width: 1200px;
  width: 100%;
  margin: 0px auto;
  position: relative;
}

.top__copy .copy {
  position: absolute;
  z-index: 2;
  right: 30px;
  bottom: 150px !important;
}

.top__copy .copy .box {
  width: 550px;
  height: 280px;
  background: #FFF;
  position: relative;
  box-sizing: border-box;
  padding: 40px;
}

.top__copy .copy .box .sub_ttl {
  position: absolute;
  top: -50px;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
}

.top__copy .copy .box p {
  padding-top: 30px;
  line-height: 1.7;
}

.topics {
  background: #FFF;
  padding: 30px;
  box-sizing: border-box;
}

.topics dl {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  width: 100%;
  margin: 0px auto;
  border-top: 1px solid #CCC;
}

.topics dl dt {
  padding: 20px 20px;
  box-sizing: border-box;
  width: 20%;
  color: #2A5B88;
  border-bottom: 1px solid #CCC;
}

.topics dl dt .blue {
  background: #BFDFFF;
}

.topics dl dt .orange {
  background: #FFD24D;
}

.topics dl dt .green {
  background: #AFEA00;
}

.topics dl dt span {
  display: inline-block;
  padding: 4px 0px;
  width: 110px;
  text-align: center;
  color: #5B5C5E;
  font-size: 84%;
}

.topics dl dd {
  color: #2A5B88;
  width: 75%;
  box-sizing: border-box;
  border-bottom: 1px solid #CCC;
  padding: 22px 0px;
  color: #5B5C5E;
}

.topics dl dd span {
  display: inline-block;
  padding-left: 25px;
}

.topics dl dd a {
  text-decoration: none;
}

.top__news {
  background: url("../img/top_sub_bg.jpg") no-repeat top center;
  max-width: 2000px;
  min-height: 520px;
  width: 100%;
  margin: auto;
}

.top__news .sub_ttl {
  text-shadow: 0px 4px 3px rgba(0, 0, 0, 0.4), 0px 8px 13px rgba(0, 0, 0, 0.1), 0px 18px 23px rgba(0, 0, 0, 0.1);
  color: #FFF;
  font-size: 324%;
  text-align: center;
  padding: 40px 0px;
}

.top__news .news_box {
  max-width: 1050px;
  width: 100%;
  margin: 0px auto;
  background: #FFF;
  padding: 50px;
  box-sizing: border-box;
}

.top__news .news_box dl {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  width: 100%;
  margin: 0px auto;
  border-top: 1px solid #CCC;
}

.top__news .news_box dl dt {
  padding: 20px 20px;
  box-sizing: border-box;
  width: 20%;
  color: #2A5B88;
  border-bottom: 1px solid #CCC;
}

.top__news .news_box dl dt .blue {
  background: #BFDFFF;
}

.top__news .news_box dl dt .orange {
  background: #FFD24D;
}

.top__news .news_box dl dt .green {
  background: #AFEA00;
}

.top__news .news_box dl dt span {
  display: inline-block;
  padding: 4px 0px;
  width: 140px;
  text-align: center;
  color: #5B5C5E;
  font-size: 84%;
}

.top__news .news_box dl dd {
  color: #2A5B88;
  width: 80%;
  box-sizing: border-box;
  border-bottom: 1px solid #CCC;
  padding: 22px 0px;
  color: #5B5C5E;
}

.top__news .news_box dl dd span {
  display: inline-block;
  padding-left: 25px;
}

.top__news .news_box dl dd a {
  text-decoration: none;
}

.calender_tbl table {
  width: 100%;
  border-collapse: collapse;
  box-sizing: border-box;
}

.calender_tbl table .blue {
  background: #2A5B88;
  color: #FFF;
}

.calender_tbl table .orange {
  background: #ef9241;
  color: #FFF;
}

.calender_tbl table .dark_gray {
  background: rgba(152, 152, 152, 0.8);
  color: #FFF;
  font-size: 108%;
}

.calender_tbl table .dark_gray1 {
  background: rgba(249, 206, 169, 0.8);
  color: #2a5b88;
  font-size: 108%;
}

.calender_tbl table tr {
  width: 100%;
}

.calender_tbl table th, .calender_tbl table td {
  box-sizing: border-box;
  text-align: center;
  font-size: 77%;
}

.calender_tbl table th {
  color: #505B5E;
  border: solid 2px #fff;
  vertical-align: middle;
  padding: 15px 10px;
  background: #eee;
  width: 700px;
}

.calender_tbl table td {
  background: white;
  border: solid 2px #fff;
  line-height: 1.5;
  vertical-align: middle;
  background: rgba(239, 239, 239, 0.8);
  padding: 26px 0;
  width: 14%;
}

.calender_tbl table td p {
  margin-bottom: 15px;
  line-height: 1.5;
}

.calender_tbl table td p:last-child {
  margin-bottom: 0px;
}

.visit {
  background: url("../img/visit_bg.jpg") no-repeat top center;
  max-width: 1445px;
  width: 100%;
  margin: 0px auto 40px;
  min-height: 515px;
  box-sizing: border-box;
  padding-top: 400px;
}

.visit .ttl__area {
  position: relative;
  max-width: 1445px;
  width: 100%;
  max-width: 1100px;
  margin: 0px auto;
  z-index: 2;
}

.visit .ttl__area .icon {
  justify-content: center;
  display: flex;
  padding: 50px 0px 20px 0px;
}

.visit .ttl__area .icon li {
  border-radius: 20px;
  box-sizing: border-box;
  background: #2A5B88;
  text-align: center;
  color: #FFF;
  z-index: 3;
  width: 180px;
  position: relative;
  padding: 10px 25px;
}

.visit .ttl__area .icon li:first-child {
  margin-right: 25px;
}

.visit .ttl__area .sub_ttl {
  z-index: 3;
  position: relative;
  padding: 0px;
  box-sizing: border-box;
  font-size: 104%;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
}

.visit .ttl__area:before {
  content: "";
  background: #FFF;
  width: 100%;
  height: 220px;
  position: absolute;
  left: 0px;
  top: 0px;
}

.students {
  background: url("../img/student_bg.jpg") no-repeat top center;
  max-width: 1445px;
  width: 100%;
  margin: 0px auto;
  min-height: 440px;
  box-sizing: border-box;
  padding-top: 400px;
}

.students .box {
  max-width: 1050px;
  width: 100%;
  margin: 0px auto;
  position: relative;
  z-index: 2;
}

.students .box article {
  width: 100%;
  padding: 20px;
  background: #FFF;
  box-sizing: border-box;
  margin-bottom: 50px;
  position: relative;
}

.students .box article .pic {
  position: absolute;
  top: 30px;
  left: 20px;
}

.students .box article .group {
  margin-left: 180px;
}

.students .box article .group .sub_ttl {
  font-size: 164%;
  margin-bottom: 15px;
  line-height: 1.5;
}

.students .box article .group .name {
  text-align: right;
  font-size: 108%;
}

.students .box article .group .name span {
  font-size: 74%;
}

.students .ttl__area {
  position: relative;
  max-width: 1445px;
  width: 100%;
  max-width: 1100px;
  margin: 0px auto;
  z-index: 2;
}

.students .ttl__area .sub_ttl {
  z-index: 3;
  position: relative;
  padding: 50px;
  box-sizing: border-box;
  font-size: 164%;
  line-height: 1.5;
  color: #FFF;
  font-weight: bold;
  text-align: center;
}

.students .ttl__area:before {
  content: "";
  background: #2A5B88;
  width: 100%;
  height: 250px;
  position: absolute;
  left: 0px;
  top: 0px;
}

.top__recomend {
  background: url("/wp-content/uploads/2022/08/top_mid_img_l.jpg") no-repeat top center;
  max-width: 1445px;
  width: 100%;
  margin: 0px auto;
  min-height: 515px;
  box-sizing: border-box;
  padding-top: 400px;
}

.top__recomend .card {
  max-width: 1050px;
  width: 100%;
  margin: 0px auto;
  position: relative;
  z-index: 2;
}

.top__recomend .card a {
  display: block;
  transition: 0.5s all;
}

.top__recomend .card a:hover {
  opacity: 0.6;
}

.top__recomend .card ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.top__recomend .card ul li {
  width: 48%;
  background: #FFF;
  box-sizing: border-box;
  margin-bottom: 20px;
}

.top__recomend .card ul li .outer {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.top__recomend .card ul li .outer .left {
  padding: 30px;
  box-sizing: border-box;
}

.top__recomend .card ul li .outer .left .sub_ttl {
  font-family: "Arial Black", "Arial Bold", Gadget, sans-serif;
  color: #6B96BC;
  position: relative;
  font-size: 224%;
}

.top__recomend .card ul li .outer .left .sub_ttl:after {
  content: "┃";
  color: #2A5B88;
  font: 84%;
}

.top__recomend .card ul li .outer .left .lead {
  font-size: 108%;
  line-height: 1.5;
}

.top__recomend .ttl__area {
  position: relative;
  max-width: 1445px;
  width: 100%;
  max-width: 1100px;
  margin: 0px auto;
  z-index: 2;
}

.top__recomend .ttl__area .sub_ttl {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  z-index: 3;
  position: relative;
  padding: 50px;
  box-sizing: border-box;
}

.top__recomend .ttl__area .sub_ttl .left h2 {
  font-size: 224%;
  line-height: 1.5;
  color: #FFF;
  font-weight: bold;
}

.top__recomend .ttl__area .sub_ttl .right a {
  display: block;
  width: 150px;
  border: 1px solid #FFF;
  text-align: center;
  color: #FFF;
  border-radius: 20px;
  position: relative;
  padding: 10px 0px;
  font-size: 94%;
  transition: 0.5s all;
}

.top__recomend .ttl__area .sub_ttl .right a:hover {
  background: #FFF;
  color: #2A5B88;
}

.top__recomend .ttl__area .sub_ttl .right a:hover:before {
  color: #2A5B88;
}

.top__recomend .ttl__area .sub_ttl .right a:before {
  content: "\f04b";
  transition: 0.5s all;
  font-family: FontAwesome;
  position: absolute;
  left: 20px;
  top: 13px;
  color: #FFF;
  font-size: 54%;
}

.top__recomend .ttl__area:before {
  content: "";
  background: #2A5B88;
  width: 100%;
  height: 250px;
  position: absolute;
  left: 0px;
  top: 0px;
}

.ttl {
  text-align: center;
  margin-bottom: 25px;
  font-weight: bold;
  line-height: 1.5;
  color: #2A5B88;
  font-size: 164%;
}

.ttl1 {
  text-align: center;
  margin-bottom: 25px;
  font-weight: bold;
  line-height: 1.5;
  color: #ffbf00;
  font-size: 164%;
}

.ttl2 {
  text-align: center;
  margin-bottom: 25px;
  font-weight: bold;
  line-height: 1.5;
  color: #0397bf;
  font-size: 164%;
}

.ttl3 {
  text-align: center;
  margin-bottom: 25px;
  font-weight: bold;
  line-height: 1.5;
  color: #000000;
  font-size: 164%;
}

.ttl span {
  color: #000;
  font-size: 74%;
  font-weight: normal;
}

@keyframes vertical {
  0% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0px);
  }
}
.content {
  margin-top: 180px;
}

.top__maker {
  border: 1px solid #E8E8E8;
  position: relative;
  box-sizing: border-box;
  padding: 10px 25px 10px 25px;
}

.top__maker:before {
  content: "";
  background: linear-gradient(to bottom, #ffffff 15%, #e8e8e8 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#ffffff", endColorstr="#e8e8e8",GradientType=0 );
  height: 100%;
  width: 15px;
  position: absolute;
  left: 1px;
  top: 1px;
}

.top__maker:after {
  content: "";
  background: linear-gradient(to bottom, #ffffff 15%, #e8e8e8 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#ffffff", endColorstr="#e8e8e8",GradientType=0 );
  height: 100%;
  width: 15px;
  position: absolute;
  right: 1px;
  top: 1px;
}

.top__maker ul {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.top__maker ul li {
  text-align: center;
  background: linear-gradient(135deg, #ffffff 1%, #eeeeee 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#ffffff", endColorstr="#eeeeee",GradientType=1 );
  border: 1px solid #E8E8E8;
}

.top__maker ul li a {
  display: block;
  padding: 20px 13px 10px;
}

.top__maker ul li .box {
  display: flex;
  justify-content: center;
  align-items: center;
}

.top__maker ul li p {
  font-size: 94%;
  padding-top: 6px;
}

.faq {
  counter-reset: num;
}

.faq dl dt {
  font-size: 108%;
  margin-bottom: 8px;
}

.faq dl dd {
  padding-left: 20px;
  font-size: 94%;
  line-height: 1.5;
  margin-bottom: 25px;
}

.faq .sub_ttl {
  font-size: 108%;
  font-weight: bold;
  margin-bottom: 8px;
  padding-top: 20px;
}

.faq .subject {
  width: 100%;
  border-collapse: collapse;
  box-sizing: border-box;
  max-width: 500px;
}

.faq .subject tr {
  width: 100%;
}

.faq .subject tr td:last-child {
  text-align: center;
}

.faq .subject th, .faq .subject td {
  box-sizing: border-box;
}

.faq .subject th {
  color: #505B5E;
  border: 1px solid #CCC;
  vertical-align: middle;
  font-size: 104%;
  background: #eee;
  padding: 15px 10px;
}

.faq .subject th:first-child {
  width: 75%;
}

.faq .subject td {
  background: white;
  border: 1px solid #CCC;
  line-height: 1.7;
  vertical-align: middle;
  padding: 8px;
}

.faq .cost {
  width: 100%;
  border-collapse: collapse;
  box-sizing: border-box;
}

.faq .cost tr {
  width: 100%;
}

.faq .cost tr td {
  text-align: center;
}

.faq .cost th, .faq .cost td {
  box-sizing: border-box;
}

.faq .cost th {
  color: #505B5E;
  border: 1px solid #CCC;
  vertical-align: middle;
  font-size: 104%;
  background: #eee;
  padding: 15px 10px;
}

.faq .cost td {
  background: white;
  border: 1px solid #CCC;
  line-height: 1.7;
  vertical-align: middle;
  padding: 8px;
}

.faq ul {
  margin-bottom: 40px;
}

.faq ul li {
  border-bottom: 1px dotted #2A5B88;
}

.faq ul li:first-child {
  border-top: 1px dotted #2A5B88;
}

.faq ul li .lead {
  background-color: rgba(255, 255, 255, 0.4);
  position: relative;
  width: 100%;
  box-sizing: border-box;
  padding: 15px 25px 25px 40px;
  display: none;
}

.faq ul li .lead a {
  color: #2A5B88;
  text-decoration: underline;
}

.faq ul li .lead:before {
  content: "A.";
  font-family: Arial, Helvetica, sans-serif;
  position: absolute;
  left: 10px;
  top: 8px;
  color: #2A5B88;
  font-weight: 700;
  text-align: center;
  display: inline-block;
  font-size: 140%;
}

.faq ul li .icon {
  position: absolute;
  width: 14px;
  height: 14px;
  top: 26px;
  right: 10px;
}

.faq ul li .icon span {
  display: inline-block;
  transition: all 0.3s;
  box-sizing: border-box;
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #2A5B88;
}

.faq ul li .icon span:nth-of-type(2) {
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
}

.faq ul li .is-active span:nth-of-type(1) {
  display: none;
}

.faq ul li .is-active span:nth-of-type(2) {
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
}

.faq ul li .faq_ttl {
  color: #2A5B88;
  cursor: pointer;
  padding: 15px 25px 15px 15px;
  position: relative;
  font-size: 108%;
  padding-left: 70px;
  box-sizing: border-box;
  counter-increment: num;
}

.faq ul li .faq_ttl:before {
  content: "Q." counter(num);
  font-family: Arial, Helvetica, sans-serif;
  position: absolute;
  left: 10px;
  top: 11px;
  color: #2A5B88;
  font-weight: 700;
  text-align: center;
  display: inline-block;
  font-size: 134%;
}

.about_sec .chart {
  background: #FFF;
  padding: 30px;
  box-sizing: border-box;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.about_sec .chart .left {
  width: 40%;
}

.about_sec .chart .left img {
  max-width: 100%;
}

.about_sec .chart .right {
  width: 55%;
}

.about_sec .chart .right .inner {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  width: 100%;
}

.about_sec .main_block {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  padding: 70px 0px;
  max-width: 860px;
  margin: 0px auto;
}

.about_sec .main_block .left {
  width: 30%;
  background: url("../img/about_pic.jpg") no-repeat 0px 0px;
  background-size: cover;
}

.about_sec .main_block .right {
  width: 70%;
  background: #FFF;
  position: relative;
}

.about_sec .main_block .right:before {
  content: "";
  position: absolute;
  width: 100%;
  background: #FFF;
  height: 70px;
  right: 0px;
  top: -70px;
}

.about_sec .main_block .right:after {
  content: "";
  position: absolute;
  width: 100%;
  background: #FFF;
  height: 70px;
  right: 0px;
  bottom: -70px;
}

.about_sec .main_block .right .inner {
  padding: 40px;
  box-sizing: border-box;
}

.about_sec .main_block .right .inner .lead {
  line-height: 1.7;
  font-size: 104%;
  margin-bottom: 20px;
}

.about_sec .main_block .right .inner .name {
  text-align: right;
}

.about_sec .main_block .right .inner .name span {
  font-size: 74%;
}

/*//////////////2020807 追加/////////////////*/
.policy {
  padding: 40px 0 20px;
}

.policy_ttl br {
  display: none;
}

.policy_ttl {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}

.policy_ttl p {
  text-align: center;
  width: 30%;
}

.policy_ttl a {
  position: relative;
  display: inline-block;
  text-decoration: none;
  font-size: 110%;
  font-weight: 600;
  color: #ffffff;
  width: 100%;
  background: #2a5b88;
  padding: 10px 0;
  border-radius: 25px;
}

.policy_ttl a:hover {
  background: #ffbf00;
  transition: 0.5s all;
  color: #505b5e;
}

.diploma_box td {
  padding: 10px;
}

.diploma_box, .diploma_box td {
  border: 1px solid #ccc;
  border-collapse: collapse;
  box-sizing: border-box;
}

.diploma_box .dis_ttl {
  vertical-align: middle;
  width: 20%;
  background: #eee;
  text-align: center;
}

.diploma_box .num {
  width: 10%;
  text-align: center;
  vertical-align: middle;
}

.diploma_box td:last-child {
  height: 60px;
  vertical-align: middle;
}

/*//////////////2020807 追加/////////////////*/
.message {
  padding-bottom: 40px;
}

.message ul {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.message ul .pic {
  width: 220px;
}

.message ul .pic img {
  width: 100%;
}

.message ul .pic .name {
  background: #2A5B88;
  box-sizing: border-box;
  padding: 10px;
  font-size: 144%;
  color: #FFF;
}

.message ul .pic .name img {
  width: 100px;
}

.message ul .pic .name span {
  font-size: 54%;
}

.message ul .txt {
  width: 74%;
  padding-left: 40px;
}

.message ul .txt .sub_ttl {
  font-size: 124%;
  margin-bottom: 20px;
}

.message ul .txt .lead {
  line-height: 1.8;
  margin-bottom: 15px;
  margin-left: auto;
}

.second_main_img {
  height: 500px;
  width: 100%;
  max-width: 2000px;
  box-sizing: border-box;
  position: relative;
  background: url("../img/second_bg.jpg") no-repeat 0px 0px;
  background-size: cover;
  /* 	position: fixed;
  z-index:1;
  left: 0;
     top: 125px; */
}

.second_main_img .outer {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  color: #FFF;
  z-index: 3;
  width: 100%;
}

.second_main_img .outer h2 {
  font-size: 204%;
  text-align: center;
  position: relative;
  line-height: 1.3;
  color: #FFF;
  text-shadow: 2px 2px 10px rgba(0, 0, 0, 0.5);
}

.second_main_img .outer h2 span {
  font-size: 44%;
  text-shadow: none;
}

.exam {
  max-width: 860px;
  width: 100%;
  margin: 0px auto;
}

.exam .box {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  margin-bottom: 50px;
  width: 100%;
  box-sizing: border-box;
  padding: 30px;
  background: #FFF;
}

.exam .box .pic {
  max-width: 800px;
  width: 48%;
}

.exam .box .pic img {
  max-width: 100%;
}

.exam .box .group {
  width: 48%;
}

.exam .box .group .sub_ttl {
  font-size: 112%;
  padding: 30px 0px 20px 0px;
}

.exam .box .group .ttl__box {
  display: flex;
  flex-wrap: nowrap;
}

.exam .box .group .ttl__box .count {
  width: 80px;
  height: 80px;
  position: relative;
  color: #FFF;
  background: #000;
}

.exam .box .group .ttl__box .count p {
  position: absolute;
  right: 10px;
  bottom: 0px;
  font-size: 204%;
  font-family: "arial", serif;
}

.exam .box .group .ttl__box .copy {
  padding: 0px 0px 0px 20px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.exam .box .group .ttl__box .copy h3 {
  font-size: 154%;
}

.post {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.post .left {
  width: 30%;
}

.post .left .cat .page_ttl {
  border-top: solid 4px #dedbd4;
  padding: 20px 0;
  font-size: 124%;
  font-weight: bold;
}

.post .left .cat ul.page__nav li {
  border-bottom: 1px solid #CCC;
  position: relative;
  transition: 0.5s all;
}

.post .left .cat ul.page__nav li:hover {
  opacity: 0.7;
}

.post .left .cat ul.page__nav li:before {
  content: "\f105";
  font-family: FontAwesome;
  position: absolute;
  top: 10px;
  left: 10px;
}

.post .left .cat ul.page__nav li a {
  display: block;
  font-size: 90%;
  padding: 12px 0px 12px 30px;
}

.post .left .cat ul.page__nav .active {
  background: #e5e5e5;
}

.post .left .cat ul.page__nav .index {
  background: #000;
  color: #FFF;
}

.post .left .cat ul.page__nav .index a {
  color: #FFF;
  padding: 12px 0px 12px 30px;
}

.post .left .cat ul.page__nav .index:before {
  content: "\f138";
  font-family: FontAwesome;
  position: absolute;
  top: 12px;
  left: 10px;
}

.post .right {
  width: 68%;
}

.post .right .post__box {
  background: #FFF;
  border: 1px solid #CCC;
  margin-bottom: 30px;
}

.post .right .post__box:last-child {
  margin-bottom: 0px;
}

.post .right .post__box .sub_ttl {
  background: #2A5B88;
  color: #FFF;
  font-size: 114%;
  padding: 15px;
  box-sizing: border-box;
}

.post .right .post__box .inner {
  box-sizing: border-box;
  padding: 20px;
  line-height: 1.7;
}

.post .right1 .post__box {
  background: #FFF;
  border: 1px solid #CCC;
  margin-bottom: 30px;
}

.post .right1 .post__box:last-child {
  margin-bottom: 0px;
}

.post .right1 .post__box .sub_ttl {
  background: #2A5B88;
  color: #FFF;
  font-size: 114%;
  padding: 15px;
  box-sizing: border-box;
}

.post .right1 .post__box .inner {
  box-sizing: border-box;
  padding: 20px;
  /*line-height: 1.7;*/
  line-height: 1.3;
}

/*mu作業*/
p.opencampus1 {
  margin-bottom: 30px;
  text-align: center;
  font-size: 120%;
}

p.mail-list {
  text-align: center;
  font-weight: bold;
  font-size: 164%;
  color: #2A5B88;
  line-height: 1.5;
  margin-bottom: 25px;
}

p.alr.kenkyu {
  margin-bottom: 3em;
}

span.indent1 {
  padding: 5em;
}

td.center.line1 {
  width: 12%;
}

span.indent2 {
  padding: 1em;
}

p.kouki-open {
  font-weight: bold;
  font-size: 150%;
  text-align: center;
  text-decoration: underline;
}

h3.open-houkoku {
  font-size: 134%;
  position: relative;
  margin-bottom: 30px;
  line-height: 1.5;
}

h4.opencampus2 {
  font-weight: bold !important;
  font-size: 120%;
  line-height: 1.7;
  margin-top: 5px;
}

p.indent3 {
  text-indent: 1em;
  margin-bottom: 30px;
}

ul.enquete2 li {
  line-height: 1.5;
  list-style-type: circle;
  list-style-position: outside;
  margin-left: 2em;
}

ul.enquete2 {
  margin-bottom: 5px;
}

ul.open-img li {
  display: inline-grid;
  padding-right: 5px;
  padding-bottom: 10px;
}

ul.open-img {
  margin-bottom: 30px;
  text-align: center;
}

.tenji {
  margin-bottom: 50px;
}

span.under2 {
  text-decoration: underline;
}

/*mu作業ここまで*/
/*/////////// footer ////////////*/
footer {
  margin-top: 60px;
}

footer .copy {
  text-align: center;
  padding: 7px 0px;
  color: #FFF;
  background: #2A5B88;
  font-size: 94%;
}

footer .pagetop {
  text-align: center;
}

footer .pagetop_area {
  background: #6B96BC;
  text-align: center;
  font-family: "arial", serif;
  padding: 13px 0px;
  margin-top: 20px;
  font-size: 84%;
}

footer .link {
  padding-top: 30px;
  background: #2A5B88;
}

footer .link .box {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  padding: 40px;
  box-sizing: border-box;
}

footer .link .box .group {
  width: 72%;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

footer .link .box .group div {
  border-left: 1px solid #FFF;
  width: 300%;
  padding-top: 20px;
  padding-left: 30px;
  padding-right: 20px;
  box-sizing: border-box;
}

footer .link .box .group div .sub_ttl {
  margin-bottom: 10px;
  color: #FFF;
}

footer .link .box .group div ul {
  padding-left: 20px;
  margin-bottom: 20px;
}

footer .link .box .group div ul li {
  padding-left: 18px;
  font-size: 90%;
  margin-bottom: 10px;
  position: relative;
  text-align: left;
  color: #FFF;
}

footer .link .box .group div ul li a {
  color: #FFF;
}

footer .link .box .group div ul li:before {
  content: "・";
  position: absolute;
  left: 0px;
  top: 0px;
}

footer .link .box .group div ul li:last-child {
  margin-bottom: 0px;
}

footer .link .box .info {
  color: #FFF;
  max-width: 275px;
  width: 28%;
  padding-right: 30px;
}

footer .link .box .info ul {
  padding-top: 10px;
}

footer .link .box .info ul li {
  margin-bottom: 5px;
}

footer .link .box .info ul li a {
  color: #FFF;
  font-size: 84%;
}

footer .link .box .info p {
  padding: 20px 0px;
  font-size: 84%;
}

footer .link .box .info .contact_btn {
  width: 100%;
  display: block;
  padding: 8px 0px 8px 30px;
  background: #3574AC;
  color: #FFF;
  position: relative;
  line-height: 1;
  transition: 0.5s all;
  margin-bottom: 10px;
  box-sizing: border-box;
}

footer .link .box .info .contact_btn:hover {
  opacity: 0.7;
}

footer .link .box .info .contact_btn:before {
  content: "\f04b";
  transition: 0.5s all;
  font-family: FontAwesome;
  position: absolute;
  left: 12px;
  top: 10px;
  color: #FFF;
  font-size: 8px;
}

footer .link .box .info .access_btn {
  width: 100%;
  display: block;
  padding: 8px 0px 8px 30px;
  box-sizing: border-box;
  background: #6B96BC;
  color: #FFF;
  position: relative;
  line-height: 1;
  transition: 0.5s all;
}

footer .link .box .info .access_btn:hover {
  opacity: 0.7;
}

footer .link .box .info .access_btn:before {
  content: "\f04b";
  transition: 0.5s all;
  font-family: FontAwesome;
  position: absolute;
  left: 12px;
  top: 10px;
  color: #FFF;
  font-size: 8px;
}

.middle_ttl {
  font-size: 134%;
  position: relative;
  margin-bottom: 30px;
  line-height: 1.5;
}

.middle_ttl:before {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 0;
  width: 60px;
  height: 2px;
  background-color: #2A5B88;
}

.sm_ttl_l {
  display: inline-block;
  font-size: 108%;
  color: #FFF;
  padding: 3px 5px;
  margin-bottom: 15px;
  background: #2A5B88;
}

.sm_ttl_l2 {
  display: inline-block;
  font-size: 108%;
  color: #FFF;
  padding: 3px 5px;
  margin-bottom: 15px;
  background: #0397bf;
}

.sm_ttl {
  font-size: 164%;
  margin-bottom: 10px;
}

.local_ttl {
  font-size: 128%;
  border-left: 5px solid #2A5B88;
  padding-left: 17px;
  margin-bottom: 15px;
}

.half__column {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.half__column .btn {
  /*min-width: 360px;*/
  max-width: 360px;
  display: block;
  background: #2A5B88;
  text-align: center;
  color: #2A5B88;
  border-radius: 20px;
  position: relative;
  padding: 10px 0px;
  transition: 0.5s all;
  color: #FFF;
}

.half__column .btn:hover {
  background: #FFF;
  color: #2A5B88;
}

.half__column .btn:hover:before {
  color: #2A5B88;
}

.half__column .btn:before {
  content: "\f04b";
  transition: 0.5s all;
  font-family: FontAwesome;
  position: absolute;
  left: 15px;
  top: 13px;
  color: #FFF;
  font-size: 54%;
}

.half__column .box {
  width: 47%;
}

.half__column_auto {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.half__column_auto div:last-child {
  padding-left: 30px;
}

.card__column {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.card__column .item {
  width: 32%;
}

.card__column:before {
  content: "";
  display: block;
  width: 32%;
  order: 1;
}

.card__column .box {
  width: 48%;
}

.licence table {
  width: 100%;
  border-collapse: collapse;
  box-sizing: border-box;
}

.licence table tr {
  width: 100%;
}

.licence table th, .licence table td {
  box-sizing: border-box;
  padding: 15px 10px;
}

.licence table th {
  color: #505B5E;
  border: 1px solid #CCC;
  vertical-align: middle;
  font-size: 104%;
  background: #eee;
}

.licence table th:first-child {
  width: 25%;
}

.licence table td {
  background: white;
  border: 1px solid #CCC;
  line-height: 1.7;
  vertical-align: middle;
}

.licence table td span {
  display: inline-block;
  background: #2A5B88;
  color: #FFF;
  padding: 3px 10px;
  font-size: 94%;
  margin-right: 10px;
}

.licence table td p {
  margin-bottom: 15px;
  line-height: 1.5;
}

.licence table td p:last-child {
  margin-bottom: 0px;
}

.unit table {
  width: 100%;
  max-width: 640px;
  margin-bottom: 15px;
  border-collapse: collapse;
  box-sizing: border-box;
}

.unit table tr {
  width: 100%;
}

.unit table th, .unit table td {
  box-sizing: border-box;
  text-align: center;
}

.unit table th {
  color: #505B5E;
  border: 1px solid #CCC;
  vertical-align: middle;
  font-size: 104%;
  background: #eee;
  padding: 15px;
}

.unit table th:last-child {
  width: 20%;
}

.unit table td {
  background: white;
  border: 1px solid #CCC;
  line-height: 1.5;
  vertical-align: middle;
  padding: 8px;
}

.enquete table {
  width: 100%;
  margin-bottom: 15px;
  border-collapse: collapse;
  box-sizing: border-box;
}

.enquete table .f100 {
  font-size: 112%;
  line-height: 1.1;
}

.enquete table tr {
  width: 100%;
}

.enquete table th, .enquete table td {
  box-sizing: border-box;
}

.enquete table th {
  color: #505B5E;
  border: 1px solid #CCC;
  vertical-align: middle;
  font-size: 104%;
  background: #eee;
  padding: 15px;
  text-align: center;
}

.enquete table td {
  background: white;
  border: 1px solid #CCC;
  line-height: 1.5;
  vertical-align: middle;
  padding: 8px;
  font-size: 84%;
}

.application dl dt {
  font-size: 114%;
  border-bottom: 1px solid #2A5B88;
  padding-bottom: 5px;
  color: #2A5B88;
  font-weight: nold;
  margin-bottom: 10px;
}

.application dl dd {
  line-height: 1.7;
  margin-bottom: 20px;
}

.voice_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.voice_list article {
  width: 48%;
  background: #FFF;
  padding: 30px;
  box-sizing: border-box;
  border-radius: 5px;
  margin-bottom: 30px;
}

.voice_list article p {
  line-height: 1.7;
}

.voice_list article .sub_ttl {
  background: #6B96BC;
  padding: 10px;
  color: #FFF;
  font-size: 134%;
  margin-bottom: 15px;
}

.voice_list article .sub_ttl span {
  font-size: 74%;
}

.simple_tbl table {
  width: 100%;
  border-collapse: separate;
  box-sizing: border-box;
  min-width: 300px;
  max-width: 500px;
}

.simple_tbl table tr {
  width: 100%;
}

.simple_tbl table th, .simple_tbl table td {
  box-sizing: border-box;
  padding: 10px;
  text-align: left;
}

.simple_tbl table th {
  color: #505B5E;
  font-size: 104%;
  background: #FFF;
}

.simple_tbl table td {
  line-height: 1.5;
}

.curriculum__tbl table {
  width: 100%;
  border-collapse: collapse;
  box-sizing: border-box;
}

.curriculum__tbl table tr {
  width: 100%;
}

.curriculum__tbl table th, .curriculum__tbl table td {
  box-sizing: border-box;
  padding: 15px 10px;
  text-align: center;
}

.curriculum__tbl table th {
  color: #505B5E;
  border: 1px solid #CCC;
  vertical-align: middle;
  font-size: 104%;
  background: #eee;
}

.curriculum__tbl table td {
  background: white;
  border: 1px solid #CCC;
  line-height: 1.5;
  vertical-align: middle;
}

.curriculum__tbl table td p {
  margin-bottom: 15px;
  line-height: 1.5;
}

.curriculum__tbl table td p:last-child {
  margin-bottom: 0px;
}

.table__normal table {
  width: 100%;
  border-collapse: collapse;
  box-sizing: border-box;
}

.table__normal table tr {
  width: 100%;
}

.table__normal table th, .table__normal table td {
  box-sizing: border-box;
  padding: 15px 10px;
}

.table__normal table th {
  color: #505B5E;
  text-align: left;
  width: 30%;
  border: 1px solid #CCC;
  vertical-align: middle;
  font-size: 104%;
  background: #eee;
}

.table__normal table td {
  background: white;
  border: 1px solid #CCC;
  line-height: 1.5;
}

.table__normal table td p {
  margin-bottom: 15px;
  line-height: 1.5;
}

.table__normal table td p:last-child {
  margin-bottom: 0px;
}

.table__normal1 table {
  width: 100%;
  border-collapse: collapse;
  box-sizing: border-box;
}

.table__normal1 table tr {
  width: 100%;
}

.table__normal1 table th, .table__normal1 table td {
  box-sizing: border-box;
  padding: 15px 10px;
}

.table__normal1 table th {
  color: #505B5E;
  text-align: left;
  width: 60%;
  border: 1px solid #CCC;
  vertical-align: middle;
  font-size: 104%;
  background: #eee;
}

.table__normal1 table td {
  background: white;
  border: 1px solid #CCC;
  line-height: 1.5;
}

.table__normal1 table td p {
  margin-bottom: 15px;
  line-height: 1.5;
}

.table__normal1 table td p:last-child {
  margin-bottom: 0px;
}

.table__sp_normal table {
  width: 100%;
  border-collapse: collapse;
  box-sizing: border-box;
}

.table__sp_normal table tr {
  width: 100%;
}

.table__sp_normal table th, .table__sp_normal table td {
  box-sizing: border-box;
  padding: 15px 10px;
}

.table__sp_normal table th {
  color: #505B5E;
  border: 1px solid #CCC;
  vertical-align: middle;
  font-size: 104%;
  background: #eee;
}

.table__sp_normal table td {
  background: white;
  border: 1px solid #CCC;
  line-height: 1.5;
  font-size: 94%;
  vertical-align: middle;
}

.table__sp_normal1 table {
  width: 100%;
  border-collapse: collapse;
  box-sizing: border-box;
}

.table__sp_normal1 table tr {
  width: 100%;
}

.table__sp_normal1 table th, .table__sp_normal1 table td {
  box-sizing: border-box;
  padding: 15px 10px;
}

.table__sp_normal1 table th {
  color: #505B5E;
  border: 1px solid #CCC;
  vertical-align: middle;
  font-size: 104%;
  background: #eee;
}

.table__sp_normal1 table td {
  background: white;
  border: 1px solid #CCC;
  line-height: 1.5;
  font-size: 94%;
  vertical-align: middle;
}

/*/////////// サイトマップ ////////////*/
.sitemap a {
  text-decoration: none;
  color: #505B5E;
}

.sitemap a:hover {
  text-decoration: underline;
}

.sitemap ul {
  display: flex;
  flex-wrap: wrap;
}

.sitemap ul li {
  width: 33.3333333333%;
  font-size: 94%;
  margin-bottom: 10px;
}

.sitemap ul li span {
  color: #2A5B88;
}

/*/////////// プライバシーポリシー ////////////*/
.privacy p {
  line-height: 1.5;
  margin-bottom: 30px;
}

.privacy .sub_ttl {
  font-weight: bold;
  font-size: 124%;
  margin-bottom: 20px;
}

.privacy .info_block {
  background: #f7f7f7;
  padding: 20px;
}

.privacy .info_block a {
  color: #333;
  text-decoration: none;
}

.company_tbl table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 40px 0px;
  box-sizing: border-box;
}

.company_tbl table tr {
  width: 100%;
}

.company_tbl table th, .company_tbl table td {
  box-sizing: border-box;
  padding: 25px 10px;
  font-size: 16px;
  font-size: 100%;
}

.company_tbl table th {
  color: #505B5E;
  text-align: left;
  width: 30%;
  border-bottom: 3px solid #2A5B88;
  vertical-align: middle;
  font-size: 114%;
}

.company_tbl table td {
  background: white;
  border-bottom: 1px solid #CCC;
  line-height: 1.5;
}

.company_tbl table td p {
  margin-bottom: 15px;
  line-height: 1.5;
}

.company_tbl table td p:last-child {
  margin-bottom: 0px;
}

.company_tbl table td span {
  display: inline-block;
  background: #2A5B88;
  padding: 10px 10px;
  text-align: center;
  color: #FFF;
  border-radius: 5px;
  margin-right: 20px;
  font-size: 94%;
}

.company_tbl table td ul {
  display: flex;
  flex-wrap: wrap;
}

.company_tbl table td ul li {
  background: #2A5B88;
  text-align: center;
  color: #FFF;
  border-radius: 5px;
  margin-right: 20px;
  font-size: 94%;
  margin-bottom: 10px;
}

.company_tbl table td ul li a {
  display: block;
  color: #FFF;
  padding: 10px 10px;
}

.kids_room {
  background: #fef7f1;
  box-sizing: border-box;
  padding: 0px;
}

.kids_room .inner {
  padding: 20px;
}

.kids_room .inner .half {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.kids_room .inner .half .box {
  width: 47%;
}

.kids_room .sub_ttl {
  background: #f18f60;
  color: #FFF;
  padding: 13px;
  font-size: 124%;
  box-sizing: border-box;
}

.text__sm {
  font-size: 84%;
}

.alert__box {
  background: #FFF;
  box-sizing: border-box;
  padding: 0px;
}

.alert__box .inner {
  padding: 20px;
}

.alert__box .sub_ttl {
  background: #6B96BC;
  color: #FFF;
  padding: 13px;
  font-size: 124%;
  box-sizing: border-box;
}

.alert {
  margin-bottom: 30px;
}

.alert li {
  padding-left: 18px;
  margin-bottom: 10px;
  position: relative;
  text-align: left;
  line-height: 1.5;
  font-weight: bold;
}

.alert li:before {
  content: "※";
  position: absolute;
  left: 0px;
  top: 0px;
  color: #FF0000;
}

.alert li:last-child {
  margin-bottom: 0px;
}

form table {
  width: 100%;
  border-spacing: 0px;
  margin: 20px 0px;
}

form table th, form table td {
  padding: 25px 10px;
  border-bottom: 1px solid #CCC;
}

form table th {
  width: 25%;
  text-align: left;
}

form table th span {
  margin-left: 5px;
}

form table th .require {
  display: inline-block;
  background: #2A5B88;
  padding: 3px 10px;
  border-radius: 5px;
  color: #FFF;
}

form table td .error {
  color: #FF0000;
  font-weight: 500;
  font-size: 110%;
  display: block;
  margin-top: 10px;
  padding: 20px;
  border: 2px solid #fb4040;
  background: #ffe4e4;
}

form table td .check {
  display: block;
  position: relative;
  padding-left: 1em;
  line-height: 2em;
  font-size: 110%;
}

form table td .check input {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

form table td select {
  border: 1px solid #CCC;
  background: #FFF;
  padding: 10px;
}

form table .normal_txt {
  width: 75%;
}

form table .small_txt {
  width: 50%;
}

form .button_area {
  text-align: center;
  width: 100%;
  margin-bottom: 40px;
}

form .button_area br {
  display: none;
}

form .back_btn {
  border-radius: 5px;
  text-align: center;
  padding: 15px 40px;
  background: #CCC;
  color: #FFF;
  display: inline-block;
  margin-right: 20px;
  margin-top: 5px;
}

form .send_btn {
  border-radius: 5px;
  text-align: center;
  padding: 20px 60px;
  background: #2A5B88;
  color: #FFF;
}

.contact_list ul li {
  border-bottom: 1px solid #CCC;
  padding: 1px 10px 25px 40px;
  position: relative;
  line-height: 1.8;
  margin-bottom: 40px;
}

.contact_list ul li:last-child {
  margin-bottom: 0px;
}

.contact_list ul li:before {
  content: "\f111";
  font-family: FontAwesome;
  color: #6B7887;
  position: absolute;
  left: 10px;
  top: 0px;
  font-size: 110%;
}

.contact {
  margin-bottom: 30px;
  box-sizing: border-box;
  color: #525252;
}

.contact .lead {
  margin-bottom: 20px;
  padding: 10px;
  box-sizing: border-box;
  text-align: center;
}

.contact .sub_ttl {
  border-bottom: 1px solid #DDDDDD;
  font-size: 134%;
  padding-bottom: 20px;
  margin-bottom: 30px;
  text-align: center;
}

.contact .require {
  display: inline-block;
  background: #2A5B88;
  padding: 3px 10px;
  border-radius: 5px;
  color: #FFF;
  margin-right: 3px;
}

.contact .branch {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  margin-bottom: 40px;
}

.contact .branch .left {
  min-width: 160px;
  width: 20%;
}

.contact .branch .left p {
  background: #DDDDDD;
  padding: 8px 0px;
  text-align: center;
}

.contact .branch .right {
  width: 79%;
}

.contact .branch .right .box {
  border-bottom: 1px solid #DDDDDD;
  padding-bottom: 10px;
  margin-bottom: 20px;
}

.contact .branch .right .box ul {
  padding-left: 30px;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.contact .branch .right .box ul li:first-child {
  width: 30%;
  font-weight: bold;
}

.contact .branch .right .box ul li:last-child {
  width: 70%;
}

.horizontal-item {
  display: block;
  margin: 0px 0 10px !important;
}

table {
  margin: 0 auto;
  background: white;
  padding: 15px;
}

td.class_tokushoku_hyou {
  padding: 5px;
}

.table2 {
  border-collapse: collapse;
  border: solid 1px black;
}

td.wid30 {
  border: solid 1px black;
  width: 20%;
  padding: 10px;
}

td.wid60 {
  border: solid 1px black;
  padding: 10px;
}

span.blue {
  color: cornflowerblue;
  font-weight: bold;
}

.box1 {
  width: 980px;
  margin: 0 auto;
  margin-top: 20px;
}

a.underl {
  text-decoration: underline;
  font-weight: 400;
}

.wrapper1, .main_wrapper1 {
  width: 1200px;
  margin: 0px auto;
  position: relative;
  text-align: center;
}

p.pdl90 {
  /* padding-left: 95px; */
  text-indent: 6em;
}

p.examdescri1 {
  text-align: center;
  margin-top: 10px;
}

/*@media screen and (max-width: 1366px) {*/
@media screen and (max-width: 1700px) {
  .top__copy .copy .box {
    width: 550px;
    height: 150px;
    background: #FFF;
    position: relative;
    box-sizing: border-box;
    padding: 40px;
  }
  p.wow.fadeInUp {
    display: none;
  }
}
@media screen and (max-width: 1200px) {
  .exam {
    box-sizing: border-box;
    padding: 0px 20px;
  }
  .exam .box {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
  }
  .exam .box .pic {
    max-width: 800px;
    width: 54%;
  }
  .exam .box .pic img {
    max-width: 100%;
  }
  .exam .box .group {
    width: 45%;
  }
  .students .box {
    max-width: 100%;
    width: 100%;
    margin: 0px auto;
    position: relative;
    z-index: 2;
  }
  .students .box article {
    width: 100%;
    padding: 30px;
    position: relative;
  }
  .students .box article .group {
    margin-left: 160px;
  }
  .students .box article .group .sub_ttl {
    font-size: 164%;
    margin-bottom: 15px;
    line-height: 1.5;
  }
  .students .box article .group .name {
    text-align: right;
    font-size: 108%;
  }
  .students .box article .group .name span {
    font-size: 74%;
  }
  .wrapper, .main_wrapper {
    width: 100%;
    padding: 0px 10px;
    box-sizing: border-box;
  }
  .slide_wrapper {
    width: 100%;
  }
  .second_main_img .page__bottom {
    width: 90%;
    padding: 0px 10px;
    box-sizing: border-box;
  }
  .top__copy {
    padding: 20px;
  }
  .top__copy .bn {
    width: 500px;
  }
  .top__copy .copy {
    position: absolute;
    z-index: 2;
    right: 60px;
    bottom: 20px !important;
  }
  .top__copy .copy .box {
    width: 550px;
    height: 150px; /*height: 280px;*/
    background: #FFF;
    position: relative;
    box-sizing: border-box;
    padding: 40px;
  }
}
@media screen and (max-width: 1100px) {
  .top__copy {
    padding: 20px;
  }
  .top__copy .bn {
    width: 400px;
  }
  .top__copy .copy {
    position: absolute;
    z-index: 2;
    right: 60px;
    bottom: 20px;
  }
  .top__copy .copy .box {
    width: 550px;
    /*height: 280px;*/
    background: #FFF;
    position: relative;
    box-sizing: border-box;
    /*padding: 50px;*/
  }
}
@media screen and (max-width: 1000px) {
  .top__copy .bn {
    width: 350px;
  }
}
.onlinevideo iframe {
  width: 560px;
  height: 315px;
}

@media screen and (max-width: 700px) {
  /*//////////////2020807 追加/////////////////*/
  .policy_ttl {
    justify-content: space-between;
  }
  .policy_ttl a {
    font-size: 80%;
    border-radius: 5px;
    padding: 10px 0;
  }
  .policy_ttl br {
    display: block;
  }
}
/*//////////////20210623 追加/////////////////*/
.movie_box {
  width: 70%;
  background: #FFF;
  padding: 15px;
  box-sizing: border-box;
  margin: 0px auto 25px;
}

.movie_box iframe {
  width: 100%;
  /* 	height:350px; */
  aspect-ratio: 16/9;
}

/* Information ～2023年度 臨床教育シンポジウムを開催しました～ */
.infomation_flex {
  display: flex;
  justify-content: space-around;
  margin-top: 10px;
}

.infomation_flex .img3 {
  width: 30%;
}

.infomation_flex .img3 img {
  max-width: 275px;
}

.infomation_flex .img4 {
  width: 48%;
}

.infomation_flex .img4 img {
  width: 100%;
}

@media screen and (max-width: 860px) {
  .infomation_flex {
    display: block;
  }
  .infomation_flex .img3 {
    width: 100%;
    margin-top: 10px;
  }
  .infomation_flex .img3 img {
    max-width: -webkit-fill-available;
  }
}
a:hover {
  text-decoration: underline;
  opacity: 0.7;
}

/*//////////////202506 追加/////////////////*/
/*TOP*/
.professor_wrap {
  font-family: "Noto Sans JP", AxisStd-Regular, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Meiryo, メイリオ, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  position: relative;
  overflow: hidden;
}
.professor_wrap::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 75.8333%;
  height: 76.044%;
  background: url(../img/top_professor_bg@2x.webp) no-repeat;
  background-size: cover;
  background-position: left bottom;
}
.professor_wrap .sub_ttl {
  font-weight: bold;
  font-size: 280%;
  text-align: center;
  padding-top: 0.5em;
  color: #000;
}
.professor_wrap .professor_box {
  margin-top: 2rem;
}
.professor_wrap .professor_box_inner {
  max-width: 1200px;
  margin: auto;
  padding-top: 24px;
  padding-bottom: 24px;
  padding-left: 24px;
  position: relative;
}
.professor_wrap .professor_box_inner::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  width: 117.3333%;
  height: 100%;
  background: rgba(255, 255, 255, 0.89);
}
.professor_wrap .professor_list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px 25px;
}
.professor_wrap .professor_list li dl dt {
  overflow: hidden;
}
.professor_wrap .professor_list li dl dt img {
  width: 100%;
  transition: all 0.2s ease-out;
}
.professor_wrap .professor_list li dl dd {
  margin: 5px 0 0 0.5em;
}
.professor_wrap .professor_list li dl dd h3 {
  font-size: 112%;
}
.professor_wrap .professor_list li dl dd h3 span {
  font-size: 80%;
  font-weight: 600;
}
.professor_wrap .professor_list li.btn-box {
  position: relative;
}
.professor_wrap .professor_list li.btn-box .common_btn_3 {
  position: absolute;
  top: 63%;
  right: -34px;
}



.common_btn_5 {
  max-width: 420px;
  display: block;
	background: #ffe600;
  text-align: center;
  border-radius:100vh;
  position: relative;
  padding:20px 16px ;
  transition: 0.5s all;
  color: #372e6a;
  margin: 30px auto;
	font-size: 130%;
	font-weight:bold;
	line-height:1;
}
.common_btn_5::before {
  content: "＞";
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
}

.common_btn_5:hover {
  background: #2a5b88;
  color: #FFF;
}


@media screen and (max-width: 1298px) {
  .professor_wrap .professor_list li.btn-box .common_btn_3 {
    right: 0px;
  }
}
.common_btn_3 {
  width: 100%;
  max-width: 275px;
  display: block;
  background: #000000;
  text-align: center;
  color: #FFF;
  position: relative;
  padding: 12px 4px;
  box-sizing: border-box;
  transition: 0.5s all;
  font-weight: 500;
}

.common_btn_4 {
  width: 100%;
  max-width: 195px;
  display: block;
  background: #000000;
  text-align: center;
  color: #FFF;
  position: relative;
  padding: 12px 4px;
  box-sizing: border-box;
  transition: 0.5s all;
  font-weight: 500;
}
.common_btn_4::before {
  content: "＞";
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
}

@media (hover: hover) {
  .professor_list li a:hover dl dt img {
    scale: 1.1;
  }
}
.visit_wrap {
  font-family: "Noto Sans JP", AxisStd-Regular, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Meiryo, メイリオ, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  position: relative;
  padding: 3rem 16px 2rem;
}
.visit_wrap::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 92.39583%;
  height: 100%;
  background: url(../img/top_visit_bg@2x.webp) no-repeat;
  background-size: cover;
  background-position: left bottom;
  right: 0;
  top: 0;
}
.visit_wrap .visit_box {
  max-width: 1260px;
  width: 100%;
  margin: 0px auto;
}
.visit_wrap .sub_ttl {
  font-weight: bold;
  font-size: 240%;
  text-align: left;
  color: #fff;
  text-shadow: 0 0 6px #000;
  position: relative;
  padding-left: 210px;
  line-height: 1.4;
}
.visit_wrap .sub_ttl::before {
  content: "";
  display: inline-block;
  width: 184px;
  height: 184px;
  background-image: url("../img/top_heading_visit.svg");
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%) rotate(-15deg);
}
.visit_wrap .time_table {
  border-collapse: separate;
  border-spacing: 8px;
  background: #e8e6e0;
  margin: inherit;
  padding: 0;
  width: 100%;
}
.visit_wrap .time_table .sp {
  display: none;
}
.visit_wrap .time_table .sp .day {
  font-weight: bold;
  background: #2a5b88;
}
.visit_wrap .time_table .sp th {
  padding: 4px;
}
.visit_wrap .time_table caption {
  background: #2a5b88;
  color: #fff;
  font-weight: bold;
  text-align: center;
  padding: 16px 4px;
  font-size: 140%;
}
.visit_wrap .time_table th {
  background: rgba(110, 126, 201, 0.86);
  color: #fff;
  text-align: center;
  vertical-align: middle;
  font-weight: normal;
}
.visit_wrap .time_table th._tp {
  background: transparent;
}
.visit_wrap .time_table td {
  background: #fff;
  text-align: center;
  vertical-align: middle;
  padding: 4px;
}
.visit_wrap .time_table .cel {
  min-height: 118px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.visit_wrap .time_table thead {
  font-weight: normal;
}
.visit_wrap .time_table thead th {
  padding: 4px;
}
.visit_wrap .time_table thead th:first-child {
  width: 10%;
}
.visit_wrap .time_table thead th:not(:first-child) {
  width: 15%;
}
.visit_wrap .time_table tbody th {
  font-weight: normal;
}
.visit_wrap .time_table tbody th span {
  font-size: 90%;
}
.visit_wrap .time_table tbody td .label {
  font-size: 90%;
  font-weight: bold;
}
.visit_wrap .time_table tbody td .value {
  font-size: 90%;
}
.visit_wrap .time_table .tp {
  background: transparent;
}
.visit_wrap .time_table .caution {
  background: transparent;
  text-align: left;
}
.visit_wrap .visit_column {
  display: flex;
  align-items: center;
  gap: 2%;
  margin-top: 0.8rem;
  margin-left: 3rem;
}
.visit_wrap .visit_column .box {
  max-width: 275px;
}
.visit_wrap .visit_column .box .sup {
  background: rgba(255, 255, 255, 0.81);
  font-weight: bold;
  color: #6e7ec9;
  font-size: 120%;
  line-height: 1.4;
  padding: 1rem 2rem 2rem;
}

.top__voice {
  background: url(../img/top_voice_bg@2x.webp) no-repeat;
  background-size: cover;
  background-position: 0%;
  padding: 3rem 16px;
}
.top__voice .sub_ttl {
  text-align: center;
  font-weight: bold;
  font-size: 270%;
  color: #fff;
  text-shadow: 0 0 6px #000;
  line-height: 1.4;
}
.top__voice ul {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8%;
  margin-top: 13rem;
}
.top__voice ul li {
  width: 100%;
  max-width: 275px;
}

/*professor archive*/
.professor-archive {
  font-family: "Noto Sans JP", AxisStd-Regular, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Meiryo, メイリオ, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.second_main_img2 {
  min-height: 367px;
  padding: 2rem 16px;
  width: 100%;
  box-sizing: border-box;
  position: relative;
  background: url("../img/professor_int_bg@2x.webp") no-repeat 0px 0px;
  background-size: cover;
  /* 	position: fixed;
  z-index:1;
  left: 0;
     top: 125px; */
}
.second_main_img2 .outer {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  color: #FFF;
  z-index: 3;
  width: 100%;
}
.second_main_img2 .outer h2 {
  font-weight: bold;
  font-size: 280%;
  text-align: center;
  color: #000;
  line-height: 1.4;
}

.professor-archive-list li {
  background: #fff;
  padding: 20px;
  display: flex;
  gap: 4%;
}
.professor-archive-list li .box {
  display: flex;
  gap: 2.5%;
  align-items: center;
  flex-basis: calc(100% - 195px - 4%);
}
.professor-archive-list li figure {
  max-width: 275px;
  flex-shrink: 0;
}
.professor-archive-list li figure img {
  max-width: 275px;
  width: 100%;
}
.professor-archive-list li:nth-child(n+2) {
  margin-top: 2rem;
}

.professor-archive-list__content {
  flex-basis: fit-content;
  color: #000;
}
.professor-archive-list__content > p {
  display: inline-block;
  margin-right: 1em;
}
.professor-archive-list__content h3 {
  display: inline-block;
  font-size: 136%;
  font-weight: 600;
}
.professor-archive-list__content h3 span {
  font-size: 84%;
}

.professor-archive-list__btn {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

/*professor single*/
.professor-single {
  font-family: "Noto Sans JP", AxisStd-Regular, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Meiryo, メイリオ, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  counter-reset: number;
}

.professor-single-content {
  background: #fff;
  padding-bottom: 3rem;
}

.professor-single-block._1 {
  padding-right: 50px;
  display: flex;
  align-items: flex-start;
  gap: 5%;
}
.professor-single-block._1 picture {
  flex-basis: 37.5%;
}
.professor-single-block._1 .box {
  margin-top: 2rem;
  flex-basis: 57.5%;
}
.professor-single-block._2 {
  padding-left: 50px;
  padding-right: 50px;
}
.professor-single-block._r {
  margin-top: 3rem;
  padding-left: 50px;
  display: flex;
  gap: 4%;
  align-items: flex-start;
}
.professor-single-block._r picture {
  flex-basis: 47.916%;
}
.professor-single-block._r dl.qa {
  margin-top: 0;
}
.professor-single-block._r .box {
  flex-basis: 48.084%;
}
.professor-single-block._l {
  margin-top: 3rem;
  padding-right: 50px;
  display: flex;
  align-items: flex-start;
  gap: 4%;
}
.professor-single-block._l .box {
  flex-basis: 48.084%;
}
.professor-single-block._l picture {
  flex-basis: 47.916%;
}
.professor-single-block._l dl.qa {
  margin-top: 0;
}
.professor-single-block._3 {
  padding-left: 50px;
}
.professor-single-block .name {
  color: #000;
}
.professor-single-block .name > p {
  display: inline-block;
  margin-right: 1em;
  font-size: 137.5%;
}
.professor-single-block .name h3 {
  display: inline-block;
  font-size: 162.5%;
  font-weight: 600;
}
.professor-single-block .name h3 span {
  font-size: 84%;
}
.professor-single-block .catch {
  font-weight: 900;
  font-size: 200%;
  line-height: 1.4;
  margin-top: 1em;
}
.professor-single-block dl.qa {
  margin-top: 3rem;
}
.professor-single-block dl.qa dt {
  color: #6e7ec9;
  font-weight: bold;
  font-size: 112%;
  line-height: 1.4;
  padding-left: calc(1.5em + 4px);
  position: relative;
  counter-increment: number;
}
.professor-single-block dl.qa dt::before {
  content: "Q" counter(number, decimal);
  font-weight: bold;
  position: absolute;
  left: 0;
  top: 0;
  line-height: 1.4;
}
.professor-single-block dl.qa dd {
  color: #000;
  line-height: 2;
  letter-spacing: 0.04em;
}
.professor-single-block dl.qa dd:first-of-type {
  margin-top: 1em;
}
.professor-single-block dl.qa dd:not(:first-of-type) {
  margin-top: 2em;
}

.allimg {
  margin-top: 2rem;
}

.professor-nav {
  margin-top: 2rem;
  padding: 24px;
  background: #fff;
}
.professor-nav .professor_list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px 25px;
}
.professor-nav .professor_list li dl dt {
  overflow: hidden;
}
.professor-nav .professor_list li dl dt img {
  width: 100%;
  transition: all 0.2s ease-out;
}
.professor-nav .professor_list li dl dd {
  margin: 5px 0 0 0.5em;
}
.professor-nav .professor_list li dl dd h3 {
  font-size: 112%;
}
.professor-nav .professor_list li dl dd h3 span {
  font-size: 80%;
  font-weight: 600;
}/*# sourceMappingURL=style.css.map */