#header {
  position: fixed !important;
}

.page-lower #main {
  color: #fff;
  background: #3A5AA8;
}
.page-lower #main .title-1 {
}
.page-lower #main .title-1,
.page-lower #main .title-2 {
  color: #fff;
}

.title-1 {
  background-image: url("../images/common/title-1-bg-4.png");
}
.title-1:after {
  background-image: url("../images/common/title-1-bg-3.png");
}

#main .page-nav ul {
  max-width: 450px;
  margin: 0 auto;
}
#main .page-nav ul li {
  width: 49%;
  flex-grow: 0;
}

#breadcrumb {
  color: #fff;
  line-height: 1;
  margin-top: -6.3%;
}

.page-nav-2 ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.page-nav-2 ul li a {
  display: block;
  font-size: 1.7rem;
  text-align: center;
  line-height: 1.5;
  color: #fff;
  padding: .25em;
  border: 1px solid #fff;
  transition: .2s;
}
.page-nav-2 ul li a:hover,
.page-nav-2 ul li a.current {
  background: #0D99DA;
}
@media (max-width:768px) {
  .page-nav-2 ul li {
    width: 49% !important;
  }
  .page-nav-2 ul li:nth-child(1) {
    width: 100% !important;
  }
  .page-nav-2 ul li:nth-child(n+2) {
    margin-top: 2% !important;
  }
}

/* ****************************************************************************************************
   * index
**************************************************************************************************** */

.page-course-index #main .message {
  font-size: 2rem;
  text-align: center;
  margin-bottom: 30px;
}
.page-course-index #main .message b {
  display: block;
  font-size: 2em;
  font-weight: 700;
  font-style: italic;
  line-height: 1.5;
  text-align: center;
}
@media (max-width:768px) {
  .page-course-index #main .message {
    font-size: 1.6rem;
  }
  .page-course-index #main .message b {
    font-size: 1.5em;
  }
  .page-course-index #main .message {
    margin-bottom: 1em;
  }
}
.page-course-index #main .list {
  margin-top: 60px;
}
.page-course-index #main .list .item {
  position: relative;
  display: flex;
  flex-wrap: wrap;
}
.page-course-index #main .list .item:after {
  content: '';
  position: absolute;
  top: 0;
  right: 10px;
  display: block;
  width: 15%;
  height: 100%;
  background: url("../images/course/index/arrow.png") center center /contain no-repeat;
  transition: .2s;
}
.page-course-index #main .list .item:hover:after {
  right: 0;
  background-image: url("../images/course/index/arrow-hover.png");
}
.page-course-index #main .list .item ~ .item {
  margin-top: 50px;
}
.page-course-index #main .list .item .content {
  width: 50%;
  font-size: 1.8rem;
  line-height: 1.5;
  padding-left: 1em;
}
.page-course-index #main .list .item .content .title {
  font-size: 4rem;
  font-weight: 700;
  font-style: italic;
  line-height: 1.5;
  letter-spacing: .2em;
}
.page-course-index #main .list .item .photo {
  width: 50%;
}
.page-course-index #main .list .item .photo > .skew {
  width: 85%;
  transform: skewX(-10deg);
  overflow: hidden;
  border: 3px solid transparent;
  margin: 0 auto;
  transition: .2s;
}
.page-course-index #main .list .item:hover .photo > .skew {
  border: 3px solid #99CC00;
}
.page-course-index #main .list .item .photo > .skew > * {
  position: relative;
  left: -10%;
  width: 120%;
  height: 0;
  padding-top: 59%;
  transform: skewX(10deg);
}
.page-course-index #main .list .item[href*="youji"] .photo > .skew img {
  left: 3%;
}
.page-course-index #main .list .item .photo > .skew img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width:768px) {
  .page-course-index #main .list {
    margin-top: 1em;
  }
  .page-course-index #main .list .item ~ .item {
    margin-top: 30px;
  }
  .page-course-index #main .list .item:after {
    content: none;
  }
  .page-course-index #main .list .item .content,
  .page-course-index #main .list .item .photo {
    width: 100%;
  }
  .page-course-index #main .list .item .photo > .skew {
    width: 100%;
    transform: skewX(0);
  }
  .page-course-index #main .list .item .photo > .skew > * {
    transform: skewX(0);
  }
  .page-course-index #main .list .item .content {
    font-size: 1.5rem;
    padding: 1.25em 1em;
    padding-right: 15%;
    background: url("../images/course/index/arrow.png") right 10px center /auto 75% #333 no-repeat;
    transition: .2s;
  }
  .page-course-index #main .list .item:hover .content {
    background-position: right 5px center;
    background-image: url("../images/course/index/arrow-hover.png");
  }
  .page-course-index #main .list .item .content .title {
    font-size: 3rem;
  }
  .page-course-index #main .list .item .content .title + * {
    margin-top: .25em;
  }
}

