@charset "UTF-8";
@media screen and (min-width: 769px), print {
  .home_kv img {
    width: 100%;
    height: auto;
  }
  .home_area {
    padding: 80px 0 90px;
  }
  .home_area .row {
    position: relative;
  }
  .home_area .com_heading {
    margin-bottom: 60px;
    position: relative;
    z-index: 1;
  }
  .home_area .pic_map {
    position: absolute;
    top: -160px;
    right: -150px;
    pointer-events: none;
  }
  .home_area .pic_map img {
    width: 508px;
  }
  .home_area_wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    gap: 25px;
  }
  .home_area_wrap:not(:last-child) {
    margin-bottom: 25px;
  }
  .home_area_item {
    width: 383px;
  }
  .home_area_item a {
    width: 100%;
    min-height: 80px;
    background-color: #d71317;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
    padding-left: 20px;
  }
  .home_area_item a:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0px 0px 20px 20px;
    border-color: transparent transparent #ffffff transparent;
    -webkit-transform: rotate(0deg);
       -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
            transform: rotate(0deg);
    position: absolute;
    bottom: 0;
    right: 0;
  }
  .home_area_item a .icon {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 35px;
  }
  .home_area_item a .icon.icon01 img {
    width: 55px;
  }
  .home_area_item a .icon.icon02 img {
    width: 61px;
  }
  .home_area_item a .icon.icon03 img {
    width: 68px;
  }
  .home_area_item a .icon.icon04 img {
    width: 59px;
  }
  .home_area_item a .icon.icon05 img {
    width: 69px;
  }
  .home_area_item a span {
    font-size: 2.2rem;
    line-height: 1;
    font-weight: bold;
    color: #fff;
  }
  .home_area_item a span small {
    font-size: 1.6rem;
  }
  .home_area_banner_pic {
    position: relative;
  }
  .home_area_banner_pic img {
    width: 100%;
    height: auto;
  }
  .home_area_banner_pic figcaption {
    font-size: 4rem;
    line-height: 1.5;
    font-weight: bold;
    color: #fff;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 30px;
  }
  .home_course {
    padding: 0 0 115px;
    background-color: #0167c9;
    position: relative;
  }
  .home_course:before {
    content: "";
    width: 100%;
    height: 450px;
    background-color: #0167c9;
    position: absolute;
    top: -110px;
    left: 0;
    -webkit-transform: skewY(-5deg);
       -moz-transform: skewY(-5deg);
        -ms-transform: skewY(-5deg);
            transform: skewY(-5deg);
    pointer-events: none;
  }
  .home_course .com_heading {
    margin-bottom: 75px;
    position: relative;
    z-index: 1;
  }
  .home_course_wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    gap: 60px;
    margin-right: -60px;
    position: relative;
    z-index: 1;
  }
  .home_course_item {
    width: -webkit-calc(33.333% - 60px);
    width: -moz-calc(33.333% - 60px);
    width: calc(33.333% - 60px);
    background-color: #fff;
  }
  .home_course_item .pic img {
    width: 100%;
    height: auto;
  }
  .home_course_item .txt {
    padding: 25px;
  }
  .home_course_item .txt h3 {
    font-size: 2rem;
    line-height: 1.5;
    font-weight: 600;
    margin-bottom: 20px;
    text-align: center;
  }
  .home_course_item .txt .btn_default {
    margin: 0 auto;
  }
  .home_reason {
    padding: 80px 0 20px;
  }
  .home_reason .com_heading {
    margin-bottom: 100px;
  }
  .home_reason_item {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
  .home_reason_item:not(:last-child) {
    margin-bottom: 100px;
  }
  .home_reason_item:nth-child(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
       -moz-box-orient: horizontal;
       -moz-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .home_reason_item .txt h3 {
    font-size: 2.6rem;
    line-height: 40px;
    font-weight: bold;
    margin-bottom: 20px;
  }
  .home_reason_item .txt p {
    font-size: 1.6rem;
    line-height: 28px;
    font-weight: 500;
    -moz-font-feature-settings: "palt" 1;
         font-feature-settings: "palt" 1;
  }
  .home_reason_item .txt .btn_default {
    margin-top: 40px;
  }
  .home_reason_item.item01 {
    gap: 40px;
    -webkit-box-align: end;
       -moz-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  .home_reason_item.item01 .pic {
    width: 514px;
  }
  .home_reason_item.item01 .txt {
    width: -webkit-calc(100% - 514px);
    width: -moz-calc(100% - 514px);
    width: calc(100% - 514px);
    padding-bottom: 40px;
  }
  .home_reason_item.item02 .pic {
    width: 456px;
  }
  .home_reason_item.item02 .txt {
    width: -webkit-calc(100% - 456px);
    width: -moz-calc(100% - 456px);
    width: calc(100% - 456px);
    padding-right: 40px;
    padding-top: 25px;
    margin-bottom: 215px;
  }
  .home_reason_item.item03 {
    margin-top: -215px;
    -webkit-box-align: end;
       -moz-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  .home_reason_item.item03 .pic {
    width: 456px;
  }
  .home_reason_item.item03 .txt {
    width: -webkit-calc(100% - 456px);
    width: -moz-calc(100% - 456px);
    width: calc(100% - 456px);
    padding-left: 40px;
  }
  .home_reason_item.item04 {
    gap: 50px;
  }
  .home_reason_item.item04 .pic {
    width: 514px;
  }
  .home_reason_item.item04 .txt {
    width: -webkit-calc(100% - 514px);
    width: -moz-calc(100% - 514px);
    width: calc(100% - 514px);
    padding-top: 70px;
  }
  .home_anime {
    text-align: center;
    padding: 220px 0 150px;
  }
  .home_anime_logo {
    margin-bottom: 50px;
    -webkit-transform: scale(1.9);
       -moz-transform: scale(1.9);
        -ms-transform: scale(1.9);
            transform: scale(1.9);
    -webkit-transform-origin: center center;
       -moz-transform-origin: center center;
        -ms-transform-origin: center center;
            transform-origin: center center;
    -webkit-transition: -webkit-transform 2.5s ease-out;
    transition: -webkit-transform 2.5s ease-out;
    -moz-transition: transform 2.5s ease-out, -moz-transform 2.5s ease-out;
    transition: transform 2.5s ease-out;
    transition: transform 2.5s ease-out, -webkit-transform 2.5s ease-out, -moz-transform 2.5s ease-out;
  }
  .home_anime.is-inview .home_anime_logo {
    -webkit-transform: scale(1);
       -moz-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
  }
  .home_anime_logo img {
    width: 1135px;
  }
  .home_anime p {
    font-size: 3.2rem;
    line-height: 1;
    font-weight: bold;
    color: #d71317;
  }
  .home_information {
    background-color: #0167c9;
    padding: 95px 0;
  }
  .home_information .row {
    max-width: 1100px;
  }
  .home_information .com_heading {
    margin-bottom: 50px;
  }
  .home_information_wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 60px;
    margin-right: -60px;
  }
  .home_information_item {
    width: -webkit-calc(33.333% - 60px);
    width: -moz-calc(33.333% - 60px);
    width: calc(33.333% - 60px);
    background-color: #fff;
    -moz-border-radius: 20px;
         border-radius: 20px;
    text-align: center;
  }
  .home_information_item a {
    width: 100%;
    padding: 25px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 15px;
  }
  .home_information_item a:hover .arr {
    -webkit-transform: translateX(10px);
       -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
            transform: translateX(10px);
  }
  .home_information_item .ctg {
    max-width: 150px;
    min-height: 30px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: #fff;
    background-color: #0167c9;
    font-size: 1.6rem;
    line-height: 1;
    width: 100%;
    margin: 0 auto 0;
  }
  .home_information_item .date {
    display: block;
    font-size: 1.5rem;
    line-height: 1;
    font-weight: 600;
  }
  .home_information_item h3 {
    font-size: 1.8rem;
    line-height: 1.5;
    font-weight: 400;
  }
  .home_information_item p {
    font-size: 1.6rem;
    line-height: 28px;
    font-weight: 400;
    width: 100%;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .home_information_item .arr {
    width: 36px;
    height: 36px;
    -moz-border-radius: 100%;
         border-radius: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background-color: #0167c9;
    margin: 0 auto;
    -webkit-transition: -webkit-transform 0.3s ease-out;
    transition: -webkit-transform 0.3s ease-out;
    -moz-transition: transform 0.3s ease-out, -moz-transform 0.3s ease-out;
    transition: transform 0.3s ease-out;
    transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out, -moz-transform 0.3s ease-out;
  }
  .home_information_item .arr img {
    width: 16px;
    height: auto;
  }
  .home_information .btn_default {
    margin: 50px auto 0;
  }
  .home_record {
    min-height: 385px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 40px;
    background: url("../img/top/img_record_pc.webp") no-repeat center center/cover;
  }
  .home_record_box {
    position: relative;
    max-width: 380px;
    height: 170px;
    margin: 0 auto;
    border: 2px solid #fff;
  }
  .home_record_box .bg {
    background-color: #889ea6;
    mix-blend-mode: multiply;
    position: absolute;
    width: 100%;
    height: 100%;
  }
  .home_record_ttl {
    position: relative;
    z-index: 1;
    padding: 20px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    z-index: 1;
    height: 100%;
  }
  .home_record_ttl img {
    width: 299px;
  }
  .home_record .btn_wrap .home_record_btn {
    max-width: 192px;
    height: 50px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 1.6rem;
    line-height: 1;
    font-weight: bold;
    -moz-border-radius: 100px;
         border-radius: 100px;
    color: #fff;
    border: 2px solid #fff;
    position: relative;
    margin: 40px auto 0;
  }
  .home_record .btn_wrap .home_record_btn .bg {
    width: 100%;
    height: 100%;
    background-color: #889ea6;
    mix-blend-mode: multiply;
    position: absolute;
    top: 0;
    left: 0;
    -moz-border-radius: 100px;
         border-radius: 100px;
  }
  .home_record .btn_wrap .home_record_btn .text {
    position: relative;
    z-index: 1;
    padding-right: 20px;
    padding-left: 20px;
  }
  .home_record .btn_wrap .home_record_btn .text:after {
    content: "";
    width: 16px;
    height: 6px;
    background: url("../img/arr_white.svg") no-repeat center center/cover;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    right: -10px;
    -webkit-transition: -webkit-transform 0.3s ease-out;
    transition: -webkit-transform 0.3s ease-out;
    -moz-transition: transform 0.3s ease-out, -moz-transform 0.3s ease-out;
    transition: transform 0.3s ease-out;
    transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out, -moz-transform 0.3s ease-out;
  }
  .home_record .btn_wrap .home_record_btn:hover {
    opacity: 1;
  }
  .home_record .btn_wrap .home_record_btn:hover .text:after {
    -webkit-transform: translate(5px, -50%);
       -moz-transform: translate(5px, -50%);
        -ms-transform: translate(5px, -50%);
            transform: translate(5px, -50%);
  }
  .home_voice {
    padding: 100px 0;
    background-color: #d71317;
    overflow: hidden;
  }
  .home_voice .com_heading {
    text-align: left;
    margin-left: 50px;
  }
  .home_voice .com_heading_ja {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 35px;
  }
  .home_voice .com_heading_ja small {
    font-size: 2.8rem;
  }
  .home_voice_wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-transform: skewY(-5deg);
       -moz-transform: skewY(-5deg);
        -ms-transform: skewY(-5deg);
            transform: skewY(-5deg);
    -webkit-transform-origin: center center;
       -moz-transform-origin: center center;
        -ms-transform-origin: center center;
            transform-origin: center center;
  }
  .home_voice_item {
    -webkit-box-flex: 1;
       -moz-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0;
    min-width: 0;
    margin-left: -2px;
    position: relative;
  }
  .home_voice_item a {
    display: block;
    position: relative;
    -webkit-transform: skewY(5deg);
       -moz-transform: skewY(5deg);
        -ms-transform: skewY(5deg);
            transform: skewY(5deg);
    -webkit-transform-origin: center center;
       -moz-transform-origin: center center;
        -ms-transform-origin: center center;
            transform-origin: center center;
  }
  .home_voice_item a:after {
    content: "";
    width: 100%;
    height: 95%;
    background-color: #000;
    position: absolute;
    top: 2.5%;
    left: 0;
    z-index: 1;
    -webkit-transform: skewY(-5deg);
       -moz-transform: skewY(-5deg);
        -ms-transform: skewY(-5deg);
            transform: skewY(-5deg);
    opacity: 0.2;
  }
  .home_voice_item a:hover {
    opacity: 1;
  }
  .home_voice_item a:hover .pic img {
    -webkit-filter: grayscale(0);
            filter: grayscale(0);
  }
  .home_voice_item .pic {
    overflow: hidden;
  }
  .home_voice_item .pic img {
    width: 100%;
    height: auto;
    display: block;
    -webkit-filter: grayscale(100%);
            filter: grayscale(100%);
    -webkit-transition: -webkit-filter 0.3s ease;
    transition: -webkit-filter 0.3s ease;
    -moz-transition: filter 0.3s ease;
    transition: filter 0.3s ease;
    transition: filter 0.3s ease, -webkit-filter 0.3s ease;
  }
  .home_voice_item span {
    display: block;
    font-size: 2.4rem;
    line-height: 32px;
    font-weight: 800;
    color: #fff;
    position: absolute;
    bottom: 15px;
    left: 10px;
    -webkit-transform: skewY(-5deg) translate3d(0, 0, 0);
       -moz-transform: skewY(-5deg) translate3d(0, 0, 0);
            transform: skewY(-5deg) translate3d(0, 0, 0);
    z-index: 2;
  }
  .home_faq {
    padding: 80px 0;
  }
  .home_faq .com_heading {
    margin-bottom: 60px;
  }
  .home_faq_wrap {
    max-width: 900px;
    margin: 0 auto;
  }
  .home_faq_dl {
    margin-bottom: 20px;
    background-color: #0167c9;
    -moz-border-radius: 30px;
         border-radius: 30px;
  }
  .home_faq_dl:last-child {
    margin-bottom: 0;
  }
  .home_faq_dt {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 15px;
    width: 100%;
    padding: 12px;
    font-size: 1.8rem;
    line-height: 1.5;
    font-weight: 500;
    color: #fff;
    cursor: pointer;
    text-align: left;
    border: none;
    -moz-box-sizing: border-box;
         box-sizing: border-box;
  }
  .home_faq_dt::before {
    content: "Q";
    -ms-flex-negative: 0;
        flex-shrink: 0;
    width: 40px;
    height: 40px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -moz-border-radius: 50%;
         border-radius: 50%;
    background-color: #fff;
    font-size: 2rem;
    font-weight: bold;
    color: #0167c9;
    font-family: "Roboto", sans-serif;
  }
  .home_faq_dd {
    height: 0;
    overflow: hidden;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .home_faq_dd .txt {
    font-size: 1.6rem;
    line-height: 1.8;
    color: #fff;
    padding: 10px 20px 20px 67px;
  }
  .bDetail {
    padding-top: 100px;
  }
  .bDetail .detail {
    padding: 80px 0 100px;
  }
  .bDetail .detail .ttl_box {
    padding-bottom: 10px;
    border-bottom: 2px solid #e60012;
    margin-bottom: 50px;
  }
  .bDetail .detail .ttl_box .ttlSt01 {
    margin-bottom: 0;
    color: #000000;
    font-size: 4.62963rem;
    font-weight: bold;
    letter-spacing: 4px;
  }
  .bDetail .detail .ttl_box .ttlSt01 span {
    display: inline-block;
    margin-left: 10px;
    letter-spacing: 2px;
    font-size: 1.66667rem;
    line-height: 1;
    font-weight: 500;
    color: #3e3a39;
    margin-top: 5px;
  }
  .bDetail .detail .detail_inner {
    margin-bottom: 30px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -moz-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .bDetail .detail .detail_inner .detail_meta {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -moz-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 5px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .bDetail .detail .detail_inner .detail_meta .detail_time_date {
    font-size: 5.55556rem;
    color: #e60012;
    display: block;
    text-align: left;
    width: 100%;
    font-weight: bold;
    line-height: 1;
  }
  .bDetail .detail .detail_inner .detail_meta .detail_time_month_year {
    font-size: 1.2963rem;
    display: block;
    text-align: left;
    margin-left: 23px;
    width: 100%;
  }
  .bDetail .detail .detail_inner .detail_meta_top .txt_top {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .bDetail .detail .detail_inner .detail_meta_top .txt_top span {
    color: red;
    font-size: 4rem;
    font-weight: bold;
  }
  .bDetail .detail .detail_inner .detail_meta_top .txt_top h3 {
    font-size: 3rem;
    font-weight: bold;
    margin-left: 20px;
  }
  .bDetail .detail .detail_inner .school_from {
    margin-bottom: 15px;
    font-size: 2rem;
    font-weight: bold;
  }
  .bDetail .detail .detail_inner .school_from small {
    margin-left: 15px;
  }
  .bDetail .detail .detail_inner .comment_box {
    margin-bottom: 15px;
  }
  .bDetail .detail .detail_inner .comment_box h5 {
    font-size: 2rem;
    font-weight: bold;
    color: #e5959c;
  }
  .bDetail .detail .detail_inner .face-photto {
    text-align: center;
    margin-bottom: 20px;
  }
  .bDetail .detail .detail_inner .face-photto img {
    width: 60%;
  }
  .bDetail .detail .detail_inner .content_dt {
    width: 100%;
    max-width: 850px;
  }
  .bDetail .detail .detail_inner .content_dt .cate_detail {
    padding: 9px 35px;
    color: #fff;
    background: #e60012;
    font-size: 1.6rem;
    line-height: 1;
    display: inline-block;
    margin-bottom: 30px;
    margin-top: 10px;
    text-align: center;
  }
  .bDetail .detail .detail_inner .detail_title {
    font-size: 3.33333rem;
    font-weight: bold;
    margin-bottom: 20px;
  }
  .bDetail .detail .detail_inner .detail_txt {
    color: #666666;
    font-size: 1.66667rem;
  }
  .bDetail .detail .detail_inner .detail_txt p {
    margin-top: 10px;
    line-height: 1.8;
  }
  .bDetail .detail .detail_inner .detail_txt p:not(:first-child) {
    margin-top: 5px;
  }
  .bDetail .detail .detail_inner .detail_txt img {
    margin-top: 10px;
    max-width: 800px;
    display: block;
    margin: 20px 0;
  }
  .bDetail .detail .detail_inner .detail_txt a {
    color: #0a6ab0;
  }
  .bDetail .detail .detail_inner .detail_btn {
    text-align: center;
    margin-top: 40px;
  }
  .bDetail .detail .detail_inner .detail_btn a {
    padding: 10px 40px;
    color: #fff;
    font-size: 1.66667rem;
    background: #8fc31f;
  }
  .p_policy_content {
    background-color: #0167c9;
    padding: 130px 0;
  }
  .p_policy_box {
    background-color: #fff;
    -moz-border-radius: 20px;
         border-radius: 20px;
    padding: 45px 60px;
  }
  .p_policy_item:not(:last-child) {
    margin-bottom: 140px;
  }
  .p_policy_item h3 {
    font-size: 2.9rem;
    line-height: 48px;
    color: #0167c9;
    font-weight: bold;
    margin-bottom: 40px;
  }
  .p_policy_item p {
    font-size: 1.6rem;
    line-height: 28px;
    font-weight: 600;
  }
  .p_policy_item p + p {
    margin-top: 25px;
  }
  .p_policy_item p.txt_number {
    position: relative;
    padding-left: 20px;
  }
  .p_policy_item p.txt_number span {
    position: absolute;
    top: 0;
    left: 0;
  }
  .p_policy_item p.txt_right {
    text-align: right;
  }
  .p_policy_item .l_number {
    counter-reset: li;
    margin: 25px 0;
  }
  .p_policy_item .l_number li {
    font-size: 1.6rem;
    line-height: 28px;
    font-weight: 600;
    position: relative;
    padding-left: 20px;
  }
  .p_policy_item .l_number li::before {
    counter-increment: li;
    content: counter(li) ".";
    position: absolute;
    top: 0;
    left: 0;
  }
  .p_policy_item .l_dot {
    counter-reset: li;
    margin: 25px 0;
  }
  .p_policy_item .l_dot li {
    font-size: 1.6rem;
    line-height: 28px;
    font-weight: 600;
    position: relative;
    padding-left: 20px;
  }
  .p_policy_item .l_dot li::before {
    content: "・";
    font-size: 1.6rem;
    line-height: 28px;
    font-weight: 600;
    position: absolute;
    top: 0;
    left: 0;
  }
  .p_course .sub_ttl {
    font-size: 2.5rem;
    line-height: 33px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 20px;
  }
  .p_course .sub_ttl.--white {
    color: #fff;
  }
  .p_course .sub_ttl.--blue {
    color: #0167c9;
  }
  .p_course .sub_ttl.--red {
    color: #d71317;
  }
  .p_course_top {
    padding: 140px 0 35px;
    background-color: #0167c9;
    position: relative;
    z-index: 1;
  }
  .p_course_top:before {
    content: "";
    width: 100%;
    height: 450px;
    background-color: #0167c9;
    position: absolute;
    bottom: -100px;
    left: 0;
    -webkit-transform: skewY(-5deg);
       -moz-transform: skewY(-5deg);
        -ms-transform: skewY(-5deg);
            transform: skewY(-5deg);
    pointer-events: none;
    z-index: -1;
  }
  .p_course_top .top_item:not(:last-child) {
    margin-bottom: 120px;
  }
  .p_course_top .top_item_subItem:not(:last-child) {
    margin-bottom: 50px;
  }
  .p_course_top .top_item_subItem_ttl {
    font-size: 2.2rem;
    line-height: 33px;
    font-weight: 600;
    text-align: center;
    color: #fff;
    margin-bottom: 20px;
  }
  .p_course_top .top_item_sub {
    font-size: 3rem;
    line-height: 1.5;
    font-weight: bold;
    text-align: center;
    color: #fff;
    margin-bottom: 25px;
  }
  .p_course_top p {
    text-align: center;
    font-size: 1.6rem;
    line-height: 28px;
    color: #fff;
    font-weight: 600;
  }
  .p_course_top p + p {
    margin-top: 30px;
  }
  .p_course_middle {
    padding: 180px 0 100px;
  }
  .p_course_middle .txt_top {
    text-align: center;
    font-size: 1.6rem;
    line-height: 28px;
    font-weight: 600;
  }
  .p_course_middle .exp_course {
    margin-top: 70px;
  }
  .p_course_middle .exp_course .exp_mts {
    max-width: 830px;
    margin: 0 auto;
  }
  .p_course_middle .exp_course .exp_mts .exp_course_item {
    width: -webkit-calc(50% - 60px);
    width: -moz-calc(50% - 60px);
    width: calc(50% - 60px);
  }
  .p_course_middle .exp_course .ttl_exp {
    text-align: center;
    font-size: 2rem;
    line-height: 30px;
    font-weight: 600;
    margin-bottom: 20px;
  }
  .p_course_middle .exp_course_wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 60px;
    margin-right: -60px;
  }
  .p_course_middle .exp_course_item {
    width: -webkit-calc(33.333% - 60px);
    width: -moz-calc(33.333% - 60px);
    width: calc(33.333% - 60px);
    background-color: #e73116;
    -moz-border-radius: 20px;
         border-radius: 20px;
    color: #fff;
    padding: 20px;
  }
  .p_course_middle .exp_course_item h5 {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center;
    font-size: 2.6rem;
    line-height: 1.5;
    font-weight: bold;
    margin-bottom: 20px;
  }
  .p_course_middle .exp_course_item p {
    font-size: 1.6rem;
    line-height: 28px;
    font-weight: 600;
    -moz-font-feature-settings: "palt" 1;
         font-feature-settings: "palt" 1;
  }
  .p_course_bottom {
    background-color: #0167c9;
    padding: 70px 0;
  }
  .p_course_bottom .bottom_item:not(:last-child) {
    margin-bottom: 120px;
  }
  .p_course_bottom .txt_top {
    text-align: center;
    font-size: 1.6rem;
    line-height: 28px;
    font-weight: 600;
    color: #fff;
  }
  .p_course_bottom .other_course .ttl_other {
    text-align: center;
    font-size: 2rem;
    line-height: 30px;
    font-weight: 600;
    margin-bottom: 20px;
    color: #fff;
  }
  .p_course_bottom .other_course .list_oth {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    gap: 30px;
    margin-right: -30px;
  }
  .p_course_bottom .other_course .list_oth li a {
    width: 100%;
    min-height: 60px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background-color: #fff;
    font-size: 1.8rem;
    line-height: 1.5;
    position: relative;
    text-align: center;
    font-weight: 600;
    color: #0167c9;
    pointer-events: none;
  }
  .p_course_bottom .other_course .list_oth li a:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0px 0px 14px 14px;
    border-color: transparent transparent #0167c9 transparent;
    -webkit-transform: rotate(0deg);
       -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
            transform: rotate(0deg);
    position: absolute;
    bottom: 0;
    right: 0;
  }
  .p_course_bottom .other_course .wrap_col3 {
    margin: 20px 0 30px;
  }
  .p_course_bottom .other_course .wrap_col3 .list_oth li {
    width: -webkit-calc(33.33% - 30px);
    width: -moz-calc(33.33% - 30px);
    width: calc(33.33% - 30px);
  }
  .p_course_bottom .other_course .wrap_col2 {
    max-width: 966px;
    margin: 20px auto 30px;
  }
  .p_course_bottom .other_course .wrap_col2 .list_oth li {
    width: -webkit-calc(50% - 30px);
    width: -moz-calc(50% - 30px);
    width: calc(50% - 30px);
  }
  .p_course_bottom .other_course .wrap_col_lx {
    max-width: 1200px;
    margin: 20px auto 30px;
  }
  .p_course_bottom .other_course .wrap_col_lx .list_oth {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .p_course_bottom .other_course .wrap_col_lx .list_oth li a {
    width: 100%;
    padding: 10px 30px;
  }
  .p_course_bottom .other_course .txt_right {
    text-align: right;
    font-size: 2.2rem;
    line-height: 28px;
    font-weight: 600;
    color: #fff;
  }
  .p_course_counselor {
    padding: 70px 0;
    background: url("../img/img_counselor_pc.webp") no-repeat center/cover;
  }
  .p_course_counselor .txt .heading_ttl {
    text-align: left;
    margin-bottom: 20px;
  }
  .p_course_counselor .txt .sub_ttl {
    text-align: left;
    -moz-font-feature-settings: "palt" 1;
         font-feature-settings: "palt" 1;
  }
  .p_course_counselor .txt p {
    text-align: left;
    font-size: 1.6rem;
    line-height: 28px;
    font-weight: 600;
    color: #0167c9;
  }
  .p_course .mg_top50 {
    margin-top: 30px;
  }
  .p_course .box_dot {
    max-width: 530px;
    width: 100%;
    margin: 20px auto;
    padding: 20px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p_course .box_dot.--white {
    background-color: #fff;
  }
  .p_course .box_dot.--red {
    background-color: #fdeae8;
  }
  .p_course .box_dot .l_dot li {
    font-size: 1.8rem;
    line-height: 40px;
    font-weight: bold;
    position: relative;
    padding-left: 25px;
  }
  .p_course .box_dot .l_dot li::before {
    content: "●";
    font-size: 1.8rem;
    line-height: 40px;
    font-weight: bold;
    position: absolute;
    top: 0;
    left: 0;
  }
  .p_course01 .other_course {
    position: relative;
    margin-top: 120px;
  }
  .p_course01 .other_course .deco {
    position: absolute;
    top: -380px;
    right: 0;
  }
  .p_course01 .other_course .deco img {
    width: 257px;
    height: auto;
  }
  .p_course02 .other_course {
    position: relative;
    margin-top: 30px;
  }
  .p_course02 .other_course .deco {
    position: absolute;
    top: -240px;
    left: -70px;
  }
  .p_course02 .other_course .deco img {
    width: 353px;
    height: auto;
  }
  .p_course03 .other_course {
    position: relative;
    margin-top: 30px;
  }
  .p_course03 .other_course .deco {
    position: absolute;
    top: -300px;
    right: 30px;
  }
  .p_course03 .other_course .deco img {
    width: 218px;
    height: auto;
  }
  .p_course04 .other_course {
    position: relative;
    margin-top: 30px;
  }
  .p_course04 .other_course .deco {
    position: absolute;
    top: -270px;
    left: 30px;
  }
  .p_course04 .other_course .deco img {
    width: 324px;
    height: auto;
  }
  .p_course05 .other_course {
    position: relative;
    margin-top: 30px;
  }
  .p_course05 .other_course .deco {
    position: absolute;
    top: -280px;
    left: 50px;
  }
  .p_course05 .other_course .deco img {
    width: 248px;
    height: auto;
  }
  .p_course06 .other_course {
    position: relative;
    margin-top: 50px;
  }
  .p_course06 .other_course .deco {
    position: absolute;
    top: -280px;
    right: 10px;
  }
  .p_course06 .other_course .deco img {
    width: 324px;
    height: auto;
  }
  .p_record_content {
    background-color: #0167c9;
    padding: 140px 0;
  }
  .p_record_content .txt_top {
    font-size: 1.6rem;
    line-height: 28px;
    font-weight: 600;
    color: #fff;
    margin-bottom: 50px;
    text-align: center;
  }
  .p_record_box {
    background-color: #fff;
    padding: 60px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 50px;
  }
  .p_record_wrap {
    width: 50%;
  }
  .p_record_item:not(:last-child) {
    margin-bottom: 30px;
  }
  .p_record_item_ttl {
    font-size: 1.7rem;
    line-height: 24px;
    font-weight: 600;
    color: #fff;
    background-color: #0167c9;
    -moz-border-radius: 6px;
         border-radius: 6px;
    padding: 10px 20px;
    margin-bottom: 10px;
  }
  .p_record_item_list li {
    font-size: 1.6rem;
    line-height: 28px;
    background-color: #e7e9ea;
    font-weight: 600;
    padding: 5px 20px;
  }
  .p_record_item_list li:not(:last-child) {
    margin-bottom: 5px;
  }
  .p_record_item_list.is-collapsed li:nth-child(n + 12) {
    display: none;
  }
  .p_record_item .btn_wrap.is-readmore-hidden {
    display: none !important;
  }
  .p_record_item .btn_default {
    margin: 20px auto 0;
  }
  .p_record .txt_bottom {
    text-align: right;
    font-size: 1.6rem;
    line-height: 28px;
    font-weight: 600;
  }
  .p_voice .tabs_controls {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 15px;
    margin-right: -15px;
  }
  .p_voice .tabs_controls .js_tab_btn {
    width: -webkit-calc(16.66% - 15px);
    width: -moz-calc(16.66% - 15px);
    width: calc(16.66% - 15px);
    min-height: 60px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 1.6rem;
    line-height: 1;
    font-weight: 600;
    color: #0167c9;
    background-color: #cce1f4;
    padding: 10px;
    text-align: center;
    border: none;
    cursor: pointer;
  }
  .p_voice .tabs_controls .js_tab_btn.is_active {
    background-color: #0167c9;
    color: #fff;
  }
  .p_voice_top {
    background-color: #0167c9;
    padding: 135px 0 80px;
  }
  .p_voice_top p {
    font-size: 1.6rem;
    line-height: 28px;
    font-weight: 600;
    color: #fff;
    text-align: center;
  }
  .p_voice_bottom {
    padding: 100px 0;
  }
  .p_voice_box {
    background-color: #0167c9;
    padding: 50px;
  }
  .p_voice_box .flx {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 60px;
  }
  .p_voice_box .voice_type {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 20px;
  }
  .p_voice_box .voice_type .ttl_wrap {
    padding: 10px 15px;
    background: #fff;
    color: #0167c9;
    margin-right: 15px;
    -moz-border-radius: 15px;
         border-radius: 15px;
    font-weight: bold;
    font-size: 1.8rem;
  }
  .p_voice_box .voice_type .ttl_wrap.is-active {
    background: #d71317;
    color: #fff;
  }
  .p_voice_wrap {
    width: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
  }
  .p_voice_wrap .ttl_wrap {
    font-size: 2rem;
    line-height: 1;
    font-weight: 600;
    text-align: center;
    -moz-border-radius: 100px;
         border-radius: 100px;
    background-color: #fff;
    min-height: 65px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 40px;
  }
  .p_voice_wrap.clg_blue .ttl_wrap {
    color: #0167c9;
  }
  .p_voice_wrap.clg_blue .p_voice_item_top {
    background-color: #0167c9;
  }
  .p_voice_wrap.clg_blue .p_voice_item_bottom h5 {
    color: #0167c9;
  }
  .p_voice_wrap.clg_red .ttl_wrap {
    color: #d71317;
  }
  .p_voice_wrap.clg_red .p_voice_item_top {
    background-color: #d71317;
  }
  .p_voice_wrap.clg_red .p_voice_item_bottom h5 {
    color: #d71317;
  }
  .p_voice_item {
    background-color: #fff;
    -moz-border-radius: 20px;
         border-radius: 20px;
    padding: 20px;
    width: 49%;
  }
  .p_voice_item:not(:last-child) {
    margin-bottom: 40px;
  }
  .p_voice_item_top {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    min-height: 40px;
    -moz-border-radius: 100px;
         border-radius: 100px;
    padding: 10px 20px;
    margin-bottom: 20px;
  }
  .p_voice_item_top .name_school1 {
    display: block;
    font-size: 1.4rem;
    line-height: 23px;
    font-weight: 600;
    color: #fff;
    border-right: 2px solid #fff;
    padding-right: 15px;
  }
  .p_voice_item_top .name_school1.bd_none {
    border-right: none;
  }
  .p_voice_item_top .name_right {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 10px;
  }
  .p_voice_item_top .name_right .name_school2 {
    display: block;
    font-size: 1.4rem;
    line-height: 27px;
    font-weight: 600;
    color: #fff;
  }
  .p_voice_item_top .name_right .name_author {
    display: block;
    font-size: 1.6rem;
    line-height: 27px;
    font-weight: 600;
    color: #fff;
  }
  .p_voice_item_bottom {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .p_voice_item_bottom .pic {
    width: 175px;
  }
  .p_voice_item_bottom .txt {
    width: -webkit-calc(100% - 175px);
    width: -moz-calc(100% - 175px);
    width: calc(100% - 175px);
    padding-left: 20px;
  }
  .p_voice_item_bottom .txt h5 {
    font-size: 1.6rem;
    line-height: 26px;
    font-weight: 600;
    margin-bottom: 14px;
  }
  .p_voice_item_bottom .txt p {
    font-size: 1.4rem;
    line-height: 23px;
    -moz-font-feature-settings: "palt" 1;
         font-feature-settings: "palt" 1;
  }
  .p_voice .btn_wrap .btn_default {
    margin: 50px auto 0;
  }
  .p_teaching_tab_btns {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 40px;
    margin: 0 -20px 60px;
    position: relative;
    z-index: 2;
  }
  .p_teaching_tab_btn {
    width: -webkit-calc(16.66% - 40px);
    width: -moz-calc(16.66% - 40px);
    width: calc(16.66% - 40px);
    min-height: 65px;
    font-size: 2.2rem;
    line-height: 1;
    font-weight: 600;
    color: #fff;
    background-color: #f2a895;
    border: none;
    cursor: pointer;
    position: relative;
    clip-path: polygon(0 0, 100% 0, 100% -webkit-calc(100% - 8px), -webkit-calc(100% - 8px) 100%, 0 100%);
    clip-path: polygon(0 0, 100% 0, 100% -moz-calc(100% - 8px), -moz-calc(100% - 8px) 100%, 0 100%);
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 8px), calc(100% - 8px) 100%, 0 100%);
  }
  .p_teaching_tab_btn.is_active {
    background-color: #e84d3c;
    z-index: 1;
  }
  .p_teaching_tab_panel {
    display: none;
  }
  .p_teaching_tab_panel.is_active {
    display: block;
  }
  .p_teaching_content {
    padding: 120px 0 100px;
    background-color: #0167c9;
  }
  .p_teaching_case {
    background-color: #fff;
    padding: 30px;
    -moz-border-radius: 20px;
         border-radius: 20px;
  }
  .p_teaching_case:not(:last-child) {
    margin-bottom: 50px;
  }
  .p_teaching_case_header {
    padding-left: 268px;
    position: relative;
    margin-bottom: 55px;
  }
  .p_teaching_case_location {
    max-width: 240px;
    min-height: 110px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    background-color: #80B3E4;
    font-size: 2.4rem;
    line-height: 1;
    font-weight: bold;
    -moz-border-radius: 0 0 13px 13px;
         border-radius: 0 0 13px 13px;
    color: #fff;
    position: absolute;
    top: -50px;
    left: 0;
    width: 100%;
  }
  .p_teaching_case_location small {
    display: block;
    font-size: 1.6rem;
    line-height: 1;
    margin-top: 15px;
  }
  .p_teaching_case_ttl {
    font-size: 3rem;
    line-height: 1.5;
    font-weight: bold;
    color: #0167c9;
  }
  .p_teaching_case_info {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 50px;
    width: 100%;
    margin-bottom: 25px;
  }
  .p_teaching_case_info_item {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 10px;
  }
  .p_teaching_case_info_item dt {
    width: 165px;
    min-height: 32px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    background-color: #0167c9;
    color: #fff;
  }
  .p_teaching_case_info_item dd {
    font-size: 1.8rem;
    line-height: 27px;
    color: #0167c9;
  }
  .p_teaching_case_body {
    margin-bottom: 50px;
  }
  .p_teaching_case_section {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 10px;
  }
  .p_teaching_case_section:not(:last-child) {
    margin-bottom: 25px;
  }
  .p_teaching_case_heading {
    width: 165px;
    min-height: 32px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    background-color: #0167c9;
    color: #fff;
  }
  .p_teaching_case_text {
    width: -webkit-calc(100% - 165px);
    width: -moz-calc(100% - 165px);
    width: calc(100% - 165px);
  }
  .p_teaching_case_text p {
    font-size: 1.6rem;
    line-height: 28px;
  }
  .p_teaching_case_voice {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 60px;
  }
  .p_teaching_case_voice_item {
    width: 50%;
    border: 1px solid #0167c9;
    -moz-border-radius: 20px;
         border-radius: 20px;
    padding: 35px 20px 20px;
    position: relative;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .p_teaching_case_voice_pic {
    width: 100px;
  }
  .p_teaching_case_voice_txt {
    width: -webkit-calc(100% - 100px);
    width: -moz-calc(100% - 100px);
    width: calc(100% - 100px);
    padding-left: 20px;
  }
  .p_teaching_case_voice_ttl {
    font-size: 1.8rem;
    line-height: 32px;
    padding: 1px 20px;
    background-color: #0167c9;
    color: #fff;
    display: inline-block;
    position: absolute;
    top: -20px;
    left: 0;
  }
  .p_recruitment_top {
    padding: 125px 0 100px;
    background-color: #0167c9;
  }
  .p_recruitment_top .row {
    position: relative;
  }
  .p_recruitment_top .row:after {
    content: "";
    width: 243px;
    height: 344px;
    background: url("../img/recruitment/vector.webp") no-repeat center center/contain;
    position: absolute;
    bottom: -100px;
    right: 0;
  }
  .p_recruitment_top .txt_top {
    text-align: center;
    font-size: 1.6rem;
    line-height: 28px;
    font-weight: 600;
    color: #fff;
    margin-bottom: 30px;
  }
  .p_recruitment_top .l_circle {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    gap: 50px;
  }
  .p_recruitment_top .l_circle li {
    width: 280px;
    height: 280px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -moz-border-radius: 100%;
         border-radius: 100%;
    background-color: #fff;
    font-size: 1.8rem;
    line-height: 36px;
    color: #0167c9;
    text-align: center;
    font-weight: 600;
  }
  .p_recruitment_middle {
    padding: 80px 0;
  }
  .p_recruitment_middle_item {
    border: 1px solid #0167c9;
  }
  .p_recruitment_middle_item:not(:last-child) {
    margin-bottom: 100px;
  }
  .p_recruitment_middle_item h3 {
    background-color: #0167c9;
    color: #fff;
    padding: 15px;
    font-size: 1.8rem;
    line-height: 1;
    font-weight: 600;
    text-align: center;
  }
  .p_recruitment_middle_item_box {
    padding: 30px 50px;
  }
  .p_recruitment_middle_item_box .l_inf li {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .p_recruitment_middle_item_box .l_inf li:not(:last-child) {
    margin-bottom: 10px;
  }
  .p_recruitment_middle_item_box .l_inf span {
    display: block;
    font-size: 1.6rem;
    line-height: 30px;
    font-weight: 600;
    width: 150px;
    color: #0167c9;
  }
  .p_recruitment_middle_item_box .l_inf em {
    width: -webkit-calc(100% - 150px);
    width: -moz-calc(100% - 150px);
    width: calc(100% - 150px);
    display: block;
    font-size: 1.6rem;
    line-height: 30px;
    font-style: normal;
  }
  .p_recruitment_middle_item_box .note {
    font-size: 1.6rem;
    line-height: 28px;
    position: relative;
    padding-left: 20px;
    margin-top: 30px;
  }
  .p_recruitment_middle_item_box .note:before {
    content: "※";
    font-size: 1.6rem;
    line-height: 28px;
    position: absolute;
    top: 0;
    left: 0;
  }
  .p_recruitment_bottom {
    padding: 50px 0;
  }
  .p_recruitment_bottom .txt_top {
    text-align: center;
    font-size: 1.6rem;
    line-height: 28px;
    font-weight: 600;
    margin-bottom: 50px;
  }
  .p_recruitment_bottom_step {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p_recruitment_bottom_step li {
    text-align: center;
    font-size: 1.7rem;
    color: #0167c9;
    line-height: 1;
    font-weight: 500;
    width: -webkit-calc(100% / 3);
    width: -moz-calc(100% / 3);
    width: calc(100% / 3);
    height: 47px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    padding-right: 20px;
  }
  .p_recruitment_bottom_step li.active {
    z-index: 4 !important;
    height: 47px;
  }
  .p_recruitment_bottom_step li.active::after {
    height: 47px;
    background: url("../img/recruitment/ctStep_bg_active.webp") no-repeat right center;
    -moz-background-size: auto 47px;
         background-size: auto 47px;
    width: 400px;
  }
  .p_recruitment_bottom_step li.active span {
    color: #fff;
  }
  .p_recruitment_bottom_step li span {
    position: relative;
    z-index: 4;
  }
  .p_recruitment_bottom_step li span .nb {
    font-family: "Roboto", sans-serif;
    display: inline-block;
    margin-right: 15px;
  }
  .p_recruitment_bottom_step li:first-child {
    z-index: 3;
  }
  .p_recruitment_bottom_step li:last-child:after {
    width: 459px;
    background: url("../img/recruitment/ctStep_bg_lastchild.webp") no-repeat right center;
    -moz-background-size: 459px 47px;
         background-size: 459px 47px;
  }
  .p_recruitment_bottom_step li:nth-child(2) {
    z-index: 2;
  }
  .p_recruitment_bottom_step li:not(:first-child) {
    border-left: 0;
  }
  .p_recruitment_bottom_step li::after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: 459px;
    height: 47px;
    background: url("../img/recruitment/ctStep_bg.webp") no-repeat right center;
    -moz-background-size: 459px 47px;
         background-size: 459px 47px;
  }
  .b_form .form-group {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding: 40px 0;
  }
  .b_form .form-group:not(:last-child) {
    border-bottom: 1px solid #000;
  }
  .b_form .form-group.bg_none {
    border-bottom: none;
  }
  .b_form .form-group .group {
    width: -webkit-calc(100% - 300px);
    width: -moz-calc(100% - 300px);
    width: calc(100% - 300px);
  }
  .b_form .form-group > label {
    font-size: 1.8rem;
    line-height: -webkit-calc(30 / 17);
    line-height: -moz-calc(30 / 17);
    line-height: calc(30 / 17);
    font-weight: 600;
    width: 400px;
    white-space: nowrap;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .b_form .form-group > label .label_ttl {
    width: 200px;
    display: block;
  }
  .b_form .form-group > label small {
    display: block;
    width: 100%;
    font-size: 1.6rem;
    line-height: 28px;
    margin-top: 10px;
  }
  .b_form .form-group .form-control {
    background-color: #fff;
    border: 1px solid #000;
    height: 40px;
    width: 100%;
    -moz-border-radius: 10px;
         border-radius: 10px;
    font-size: 1.6rem;
    font-weight: 500;
    padding: 0 10px;
    -webkit-box-flex: 1;
       -moz-box-flex: 1;
        -ms-flex: 1 0;
            flex: 1 0;
  }
  .b_form .form-group .form-control::-webkit-input-placeholder {
    color: #cccccc;
  }
  .b_form .form-group .form-control::-moz-placeholder {
    color: #cccccc;
  }
  .b_form .form-group .form-control:-ms-input-placeholder {
    color: #cccccc;
  }
  .b_form .form-group .form-control::placeholder {
    color: #cccccc;
  }
  .b_form .form-group textarea {
    min-height: 200px;
    -webkit-box-flex: 1;
       -moz-box-flex: 1;
        -ms-flex: 1 0;
            flex: 1 0;
    font-size: 1.6rem;
    line-height: 1.5;
    padding: 10px !important;
  }
  .b_form .form-group .radio-list {
    -webkit-box-flex: 1;
       -moz-box-flex: 1;
        -ms-flex: 1 0;
            flex: 1 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
    gap: 10px;
  }
  .b_form .form-group .radio-list.flx_wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 10px;
  }
  .b_form .form-group .radio-list label {
    font-size: 1.7rem;
    line-height: 1.5;
    font-weight: 500;
    position: relative;
    cursor: pointer;
  }
  .b_form .form-group .radio-list .mwform-radio-field.horizontal-item:not(:last-child) {
    margin-right: 25px;
  }
  .b_form .form-group .form-pr {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
  }
  .b_form .txt_pr {
    text-align: center;
    font-size: 1.6rem;
    line-height: 28px;
    font-weight: 600;
  }
  .b_form .required {
    color: #fff;
    font-size: 1.4rem;
    line-height: 1;
    background-color: #d71317;
    display: inline-block;
    padding: 3px 5px 4px;
    margin-right: 8px;
    margin-top: 4px;
  }
  .b_form .agree {
    margin: 50px 0 10px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .b_form .agree .mwform-checkbox-field .label {
    cursor: pointer;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .b_form .agree .mwform-checkbox-field-text {
    font-size: 1.7rem;
    line-height: 1.5;
    font-weight: 500;
  }
  .b_form button {
    background-color: #ff841e;
    color: #0167c9;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    border: none;
    width: 428px;
    height: 48px;
    font-size: 1.6rem;
    font-weight: 600;
    -moz-border-radius: 10px;
         border-radius: 10px;
    background-color: #fff;
    border: 1px solid #0167c9;
    -webkit-transition: 0.3s ease;
    -moz-transition: 0.3s ease;
    transition: 0.3s ease;
    margin: 0 auto;
    cursor: pointer;
  }
  .b_form button:hover {
    background-color: #0167c9;
    color: #fff;
  }
  .b_form .mw_wp_form_complete p {
    font-size: 1.8rem;
    text-align: center;
  }
  .b_form .mw_wp_form_complete .back_top {
    text-align: center;
  }
  .b_form .mw_wp_form_complete .back_top a {
    padding: 10px;
    color: #fff;
    -moz-border-radius: 20px;
         border-radius: 20px;
  }
  .p_why_content {
    padding: 140px 0 110px;
    background-color: #0167c9;
  }
  .p_why .txt_top {
    text-align: center;
    color: #fff;
    font-size: 1.6rem;
    line-height: 28px;
    font-weight: 600;
    margin-bottom: 50px;
  }
  .p_why_item {
    background-color: #fff;
    padding: 30px 40px 40px;
  }
  .p_why_item:not(:last-child) {
    margin-bottom: 100px;
  }
  .p_why_item:nth-child(even) .p_why_item_flx {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
       -moz-box-orient: horizontal;
       -moz-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .p_why_item h4 {
    font-size: 2.5rem;
    line-height: 1.5;
    font-weight: bold;
    color: #0167c9;
    text-align: center;
    margin-bottom: 15px;
  }
  .p_why_item .nb {
    display: block;
    text-align: center;
    color: #0167c9;
    font-size: 10.8rem;
    line-height: 1;
    font-weight: bold;
    margin-bottom: 40px;
    font-family: "Roboto", sans-serif;
  }
  .p_why_item_flx {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    gap: 40px;
  }
  .p_why_item .txt {
    width: 50%;
  }
  .p_why_item .txt h5 {
    font-size: 2.4rem;
    line-height: 1.7;
    font-weight: bold;
    margin-bottom: 15px;
    color: #231815;
  }
  .p_why_item .txt p {
    font-size: 1.6rem;
    line-height: 28px;
  }
  .p_why_item .txt p + p {
    margin-top: 20px;
  }
  .p_why_item .txt .b_blue_cts {
    background-color: #0167c9;
    -moz-border-radius: 19px;
         border-radius: 19px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 10px 50px;
    margin-top: 20px;
  }
  .p_why_item .txt .b_blue_cts .l_dot {
    -moz-border-radius: 19px;
         border-radius: 19px;
  }
  .p_why_item .txt .b_blue_cts .txt_box {
    color: #fff;
    font-size: 1.6rem;
    line-height: 28px;
    font-weight: 600;
  }
  .p_why_item .txt .lx_wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 20px;
    margin: 20px 0;
  }
  .p_why_item .txt .lx_wrap .b_red {
    width: 50%;
  }
  .p_why_item .txt .lx_wrap .b_blue {
    width: 50%;
  }
  .p_why_item .txt .b_red span {
    display: inline-block;
    font-size: 1.4rem;
    line-height: 1;
    padding: 10px 20px;
    -moz-border-radius: 19px 19px 0 0;
         border-radius: 19px 19px 0 0;
    background-color: #d71317;
    color: #fff;
    font-weight: 600;
  }
  .p_why_item .txt .b_red .l_dot {
    background-color: #d71317;
  }
  .p_why_item .txt .b_blue span {
    display: inline-block;
    font-size: 1.4rem;
    line-height: 1;
    padding: 10px 20px;
    -moz-border-radius: 19px 19px 0 0;
         border-radius: 19px 19px 0 0;
    background-color: #0167c9;
    color: #fff;
    font-weight: 600;
  }
  .p_why_item .txt .b_blue .l_dot {
    background-color: #0167c9;
  }
  .p_why_item .txt .l_dot {
    -moz-border-radius: 0 19px 19px 19px;
         border-radius: 0 19px 19px 19px;
    padding: 10px;
  }
  .p_why_item .txt .l_dot li {
    font-size: 1.6rem;
    line-height: 1.7;
    color: #fff;
    position: relative;
    padding-left: 20px;
    font-weight: bold;
  }
  .p_why_item .txt .l_dot li:before {
    content: "●";
    font-size: 1.2rem;
    line-height: 1.7;
    position: absolute;
    top: 5px;
    left: 0;
  }
  .p_why_item .txt .l_dot li:not(:last-child) {
    margin-bottom: 10px;
  }
  .p_why_item .txt .txt_right {
    text-align: right;
  }
  .p_why_item .txt .txt_note {
    font-size: 1.4rem;
    line-height: 28px;
    position: relative;
    padding-left: 15px;
    display: inline-block;
  }
  .p_why_item .txt .txt_note:before {
    content: "※";
    font-size: 1.4rem;
    line-height: 28px;
    position: absolute;
    top: 0;
    left: 0;
  }
  .p_why_item .pic {
    width: 50%;
  }
  .p_course_detail_top {
    border-bottom: 4px solid #0167c9;
    position: relative;
    width: -webkit-calc(100% + 100px);
    width: -moz-calc(100% + 100px);
    width: calc(100% + 100px);
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 30px;
    margin: 0 -50px;
    padding: 130px 50px 0;
  }
  .p_course_detail_top:before {
    content: "";
    width: 4px;
    height: 50px;
    background-color: #0167c9;
    position: absolute;
    bottom: -50px;
    left: 0;
  }
  .p_course_detail_top:after {
    content: "";
    width: 4px;
    height: 50px;
    background-color: #0167c9;
    position: absolute;
    bottom: -50px;
    right: 0;
  }
  .p_course_detail_top_btn {
    width: 50%;
    border: none;
    -moz-border-radius: 30px 30px 0 0;
         border-radius: 30px 30px 0 0;
    background-color: #0167c9;
    min-height: 180px;
    padding: 15px;
    cursor: pointer;
    opacity: 0.5;
  }
  .p_course_detail_top_btn.is_active {
    opacity: 1;
  }
  .p_course_detail_top_btn .fl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p_course_detail_top_btn .left {
    width: 220px;
  }
  .p_course_detail_top_btn .right {
    width: -webkit-calc(100% - 220px);
    width: -moz-calc(100% - 220px);
    width: calc(100% - 220px);
    padding-left: 20px;
  }
  .p_course_detail_top_btn .right .heading {
    color: #fff;
  }
  .p_course_detail_top_btn .right .heading b {
    font-size: 6rem;
    line-height: 1;
    font-weight: bold;
  }
  .p_course_detail_top_btn .right .heading span {
    font-size: 4rem;
    line-height: 1;
    font-weight: bold;
  }
  .p_course_detail_top_btn .right .heading .sub {
    font-size: 3rem;
    line-height: 1;
    font-weight: bold;
    margin-top: 15px;
  }
  .p_course_detail_top_btn .right .heading .sub small {
    font-size: 2rem;
  }
  .p_course_detail_top_btn .right .desc {
    font-size: 1.6rem;
    line-height: 1;
    color: #0167c9;
    background-color: #fff;
    padding: 10px;
    display: block;
    font-weight: bold;
    margin-top: 8px;
  }
  .p_course_detail_top_btn.is_active {
    opacity: 1;
  }
  .p_course_detail .detail_top {
    padding: 100px 0 30px;
    text-align: center;
    position: relative;
  }
  .p_course_detail .detail_top:after {
    content: "";
    width: 1200px;
    height: 385px;
    background: url("../img/course_detail/icon_logo_detail.svg") no-repeat center center/contain;
    position: absolute;
    bottom: -85px;
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    z-index: -1;
  }
  .p_course_detail .detail_top .dt_heading {
    color: #0167c9;
  }
  .p_course_detail .detail_top .dt_heading b {
    font-size: 7.2rem;
    line-height: 1;
    font-weight: bold;
  }
  .p_course_detail .detail_top .dt_heading span {
    font-size: 5rem;
    line-height: 1;
    font-weight: bold;
  }
  .p_course_detail .detail_top .dt_heading .sub {
    font-size: 4rem;
    line-height: 1;
    font-weight: bold;
    margin-top: 20px;
  }
  .p_course_detail .detail_top .dt_heading .sub small {
    font-size: 3rem;
  }
  .p_course_detail .detail_top .desc {
    font-size: 2.2rem;
    line-height: 1;
    color: #fff;
    background-color: #0167c9;
    padding: 10px 20px;
    display: inline-block;
    font-weight: bold;
    margin-top: 12px;
  }
  .p_course_detail .detail_if {
    background-color: #0167c9;
    padding: 40px 0;
  }
  .p_course_detail .detail_if .row {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 30px;
  }
  .p_course_detail .detail_if .txt {
    width: 50%;
  }
  .p_course_detail .detail_if .txt h3 {
    font-size: 3rem;
    line-height: 1.5;
    font-weight: bold;
    color: #fff;
    margin-bottom: 30px;
  }
  .p_course_detail .detail_if .txt p {
    font-size: 1.6rem;
    line-height: 28px;
    color: #fff;
    font-weight: 600;
  }
  .p_course_detail .detail_if .pic {
    width: 50%;
  }
  .p_course_detail .detail_wrap {
    padding: 100px 0;
  }
  .p_course_detail .detail_item:not(:last-child) {
    margin-bottom: 100px;
  }
  .p_course_detail .detail_item .ttl_it {
    text-align: center;
    font-size: 3.6rem;
    line-height: 1;
    font-weight: bold;
    color: #0167c9;
    margin-bottom: 30px;
  }
  .p_course_detail .detail_item .tbl01 .curriculum_block {
    max-width: 1080px;
  }
  .p_course_detail .detail_item .curriculum_block {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    max-width: 800px;
    margin: 0 auto;
  }
  .p_course_detail .detail_item .curriculum_block:not(:last-child) {
    margin-bottom: 30px;
  }
  .p_course_detail .detail_item .curriculum_block .curriculum_ttl {
    font-size: 2.4rem;
    line-height: 1;
    font-weight: bold;
    color: #0167c9;
    margin-right: 20px;
    width: 90px;
    margin-top: 6px;
  }
  .p_course_detail .detail_item .curriculum_block .flx {
    width: -webkit-calc(100% - 90px);
    width: -moz-calc(100% - 90px);
    width: calc(100% - 90px);
  }
  .p_course_detail .detail_item .curriculum_block .curriculum_tags {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    gap: 10px;
  }
  .p_course_detail .detail_item .curriculum_block .curriculum_tags:not(:last-child) {
    margin-bottom: 15px;
  }
  .p_course_detail .detail_item .curriculum_block .curriculum_tags span {
    -moz-border-radius: 100px;
         border-radius: 100px;
    background-color: #cce1f4;
    padding: 10px;
    min-width: 105px;
    min-height: 40px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 1.6rem;
    line-height: 1;
    font-weight: 600;
    color: #212121;
  }
  .p_course_detail .detail_item .txt_desc {
    text-align: center;
    font-size: 1.6rem;
    line-height: 28px;
    font-weight: 600;
    color: #212121;
  }
  .p_course_detail .detail_item .w_cts .price_block {
    max-width: 700px;
  }
  .p_course_detail .detail_item .price_block {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    max-width: 600px;
    margin: 0 auto;
  }
  .p_course_detail .detail_item .price_block:not(:last-child) {
    margin-bottom: 30px;
  }
  .p_course_detail .detail_item .price_block.price_center {
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p_course_detail .detail_item .price_block.price_center .price_pills {
    margin-top: 0 !important;
  }
  .p_course_detail .detail_item .price_block .price_ttl {
    font-size: 2.4rem;
    line-height: 1;
    font-weight: bold;
    color: #0167c9;
    margin-right: 20px;
    width: 90px;
  }
  .p_course_detail .detail_item .price_block .txt_right {
    width: -webkit-calc(100% - 90px);
    width: -moz-calc(100% - 90px);
    width: calc(100% - 90px);
  }
  .p_course_detail .detail_item .price_block .txt_right .price_note {
    font-size: 1.8rem;
    line-height: 28px;
    font-weight: 600;
    color: #212121;
  }
  .p_course_detail .detail_item .price_block .txt_right .price_pills {
    margin-top: 10px;
  }
  .p_course_detail .detail_item .price_block .txt_right .price_pills .price_pill {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 20px;
  }
  .p_course_detail .detail_item .price_block .txt_right .price_pills .price_pill:not(:last-child) {
    margin-bottom: 10px;
  }
  .p_course_detail .detail_item .price_block .txt_right .price_pills .price_pill .price_label {
    width: 150px;
    min-height: 35px;
    -moz-border-radius: 100px;
         border-radius: 100px;
    background-color: #cce1f4;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 1.6rem;
    line-height: 1;
    font-weight: 600;
    color: #212121;
  }
  .p_course_detail .detail_item .price_block .txt_right .price_pills .price_pill .price_value {
    font-size: 1.8rem;
    line-height: 1;
    font-weight: bold;
  }
  .p_course_detail .detail_item .price_block .txt_right .price_pills .price_pill .note {
    display: block;
    font-size: 1.4rem;
    line-height: 1;
    font-weight: 600;
  }
  .p_course_detail .detail_item .l_point {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    gap: 10px;
  }
  .p_course_detail .detail_item .l_point li {
    -moz-border-radius: 100px;
         border-radius: 100px;
    background-color: #cce1f4;
    padding: 10px;
    max-width: 105px;
    min-height: 40px;
    width: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 1.6rem;
    line-height: 1;
    font-weight: 600;
    color: #212121;
  }
  .p_course_detail .detail_item .txt_bottom {
    font-size: 1.6rem;
    line-height: 28px;
    font-weight: 600;
    color: #212121;
    text-align: center;
    margin-top: 20px;
  }
  .p_course_detail .detail_item .pricing_table_wrap {
    max-width: 730px;
    margin: 40px auto 0;
  }
  .p_course_detail .detail_item .pricing_table_wrap.pricing_table_wrap_cts1 {
    max-width: 630px;
  }
  .p_course_detail .detail_item .pricing_table_wrap.pricing_table_wrap_cts1 .pricing_thead {
    -ms-grid-columns: 105px (1fr)[3];
        grid-template-columns: 105px repeat(3, 1fr);
  }
  .p_course_detail .detail_item .pricing_table_wrap.pricing_table_wrap_cts1 .pricing_row {
    -ms-grid-columns: 105px (1fr)[3];
        grid-template-columns: 105px repeat(3, 1fr);
  }
  .p_course_detail .detail_item .pricing_table_wrap.pricing_table_wrap_cts2 .pricing_thead {
    -ms-grid-columns: 165px 135px (1fr)[3];
        grid-template-columns: 165px 135px repeat(3, 1fr);
  }
  .p_course_detail .detail_item .pricing_table_wrap.pricing_table_wrap_cts2 .pricing_row {
    -ms-grid-columns: (1fr)[4];
        grid-template-columns: repeat(4, 1fr);
  }
  .p_course_detail .detail_item .pricing_table {
    width: 100%;
    -moz-box-sizing: border-box;
         box-sizing: border-box;
  }
  .p_course_detail .detail_item .pricing_thead {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 165px 105px (1fr)[4];
        grid-template-columns: 165px 105px repeat(4, 1fr);
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 8px;
       -moz-column-gap: 8px;
            column-gap: 8px;
    margin-bottom: 16px;
  }
  .p_course_detail .detail_item .pricing_th_level {
    height: 40px;
  }
  .p_course_detail .detail_item .pricing_th_time {
    height: 40px;
    -moz-border-radius: 999px;
         border-radius: 999px;
    background-color: #e2ebf7;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 1.8rem;
    font-weight: bold;
    color: #212121;
  }
  .p_course_detail .detail_item .pricing_th_data {
    height: 40px;
    -moz-border-radius: 999px;
         border-radius: 999px;
    background-color: #0167c9;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 1.8rem;
    font-weight: bold;
    color: #fff;
  }
  .p_course_detail .detail_item .pricing_row_group {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 165px 1fr;
        grid-template-columns: 165px 1fr;
    min-height: 40px;
    gap: 10px;
  }
  .p_course_detail .detail_item .pricing_row_group:not(:last-child) {
    margin-bottom: 20px;
  }
  .p_course_detail .detail_item .pricing_level {
    background-color: #0167c9;
    color: #fff;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 2.4rem;
    font-weight: bold;
  }
  .p_course_detail .detail_item .pricing_row {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 105px (1fr)[4];
        grid-template-columns: 105px repeat(4, 1fr);
    -webkit-box-align: stretch;
       -moz-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    min-height: 40px;
    gap: 10px;
  }
  .p_course_detail .detail_item .pricing_row:not(:last-child) {
    margin-bottom: 10px;
  }
  .p_course_detail .detail_item .pricing_time {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 1.6rem;
    font-weight: 600;
    color: #212121;
    padding: 8px;
    background-color: #e2ebf7;
    -moz-border-radius: 999px;
         border-radius: 999px;
  }
  .p_course_detail .detail_item .pricing_cell {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 1.6rem;
    font-weight: 600;
    color: #212121;
    padding: 8px;
    -moz-box-sizing: border-box;
         box-sizing: border-box;
    background-color: #e7e9ea;
  }
  .p_course_detail .detail_item .pricing_formulas {
    margin: 60px auto 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 10px;
  }
  .p_course_detail .detail_item .pricing_formulas .formula {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 8px;
    font-size: 2rem;
    line-height: 1.6;
    font-weight: bold;
    color: #0167c9;
  }
  .p_course_detail .detail_item .pricing_formulas .formula .formula_label {
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 8px 18px;
    background-color: #0167c9;
    color: #fff;
    width: 220px;
    white-space: nowrap;
  }
  .p_course_detail .detail_item .pricing_formulas .formula .formula_symbol {
    font-size: 2.5rem;
    font-weight: 800;
  }
  .p_course_detail .detail_item .pricing_formulas .formula .formula_term {
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 6px 18px;
    border: 2px solid #0167c9;
    background-color: #fff;
    color: #0167c9;
    white-space: nowrap;
    width: 180px;
  }
  .p_course_detail .detail_item .pricing_formulas .formula .formula_term.formula_term01 {
    width: 140px;
  }
  .p_course_detail .detail_item .pricing_notes {
    max-width: 630px;
    margin: 30px auto 0;
  }
  .p_course_detail .detail_item .pricing_notes li {
    position: relative;
    padding-left: 20px;
    font-size: 1.5rem;
    line-height: 1.6;
    font-weight: 600;
  }
  .p_course_detail .detail_item .pricing_notes li:before {
    content: "＊";
    position: absolute;
    left: 0;
    top: 0;
  }
  .p_course_detail .detail_item .pricing_notes li:not(:last-child) {
    margin-bottom: 5px;
  }
  .p_course_detail .detail_item .fee_box_tabs {
    max-width: 964.5px;
    margin: 0 auto;
  }
  .p_course_detail .detail_item .fee_box_tabs .pic_fee {
    background-color: #e7e9ea;
    padding: 45px 60px;
  }
  .p_course_detail .detail_item .fee_box_tabs .pic_fee img {
    width: 100%;
    height: auto;
  }
  .p_course_detail .detail_item .fee_box_tabs .fee_box_controls {
    max-width: 865px;
    margin: 30px auto 0;
  }
  .p_course_detail .detail_item .fee_box_tabs .fee_box_controls h3 {
    text-align: center;
    font-size: 2.4rem;
    line-height: 1.5;
    font-weight: 600;
    margin-bottom: 30px;
  }
  .p_course_detail .detail_item .fee_box_tabs .js_tab_controls {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    gap: 20px 25px;
  }
  .p_course_detail .detail_item .fee_box_tabs .js_tab_controls .fee_box_tabs_js_btn {
    width: 214px;
    min-height: 45px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 1.6rem;
    line-height: 1;
    font-weight: 600;
    color: #fff;
    background-color: #0167c9;
    -moz-border-radius: 100px;
         border-radius: 100px;
    padding: 10px;
    text-align: center;
    border: none;
    cursor: pointer;
    -webkit-transition: opacity 0.3s ease-out;
    -moz-transition: opacity 0.3s ease-out;
    transition: opacity 0.3s ease-out;
  }
  .p_course_detail .detail_item .fee_box_tabs .js_tab_controls .fee_box_tabs_js_btn:hover {
    opacity: 0.7;
  }
  .p_school_area {
    padding-top: 125px;
  }
  .p_school_area .slider_cms {
    background: #0167c9;
    background: -webkit-gradient(linear, left bottom, left top, color-stop(50%, #0167c9), color-stop(50%, white));
    background: -webkit-linear-gradient(bottom, #0167c9 50%, white 50%);
    background: -moz- oldlinear-gradient(bottom, #0167c9 50%, white 50%);
    background: linear-gradient(0deg, #0167c9 50%, white 50%);
  }
  .p_school_area .slider_cms_item {
    width: 1200px;
    margin: 0 15px;
  }
  .p_school_area .slider_cms_item img {
    width: 100%;
    height: auto;
    -moz-border-radius: 30px;
         border-radius: 30px;
  }
  .p_school_area_top {
    background: #0167c9;
    padding: 195px 0 100px;
    position: relative;
    z-index: 1;
  }
  .p_school_area_top:before {
    content: "";
    width: 1200px;
    height: 364px;
    background: url("../img/school_area/icon_logo.svg") no-repeat center center/contain;
    position: absolute;
    top: 15px;
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    pointer-events: none;
    z-index: -1;
  }
  .p_school_area_top_wrap {
    max-width: 860px;
    width: 100%;
    margin: 0 auto;
  }
  .p_school_area_top p {
    color: #fff;
    font-size: 1.6rem;
    line-height: 28px;
    font-weight: 600;
  }
  .p_school_area .b_notice {
    padding: 55px 0 65px;
  }
  .p_school_area .b_notice .com_heading {
    margin-bottom: 60px;
  }
  .p_school_area .b_notice_wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    gap: 40px;
  }
  .p_school_area .b_notice_item {
    width: -webkit-calc(33.33% - 40px);
    width: -moz-calc(33.33% - 40px);
    width: calc(33.33% - 40px);
    background-color: #d71317;
    -moz-border-radius: 30px;
         border-radius: 30px;
  }
  .p_school_area .b_notice_item a {
    display: block;
    position: relative;
    padding: 20px 20px 50px;
  }
  .p_school_area .b_notice_item .pic {
    margin-bottom: 15px;
  }
  .p_school_area .b_notice_item .pic img {
    width: 100%;
    height: auto;
  }
  .p_school_area .b_notice_item .txt h3 {
    color: #fff;
    font-size: 2.4rem;
    line-height: 1.5;
    font-weight: bold;
    margin-bottom: 5px;
  }
  .p_school_area .b_notice_item .txt p {
    color: #fff;
    font-size: 1.6rem;
    line-height: 24px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .p_school_area .b_notice_item .arr {
    width: 30px;
    height: 30px;
    -moz-border-radius: 100%;
         border-radius: 100%;
    border: 1px solid #fff;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: absolute;
    bottom: 15px;
    right: 15px;
  }
  .p_school_area .b_notice_item .arr img {
    width: 13px;
    height: auto;
  }
  .p_school_area .b_notice .btn_default {
    margin: 60px auto 0;
  }
  .p_school_area .b_linkTabs {
    background-color: #e7e9ea;
    padding: 100px 0;
  }
  .p_school_area .b_linkTabs_list {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    gap: 50px;
  }
  .p_school_area .b_linkTabs li {
    width: -webkit-calc(50% - 50px);
    width: -moz-calc(50% - 50px);
    width: calc(50% - 50px);
  }
  .p_school_area .home_course {
    padding: 75px 0;
  }
  .p_school_area .home_course:before {
    content: none !important;
  }
  .p_school_area .b_message {
    padding: 70px 0 100px;
    background-color: #e6f0fa;
  }
  .p_school_area .b_message .com_heading {
    margin-bottom: 60px;
  }
  .p_school_area .b_message_slider {
    /* mũi tên trái */
    /* mũi tên phải */
  }
  .p_school_area .b_message_slider .slick-prev,
  .p_school_area .b_message_slider .slick-next {
    width: 40px;
    height: 40px;
    z-index: 10;
    background: #0167c9;
    border: none;
    -moz-border-radius: 50%;
         border-radius: 50%;
  }
  .p_school_area .b_message_slider .slick-prev {
    left: 25px;
  }
  .p_school_area .b_message_slider .slick-next {
    right: 25px;
  }
  .p_school_area .b_message_slider .slick-prev::before {
    content: "‹";
    font-size: 40px;
    color: #fff;
    position: absolute;
    height: auto;
    top: -5px;
    right: 0;
    left: 0;
  }
  .p_school_area .b_message_slider .slick-next::before {
    content: "›";
    font-size: 40px;
    color: #fff;
    position: absolute;
    height: auto;
    top: -5px;
    right: 0;
    left: 0;
  }
  .p_school_area .b_message_slider_item {
    width: 320px;
    margin: 0 40px;
  }
  .p_school_area .b_message_slider_item .pic {
    background-color: #fff;
    padding: 20px 30px;
    -moz-border-radius: 20px;
         border-radius: 20px;
    margin-bottom: 20px;
  }
  .p_school_area .b_message_slider_item .txt_top {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px;
  }
  .p_school_area .b_message_slider_item .txt_top span {
    background-color: #0167c9;
    color: #fff;
    -moz-border-radius: 13px;
         border-radius: 13px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 65px;
    font-size: 1.8rem;
    line-height: 1;
    font-weight: 600;
  }
  .p_school_area .b_message_slider_item .txt_top h3 {
    font-size: 1.8rem;
    line-height: 1.5;
    font-weight: bold;
  }
  .p_school_area .b_message_slider_item .txt p {
    text-align: right;
    font-size: 2.2rem;
    line-height: 1.5;
    margin-top: 10px;
    font-weight: bold;
  }
  .p_school_area .b_message_slider_item .txt p small {
    display: block;
    font-size: 1.6rem;
  }
  .p_school_area .b_message .stories-success {
    padding: 0 50px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
  }
  .p_school_area .b_message .stories-success .b_message_slider_item {
    width: 22%;
    margin: 0 0 30px;
  }
  .p_school_area .b_message .message_more {
    text-align: center;
    margin-top: 70px;
  }
  .p_school_area .b_message .message_more a {
    font-size: 1.8rem;
    color: #0167c9;
    background: #fff;
    padding: 10px 40px;
    -moz-border-radius: 20px;
         border-radius: 20px;
    font-weight: bold;
  }
  .p_school_area .b_access {
    padding: 90px 0;
  }
  .p_school_area .b_access .com_heading {
    margin-bottom: 80px;
  }
  .p_school_area .b_access_item {
    background-color: #e7e9ea;
    padding: 30px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
  .p_school_area .b_access_item:not(:last-child) {
    margin-bottom: 70px;
  }
  .p_school_area .b_access_item .txt {
    width: 50%;
    padding-right: 50px;
  }
  .p_school_area .b_access_item .txt .name_school {
    max-width: 305px;
    min-height: 50px;
    -moz-border-radius: 100px;
         border-radius: 100px;
    background-color: #d71317;
    font-size: 2.4rem;
    line-height: 1;
    font-weight: bold;
    color: #fff;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 15px;
  }
  .p_school_area .b_access_item .txt .txt_address {
    font-size: 1.8rem;
    line-height: 1.5;
    font-weight: 600;
    margin-bottom: 10px;
  }
  .p_school_area .b_access_item .txt .txt_tel {
    font-size: 4rem;
    line-height: 1;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
    color: #d71317;
    margin-bottom: 20px;
  }
  .p_school_area .b_access_item .txt .l_pic {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    gap: 15px;
  }
  .p_school_area .b_access_item .txt .l_pic li {
    width: 50%;
  }
  .p_school_area .b_access_item .txt .l_pic li img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .p_school_area .b_access_item .map {
    width: 50%;
  }
  .p_school_area .b_access_item .map iframe {
    width: 100%;
    height: 100%;
  }
}

@media screen and (max-width: 768px) {
  .home_kv img {
    width: 100%;
    height: auto;
  }
  .home_area {
    padding: 9.11458vw 0 13.02083vw;
  }
  .home_area .row {
    position: relative;
  }
  .home_area .com_heading {
    position: relative;
    z-index: 1;
  }
  .home_area .pic_map {
    text-align: center;
    margin: -16.92708vw 0 0;
  }
  .home_area .pic_map img {
    width: 79.03646vw;
    height: auto;
  }
  .home_area_wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 5.20833vw;
  }
  .home_area_wrap:not(:last-child) {
    margin-bottom: 5.20833vw;
  }
  .home_area_item {
    width: 53.51563vw;
    margin: 0 auto;
  }
  .home_area_item a {
    width: 100%;
    min-height: 15.625vw;
    background-color: #d71317;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
    padding-left: 9.11458vw;
  }
  .home_area_item a:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0px 0px 3.125vw 3.125vw;
    border-color: transparent transparent #ffffff transparent;
    -webkit-transform: rotate(0deg);
       -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
            transform: rotate(0deg);
    position: absolute;
    bottom: 0;
    right: 0;
  }
  .home_area_item a .icon {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 4.55729vw;
  }
  .home_area_item a .icon.icon01 img {
    width: 9.76563vw;
  }
  .home_area_item a .icon.icon02 img {
    width: 10.54688vw;
  }
  .home_area_item a .icon.icon03 img {
    width: 11.45833vw;
  }
  .home_area_item a .icon.icon04 img {
    width: 10.28646vw;
  }
  .home_area_item a .icon.icon05 img {
    width: 11.58854vw;
  }
  .home_area_item a span {
    font-size: 3.90625vw;
    line-height: 1;
    font-weight: bold;
    color: #fff;
  }
  .home_area_item a span small {
    font-size: 2.86458vw;
  }
  .home_area_banner {
    margin-top: 9.11458vw;
  }
  .home_area_banner_pic {
    position: relative;
    margin: 0 -3.90625vw;
  }
  .home_area_banner_pic img {
    width: 100%;
    height: auto;
  }
  .home_area_banner_pic figcaption {
    font-size: 4.81771vw;
    line-height: 1.5;
    font-weight: bold;
    color: #fff;
    position: absolute;
    bottom: 13.02083vw;
    left: 3.90625vw;
  }
  .home_course {
    padding: 0 0 14.32292vw;
    background-color: #0167c9;
    position: relative;
  }
  .home_course:before {
    content: "";
    width: 100%;
    height: 45.57292vw;
    background-color: #0167c9;
    position: absolute;
    top: -12.36979vw;
    left: 0;
    -webkit-transform: skewY(-5deg);
       -moz-transform: skewY(-5deg);
        -ms-transform: skewY(-5deg);
            transform: skewY(-5deg);
    pointer-events: none;
  }
  .home_course .com_heading {
    margin-bottom: 6.51042vw;
    position: relative;
    z-index: 1;
  }
  .home_course_wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 7.8125vw;
    position: relative;
    z-index: 1;
  }
  .home_course_item {
    width: 47.65625vw;
    background-color: #fff;
    margin: 0 auto;
  }
  .home_course_item .pic img {
    width: 100%;
    height: auto;
  }
  .home_course_item .txt {
    padding: 3.25521vw;
  }
  .home_course_item .txt h3 {
    font-size: 3.64583vw;
    line-height: 1.5;
    font-weight: 600;
    margin-bottom: 20px;
    text-align: center;
  }
  .home_course_item .txt .btn_default {
    margin: 0 auto;
  }
  .home_reason {
    padding: 8.46354vw 0 2.60417vw;
  }
  .home_reason .com_heading {
    margin-bottom: 6.51042vw;
  }
  .home_reason_item {
    max-width: 80.72917vw;
    width: 100%;
    margin: 0 auto;
  }
  .home_reason_item:not(:last-child) {
    margin-bottom: 13.02083vw;
  }
  .home_reason_item .pic {
    margin-bottom: 3.25521vw;
  }
  .home_reason_item .txt h3 {
    font-size: 4.16667vw;
    line-height: 1.6;
    font-weight: bold;
    margin-bottom: 2.60417vw;
  }
  .home_reason_item .txt p {
    font-size: 3.64583vw;
    line-height: 5.72917vw;
    font-weight: 500;
    -moz-font-feature-settings: "palt" 1;
         font-feature-settings: "palt" 1;
  }
  .home_reason_item .txt .btn_default {
    margin: 5.20833vw auto 0;
  }
  .home_anime {
    text-align: center;
    padding: 13.02083vw 0 7.8125vw;
  }
  .home_anime_logo {
    margin-bottom: 6.51042vw;
    -webkit-transform: scale(1.9);
       -moz-transform: scale(1.9);
        -ms-transform: scale(1.9);
            transform: scale(1.9);
    -webkit-transform-origin: center center;
       -moz-transform-origin: center center;
        -ms-transform-origin: center center;
            transform-origin: center center;
    -webkit-transition: -webkit-transform 2.5s ease-out;
    transition: -webkit-transform 2.5s ease-out;
    -moz-transition: transform 2.5s ease-out, -moz-transform 2.5s ease-out;
    transition: transform 2.5s ease-out;
    transition: transform 2.5s ease-out, -webkit-transform 2.5s ease-out, -moz-transform 2.5s ease-out;
  }
  .home_anime.is-inview .home_anime_logo {
    -webkit-transform: scale(1);
       -moz-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
  }
  .home_anime_logo img {
    width: 92.1875vw;
  }
  .home_anime p {
    font-size: 4.6875vw;
    line-height: 1;
    font-weight: bold;
    color: #d71317;
  }
  .home_information {
    background-color: #0167c9;
    padding: 9.76563vw 0;
  }
  .home_information .com_heading {
    margin-bottom: 9.11458vw;
  }
  .home_information_wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 6.51042vw;
  }
  .home_information_item {
    width: 50.13021vw;
    margin: 0 auto;
    background-color: #fff;
    -moz-border-radius: 2.60417vw;
         border-radius: 2.60417vw;
    text-align: center;
  }
  .home_information_item a {
    width: 100%;
    padding: 3.25521vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 3.90625vw;
  }
  .home_information_item a:hover .arr {
    -webkit-transform: translateX(10px);
       -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
            transform: translateX(10px);
  }
  .home_information_item .ctg {
    max-width: 28.64583vw;
    min-height: 5.59896vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: #fff;
    background-color: #0167c9;
    font-size: 3.38542vw;
    line-height: 1;
    width: 100%;
    margin: 0 auto 0;
  }
  .home_information_item .date {
    display: block;
    font-size: 3.64583vw;
    line-height: 1;
    font-weight: 600;
  }
  .home_information_item h3 {
    font-size: 4.16667vw;
    line-height: 1.5;
    font-weight: 400;
  }
  .home_information_item p {
    font-size: 3.64583vw;
    line-height: 5.72917vw;
    font-weight: 400;
    width: 100%;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .home_information_item .arr {
    width: 8.98438vw;
    height: 8.98438vw;
    -moz-border-radius: 100%;
         border-radius: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background-color: #0167c9;
    margin: 0 auto;
    -webkit-transition: -webkit-transform 0.3s ease-out;
    transition: -webkit-transform 0.3s ease-out;
    -moz-transition: transform 0.3s ease-out, -moz-transform 0.3s ease-out;
    transition: transform 0.3s ease-out;
    transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out, -moz-transform 0.3s ease-out;
  }
  .home_information_item .arr img {
    width: 4.16667vw;
    height: auto;
  }
  .home_information .btn_default {
    margin: 10.41667vw auto 0;
  }
  .home_record {
    min-height: 54.6875vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 5.20833vw;
    background: url("../img/top/img_record_sp.webp") no-repeat center center/cover;
  }
  .home_record_box {
    position: relative;
    max-width: 62.5vw;
    height: 28.64583vw;
    margin: 0 auto;
    border: 0.26042vw solid #fff;
  }
  .home_record_box .bg {
    background-color: #889ea6;
    mix-blend-mode: multiply;
    position: absolute;
    width: 100%;
    height: 100%;
  }
  .home_record_ttl {
    position: relative;
    z-index: 1;
    padding: 3.25521vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    z-index: 1;
    height: 100%;
  }
  .home_record_ttl img {
    width: 44.79167vw;
  }
  .home_record .btn_wrap .home_record_btn {
    max-width: 39.0625vw;
    height: 9.11458vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 3.125vw;
    line-height: 1;
    font-weight: bold;
    -moz-border-radius: 100px;
         border-radius: 100px;
    color: #fff;
    border: 0.26042vw solid #fff;
    position: relative;
    margin: 5.20833vw auto 0;
  }
  .home_record .btn_wrap .home_record_btn .bg {
    width: 100%;
    height: 100%;
    background-color: #889ea6;
    mix-blend-mode: multiply;
    position: absolute;
    top: 0;
    left: 0;
    -moz-border-radius: 100px;
         border-radius: 100px;
  }
  .home_record .btn_wrap .home_record_btn .text {
    position: relative;
    z-index: 1;
    padding-right: 2.60417vw;
    padding-left: 2.60417vw;
  }
  .home_record .btn_wrap .home_record_btn .text:after {
    content: "";
    width: 3.125vw;
    height: 1.5625vw;
    background: url("../img/arr_white.svg") no-repeat center center/cover;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    right: -10px;
    -webkit-transition: -webkit-transform 0.3s ease-out;
    transition: -webkit-transform 0.3s ease-out;
    -moz-transition: transform 0.3s ease-out, -moz-transform 0.3s ease-out;
    transition: transform 0.3s ease-out;
    transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out, -moz-transform 0.3s ease-out;
  }
  .home_voice {
    padding: 13.02083vw 0;
    background-color: #d71317;
    overflow: hidden;
  }
  .home_voice .com_heading {
    text-align: left;
    margin-left: 2.60417vw;
  }
  .home_voice .com_heading_ja {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 3.90625vw;
  }
  .home_voice .com_heading_ja small {
    font-size: 3.64583vw;
  }
  .home_voice_wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-transform: skewY(-5deg);
       -moz-transform: skewY(-5deg);
        -ms-transform: skewY(-5deg);
            transform: skewY(-5deg);
    -webkit-transform-origin: center center;
       -moz-transform-origin: center center;
        -ms-transform-origin: center center;
            transform-origin: center center;
  }
  .home_voice_item {
    -webkit-box-flex: 0;
       -moz-box-flex: 0;
        -ms-flex: 0 0 33.333%;
            flex: 0 0 33.333%;
    min-width: 0;
    margin-left: -0.26042vw;
    position: relative;
  }
  .home_voice_item:nth-child(n + 4) {
    margin-top: -2.86458vw;
  }
  .home_voice_item:last-child {
    margin-top: -2.99479vw;
  }
  .home_voice_item a {
    display: block;
    position: relative;
    -webkit-transform: skewY(5deg);
       -moz-transform: skewY(5deg);
        -ms-transform: skewY(5deg);
            transform: skewY(5deg);
    -webkit-transform-origin: center center;
       -moz-transform-origin: center center;
        -ms-transform-origin: center center;
            transform-origin: center center;
  }
  .home_voice_item a:after {
    content: "";
    width: 100%;
    height: 95%;
    background-color: #000;
    position: absolute;
    top: 2%;
    left: 0;
    z-index: 1;
    -webkit-transform: skewY(-5deg);
       -moz-transform: skewY(-5deg);
        -ms-transform: skewY(-5deg);
            transform: skewY(-5deg);
    opacity: 0.2;
  }
  .home_voice_item .pic {
    overflow: hidden;
  }
  .home_voice_item .pic img {
    width: 100%;
    height: auto;
    display: block;
    -webkit-filter: grayscale(100%);
            filter: grayscale(100%);
    -webkit-transition: -webkit-filter 0.3s ease;
    transition: -webkit-filter 0.3s ease;
    -moz-transition: filter 0.3s ease;
    transition: filter 0.3s ease;
    transition: filter 0.3s ease, -webkit-filter 0.3s ease;
  }
  .home_voice_item span {
    display: block;
    font-size: 3.64583vw;
    line-height: 4.42708vw;
    font-weight: 800;
    color: #fff;
    position: absolute;
    bottom: 15px;
    left: 10px;
    -webkit-transform: skewY(-5deg) translate3d(0, 0, 0);
       -moz-transform: skewY(-5deg) translate3d(0, 0, 0);
            transform: skewY(-5deg) translate3d(0, 0, 0);
    z-index: 2;
  }
  .home_faq {
    padding: 13.02083vw 0;
  }
  .home_faq .com_heading {
    margin-bottom: 7.8125vw;
  }
  .home_faq_dl {
    margin-bottom: 2.60417vw;
    background-color: #0167c9;
    -moz-border-radius: 6.51042vw;
         border-radius: 6.51042vw;
  }
  .home_faq_dl:last-child {
    margin-bottom: 0;
  }
  .home_faq_dt {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.95313vw;
    width: 100%;
    padding: 2.60417vw;
    font-size: 3.125vw;
    line-height: 1.5;
    font-weight: 500;
    color: #fff;
    cursor: pointer;
    text-align: left;
    border: none;
    -moz-box-sizing: border-box;
         box-sizing: border-box;
  }
  .home_faq_dt::before {
    content: "Q";
    -ms-flex-negative: 0;
        flex-shrink: 0;
    width: 7.8125vw;
    height: 7.8125vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -moz-border-radius: 50%;
         border-radius: 50%;
    background-color: #fff;
    font-size: 3.64583vw;
    font-weight: bold;
    color: #0167c9;
    font-family: "Roboto", sans-serif;
  }
  .home_faq_dd {
    height: 0;
    overflow: hidden;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .home_faq_dd .txt {
    font-size: 3.64583vw;
    line-height: 1.8;
    color: #fff;
    padding: 1.30208vw 2.60417vw 2.60417vw 8.72396vw;
  }
  .bDetail .detail {
    padding: 10.41667vw 0 13.02083vw;
  }
  .bDetail .detail .ttl_box {
    padding-bottom: 2.60417vw;
    border-bottom: 1px solid #e60012;
    margin-bottom: 9.11458vw;
  }
  .bDetail .detail .ttl_box .ttlSt01 {
    margin-bottom: 0;
    color: #000;
    font-weight: bold;
  }
  .bDetail .detail .ttl_box .ttlSt01 span {
    display: inline-block;
    font-size: 2.86458vw;
    line-height: 1;
    font-weight: 500;
    color: #3e3a39;
    margin-top: 0.65104vw;
  }
  .bDetail .detail .detail_inner {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-bottom: 30px;
  }
  .bDetail .detail .detail_inner .detail_meta {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -moz-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 3.90625vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 15.625vw;
  }
  .bDetail .detail .detail_inner .detail_meta .detail_time_date {
    font-size: 8.46354vw;
    color: #e60012;
    font-weight: bold;
    width: 100%;
    text-align: left;
    line-height: 1;
  }
  .bDetail .detail .detail_inner .detail_meta .detail_time_month_year {
    font-size: 3.38542vw;
    text-align: left;
    width: 100%;
  }
  .bDetail .detail .detail_inner .detail_meta_top .txt_top {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .bDetail .detail .detail_inner .detail_meta_top .txt_top span {
    color: red;
    font-size: 7vw;
    font-weight: bold;
  }
  .bDetail .detail .detail_inner .detail_meta_top .txt_top h3 {
    font-size: 5vw;
    font-weight: bold;
    margin-left: 20px;
  }
  .bDetail .detail .detail_inner .school_from {
    margin-bottom: 15px;
    font-size: 5vw;
    font-weight: bold;
  }
  .bDetail .detail .detail_inner .school_from small {
    margin-left: 15px;
  }
  .bDetail .detail .detail_inner .comment_box {
    margin-bottom: 15px;
  }
  .bDetail .detail .detail_inner .comment_box h5 {
    font-size: 2rem;
    font-weight: bold;
    color: #e5959c;
  }
  .bDetail .detail .detail_inner .comment_box p {
    margin-top: 0 !important;
  }
  .bDetail .detail .detail_inner .content_dt {
    width: 100%;
  }
  .bDetail .detail .detail_inner .content_dt .cate_detail {
    padding: 1.30208vw 2.60417vw;
    display: inline-block;
    color: #fff;
    background: #e60012;
    font-size: 3.38542vw;
    line-height: 1;
  }
  .bDetail .detail .detail_inner .detail_title {
    font-size: 5.98958vw;
    font-weight: bold;
    margin-top: 3.90625vw;
    margin-bottom: 3.90625vw;
  }
  .bDetail .detail .detail_inner .detail_txt {
    color: #666;
    font-size: 3.90625vw;
  }
  .bDetail .detail .detail_inner .detail_txt p {
    margin-top: 10px;
  }
  .bDetail .detail .detail_inner .detail_txt p:not(:first-child) {
    margin-top: 3.90625vw;
  }
  .bDetail .detail .detail_inner .detail_txt img {
    margin-top: 5px;
    width: 100%;
    height: auto;
  }
  .bDetail .detail .detail_inner .detail_txt a {
    color: #0a6ab0;
  }
  .bDetail .detail .detail_inner .detail_btn {
    text-align: center;
    margin-top: 7.8125vw;
  }
  .bDetail .detail .detail_inner .detail_btn a {
    padding: 1.95313vw 6.51042vw;
    color: #fff;
    font-size: 3.64583vw;
    background: #8fc31f;
  }
  .p_policy_content {
    background-color: #0167c9;
    padding: 7.8125vw 0;
  }
  .p_policy_box {
    background-color: #fff;
    -moz-border-radius: 20px;
         border-radius: 20px;
    padding: 3.90625vw;
  }
  .p_policy_item:not(:last-child) {
    margin-bottom: 13.02083vw;
  }
  .p_policy_item h3 {
    font-size: 4.42708vw;
    line-height: 6.25vw;
    color: #0167c9;
    font-weight: bold;
    margin-bottom: 3.90625vw;
  }
  .p_policy_item p {
    font-size: 3.64583vw;
    line-height: 5.72917vw;
    font-weight: 600;
    text-align: justify;
  }
  .p_policy_item p + p {
    margin-top: 3.90625vw;
  }
  .p_policy_item p.txt_number {
    position: relative;
    padding-left: 3.90625vw;
  }
  .p_policy_item p.txt_number span {
    position: absolute;
    top: 0;
    left: 0;
  }
  .p_policy_item p.txt_right {
    text-align: right;
  }
  .p_policy_item .l_number {
    counter-reset: li;
    margin: 3.90625vw 0;
  }
  .p_policy_item .l_number li {
    font-size: 3.64583vw;
    line-height: 5.72917vw;
    font-weight: 600;
    position: relative;
    padding-left: 4.55729vw;
  }
  .p_policy_item .l_number li::before {
    counter-increment: li;
    content: counter(li) ".";
    position: absolute;
    top: 0;
    left: 0;
  }
  .p_policy_item .l_dot {
    counter-reset: li;
    margin: 3.90625vw 0;
  }
  .p_policy_item .l_dot li {
    font-size: 3.64583vw;
    line-height: 5.72917vw;
    font-weight: 600;
    position: relative;
    padding-left: 3.90625vw;
  }
  .p_policy_item .l_dot li::before {
    content: "・";
    font-size: 3.64583vw;
    line-height: 5.72917vw;
    font-weight: 600;
    position: absolute;
    top: 0;
    left: 0;
  }
  .p_course .sub_ttl {
    font-size: 3.90625vw;
    line-height: 1.5;
    font-weight: bold;
    text-align: center;
    margin-bottom: 2.60417vw;
    position: relative;
    z-index: 1;
  }
  .p_course .sub_ttl.--white {
    color: #fff;
  }
  .p_course .sub_ttl.--blue {
    color: #0167c9;
  }
  .p_course .sub_ttl.--red {
    color: #d71317;
  }
  .p_course_top {
    padding: 13.02083vw 0 4.55729vw;
    background-color: #0167c9;
    position: relative;
    z-index: 1;
  }
  .p_course_top:before {
    content: "";
    width: 100%;
    height: 58.59375vw;
    background-color: #0167c9;
    position: absolute;
    bottom: -6.51042vw;
    left: 0;
    -webkit-transform: skewY(-5deg);
       -moz-transform: skewY(-5deg);
        -ms-transform: skewY(-5deg);
            transform: skewY(-5deg);
    pointer-events: none;
    z-index: -1;
  }
  .p_course_top .top_item:not(:last-child) {
    margin-bottom: 13.02083vw;
  }
  .p_course_top .top_item_subItem:not(:last-child) {
    margin-bottom: 6.51042vw;
  }
  .p_course_top .top_item_subItem_ttl {
    font-size: 3.77604vw;
    line-height: 5.46875vw;
    font-weight: 600;
    text-align: center;
    color: #fff;
    margin-bottom: 2.60417vw;
  }
  .p_course_top .top_item_sub {
    font-size: 4.16667vw;
    line-height: 1.5;
    font-weight: bold;
    text-align: center;
    color: #fff;
    margin-bottom: 3.90625vw;
  }
  .p_course_top p {
    text-align: center;
    font-size: 3.38542vw;
    line-height: 5.46875vw;
    color: #fff;
    font-weight: 600;
  }
  .p_course_top p + p {
    margin-top: 3.90625vw;
  }
  .p_course_middle {
    padding: 20.83333vw 0 13.02083vw;
  }
  .p_course_middle .txt_top {
    text-align: center;
    font-size: 3.64583vw;
    line-height: 5.72917vw;
    font-weight: 600;
    position: relative;
    z-index: 1;
  }
  .p_course_middle .exp_course {
    margin-top: 9.11458vw;
  }
  .p_course_middle .exp_course .ttl_exp {
    text-align: center;
    font-size: 4.16667vw;
    line-height: 3.90625vw;
    font-weight: 600;
    margin-bottom: 5.20833vw;
  }
  .p_course_middle .exp_course_wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 3.90625vw;
  }
  .p_course_middle .exp_course_item {
    width: 65.75521vw;
    background-color: #e73116;
    -moz-border-radius: 2.60417vw;
         border-radius: 2.60417vw;
    color: #fff;
    padding: 2.60417vw;
    margin: 0 auto;
  }
  .p_course_middle .exp_course_item h5 {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center;
    font-size: 4.16667vw;
    line-height: 1.5;
    font-weight: bold;
    margin-bottom: 2.60417vw;
  }
  .p_course_middle .exp_course_item p {
    font-size: 3.38542vw;
    line-height: 5.46875vw;
    font-weight: 600;
    -moz-font-feature-settings: "palt" 1;
         font-feature-settings: "palt" 1;
  }
  .p_course_bottom {
    background-color: #0167c9;
    padding: 9.11458vw 0 43.61979vw;
  }
  .p_course_bottom .bottom_item:not(:last-child) {
    margin-bottom: 13.02083vw;
  }
  .p_course_bottom .txt_top {
    text-align: center;
    font-size: 3.64583vw;
    line-height: 5.72917vw;
    font-weight: 600;
    color: #fff;
    position: relative;
    z-index: 1;
  }
  .p_course_bottom .other_course .ttl_other {
    text-align: center;
    font-size: 4.16667vw;
    line-height: 5.72917vw;
    font-weight: 600;
    margin-bottom: 3.90625vw;
    color: #fff;
  }
  .p_course_bottom .other_course .list_oth {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2.60417vw;
  }
  .p_course_bottom .other_course .list_oth li {
    margin: 0 auto;
  }
  .p_course_bottom .other_course .list_oth li a {
    width: 100%;
    min-height: 10.41667vw;
    pointer-events: none;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background-color: #fff;
    font-size: 3.64583vw;
    line-height: 1.5;
    position: relative;
    text-align: center;
    font-weight: 600;
    color: #0167c9;
  }
  .p_course_bottom .other_course .list_oth li a:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0px 0px 1.82292vw 1.82292vw;
    border-color: transparent transparent #0167c9 transparent;
    -webkit-transform: rotate(0deg);
       -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
            transform: rotate(0deg);
    position: absolute;
    bottom: 0;
    right: 0;
  }
  .p_course_bottom .other_course .wrap_col3 {
    margin: 1.30208vw 0 2.60417vw;
  }
  .p_course_bottom .other_course .wrap_col3 .list_oth li {
    width: 78.125vw;
  }
  .p_course_bottom .other_course .wrap_col2 {
    margin: 1.30208vw auto 2.60417vw;
  }
  .p_course_bottom .other_course .wrap_col2 .list_oth li {
    width: 100%;
  }
  .p_course_bottom .other_course .wrap_col_lx {
    margin: 1.30208vw auto 2.60417vw;
  }
  .p_course_bottom .other_course .wrap_col_lx .list_oth {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .p_course_bottom .other_course .wrap_col_lx .list_oth li a {
    width: 100%;
    padding: 1.30208vw 5.20833vw;
  }
  .p_course_bottom .other_course .txt_right {
    text-align: right;
    font-size: 3.38542vw;
    line-height: 3.64583vw;
    font-weight: 600;
    color: #fff;
    margin-top: 2.60417vw;
    margin-right: 6.51042vw;
  }
  .p_course_counselor {
    padding: 9.11458vw 0 0;
    background-color: #efefef;
  }
  .p_course_counselor .txt {
    margin-bottom: 3.90625vw;
  }
  .p_course_counselor .txt .heading_ttl {
    text-align: left;
    margin-bottom: 2.60417vw;
  }
  .p_course_counselor .txt .sub_ttl {
    text-align: left;
    -moz-font-feature-settings: "palt" 1;
         font-feature-settings: "palt" 1;
  }
  .p_course_counselor .txt p {
    text-align: left;
    font-size: 3.64583vw;
    line-height: 5.72917vw;
    font-weight: 600;
    color: #0167c9;
  }
  .p_course .mg_top50 {
    margin-top: 3.90625vw;
  }
  .p_course .box_dot {
    width: 100%;
    margin: 3.90625vw auto;
    padding: 2.60417vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p_course .box_dot.--white {
    background-color: #fff;
  }
  .p_course .box_dot.--red {
    background-color: #fdeae8;
  }
  .p_course .box_dot .l_dot li {
    font-size: 3.64583vw;
    line-height: 5.20833vw;
    font-weight: bold;
    position: relative;
    padding-left: 4.55729vw;
  }
  .p_course .box_dot .l_dot li::before {
    content: "●";
    font-size: 3.64583vw;
    line-height: 5.20833vw;
    font-weight: bold;
    position: absolute;
    top: 0;
    left: 0;
  }
  .p_course .box_dot .l_dot li:not(:last-child) {
    margin-bottom: 1.30208vw;
  }
  .p_course01 .mainvisual_heading {
    padding-top: 58.59375vw;
  }
  .p_course01 .p_course_bottom {
    padding-bottom: 46.875vw;
  }
  .p_course01 .other_course {
    position: relative;
    margin-top: 15.625vw;
  }
  .p_course01 .other_course .deco {
    position: absolute;
    bottom: -49.47917vw;
    right: 3.25521vw;
  }
  .p_course01 .other_course .deco img {
    width: 28.25521vw;
    height: auto;
  }
  .p_course02 .other_course {
    position: relative;
    margin-top: 3.90625vw;
  }
  .p_course02 .other_course .deco {
    position: absolute;
    bottom: -70.3125vw;
    right: -1.30208vw;
  }
  .p_course02 .other_course .deco img {
    width: 51.17188vw;
    height: auto;
    z-index: -1;
  }
  .p_course03 .mainvisual_pic img {
    object-position: right;
  }
  .p_course03 .p_course_bottom {
    padding-bottom: 46.875vw;
  }
  .p_course03 .other_course {
    position: relative;
    margin-top: 3.90625vw;
  }
  .p_course03 .other_course .deco {
    position: absolute;
    bottom: -49.47917vw;
    right: 0vw;
  }
  .p_course03 .other_course .deco img {
    width: 32.29167vw;
    height: auto;
  }
  .p_course04 .p_course_bottom {
    padding-bottom: 46.875vw;
  }
  .p_course04 .other_course {
    position: relative;
    margin-top: 3.90625vw;
  }
  .p_course04 .other_course .deco {
    position: absolute;
    bottom: -49.47917vw;
    left: 0;
  }
  .p_course04 .other_course .deco img {
    width: 42.1875vw;
    height: auto;
  }
  .p_course05 .mainvisual_pic img {
    object-position: right;
  }
  .p_course05 .other_course {
    position: relative;
    margin-top: 3.90625vw;
  }
  .p_course05 .other_course .deco {
    position: absolute;
    bottom: -46.22396vw;
    left: 0;
  }
  .p_course05 .other_course .deco img {
    width: 32.29167vw;
    height: auto;
  }
  .p_course06 .other_course {
    position: relative;
    margin-top: 6.51042vw;
  }
  .p_course06 .other_course .deco {
    position: absolute;
    bottom: -43.61979vw;
    right: 1.30208vw;
  }
  .p_course06 .other_course .deco img {
    width: 44.79167vw;
    height: auto;
  }
  .p_record .mainvisual_pic img {
    object-position: center;
  }
  .p_record_content {
    background-color: #0167c9;
    padding: 10.41667vw 0;
  }
  .p_record_content .txt_top {
    font-size: 3.38542vw;
    line-height: 5.46875vw;
    font-weight: 600;
    color: #fff;
    margin-bottom: 6.51042vw;
    text-align: center;
  }
  .p_record_box {
    background-color: #fff;
    padding: 7.8125vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 3.90625vw;
  }
  .p_record_item:not(:last-child) {
    margin-bottom: 3.90625vw;
  }
  .p_record_item_ttl {
    font-size: 3.90625vw;
    line-height: 1.2;
    font-weight: 600;
    color: #fff;
    background-color: #0167c9;
    -moz-border-radius: 1.30208vw;
         border-radius: 1.30208vw;
    padding: 1.95313vw 2.60417vw;
    margin-bottom: 1.30208vw;
  }
  .p_record_item_list li {
    font-size: 3.38542vw;
    line-height: 5.46875vw;
    background-color: #e7e9ea;
    font-weight: 600;
    padding: 0.65104vw 2.60417vw;
  }
  .p_record_item_list li:not(:last-child) {
    margin-bottom: 0.65104vw;
  }
  .p_record_item_list.is-collapsed li:nth-child(n + 12) {
    display: none;
  }
  .p_record_item .btn_wrap.is-readmore-hidden {
    display: none !important;
  }
  .p_record_item .btn_default {
    margin: 2.60417vw auto 0;
  }
  .p_record .txt_bottom {
    text-align: right;
    font-size: 3.38542vw;
    line-height: 5.46875vw;
    font-weight: 600;
  }
  .p_voice {
    background-color: #0167c9;
  }
  .p_voice .tabs_controls {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1.95313vw;
    margin-right: -vw(15);
    margin-bottom: 3.90625vw;
  }
  .p_voice .tabs_controls .js_tab_btn {
    width: -webkit-calc(50% - 1.95313vw);
    width: -moz-calc(50% - 1.95313vw);
    width: calc(50% - 1.95313vw);
    min-height: 13.02083vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 3.64583vw;
    line-height: 1;
    font-weight: 600;
    color: #0167c9;
    background-color: #cce1f4;
    padding: 1.30208vw;
    text-align: center;
    border: none;
    cursor: pointer;
  }
  .p_voice .tabs_controls .js_tab_btn.is_active {
    background-color: #0167c9;
    color: #fff;
  }
  .p_voice_top {
    padding: 7.16146vw 0;
  }
  .p_voice_top p {
    font-size: 3.38542vw;
    line-height: 5.46875vw;
    font-weight: 600;
    color: #fff;
    text-align: center;
  }
  .p_voice_bottom {
    padding: 6.51042vw 0 13.02083vw;
    background-color: #fff;
  }
  .p_voice_box {
    background-color: #0167c9;
    padding: 3.90625vw;
  }
  .p_voice_box .voice_type {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 3.25521vw;
  }
  .p_voice_box .voice_type .ttl_wrap {
    padding: 1.30208vw 1.95313vw;
    background: #fff;
    color: #0167c9;
    margin-right: 1.95313vw;
    -moz-border-radius: 15px;
         border-radius: 15px;
    font-weight: bold;
    font-size: 3.90625vw;
  }
  .p_voice_box .voice_type .ttl_wrap.is-active {
    background: #d71317;
    color: #fff;
  }
  .p_voice_wrap:not(:last-child) {
    margin-bottom: 11.71875vw;
  }
  .p_voice_wrap .ttl_wrap {
    font-size: 4.16667vw;
    line-height: 1;
    font-weight: 600;
    text-align: center;
    -moz-border-radius: 100px;
         border-radius: 100px;
    background-color: #fff;
    min-height: 11.71875vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 5.20833vw;
  }
  .p_voice_wrap.clg_blue .ttl_wrap {
    color: #0167c9;
  }
  .p_voice_wrap.clg_blue .p_voice_item_top {
    background-color: #0167c9;
  }
  .p_voice_wrap.clg_blue .p_voice_item_bottom h5 {
    color: #0167c9;
  }
  .p_voice_wrap.clg_red .ttl_wrap {
    color: #d71317;
  }
  .p_voice_wrap.clg_red .p_voice_item_top {
    background-color: #d71317;
  }
  .p_voice_wrap.clg_red .p_voice_item_bottom h5 {
    color: #d71317;
  }
  .p_voice_item {
    background-color: #fff;
    -moz-border-radius: 2.60417vw;
         border-radius: 2.60417vw;
    padding: 2.60417vw;
  }
  .p_voice_item:not(:last-child) {
    margin-bottom: 5.20833vw;
  }
  .p_voice_item_top {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    min-height: 9.11458vw;
    -moz-border-radius: 100px;
         border-radius: 100px;
    padding: 1.30208vw 2.60417vw;
    margin-bottom: 2.60417vw;
  }
  .p_voice_item_top .name_school1 {
    display: block;
    font-size: 3.38542vw;
    line-height: 6.51042vw;
    font-weight: 600;
    color: #fff;
    border-right: 0.52083vw solid #fff;
    padding-right: 1.95313vw;
  }
  .p_voice_item_top .name_school1.bd_none {
    border-right: none;
  }
  .p_voice_item_top .name_right {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.30208vw;
  }
  .p_voice_item_top .name_right .name_school2 {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 3.125vw;
    line-height: 4.42708vw;
    font-weight: 600;
    color: #fff;
  }
  .p_voice_item_top .name_right .name_author {
    display: block;
    font-size: 3.64583vw;
    line-height: 4.42708vw;
    font-weight: 600;
    color: #fff;
  }
  .p_voice_item_bottom {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .p_voice_item_bottom .pic {
    width: 26.04167vw;
  }
  .p_voice_item_bottom .txt {
    width: -webkit-calc(100% - 26.04167vw);
    width: -moz-calc(100% - 26.04167vw);
    width: calc(100% - 26.04167vw);
    padding-left: 2.60417vw;
  }
  .p_voice_item_bottom .txt h5 {
    font-size: 3.64583vw;
    line-height: 5.46875vw;
    font-weight: 600;
    margin-bottom: 1.82292vw;
  }
  .p_voice_item_bottom .txt p {
    font-size: 3.38542vw;
    line-height: 5.46875vw;
    -moz-font-feature-settings: "palt" 1;
         font-feature-settings: "palt" 1;
  }
  .p_voice .btn_wrap .btn_default {
    margin: 6.51042vw auto 0;
  }
  .p_teaching_tab_btns {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 3.90625vw;
    margin: 0 -1.95313vw 6.51042vw;
    position: relative;
    z-index: 2;
  }
  .p_teaching_tab_btn {
    width: -webkit-calc(33.33% - 3.90625vw);
    width: -moz-calc(33.33% - 3.90625vw);
    width: calc(33.33% - 3.90625vw);
    min-height: 8.46354vw;
    font-size: 3.38542vw;
    line-height: 1;
    font-weight: 600;
    color: #fff;
    background-color: #f2a895;
    border: none;
    cursor: pointer;
    position: relative;
    clip-path: polygon(0 0, 100% 0, 100% -webkit-calc(100% - 8px), -webkit-calc(100% - 8px) 100%, 0 100%);
    clip-path: polygon(0 0, 100% 0, 100% -moz-calc(100% - 8px), -moz-calc(100% - 8px) 100%, 0 100%);
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 8px), calc(100% - 8px) 100%, 0 100%);
  }
  .p_teaching_tab_btn.is_active {
    background-color: #e84d3c;
    z-index: 1;
  }
  .p_teaching_tab_panel {
    display: none;
  }
  .p_teaching_tab_panel.is_active {
    display: block;
  }
  .p_teaching_content {
    padding: 6.51042vw 0 13.02083vw;
    background-color: #0167c9;
  }
  .p_teaching_case {
    background-color: #fff;
    padding: 6.51042vw 3.90625vw;
    -moz-border-radius: 2.60417vw;
         border-radius: 2.60417vw;
  }
  .p_teaching_case:not(:last-child) {
    margin-bottom: 6.51042vw;
  }
  .p_teaching_case_header {
    position: relative;
    margin-top: 8.46354vw;
    margin-bottom: 5.85938vw;
  }
  .p_teaching_case_location {
    max-width: 41.66667vw;
    min-height: 14.97396vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    background-color: #80B3E4;
    font-size: 3.38542vw;
    line-height: 1;
    font-weight: bold;
    -moz-border-radius: 0 0 1.69271vw 1.69271vw;
         border-radius: 0 0 1.69271vw 1.69271vw;
    color: #fff;
    position: absolute;
    top: -17.57813vw;
    left: 0;
    width: 100%;
  }
  .p_teaching_case_location small {
    display: block;
    font-size: 2.86458vw;
    line-height: 1;
    margin-top: 1.95313vw;
  }
  .p_teaching_case_ttl {
    font-size: 4.16667vw;
    line-height: 1.5;
    font-weight: bold;
    color: #0167c9;
  }
  .p_teaching_case_info {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 3.25521vw;
    width: 100%;
    margin-bottom: 3.25521vw;
  }
  .p_teaching_case_info_item {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .p_teaching_case_info_item dt {
    width: 28.64583vw;
    min-height: 6.51042vw;
    font-size: 3.38542vw;
    line-height: 5.85938vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    background-color: #0167c9;
    color: #fff;
  }
  .p_teaching_case_info_item dd {
    font-size: 3.64583vw;
    line-height: 5.46875vw;
    color: #0167c9;
    width: -webkit-calc(100% - 28.64583vw);
    width: -moz-calc(100% - 28.64583vw);
    width: calc(100% - 28.64583vw);
    padding-left: 2.60417vw;
  }
  .p_teaching_case_body {
    margin-bottom: 6.51042vw;
  }
  .p_teaching_case_section {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.95313vw;
  }
  .p_teaching_case_section:not(:last-child) {
    margin-bottom: 3.25521vw;
  }
  .p_teaching_case_heading {
    width: 28.64583vw;
    min-height: 6.51042vw;
    font-size: 3.38542vw;
    line-height: 5.85938vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    background-color: #0167c9;
    color: #fff;
  }
  .p_teaching_case_text p {
    font-size: 3.38542vw;
    line-height: 5.46875vw;
  }
  .p_teaching_case_voice {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 7.8125vw;
    margin-top: 10.41667vw;
  }
  .p_teaching_case_voice_item {
    border: 1px solid #0167c9;
    -moz-border-radius: 2.60417vw;
         border-radius: 2.60417vw;
    padding: 5.85938vw 2.60417vw 2.60417vw;
    position: relative;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    max-width: 78.125vw;
    width: 100%;
    margin: 0 auto;
  }
  .p_teaching_case_voice_pic {
    width: 15.625vw;
  }
  .p_teaching_case_voice_txt {
    width: -webkit-calc(100% - 15.625vw);
    width: -moz-calc(100% - 15.625vw);
    width: calc(100% - 15.625vw);
    padding-left: 2.60417vw;
  }
  .p_teaching_case_voice_txt p {
    font-size: 3.38542vw;
    line-height: 5.46875vw;
  }
  .p_teaching_case_voice_ttl {
    font-size: 3.90625vw;
    line-height: 5.46875vw;
    padding: 0.65104vw 3.25521vw;
    background-color: #0167c9;
    color: #fff;
    display: inline-block;
    position: absolute;
    top: -3.90625vw;
    left: -0.13021vw;
  }
  .p_recruitment_top {
    padding: 125px 0 100px;
    background-color: #0167c9;
  }
  .p_recruitment_top .row {
    position: relative;
  }
  .p_recruitment_top .row:after {
    content: "";
    width: 31.64063vw;
    height: 44.79167vw;
    background: url("../img/recruitment/vector.webp") no-repeat center center/contain;
    position: absolute;
    bottom: -100px;
    right: 0;
  }
  .p_recruitment_top .txt_top {
    text-align: center;
    font-size: 3.38542vw;
    line-height: 5.46875vw;
    font-weight: 600;
    color: #fff;
    margin-bottom: 30px;
  }
  .p_recruitment_top .l_circle {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    gap: 4.55729vw;
  }
  .p_recruitment_top .l_circle li {
    width: 45.57292vw;
    height: 45.57292vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -moz-border-radius: 100%;
         border-radius: 100%;
    background-color: #fff;
    font-size: 3.125vw;
    line-height: 5.20833vw;
    color: #0167c9;
    text-align: center;
    font-weight: 600;
  }
  .p_recruitment_top .l_circle li:last-child {
    padding-top: 4.55729vw;
  }
  .p_recruitment_middle {
    padding: 10.41667vw 0;
  }
  .p_recruitment_middle_item {
    border: 1px solid #0167c9;
  }
  .p_recruitment_middle_item:not(:last-child) {
    margin-bottom: 6.51042vw;
  }
  .p_recruitment_middle_item h3 {
    background-color: #0167c9;
    color: #fff;
    padding: 2.60417vw;
    font-size: 3.90625vw;
    line-height: 1;
    font-weight: 600;
    text-align: center;
  }
  .p_recruitment_middle_item_box {
    padding: 2.60417vw 3.90625vw;
  }
  .p_recruitment_middle_item_box .l_inf li {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .p_recruitment_middle_item_box .l_inf li:not(:last-child) {
    margin-bottom: 2.60417vw;
  }
  .p_recruitment_middle_item_box .l_inf span {
    display: block;
    font-size: 3.38542vw;
    line-height: 5.46875vw;
    font-weight: 600;
    width: 19.53125vw;
    color: #0167c9;
  }
  .p_recruitment_middle_item_box .l_inf em {
    width: -webkit-calc(100% - 19.53125vw);
    width: -moz-calc(100% - 19.53125vw);
    width: calc(100% - 19.53125vw);
    display: block;
    font-size: 3.38542vw;
    line-height: 5.46875vw;
    font-style: normal;
  }
  .p_recruitment_middle_item_box .note {
    font-size: 3.38542vw;
    line-height: 5.46875vw;
    position: relative;
    padding-left: 3.90625vw;
    margin-top: 5.20833vw;
  }
  .p_recruitment_middle_item_box .note:before {
    content: "※";
    font-size: 3.38542vw;
    line-height: 5.46875vw;
    position: absolute;
    top: 0;
    left: 0;
  }
  .p_recruitment_bottom {
    padding: 6.51042vw 0;
  }
  .p_recruitment_bottom .txt_top {
    text-align: center;
    font-size: 3.38542vw;
    line-height: 5.46875vw;
    font-weight: 600;
    margin-bottom: 6.51042vw;
  }
  .p_recruitment_bottom_step {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p_recruitment_bottom_step li {
    text-align: center;
    font-size: 3.38542vw;
    color: #0167c9;
    line-height: 1;
    font-weight: 500;
    width: -webkit-calc(100% / 3);
    width: -moz-calc(100% / 3);
    width: calc(100% / 3);
    height: 7.42188vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    padding-right: 2.60417vw;
  }
  .p_recruitment_bottom_step li.active {
    z-index: 4 !important;
    height: 7.42188vw;
  }
  .p_recruitment_bottom_step li.active::after {
    height: 7.42188vw;
    background: url("../img/recruitment/ctStep_bg_active.webp") no-repeat right center;
    -moz-background-size: auto 7.42188vw;
         background-size: auto 7.42188vw;
    width: 30.72917vw;
  }
  .p_recruitment_bottom_step li.active span {
    color: #fff;
  }
  .p_recruitment_bottom_step li span {
    position: relative;
    z-index: 4;
  }
  .p_recruitment_bottom_step li span .nb {
    font-family: "Roboto", sans-serif;
    display: inline-block;
    margin-right: 1.95313vw;
  }
  .p_recruitment_bottom_step li:first-child {
    z-index: 3;
  }
  .p_recruitment_bottom_step li:last-child:after {
    width: 33.85417vw;
    background: url("../img/recruitment/ctStep_bg_lastchild.webp") no-repeat right center;
    -moz-background-size: 33.85417vw 7.42188vw;
         background-size: 33.85417vw 7.42188vw;
  }
  .p_recruitment_bottom_step li:nth-child(2) {
    z-index: 2;
  }
  .p_recruitment_bottom_step li:not(:first-child) {
    border-left: 0;
  }
  .p_recruitment_bottom_step li::after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: 36.45833vw;
    height: 7.42188vw;
    background: url("../img/recruitment/ctStep_bg.webp") no-repeat right center;
    -moz-background-size: 36.45833vw 7.42188vw;
         background-size: 36.45833vw 7.42188vw;
  }
  .b_form .form-group {
    padding: 5.20833vw 0;
  }
  .b_form .form-group:not(:last-child) {
    border-bottom: 1px solid #000;
  }
  .b_form .form-group.bg_none {
    border-bottom: none;
  }
  .b_form .form-group > label {
    font-size: 3.64583vw;
    line-height: 1.5;
    font-weight: 600;
    white-space: nowrap;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-bottom: 1.95313vw;
  }
  .b_form .form-group > label .label_ttl {
    width: 39.0625vw;
    display: block;
  }
  .b_form .form-group > label small {
    display: block;
    width: 100%;
    font-size: 2.86458vw;
    line-height: 1.5;
    margin-top: 10px;
  }
  .b_form .form-group .form-control {
    background-color: #fff;
    border: 1px solid #000;
    height: 10.41667vw;
    width: 100%;
    -moz-border-radius: 10px;
         border-radius: 10px;
    font-size: 2.86458vw;
    font-weight: 500;
    padding: 0 1.30208vw;
    -webkit-box-flex: 1;
       -moz-box-flex: 1;
        -ms-flex: 1 0;
            flex: 1 0;
  }
  .b_form .form-group .form-control::-webkit-input-placeholder {
    color: #cccccc;
  }
  .b_form .form-group .form-control::-moz-placeholder {
    color: #cccccc;
  }
  .b_form .form-group .form-control:-ms-input-placeholder {
    color: #cccccc;
  }
  .b_form .form-group .form-control::placeholder {
    color: #cccccc;
  }
  .b_form .form-group textarea {
    min-height: 39.0625vw;
    -webkit-box-flex: 1;
       -moz-box-flex: 1;
        -ms-flex: 1 0;
            flex: 1 0;
    font-size: 1.6rem;
    line-height: 1.5;
    padding: 1.30208vw !important;
  }
  .b_form .form-group .radio-list {
    -webkit-box-flex: 1;
       -moz-box-flex: 1;
        -ms-flex: 1 0;
            flex: 1 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
    gap: 10px;
  }
  .b_form .form-group .radio-list.flx_wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 10px;
  }
  .b_form .form-group .radio-list label {
    font-size: 3.38542vw;
    line-height: 1.5;
    font-weight: 500;
    position: relative;
    cursor: pointer;
  }
  .b_form .form-group .radio-list .mwform-radio-field.horizontal-item:not(:last-child) {
    margin-right: 25px;
  }
  .b_form .form-group .form-pr {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
  }
  .b_form .txt_pr {
    text-align: center;
    font-size: 2.86458vw;
    line-height: 1.8;
    font-weight: 600;
  }
  .b_form .required {
    color: #fff;
    font-size: 2.60417vw;
    line-height: 1;
    background-color: #d71317;
    display: inline-block;
    padding: 0.65104vw 1.30208vw 0.65104vw;
    margin-top: 1.04167vw;
  }
  .b_form .agree {
    margin: 6.51042vw 0 1.30208vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .b_form .agree .mwform-checkbox-field .label {
    cursor: pointer;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .b_form .agree .mwform-checkbox-field-text {
    font-size: 3.38542vw;
    line-height: 1.5;
    font-weight: 500;
  }
  .b_form .btn_wrap {
    text-align: center;
  }
  .b_form button {
    background-color: #ff841e;
    color: #0167c9;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    border: none;
    width: 55.72917vw;
    height: 10.41667vw;
    font-size: 2.86458vw;
    font-weight: 600;
    -moz-border-radius: 1.30208vw;
         border-radius: 1.30208vw;
    background-color: #fff;
    border: 1px solid #0167c9;
    -webkit-transition: 0.3s ease;
    -moz-transition: 0.3s ease;
    transition: 0.3s ease;
    margin: 0 auto;
    cursor: pointer;
  }
  .b_form button:hover {
    background-color: #0167c9;
    color: #fff;
  }
  .b_form .mw_wp_form_complete p {
    font-size: 1.8rem;
    text-align: center;
  }
  .b_form .mw_wp_form_complete .back_top {
    text-align: center;
  }
  .b_form .mw_wp_form_complete .back_top a {
    padding: 10px;
    color: #fff;
    -moz-border-radius: 20px;
         border-radius: 20px;
  }
  .p_why_content {
    padding: 10.67708vw 0 13.02083vw;
    background-color: #0167c9;
  }
  .p_why .txt_top {
    text-align: center;
    color: #fff;
    font-size: 3.38542vw;
    line-height: 5.72917vw;
    font-weight: 600;
    margin-bottom: 6.51042vw;
  }
  .p_why_item {
    background-color: #fff;
    padding: 3.90625vw 5.20833vw 5.20833vw;
  }
  .p_why_item:not(:last-child) {
    margin-bottom: 9.11458vw;
  }
  .p_why_item h4 {
    font-size: 3.64583vw;
    line-height: 1.5;
    font-weight: bold;
    color: #0167c9;
    text-align: center;
    margin-bottom: 1.95313vw;
  }
  .p_why_item .nb {
    display: block;
    text-align: center;
    color: #0167c9;
    font-size: 13.02083vw;
    line-height: 1;
    font-weight: bold;
    margin-bottom: 2.60417vw;
    font-family: "Roboto", sans-serif;
  }
  .p_why_item_flx {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 3.90625vw;
  }
  .p_why_item .txt h5 {
    font-size: 3.90625vw;
    line-height: 1.7;
    font-weight: bold;
    margin-bottom: 1.95313vw;
    color: #231815;
  }
  .p_why_item .txt p {
    font-size: 3.38542vw;
    line-height: 5.72917vw;
  }
  .p_why_item .txt p + p {
    margin-top: 2.60417vw;
  }
  .p_why_item .txt .b_blue_cts {
    background-color: #0167c9;
    -moz-border-radius: 2.47396vw;
         border-radius: 2.47396vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 2.60417vw 3.90625vw 3.90625vw;
    margin-top: 2.60417vw;
  }
  .p_why_item .txt .b_blue_cts .l_dot {
    -moz-border-radius: 2.47396vw;
         border-radius: 2.47396vw;
  }
  .p_why_item .txt .b_blue_cts .txt_box {
    color: #fff;
    font-size: 3.38542vw;
    line-height: 5.72917vw;
    font-weight: 600;
  }
  .p_why_item .txt .lx_wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2.60417vw;
    margin: 2.60417vw 0;
  }
  .p_why_item .txt .b_red span {
    display: inline-block;
    font-size: 3.125vw;
    line-height: 1;
    padding: 1.95313vw 2.60417vw;
    -moz-border-radius: 2.47396vw 2.47396vw 0 0;
         border-radius: 2.47396vw 2.47396vw 0 0;
    background-color: #d71317;
    color: #fff;
    font-weight: 600;
  }
  .p_why_item .txt .b_red .l_dot {
    background-color: #d71317;
  }
  .p_why_item .txt .b_blue span {
    display: inline-block;
    font-size: 3.125vw;
    line-height: 1;
    padding: 2.60417vw;
    -moz-border-radius: 2.47396vw 2.47396vw 0 0;
         border-radius: 2.47396vw 2.47396vw 0 0;
    background-color: #0167c9;
    color: #fff;
    font-weight: 600;
  }
  .p_why_item .txt .b_blue .l_dot {
    background-color: #0167c9;
  }
  .p_why_item .txt .l_dot {
    -moz-border-radius: 0 2.47396vw 2.47396vw 2.47396vw;
         border-radius: 0 2.47396vw 2.47396vw 2.47396vw;
    padding: 2.60417vw 1.95313vw;
  }
  .p_why_item .txt .l_dot li {
    font-size: 3.38542vw;
    line-height: 5.46875vw;
    color: #fff;
    position: relative;
    padding-left: 4.55729vw;
    font-weight: bold;
  }
  .p_why_item .txt .l_dot li:before {
    content: "●";
    font-size: 2.86458vw;
    line-height: 1.7;
    position: absolute;
    top: 0.65104vw;
    left: 0;
  }
  .p_why_item .txt .l_dot li:not(:last-child) {
    margin-bottom: 1.95313vw;
  }
  .p_why_item .txt .txt_right {
    text-align: right;
  }
  .p_why_item .txt .txt_note {
    font-size: 2.86458vw;
    line-height: 5.20833vw;
    position: relative;
    padding-left: 3.25521vw;
    display: inline-block;
    -moz-font-feature-settings: "palt" 1;
         font-feature-settings: "palt" 1;
  }
  .p_why_item .txt .txt_note:before {
    content: "※";
    font-size: 2.86458vw;
    line-height: 5.20833vw;
    position: absolute;
    top: 0;
    left: 0;
  }
  .p_why_item .pic {
    width: 57.29167vw;
    margin: 0 auto;
  }
  .p_course_detail_top {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 3.90625vw;
    padding: 26.04167vw 0 19.53125vw;
  }
  .p_course_detail_top_btn {
    border: none;
    cursor: pointer;
    border-bottom: 0.52083vw solid #0167c9;
    width: 100%;
    background-color: transparent;
    position: relative;
    opacity: 0.5;
  }
  .p_course_detail_top_btn.is_active {
    opacity: 1;
  }
  .p_course_detail_top_btn:before {
    content: "";
    width: 0.52083vw;
    height: 6.51042vw;
    background-color: #0167c9;
    position: absolute;
    bottom: -6.51042vw;
    left: 0;
  }
  .p_course_detail_top_btn:after {
    content: "";
    width: 0.52083vw;
    height: 6.51042vw;
    background-color: #0167c9;
    position: absolute;
    bottom: -6.51042vw;
    right: 0;
  }
  .p_course_detail_top_btn.is_active {
    opacity: 1;
  }
  .p_course_detail_top_btn .fl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 84.63542vw;
    margin: 0 auto;
    -moz-border-radius: 5.20833vw 5.20833vw 0 0;
         border-radius: 5.20833vw 5.20833vw 0 0;
    background-color: #0167c9;
    padding: 2.60417vw;
    min-height: 23.4375vw;
  }
  .p_course_detail_top_btn:not(:last-child) {
    margin-bottom: 13.02083vw;
  }
  .p_course_detail_top_btn.p_course_detail_top_btn01 .img01 {
    width: 36.45833vw;
    margin-right: -6.51042vw;
  }
  .p_course_detail_top_btn .left {
    width: 29.94792vw;
  }
  .p_course_detail_top_btn .right {
    width: -webkit-calc(100% - 29.94792vw);
    width: -moz-calc(100% - 29.94792vw);
    width: calc(100% - 29.94792vw);
    padding-left: 1.30208vw;
  }
  .p_course_detail_top_btn .right .heading {
    color: #fff;
  }
  .p_course_detail_top_btn .right .heading b {
    font-size: 7.8125vw;
    line-height: 1;
    font-weight: bold;
  }
  .p_course_detail_top_btn .right .heading span {
    font-size: 5.20833vw;
    line-height: 1;
    font-weight: bold;
  }
  .p_course_detail_top_btn .right .heading .sub {
    font-size: 4.16667vw;
    line-height: 1;
    font-weight: bold;
    margin-top: 1.95313vw;
  }
  .p_course_detail_top_btn .right .heading .sub small {
    font-size: 2.86458vw;
  }
  .p_course_detail_top_btn .right .desc {
    font-size: 2.86458vw;
    line-height: 1;
    color: #0167c9;
    background-color: #fff;
    padding: 1.30208vw;
    display: block;
    font-weight: bold;
    margin-top: 1.30208vw;
  }
  .p_course_detail .detail_top {
    padding: 10.41667vw 0 3.90625vw;
    text-align: center;
    position: relative;
  }
  .p_course_detail .detail_top:after {
    content: "";
    width: 95.05208vw;
    height: 28.90625vw;
    background: url("../img/course_detail/icon_logo_detail.svg") no-repeat center center/contain;
    position: absolute;
    bottom: -5.20833vw;
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    z-index: -1;
  }
  .p_course_detail .detail_top .dt_heading {
    color: #0167c9;
  }
  .p_course_detail .detail_top .dt_heading b {
    font-size: 9.375vw;
    line-height: 1;
    font-weight: bold;
  }
  .p_course_detail .detail_top .dt_heading span {
    font-size: 6.51042vw;
    line-height: 1;
    font-weight: bold;
  }
  .p_course_detail .detail_top .dt_heading .sub {
    font-size: 5.20833vw;
    line-height: 1;
    font-weight: bold;
    margin-top: 2.60417vw;
  }
  .p_course_detail .detail_top .dt_heading .sub small {
    font-size: 3.90625vw;
  }
  .p_course_detail .detail_top .desc {
    font-size: 3.125vw;
    line-height: 1;
    color: #fff;
    background-color: #0167c9;
    padding: 1.30208vw 2.60417vw;
    display: inline-block;
    font-weight: bold;
    margin-top: 1.95313vw;
  }
  .p_course_detail .detail_if {
    background-color: #0167c9;
    padding: 7.8125vw 0;
  }
  .p_course_detail .detail_if .row {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 5.20833vw;
  }
  .p_course_detail .detail_if .txt h3 {
    font-size: 4.16667vw;
    line-height: 1.5;
    font-weight: bold;
    color: #fff;
    margin-bottom: 3.90625vw;
  }
  .p_course_detail .detail_if .txt p {
    font-size: 3.38542vw;
    line-height: 5.46875vw;
    color: #fff;
    font-weight: 600;
  }
  .p_course_detail .detail_if .pic {
    width: 83.33333vw;
    margin: 0 auto;
  }
  .p_course_detail .detail_wrap {
    padding: 10.41667vw 0;
  }
  .p_course_detail .detail_item:not(:last-child) {
    margin-bottom: 10.41667vw;
  }
  .p_course_detail .detail_item .ttl_it {
    text-align: center;
    font-size: 4.6875vw;
    line-height: 1;
    font-weight: bold;
    color: #0167c9;
    margin-bottom: 3.90625vw;
  }
  .p_course_detail .detail_item .curriculum_block {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin: 0 auto;
  }
  .p_course_detail .detail_item .curriculum_block:not(:last-child) {
    margin-bottom: 3.90625vw;
  }
  .p_course_detail .detail_item .curriculum_block .curriculum_ttl {
    font-size: 3.38542vw;
    line-height: 1;
    font-weight: bold;
    color: #0167c9;
    margin-right: 2.60417vw;
    width: 11.71875vw;
    margin-top: 1.04167vw;
  }
  .p_course_detail .detail_item .curriculum_block .flx {
    width: -webkit-calc(100% - 11.71875vw);
    width: -moz-calc(100% - 11.71875vw);
    width: calc(100% - 11.71875vw);
  }
  .p_course_detail .detail_item .curriculum_block .curriculum_tags {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    gap: 1.30208vw;
    margin-right: -1.30208vw;
  }
  .p_course_detail .detail_item .curriculum_block .curriculum_tags:not(:last-child) {
    margin-bottom: 1.95313vw;
  }
  .p_course_detail .detail_item .curriculum_block .curriculum_tags span {
    -moz-border-radius: 100px;
         border-radius: 100px;
    background-color: #cce1f4;
    padding: 1.30208vw 0;
    min-width: -webkit-calc(25% - 1.30208vw);
    min-width: -moz-calc(25% - 1.30208vw);
    min-width: calc(25% - 1.30208vw);
    min-height: 6.51042vw;
    padding: 0 1.95313vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 2.86458vw;
    line-height: 1;
    font-weight: 600;
    color: #212121;
  }
  .p_course_detail .detail_item .txt_desc {
    text-align: center;
    font-size: 3.38542vw;
    line-height: 5.46875vw;
    font-weight: 600;
    color: #212121;
  }
  .p_course_detail .detail_item .price_block {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin: 0 auto;
  }
  .p_course_detail .detail_item .price_block:not(:last-child) {
    margin-bottom: 3.90625vw;
  }
  .p_course_detail .detail_item .price_block.price_center .price_pills {
    margin-top: 0 !important;
  }
  .p_course_detail .detail_item .price_block .price_ttl {
    font-size: 3.38542vw;
    line-height: 1;
    font-weight: bold;
    color: #0167c9;
    margin-right: 2.60417vw;
    width: 11.71875vw;
    margin-top: 0.78125vw;
  }
  .p_course_detail .detail_item .price_block .txt_right {
    width: -webkit-calc(100% - 11.71875vw);
    width: -moz-calc(100% - 11.71875vw);
    width: calc(100% - 11.71875vw);
  }
  .p_course_detail .detail_item .price_block .txt_right .price_note {
    font-size: 3.38542vw;
    line-height: 5.46875vw;
    font-weight: 600;
    color: #212121;
  }
  .p_course_detail .detail_item .price_block .txt_right .price_pills {
    margin-top: 1.30208vw;
  }
  .p_course_detail .detail_item .price_block .txt_right .price_pills .price_pill {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 2.60417vw;
  }
  .p_course_detail .detail_item .price_block .txt_right .price_pills .price_pill:not(:last-child) {
    margin-bottom: 1.95313vw;
  }
  .p_course_detail .detail_item .price_block .txt_right .price_pills .price_pill .price_label {
    width: 23.4375vw;
    min-height: 5.85938vw;
    -moz-border-radius: 100px;
         border-radius: 100px;
    background-color: #cce1f4;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 3.125vw;
    line-height: 1;
    font-weight: 600;
    color: #212121;
  }
  .p_course_detail .detail_item .price_block .txt_right .price_pills .price_pill .price_value {
    font-size: 3.38542vw;
    line-height: 1;
    font-weight: bold;
  }
  .p_course_detail .detail_item .price_block .txt_right .price_pills .price_pill .note {
    display: block;
    font-size: 2.86458vw;
    line-height: 1;
    font-weight: 600;
    width: 100%;
  }
  .p_course_detail .detail_item .l_point {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    gap: 1.30208vw;
  }
  .p_course_detail .detail_item .l_point li {
    -moz-border-radius: 100px;
         border-radius: 100px;
    background-color: #cce1f4;
    padding: 1.30208vw;
    max-width: 15.625vw;
    min-height: 5.85938vw;
    width: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 3.125vw;
    line-height: 1;
    font-weight: 600;
    color: #212121;
  }
  .p_course_detail .detail_item .txt_bottom {
    font-size: 3.125vw;
    line-height: 5.46875vw;
    font-weight: 600;
    color: #212121;
    text-align: center;
    margin-top: 2.60417vw;
  }
  .p_course_detail .detail_item .pricing_table_wrap {
    margin: 5.20833vw auto 0;
  }
  .p_course_detail .detail_item .pricing_table_wrap.pricing_table_wrap_cts1 .pricing_thead {
    -ms-grid-columns: 20.83333vw (1fr)[3];
        grid-template-columns: 20.83333vw repeat(3, 1fr);
  }
  .p_course_detail .detail_item .pricing_table_wrap.pricing_table_wrap_cts1 .pricing_row {
    -ms-grid-columns: 20.83333vw (1fr)[3];
        grid-template-columns: 20.83333vw repeat(3, 1fr);
  }
  .p_course_detail .detail_item .pricing_table_wrap.pricing_table_wrap_cts2 .pricing_thead {
    -ms-grid-columns: 21.48438vw 17.57813vw (1fr)[3];
        grid-template-columns: 21.48438vw 17.57813vw repeat(3, 1fr);
  }
  .p_course_detail .detail_item .pricing_table_wrap.pricing_table_wrap_cts2 .pricing_row {
    -ms-grid-columns: (1fr)[4];
        grid-template-columns: repeat(4, 1fr);
  }
  .p_course_detail .detail_item .pricing_table {
    width: 100%;
    -moz-box-sizing: border-box;
         box-sizing: border-box;
  }
  .p_course_detail .detail_item .pricing_thead {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 21.48438vw 15.625vw (1fr)[4];
        grid-template-columns: 21.48438vw 15.625vw repeat(4, 1fr);
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 1.04167vw;
       -moz-column-gap: 1.04167vw;
            column-gap: 1.04167vw;
    margin-bottom: 2.08333vw;
  }
  .p_course_detail .detail_item .pricing_th_level {
    height: 5.85938vw;
  }
  .p_course_detail .detail_item .pricing_th_time {
    height: 5.85938vw;
    -moz-border-radius: 999px;
         border-radius: 999px;
    background-color: #e2ebf7;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 2.60417vw;
    font-weight: bold;
    color: #212121;
  }
  .p_course_detail .detail_item .pricing_th_data {
    height: 5.85938vw;
    -moz-border-radius: 999px;
         border-radius: 999px;
    background-color: #0167c9;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 2.60417vw;
    font-weight: bold;
    color: #fff;
  }
  .p_course_detail .detail_item .pricing_row_group {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 21.48438vw 1fr;
        grid-template-columns: 21.48438vw 1fr;
    min-height: 5.85938vw;
    gap: 0.65104vw;
  }
  .p_course_detail .detail_item .pricing_row_group:not(:last-child) {
    margin-bottom: 2.60417vw;
  }
  .p_course_detail .detail_item .pricing_level {
    background-color: #0167c9;
    color: #fff;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 3.38542vw;
    font-weight: bold;
  }
  .p_course_detail .detail_item .pricing_row {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 15.625vw (1fr)[4];
        grid-template-columns: 15.625vw repeat(4, 1fr);
    -webkit-box-align: stretch;
       -moz-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    min-height: 5.85938vw;
    gap: 0.65104vw;
  }
  .p_course_detail .detail_item .pricing_row:not(:last-child) {
    margin-bottom: 0.65104vw;
  }
  .p_course_detail .detail_item .pricing_time {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 2.60417vw;
    font-weight: 600;
    color: #212121;
    padding: 0.65104vw;
    background-color: #e2ebf7;
    -moz-border-radius: 999px;
         border-radius: 999px;
  }
  .p_course_detail .detail_item .pricing_cell {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 2.60417vw;
    font-weight: 600;
    color: #212121;
    padding: 0.65104vw;
    -moz-box-sizing: border-box;
         box-sizing: border-box;
    background-color: #e7e9ea;
  }
  .p_course_detail .detail_item .pricing_formulas {
    margin: 7.8125vw auto 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 1.30208vw;
  }
  .p_course_detail .detail_item .pricing_formulas .formula {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.04167vw;
    font-size: 3.38542vw;
    line-height: 1.6;
    font-weight: bold;
    color: #0167c9;
  }
  .p_course_detail .detail_item .pricing_formulas .formula .formula_label {
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 1.04167vw 2.34375vw;
    background-color: #0167c9;
    color: #fff;
    width: 28.64583vw;
    white-space: nowrap;
  }
  .p_course_detail .detail_item .pricing_formulas .formula .formula_symbol {
    font-size: 3.25521vw;
    font-weight: 800;
  }
  .p_course_detail .detail_item .pricing_formulas .formula .formula_term {
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 0.65104vw 1.95313vw;
    border: 0.26042vw solid #0167c9;
    background-color: #fff;
    color: #0167c9;
    white-space: nowrap;
    width: 23.4375vw;
  }
  .p_course_detail .detail_item .pricing_formulas .formula .formula_term.formula_term01 {
    width: 18.22917vw;
  }
  .p_course_detail .detail_item .pricing_notes {
    margin: 3.90625vw auto 0;
  }
  .p_course_detail .detail_item .pricing_notes li {
    position: relative;
    padding-left: 3.90625vw;
    font-size: 3.38542vw;
    line-height: 1.6;
    font-weight: 600;
  }
  .p_course_detail .detail_item .pricing_notes li:before {
    content: "＊";
    position: absolute;
    left: 0;
    top: 0;
  }
  .p_course_detail .detail_item .pricing_notes li:not(:last-child) {
    margin-bottom: 0.65104vw;
  }
  .p_course_detail .detail_item .fee_box_tabs {
    margin: 0 auto;
  }
  .p_course_detail .detail_item .fee_box_tabs .pic_fee {
    background-color: #e7e9ea;
    padding: 4.55729vw 3.90625vw;
  }
  .p_course_detail .detail_item .fee_box_tabs .pic_fee img {
    width: 100%;
    height: auto;
  }
  .p_course_detail .detail_item .fee_box_tabs .fee_box_controls {
    margin: 3.90625vw auto 0;
  }
  .p_course_detail .detail_item .fee_box_tabs .fee_box_controls h3 {
    text-align: center;
    font-size: 4.16667vw;
    line-height: 1.5;
    font-weight: 600;
    margin-bottom: 3.90625vw;
  }
  .p_course_detail .detail_item .fee_box_tabs .js_tab_controls {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    gap: 2.60417vw;
  }
  .p_course_detail .detail_item .fee_box_tabs .js_tab_controls .fee_box_tabs_js_btn {
    width: -webkit-calc(50% - 2.60417vw);
    width: -moz-calc(50% - 2.60417vw);
    width: calc(50% - 2.60417vw);
    min-height: 9.11458vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 3.125vw;
    line-height: 1;
    font-weight: 600;
    color: #fff;
    background-color: #0167c9;
    -moz-border-radius: 100px;
         border-radius: 100px;
    padding: 1.30208vw;
    text-align: center;
    border: none;
    cursor: pointer;
  }
  .p_school_area {
    padding-top: 14.97396vw;
  }
  .p_school_area .slider_cms {
    padding-bottom: 3.25521vw;
    position: relative;
  }
  .p_school_area .slider_cms:before {
    content: "";
    width: 100%;
    height: 28.90625vw;
    background: url("../img/school_area/icon_logo.svg") no-repeat center center/contain;
    position: absolute;
    bottom: -3.25521vw;
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    pointer-events: none;
    z-index: 1;
  }
  .p_school_area .slider_cms_item {
    width: 91.14583vw;
    margin: 0 1.30208vw;
  }
  .p_school_area .slider_cms_item img {
    width: 100%;
    height: 104.16667vw;
    object-fit: cover;
    -moz-border-radius: 3.90625vw;
         border-radius: 3.90625vw;
  }
  .p_school_area_top {
    background: #0167c9;
    padding: 13.02083vw 0 6.51042vw;
    position: relative;
    z-index: 1;
  }
  .p_school_area_top p {
    color: #fff;
    font-size: 3.38542vw;
    line-height: 1.6;
    font-weight: 600;
  }
  .p_school_area .b_notice {
    padding: 7.16146vw 0 8.46354vw;
  }
  .p_school_area .b_notice .com_heading {
    margin-bottom: 7.8125vw;
  }
  .p_school_area .b_notice_wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 5.20833vw;
  }
  .p_school_area .b_notice_item {
    width: 65.10417vw;
    background-color: #d71317;
    -moz-border-radius: 3.90625vw;
         border-radius: 3.90625vw;
    margin: 0 auto;
  }
  .p_school_area .b_notice_item a {
    display: block;
    position: relative;
    padding: 2.60417vw 2.60417vw 13.02083vw;
  }
  .p_school_area .b_notice_item .pic {
    margin-bottom: 1.95313vw;
  }
  .p_school_area .b_notice_item .pic img {
    width: 100%;
    height: auto;
  }
  .p_school_area .b_notice_item .txt h3 {
    color: #fff;
    font-size: 4.16667vw;
    line-height: 1.5;
    font-weight: bold;
    margin-bottom: 1.30208vw;
  }
  .p_school_area .b_notice_item .txt p {
    color: #fff;
    font-size: 3.125vw;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .p_school_area .b_notice_item .arr {
    width: 7.8125vw;
    height: 7.8125vw;
    -moz-border-radius: 100%;
         border-radius: 100%;
    border: 1px solid #fff;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: absolute;
    bottom: 2.60417vw;
    right: 2.60417vw;
  }
  .p_school_area .b_notice_item .arr img {
    width: 3.38542vw;
    height: auto;
  }
  .p_school_area .b_notice .btn_default {
    margin: 7.8125vw auto 0;
  }
  .p_school_area .b_linkTabs {
    background-color: #e7e9ea;
    padding: 6.51042vw 0;
  }
  .p_school_area .b_linkTabs_list {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    gap: 5.20833vw;
  }
  .p_school_area .b_linkTabs li {
    width: 78.125vw;
    margin: 0 auto;
  }
  .p_school_area .home_course {
    padding: 10.41667vw 0;
  }
  .p_school_area .home_course:before {
    content: none !important;
  }
  .p_school_area .b_message {
    padding: 9.11458vw 0 13.02083vw;
    background-color: #e6f0fa;
  }
  .p_school_area .b_message .com_heading {
    margin-bottom: 7.8125vw;
  }
  .p_school_area .b_message_slider {
    /* mũi tên trái */
    /* mũi tên phải */
  }
  .p_school_area .b_message_slider .slick-prev,
  .p_school_area .b_message_slider .slick-next {
    width: 40px;
    height: 40px;
    z-index: 10;
    background: #0167c9;
    border: none;
    -moz-border-radius: 50%;
         border-radius: 50%;
  }
  .p_school_area .b_message_slider .slick-prev {
    left: 25px;
  }
  .p_school_area .b_message_slider .slick-next {
    right: 25px;
  }
  .p_school_area .b_message_slider .slick-prev::before {
    content: "‹";
    font-size: 40px;
    color: #fff;
    position: absolute;
    height: auto;
    top: -5px;
    right: 0;
    left: 0;
  }
  .p_school_area .b_message_slider .slick-next::before {
    content: "›";
    font-size: 40px;
    color: #fff;
    position: absolute;
    height: auto;
    top: -5px;
    right: 0;
    left: 0;
  }
  .p_school_area .b_message_slider_item {
    width: 52.08333vw;
    margin: 0 3.90625vw;
  }
  .p_school_area .b_message_slider_item .pic {
    background-color: #fff;
    padding: 2.60417vw;
    -moz-border-radius: 2.60417vw;
         border-radius: 2.60417vw;
    margin-bottom: 2.60417vw;
  }
  .p_school_area .b_message_slider_item .txt_top {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.30208vw;
  }
  .p_school_area .b_message_slider_item .txt_top span {
    background-color: #0167c9;
    color: #fff;
    -moz-border-radius: 1.69271vw;
         border-radius: 1.69271vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 12.36979vw;
    font-size: 3.125vw;
    line-height: 1;
    font-weight: 600;
  }
  .p_school_area .b_message_slider_item .txt_top h3 {
    font-size: 3.125vw;
    line-height: 1.5;
    font-weight: bold;
  }
  .p_school_area .b_message_slider_item .txt p {
    text-align: right;
    font-size: 3.38542vw;
    line-height: 1.5;
    margin-top: 1.95313vw;
    font-weight: bold;
  }
  .p_school_area .b_message_slider_item .txt p small {
    display: block;
    font-size: 2.60417vw;
  }
  .p_school_area .b_message .stories-success {
    padding: 0 6.51042vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
  }
  .p_school_area .b_message .stories-success .b_message_slider_item {
    width: 45%;
    margin: 0 0 30px;
  }
  .p_school_area .b_message .message_more {
    text-align: center;
    margin-top: 3.90625vw;
  }
  .p_school_area .b_message .message_more a {
    font-size: 3.90625vw;
    color: #0167c9;
    background: #fff;
    padding: 6px 25px;
    -moz-border-radius: 20px;
         border-radius: 20px;
    font-weight: bold;
  }
  .p_school_area .b_access {
    padding: 11.71875vw 0;
  }
  .p_school_area .b_access .com_heading {
    margin-bottom: 10.41667vw;
  }
  .p_school_area .b_access_item {
    background-color: #e7e9ea;
    padding: 3.90625vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 3.90625vw;
  }
  .p_school_area .b_access_item:not(:last-child) {
    margin-bottom: 9.11458vw;
  }
  .p_school_area .b_access_item .txt .name_school {
    max-width: 39.71354vw;
    min-height: 7.8125vw;
    -moz-border-radius: 100px;
         border-radius: 100px;
    background-color: #d71317;
    font-size: 3.90625vw;
    line-height: 1;
    font-weight: bold;
    color: #fff;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 1.95313vw;
  }
  .p_school_area .b_access_item .txt .txt_address {
    font-size: 3.64583vw;
    line-height: 1.5;
    font-weight: 600;
    margin-bottom: 1.95313vw;
  }
  .p_school_area .b_access_item .txt .txt_tel {
    font-size: 6.51042vw;
    line-height: 1;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
    color: #d71317;
    margin-bottom: 2.60417vw;
  }
  .p_school_area .b_access_item .txt .l_pic {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.95313vw;
  }
  .p_school_area .b_access_item .txt .l_pic li {
    width: 50%;
  }
  .p_school_area .b_access_item .txt .l_pic li img {
    width: 100%;
    height: 100%;
  }
  .p_school_area .b_access_item .map iframe {
    width: 100%;
    height: 39.0625vw;
  }
}
