html {
  font-family: var(--ff-area);
  letter-spacing: .05em;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--ff-area);
  letter-spacing: 0;
}

p,
li {
  font-family: var(--ff-area);
  letter-spacing: 0;
  text-align: left;
}

a,
a:hover,
a:focus {
  font-family: var(--ff-area);
}

ul {
  font-family: var(--ff-area);
}

table th,
table td {
  font-family: var(--ff-area);
  letter-spacing: .05em;
  font-size: .9rem;
}

p.large {
  font-weight: 400;
  line-height: 2em;
  margin-bottom: 1em;
}


h1 small,
.h1 small,
h2 small,
.h2 small,
h3 small,
.h3 small,
h4 small,
.h4 small,
h5 small,
.h5 small,
h6 small,
.h6 small {
  line-height: 1.8em;
}

/*-------------------------
header
-------------------------*/

header h1 {
  font-size: min(15px, 4vw);
}

header .menu li:last-child a {
  font-family: var(--ff-jp);
}

.lang-sp {
  font-family: var(--ff-jp);
}

/*-------------------------
title
-------------------------*/
#page-lead h1 {
  font-size: 1.6rem;
  padding: 0;
}

.tit01 {
  font-family: var(--ff-area);
  letter-spacing: .05em;
  font-size: 1.1rem;
}

.tit01 span {
  font-size: 1.8rem;
  line-height: 1.6em;
}

.tit01 span::after {
  margin: .75em 0;
}

.tit02 {
  font-family: var(--ff-area);
  font-size: 1.05rem;
  margin-bottom: 2em;
}

.tit02 span {
  font-family: var(--ff-marcellus);
  font-weight: 400;
  letter-spacing: .03em;
  font-size: 1.5rem;
  border-bottom: 1px solid var(--purple);
  padding-bottom: .2em;
}

.tit02 span::after {
  display: none;
  width: 0;
  height: 0;
  margin: 0;
}

.tit02 small {
  display: block;
  margin-top: 1em;
}

/*-------------------------
lead
-------------------------*/

#main-lead h2 {
  font-size: min(2.25rem, 6vw);
  margin: 2rem 0;
  font-family: 'Marcellus';
  font-weight: 400;
  line-height: 1.6;
}

/*-------------------------
toc
-------------------------*/

#toc h2,
#bnr-interview h2 {
  line-height: 1.8em;
}

/*-------------------------
page-lead
-------------------------*/


#page-lead h1 {
  font-family: var(--ff-marcellus);
  font-weight: 400;
  font-size: 2rem;
  padding: 0;
  display: inline-block;
  margin: 0 0 0.65em 0;
  line-height: 1.6;
}


/*-------------------------
news
-------------------------*/

.news-cat {
  letter-spacing: 0;
}

.post-body h3 {
  font-family: var(--ff-en) !important;
  font-weight: 400 !important;
  line-height: 1.75em !important;
}

.newsList dd {
  letter-spacing: 0;
}

/*-------------------------
footer
-------------------------*/

#footer h5 {
  margin-top: 1rem;
  font-size: .9rem;
  line-height: 1.8em;
  margin: 1.5rem 0 1rem 0;
}

/*-------------------------
about
-------------------------*/

#admission p strong {
  display: inline-block;
  margin: 1em 0 0 0;
}

/*-------------------------
faculty
-------------------------*/

.faculty-item h5 {
  font-family: var(--ff-marcellus);
  font-weight: 400;
  letter-spacing: .05em;
  font-size: 1.5em;
}


.faculty-item h5 small {
  display: block;
  vertical-align: middle;
  margin: 0 0 1.5em 0;
}

.faculty-img {
  padding-bottom: 1.5rem;
}

.faculty-item p.lecture {
  word-break: break-word;
}


/*-------------------------
curriculum
-------------------------*/

h6.curriculum-arrow {
  letter-spacing: .05em;
  font-size: .9rem;
}

.curriculum-item .grade .en {
  margin-right: .3rem;
}

/*-------------------------
subject
-------------------------*/

.subject-item h5 {
  font-size: 1.1rem;
  border-style: none;
  line-height: 2.25em;
}

.subject-item h5 span {
  border-bottom: 1px solid var(--pink);
  padding-bottom: .1em;
}

.subject-item h6 {
  display: block;
}

.tabs-title>span {
  font-size: .75rem;
}

.tabs-title span span {
  margin-right: .15rem;
}

/*-------------------------
modal
-------------------------*/

.modal-content .tit01 span {
  font-size: 1.5rem;
}

.modal-content p {
  word-break: break-word;
}

/*-------------------------
approach
-------------------------*/

.speakers p {
  margin: 0 0 .5em 0 !important;
}

.speakers h4 {
  font-size: 1.1rem;
  font-family: var(--ff-marcellus);
  font-weight: 400;
  margin: .75em 0 0 0;
  line-height: 1;
}

.speakers h4 small {
  display: block;

}

/*-------------------------
approach
-------------------------*/

#about .approach-item {}


/*-------------------------
media query
-------------------------*/


/* Medium */
@media screen and (max-width: 63.9375em) {}


/* Small */
@media screen and (max-width: 39.9375em) {
  #about .faculty-item {
    align-items: center;
  }
}

/* XSmall */
@media screen and (max-width: 350px) {}