.page-course-index #main .gallery {
  padding-bottom: 150px;
}
@media (max-width:768px) {
  .page-course-index #main .gallery {
    padding-bottom: 60px;
  }
}


/* ****************************************************************************************************
   * index
**************************************************************************************************** */

.page-course-test-index #main .bg-shape {
  position: relative;
  background: #fff;
}
.page-course-test-index #main .bg-shape > * {
  position: relative;
  z-index: 1;
}
.page-course-test-index #main .bg-shape:before,
.page-course-test-index #main .bg-shape:after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
}
.page-course-test-index #main .bg-shape:before {
  transform: skewY(-7.1deg);
}
.page-course-test-index #main .bg-shape:after {
  transform: skewY(7.1deg);
}

.page-course-test-index #main .top .line-1 {
  font-size: 4rem;
  font-weight: 700;
  font-style: italic;
  line-height: 1.3;
  text-align: center;
  margin-top: 1.25em;
}
.page-course-test-index #main .top .line-2 {
  font-size: 2rem;
  text-align: center;
  line-height: 1.3;
  margin: 1.25em 0 1.5em;
}
@media (max-width:768px) {
  .page-course-test-index #main .top .line-1 {
    font-size: 2.4rem;
  }
  .page-course-test-index #main .top .line-2 {
    font-size: 1.6rem;
  }
}

.page-nav-index {
  max-width: 750px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 50px;
}
.page-nav-index ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.page-nav-index ul li {
  max-width: 32%;
}
.page-nav-index ul li a {
  display: block;
}
.page-nav-index ul li a img {
  margin-bottom: 15px;
  transition: .2s;
}
.page-nav-index ul li a:hover img {
  filter: brightness(115%);
}
.page-nav-index ul li a div {
  display: block;
  font-size: 2rem;
  text-align: center;
  line-height: 1.3;
  color: #fff;
  padding: .25em;
  border: 1px solid #fff;
  transition: .2s;
}
.page-nav-index ul li a:hover div,
.page-nav-index ul li a.current div {
  background: #0D99DA;
}
@media (max-width:540px) {
  .page-nav-index {
    margin-bottom: 0;
  }
  .page-nav-index ul li a div {
    font-size: 1.6rem;
  }
  /*
  .page-nav-index {
    max-width: 240px;
  }
  .page-nav-index ul {
    width: 100%;
  }
  .page-nav-index ul li {
    max-width: 100% !important;
    margin: 0 auto !important;
  }
  .page-nav-index ul li ~ li {
    margin-top: 1em !important;
  }*/
}


.page-course-test-index #main .section-title {
  font-size: 4rem;
  font-weight: bold;
  font-style: italic;
  letter-spacing: .2em;
  line-height: 1.5;
  text-align: center;
  margin-bottom: .75em;
}
@media (max-width:768px) {
  .page-course-test-index #main .section-title {
    font-size: 3rem;
    letter-spacing: normal;
  }
}

.page-course-test-index #main .message {
  font-size: 2.4rem;
  font-style: italic;
  line-height: 1.5;
  text-align: center;
  margin-bottom: 1em;
}
@media (max-width:768px) {
  .page-course-test-index #main .message {
    font-size: 2rem;
  }
}

.page-course-test-index #main .description {
  max-width: 890px;
  font-size: 1.8rem;
  margin: 60px auto;
}
@media (max-width:768px) {
  .page-course-test-index #main .description {
    font-size: 1.5rem;
    margin: 1.5em auto;
  }
}

.page-course-test-index #main .caption {
  font-size: 1.9rem;
  font-weight: 500;
  font-style: italic;
  line-height: 1.2;
  color: #fff;
  padding: .25em .75em .3em;
  background: #2A2B2F;
}

.page-course-test-index #main .layout-flex-2 {
  justify-content: space-between;
}
.page-course-test-index #main .layout-flex-2 > * {
  width: 48%;
}
@media (max-width:768px) {
  .page-course-test-index #main .layout-flex-2 > * {
    width: 100%;
  }
  .page-course-test-index #main .layout-flex-2 > * ~ * {
    margin-top: 30px;
  }
}

