aside.jsOpenMenu.absolute i,
aside.jsOpenMenu.absolute b,
.menuBtnBlackWhite aside.jsOpenMenu.absolute i,
.menuBtnBlackWhite aside.jsOpenMenu.absolute b {
  border-bottom-color: #000;
}

h1 {
  font-size: 6.41vw;
  padding: 15.72vw 12.82vw 0;
}

#intro {
  position: relative;
  margin: 0 0 12.82vw;
}

#intro p {
  position: absolute;
  bottom: 12.5vw;
  padding: 0 12.82vw;
  font-size: 3.59vw;
  line-height: 6.37vw;
}

#mainDescription {
  width: 50.77vw;
  padding: 10.56vw 0 11.56vw 0;
  margin-left: 12.82vw;
  font-size: 3.59vw;
  line-height: 5.87vw;
}

#AfterTheSecondYear h2,
#LanguageTraining h2 {
  margin: 8vw 0 6vw;
}

.tabContent {
  display: none;
}

.tabContent.active ul.tab {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  text-align: center;
  border-radius: 9999px;
}

.tabContent.active ul.tab li {
  border-radius: 5px;
  padding: 0;
  justify-content: center;
  height: 11.54vw;


}

.tabContent.active ul.tab li:last-child {
  margin-bottom: 5.26vw;
}

.tabContent.active ul.tab li:first-of-type,
.tabContent.active ul.tab li:nth-of-type(2) {
  width: 35.64vw;
  margin-bottom: 10.26vw;

}

.tabContent.active ul.tab li.active {
  background: #000;
}

ul.tab li {
  width: 100%;
  height: 14.62vw;
  padding: 0 5vw;
  margin-bottom: 5.64vw;
  display: flex;
  align-items: center;
  font-size: 4.36vw;
  font-weight: 500;
  background: #EEEEEE;
  border-radius: 9999px;
  justify-content: space-between;
}

ul.tab li.active {
  background: #384D5E;
  color: #fff;
  border-radius: 9999px;
  padding: 0 5vw;
  height: 14.62vw;
  display: flex;
  align-items: center;
  text-align: left;
}

.tabContent.active {
  display: block;
}

ul.tab li svg,
ul.tab li .svg {
  width: 5.64vw;
  height: 5.64vw;
}

.tabWrap {
  padding: 0 12.82vw;
  margin: 0 0 13vw;
}

.tabWrap .tab {
  height: auto;
  margin-bottom: 10vw;
  align-items: center;
}

ul.tab li svg path {
  fill: #fff;
}

ul.tab li svg g {
  fill: #000;
}

ul.tab li.active svg path {
  fill: #384D5E;
}

ul.tab li.active svg g {
  fill: #fff;
}

.tabContent h2 {
  display: flex;
  align-items: center;
  width: 74.36vw;
  height: 11.54vw;
  padding: 0 0 0 5.38vw;
  font-size: 5.13vw;
  font-weight: 500;
  background: #000;
  border-radius: 5px;
  color: #fff;
  margin: 0 auto 9.74vw;
}

#flow {
  padding: 0 12.82vw;
  /* height: 362vw; */
  height: auto;
}

#DNA {
  height: 163vw;
}

.dnaItemText {
  padding: 0 12.82vw;
}

.dnaItem>img {
  width: 100%;
}

.dnaItemText .Ttl {
  text-align: center;
  font-weight: 500;
  padding: 10.26vw 0 5.64vw;
  font-size: 4.62vw;
  line-height: 5.64vw;
}

.dnaItemText p {
  font-weight: 300;
  font-size: 3.59vw;
  line-height: 5.64vw;
}

.dnaItemText p:nth-of-type(2) {
  padding-bottom: 5.67vw;
}

.dnaItemText p b {
  font-weight: 500;
}

#TrainingCap {
  font-size: 3.59vw;
  line-height: 6.37vw;
  padding: 0 0 11.69vw;
}

#flow .tabContent h2 {
  margin: 6.85vw auto 5.69vw;
  font-size: 4.62vw;
}

.smallTxt {
  font-size: 3.59vw;
  line-height: 4.87vw;
}

.attention {
  padding: 5.49vw 0 0;
  padding-left: 1em;
  text-indent: -1em;
}

#Training {
  position: relative;
}

#Training::before {
  content: "";
  display: block;
  width: 92%;
  height: 85%;
  right: 0;
  top: -5vw;
  position: absolute;
  border-left: 3px solid;
  border-image: linear-gradient(to bottom, transparent 19%, #000 19% 96%, transparent 96%);
  border-image-slice: 2;
  z-index: 1;
}

#monthListWrap li {
  display: flex;
  justify-content: space-between;
  align-items: start;
  flex-wrap: wrap;
  font-size: 4.36vw;
  line-height: 8.21vw;
}

#monthListWrap li:first-child {
  padding-bottom: 3vw;
  align-items: baseline;
}

#monthListWrap li div {
  width: 57.28vw;
  padding-bottom: 4.87vw;
}

.monthCircle {
  font-family: "Oswald", "Bebas Neue", "Bebas", "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  display: flex;
  align-items: baseline;
  justify-content: center;
  height: 12.82vw;
  width: 12.82vw;
  font-size: 4.87vw;
  font-weight: 200;
  border-radius: 50%;
  background: #000;
  color: #fff;
  z-index: 2;
  padding: 2vw 0 0;
}

.month {
  font-size: 3.59vw;
}

.markTxt {
  font-weight: 500;
  font-size: 4.1vw;
  line-height: 4.87vw;
}

.markTxt::before {
  content: "・";
  display: inline-flex;
  align-self: center;
  letter-spacing: 0;
  font-size: 6vw;
  text-indent: -2.5vw;
  vertical-align: middle;
  width: 1.4vw;
}

#trainingDetails ul li {
  padding: 0 0 4vw;
}

.manthTtl {
  font-family: "Oswald", "Bebas Neue", "Bebas", "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-size: 4.87vw;
  border-bottom: 1px solid #000;
  padding: 2vw 0;
  margin: 0 0 4vw;
}

.manthTtl span {
  font-size: 3.59vw;
}

#trainingDetails div {
  padding-left: 0;
}

#trainingDetails div div {
  padding-left: 17.18vw;
}

#to4thYear {
  background-color: #fff;
  border: 2px solid #000;
  border-radius: 5px;
  display: flex;
  align-items: center;
  width: 74.36vw;
  height: 11.54vw;
  padding: 0 0 0 5.38vw;
  font-size: 5.13vw;
  font-weight: 500;
  margin: 8.85vw auto 9.74vw;
  position: relative;
  z-index: 2;
}

#to4thYear a {
  color: #000;
  width: 100%;
  padding: 0 4vw 0 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

#to4thYear svg path {
  fill: #fff;
}

#to4thYear svg g {
  fill: #000;
}

#AfterTheSecondYear .cap,
#LanguageTraining .cap {
  font-size: 3.59vw;
  line-height: 6.37vw;
  padding: 0 0 10.69vw;
}

#AfterTheSecondYear ul li,
#LanguageTraining ul li {
  padding: 0 0 4.1vw;
}

#AfterTheSecondYear ul li {
  font-size: 3.59vw;
  line-height: 6.37vw;
}

#to4thYearContent p{
  font-size: 3.2vw;
  line-height: 1.75;
}
#to4thYearContent ul {
  margin: 4vw 0;
}