/* width -------------------
---------------------------*/
/* mixin -------------------
---------------------------*/
@font-face {
  font-family: "youko";
  src: url("/font/youko.eot#iefix") format("embedded-opentype"), url("/font/youko.ttf") format("truetype"), url("/font/youko.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
/* color -------------------
---------------------------*/
h1 {
  font-size: 1.375rem;
  margin: 16px;
}

.type-simple01 #mainvisual {
  position: relative;
}
@media (max-width: 768px) {
  .type-simple01 #mainvisual {
    height: 84vh;
  }
  .type-simple01 #mainvisual img, .type-simple01 #mainvisual picture {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.type-simple01 #mainvisual h1, .type-simple01 #mainvisual p, .type-simple01 #mainvisual i {
  position: absolute;
  left: 32px;
}
@media (max-width: 768px) {
  .type-simple01 #mainvisual h1, .type-simple01 #mainvisual p, .type-simple01 #mainvisual i {
    left: 16px;
  }
}
.type-simple01 #mainvisual h1 {
  text-align: left;
  font-size: 2.5rem;
  margin: 0;
  top: 50%;
  transform: translateY(-50%);
}
@media (max-width: 768px) {
  .type-simple01 #mainvisual h1 {
    top: 12%;
    transform: translateY(0);
    font-size: 2rem;
    line-height: 1.4;
  }
}
.type-simple01 #mainvisual h1 em, .type-simple01 #mainvisual h1 span {
  display: block;
}
.type-simple01 #mainvisual p {
  line-height: 1.4;
  font-size: 1rem;
  bottom: 4%;
  width: calc(100% - 64px);
  background: rgba(255, 255, 255, 0.8);
  padding: 16px;
  border-radius: 6px;
}
@media (max-width: 768px) {
  .type-simple01 #mainvisual p {
    width: calc(100% - 32px);
    bottom: 2%;
  }
}
.type-simple01 #mainvisual i {
  background: #ebfab6;
  color: #2ca12c;
  font-weight: bold;
  display: inline-block;
  padding: 0 8px;
  border-radius: 6px;
  top: 16%;
}
@media (max-width: 768px) {
  .type-simple01 #mainvisual i {
    top: 4%;
  }
}
.type-simple01 #mainvisual i span {
  color: #dd5231;
  font-size: 1.6em;
}

.box_voice .staff, .box_voice .star {
  display: none;
}

article.teacher .list_up .addlink {
  display: none;
}

.pref h1 {
  font-size: 1.375rem;
  margin: 16px;
}
.pref h1 span {
  display: block;
}
@media (max-width: 768px) {
  .pref h1 {
    text-align: left;
  }
  .pref h1 span {
    display: inline-block;
    padding: 0 8px;
  }
}

.wood {
  background: url(/image/content/area/parts/wood/head.webp) no-repeat center top/contain, url(/image/content/area/parts/wood/foot.webp) no-repeat center bottom/contain, url(/image/content/area/parts/wood/bg.webp) repeat-y center/contain;
  padding: 18px;
  max-width: 690px;
  margin: 16px auto;
}
.wood.listbox {
  background: url(/image/content/area/parts/wood/img01.webp) no-repeat 96% 94%, url(/image/content/area/parts/wood/head.webp) no-repeat center top/contain, url(/image/content/area/parts/wood/foot.webp) no-repeat center bottom/contain, url(/image/content/area/parts/wood/bg.webp) repeat-y center/contain;
}
@media (max-width: 768px) {
  .wood.listbox {
    background: url(/image/content/area/parts/wood/head.webp) no-repeat center top/contain, url(/image/content/area/parts/wood/foot.webp) no-repeat center bottom/contain, url(/image/content/area/parts/wood/bg.webp) repeat-y center/contain;
  }
}
.wood .checklist {
  margin-top: 0;
}
@media (max-width: 768px) {
  .wood {
    width: 94%;
    margin: 24px auto;
    max-width: 1120px;
  }
}
.wood p {
  padding: 16px 32px;
}
@media (max-width: 768px) {
  .wood p {
    padding: 16px;
  }
}

.texttable {
  width: 100%;
}
.texttable th, .texttable td {
  border: 1px solid #d8d0c1;
  text-align: center;
  padding: 0.3em;
  width: 25%;
}
.texttable th {
  background: #fcf4f4;
}