.page-course-test-index #main .gallery {
  max-height: 600px;
  aspect-ratio: 1903 / 600;
  overflow: hidden;
}
.page-course-test-index #main .gallery img {
  width: 100%;
}
@media (max-width:768px) {
  .page-course-test-index #main .gallery {
    aspect-ratio: 736 / 300;
  }
}

.page-course-test-index #main .swiper-gallery {
  z-index: 5;
  padding-bottom: 160px;
}
.page-course-test-index #main .swiper-gallery .swiper-wrapper {
  max-height: 357px;
  aspect-ratio: 1903 / 357;
  overflow: hidden;
}
@media (max-width:768px) {
  .page-course-test-index #main .swiper-gallery {
    padding-top: 40px;
    padding-bottom: 60px;
  }
}

.page-course-test-index #main .swiper-gallery.bg-shape:before,
.page-course-test-index #main .swiper-gallery.bg-shape:after {
  background: #3A5AA8;
}
.page-course-test-index #footer {
  position: relative;
  z-index: 9;
}

img[src*="index/nav-"] {
  aspect-ratio: 240 / 150;
  display: block;
  overflow: hidden;
}
img[src*="support-figure.png"] {
  aspect-ratio: 650 / 233;
  display: block;
  overflow: hidden;
}
@media (max-width:768px) {
  img[src*="support-figure.png"] {
    aspect-ratio: 690 / 356;
  }
}
img[src*="support-1.png"] {
  aspect-ratio: 300 / 190;
  display: block;
  overflow: hidden;
}
img[src*="sougou/1.jpg"],
img[src*="sougou/2.jpg"] {
  aspect-ratio: 480 / 260;
  display: block;
  overflow: hidden;
}
img[src*="sougou/figure.png"] {
  aspect-ratio: 1000 / 240;
  display: block;
  overflow: hidden;
}
@media (max-width:768px) {
  img[src*="sougou/figure.png"] {
    aspect-ratio: 692 / 545;
  }
}
img[src*="youji/1.jpg"] {
  aspect-ratio: 350 / 320;
  display: block;
  overflow: hidden;
}

/* ****************************************************************************************************
   * tokushin
**************************************************************************************************** */

#main .tokushin {
  color: #323940;
  padding-top: 50px;
  padding-bottom: 130px;
}
#main .tokushin .section-title,
#main .tokushin .message {
  color: #3A5AA8;
}
@media (max-width:768px) {
  #main .tokushin {
    padding-top: 30px;
    padding-bottom: 60px;
  }
}

#main .tokushin .section {
  padding-bottom: 130px;
}
@media (max-width:768px) {
  #main .tokushin .section {
    padding-bottom: 50px;
  }
}

#main .tokushin .support {
  margin-top: 80px;
}
@media (max-width:768px) {
  #main .tokushin .support {
    margin-top: 30px;
    margin-bottom: 0;
  }
}
@media (min-width:769px) {
  #main .tokushin .support .col-1 {
    width: 65%;
  }
  #main .tokushin .support .col-2 {
    width: 30%;
  }
}
#main .tokushin .support .col-1 picture {
  margin-top: 1.5em;
}
#main .tokushin .support .col-2 figure {
  width: fit-content;
  margin: 0 auto;
}
#main .tokushin .support .col-2 figcaption {
  font-size: 1.4rem;
  text-align: right;
}
#main .tokushin .support .col-2 .table {
  border: 1px solid #000;
  margin-top: 1em;
}
#main .tokushin .support .col-2 .table dt {
  font-size: 1.6rem;
  font-weight: 500;
  color: #2A2B2E;
  line-height: 1.5;
  padding: .5em .6em;
  background: #AFD7F4;
}
#main .tokushin .support .col-2 .table dd {
  font-size: 1.5rem;
  line-height: 1.5;
  padding: .6em .75em;
}

/* ****************************************************************************************************
   * sougou
**************************************************************************************************** */

#main .sougou {
  z-index: 3;
  padding-top: 50px;
  padding-bottom: 130px;
}
@media (max-width:768px) {
  #main .sougou {
    padding-top: 30px;
    padding-bottom: 60px;
  }
}
#main .sougou.bg-shape:before,
#main .sougou.bg-shape:after {
  background: #3A5AA8;
}
@media (max-width:768px) {
  #main .sougou .figure {
    margin-top: 30px;
  }
}

/* ****************************************************************************************************
   * youji
**************************************************************************************************** */

#main .youji {
  color: #323940;
  z-index: 4;
  padding-top: 50px;
  padding-bottom: 130px;
}
@media (max-width:768px) {
  #main .youji {
    padding-top: 30px;
    padding-bottom: 60px;
  }
}
#main .youji .section-title,
#main .youji .message {
  color: #3A5AA8;
}
#main .youji .col-1 {
  width: 60%;
}
#main .youji .col-2 {
  width: 35%;
}
@media (max-width:768px) {
  #main .youji .col-1,
  #main .youji .col-2 {
    width: 100%;
  }
  #main .youji .col-1 {
    order: 2;
  }
  #main .youji .col-2 {
    text-align: center;
    order: 1;
    margin-top: 0;
    margin-bottom: 30px;
  }
}

#main .youji .box {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.2;
  text-align: center;
  color: #3A5AA8;
  padding: .5em .75em;
  border: 2px solid #3A5AA8;
  border-radius: 2em;
}
@media (max-width:768px) {
  #main .youji .box {
    border-width: 1px;
    border-radius: .75em;
  }
}

#main .youji.figure {
  margin-top: 80px;
}
@media (max-width:768px) {
  #main .youji .figure {
    margin-top: 50px;
  }
}
#main .youji .figure .title {
  font-size: 1.9rem;
  font-weight: 500;
  font-style: italic;
  line-height: 1.3;
  color: #3A5AA8;
  margin-bottom: 1em;
}
#main .youji .figure .figure-wrap {
  font-size: 1.7rem;
  color: #3A5AA8;
}
@media (min-width:769px) {
  #main .youji .figure .figure-wrap .row-1 {
    display: flex;
  }
  #main .youji .figure .figure-wrap .row-1 .col {
    position: relative;
    width: 33.8%;
    text-align: center;
    padding: 1em;
    border: 1px solid #3A5AA8;
    margin-bottom: 20px;
  }
  #main .youji .figure .figure-wrap .row-1 .col:after {
    content: '';
    display: block;
    width: 1px;
    height: 20px;
    background: #3A5AA8;
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateY(100%);
  }
  #main .youji .figure .figure-wrap .row-1 .arrow {
    width: 7.1%;
    text-indent: 100%;
    overflow: hidden;
    background: url("../images/course/youji/arrow-2.png") center center /contain no-repeat;
    transform: translateY(-10px);
  }
  #main .youji .figure .figure-wrap .row-2 {
    padding: 1em;
    border: 1px solid #3A5AA8;
    margin-top: -1px;
  }
}
@media (max-width:768px) {
  #main .youji .figure .figure-wrap .row-1 {
    position: relative;
  }
  #main .youji .figure .figure-wrap .row-1:after {
    content: '';
    position: absolute;
    top: 1.5em;
    left: calc(82% + 30px);
    display: block;
    width: 1px;
    height: 100%;
    background: #3A5AA8;
  }
  #main .youji .figure .figure-wrap .row-1 .col {
    position: relative;
    width: 82%;
    text-align: center;
    padding: .5em .1em;
    border: 1px solid #3A5AA8;
  }
  #main .youji .figure .figure-wrap .row-1 .col:after {
    content: '';
    position: absolute;
    top: 50%;
    right: 0;
    display: block;
    width: 30px;
    height: 1px;
    background: #3A5AA8;
    transform: translateX(100%);
    margin-right: -1px;
  }
  #main .youji .figure .figure-wrap .row-1 .arrow {
    width: 25px;
    height: 25px;
    text-indent: 100%;
    overflow: hidden;
    background: url(../images/course/youji/arrow-2-sp.png) center center /contain no-repeat;
    margin-left: 41%;
    transform: translateX(-50%);
  }
  #main .youji .figure .figure-wrap .row-2 {
    padding: .75em;
    border: 1px solid #3A5AA8;
    margin-top: 1.5em;
  }
}

/* ****************************************************************************************************
   * education
**************************************************************************************************** */

.page-course-education .page-nav-2 ul li {
  width: 19.2%;
}

.page-course-education #main .message {
  font-size: 4rem;
  font-weight: 500;
  font-style: italic;
  text-align: center;
  line-height: 1.5;
  padding: 0 10px;
}
@media (max-width:768px) {
  .page-course-education #main .message {
    font-size: 3rem;
  }
}