.teacher .lead {
  text-align: center;
}
.teacher .lead .number {
  background: url(/image/content/area/teacher/index/lead_bg.webp) repeat-y center/100%;
}
@media (max-width: 768px) {
  .teacher .lead .number {
    background-image: url(/image/content/area/teacher/index/sp/lead_bg.webp);
  }
}
.teacher .lead .number p {
  background: rgba(255, 255, 255, 0.8);
  width: 80%;
  margin: 0 auto;
  padding: 16px 8px;
}
.teacher .lead .number strong {
  font-size: 3rem;
  font-weight: bold;
  color: #dd5231;
}
.teacher .lead .number strong::before {
  content: url(/image/content/area/teacher/index/img01.webp);
  margin-right: 8px;
}

.university .maparea {
  background: url(/image/content/area/teacher/intro/teacher_box/head.webp) no-repeat center top/contain, url(/image/content/area/teacher/intro/teacher_box/foot.webp) no-repeat center bottom/contain, url(/image/content/area/teacher/intro/teacher_box/bg.webp) repeat-y center/contain;
  padding: 32px 0;
  text-align: center;
}
.university #mapbox {
  height: 500px;
  width: 90%;
  margin: 0 auto;
}
.university .intro span {
  display: block;
  width: 100%;
  text-align: center;
  color: white;
  font-weight: bold;
  font-size: 1.1em;
  background: #289fb4;
  padding-bottom: 0.4em;
}

.story .list-story {
  width: 94%;
  margin: 24px auto;
  max-width: 1120px;
  padding: 16px;
}
.story .list-story dt {
  font-weight: bold;
}
.story .list-story dd {
  background: url(/image/common/line/dash.webp) repeat-x bottom;
  padding: 8px 16px 16px;
  margin-bottom: 16px;
}
.story .word {
  text-align: center;
  font-weight: bold;
}
.story .word:before, .story .word:after {
  content: url(/image/content/area/story/img03.webp);
  position: relative;
  top: 4px;
}

.campaign .intro {
  position: relative;
  max-width: 768px;
  margin: 0 auto;
}
.campaign .intro h1 {
  margin-bottom: 8px;
}
.campaign .intro .month {
  position: absolute;
  top: 11%;
  left: 5%;
  transform: rotate(-6deg);
  max-width: 7vw;
}
@media (max-width: 768px) {
  .campaign .intro .month {
    width: 9vw;
    top: 6%;
    left: 6%;
    max-width: none;
  }
}
.campaign .intro .num {
  position: absolute;
  bottom: 2%;
  right: 5%;
}
@media (max-width: 768px) {
  .campaign .intro .num {
    position: static;
    text-align: center;
  }
}
.campaign .caution {
  font-size: 0.9em;
  padding-top: 0;
  font-weight: bold;
  color: #dd5231;
  text-align: right;
}
@media (max-width: 768px) {
  .campaign .caution {
    text-align: left;
    padding-top: 16px;
  }
}

.list_teacher {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  width: 94%;
  margin: 24px auto;
  max-width: 1120px;
}
.list_teacher li {
  width: 33.3333333333%;
  text-align: center;
  margin-bottom: 8px;
  padding: 4px;
}
.list_teacher li.female a {
  background: url(/image/content/area/teacher/box/flist_head.webp) no-repeat center top/contain, url(/image/content/area/teacher/box/flist_foot.webp) no-repeat center bottom/contain, url(/image/content/area/teacher/box/flist_bg.webp) repeat-y center/contain;
}
@media (max-width: 768px) {
  .list_teacher li {
    width: 100%;
  }
}
.list_teacher a {
  display: block;
  padding: 4px;
  text-decoration: none;
  background: url(/image/content/area/teacher/box/mlist_head.webp) no-repeat center top/contain, url(/image/content/area/teacher/box/mlist_foot.webp) no-repeat center bottom/contain, url(/image/content/area/teacher/box/mlist_bg.webp) repeat-y center/contain;
}
.list_teacher a img {
  transition: all 0.6s ease-in-out;
}
.list_teacher a:hover img {
  opacity: 1;
  transform: scale(1.05);
}
.list_teacher a > div {
  min-height: 218px;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  overflow: hidden;
}
.list_teacher em, .list_teacher span {
  display: block;
  color: #362a14;
  width: 94%;
  margin: 24px auto;
  max-width: 1120px;
  margin: 0 auto;
  padding: 4px;
}
.list_teacher em {
  border-bottom: 1px dashed #74664b;
}
.list_teacher span {
  font-size: 0.8em;
}
.list_teacher i {
  display: block;
  text-align: right;
  font-size: 0.8em;
  padding: 8px;
}
.list_teacher i::after {
  content: "\e907";
  font-family: "Font Awesome 5 Free";
  line-height: 1;
  padding: 0 4px;
  font-weight: 900;
}/*# sourceMappingURL=page.css.map */