.page-course-education #main .wings {
  margin-top: 80px;
}
@media (max-width:768px) {
  .page-course-education #main .wings {
    margin-top: 50px;
  }
}

.page-course-education #main .wings .message {
  margin-bottom: 30px;
}
.page-course-education #main .wings .visual {
}
.page-course-education #main .wings .visual img {
  width: 100%;
}
.page-course-education #main .wings .description {
  max-width: 890px;
  font-size: 1.8rem;
  margin: 80px auto 60px;
}
@media (max-width:768px) {
  .page-course-education #main .wings .description {
    font-size: 1.5rem;
    margin: 30px auto;
  }
}
.page-course-education #main .wings .program-1 {
  justify-content: space-between;
}
.page-course-education #main .wings .program-1 .content {
  width: 48%;
}
.page-course-education #main .wings .program-1 .content .caption {
  font-size: 1.9rem;
  font-weight: 500;
  font-style: italic;
  line-height: 1.2;
  color: #fff;
  padding: .25em .75em .3em;
  background: #2A2B2F;
}
.page-course-education #main .wings .program-1 .content dl {
  display: flex;
  flex-wrap: wrap;
  margin-top: 1em;
}
.page-course-education #main .wings .program-1 .content dl ~ dl {
  margin-top: 10px;
}
.page-course-education #main .wings .program-1 .content dt {
  width: 40%;
  height: 3em;
  text-align: center;
  font-size: 1.9rem;
  font-weight: 500;
  font-style: italic;
  color: #3959A7;
  padding: .5em;
  background: #CAE3FD;
  border-radius: 2em;
}
.page-course-education #main .wings .program-1 .content dd {
  width: 60%;
  font-size: 1.7rem;
}
.page-course-education #main .wings .program-1 .photo {
  width: 49.3%;
}
.page-course-education #main .wings .program-1 .photo img {
  
}
@media (max-width:768px) {
  .page-course-education #main .wings .program-1 .content,
  .page-course-education #main .wings .program-1 .photo {
    width: 100%;
  }
  .page-course-education #main .wings .program-1 .photo {
    margin-top: 30px;
  }
  .page-course-education #main .wings .program-1 .content dl {
    display: block;
  }
  .page-course-education #main .wings .program-1 .content dl ~ dl {
    margin-top: 1.5em;
  }
  .page-course-education #main .wings .program-1 .content dt {
    min-width: 200px;
    width: fit-content;
    height: auto;
    padding: .2em 1em;
    margin: 0 auto;
  }
  .page-course-education #main .wings .program-1 .content dd {
    width: 100%;
    text-align: center;
  }
}

.page-course-education #main .wings .program-2 {
  margin-top: 80px;
}
@media (max-width:768px) {
  .page-course-education #main .wings .program-2 {
    margin-top: 40px;
  }
}
.page-course-education #main .wings .program-2 .title {
  font-size: 1.9rem;
  font-weight: 500;
  line-height: 1.5;
  text-align: center;
  margin-bottom: .75em;
}
.page-course-education #main .wings .program-2 .box {
  padding: 20px 0;
  border: 1px solid #fff;
  border-radius: 15px;
}
.page-course-education #main .wings .program-2 .box .list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly;
}
.page-course-education #main .wings .program-2 .box .list .item {
  width: 46%;
}
.page-course-education #main .wings .program-2 .box .list .item img {
  width: 100%;
}
.page-course-education #main .wings .program-2 .box .list .item figcaption {
  font-size: 1.7rem;
  margin-bottom: 6px;
}
.page-course-education #main .wings .program-2 .box .list .item figcaption b {
  display: inline-block;
  color: #3959A6;
  line-height: 1;
  padding: .4em .75em .5em;
  background: #CAE3FD;
  border-radius: 1em;
  margin-right: .4em;
}
@media (max-width:768px) {
  .page-course-education #main .wings .program-2 .box {
    padding: 15px;
  }
  .page-course-education #main .wings .program-2 .box .list .item {
    width: 100%;
  }
  .page-course-education #main .wings .program-2 .box .list .item ~ .item {
    margin-top: 1em;
  }
  .page-course-education #main .wings .program-2 .box .list .item figcaption {
    font-size: 1.4rem;
  }
}

.page-course-education #main .wings .power {
  margin-top: 80px;
}
.page-course-education #main .wings .power .message {
  font-size: 3rem;
}
.page-course-education #main .wings .power .photo {
  text-align: center;
}
.page-course-education #main .wings .power .content {
  text-align: center;
  margin: 60px 0;
}
.page-course-education #main .wings .power .content b {
  font-size: 1.8rem;
  font-style: italic;
  font-weight: bold;
  display: block;
}
@media (max-width:768px) {
  .page-course-education #main .wings .power {
    margin-top: 50px;
  }
  .page-course-education #main .wings .power .message {
    font-size: 2.4rem;
    margin-bottom: 1em;
  }
  .page-course-education #main .wings .power .content {
    font-size: 1.4rem;
    margin-top: 30px;
  }
  .page-course-education #main .wings .power .content b {
    font-size: 1.1em;
  }
}

/* ****************************************************************************************************
   * wings
**************************************************************************************************** */

#main .wings-program {
  padding-bottom: 130px;
}
@media (max-width:768px) {
  #main .wings-program {
    padding-bottom: 20px;
  }
}
#main .wings-program .message {
  font-size: 2.5rem;
  font-style: italic;
  text-align: center;
  margin-bottom: 1em;
}
@media (max-width:768px) {
  #main .wings-program .message {
    font-size: 2rem;
  }
}
#main .wings-program .list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media (min-width:769px) {
  #main .wings-program .list .item {
    width: 24.62739%;
    margin-left: .49681%;
  }
  #main .wings-program .list .item:nth-child(4n+1) {
    margin-left: 0;
  }
}
@media (max-width:768px) {
  #main .wings-program .list {
    padding: 0 15px;
  }
  #main .wings-program .list .item {
    width: 49%;
  }
  #main .wings-program .list .item:nth-child(n+3) {
    margin-top: 4%;
  }
}
#main .wings-program .list .item .photo {
  position: relative;
  z-index: 1;
  height: 0;
  overflow: hidden;
  padding-top: 57.6368%;
}
#main .wings-program .list .item .photo img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: .4s;
}
#main .wings-program .list .item:hover .photo img {
  transform: scale(1.05);
}
#main .wings-program .list .item .content {
  font-size: 2rem;
  font-weight: 500;
  font-style: italic;
  line-height: 1.5;
  text-align: center;
  color: #fff;
  padding: .5em;
  background: url("../images/course/education/arrow.png") right 10px center /contain no-repeat #0D99DA;
  transition: .2s;
}
#main .wings-program .list .item:hover .content {
  background-position: right 5px center;
}
@media (max-width:768px) {
  #main .wings-program .list .item .content {
    font-size: 1.6rem;
    padding: .25em;
    background-position: right 5px center;
  }
  #main .wings-program .list .item:hover .content {
    background-position: right 0 center;
  }
}

[class*="wings"] #main .page-nav-2 ul li {
  width: 19.2%;
}

[class*="wings"] #main .header .icon {
  width: fit-content;
  display: block;
  font-size: 1.7rem;
  font-weight: bold;
  line-height: 1.5;
  color: #3959A7;
  text-align: center;
  padding: .25em 1em;
  background: #fff;
  border-radius: 2em;
  margin: 0 auto .5em;
}
[class*="wings"] #main .section-title {
  font-size: 4rem;
  font-weight: bold;
  font-style: italic;
  letter-spacing: .2em;
  line-height: 1.5;
  text-align: center;
  margin-bottom: .5em;
}
@media (max-width:768px) {
  [class*="wings"] #main .section-title {
    font-size: 3rem;
    letter-spacing: normal;
  }
}

[class*="wings"] #main .message {
  font-size: 2.4rem;
  font-style: italic;
  line-height: 1.5;
  text-align: center;
  margin-bottom: 1em;
}
@media (max-width:768px) {
  [class*="wings"] #main .message {
    font-size: 2rem;
  }
}

[class*="wings"] #main .description {
  max-width: 890px;
  font-size: 1.8rem;
  margin: 40px auto;
}
@media (max-width:768px) {
  [class*="wings"] #main .description {
    font-size: 1.5rem;
    margin: 1.5em auto;
  }
}

[class*="wings"] #main .caption {
  font-size: 1.9rem;
  font-weight: 500;
  font-style: italic;
  line-height: 1.2;
  color: #fff;
  padding: .25em .75em .3em;
  background: #2A2B2F;
  margin-bottom: 1em;
}

[class*="wings"] #main .caption small {
  display: inline-block;
  font-size: 1.6rem;
  font-weight: normal;
}
[class*="wings"] #main .caption b {
  display: inline-block;
  font-size: 1.7rem;
  font-weight: 500;
  font-style: italic;
  color: #2A2B2F;
  text-align: center;
  padding: .25em .5em .3em;
  background: #fff;
  border-radius: 1em;
  margin-right: .4em;
  margin-top: 2px;
  margin-bottom: 2px;
}

@media (min-width:769px) {
  [class*="wings"] #main .program,
  [class*="wings"] #main .wings-program {
    margin-top: 80px;
  }
}

/* ****************************************************************************************************
   * wings01
**************************************************************************************************** */

.page-course-education-wings01 #main .box {
  justify-content: space-between;
  padding: 1.25em;
  border: 1px solid #fff;
  border-radius: 25px;
  margin-top: 40px;
}
@media (min-width:769px) {
  .page-course-education-wings01 #main .box .content {
    width: 40%;
  }
  .page-course-education-wings01 #main .box .photo {
    width: 56%;
  }
}
.page-course-education-wings01 #main .box .content .icon {
  width: fit-content;
  font-size: 1.9rem;
  font-style: italic;
  line-height: 1.2;
  color: #3959A5;
  padding: .5em .75em;
  background: #CAE3FD;
  border-radius: 1.5em;
  margin-bottom: .5em;
}
.page-course-education-wings01 #main .box .content .message {
  font-size: 3rem;
  font-style: italic;
  font-weight: 500;
  text-align: left;
  margin-bottom: 0;
}
@media (max-width:768px) {
  .page-course-education-wings01 #main .box .content .icon {
    font-size: 1.8rem;
    padding: .25em .75em;
    margin-left: auto;
    margin-right: auto;
  }
  .page-course-education-wings01 #main .box .content .message {
    font-size: 2.8rem;
    text-align: center;
  }
  .page-course-education-wings01 #main .box .photo {
    margin-top: 1em;
  }
}

/* ****************************************************************************************************
   * wings02
**************************************************************************************************** */

.page-course-education-wings02 #main .section-title {
  letter-spacing: normal;
}

.page-course-education-wings02 #main .caption-wrap {
  position: relative;
}
.page-course-education-wings02 #main .caption-wrap .logo {
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
}
.page-course-education-wings02 #main .caption-wrap .logo > * ~ * {
  margin-left: 5px;
}
.page-course-education-wings02 #main .caption-wrap .logo img {
  width: 74px;
}
@media (max-width:768px) {
  .page-course-education-wings02 #main .caption-wrap .logo {
    display: none;
  }
}

.page-course-education-wings02 #main .layout-flex-2 {
  justify-content: space-between;
}
.page-course-education-wings02 #main .layout-flex-2 .col {
  position: relative;
  width: 48%;
}
.page-course-education-wings02 #main .layout-flex-2 .col img {
  width: 100%;
}
.page-course-education-wings02 #main .layout-flex-2 .col .logo {
  position: absolute;
  right: 15px;
  bottom: -15px;
}
.page-course-education-wings02 #main .layout-flex-2 .col .logo img {
  width: 74px;
}
@media (max-width:768px) {
  .page-course-education-wings02 #main .layout-flex-2 .col {
    width: 100%;
  }
  .page-course-education-wings02 #main .layout-flex-2 .col ~ .col {
    margin-top: 20px;
  }
  .page-course-education-wings02 #main .layout-flex-2 .col .logo {
    width: 23%;
    right: 3%;
    bottom: -3%;
    text-align: right;
  }
}

.page-course-education-wings02 #main .row-1 {
  margin-top: 60px;
  margin-bottom: 60px;
}
@media (max-width:768px) {
  .page-course-education-wings02 #main .row-1 {
    margin-top: 30px;
    margin-bottom: 30px;
  }
}

/* ****************************************************************************************************
   * wings03
**************************************************************************************************** */

.page-course-education-wings03 #main .caption {
  margin-bottom: 0;
}

.page-course-education-wings03 #main figure figcaption {
  font-size: 1.4rem;
  color: #fff;
  text-align: center;
  padding: .25em .5em;
  background: #44474C;
  margin-top: 5px;
}

.page-course-education-wings03 #main .layout-flex-2 {
  justify-content: space-between;
}
.page-course-education-wings03 #main .layout-flex-2 .col {
  position: relative;
  width: 48%;
}
.page-course-education-wings03 #main .layout-flex-2 .col img {
  width: 100%;
}
@media (max-width:768px) {
  .page-course-education-wings03 #main .layout-flex-2 .col {
    width: 100%;
  }
  .page-course-education-wings03 #main .layout-flex-2 .col ~ .col {
    margin-top: 20px;
  }
}

.page-course-education-wings03 #main .note {
  position: relative;
  margin-top: 5px;
}
.page-course-education-wings03 #main .note > * {
  padding: .5em 1.5em;
  background: url("../images/course/wings03/note-bg-body.png") center 0 /100% auto repeat-y;
}
.page-course-education-wings03 #main .note:before {
  content: '';
  display: block;
  width: 100%;
  height: 0;
  padding-top: 6.4315%;
  background: url("../images/course/wings03/note-bg.png") center 0 /100% 100% no-repeat;
}
.page-course-education-wings03 #main .note:after {
  content: '';
  display: block;
  width: 100%;
  height: 0;
  padding-top: 2.4896%;
  background: url("../images/course/wings03/note-bg-bottom.png") center 0 /100% 100% no-repeat;
}
.page-course-education-wings03 #main .note .title {
  font-size: 1.9rem;
  font-weight: 500;
  font-style: italic;
  line-height: 1.2;
  margin-bottom: .5em;
}
.page-course-education-wings03 #main .note .profile {
  margin-top: 1.5em;
}
.page-course-education-wings03 #main .note .profile .name {
  font-size: 1.9rem;
  font-weight: 500;
  font-style: italic;
  line-height: 1.2;
  margin-bottom: .65em;
}
.page-course-education-wings03 #main .note .profile .name small {
  font-size: 1.4rem;
  font-weight: normal;
  display: inline-block;
}
.page-course-education-wings03 #main .note .profile .layout-flex-2 {
  justify-content: space-between;
}
.page-course-education-wings03 #main .note .profile .layout-flex-2 .photo {
  width: 120px;
}
.page-course-education-wings03 #main .note .profile .layout-flex-2 .content {
  width: calc(100% - 120px);
  font-size: 1.4rem;
  padding-left: 1em;
}
.page-course-education-wings03 #main .note .profile .description {
  font-size: 1.6rem;
  font-style: italic;
  font-weight: 500;
  line-height: 1.2;
  margin: 0;
}
@media (min-width:769px) {
  .page-course-education-wings03 #main .note .profile .description {
    margin-bottom: .2em;
  }
}
@media (max-width:768px) {
  .page-course-education-wings03 #main .note .profile .content p {
    margin-top: 0;
  }
}

.page-course-education-wings03 #main .row-2:after {
  content: '';
  display: block;
  clear: both;
}
@media (min-width:769px) {
  .page-course-education-wings03 #main .row-2 .left {
    width: 48%;
    float: left;
  }
  .page-course-education-wings03 #main .row-2 .right {
    width: 48%;
    float: right;
    margin-top: 0;
  }
}

/* ****************************************************************************************************
   * wings04
**************************************************************************************************** */

.page-course-education-wings04 #main .layout-flex-2 {
  justify-content: space-between;
  margin-top: 40px;
}
.page-course-education-wings04 #main .layout-flex-2 > * {
  width: 48%;
}
@media (max-width:768px) {
  .page-course-education-wings04 #main .layout-flex-2 {
    display: block;
    margin-top: 30px;
  }
  .page-course-education-wings04 #main .layout-flex-2 > * {
    width: 100%;
  }
  .page-course-education-wings04 #main .layout-flex-2 > * ~ * {
    margin-top: 30px;
  }
}

.page-course-education-wings04 #main .layout-flex-3 {
  justify-content: space-between;
}
.page-course-education-wings04 #main .layout-flex-3 > * {
  width: 31%;
}
.page-course-education-wings04 #main .layout-flex-3 figcaption {
  font-size: 1.4rem;
  margin-top: .5em;
}
@media (max-width:768px) {
  .page-course-education-wings04 #main .layout-flex-3 {
    display: block;
  }
  .page-course-education-wings04 #main .layout-flex-3 > * {
    width: fit-content;
    margin: 0 auto;
  }
  .page-course-education-wings04 #main .layout-flex-3 > * ~ * {
    margin-top: 20px;
  }
}