@charset "UTF-8"; .colMinhoshi {
    color: #faad34 !important;
}

html {
    scroll-padding-top: 280px;
}
html.isDeviceSP {
    scroll-padding-top: 104px;
}

body {
    background-color: white!important;
}

.colWakauka {
    color: #21b4d9 !important;
}

.main-visual_area {
    border-top: 1px solid #b7c9da;
    border-bottom: 1px solid #b7c9da;
    position: relative;
    width: 100%;
    overflow: hidden;
}

.winSP .main-visual_area {
    height: auto;
    border-top: none;
    border-bottom: 1px solid #222;
}

.main-visual_area>.inner {
    position: relative;
    width: 100%;
    padding: 0!important;
}

.main-visual_faq {
    position: absolute;
    z-index: 1;
    top: 6px;
    right: 11%;
}

.winSP .main-visual_faq {
    top: 1.8%;
    right: 10px;
}

.main-visual_faq a {
    display: inline-block;
    padding: 6px 30px 4px;
    text-decoration: none!important;
    color: #fff;
    border-radius: 4px;
    background: #1e3c9f;
}

.main-visual_faq a:hover {
    background: #1a348a;
}

.winSP .main-visual_faq a {
    padding-right: 20px;
    padding-left: 20px;
}

.main-visual_faq a>span {
    font-size: 1.5rem;
    font-weight: 700;
    position: relative;
    display: block;
    padding-right: 20px;
}

.winSP .main-visual_faq a>span {
    font-size: 1.2rem;
}

.main-visual_faq a>span:before {
    font-family: pageico!important;
    font-weight: 400;
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    position: absolute;
    top: 50%;
    right: -15%;
    content: "\e902";
    -webkit-transform: translateY(-50%) rotate(90deg);
    transform: translateY(-50%) rotate(90deg);
    text-transform: none;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.winSP .main-visual_faq a>span:before {
    top: 50%;
}

.main-visual_voice {
    position: absolute;
    z-index: 1;
    top: 11%;
    right: 11%;
    border: 1px solid #1e3c9f;
    border-radius: 4px;
    text-align: center;
    background: #fff;
}

.main-visual_voice:hover {
    background: linear-gradient(to top, #1e3c9f 12%, rgba(255,255,255,1) 12%);
}

.main-visual_voice a {
    display: block;
    color: #1e3c9f;
    width: 100%;
    padding: 3% 10px 8%;
    text-decoration: none!important;
    position: relative;
    line-height: 1.2;
}

.main-visual_voice a:before {
    font-family: pageico!important;
    color: #8fa5ed;
    position: absolute;
    content: "\e902";
    position: absolute;
    bottom: -2%;
    left: 50%;
    -webkit-transform: translateX(-50%) rotate(90deg);
    transform: translateX(-50%) rotate(90deg);
    text-transform: none;
    speak: none;
}

.main-visual_voice a span {
    font-weight: bold;
    display: inline-block;
}

.main-visual_voice a span img {
    width: 50%;
}

.winSP .main-visual_voice {
    top: 12%;
    right: 2%;
    width: 20%;
}

.winSP .main-visual_voice a {
    padding: 2% 2% 20% 2%;
}

.winSP .main-visual_voice a span {
    font-size: 2vw;
    letter-spacing: -0.05em;
    font-weight: normal;
}

.winSP .main-visual_voice a span img {
    display: inline-block;
    width: 30%;
}

.winSP .main-visual_voice a:before {
}

.main-anchor_area {
    padding-top: 15px!important;
    padding-bottom: 15px!important;
    position: sticky;
    top: 190px;
    background-color: white;
    z-index: 10;
}

.winSP .main-anchor_area {
    position: inherit;
    padding-top: 10px!important;
    padding-right: 3px;
    padding-bottom: 10px!important;
    padding-left: 3px;
}

.main-anchor_area.fixed {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 10;
    width: 100%;
    max-width: none;
    padding-top: 5px !important;
    padding-bottom: 5px !important;
    background: #fff;
}

.main-anchor_list {
    width: calc(100% + 3px);
    margin-left: -3px;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.winSP .main-anchor_list {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.main-anchor_list,.main-anchor_list li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    /* justify-content: space-between; */
}

.main-anchor_list li {
    /* width: calc(20% - 3px); */
    min-width: 128px;
    max-width: 212px;
    margin-left: 3px;
}

.winSP .main-anchor_list li {
    width: calc(25% - 3px);
    min-width: auto;
    max-width: none;
}

.winSP .main-anchor_list li {
    margin-top: 4px;
}

.main-anchor_list li a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    min-height: 5em;
    text-decoration: none!important;
    border: 1px solid #1e1e1e;
    border-radius: 4px;
    background: #e4ecf8;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    line-height: 1.3;
}

.main-anchor_list li a:hover {
    background: #d0def3;
}

.main-anchor_list li a span {
    font-weight: 700;
    display: block;
    text-align: center;
}

.winSP .main-anchor_list li a span {
    letter-spacing: -.04em;
}

.main-anchor_list li a p {
    width: 100%;
}

.winSP .main-anchor_list li a {
    height: auto;
    min-height: 3em;
    padding-top: 5px;
    padding-bottom: 10px;
}

.main-anchor_list li .txt {
    font-size: 1.3rem;
    padding-top: 4px;
    color: #000;
}

.isDeviceTB .main-anchor_list li .txt {
    font-size: .8rem;
}

.winSP .main-anchor_list li .txt {
    font-size: .08vw;
    line-height: 1.2;
}

.main-anchor_list li .ttl {
    font-size: 1.6rem;
    position: relative;
    width: 100%;
    padding-right: 22px;
    padding-left: 10px;
    color: #011fa3;
}

.winSP .main-anchor_list li .ttl {
    font-size: 1rem;
    padding-right: 0;
    padding-left: 0;
}

.main-anchor_list li .ttl:after {
    font-family: pageico!important;
    font-weight: 400;
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    position: absolute;
    top: 49%;
    right: 5px;
    content: "\e902";
    -webkit-transform: translateY(-50%) rotate(90deg);
    transform: translateY(-50%) rotate(90deg);
    text-transform: none;
    color: #6583aa;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.winSP .main-anchor_list li .ttl:after {
    top: auto;
    right: auto;
    bottom: -10px;
    left: 50%;
    -webkit-transform: translateX(-50%) rotate(90deg);
    -ms-transform: translateX(-50%) rotate(90deg);
    transform: translateX(-50%) rotate(90deg);
}

.teach_info_wrap {
    padding: 0 20px;
    max-width: 1320px;
    margin: 10px auto 0;
}

.teach_info {
    background: #ff0000;
    color: #ffffff;
    font-size: 18px;
    font-size: 1.8rem;
    width: 100%;
    padding: 2% 5%;
    max-width: 1200px;
    margin: 0 auto;
}

.teach_info.is_blue {
    background-color: #0067b5;
}

@media print,screen and (min-width: 570px) and (max-width:1120px) {
    .teach_info {
        max-width: 960px;
    }
}

.winSP .teach_info {
    font-size: 4vw;
    width: 100%;
}

.main-course_area {
    padding: 40px 0 60px;
    background: #edf2fa;
}

.main-course_area>.inner {
    max-width: 1084px;
}

.winSP .main-course_area {
    padding-top: 20px;
    padding-bottom: 20px;
    border-top: 1px solid #202021;
}

.main-course_list {
    -webkit-align-items: inherit;
    -webkit-box-align: inherit;
    -ms-flex-align: inherit;
    align-items: inherit;
}

.main-course_box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.main-course_box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    flex-direction: column;
    width: 100%;
    background: #fff;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
}

.main-course_web .main-course_box {
    border: 2px solid #faad34;
}

.main-course_dvd .main-course_box {
    border: 2px solid #21b4d9;
}

.main-course_dvd .wakauka_price .course_price {
    background: #b4d7f2;
}

.main-course_details {
    height: 100%;
    padding: 5px 15px 15px;
}

.main-course_web .main-course_details {
    background: #faad34;
}

.main-course_dvd .main-course_details {
    background: #21b4d9;
}

.winSP .main-course_details {
    height: auto;
    padding: 5px 8px 15px;
}

.isDeviceTB .main-course_details {
    height: auto;
}

.main-course_ttl {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    min-height: 78px;
    padding-left: 78px;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.main-course_dvd .main-course_ttl {
    padding-right: 80px;
}

.main-course_dvd .main-course_ttl-ico {
    position: absolute;
    top: -10px;
    right: 0;
    width: 83px;
    height: 83px;
}

.isDeviceTB .main-course_ttl,.winSP .main-course_ttl {
    display: block;
    min-height: 0;
    padding: 10px 5px 6px;
    text-align: center;
}

.isDeviceTB .main-course_dvd .main-course_ttl,.winSP .main-course_dvd .main-course_ttl {
    padding-right: 60px;
}

.isDeviceTB .main-course_dvd .main-course_ttl-ico,.winSP .main-course_dvd .main-course_ttl-ico {
    width: 60px;
    height: 60px;
}

.main-course_ttl:before {
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    width: 78px;
    height: 78px;
    margin-top: -39px;
    content: "";
    background-repeat: no-repeat;
    background-position: 50%;
}

.main-course_web .main-course_ttl:before {
    background-image: url(../image/2022_04/ico_webko.png);
}

.main-course_dvd .main-course_ttl:before {
    background-image: url(../image/2022_04/ico_wakauka.png);
}

.winSP .main-course_ttl {
    padding-left: 15vw;
}

.winSP .main-course_ttl:before {
    width: 15vw;
    min-height: 10vw;
    background-size: contain;
    margin-top: -7vw;
}

.main-course_ttl .txt {
    font-size: 1.6rem;
    font-weight: 700;
    padding-top: 3px;
}

.main-course_ttl .txt .red {
    font-weight: 700;
    color: #e61743;
}

.isDeviceTB .main-course_ttl .txt,.winSP .main-course_ttl .txt {
    font-size: 1.2rem;
    padding-top: 0;
}

.main-course_ttl .ttl {
    font-size: 3.4rem;
    font-weight: 700;
    line-height: 1.2;
}

.isDeviceTB .main-course_ttl .ttl,.winSP .main-course_ttl .ttl {
    font-size: 2.4rem;
}

.main-course_web .main-course_ttl .ttl {
    color: #f68b00;
}

.main-course_dvd .main-course_ttl .ttl {
    color: #435ca6;
}

.main-course_ttl .ttl>span {
    font-size: 2.4rem;
    font-weight: 700;
}

.isDeviceTB .main-course_ttl .ttl>span,.winSP .main-course_ttl .ttl>span {
    font-size: 1.6rem;
}

.main-course_list .kakunin_btn {
    padding: 0 3%;
    text-align: right;
}

.main-course_list .kakunin_btn a {
    position: relative;
    border: 1px solid #333;
    border-radius: 3px;
    display: inline-block;
    width: 35%;
    height: 30px;
    text-align: center;
}

.main-course_list .kakunin_btn a span {
    display: inline-block;
    color: #333;
    font-weight: bold;
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.main-course_list .kakunin_btn a:after {
    position: absolute;
    display: inline-block;
    font-family: pageico!important;
    content: "\e902";
    font-size: 16px;
    top: 50%;
    right: 5%;
    -webkit-transform: translateY(-50%) rotate(90deg);
    transform: translateY(-50%) rotate(90deg);
}

.main-course_web .kakunin_btn a {
    border: 1px solid #faad34;
    background: #fff8ed;
}

.main-course_dvd .kakunin_btn a {
    border: 1px solid #21b4d9;
    background: #f5fdff;
}

.main-course_web .kakunin_btn a:hover {
    background: #faad34;
}

.main-course_dvd .kakunin_btn a:hover {
    background: #21b4d9;
}

.main-course_web .kakunin_btn a:after {
    color: #faad34;
}

.main-course_dvd .kakunin_btn a:after {
    color: #21b4d9;
}

.winSP .main-course_list .kakunin_btn a {
    width: 40%;
    font-size: 3vw;
}

.winSP .main-course_list .kakunin_btn a:after {
    font-size: 3vw;
}

.main-course_price {
    text-align: center;
}

.main-course_price span {
    font-weight: 700;
    font-style: italic;
    display: inline-block;
}

.main-course_web .main-course_price {
    color: #e70026;
}

.main-course_dvd .main-course_price {
    color: #efff67;
}

.main-course_price>.txt {
    font-size: 2.4rem;
    margin-right: .1em;
    -webkit-transform: skewX(-15deg);
    -ms-transform: skewX(-15deg);
    transform: skewX(-15deg);
    color: #fff;
}

.isDeviceTB .main-course_price>.txt,.winSP .main-course_price>.txt {
    font-size: 1.4rem;
}

.main-course_price>.yen {
    font-size: 3.2em;
}

.isDeviceTB .main-course_price>.yen,.winSP .main-course_price>.yen {
    font-size: 2.6rem;
}

.main-course_price>.price {
    font-size: 4.8rem;
}

.isDeviceTB .main-course_price>.price,.winSP .main-course_price>.price {
    font-size: 3rem;
}

.main-course_price>.tax {
    font-size: 1.4rem;
    margin-left: -.5em;
    -webkit-transform: skewX(-15deg);
    -ms-transform: skewX(-15deg);
    transform: skewX(-15deg);
}

.winSP .main-course_price>.tax {
    font-size: 1.2rem;
}

.main-course_add {
    text-align: center;
}

.main-course_add>a {
    position: relative;
    display: inline-block;
    min-width: 290px;
    padding: 14px 10px 12px;
    color: #fff;
    border-radius: 4px;
}

.winSP .main-course_add>a {
    width: 100%;
    min-width: 0;
    max-width: 230px;
}

.main-course_web .main-course_add>a {
    border: 1px solid #d00224;
    background: #e70026;
}

.main-course_web .main-course_add>a:hover {
    background: #ce0022;
}

.main-course_dvd .main-course_add>a {
    color: #1f529d;
    border: 1px solid #1f529d;
    background: #efff67;
}

.main-course_dvd .main-course_add>a:hover {
    background: #e7ff1b;
}

.main-course_add>a>span {
    font-size: 1.8rem;
    font-weight: 700;
    position: relative;
    display: inline-block;
    padding-right: 30px;
}

.winSP .main-course_add>a>span {
    font-size: 1.4rem;
    width: 100%;
    padding-right: 15px;
}

.main-course_add>a>span:after {
    font-family: pageico!important;
    font-weight: 400;
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    position: absolute;
    top: 48%;
    right: 0;
    content: "\e902";
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    text-transform: none;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.main-course_add>a.nolink {
    color: #000;
    border-color: #000;
    background: #d9d9d9;
}

.main-course_add>a.nolink>span {
    padding-right: 0;
}

.main-course_add>a.nolink>span:after {
    display: none;
}

.main-course_summasry {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 15px;
}

.isDeviceTB .main-course_summasry,.winSP .main-course_summasry {
    display: block;
}

.main-course_summasry p {
    color: #000;
}

.main-course_summasry>.notes {
    width: calc(100% - 140px);
}

.isDeviceTB .main-course_summasry>.notes,.winSP .main-course_summasry>.notes {
    font-size: 1.1rem;
    width: 100%;
}

.main-course_summasry>.notes * {
    font-weight: 700;
}

.main-course_summasry>.notes a {
    text-decoration: underline;
}

.main-course_web .main-course_summasry>.notes a {
    color: #e70026;
}

.main-course_dvd .main-course_summasry>.notes a {
    color: #efff67;
}

.main-course_summasry>.notes a.nolink {
    text-decoration: none;
    color: #000;
}

.main-course_summasry>.course-btn {
    width: 140px;
}

.isDeviceTB .main-course_summasry>.course-btn,.winSP .main-course_summasry>.course-btn {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    margin-top: 5px;
    -webkit-justify-content: flex-end;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.main-course_summasry>.course-btn a {
    font-weight: 700;
    position: relative;
    display: inline-block;
    padding: 5px 20px 5px 10px;
    color: #000;
    border: 1px solid #000;
    border-radius: 3px;
    background: #fff;
}

.main-course_summasry>.course-btn a:hover {
    background: hsla(0,0%,100%,.8);
}

.winSP .main-course_summasry>.course-btn a {
    font-size: 1rem;
}

.main-course_summasry>.course-btn a:after {
    font-family: pageico!important;
    font-weight: 400;
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    position: absolute;
    top: 50%;
    right: 5px;
    content: "\e902";
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    text-transform: none;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.main-course_web .main-course_summasry>.course-btn a:after {
    color: #f68b00;
}

.main-course_dvd .main-course_summasry>.course-btn a:after {
    color: #1f529d;
}

.dokugaku-point_area .inner {
    max-width: 980px !important;
    margin-top: 5%;
}

.dokugaku-point_area .txt_box {
    font-size: 1.6rem;
    width: 80%;
    margin: 0 auto;
}

.dokugaku-point_area h2 {
    position: relative;
    width: 100%;
    padding: 10% 0 15%;
    background: url(../image/2022_02/bg_dokugaku-point_area.png) no-repeat center top/contain;
}

.dokugaku-point_area h2 .colBLU {
    font-size: 4rem;
    font-weight: bold;
    display: block;
    text-align: center;
}

.dokugaku-point_area h2 .colPNK {
    font-size: 5rem;
    font-weight: bold;
    display: block;
    text-align: center;
    color: #f44360 !important;
}

.dokugaku-point_area h2:after {
    font-family: pageico!important;
    font-size: 25rem;
    font-weight: 400;
    font-style: normal;
    font-variant: normal;
    content: "\e901";
    line-height: 1;
    position: absolute;
    bottom: -10px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    text-transform: none;
    color: #d6d6d6;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.winSP .dokugaku-point_area .txt_box {
    font-size: 4vw;
    width: 90%;
}

.winSP .dokugaku-point_area h2 {
    background-size: 130%;
}

.winSP .dokugaku-point_area h2 .colBLU {
    font-size: 5vw;
}

.winSP .dokugaku-point_area h2 .colPNK {
    font-size: 6.5vw;
}

.winSP .dokugaku-point_area h2:after {
    font-size: 14rem;
    bottom: -15%;
}

.dokugaku-feature_area {
    /* margin-top: 80px; */
    padding-bottom: 60px;
    /* background: #fdfceb; */
}

.dokugaku-feature_area .inner {
    max-width: 1024px;
}

.dokugaku-feature_title {
    padding: 10px 0 0;
    text-align: center;
    background: #67a7d4;
}

.dokugaku-feature_title .txt {
    font-size: 3.2rem;
    font-weight: 700;
    color: #f2f26a;
}

.winSP .dokugaku-feature_title .txt {
    font-size: 1.4rem;
}

.dokugaku-feature_title .title {
    font-size: 6rem;
    font-weight: 700;
    line-height: 1.2;
    color: #fff;
}

.winSP .dokugaku-feature_title .title {
    font-size: 2.2rem;
}

.dokugaku-feature_title .title span {
    font-weight: 400!important;
}

.winSP .dokugaku-feature_title .title {
    font-size: 3rem;
    padding-bottom: 5px;
}

.dokugaku-feature_box {
    position: relative;
    max-width: 980px;
    margin-right: auto;
    margin-bottom: 100px;
    margin-left: auto;
}

.winSP .dokugaku-feature_box {
    margin-bottom: 60px;
}

.dokugaku-feature_box:after {
    font-family: pageico!important;
    font-size: 25rem;
    font-weight: 400;
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    position: absolute;
    bottom: -160px;
    left: 50%;
    content: "\e901";
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    text-transform: none;
    color: #d6d6d6;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.winSP .dokugaku-feature_box:after {
    font-size: 14rem;
    bottom: -90px;
}

.dokugaku-feature_box:last-child {
    margin-bottom: 0;
}

.dokugaku-feature_box:last-child:after {
    display: none;
}

._curriculum-1 {
    padding-top: 40px;
}

._curriculum-1 .feature_wrap {
    width: 100%;
    font-size: 0;
}

._curriculum-1 .feature_wrap li {
    display: inline-block;
    vertical-align: top;
    background: #fff;
    border: 3px solid #274580;
    border-radius: 30px;
    padding: 4% 3% 3%;
    width: 49%;
    margin-bottom: 40px;
    font-size: 1.4rem;
    position: relative;
}

._curriculum-1 .feature_wrap li:after {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    content: url(../image/2022_02/ico_feature_01.png);
}

._curriculum-1 .feature_wrap li.feature02:after {
    content: url(../image/2022_02/ico_feature_02.png);
}

._curriculum-1 .feature_wrap li.feature03:after {
    content: url(../image/2022_02/ico_feature_03.png);
}

._curriculum-1 .feature_wrap li.feature04:after {
    content: url(../image/2022_02/ico_feature_04.png);
}

._curriculum-1 .feature_wrap li:nth-child(odd) {
    margin-right: 2%;
}

._curriculum-1 .feature_wrap li .box_ttl {
    font-weight: bold;
    font-size: 1.8rem;
    margin-bottom: 1em;
}

._curriculum-1 .feature_wrap li .box_ttl span {
    font-size: 2.4rem;
}

._curriculum-1 .feature_wrap li .txt_box {
    margin-bottom: 1em;
}

._curriculum-1 .feature_wrap li .img_box {
    text-align: center;
    font-size: 1.2rem;
    vertical-align: bottom;
}

.winSP ._curriculum-1 .feature_wrap li {
    display: block;
    border-radius: 20px;
    padding: 30px 3% 3%;
    width: 100%;
    font-size: 3vw;
}

.winSP ._curriculum-1 .feature_wrap li:nth-child(odd) {
    margin-right: 0;
}

.winSP ._curriculum-1 .feature_wrap li .box_ttl {
    font-size: 4vw;
}

.winSP ._curriculum-1 .feature_wrap li .box_ttl span {
    font-size: 6vw;
}

.winSP ._curriculum-1 .feature_wrap li .img_box {
    font-size: 2vw;
}

._curriculum-2 .moreover {
    width: 100%;
}

._curriculum-2 .moreover .moreover_title {
    font-size: 36px;
    font-size: 3.6rem;
    display: inline-block;
    position: relative;
}

._curriculum-2 .moreover .moreover_title:before {
    content: "\3055\3089\306B\FF01\002F";
    display: inline-block;
    color: #556788;
    position: absolute;
    top: -50%;
    left: -8%;
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
}

._curriculum-2 .moreover .moreover_title:after {
    content: "\002F";
    display: inline-block;
    color: #556788;
    position: absolute;
    top: -15%;
    left: -11%;
    -webkit-transform: rotate(-30deg) scale(-1, 1);
    transform: rotate(-30deg) scale(-1, 1);
}

._curriculum-2 .moreover .moreover_title .bold {
    font-size: 44px;
    font-size: 4.4rem;
}

._curriculum-2 .moreover .text_box {
    width: 90%;
    margin: 0 auto 20px;
    text-align: left;
    font-size: 1.5rem;
}

._curriculum-2 .moreover .img_box {
    font-size: 0;
}

._curriculum-2 .moreover .img_box > li {
    display: inline-block;
    vertical-align: text-top;
    width: 30%;
}

._curriculum-2 .moreover .img_box .img_note {
    width: 100%;
    display: block;
    margin: 0 15% 0 auto;
    padding: 2%;
    text-align: left;
}

._curriculum-2 .moreover .img_box .img_note li {
    margin-left: 1em;
    text-indent: -1em;
    font-size: 12px;
    font-size: 1.2rem;
}

.winSP ._curriculum-2 .moreover {
    margin-top: 25%;
}

.winSP ._curriculum-2 .moreover .moreover_title {
    font-size: 5vw;
}

.winSP ._curriculum-2 .moreover .moreover_title:before {
    top: -70%;
    left: 4%;
}

.winSP ._curriculum-2 .moreover .moreover_title:after {
    top: -40%;
    left: 0%;
}

.winSP ._curriculum-2 .moreover .moreover_title .bold {
    font-size: 6vw;
}

.winSP ._curriculum-2 .moreover .img_box > li {
    width: 50%;
}

.winSP ._curriculum-2 .moreover .img_box .img_note li {
    font-size: 2.5vw;
}

._curriculum-3,._curriculum-3 .dokugaku-feature_subttl {
    text-align: center;
}

._curriculum-3 .dokugaku-feature_subttl .subttl {
    font-size: 4rem;
    color: #001667;
    letter-spacing: -0.03em;
}

._curriculum-3 .dokugaku-feature_subttl .subttl > span {
    font-size: 2.8rem;
}

.winSP ._curriculum-3 .dokugaku-feature_subttl .subttl {
    font-size: 6.5vw;
    line-height: 1.2;
}

.winSP ._curriculum-3 .dokugaku-feature_subttl .subttl > span {
    font-size: 3vw;
}

.curriculum-1_point {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    width: auto;
    margin-top: 10px;
    margin-right: auto;
    margin-left: auto;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.winSP .curriculum-1_point {
    display: block;
}

.curriculum-1_point .thumb {
    width: 166px;
}

.winSP .curriculum-1_point .thumb {
    display: block;
    width: 100%;
}

.curriculum-1_point .list {
    padding-left: 20px;
    counter-reset: ol-bullet;
    text-align: left;
}

.winSP .curriculum-1_point .list {
    margin-top: 15px;
}

.curriculum-1_point .list li {
    font-size: 1.5rem;
    font-weight: 700;
    position: relative;
    padding-left: 1.5em;
    color: #000;
}

.curriculum-1_point .list li~li {
    margin-top: 5px;
}

.curriculum-1_point .list li:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 1.5em;
    content: counter(ol-bullet) ". ";
    counter-increment: ol-bullet;
}

.curriculum-1_follow {
    margin-top: 60px;
}

.curriculum-1_follow>.subttl {
    font-size: 4.2rem;
    line-height: 1.2;
    margin-top: -.2em;
    text-align: center;
    color: #001667;
}

.isDeviceTB .curriculum-1_follow>.subttl {
    font-size: 3.5rem;
}

.winSP .curriculum-1_follow>.subttl {
    font-size: 2.4rem;
}

.curriculum-1_follow>.subttl>span {
    position: relative;
    display: inline-block;
    padding: 0 30px;
}

.curriculum-1_follow>.subttl>span:after,.curriculum-1_follow>.subttl>span:before {
    position: absolute;
    top: 50%;
    display: block;
    width: 2px;
    height: .8em;
    margin-top: -.4em;
    content: "";
    background: #001667;
}

.winSP .curriculum-1_follow>.subttl>span:after,.winSP .curriculum-1_follow>.subttl>span:before {
    height: 1.8em;
    margin-top: -.9em;
}

.curriculum-1_follow>.subttl>span:before {
    left: 0;
    -webkit-transform: skewX(-150deg);
    -ms-transform: skewX(-150deg);
    transform: skewX(-150deg);
}

.winSP .curriculum-1_follow>.subttl>span:before {
    left: 5px;
    -webkit-transform: skewX(-160deg);
    -ms-transform: skewX(-160deg);
    transform: skewX(-160deg);
}

.curriculum-1_follow>.subttl>span:after {
    right: 0;
    -webkit-transform: skewX(150deg);
    -ms-transform: skewX(150deg);
    transform: skewX(150deg);
}

.winSP .curriculum-1_follow>.subttl>span:after {
    right: 5px;
    -webkit-transform: skewX(160deg);
    -ms-transform: skewX(160deg);
    transform: skewX(160deg);
}

.curriculum-1_follow .txtarea {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 30px;
    padding: 15px 25px;
    border: 1px solid #648dbb;
    background: #fff;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.winSP .curriculum-1_follow .txtarea {
    display: block;
    margin-top: 15px;
    padding: 15px;
}

.winSP .curriculum-1_follow .txtarea .thumb {
    text-align: center;
}

.winSP .curriculum-1_follow .txtarea .thumb img {
    max-width: 180px;
}

.curriculum-1_follow .txtarea .txt {
    font-size: 2.8rem;
    padding-left: 30px;
}

.winSP .curriculum-1_follow .txtarea .txt {
    font-size: 1.8rem;
    margin-top: 15px;
    padding-left: 0;
}

.isDeviceTB .curriculum-1_follow .txtarea .txt {
    font-size: 1.8rem;
}

.curriculum-2_follow {
    margin-top: 30px;
    padding: 30px;
    text-align: center;
    border: 1px solid #648dbb;
    background: #fff;
}

.winSP .curriculum-2_follow {
    margin-top: 15px;
    padding: 15px 10px;
}

.curriculum-2_follow>.subttl {
    font-size: 5.2rem;
    color: #001667;
}

.winSP .curriculum-2_follow>.subttl {
    font-size: 2.2rem;
}

.winSP .curriculum-2_exam {
    margin-top: 10px;
}

.curriculum-2_exam .txtarea {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    margin-top: 10px;
    text-align: left;
}

.winSP .curriculum-2_exam .txtarea {
    display: block;
    margin-top: 15px;
}

.curriculum-2_exam .txtarea .ttl {
    font-size: 3rem;
}

.winSP .curriculum-2_exam .txtarea .ttl {
    font-size: 2.2rem;
    text-align: center;
}

.curriculum-2_exam .txtarea .ttl>span {
    font-size: 2.4rem;
}

.winSP .curriculum-2_exam .txtarea .ttl>span {
    font-size: 1.8rem;
}

.curriculum-2_exam .txtarea .caution li {
    margin-top: 0!important;
}

.curriculum-2_guidebook {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 30px;
    padding-top: 30px;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.curriculum-2_guidebook:after {
    position: absolute;
    top: 0;
    left: -2%;
    display: block;
    width: 104%;
    height: 10px;
    content: "";
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiPjxkZWZzPjxwYXR0ZXJuIGlkPSJwYXR0ZXJuXzBWaUdPIiBwYXR0ZXJuVW5pdHM9InVzZXJTcGFjZU9uVXNlIiB3aWR0aD0iOC41IiBoZWlnaHQ9IjguNSIgcGF0dGVyblRyYW5zZm9ybT0icm90YXRlKDQ1KSI+PGxpbmUgeDE9IjAiIHk9IjAiIHgyPSIwIiB5Mj0iOC41IiBzdHJva2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMSIvPjwvcGF0dGVybj48L2RlZnM+IDxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjcGF0dGVybl8wVmlHTykiIG9wYWNpdHk9IjEiLz48L3N2Zz4=");
}

.winSP .curriculum-2_guidebook:after {
    left: 0;
    width: 100%;
}

.isDeviceTB .curriculum-2_guidebook,.winSP .curriculum-2_guidebook {
    display: block;
}

.curriculum-2_guidebook>.thumb:first-child {
    width: 172px;
}

.curriculum-2_guidebook>.thumb:nth-child(3) {
    width: 192px;
}

.isDeviceTB .curriculum-2_guidebook>.thumb {
    display: none;
}

.curriculum-2_guidebook .txtarea {
    width: calc(100% - 354px);
    padding: 0 15px;
    text-align: left;
}

.isDeviceTB .curriculum-2_guidebook .txtarea {
    width: 100%;
}

.isDeviceTB .curriculum-2_guidebook .txtarea .thumb {
    display: block!important;
    margin: 10px;
    text-align: center;
}

.winSP .curriculum-2_guidebook .txtarea {
    width: 100%;
    padding: 0;
}

.curriculum-2_guidebook .txtarea .ttl {
    font-size: 3rem;
    text-align: center;
}

.winSP .curriculum-2_guidebook .txtarea .ttl {
    font-size: 1.7rem;
}

.winSP .curriculum-2_guidebook .txtarea .thumb {
    margin-top: 15px;
}

.curriculum-2_guidebook .txtarea .txt {
    line-height: 2;
}

.winSP .curriculum-2_guidebook .txtarea .txt {
    margin-top: 15px;
}

.curriculum-3_bnr {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    margin-top: 15px;
}

.curriculum-3_bnr .box {
    padding: 0 8px;
}

.dokugaku-course_title {
    border-top-width: 5px;
    border-top-style: solid;
}

.dokugaku-course_title .inner {
    position: relative;
    max-width: 1020px;
    min-height: 150px;
    padding-top: 30px;
    padding-left: 180px;
}

.winSP .dokugaku-course_title .inner {
    padding-bottom: 10px;
}

.isDeviceTB .dokugaku-course_title .inner,.winSP .dokugaku-course_title .inner {
    min-height: 0;
    padding-top: 10px;
    padding-left: 10px;
    text-align: center;
}

.dokugaku-course_title .inner:before {
    position: absolute;
    bottom: 0;
    left: 20px;
    display: block;
    width: 134px;
    height: 133px;
    content: "";
    background-repeat: no-repeat;
    background-position: 50%;
}

._minhoshi .dokugaku-course_title .inner:before {
    background-image: url(../image/2020/title_minhosi.png);
}

._ukaru .dokugaku-course_title .inner:before {
    background-image: url(../image/2020/title_ukaru.png);
}

.isDeviceTB .dokugaku-course_title .inner:before,.winSP .dokugaku-course_title .inner:before {
    display: none;
}

._minhoshi .dokugaku-course_title {
    border-color: #f27d00;
    background: #f8b30d;
}

._ukaru .dokugaku-course_title {
    border-color: #0d73b4;
    background: #b8dfef;
}

.dokugaku-course_title .catch {
    font-size: 2.6rem;
    color: #000;
}

.winSP .dokugaku-course_title .catch {
    font-size: 1.4rem;
}

.dokugaku-course_title .catch>span {
    color: #dd152c;
}

.dokugaku-course_title .title {
    font-size: 6.4rem;
    line-height: 1.2;
    -webkit-transform: skewX(-15deg);
    -ms-transform: skewX(-15deg);
    transform: skewX(-15deg);
}

.winSP .dokugaku-course_title .title {
    font-size: 2.4rem;
}

.isDeviceTB .dokugaku-course_title .title {
    font-size: 5.4rem;
}

.dokugaku-course_title .title>span {
    font-size: 4.6rem;
    display: inline-block;
}

.winSP .dokugaku-course_title .title>span {
    font-size: 1.6rem;
}

.isDeviceTB .dokugaku-course_title .title>span {
    font-size: 3.6rem;
}

._minhoshi .dokugaku-course_title .title {
    color: #fff;
}

._ukaru .dokugaku-course_title .title {
    color: #1f529d;
}

.dokugaku-course_teacher {
    background: #f4f4f4;
}

.isDeviceTB .dokugaku-course_teacher,.winSP .dokugaku-course_teacher {
    text-align: center;
}

.dokugaku-course_teacher .inner {
    font-size: 1.6rem;
    max-width: 1020px;
    padding-top: 5px;
    padding-bottom: 5px;
}

.winSP .dokugaku-course_teacher .inner {
    font-size: 1.4rem;
}

.dokugaku-course_info {
    padding: 50px 0 15px;
    border-bottom: 1px solid #a9b3bf;
    background: -webkit-linear-gradient(top,#fff,#dee4e7);
    background: -webkit-gradient(linear,left top,left bottom,from(#fff),to(#dee4e7));
    background: -o-linear-gradient(top,#fff 0,#dee4e7 100%);
    background: linear-gradient(180deg,#fff 0,#dee4e7);
}

.dokugaku-course_info .inner {
    max-width: 1020px;
    text-align: center;
}

.dokugaku-course_info .info-title_area .catch {
    font-size: 2.8rem;
    color: #000;
}

.winSP .dokugaku-course_info .info-title_area .catch {
    font-size: 2rem;
}

.isDeviceTB .dokugaku-course_info .info-title_area .catch {
    font-size: 2.4rem;
}

.dokugaku-course_info .info-title_area .title {
    font-size: 4.8rem;
    color: #ec3853;
}

.winSP .dokugaku-course_info .info-title_area .title {
    font-size: 2.4rem;
}

.isDeviceTB .dokugaku-course_info .info-title_area .title {
    font-size: 3.4rem;
}

.dokugaku-course_info .info-txt_area .subttl {
    font-size: 2rem;
}

.winSP .dokugaku-course_info .info-txt_area .subttl {
    font-size: 1.6rem;
}

.dokugaku-course_info .info-txt_area .txt {
    line-height: 2;
    max-width: 960px;
    margin: 10px auto 0;
    text-align: center;
}

.winSP .dokugaku-course_info .info-txt_area .txt {
    text-align: left;
}

.dokugaku-course_info .info-img_area {
    margin-top: 30px;
}

.dokugaku-course_info .info-link_bnr {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 30px;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.winSP .dokugaku-course_info .info-link_bnr {
    display: block;
}

.dokugaku-course_info .info-link_bnr li {
    width: 50%;
    max-width: 367px;
    margin: 0 30px;
    border-radius: 3px;
    -webkit-box-shadow: 0 3px 0 #d4d4d4;
    box-shadow: 0 3px 0 #d4d4d4;
    position: relative;
    margin-bottom: 20px;
}


.winSP .dokugaku-course_info .info-link_bnr li {
    width: 100%;
    margin: 0 auto;
}

.winSP .dokugaku-course_info .info-link_bnr li~li {
    margin-top: 8px;
}

.dokugaku-course_info .info-link_bnr li a {
    display: block;
    width: 100%;
    padding: 10px 0 8px;
    text-align: center;
    border: 1px solid #f28fa6;
    border-radius: 3px;
    background: #e9476d;
    -webkit-box-shadow: 0 0 0 1px #b70000;
    box-shadow: 0 0 0 1px #b70000;
}

.dokugaku-course_info .info-link_bnr li a:hover {
    background: #e6305b;
}

.dokugaku-course_info .info-link_bnr li span {
    font-size: 1.8rem;
    font-weight: 700;
    position: relative;
    display: inline-block;
    padding-left: 50px;
    color: #fff;
}

.winSP .dokugaku-course_info .info-link_bnr li span {
    font-size: 1.4rem;
    padding-left: 42px;
}

.dokugaku-course_info .info-link_bnr li span:before {
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    width: 28px;
    height: 23px;
    margin-top: -11px;
    content: "";
    background: url(../image/2020/ico_book.png) no-repeat 50%;
}

.winSP .dokugaku-course_info .info-link_bnr li span:before {
    width: 24px;
    height: 22px;
    background-size: 100% auto;
}

.dokugaku-course_info .info-link_bnr+.caution {
    margin-top: 15px;
}

.dokugaku-course_point {
    padding: 60px 0;
    background: url(../image/2022_04/bg.png) repeat 50%;
}

.winSP .dokugaku-course_point {
    padding: 30px 0;
}

.dokugaku-course_point .inner {
    max-width: 1020px;
}

.dokugaku-course_point .point-title_area {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    height: 153px;
    padding-left: 163px;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.winSP .dokugaku-course_point .point-title_area {
    height: auto;
    padding-top: 100px;
    padding-left: 0;
    text-align: center;
}

.isDeviceTB .dokugaku-course_point .point-title_area {
    height: 123px;
    padding-left: 120px;
}

.dokugaku-course_point .point-title_area:before {
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    width: 143px;
    height: 153px;
    margin-top: -76px;
    content: "";
    background-repeat: no-repeat;
    background-position: 50%;
}

._minhoshi .dokugaku-course_point .point-title_area:before {
    background-image: url(../image/2021/ico_minhoshi.png);
}

._ukaru .dokugaku-course_point .point-title_area:before {
    background-image: url(../image/2020/ico_ukaru.png);
}

.winSP .dokugaku-course_point .point-title_area:before {
    top: 0;
    left: 50%;
    width: 80px;
    height: 90px;
    margin-top: 0;
    margin-left: -40px;
    background-size: 100% auto;
}

.isDeviceTB .dokugaku-course_point .point-title_area:before {
    width: 120px;
    background-size: 100% auto;
}

.dokugaku-course_point .point-title_area .title {
    font-size: 4.2rem;
    line-height: 1.2;
    color: #ec3853;
}

.winSP .dokugaku-course_point .point-title_area .title {
    font-size: 2rem;
    width: 100%;
}

.isDeviceTB .dokugaku-course_point .point-title_area .title {
    font-size: 3rem;
}

.dokugaku-course_point .point-title_area .title>span {
    font-size: 4.6rem;
}

.winSP .dokugaku-course_point .point-title_area .title>span {
    font-size: 2.4rem;
}

.isDeviceTB .dokugaku-course_point .point-title_area .title>span {
    font-size: 3.2rem;
}

.dokugaku-course_point .point-profile_area {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 30px;
    padding: 0 20px;
}

.winSP .dokugaku-course_point .point-profile_area {
    padding: 0;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.dokugaku-course_point .point-profile_area .thumb {
    width: 232px;
}

.winSP .dokugaku-course_point .point-profile_area .thumb {
    display: block;
    width: 100%;
    text-align: center;
}

.dokugaku-course_point .point-profile_area .txtarea {
    width: 100%;
    padding-left: 50px;
}

.winSP .dokugaku-course_point .point-profile_area .txtarea {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    flex-direction: column;
    width: 100%;
    padding-left: 0;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
}

.winSP .dokugaku-course_point .point-profile_area .txtarea>* {
    width: 100%;
}

.dokugaku-course_point .point-profile_area .txtarea .subttl {
    font-size: 1.4rem;
    font-weight: 700;
    padding: 3px 25px;
    color: #fff;
    background: #ec3853;
}

.winSP .dokugaku-course_point .point-profile_area .txtarea .subttl {
    font-size: 1.2rem;
    margin-top: 5px;
    padding: 3px 5px;
    -webkit-order: 2;
    -ms-order: 2;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
}

.isDeviceTB .dokugaku-course_point .point-profile_area .txtarea .subttl {
    padding: 3px 15px;
}

.dokugaku-course_point .point-profile_area .txtarea .profile-details {
    font-size: 1.6rem;
    line-height: 2;
    position: relative;
    margin-top: 8px;
    padding: 25px;
    border: 1px solid #000;
    background: #fff;
}

.winSP .dokugaku-course_point .point-profile_area .txtarea .profile-details {
    font-size: 1.2rem;
    margin-top: 30px;
    padding: 15px 10px;
    -webkit-order: 1;
    -ms-order: 1;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
}

.dokugaku-course_point .point-profile_area .txtarea .profile-details:after,.dokugaku-course_point .point-profile_area .txtarea .profile-details:before {
    position: absolute;
    top: 30px;
    right: 100%;
    width: 0;
    height: 0;
    content: " ";
    pointer-events: none;
    border: solid transparent;
}

.winSP .dokugaku-course_point .point-profile_area .txtarea .profile-details:after,.winSP .dokugaku-course_point .point-profile_area .txtarea .profile-details:before {
    top: -20px;
    bottom: 100%;
    left: 50%;
}

.dokugaku-course_point .point-profile_area .txtarea .profile-details:before {
    margin-top: -2px;
    border-width: 30px 34px 0 0;
    border-color: transparent;
    border-right-color: #000;
}

.winSP .dokugaku-course_point .point-profile_area .txtarea .profile-details:before {
    margin-top: -2px;
    margin-left: -22px;
    border-width: 0 17px 22px;
    border-color: transparent transparent #000;
}

.dokugaku-course_point .point-profile_area .txtarea .profile-details:after {
    border-width: 26px 30px 0 0;
    border-color: rgba(136,183,213,0);
    border-right-color: #fff;
}

.winSP .dokugaku-course_point .point-profile_area .txtarea .profile-details:after {
    margin-top: 0;
    margin-left: -20px;
    border-width: 0 15px 20px;
    border-color: transparent transparent #fff;
}

.dokugaku-course_point .point-profile_area .txtarea .profile-details .ttl {
    font-size: 2.8rem;
    line-height: 1.2;
}

.winSP .dokugaku-course_point .point-profile_area .txtarea .profile-details .ttl {
    font-size: 1.8rem;
}

.dokugaku-course_point .point-feature_txt {
    margin-top: 30px;
    padding: 0 20px;
}

.winSP .dokugaku-course_point .point-feature_txt {
    padding: 0;
}

.dokugaku-course_point .point-feature_txt dt {
    font-size: 2.8rem;
}

.winSP .dokugaku-course_point .point-feature_txt dt {
    font-size: 2rem;
}

.dokugaku-course_point .point-feature_txt dd {
    font-size: 1.6rem;
    line-height: 2;
}

.winSP .dokugaku-course_point .point-feature_txt dd {
    font-size: 1.2rem;
}

.dokugaku-course_point .point-feature_txt dd .caution {
    font-size: 1.2rem;
    line-height: 1.4;
    color: #e40000;
}

.movie_box {
    margin-top: 20px;
    padding: 5%;
    background: #fff;
    border: 1px solid #ddd;
    text-align: center;
}

.movie_box .movie_box_title span {
    font-size: 30px;
    font-size: 3rem;
    font-weight: bold;
    line-height: 1;
    margin-bottom: 15px;
    display: inline-block;
    background: linear-gradient(transparent 60%, #d2e8ff 0)
}

#minhoshi .movie_box .movie_box_title span {
    background: linear-gradient(transparent 60%, #ffdb86 0)
}

.movie_box .txt {
    font-size: 16px;
    font-size: 1.6rem;
}

.movie_box .youtubeRes {
    margin-top: 20px;
}

.movie_box.until {
    display: block !important;
}

.movie_box.until .youtubeRes iframe {
    display: none;
}

.movie_box.until .youtubeRes {
    background: #aaa;
}

.movie_box.until .youtubeRes:before {
    display: inline-block;
    width: 100%;
    color: #fff;
    font-size: 28px;
    font-size: 2.8rem;
    font-weight: bold;
    white-space: pre;
    text-align: center;
    content: "2021年12月下旬頃公開予定";
    position: absolute;
    top: 40%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.movie_box.until .youtubeRes:after {
    display: inline-block;
    width: 100%;
    color: #fff;
    font-size: 26px;
    font-size: 2.6rem;
    white-space: pre;
    text-align: center;
    content: "今しばらくお待ちください。";
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.winSP .movie_box .movie_box_title span {
    font-size: 5vw;
    margin-bottom: 5px;
}

.winSP .movie_box .txt {
    font-size: 3.5vw;
}

.winSP .movie_box .youtubeRes {
    margin-top: 10px;
}

.winSP .movie_box.until .youtubeRes:before, .winSP .movie_box.until .youtubeRes:after {
    font-size: 3.5vw;
}

.dokugaku-course_point .point-lecture_area {
    position: relative;
    margin-top: 40px;
    padding: 30px 20px;
    border: 1px solid #cfcda1;
    background-color: #fff;
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiPjxkZWZzPjxwYXR0ZXJuIGlkPSJwYXR0ZXJuX2xZVkMwIiBwYXR0ZXJuVW5pdHM9InVzZXJTcGFjZU9uVXNlIiB3aWR0aD0iNyIgaGVpZ2h0PSI3IiBwYXR0ZXJuVHJhbnNmb3JtPSJyb3RhdGUoMTM1KSI+PGxpbmUgeDE9IjAiIHk9IjAiIHgyPSIwIiB5Mj0iNyIgc3Ryb2tlPSIjRjBFRkQzIiBzdHJva2Utd2lkdGg9IjEyIi8+PC9wYXR0ZXJuPjwvZGVmcz4gPHJlY3Qgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgZmlsbD0idXJsKCNwYXR0ZXJuX2xZVkMwKSIgb3BhY2l0eT0iMSIvPjwvc3ZnPg==");
}

.winSP .dokugaku-course_point .point-lecture_area {
    margin-top: 30px;
    padding: 20px 10px;
}

.dokugaku-course_point .point-lecture_area:after,.dokugaku-course_point .point-lecture_area:before {
    position: absolute;
    z-index: 1;
    top: 30px;
    display: block;
    width: 20px;
    height: 20px;
    content: "";
    border: 1px solid #cfcda1;
    border-radius: 50%;
    background: #fff;
    -webkit-box-shadow: 0 9px 10px -10px rgba(0,0,0,.6) inset;
    box-shadow: inset 0 9px 10px -10px rgba(0,0,0,.6);
}

.winSP .dokugaku-course_point .point-lecture_area:after,.winSP .dokugaku-course_point .point-lecture_area:before {
    top: 10px;
}

.dokugaku-course_point .point-lecture_area:before {
    left: 40px;
}

.winSP .dokugaku-course_point .point-lecture_area:before {
    left: 10px;
}

.dokugaku-course_point .point-lecture_area:after {
    right: 40px;
}

.winSP .dokugaku-course_point .point-lecture_area:after {
    right: 10px;
}

.dokugaku-course_point .point-lecture_ttl {
    font-size: 4.8rem;
    line-height: 1.2;
    text-align: center;
    color: #ec3853;
}

.winSP .dokugaku-course_point .point-lecture_ttl {
    font-size: 2.8rem;
}

.isDeviceTB .dokugaku-course_point .point-lecture_ttl {
    font-size: 3.4rem;
}

.dokugaku-course_point .point-lecture_ttl span {
    font-size: 4rem;
}

.winSP .dokugaku-course_point .point-lecture_ttl span {
    font-size: 2rem;
}

.isDeviceTB .dokugaku-course_point .point-lecture_ttl span {
    font-size: 3rem;
}

.dokugaku-course_point .point-lecture_details {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: calc(100% + 40px);
    margin-top: 30px;
    margin-left: -40px;
}

.winSP .dokugaku-course_point .point-lecture_details {
    display: block;
    width: 100%;
    margin-top: 15px;
    margin-left: 0;
}

.isDeviceTB .dokugaku-course_point .point-lecture_details {
    display: block;
    width: 100%;
    margin-left: 0;
}

.dokugaku-course_point .point-lecture_details>.box {
    width: calc(50% - 40px);
    margin-left: 40px;
}

.isDeviceTB .dokugaku-course_point .point-lecture_details>.box,.winSP .dokugaku-course_point .point-lecture_details>.box {
    width: 100%;
    margin-left: 0;
}

.dokugaku-course_point .point-lecture_details .taiken-area {
    padding-left: 20px;
}

.isDeviceTB .dokugaku-course_point .point-lecture_details .taiken-area,.winSP .dokugaku-course_point .point-lecture_details .taiken-area {
    padding-left: 0;
    text-align: center;
}

.dokugaku-course_point .point-lecture_details .taiken-area .thumb img {
    width: 100%;
    max-width: none;
}

.winSP .dokugaku-course_point .point-lecture_details .taiken-area .thumb {
    display: block;
    text-align: center;
}

.winSP .dokugaku-course_point .point-lecture_details .taiken-area .thumb img {
    width: auto;
    max-width: 100%;
}

.isDeviceTB .dokugaku-course_point .point-lecture_details .taiken-area .thumb {
    display: block;
    text-align: center;
}

.isDeviceTB .dokugaku-course_point .point-lecture_details .taiken-area .thumb img {
    width: auto;
    max-width: 100%;
}

.dokugaku-course_point .point-lecture_details .taiken-area .btnlp-data {
    width: 100%;
}

.winSP .dokugaku-course_point .point-lecture_details .taiken-area .btnlp-data {
    max-width: 400px;
    margin-top: 15px;
}

.isDeviceTB .dokugaku-course_point .point-lecture_details .taiken-area .btnlp-data {
    max-width: 400px;
    margin-top: 20px;
}

.dokugaku-course_point .point-lecture_details .taiken-area .btnlp-data a span {
    font-size: 2.6rem;
    width: 100%;
}

.winSP .dokugaku-course_point .point-lecture_details .taiken-area .btnlp-data a span {
    font-size: 2rem;
}

.dokugaku-course_point .point-lecture_details .taiken-area .btnlp-data + p {
    display: inline-block;
}

.winSP .dokugaku-course_point .point-lecture_details .taiken-area .btnlp-data + p {
    width: 100%;
    text-align: left;
    padding-top: 1%;
}

.dokugaku-course_point .point-lecture_details .taiken-area .pdf {
    margin-top: 10px;
    text-align: right;
    display: inline-block;
    width: 50%;
}

.winSP .dokugaku-course_point .point-lecture_details .taiken-area .pdf {
    text-align: right;
    width: 100%;
}

.dokugaku-course_point .point-lecture_details .taiken-area .pdf a {
    position: relative;
    display: inline-block;
    padding-left: 20px;
}

.dokugaku-course_point .point-lecture_details .taiken-area .pdf a:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 16px;
    height: 16px;
    content: "";
    background: url(../image/2020/ico-pdf.png);
}

.dokugaku-course_point .point-lecture_details .taiken-area .pdf a span {
    text-decoration: underline;
    color: #000;
}

.isDeviceTB .dokugaku-course_point .point-lecture_details .setumei-area,.winSP .dokugaku-course_point .point-lecture_details .setumei-area {
    margin-top: 20px;
}

.dokugaku-course_point .point-lecture_details .setumei-area .setumei-box {
    padding: 10px;
    color: #666;
    background: #fff;
}

.dokugaku-course_point .point-lecture_details .setumei-area .setumei-box+.setumei-box {
    margin-top: 8px;
}

.dokugaku-course_point .point-lecture_details .setumei-area .setumei-box>dt {
    font-size: 2.2rem;
}

.winSP .dokugaku-course_point .point-lecture_details .setumei-area .setumei-box>dt {
    font-size: 1.8rem;
}

.dokugaku-course_point .point-lecture_details .setumei-area .setumei-box .setsumei-time {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 5px;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.winSP .dokugaku-course_point .point-lecture_details .setumei-area .setumei-box .setsumei-time {
    display: block;
}

.isDeviceTB .dokugaku-course_point .point-lecture_details .setumei-area .setumei-box .setsumei-time {
    max-width: 420px;
    margin-right: auto;
    margin-left: auto;
}

.dokugaku-course_point .point-lecture_details .setumei-area .setumei-box .setsumei-time>dt {
    line-height: 1.2;
    width: 100px;
    color: #c00;
}

.winSP .dokugaku-course_point .point-lecture_details .setumei-area .setumei-box .setsumei-time>dt {
    width: 100%;
    text-align: center;
}

.dokugaku-course_point .point-lecture_details .setumei-area .setumei-box .setsumei-time>dd {
    width: calc(100% - 100px);
}

.winSP .dokugaku-course_point .point-lecture_details .setumei-area .setumei-box .setsumei-time>dd {
    width: 100%;
    margin-top: 5px;
}

.dokugaku-course_point .point-lecture_details .setumei-area .setumei-box .setsumei-time>dd .time {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.dokugaku-course_point .point-lecture_details .setumei-area .setumei-box .setsumei-time>dd .time li {
    font-weight: 700;
    width: 50%;
    text-align: center;
}

.dokugaku-course_point .point-lecture_details .setumei-area .setumei-box .setsumei-time>dd .time li.time1 {
    color: #222;
    border: 2px solid #e1eaf3;
    background: #e1eaf3;
}

.dokugaku-course_point .point-lecture_details .setumei-area .setumei-box .setsumei-time>dd .time li.time2 {
    color: #c00;
    border: 2px dashed #c00;
    background: #f9f7eb;
}

.dokugaku-course_point .point-lecture_details .setumei-area .setumei-box .setsumei-time>dd .time li.time3 {
    width: 100%;
    color: #fff;
    border: 2px dashed #165a8e;
    background: #165a8e;
}

.dokugaku-course_point .point-lecture_details .setumei-area .note {
    line-height: 1.2;
    margin-top: 8px;
}

.dokugaku-course_point .point-lecture_details .setumei-area .note .red {
    font-weight: 700;
    color: red;
}

.dokugaku-course_point .point-lecture_details .setumei-area .bnr {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: calc(100% + 20px);
    margin-top: 10px;
    margin-left: -20px;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.winSP .dokugaku-course_point .point-lecture_details .setumei-area .bnr {
    width: 100%;
    margin-top: 15px;
    margin-left: 0;
}

.isDeviceTB .dokugaku-course_point .point-lecture_details .setumei-area .bnr {
    margin-top: 20px;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.dokugaku-course_point .point-lecture_details .setumei-area .bnr li {
    margin-left: 20px;
    border-radius: 3px;
    -webkit-box-shadow: 0 3px 0 #d4d4d4;
    box-shadow: 0 3px 0 #d4d4d4;
}

.winSP .dokugaku-course_point .point-lecture_details .setumei-area .bnr li {
    width: 100%;
    margin-left: 0;
}

.winSP .dokugaku-course_point .point-lecture_details .setumei-area .bnr li~li {
    margin-top: 10px;
}

.isDeviceTB .dokugaku-course_point .point-lecture_details .setumei-area .bnr li {
    min-width: 230px;
}

.dokugaku-course_point .point-lecture_details .setumei-area .bnr li a {
    font-size: 1.4rem;
    font-weight: 700;
    position: relative;
    display: block;
    padding: 4px 30px;
}

.dokugaku-course_point .point-lecture_details .setumei-area .bnr li a:before {
    font-family: iconset!important;
    font-size: 1.2rem;
    font-weight: 400;
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    position: absolute;
    top: 50%;
    left: 10px;
    margin-top: -5px;
    content: "\e90a";
    text-transform: none;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.dokugaku-course_point .point-lecture_details .setumei-area .bnr li.spec a {
    color: #0043b2;
    border: 1px solid #fff;
    border-radius: 3px;
    background: -webkit-gradient(linear,left top,left bottom,color-stop(0,#fff),to(#e8e9e8));
    background: -webkit-linear-gradient(top,#fff,#e8e9e8);
    background: -o-linear-gradient(top,#fff 0,#e8e9e8);
    background: linear-gradient(180deg,#fff,#e8e9e8);
    -webkit-box-shadow: 0 0 0 1px #bcbcbc;
    box-shadow: 0 0 0 1px #bcbcbc;
}

.dokugaku-course_point .point-lecture_details .setumei-area .bnr li.spec a:hover {
    background: -webkit-gradient(linear,left top,left bottom,color-stop(0,#e8e9e8),to(#fff));
    background: -webkit-linear-gradient(top,#e8e9e8,#fff);
    background: -o-linear-gradient(top,#e8e9e8 0,#fff);
    background: linear-gradient(180deg,#e8e9e8,#fff);
}

.dokugaku-course_point .point-lecture_details .setumei-area .bnr li.schedule a {
    color: #fff;
    border: 1px solid #0d2b63;
    border-radius: 3px;
    background: -webkit-gradient(linear,left top,left bottom,color-stop(0,#004881),to(#0d2b63));
    background: -webkit-linear-gradient(top,#004881,#0d2b63);
    background: -o-linear-gradient(top,#004881 0,#0d2b63);
    background: linear-gradient(180deg,#004881,#0d2b63);
    -webkit-box-shadow: 0 0 0 1px #0d2b63;
    box-shadow: 0 0 0 1px #0d2b63;
}

.dokugaku-course_point .point-lecture_details .setumei-area .bnr li.schedule a:hover {
    background: -webkit-gradient(linear,left top,left bottom,color-stop(0,#0d2b63),to(#004881));
    background: -webkit-linear-gradient(top,#0d2b63,#004881);
    background: -o-linear-gradient(top,#0d2b63 0,#004881);
    background: linear-gradient(180deg,#0d2b63,#004881);
}

.dokugaku-course_point .point-lecture_movie .movie {
    max-width: 600px;
    margin: 15px auto 0;
}

.dokugaku-course_point .point-lecture_movie .txtarea {
    max-width: 780px;
    margin: 30px auto 0;
}

.dokugaku-course_point .point-lecture_movie .txtarea .bold {
    font-size: 1.4rem;
}

.dokugaku-course_point .point-lecture_movie .txtarea .bold strong {
    color: #fe0000;
}

.dokugaku-course_point .download-app_area {
    margin-top: 60px;
}

.winSP .dokugaku-course_point .download-app_area {
    margin-top: 30px;
}

.dokugaku-course_point .download-app_area>.title {
    font-size: 2.6rem;
    font-weight: 700;
    line-height: 1.2;
    padding: 8px 0 5px;
    text-align: center;
    color: #fff;
    background: #e20011;
}

.winSP .dokugaku-course_point .download-app_area>.title {
    font-size: 4.6vw;
}

.dokugaku-course_point .download-app_inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 30px;
    padding: 0 15px 0 30px;
}

.winSP .dokugaku-course_point .download-app_inner {
    display: block;
    margin-top: 10px;
    padding: 0;
}

.dokugaku-course_point .download-app_inner .txtarea {
    font-size: 1.4rem;
    line-height: 2;
    width: 56%;
}

.winSP .dokugaku-course_point .download-app_inner .txtarea {
    width: 100%;
    line-height: 1.5;
}

.dokugaku-course_point .download-app_inner .txtarea .caution {
    margin-top: 1em;
}

.dokugaku-course_point .download-app_inner .btn_app {
    max-width: 208px;
    width: 100%;
}

.dokugaku-course_point .download-app_inner .btn_app a {
    display: block;
    height: 40px;
    position: relative;
    color: #fff;
    background: linear-gradient(to bottom, #1d376b 0%, #0e192f 100%);
    -webkit-box-shadow: 0 3px 0 #d4d4d4;
    box-shadow: 0 3px 0 #d4d4d4;
    text-align: center;
}

.dokugaku-course_point .download-app_inner .btn_app a:hover {
    background: linear-gradient(to bottom, #111d58 0%, #060e1f 100%);
}

.dokugaku-course_point .download-app_inner .btn_app a:after {
    font-family: iconset!important;
    content: "\e90a";
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 5%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    color: #fff;
}

.dokugaku-course_point .download-app_inner .btn_app a span {
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: bold;
    width: 100%;
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 0%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.winSP .dokugaku-course_point .download-app_inner .btn_app {
    margin: 0 auto;
}

@media screen and (max-width: 240px) {
    .winSP .dokugaku-course_point .download-app_inner .btn_app a span {
        font-size:6vw;
    }
}

.dokugaku-course_point .download-app_inner .thumb {
    width: 44%;
}

.winSP .dokugaku-course_point .download-app_inner .thumb {
    display: block;
    width: 100%;
    margin-top: 15px;
    text-align: center;
}

.dokugaku-course_curriculum {
    margin-top: 80px;
    padding-top: 80px;
    border-top: 1px solid #a9b3bf;
}

.winSP .dokugaku-course_curriculum {
    margin-top: 30px;
    padding-top: 30px;
}

.dokugaku-course_curriculum .course-curriculum_title {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    text-align: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.dokugaku-course_curriculum .course-curriculum_title>span {
    font-size: 4.8rem;
    position: relative;
    display: inline-block;
    height: 85px;
    padding-top: 10px;
    color: #ec3853;
}

.winSP .dokugaku-course_curriculum .course-curriculum_title>span {
    font-size: 2.4rem;
    height: auto;
}

._minhoshi .dokugaku-course_curriculum .course-curriculum_title>span {
    padding-left: 105px;
}

.winSP ._minhoshi .dokugaku-course_curriculum .course-curriculum_title>span {
    padding-top: 5px;
    padding-left: 55px;
}

._ukaru .dokugaku-course_curriculum .course-curriculum_title>span {
    padding-left: 154px;
}

.winSP ._ukaru .dokugaku-course_curriculum .course-curriculum_title>span {
    padding-top: 5px;
    padding-left: 74px;
}

.dokugaku-course_curriculum .course-curriculum_title>span:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 85px;
    height: 85px;
    content: "";
    background-repeat: no-repeat;
    background-position: 50%;
}

.winSP .dokugaku-course_curriculum .course-curriculum_title>span:before {
    background-size: 100% auto;
}

._minhoshi .dokugaku-course_curriculum .course-curriculum_title>span:before {
    background-image: url(../image/2020/ico_webkogi.png);
}

.winSP ._minhoshi .dokugaku-course_curriculum .course-curriculum_title>span:before {
    width: 40px;
    height: 40px;
}

._ukaru .dokugaku-course_curriculum .course-curriculum_title>span:before {
    width: 134px;
    background-image: url(../image/2020/ico_dvdkogi.png);
}

.winSP ._ukaru .dokugaku-course_curriculum .course-curriculum_title>span:before {
    width: 64px;
    height: 40px;
}

.dokugaku-course_curriculum .course-curriculum_thumb {
    display: block;
    margin-top: 15px;
    text-align: center;
}

.notes_info02 {
    width: 100%;
    margin: 30px auto 0;
    font-size: 24px;
    font-size: 2.4rem;
    position: relative;
    border: 1px solid #de0000;
}

.notes_info02_title {
    background: #de0000;
    color: #fff;
    padding: 1%;
    text-align: center;
}

.notes_info02 .notes_info02_btn {
    background: #fff;
    padding: 3% 150px;
    padding-right: 200px;
    text-align: center;
    position: relative;
    cursor: pointer;
}

.notes_info02 .notes_info02_btn span {
    display: block;
}

.notes_info02 .notes_info02_btn:after {
    content: "";
    background-image: url(../image/2022_04/btn_click.png);
    background-repeat: no-repeat;
    background-position: 0% 50%;
    background-size: contain;
    width: 230px;
    height: 66px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
}

.notes_info02 .notes_info02_btn.open:after {
    background-image: url(../image/2022_04/btn_close.png);
}

.notes_info02 .notes_info02_btn.open {
    border-bottom: 1px solid #de0000;
}

/* .notes_info02 .apply-list{
	background:#fff;
	color:#000;
	font-size:14px;
	font-size:1.4rem;
	text-align:left;
	padding:2% 3%;
	margin-top:1px;
} */
.notes_info02 .apply-list a {
    color: #2a6be3 !important;
    text-decoration: none !important;
}

.notes_info02 .apply-list a:hover {
    text-decoration: underline !important;
}

.notes_info02_content {
    padding: 0 60px;
}

.winSP .notes_info02_content {
    padding: 0 10px;
}

.winSP .apply-list_head {
    font-size: 4.5vw;
}

.winSP .notes_info02 {
    margin: 20px 0 auto;
}

.winSP .notes_info02 h5 img {
    vertical-align: middle;
}

.winSP .notes_info02 h5 {
    font-size: 4.2vw;
}

.winSP .notes_info02 .notes_info02_btn {
    padding: 3% 20% 3% 0%;
}

.winSP .notes_info02 .notes_info02_btn span {
    font-size: 4vw;
    width: 100%;
}

.winSP .notes_info02 .notes_info02_btn:after {
    width: 20%;
    height: 100%;
}

.winSP .notes_info02 p span {
    font-size: 4vw;
    width: 80%;
}

.winSP .notes_info02 p:after {
    line-height: 15vw;
}

.winSP .notes_info02 h6 {
    font-size: 4.5vw;
}

.dokugaku-course_curriculum .course-curriculum_subttl {
    font-size: 2rem;
    margin-top: 30px;
    padding-top: 4px;
    text-align: center;
    color: #1a2e76;
    border: 1px solid #cbcbcb;
    background: #fff;
}

.winSP .dokugaku-course_curriculum .course-curriculum_subttl {
    font-size: 1.8rem;
}

.dokugaku-course_curriculum .course-curriculum_link {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 15px;
    padding: 20px;
}

.winSP .dokugaku-course_curriculum .course-curriculum_link {
    display: block;
    padding: 15px 10px;
}

.isDeviceTB .dokugaku-course_curriculum .course-curriculum_link {
    display: block;
}

._minhoshi .dokugaku-course_curriculum .course-curriculum_link {
    background: #fb9332;
}

._ukaru .dokugaku-course_curriculum .course-curriculum_link {
    background: #37a9e1;
}

.dokugaku-course_curriculum .course-curriculum_link .txtarea {
    line-height: 1.2;
    width: 62%;
    padding-right: 20px;
}

.isDeviceTB .dokugaku-course_curriculum .course-curriculum_link .txtarea,.winSP .dokugaku-course_curriculum .course-curriculum_link .txtarea {
    width: 100%;
    padding-right: 0;
}

.dokugaku-course_curriculum .course-curriculum_link .txtarea .catch,.dokugaku-course_curriculum .course-curriculum_link .txtarea .data {
    color: #000;
}

.dokugaku-course_curriculum .course-curriculum_link .txtarea .catch {
    font-size: 1.6rem;
}

.winSP .dokugaku-course_curriculum .course-curriculum_link .txtarea .catch {
    font-size: 1.2rem;
}

.dokugaku-course_curriculum .course-curriculum_link .txtarea .ttl {
    font-size: 4rem;
    margin-top: 8px;
    color: #fff;
}

.winSP .dokugaku-course_curriculum .course-curriculum_link .txtarea .ttl {
    font-size: 2.4rem;
}

.dokugaku-course_curriculum .course-curriculum_link .txtarea .ttl>span {
    font-size: 3rem;
}

.winSP .dokugaku-course_curriculum .course-curriculum_link .txtarea .ttl>span {
    font-size: 1.4rem;
}

.dokugaku-course_curriculum .course-curriculum_link .txtarea .data {
    font-size: 2rem;
    margin-top: 5px;
}

.winSP .dokugaku-course_curriculum .course-curriculum_link .txtarea .data {
    font-size: 1.6rem;
}

.dokugaku-course_curriculum .course-curriculum_link .txtarea .notes {
    margin-top: 8px;
    padding-top: 12px;
    border-top: 1px dashed #fff;
}

._ukaru .dokugaku-course_curriculum .course-curriculum_link .txtarea .notes {
    color: #fff;
}

.dokugaku-course_curriculum .course-curriculum_link .txtarea .link,.dokugaku-course_curriculum .course-curriculum_link .txtarea .notes p+p {
    margin-top: 5px;
}

.dokugaku-course_curriculum .course-curriculum_link .txtarea .link a {
    color: #000;
}

._ukaru .dokugaku-course_curriculum .course-curriculum_link .txtarea .link a {
    color: #fff;
}

.winSP .dokugaku-course_curriculum .course-curriculum_link .txtarea .link a {
    display: inline-block;
    padding-left: 1em;
    text-indent: -1em;
}

.dokugaku-course_curriculum .course-curriculum_link .txtarea .link a span {
    color: #fffa7c;
}

.winSP .dokugaku-course_curriculum .course-curriculum_link .txtarea .link a span {
    display: inline;
    padding-left: 0;
    text-indent: 0;
}

.dokugaku-course_curriculum .course-curriculum_link .txtarea .link a.nolink .underline {
    text-decoration: none;
}

.dokugaku-course_curriculum .course-curriculum_link .txtarea .link a.nolink span {
    color: #000;
}

._ukaru .dokugaku-course_curriculum .course-curriculum_link .txtarea .link a.nolink span {
    color: #fff;
}

.dokugaku-course_curriculum .course-curriculum_link .linkarea {
    width: 47%;
    padding: 20px 10px;
    background: #fff;
}

.winSP .dokugaku-course_curriculum .course-curriculum_link .linkarea {
    width: 100%;
    margin-top: 15px;
    padding: 10px 10px 15px;
}

.isDeviceTB .dokugaku-course_curriculum .course-curriculum_link .linkarea {
    width: 100%;
    margin-top: 15px;
}

.dokugaku-course_curriculum .course-curriculum_link .linkarea .txt {
    -webkit-transform: skewX(-15deg);
    -ms-transform: skewX(-15deg);
    transform: skewX(-15deg);
    text-align: center;
    color: #ca1111;
}

.dokugaku-course_curriculum .course-curriculum_link .linkarea .txt .text {
    font-size: 2rem;
}

.winSP .dokugaku-course_curriculum .course-curriculum_link .linkarea .txt .text {
    font-size: 1.6rem;
}

.dokugaku-course_curriculum .course-curriculum_link .linkarea .txt .price {
    font-size: 4.5rem;
}

.winSP .dokugaku-course_curriculum .course-curriculum_link .linkarea .txt .price {
    font-size: 2.8rem;
}

.dokugaku-course_curriculum .course-curriculum_link .linkarea .txt .yen {
    font-size: 3rem;
}

.winSP .dokugaku-course_curriculum .course-curriculum_link .linkarea .txt .yen {
    font-size: 2rem;
}

.dokugaku-course_curriculum .course-curriculum_link .linkarea .txt .tax {
    font-size: 1.4rem;
}

.winSP .dokugaku-course_curriculum .course-curriculum_link .linkarea .txt .tax {
    font-size: 1rem;
}

.dokugaku-course_curriculum .course-curriculum_link .linkarea .add-btn {
    margin-top: 8px;
    padding: 0 10px;
}

.winSP .dokugaku-course_curriculum .course-curriculum_link .linkarea .add-btn {
    padding-right: 5px;
    padding-left: 5px;
}

.dokugaku-course_curriculum .course-curriculum_link .linkarea .add-btn a {
    font-size: 2.4rem;
    display: block;
    padding: 15px;
    text-align: center;
    color: #fff;
    background: #ca1111;
}

.winSP .dokugaku-course_curriculum .course-curriculum_link .linkarea .add-btn a {
    font-size: 1.8rem;
}

.dokugaku-course_curriculum .course-curriculum_link .linkarea .add-btn a span {
    position: relative;
    display: inline-block;
    padding-right: 40px;
}

.dokugaku-course_curriculum .course-curriculum_link .linkarea .add-btn a span:after {
    font-family: pageico!important;
    font-weight: 400;
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    position: absolute;
    top: 50%;
    right: 0;
    content: "\e902";
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    text-transform: none;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.dokugaku-course_curriculum .course-curriculum_link .linkarea .add-btn a:hover {
    background: #b20f0f;
}

.dokugaku-course_curriculum .course-curriculum_link .linkarea .add-btn a.nolink {
    font-size: 2rem;
    color: #000;
    border: 1px solid #000;
    background: #ccc;
}

.winSP .dokugaku-course_curriculum .course-curriculum_link .linkarea .add-btn a.nolink {
    font-size: 1.6rem;
    padding-right: 5px;
    padding-left: 5px;
    letter-spacing: -.02em;
}

.dokugaku-course_curriculum .course-curriculum_link .linkarea .add-btn a.nolink span {
    padding-right: 0;
}

.dokugaku-course_curriculum .course-curriculum_link .linkarea .add-btn a.nolink span:after {
    display: none;
}

.dokugaku-course_curriculum .course-curriculum_link+.caution {
    margin-top: 10px;
}

.dokugaku-course_curriculum .red {
    color: #e40000;
}

.dokugaku-price_area .inner {
    max-width: 1064px;
}

.dokugaku-price_area .info-txt {
    font-size: 1.6rem;
    line-height: 2;
    padding: 60px 20px 0;
}

.winSP .dokugaku-price_area .info-txt {
    line-height: 1.5;
    padding: 30px 0 0;
}

.dokugaku-price_title {
    font-size: 3.4rem;
    line-height: 1.2;
    padding-top: 15px;
    padding-bottom: 10px;
    text-align: center;
    color: #f8ff8a;
    background: #3d5f8f;
}

.dokugaku-price_area .main-course_area {
    background: unset;
}

.winSP .dokugaku-price_area .main-course_area {
    border-top: none;
}

.dokugaku-price_area .main-course_area .main-course_list .kakunin_btn a:after {
    -webkit-transform: translateY(-50%) rotate(-90deg);
    transform: translateY(-50%) rotate(-90deg);
}

.dokugaku-price_area .course_price .course_r .inner_fullpack dl {
    text-align: left;
    padding: 2% 5%;
    width: 90%;
    margin: 0 auto;
}

.dokugaku-price_area .course_price .course_r .inner_fullpack dl dt {
    font-size: 16px;
    font-size: 1.6rem;
}

.winSP .dokugaku-price_area .course_price .course_r .inner_fullpack dl dt {
    font-size: 3.5vw;
}

.dokugaku-price_area .course_price .course_r .inner_fullpack li {
    font-weight: normal !important;
}

.winSP .dokugaku-price_title {
    font-size: 1.6rem;
}

.dokugaku-price_title span {
    font-size: 6rem;
    display: inline-block;
    margin-left: .2em;
    color: #fff;
}

.winSP .dokugaku-price_title span {
    font-size: 3rem;
}

.dokugaku-price_box {
    margin-top: 80px;
}

.dokugaku-price_box .box~.box,.winSP .dokugaku-price_box {
    margin-top: 30px;
}

.dokugaku-price_box .border {
    border: 1px solid #a1a183;
}

.dokugaku-price_box .title-area {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.winSP .dokugaku-price_box .title-area {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.dokugaku-price_box .title-area .title {
    font-size: 3.6rem;
    line-height: 1.2;
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    width: calc(100% - 262px);
}

.winSP .dokugaku-price_box .title-area .title {
    font-size: 2rem;
    width: 100%;
}

.isDeviceTB .dokugaku-price_box .title-area .title {
    width: calc(100% - 202px);
}

.dokugaku-price_box .title-area .title .ttl {
    display: block;
    padding: 5px 0 0 50px;
}

.winSP .dokugaku-price_box .title-area .title .ttl {
    padding-top: 10px;
    padding-bottom: 5px;
}

.dokugaku-price_box .title-area .title .cat {
    font-size: 2rem;
    position: relative;
    top: 0;
    left: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 260px;
    color: #fff;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.winSP .dokugaku-price_box .title-area .title .cat {
    font-size: 1.2rem;
    width: 120px;
}

.dokugaku-price_box .title-area .title .cat>span {
    position: relative;
    z-index: 1;
    display: block;
    width: 275px;
    margin-right: -15px;
    padding-left: 15px;
}

.dokugaku-price_box .title-area .title .cat:after {
    position: absolute;
    top: 50%;
    right: -40px;
    width: 0;
    height: 0;
    content: "";
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    border-width: 50px 0 50px 60px;
    border-style: solid;
    border-color: transparent;
    border-right-color: #007bff;
}

.dokugaku-price_box .title-area .btn {
    width: 262px;
    padding: 0 10px!important;
}

.winSP .dokugaku-price_box .title-area .btn {
    width: 100%;
    padding: 10px!important;
}

.isDeviceTB .dokugaku-price_box .title-area .btn {
    width: 202px;
}

.dokugaku-price_box .title-area .btn a {
    font-weight: 700;
    position: relative;
    display: block;
    padding: 8px 30px 5px;
    color: #0043b2;
    color: #000;
    border: 1px solid #fff;
    border-radius: 3px;
    background: -webkit-gradient(linear,left top,left bottom,color-stop(0,#fff),to(#e8e9e8));
    background: -webkit-linear-gradient(top,#fff,#e8e9e8);
    background: -o-linear-gradient(top,#fff 0,#e8e9e8);
    background: linear-gradient(180deg,#fff,#e8e9e8);
    -webkit-box-shadow: 0 0 0 1px #bcbcbc;
    box-shadow: 0 0 0 1px #bcbcbc;
}

.winSP .dokugaku-price_box .title-area .btn a {
    width: 262px;
    margin: 0 auto;
}

.isDeviceTB .dokugaku-price_box .title-area .btn a {
    width: 100%;
    margin: 0 auto;
    padding: 8px 25px 5px 5px;
}

.dokugaku-price_box .title-area .btn a:after {
    font-family: iconset!important;
    font-weight: 400;
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    position: absolute;
    top: 50%;
    right: 10px;
    content: "\e90e";
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    text-transform: none;
    color: #838363;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.dokugaku-price_box .title-area .btn a:hover {
    background: -webkit-gradient(linear,left top,left bottom,color-stop(0,#e8e9e8),to(#fff));
    background: -webkit-linear-gradient(top,#e8e9e8,#fff);
    background: -o-linear-gradient(top,#e8e9e8 0,#fff);
    background: linear-gradient(180deg,#e8e9e8,#fff);
}

.dokugaku-price_box .summary-area {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 15px;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.isDeviceTB .dokugaku-price_box .summary-area,.winSP .dokugaku-price_box .summary-area {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.dokugaku-price_box .summary-area .course-data {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 370px;
    border: 1px solid #a1a183;
    background: #fffff3;
}

.winSP .dokugaku-price_box .summary-area .course-data {
    width: 100%;
}

.isDeviceTB .dokugaku-price_box .summary-area .course-data {
    width: 420px;
}

.dokugaku-price_box .summary-area .course-data>dt {
    padding: 5px;
    text-align: center;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}

.dokugaku-price_box .summary-area .course-data>dd {
    padding: 5px;
    border-left: 1px solid #a1a183;
}

.dokugaku-price_box .summary-area .price {
    font-size: 3.4rem;
    width: calc(100% - 668px);
    padding-left: 20px;
    -webkit-transform: skewX(-15deg);
    -ms-transform: skewX(-15deg);
    transform: skewX(-15deg);
    color: #e11717;
}

.dokugaku-price_box .summary-area .price .bold {
    font-size: 4.6rem;
}

.winSP .dokugaku-price_box .summary-area .price {
    width: 100%;
    margin-top: 10px;
    padding-left: 0;
    text-align: center;
}

.isDeviceTB .dokugaku-price_box .summary-area .price {
    width: calc(100% - 420px);
    text-align: center;
}

.dokugaku-price_box .summary-area .add-btn {
    width: 298px;
    padding: 0!important;
}

.winSP .dokugaku-price_box .summary-area .add-btn {
    width: 100%;
    margin-top: 10px;
}

.isDeviceTB .dokugaku-price_box .summary-area .add-btn {
    width: 100%;
    margin-top: 15px;
}

.dokugaku-price_box .summary-area .add-btn a {
    font-size: 1.8rem;
    position: relative;
    display: block;
    padding: 15px;
    text-align: center;
    color: #fff;
    border-radius: 3px;
    background: #c00;
}

.winSP .dokugaku-price_box .summary-area .add-btn a {
    font-size: 1.6rem;
}

.dokugaku-price_box .summary-area .add-btn a:hover {
    background: #b30000;
}

.dokugaku-price_box .summary-area .add-btn a:after {
    font-family: iconset!important;
    font-weight: 400;
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    position: absolute;
    top: 50%;
    right: 10px;
    content: "\e90e";
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    text-transform: none;
    color: #fff;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.dokugaku-price_box .summary-area .add-btn a.nolink {
    color: #000;
    border: 1px solid;
    background: #d4d4d4;
}

.dokugaku-price_box .summary-area .add-btn a.nolink:after {
    display: none;
}

.dokugaku-price_box .notes {
    padding: 15px 20px 0;
}

.dokugaku-price_box .notes .link a {
    display: inline-block;
    padding-left: 1em;
    text-indent: -1em;
    color: #222;
}

.dokugaku-price_box .notes .link a span {
    color: #001cab;
}

.dokugaku-price_box .notes .link a.nolink {
    display: inline;
    padding-left: 0;
    text-indent: 0;
}

.dokugaku-price_box .notes .link a.nolink span {
    color: #222;
}

.dokugaku-price_box .notes .link a.nolink .underline {
    text-decoration: none;
}

.dokugaku-price_box ._minhoshi .title-area {
    background: #fedcb7;
}

.dokugaku-price_box ._minhoshi .title-area .title {
    color: #fb770f;
}

.dokugaku-price_box ._minhoshi .title-area .title .cat {
    background: #f67b09;
}

.dokugaku-price_box ._minhoshi .title-area .title .cat:after {
    border-left-color: #f67b09;
}

.dokugaku-price_box ._ukaru .title-area {
    background: #c2e2ec;
}

.dokugaku-price_box ._ukaru .title-area .title {
    color: #093999;
}

.dokugaku-price_box ._ukaru .title-area .title .cat {
    background: #438ac7;
}

.dokugaku-price_box ._ukaru .title-area .title .cat:after {
    border-left-color: #438ac7;
}

.dokugaku-support_area .inner {
    max-width: 1024px;
}

.dokugaku-support_area .support_discount_wrap ul [class^="support_discount0"] h3 {
    margin-bottom: 1em;
    font-size: 2.6rem;
    text-align: center;
}

.dokugaku-support_area .support_discount_wrap ul [class^="support_discount0"] h3 span {
    display: block;
}

.dokugaku-support_area .support_discount_wrap ul [class^="support_discount0"] h3 span .normal {
    padding-left: 0;
}

.dokugaku-support_area .support_discount_wrap .support_discount_inner {
    display: flex;
    gap: 40px;
}

.dokugaku-support_area .support_discount_wrap .img_box {
    text-align: center;
    width: 100%;
    margin-bottom: 30px;
}

.dokugaku-support_area .support_discount_wrap .txt_box {
    font-size: 15px;
    font-size: 1.5rem;
}

.dokugaku-support_area .support_discount_wrap .txt_box .blue_box {
    background: #e1ecf9;
    padding: 3% 2%;
}

.winSP .dokugaku-support_area .support_discount_wrap ul {
    display: block;
}

.winSP .dokugaku-support_area .support_discount_wrap ul [class^="support_discount0"] {
    width: 100%;
    margin-bottom: 20px;
}

.winSP .dokugaku-support_area .support_discount_wrap ul [class^="support_discount0"] h3 {
    min-height: auto;
    margin-bottom: 10px;
}

.winSP .dokugaku-support_area .support_discount_wrap ul [class^="support_discount0"] h3 img {
    width: 20%;
}

.winSP .dokugaku-support_area .support_discount_wrap ul [class^="support_discount0"] h3 span {
    font-size: 5vw;
    line-height: 1.2;
}

.winSP .dokugaku-support_area .support_discount_wrap ul [class^="support_discount0"] h3 span .fontM {
    font-size: 3vw !important;
}

.winSP .dokugaku-support_area .support_discount_wrap .img_box {
    margin-bottom: 0;
}

.winSP .dokugaku-support_area .support_discount_wrap .support_discount_inner {
    flex-direction: column;
}

.winSP .dokugaku-support_area .support_discount_wrap .txt_box {
    font-size: 4vw !important;
}

.winSP .dokugaku-support_area .support_discount_wrap .txt_box .font1_4rem {
    font-size: 3vw !important;
}

.dokugaku-faq_area {
    margin-top: 80px;
    padding-top: 80px;
    border-top: 2px solid #cd1c29;
}

.winSP .dokugaku-faq_area {
    margin-top: 30px;
    padding-top: 30px;
}

.dokugaku-faq_area>.inner {
    max-width: 1024px;
}

.dokugaku-faq_title {
    font-size: 3.2rem;
    text-align: center;
    color: #cd1c29;
}

.winSP .dokugaku-faq_title {
    font-size: 2.4rem;
}

.dokugaku-faq_list {
    margin-top: 30px;
    border-bottom: 1px solid #e99797;
}

.dokugaku-faq_list dt {
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: 700;
    position: relative;
    padding: 8px 10px 8px 48px;
    color: #ce1e2a;
    border-top: 1px solid #e99797;
}

.winSP .dokugaku-faq_list dt {
    font-size: 1.5rem;
    padding: 8px 4px 4px 24px;
}

.dokugaku-faq_list dt:before {
    font-family: pageico!important;
    font-size: 1.7rem;
    font-weight: 400;
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    line-height: 26px;
    position: absolute;
    top: 10px;
    left: 6px;
    display: block;
    width: 25px;
    height: 25px;
    content: "";
    content: "\e903";
    text-align: center;
    text-transform: none;
    color: #fff;
    border-radius: 3px;
    background: #ce1e2a;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.winSP .dokugaku-faq_list dt:before {
    font-size: 1.3rem;
    line-height: 21px;
    top: 7px;
    left: 0;
    width: 20px;
    height: 20px;
}

.dokugaku-faq_list dd {
    font-size: 1.4rem;
    position: relative;
    border-top: 1px solid #e99797;
}

.winSP .dokugaku-faq_list dd {
    font-size: 1.2rem;
}

.dokugaku-faq_list dd:before {
    font-family: pageico!important;
    font-size: 1.7rem;
    font-weight: 400;
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    line-height: 26px;
    position: absolute;
    top: 20px;
    left: 26px;
    display: block;
    width: 25px;
    height: 25px;
    content: "";
    content: "\e900";
    text-align: center;
    text-transform: none;
    color: #fff;
    border-radius: 3px;
    background: #e58989;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.winSP .dokugaku-faq_list dd:before {
    font-size: 1.3rem;
    line-height: 21px;
    top: 15px;
    left: 6px;
    width: 20px;
    height: 20px;
}

.dokugaku-faq_list dd .txt {
    margin: 8px 0 15px;
    padding: 15px 10px 15px 65px;
    color: #ce1e2a;
    background-color: #fff6f6;
}

.winSP .dokugaku-faq_list dd .txt {
    padding: 9px 10px 10px 32px;
}

.dokugaku-apply_area .inner {
    max-width: 1064px;
}

.dokugaku-apply_flow {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: calc(100% + 30px);
    margin-top: 40px;
    margin-left: -30px;
}

.isDeviceTB .dokugaku-apply_flow,.winSP .dokugaku-apply_flow {
    display: block;
    width: 100%;
    margin-left: 0;
}

.dokugaku-apply_flow>.box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    flex-direction: column;
    width: calc(100% - 30px);
    margin-left: 30px;
    padding: 15px;
    border: 1px solid #88887e;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
}

.winSP .dokugaku-apply_flow>.box {
    position: relative;
    display: block;
    width: 100%;
    margin-left: 0;
}

.winSP .dokugaku-apply_flow>.box:after {
    font-family: iconset!important;
    font-size: 3rem;
    font-weight: 400;
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    position: absolute;
    right: auto;
    bottom: -31px;
    left: 50%;
    width: auto;
    height: auto;
    margin-left: -15px;
    content: "\e904";
    text-transform: none;
    color: #7088b2;
    background: none;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.isDeviceTB .dokugaku-apply_flow>.box {
    position: relative;
    display: block;
    width: 100%;
    margin-left: 0;
}

.isDeviceTB .dokugaku-apply_flow>.box:after {
    font-family: iconset!important;
    font-size: 3rem;
    font-weight: 400;
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    position: absolute;
    right: auto;
    bottom: -31px;
    left: 50%;
    width: auto;
    height: auto;
    margin-left: -15px;
    content: "\e904";
    text-transform: none;
    color: #7088b2;
    background: none;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.winSP .dokugaku-apply_flow>.box+.box {
    margin-top: 20px;
}

.isDeviceTB .dokugaku-apply_flow>.box+.box {
    margin-top: 30px;
}

.dokugaku-apply_flow>.box>.thumb {
    display: block;
    margin-top: auto;
    text-align: center;
}

.winSP .dokugaku-apply_flow>.box>.thumb {
    width: 150px;
    margin-right: auto;
    margin-left: auto;
}

.isDeviceTB .dokugaku-apply_flow>.box>.thumb {
    position: absolute;
    right: 10px;
    bottom: 10px;
    width: 190px;
}

.isDeviceTB .dokugaku-apply_flow>.box:last-child:after,.winSP .dokugaku-apply_flow>.box:last-child:after {
    display: none;
}

.dokugaku-apply_flow>.box:last-child .title {
    padding-right: 0;
}

.dokugaku-apply_flow>.box:last-child .title:after {
    display: none;
}

.dokugaku-apply_flow .title {
    position: relative;
}

.isDeviceTB .dokugaku-apply_flow .title,.winSP .dokugaku-apply_flow .title {
    padding-right: 0;
}

.dokugaku-apply_flow .title:after {
    position: absolute;
    top: 50%;
    right: -46px;
    display: block;
    width: 200px;
    height: 24px;
    margin-top: -12px;
    content: "";
    background: url(../image/2022_04/arr_line.png) no-repeat 100%;
}

.isDeviceTB .dokugaku-apply_flow .title:after,.winSP .dokugaku-apply_flow .title:after {
    display: none;
}

.dokugaku-apply_flow .title>span {
    font-size: 2rem;
    position: relative;
    z-index: 2;
    display: block;
    padding: 10px 5px 7px;
    text-align: center;
    color: #fff;
    background: #7088b2;
}

.dokugaku-apply_flow .txt {
    font-size: 1.4rem;
    margin-top: 15px;
    padding-bottom: 10px;
    color: #1c3871;
}

.dokugaku-apply_flow .txt .red {
    color: #dc0505;
}

.winSP .dokugaku-apply_flow .txt {
    font-size: 1.2rem;
}

.isDeviceTB .dokugaku-apply_flow .txt {
    padding-right: 230px;
}

.dokugaku-apply_flow .flow-1 .txt {
    text-align: center;
}

.isDeviceTB .dokugaku-apply_flow .flow-1 .txt {
    padding-left: 230px;
}

.dokugaku-apply_flow .flow-1 .txt .kakunin {
    margin-top: 15px;
}

.dokugaku-apply_flow .flow-1 .txt .kakunin a {
    font-size: 1.5rem;
    position: relative;
    display: block;
    padding: 12px 25px 9px 5px;
    text-align: center;
    color: #fff;
    background: #193a75;
}

.dokugaku-apply_flow .flow-1 .txt .kakunin a:hover {
    background: #153060;
}

.dokugaku-apply_flow .flow-1 .txt .kakunin a:after {
    font-family: iconset!important;
    font-size: 1.8rem;
    font-weight: 400;
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    position: absolute;
    top: 50%;
    right: 8px;
    margin-top: -9px;
    content: "\e905";
    text-transform: none;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.dokugaku-apply_flow .flow-2 .txtarea {
    text-align: center;
}

.dokugaku-apply_flow .flow-2 .txt {
    padding-right: 10px;
    padding-left: 10px;
}

.dokugaku-apply_flow .flow-2 .txt .dots {
    font-size: 1.6rem;
}

.dokugaku-apply_flow .flow-2 .txt .dots li~li {
    margin-top: 5px;
}

.dokugaku-apply_flow .border {
    border: 1px solid #193a75;
    padding: 5px;
    text-align: center;
    margin-bottom: 5px;
}

.isDeviceTB .dokugaku-apply_flow .flow-3 .txt {
    padding-left: 230px;
}

.dokugaku-apply_flow .flow-3 .txt .caution {
    font-size: 1.2rem;
}

.isDeviceTB .dokugaku-apply_flow .flow-4 .txt {
    padding-left: 230px;
}

.dokugaku-apply_flow .flow-4 .txt .caution {
    font-size: 1.2rem;
    margin-top: 10px;
}

.dokugaku-apply_flow .web-kougi {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 5px;
}

.dokugaku-apply_flow .web-kougi-minhoshi {
    width: 50%;
    background: #f6ab00;
    font-weight: bold;
    color: #fff;
    text-align: center;
    padding: 5px 0;
}

.dokugaku-apply_flow .web-kougi-wakauka {
    width: 50%;
    background: #7bb5e2;
    font-weight: bold;
    color: #fff;
    text-align: center;
    padding: 5px 0;
    border-left: 1px solid #fff;
}

.dokugaku-apply_deadline {
    margin-top: 40px;
    text-align: center;
}

.winSP .dokugaku-apply_deadline {
    margin-top: 30px;
}

.dokugaku-apply_deadline>p {
    font-size: 3.4rem;
    position: relative;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    color: #000;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.winSP .dokugaku-apply_deadline>p {
    font-size: 2.4rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    text-align: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.dokugaku-apply_deadline>p:before {
    display: block;
    width: 103px;
    height: 81px;
    margin-right: 20px;
    content: "";
    background: url(../image/ico_calendar.png) no-repeat 50%;
}

.winSP .dokugaku-apply_deadline>p:before {
    width: 33px;
    height: 26px;
    margin-top: -6px;
    margin-right: 15px;
    background-size: 100% auto;
}

.dokugaku-apply_deadline>p .ttl {
    font-size: 2.2rem;
    color: #2a6fb1;
}

.winSP .dokugaku-apply_deadline>p .ttl {
    display: block;
}

.dokugaku-apply_deadline+.dokugaku-red_btn {
    margin-top: 15px;
}

@font-face {
    font-family: pageico;
    font-weight: 400;
    font-style: normal;
    src: url(fonts/icoset.woff) format("woff"),url(fonts/icoset.ttf) format("truetype");
}

#contents {
    padding-top: 0!important;
}

._btn {
    text-decoration: none!important;
}

.nolink {
    pointer-events: none!important;
}

.underline {
    text-decoration: underline;
}

.marker {
    background: -webkit-gradient(linear,left top,left bottom,color-stop(60%,transparent),color-stop(0,#ff0),color-stop(80%,#ff0),color-stop(0,transparent));
    background: -webkit-linear-gradient(transparent 60%,#ff0 0,#ff0 80%,transparent 0);
    background: -o-linear-gradient(transparent 60%,#ff0 0,#ff0 80%,transparent 0);
    background: linear-gradient(transparent 60%,#ff0 0,#ff0 80%,transparent 0);
}

.simple-title {
    font-size: 3.6rem;
    margin-top: 80px;
    padding: 12px 0 8px;
    color: #fff;
    background: #1d376b;
}

.winSP .simple-title {
    font-size: 2rem;
    margin-top: 40px;
    padding: 8px 0 4px;
}

.dots li {
    position: relative;
    padding-left: 1em;
}

.dots li:before {
    position: absolute;
    top: 0;
    left: 0;
    content: "・";
}

.notes_info01 {
    display: block;
    background: #114c8a;
    width: auto;
    max-width: 1024px;
    margin: 0 auto;
    padding: 0.5% 2%;
    text-align: center;
    color: #fff;
    font-size: 16px;
    font-size: 1.6rem;
}

.notes_info01 a {
    color: #ff0;
}

.dokugaku-red_btn {
    margin-top: 40px;
    text-align: right;
}

.dokugaku-red_btn a {
    font-size: 2rem;
    font-weight: 700;
    position: relative;
    display: inline-block;
    padding: 13px 40px;
    color: #fff;
    background: #ea1941;
    -webkit-box-shadow: 0 3px 0 #d4d4d4;
    box-shadow: 0 3px 0 #d4d4d4;
}

a.until {
    background: #aaa;
    pointer-events: none;
}

a.until:after {
    display: none;
}

.winSP .dokugaku-red_btn a {
    font-size: 1.6rem;
    display: block;
    width: 100%;
    padding: 13px 10px;
    text-align: center;
}

.dokugaku-red_btn a:after {
    font-family: pageico!important;
    font-size: 1.8rem;
    font-weight: 400;
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    position: absolute;
    top: 50%;
    right: 15px;
    margin-top: -9px;
    content: "\e902";
    text-transform: none;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.winSP .dokugaku-red_btn a:after {
    right: 10px;
}

.dokugaku-red_btn a.nolink {
    color: #000;
    border: 1px solid;
    background: #d4d4d4;
}

.dokugaku-red_btn a.nolink:after {
    display: none;
}

.dokugaku-red_btn a:hover {
    background: #d61439;
}

.dokugaku-notes_area .inner {
    max-width: 1064px;
}

.dokugaku-notes_list {
    font-size: 1.4rem;
    margin-top: 40px;
}

.dokugaku-notes_list li {
    position: relative;
    padding-left: 1.5em;
}

.dokugaku-notes_list li:before {
    position: absolute;
    top: 0;
    left: 0;
    content: "\0025cf";
}

.dokugaku-notes_list li~li {
    margin-top: .5em;
}

@media print,screen and (min-width: 570px) and (max-width:1120px) {
    .main-anchor_list li {
        min-width: 90px;
    }

    .main-anchor_list li .txt {
        font-size: 1.1rem;
    }

    .main-anchor_list li .ttl {
        font-size: 1.4rem;
        padding-right: 20px;
        padding-left: 5px;
    }
}

@media print,screen and (min-width: 570px) and (max-width:1200px) {
    .main-course_ttl .ttl {
        font-size:3rem;
    }

    .main-course_ttl .ttl>span {
        font-size: 2rem;
    }

    .main-course_summasry p {
        font-size: 1.1rem;
    }
}

@media print,screen and (min-width: 570px) and (max-width:1140px) {
    .dokugaku-point_2>.title {
        font-size:4.2rem;
    }

    .dokugaku-point_2>.title .catch {
        font-size: 3.5rem;
    }
}

/*=====================================*/
/* close_Info */
/*=====================================*/
.close_Text {
    width: 100%;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
    color: #ffffff;
    background-color: #eb6101;
    padding: 20px 1%;
    margin-top: 20px;
    margin-bottom: 25px;
}

.close_Text p {
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    margin-top: 10px;
    color: #ffffff;
}

.close_Text em {
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    color: #fff352;
}

.winSP .close_Text {
    background: #eb6101;
    text-align: left;
    color: #ffffff;
    font-size: 13px;
    font-size: 1.3rem;
    font-weight: bold;
}

.winSP .close_Text p {
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: bold;
    margin-top: 10px;
    padding: 10px;
    color: #ffffff;
}

.winSP .close_Text em {
    width: 80%;
    text-align: center;
    color: #fff352;
    font-size: 13px;
    font-size: 1.3rem;
    font-weight: bold;
}

/*============================
料金カセット改修
============================*/
/*course_price*/
.course_price {
    background: #ccc;
    padding: 3% 2%;
    position: relative;
}

.course_price [class^=box0] {
    width: 50%;
    margin-top: 20px;
    color: #343434;
}

.course_price .box01 {
    color: #343434;
    margin-bottom: 12px;
    font-weight: bold;
    font-size: 18px;
    font-size: 1.8rem;
}

.course_price .box01 span {
    font-weight: bold;
}

.course_price .box01 .date {
    color: #001fa6;
}

.course_price .box01 .date_num {
    font-size: 25px;
    font-size: 2.5rem;
}

.course_price .box01 .course {
    color: #cc0000;
    line-height: 1.5;
    font-size: 25px;
    font-size: 2.5rem;
}

.course_price .box01 .course_name {
    font-size: 34px;
    font-size: 3.4rem;
}

.wakauka_price .course_price .box01 {
    position: relative;
    padding-right: 100px;
}

.wakauka_price .course_price .box01 .ico {
    position: absolute;
    top: -70px;
    right: -70px;
    width: 158px;
    height: 133px;
    z-index: 1;
}

.winSP .wakauka_price .course_price .box01 {
    padding-right: 15vw;
}

.winSP .wakauka_price .course_price .box01 .ico {
    width: 20vw;
    top: -20px;
    right: -5vw;
}

.course_price .box02 {
    padding-top: 20px;
    font-size: 12px;
    border-top: 1px dashed #665059;
}

.course_price .box02 .limit {
    font-size: 20px;
    font-size: 2rem;
    font-weight: bold;
}

.course_price .course_r {
    width: 45%;
    text-align: center;
    position: absolute;
    top: 50%;
    right: 3%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.course_price .course_r * {
    font-weight: bold;
}

.course_price .course_r .inner_fullpack {
    padding: 15px 0;
    border-radius: 3px;
    background: #fff;
}

.course_price .course_r .full_price {
    font-weight: bold;
    color: #ca1111;
    font-size: 16px;
    font-size: 1.6rem;
    display: inline-block;
    -webkit-transform: skew(-10deg);
    transform: skew(-10deg);
}

.course_price .course_r .full_price .price {
    font-size: 40px;
    font-size: 4rem;
}

.course_price .course_r .inner_nopack {
    margin-top: 15px;
}

.course_price .course_r .price_btn {
    display: block;
    width: 100%;
}

.course_price .course_r .price_btn a {
    background: #ff6600;
    display: block;
    width: 85%;
    height: 3em;
    margin: 0 auto;
    font-size: 20px;
    font-size: 2rem;
    position: relative;
}

.course_price .course_r .price_btn a:after {
    position: absolute;
    display: inline-block;
    font-family: pageico!important;
    content: "\e902";
    top: 50%;
    right: 2%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    color: #fff;
    font-weight: 400;
}

.course_price .course_r .price_btn a span {
    position: absolute;
    display: inline-block;
    width: 100%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    color: #fff;
    letter-spacing: -0.08em;
}

.course_price .course_r .inner_nopack .price_btn a {
    background: #ff9755;
    font-size: 15px;
    font-size: 1.3rem;
    letter-spacing: -0.1em;
}

.course_price .course_r .price_btn a:hover {
    background: #b34902;
}

.course_price.until .course_r .price_btn a {
    background: #696969;
    pointer-events: none;
}

.course_price.until .course_r .price_btn a:after {
    content: "";
}

.course_price.until .course_r .inner_nopack .price_btn a {
    background: #a6a6a6;
}

.course_price.until .course_r .inner_nopack .price_btn span {
    font-weight: normal;
}

.winSP .course_price [class^=box0] {
    width: 100%;
    margin-top: 0;
}

.winSP .course_price .box01 {
    font-size: 4vw;
}

.winSP .course_price .box01 .date_num {
    font-size: 5vw;
}

.winSP .course_price .box01 .course {
    font-size: 5vw;
}

.winSP .course_price .box01 .course_name {
    font-size: 6.5vw;
}

.winSP .course_price .box01 .limit {
    font-size: 4vw;
}

.winSP .course_price .box02 {
    border-top: none;
    text-align: center;
}

.winSP .course_price .box02 .limit {
    font-size: 5vw;
}

.winSP .course_price .course_r {
    position: relative;
    width: 100%;
    top: 0;
    right: 0;
    transform: none;
    padding: 0;
}

.winSP .course_price .course_r .full_price {
    font-size: 3vw;
}

.winSP .course_price .course_r .full_price .price {
    font-size: 9vw;
}

.winSP .course_price .course_r .price_btn a {
    font-size: 4vw;
    width: 95%;
}

.winSP .course_price .course_r .inner_nopack .price_btn a {
    font-size: 2.5vw;
}

.winSP .course_price.until .course_r .inner_nopack .price_btn a {
    min-height: 4em;
}

/* .minhoshi_price
--------------------------------------------------------- */
.minhoshi_price .course_price {
    background: #ffeccf;
}

/* .wakauka_price 
--------------------------------------------------------- */
.wakauka_price .course_price {
    background: #ddeef5;
}

.wakauka_price .course_price.until .course_r .inner_nopack .price_btn span {
    font-weight: normal;
}

.wakauka_price .course_price.until .course_r .inner_nopack .price_btn .fontS {
    top: 120%;
    font-size: 12px !important;
}

.winSP .wakauka_price .course_price.until .course_r .inner_nopack .price_btn .fontS {
    font-size: 2vw;
}

.main-course_area .course_price .course_r {
    width: 100%;
    text-align: center;
    position: relative;
    top: 0;
    right: auto;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}

/*============================
料金カセット周辺
============================*/
.course_materials {
    border: 1px solid #e2e2e2;
}

.course_materials .course_materials_inner {
    background: #fff;
    padding: 2%;
}

.course_materials_inner dt {
    text-align: center;
    padding: 5px;
    background: #e9e9e9;
    position: relative;
}

.course_materials_inner dt:after {
    position: absolute;
    content: "\25BC";
    color: #aaa;
    top: 50%;
    right: 2%;
    -webkit-transform: translateY(-50%) scale(1.5,1);
    transform: translateY(-50%) scale(1.5,1);
}

.course_materials_inner dt.open:after {
    content: "\25B2";
    -webkit-transform: translateY(-50%) scale(1.5,1);
    transform: translateY(-50%) scale(1.5,1);
}

.course_materials dd {
    padding: 2% 2% 0;
    font-size: 1.4rem;
    line-height: 1.4;
}

.course_materials dd li {
    margin-bottom: 5px;
}

.course_materials dd p {
    text-align: center;
    margin-top: 50px;
    position: relative;
}

.course_materials dd p:before {
    position: absolute;
    display: inline-block;
    content: "\3009";
    font-size: 100px;
    font-weight: lighter;
    top: -70px;
    left: 50%;
    -webkit-transform: translateX(-50%) rotate(90deg) scale(1,1.5);
    transform: translateX(-50%) rotate(90deg) scale(1,1.5);
    color: #e9e9e9;
}

.note {
    margin: 0 1%;
}

.winSP .course_price_check {
    border-bottom: none;
}

.winSP .course_price_wrap {
    margin: 0 2%;
}

.winSP .course_price {
    margin: 0;
    padding: 3% 2%;
}

.winSP .note {
    margin: 15px 2% 0 !important;
}

/*============================
合格者の声
============================*/
#voice {
    border-top: 3px solid #ec1d2e;
    padding: 70px 0 0;
}

#voice .inner {
    max-width: 984px !important;
    padding: 0;
}

#voice .voice_ttl {
    margin: 0 2% 22px;
    color: #e42445;
}

.voice_ttl02 {
    position: relative;
    display: inline-block;
    padding: 0 45px;
    color: #e42445;
    font-size: 34px;
    font-size: 3.4rem;
}

#voice .voice_ttl02:before {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 44px;
    height: 2px;
    background-color: #e42445;
    -webkit-transform: rotate(60deg);
    transform: rotate(60deg);
}

#voice .voice_ttl02:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 44px;
    height: 2px;
    background-color: #e42445;
    -webkit-transform: rotate(-60deg);
    transform: rotate(-60deg);
}

#voice .voice_ttl02:before {
    left: 0;
}

#voice .voice_ttl02:after {
    right: 0;
}

#voice .fontvoice {
    font-size: 60px;
    font-size: 6.0rem;
}

.winSP #voice .fontvoice {
    font-size: 36px;
    font-size: 3.6rem;
}

.winSP #voice .voice_ttl02 {
    font-size: 5vw;
}

#voice .voice_box {
    border: 1px solid #fd242e;
    line-height: 1.8;
    margin: 10px 0;
    padding: 1% 1% 2%;
    background: url(../image/2022_04/bg_voice.gif) 0 0 repeat;
}

#voice .voice_box .left_box {
    float: left;
    width: 17%;
    text-align: center;
    margin-top: 15px;
}

#voice .voice_box .left_box .img_box {
    display: inline-block;
    position: relative;
    padding-left: 0;
    padding: 10px 0 0 16px;
}

#voice .voice_box .left_box .img_box:after {
    content: "";
    background: url(../image/2022_04/ico_gokaku01.png)no-repeat left top / contain;
    display: inline-block;
    width: 45px;
    height: 70px;
    position: absolute;
    top: 0;
    left: 0;
}

#voice .voice_box .left_box.gokaku02 .img_box:after {
    background: url(../image/2022_04/ico_gokaku02.png)no-repeat left top / contain;
}

#voice .voice_box .left_box span {
    display: block;
    text-align: left;
    padding-left: 33px;
    line-height: 1.5;
}

#voice .voice_box .right_box {
    float: right;
    width: 83%;
    padding: 25px;
    position: relative;
}

#voice .voice_box .right_box .text_box {
    background: #fff;
    padding: 2%;
}

#voice .voice_box .right_box .text_box p {
    height: 150px;
    overflow: hidden;
}

#voice .voice_box .right_box .text_box.open p {
    height: auto;
    padding-bottom: 40px;
}

#voice .voice_box .right_box .read_more {
    background: linear-gradient(to top, #fff 30%, rgba(255,255,255,0));
    text-align: center;
    position: absolute;
    bottom: 0;
    width: calc(100% - 50px);
    padding: 90px 0 10px;
}

#voice .voice_box .right_box .read_more p {
    border: 1px solid #cf202b;
    color: #cf202b;
    display: inline-block;
    padding: 1% 10%;
    background: #fff;
    position: relative;
}

#voice .voice_box .right_box .read_more.open {
    background: #fff;
    padding: 10px 0 10px;
}

#voice .voice_box .right_box .read_more.open p:after {
    display: block;
    width: 99%;
    content: "閉じる";
    background: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.winSP #voice {
    padding: 40px 0 0;
}

.winSP #voice .inner {
    padding: 10px;
}

.winSP #voice .voice_box .left_box {
    float: none;
    width: 100%;
    text-align: center;
}

.winSP #voice .voice_box .left_box {
    padding: 0 0 0 0;
}

.winSP #voice .voice_box .left_box .img_box {
    padding: 0;
}

.winSP #voice .voice_box .left_box .img_box:after {
    left: -20px;
    top: -10px;
}

.winSP #voice .voice_box .left_box span:not(.img_box) {
    display: block;
    text-align: center;
    padding-left: 0;
}

.winSP #voice .voice_box .right_box {
    float: none;
    width: 100%;
    padding: 10px;
}

.winSP #voice .voice_box .right_box .read_more {
    width: calc(100% - 20px);
}

#voice .col_03 {
    display: flex;
}

#voice .col_03 li {
    width: 33%;
    margin-right: 0.5%;
}

#voice .col_03 li:last-child {
    margin-right: 0;
}

#voice .col_03 .voice_box .left_box {
    float: none;
    width: calc(100% - 60px);
    position: relative;
    margin: 40px 0 0 60px;
    min-height: 50px;
}

#voice .col_03 .left_box:after {
    content: "";
    background: url(../image/2022_04/ico_gokaku01.png)no-repeat;
    display: inline-block;
    width: 50px;
    height: 78px;
    position: absolute;
    top: -20px;
    left: -40px;
}

#voice .col_03 .left_box.gokaku02:after {
    background: url(../image/2022_04/ico_gokaku02.png)no-repeat;
}

#voice .col_03 .voice_box .right_box {
    float: none;
    width: 100%;
    padding: 10px;
}

#voice .col_03 .voice_box .right_box .read_more {
    width: calc(100% - 20px);
}

.winSP #voice .col_03 {
    display: block;
}

.winSP #voice .col_03 li {
    width: 100%;
    margin-right: 0;
}

.winSP #voice .col_03 + .tcenter {
    text-align: left !important;
}

/*=====================================*/
/* intro */
/*=====================================*/
.section-intro .inner {
    max-width: 1024px;
}

.section-intro {
    padding-top: 40px;
    padding-bottom: 60px;
}

.section-intro h2.ttl {
    border-bottom: solid 2px #1d376b;
    margin-bottom: 25px;
}

.section-intro h2.ttl {
    font-size: 30px;
    font-size: 3rem;
    color: #1d376b;
    font-weight: bold;
}

.section-intro h3 {
    font-size: 24px;
    font-weight: bold;
}

.section-intro .txt {
    max-width: 900px;
    line-height: 1.7;
    font-size: 24px;
    font-size: 2.4rem;
    margin: 10px auto;
}

.intro-contents {
    margin-top: 0px;
}

.intro-contents > div {
    line-height: 3rem;
}

.intro-contents p {
    margin-bottom: 20px;
}

.intro-contents_text {
    font-size: 1.5rem;
}

.winSP .section-intro {
    padding-top: 30px;
    padding-bottom: 30px;
}

.winSP .intro-lead .title {
    font-size: 28px;
    font-size: 2.8rem;
}

.winSP .section-intro .txt {
    line-height: 1.6;
    font-size: 16px;
    font-size: 1.6rem;
    margin-top: 10px;
}

.winSP .section-intro h2.ttl {
    font-size: 2.4rem;
}

.winSP .section-intro h3 {
    font-size: 1.8rem;
}

.winSP .intro-contents_text {
    font-size: 1.3rem;
    line-height: 1.5;
}

/*=====================================*/
/* title-bar */
/*=====================================*/
.title-bar {
    background: #1d376b;
    position: relative;
    line-height: 1.3;
    font-size: 32px;
    font-size: 3.2rem;
    text-align: center;
    color: #fff;
}

.title-bar .ttl {
    padding: 8px 0;
}

.title-bar:after {
    content: "";
    position: absolute;
    bottom: -18px;
    left: 50%;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 20px 0 20px;
    border-color: #1d376b transparent transparent transparent;
    margin-left: -20px;
}

.title-bar.sub {
    background: #94aad0;
    position: relative;
    line-height: 1.3;
    font-size: 32px;
    font-size: 3.2rem;
    text-align: center;
    color: #fff;
}

.title-bar.sub .ttl {
    padding: 8px 0;
}

.title-bar.sub:after {
    display: none;
}

.title-bar .ttl .main {
    display: block;
    font-size: 3.2rem;
    font-weight:bold;
}

.title-bar .ttl .sub {
    display: block;
    font-size: 2rem;
}

.winSP .title-bar {
    font-size: 20px;
    font-size: 2.0rem;
}

.winSP .title-bar .ttl {
    padding: 12px 0;
}

.winSP .title-bar:after {
    bottom: -14px;
    border-width: 20px 15px 0 15px;
    margin-left: -10px;
}

.winSP .title-bar .ttl .main {
    font-size: 2.2rem;
}

.winSP .title-bar .ttl .sub {
    font-size: 1.5rem;
}

/*=====================================*/
/* web */
/*=====================================*/
.section-web {
    background: url(../image/2022_04/bg.png) repeat 50%;
    padding-bottom: 50px;
}

.section-web .inner {
    max-width: 1024px;
}

.section-web h3.ymark {
    display: inline-block;
    font-size: 22px;
    font-weight: bold;
    background-color: #fffb97;
    color: #3e5a91;
}

.section-web .course_list {
    display: flex;
    justify-content: space-around;
    margin: 50px auto 10px auto;
}

.section-web .course_list li {
    background-color: #fff;
    padding: 15px;
    margin: 10px;
    border: solid 2px #3e5a91;
    border-radius: 30px;
    width: 330px;
}

.section-web .course_list li img {
    display: block;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 15px;
}

.section-web .course_list li p {
    margin-top: 20px;
    color: #3e5a91;
    text-align: left;
    font-size: 16px;
}

.section-web .web-ttl {
    display: block;
    background: #e20011;
    padding: 2px;
    text-align: center;
}

.section-web .web-ttl-inner {
    position: relative;
    display: block;
    padding: 5px;
    color: #fff;
    font-size: 26px;
    font-size: 2.6rem;
}

.section-web .web-ttl-inner span {
    font-size: 26px;
    font-size: 2.6rem;
    font-weight: normal;
}

.section-web .web-ttl2-inner {
    position: relative;
    display: block;
    padding: 5px 5px 3px;
    color: #1d376b;
    font-size: 46px;
    font-size: 4.6rem;
}

.section-web .web-ttl2-inner span {
    font-size: 26px;
    font-size: 2.6rem;
    font-weight: normal;
}

.section-web .web_app_detail {
    display: flex;
    justify-content: space-between;
    margin: 40px auto;
}

.section-web .web_app_detail .text_box {
    width: 60%;
    line-height: 2;
}

.section-web .web_app_detail .text_box p {
    margin-bottom: 30px;
}

.section-web .web_app_detail .text_box small {
    display: block;
    line-height: 1.4;
}

.web_book_detail {
    display: flex;
    justify-content: space-around;
    margin-top: 50px;
}

.web_book_detail li {
    width: 31%;
}

.web_book_detail .flex_box.point {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 130px;
    background-color: #e6f3fa;
    border-left: solid 4px #447fbb;
    padding: 2rem;
    margin: 2rem auto;
}

.web_book_detail .p_ttl {
    width: 100%;
    font-size: 2.0rem;
}

.web_book_detail .text_area {
    text-align: left;
    margin-bottom: 20px;
}

.web_book_detail .img_area {
    text-align: right;
    font-size: 1.2rem;
}

.web_book_detail .img_area > a {
    display: inline-block;
    margin-top: 20px;
}

.btm_link {
    width: 100%;
    max-width: 450px;
    margin-left: auto;
    margin-right: auto;
}

.btm_link .btn_taiken{
  display: inline-block;
  width:100%;
  text-align: center;
}
.btm_link .btn_taiken a{
  display:block;
  position:relative;
  border:1px solid #7898c7;
  border-radius: 5px;
  padding:4%;
  background:#7898c7;
  box-shadow: 0px 0px 5px #FFFDE7 inset;
  font-size:20px;
  font-size:2rem;
  color:#fff;
}
.btm_link .btn_taiken a:after{
    content: '';
    width: 10px;
    height: 10px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff; 
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%) rotate(45deg);
}
.btm_link .btn_taiken a:hover{
  text-decoration:none;
  background:#586f91;
  box-shadow: 0px 0px 5px #d8d39e inset;
}

.btm_link .btn_taiken.until a{
  border:1px solid #3c4c63;
  background:#3c4c63;
  color:#ccc;
  pointer-events:none;
}

.btm_link._right {
    margin-right: 0;
}

.btm_link_row {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: flex-end;
}



.winSP .btm_link .btn_taiken {
  display:block;
  width: 100%;
}
.winSP .btm_link .btn_taiken a{
  font-size:5vw;
}
.winSP .btm_link_row {
    flex-direction: column;
    align-items: flex-end;
}

.btm_link p {
    margin: 10px 0;
}

.btm_text {
    margin-bottom: 20px;
    margin-top: 20px;
    line-height: 2;
}

.btm_link .pdf {
    margin-top: 10px;
    display: inline-block;
    width: 50%;
}

.winSP .btm_link .pdf {
    width: auto;
}

.btm_link .pdf a {
    position: relative;
    display: inline-block;
    padding-left: 20px;
}

.btm_link .pdf a:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 16px;
    height: 16px;
    content: "";
    background: url(../image/2022_04/ico_pdf.png);
}

.btm_link .pdf a span {
    text-decoration: underline;
    color: #000;
}

.winSP .section-web .course_list {
    display: block;
}

.winSP .section-web .course_list li {
    width: 100%;
    margin: 10px 0;
}

.winSP .section-web .web_app_detail {
    display: block;
    margin: 20px auto;
}

.winSP .section-web .web_app_detail .text_box {
    width: 100%;
    line-height: 1.5;
}

.winSP .web_book_detail {
    display: block;
    margin-top: 20px;
}

.winSP .web_book_detail li {
    width: 100%;
    margin-bottom: 20px;
}

.winSP .web_book_detail li img.fst {
    width: 50%;
}

.winSP .web_book_detail .flex_box.point {
    padding: 1.5em 1em;
    margin: 1rem 0 1rem 1rem;
    width: 80%;
    height: auto;
}

.winSP .web_book_detail .sp_point {
    display: flex;
    align-items: center;
}

.web_book_detail .p_ttl {
    font-size: 2.0rem;
}

.web_book_detail .text_area {
    font-size: 1.8rem;
}

.winSP .web_book_detail .img_area {
    text-align: center;
    font-size: 1rem;
}

.winSP .web_book_detail .webbook_grid_box {
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.winSP .web_book_detail .webbook_grid_box .text_area {
    grid-column: 2 / 3;
    grid-row: 1 / 2;
}

.winSP .web_book_detail .webbook_grid_box .img_area {
    grid-column: 1 / 2;
    grid-row: 1 / 2;
    margin-right: 10px;
}

.winSP .btn.line {
    float: inherit;
}

.winSP .section-web .web-ttl-inner span {
    font-size: 1.5rem;
    font-weight: normal;
}

/*=====================================*/
/* section-course */
/* course-toggle */
/*=====================================*/
.section-course {
    background: url(../image/2022_04/bg.png) repeat 50%;
    padding-bottom: 80px;
    font-size: 1.6rem;
}

.section-course .inner {
    max-width: 1120px;
}

.section-course .dokugaku-course_area {
    margin-top: 50px;
}

.section-course_info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.section-course_info-col {
    width: 50%;
    padding-right: 40px;
}

.section-course_info-col:nth-child(2) {
    padding-right: 0;
    padding-left: 40px;
}

.section-course_info-col-cross {
    text-align: center;
    width: 80px;
    margin: 10px auto;
}

.section-course_info-img {
    position: relative;
    margin-top: 25px;
}

.section-course_info-img-cross {
    position: absolute;
    top: -10px;
    right: -70px;
}

.section-course_info-point {
    color: #ec3853;
    font-size: 2.6rem;
}

.section-course_info-marker {
    background: linear-gradient(transparent 10%, #fffa6b 10%, #fffa6b 90%, transparent 90%);
    font-weight: bold;
}

.section-course_info-teacher {
    margin-top: 40px;
}

.section-course_info-teacher-title {
    font-size: 2.4rem;
    font-weight: bold;
}

.section-course_info-teacher-img {
    float: left;
    margin-right: 10px;
    margin-bottom: 10px;
}

.section-course_info-ico {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
}

.section-course_info-ico .ico {
    width: 120px;
    margin-top: -20px;
    margin-left: 10px;
}

.section-course .info-link_bnr {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 20px;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.winSP .section-course .info-link_bnr {
    /* display: block; */
}

.section-course .info-link_bnr li {
    width: 50%;
    margin: 0 10px;
    border-radius: 3px;
    -webkit-box-shadow: 0 3px 0 #d4d4d4;
    box-shadow: 0 3px 0 #d4d4d4;
    position: relative;
    margin-bottom: 20px;
}

.winSP .section-course .info-link_bnr li {
    /* width: 100%; */
    margin: 0 5px;
    margin-bottom: 10px;
}

/* .winSP .section-course .info-link_bnr li~li {
    margin-top: 8px;
} */
.section-course .info-link_bnr li a {
    display: block;
    width: 100%;
    padding: 10px 0 8px;
    text-align: center;
    border: 1px solid #f28fa6;
    border-radius: 3px;
    background: #e9476d;
    -webkit-box-shadow: 0 0 0 1px #b70000;
    box-shadow: 0 0 0 1px #b70000;
}

.section-course .info-link_bnr li a:hover {
    background: #e6305b;
}

.section-course .info-link_bnr li span {
    font-size: 1.8rem;
    font-weight: 700;
    position: relative;
    display: inline-block;
    padding-left: 50px;
    color: #fff;
}

.winSP .section-course .info-link_bnr li span {
    font-size: 1.4rem;
    padding-left: 42px;
}

.section-course .info-link_bnr li span:before {
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    width: 28px;
    height: 23px;
    margin-top: -11px;
    content: "";
    background: url(../image/2022_04/ico_book.png) no-repeat 50%;
}

.winSP .section-course .info-link_bnr li span:before {
    width: 24px;
    height: 22px;
    background-size: 100% auto;
}

.section-course .info-link_bnr+.caution {
    margin-top: 15px;
}

.section-course_pickup {
    margin: 50px auto;
    padding: 3% 0;
    border-top: 4px dotted #aaa;
    border-bottom: 4px dotted #aaa;
    display: flex;
    position: relative;
}

.section-course_pickup:before {
    position: absolute;
    top: -60px;
    left: 5.5%;
    display: block;
    width: 180px;
    height: 63px;
    content: "";
    background: url(../image/2023_02/ico_pickup.png)no-repeat center / contain;
}

.section-course_pickup .box_left {
    width: 30%;
}

.section-course .box_left .info-link_bnr li {
    width: 100%;
}

.section-course_pickup .box_right {
    width: 65%;
    margin-left: 5%;
}

.section-course_pickup .box_right h4 {
    font-size: 3rem;
}

.section-course_pickup .box_right h4 span {
    color: #e9476d;
}

.section-course_pickup .box_right h4 .colMinhoshi {
    font-size: 2rem;
}

.section-course_osusume {
    padding-bottom:10px;
    border-bottom:3px dotted #cccccc;
}
.section-course_osusume-title {
    margin: 20px 0 10px;
    font-size: 2.2rem;
    font-weight: normal;
    color: #db1212;
    text-align: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
}

.section-course_osusume-title .img {
    margin-right: 10px;
}

.section-course_curriculum {
}

.section-course_curriculum-title {
    margin-top: 70px;
    font-size: 4.8rem;
    font-weight: bold;
    color: #f27d00;
    text-align: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: center;
}

.section-course_curriculum-title._minhoshi {
    color: #f27d00;
}

.section-course_curriculum-title._wakauka {
    color: #435ca6;
}

.section-course_curriculum-title .img {
    margin-right: 10px;
}

.section-course_curriculum-box {
    margin-top: 10px;
    background: #f8f8f8;
    border: 1px solid #e4e4e4;
    padding: 20px 10px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.section-course_curriculum-box-title {
    color: #124885;
    font-size: 2rem;
    margin-bottom: 20px;
}

.section-course_curriculum-row {
    padding: 20px 10px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
}

.section-course_curriculum-col {
    width: 50%;
    padding: 0 30px;
}

.section-course_curriculum-col._w100 {
    width: 100%;
}

.section-course_curriculum-col._plus-first {
    width: 42%;
    padding-right: 10px;
}

.section-course_curriculum-col._plus-second {
    width: 58%;
    padding-left: 10px;
}

.section-course_curriculum-book {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.section-course_curriculum-book .img {
    flex: none;
    margin-right: 20px;
    text-align: center;
}

.section-course_curriculum-sub-title {
    margin-top: 40px;
    font-weight: bold;
    font-size: 2rem;
    color: #124885;
    padding: 15px 20px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
}

.section-course_curriculum-sub-title._col01 {
    border-top: 2px solid #f27d00;
    background: #fef2e5;
}

.section-course_curriculum-sub-title._col02 {
    border-top: 2px solid #f27d00;
    background: #fbd8b2;
}

.section-course_curriculum-sub-title._col03 {
    border-top: 2px solid #435ca6;
    background: #e8f3fb;
}

.section-course_curriculum-sub-title._col04 {
    border-top: 2px solid #435ca6;
    background: #c6cee4;
}

.section-course_curriculum-sub-title .time {
    background: #fff;
    color: #222;
    font-weight: bold;
    font-size: 1.6rem;
    display: inline-block;
    padding: 5px 10px;
    border-radius: 5px;
    margin-left: 60px;
}

.section-course_curriculum-note {
    padding: 0 40px;
    font-size: 1.2rem;
}

.section-course_price {
    margin-top: 50px;
}

.section-course_price-title {
    margin: 20px 0;
    padding: 5px;
    color: #1a2e76;
    font-size: 2rem;
    font-weight: bold;
    border: 1px solid #bfbfbf;
    text-align: center;
}




/*=====================================*/
/* Pick Up! */
/*=====================================*/
.teach-section {
  margin: 50px auto 60px;
}
.teach-section .teach-ttl{
  background: #0c9a85;
  padding: 10px 0 5px 5%;
}
.teach-section .teach-ttl span{
  font-size:24px;
  font-size:2.4rem;
  display:inline-block;
  transform:skew(-10deg)  
}
.teach-section .covers {
  background: #FFF;
  padding: 20px 30px 30px;
  font-size:15px;
  font-size: 1.5rem;
  border: 1px solid #cbcbc5;
  border-top: #F2F2F2 3px solid;
}
.teach-section .book-box {
  margin-top: 20px;
  zoom:1;
  border-top: 23px solid #d9d9d9;
}
.teach-section .book-box:after {
  content: "";
  display: block;
  clear: both;
}
.teach-section .book-box ~ .book-box {
  margin-top: 50px;
}
.teach-section .book-box .book-box_data,
.teach-section .book-box .book-box_txt {
  margin-top: 30px;
}
.teach-section .book-box .book-box_data {
  float: left;
  width: 54%;
}
.teach-section .book-box .book-box_txt {
  float: right;
  width: 42%;
}

.teach-section .book-box .book-cathc dt {
  margin-top: 1.5em;
  font-weight: bold;
}
.teach-section .book-box .book-cathc dd {
  margin-top: 2px;
  font-size:14px;
  font-size: 1.4rem;
  line-height: 1.3;
}

.teach-section .book-box .book-name {
  font-size:24px;
  font-size: 2.4rem;
  line-height: 1.3;
  margin-top: 15px;
  font-weight: bold;
}
.teach-section .book-box .book-name span {
  font-size:14px;
  font-size: 1.4rem;
}


.winSP .teach-section {
  margin: 30px auto;
}
.winSP .teach-section .teach-ttl{
  background: #0c9a85;
  padding: 8px;
  font-size:16px;
  font-size: 1.6rem;
}

.winSP .teach-section .covers {
  padding: 15px 8px;
  font-size:14px;
  font-size: 1.4rem;
}

.winSP .teach-section .book-box {
  margin-top: 10px;
  zoom:1;
}
.winSP .teach-section .book-box ~ .book-box {
  margin-top: 30px;
}
.winSP .teach-section .book-box .teach-subtimtl {
  padding: 5px 8px;
}
.winSP .teach-section .book-box .book-box_data,
.winSP .teach-section .book-box .book-box_txt {
  float: none;
  width: 100%;
}

.winSP .teach-section .book-box .book-cathc dt {
  margin-top: 1em;
  font-weight: bold;
}

.winSP .teach-section .book-box .book-name {
  font-size:18px;
  font-size: 1.8rem;
  margin-top: 8px;
}
.winSP .teach-section .book-box .book-name span {
  font-size:12px;
  font-size: 1.2rem;
}


/*=====================================*/
/* 特典タテスタ */
/*=====================================*/
.section-course_benefits h4 {
    background: #f8b30d;
    font-size: 2.5rem;
    color: #f7ff11;
    line-height: 1.2;
    padding: 2% 0;
    position: relative;
    display: block;
}
.section-course_benefits h4:before {
    position: absolute;
    content: "";
    width: 112px;
    height: 136px;
    background: url(../image/2022_04/ico_benefits.png)no-repeat top center / contain;
    top: -20%;
    left: 1%;
    z-index: 9;
}
/*
.section-course_benefits h4 .colWHT {
    font-size: 2.5rem;
}
*/

.section-course_benefits.inner {
    border: 3px solid #f8b30d;
    padding: 3% 2%;
    min-width: auto;
    margin-bottom: 2%;
    position: relative;
}

.section-course_benefits.inner h5 {
    font-size: 2.3rem;
    line-height: 1.2;
    margin-bottom: 20px;
}
/*
.section-course_benefits.inner .release_info {
    font-size: 1.8rem;
    background: #f27d00;
    width: 80%;
    margin: 20px auto;
    padding: 0.5% 0;
    line-height: 1;
}
*/

.section-course_benefits.inner .img_box {
    position:absolute;
    bottom: 8%;
    right: 4%;
}

.section-course_benefits.inner .img_box_caption {
    font-size: 1.5rem;
    width: 65%;
    font-weight: bold;
}

.section-course_benefits.inner .txt_box {
    margin-top: 40px;
}

.section-course_benefits.inner .txt_box .benefits_note_box {
    display: block;
    border: 3px dotted #ccc;
    border-radius: 20px;
    padding: 2%;
    font-size:90%;
}
/*
.section-course_benefits.inner .txt_box .benefits_note_ico {
    width: 60%;
    position: relative;
}

.section-course_benefits.inner .txt_box .benefits_note_ico span {
    position: absolute;
    width: 100px;
    height: 100px;
    display: inline-block;
    background: #de0000;
    line-height: 100px;
    text-align: center;
    font-weight: bold;
    color: #fff;
    border-radius: 50%;
}
*/
.section-course_benefits.inner .txt_box .app_info {
    font-size: 1.2rem;
    margin-top: 20px;
}

.section-course_benefits.inner .txt_box li {
    padding-left: 1em;
    text-indent: -1em;
}

.section-course_benefits_btn a{
	display:block;
	width:350px;
	max-width:80%;
	margin:0 0 0 auto;
	height:3em;
	background:#ca1111;
	font-size:20px;
	font-size:2rem;
	position:relative;
	text-align:center;
}
.section-course_benefits_btn a:hover{
	background:#940f0f;
}
.section-course_benefits_btn a:after{
	position: absolute;
	display:inline-block;
	content:"\3009";
    top: 50%;
    right: 0.5%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    color:#fff;
}
.section-course_benefits_btn a span{
	position: absolute;
	display:inline-block;
	width:100%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    color:#fff;
    font-weight:bold;
}
.section-course_benefits_btn.until a{
	background:#acacac;
	pointer-events:none;
}
.section-course_benefits_btn.until a:after{
	content:"";
}

.section-course_material_list_wrap {
    margin-top: 30px;
    overflow-x: scroll;
}

.section-course_material_list .table_caption {
    font-weight: bold;
}

.section-course_material_list table {
    width: 1200px;
}

.section-course_material_list table tr:nth-child(odd), .section-course_material_list table .colorback {
    background: #ddd;
}

.section-course_material_list table tr *:not(a) {
    text-align: center;
    padding: 1% 0.5%;
    font-size: 1.4rem;
    vertical-align: middle;
    border: 1px solid #aaa;
}

.section-course_material_list table th {
    font-weight: bold;
    background: #bbb;
}

#minhoshi .section-course_material_list table tr:nth-child(odd), #minhoshi .section-course_material_list table .colorback {
    background: #ffeccf;
}

#minhoshi .section-course_material_list table th {
    background: #ffd155;
}

#wakauka .section-course_material_list table tr:nth-child(odd), #wakauka .section-course_material_list table .colorback {
    background: #e6edf4;
}

#wakauka .section-course_material_list table th {
    background: #c1dbf5;
}

.winSP .section-course {
    font-size: 1.4rem;
}

.winSP .section-course_info {
    display: block;
}

.winSP .section-course_info-col {
    width: 100%;
    padding: 0;
}

.winSP .section-course_info-ico .ico {
    width: 100px;
    margin-top: -10px;
}

.winSP .section-course_pickup {
    display: block;
    border-top: 1px dotted #aaa;
    border-bottom: 1px dotted #aaa;
    padding: 5% 0;
}

.winSP .section-course_pickup:before {
    top: 0;
    left: auto;
    right: 0%;
    width: 32%;
    height: 10%;
    content: "";
}

.winSP .section-course_pickup .box_left {
    width: 100%;
    margin-bottom: 5%;
}

.winSP .section-course_pickup .box_left .img_box {
    padding: 0 33%;
}

.winSP .section-course_pickup .box_right {
    width: 100%;
    margin-left: 0%;
}

.winSP .section-course_pickup .box_right h4 {
    font-size: 5.5vw;
}

.winSP .section-course_pickup .box_right h4 .colMinhoshi {
    font-size: 4vw;
}

.winSP .section-course_curriculum-title {
    font-size: 3rem;
}

.winSP .section-course_curriculum-title .img {
    width: 50px;
}

.winSP .section-course_curriculum-col {
    padding: 0 5px;
}

.winSP .section-course_curriculum-col._plus-first {
    width: 50%;
    padding: 0 5px;
}

.winSP .section-course_curriculum-col._plus-second {
    width: 50%;
    padding: 0 5px;
}

.winSP .section-course_curriculum-book {
    display: block;
}

.winSP .section-course_curriculum-book .text {
    margin-top: 10px;
}

.winSP .section-course_curriculum-sub-title {
    display: block;
    font-size: 1.6rem;
}

.winSP .section-course_curriculum-sub-title .time {
    font-size: 1.4rem;
    margin-left: 1em;
}

.winSP .section-course_curriculum-note {
    padding: 0 10px;
}

.winSP .section-course_benefits h4 {
    font-size: 5.2vw;
    color: #f7ff11;
    line-height: 1.2;
    text-align: left !important;!i;!;
    padding: 2% 2% 2% 22%;
}
.winSP .section-course_benefits h4:before {
    width: 20%;
    height: 100%;
    top: 1%;
    left: 1%;
}
/*
.winSP .section-course_benefits h4 .colWHT {
    font-size: 5.5vw;
}
*/

.winSP .section-course_benefits.inner h5 {
    font-size: 4.2vw;
    width: 100%;
}
/*
.winSP .section-course_benefits.inner .release_info {
    font-size: 3vw;
    width: 90%;
    margin: 10px auto;
    padding: 2%;
}
*/

.winSP .section-course_benefits.inner .img_box {
    display: block;
    position: relative;
    top: 0;
    right: auto;
}

.winSP .section-course_benefits.inner .img_box .switchSP {
    display: block;
    padding: 5%;
    margin: 0 auto;
}

.winSP .section-course_benefits.inner .img_box_caption {
    font-size: 3vw;
    width: 100%;
    margin-top: 10px;
}

.winSP .section-course_benefits.inner .txt_box {
    margin-top: 30px;
}

.winSP .section-course_benefits.inner .txt_box .benefits_note_box {
    display: block;
    padding: 3%;
}

/*
.winSP .section-course_benefits.inner .txt_box .benefits_note_ico {
    width: 100%;
}

.winSP .section-course_benefits.inner .txt_box .benefits_note_ico span {
    width: 80px;
    height: 80px;
    line-height: 80px;
    position: relative;
    margin: 10px calc(50% - 40px);
}
*/

.winSP .section-course_benefits.inner .txt_box .app_info {
    font-size: 3vw;
}

.winSP .section-course_material_list table {
    width: 950px;
}

.winSP .section-course_material_list table tr *:not(a) {
    padding: 0.5%;
    font-size: 3vw;
}

.winSP .section-course_benefits_btn a {
    max-width: 100%;
    font-size: 4vw;
}

.course-toggle-title {
    background: #cd1c29;
    padding: 10px 10px 5px;
    border-radius: 10px 10px 0 0;
    color: #fff;
    text-align: center;
    font-weight: bold;
}

.course-toggle-title .sub {
    display: inline-block;
    font-weight: bold;
    font-size: 2.4rem;
}

.course-toggle-title .main {
    display: inline-block;
    font-weight: bold;
    font-size: 3.6rem;
}

.winSP .course-toggle-title .sub {
    font-size: 1.6rem;
}

.winSP .course-toggle-title .main {
    font-size: 2.4rem;
}

.course-toggle-contents {
    padding: 40px 25px;
    background: #fff;
}

.winSP .course-toggle-contents {
    padding: 20px 10px;
}

.course-toggle-btn-wrap {
    background: #e4e4e4;
    padding: 15px;
}

.course-toggle-btn {
    width: 100%;
    max-width: 490px;
    background: linear-gradient(#4a4a4a, #010101);
    padding: 15px;
    margin: 0 auto;
    border-radius: 15px;
    color: #fff;
    text-align: center;
    font-weight: bold;
    font-size: 1.8rem;
    cursor: pointer;
}

.course-toggle-btn.selected {
}

.course-toggle-btn .open, .course-toggle-btn .close {
    position: relative;
    padding-right: 20px;
}

.course-toggle-btn .open::after, .course-toggle-btn .close::after {
    width: 20px;
    height: 20px;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    position: absolute;
    background-size: contain;
    content: "";
}

.course-toggle-btn .open {
    font-weight: bold;
    display: block;
}

.course-toggle-btn .open::after {
    background-image: url(../image/2022_04/ico_open.png);
}

.course-toggle-btn .close {
    font-weight: bold;
    display: none;
}

.course-toggle-btn .close::after {
    background-image: url(../image/2022_04/ico_close.png);
}

.course-toggle-btn.selected .open {
    display: none;
}

.course-toggle-btn.selected .close {
    display: block;
}

/*=====================================*/
/* faq */
/*=====================================*/
.section-faq {
    border-top: 3px solid #cd1c29;
    padding: 30px 0 80px;
    margin-top: 80px;
    background: #f8f8f8;
}

.section-faq .inner {
    max-width: 1024px;
}

.section-faq .title {
    font-size: 42px;
    font-size: 4.2rem;
    font-weight: bold;
    text-align: center;
    color: #cd1c29;
    margin-bottom: 50px;
}

.faq-list {
    border-bottom: 1px solid #404f84;
    margin-top: 30px;
}

.faq-list dt {
    border-top: 1px solid #404f84;
    position: relative;
    cursor: pointer;
    color: #0067b5;
    font-weight: bold;
    padding: 8px 90px 8px 48px;
    font-size: 18px;
    font-size: 1.8rem;
}

.faq-list dt i {
    position: absolute;
    width: 25px;
    height: 25px;
    top: 8px;
    left: 12px;
}

.faq-list dd {
    font-size: 14px;
    font-size: 1.4rem;
    border-top: 1px solid #404f84;
    position: relative;
}

.faq-list dd i {
    position: absolute;
    width: 25px;
    height: 25px;
    top: 20px;
    left: 33px;
}

.faq-list dd .txt {
    margin: 8px 0 15px;
    padding: 15px 10px 15px 65px;
    background-color: #edf7ff;
    color: #0067b5;
}

.winSP .section-faq {
    padding: 20px 0 30px;
    border-top-width: 5px;
}

.winSP .section-faq .title {
    font-size: 24px;
    font-size: 2.4rem;
}

.winSP .faq-list {
    margin-top: 20px;
}

.winSP .faq-list dt {
    padding: 8px 64px 8px 24px;
    font-size: 15px;
    font-size: 1.5rem;
}

.winSP .faq-list dt i {
    width: 20px;
    height: 20px;
    top: 6px;
    left: 0px;
}

.winSP .faq-list dt:after {
    -webkit-background-size: auto 14px;
    -o-background-size: auto 14px;
    background-size: auto 14px;
    width: 54px;
    height: 14px;
    top: 10px;
    right: 0px;
}

.winSP .faq-list dd {
    font-size: 13px;
    font-size: 1.3rem;
}

.winSP .faq-list dd i {
    width: 20px;
    height: 20px;
    top: 14px;
    left: 5px;
}

.winSP .faq-list dd .txt {
    margin: 8px 0 15px;
    padding: 9px 10px 10px 32px;
    background-color: #edf0f5;
    color: #004384;
}

.section-faq {
    padding: 80px 0 ;
}

.section-faq .faq_accordion {
    background: #fff;
    padding: 30px 28px;
    margin-bottom: 30px;
    border-radius: 16px;
    border: solid 1px #eaeaea;
}

.section-faq .faq_accordion .faq_accordion_title {
    position: relative;
    padding-right: 90px;
    font-size: 1.8rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.section-faq .faq_accordion .faq_accordion_title.open {
}

.section-faq .faq_accordion .faq_accordion_title::after {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    text-align: center;
    background: #cd1c29;
    width: 80px;
    padding: 3px;
    border-radius: 20px;
    color: #fff;
    font-size: 1.6rem;
    content: "見る＋";
}

.section-faq .faq_accordion .faq_accordion_title.open::after {
    content: "閉じる－";
}

.section-faq .faq_accordion .faq_accordion_title .ico {
    flex: none;
    margin-right: 5px;
}

.section-faq .faq_accordion .ac_wrap {
    border-top: solid 1px #E4E4E4;
    margin-top: 10px;
}

.section-faq .faq_accordion .accordion-nav {
    font-size: 16px;
    padding-top: 20px;
    margin-top: 0;
}

.section-faq .faq_accordion .accordion-nav .accordion-nav_text {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.section-faq .faq_accordion .accordion-nav .accordion-nav_text .ico {
    flex: none;
    margin-right: 5px;
}

/*=====================================*/
/* voice */
/*=====================================*/
.voice-toggle-title {
    background: #cd1c29;
    padding: 10px 10px 5px;
    border-radius: 10px 10px 0 0;
    color: #fff;
    text-align: center;
    font-weight: bold;
}

.voice-toggle-title .sub {
    display: inline-block;
    font-weight: bold;
    font-size: 2.4rem;
}

.voice-toggle-title .main {
    display: inline-block;
    font-weight: bold;
    font-size: 3.6rem;
}

.winSP .voice-toggle-title .sub {
    font-size: 1.6rem;
}

.winSP .voice-toggle-title .main {
    font-size: 2.4rem;
}

.voice-toggle-contents {
    border: 1px solid #e4e4e4;
    padding: 40px 20px;
}

.voice-toggle-btn-wrap {
    background: #e4e4e4;
    padding: 15px;
}

.voice-toggle-btn {
    width: 100%;
    max-width: 260px;
    background: linear-gradient(#4a4a4a, #010101);
    padding: 15px;
    margin: 0 auto;
    border-radius: 15px;
    color: #fff;
    text-align: center;
    font-weight: bold;
    font-size: 1.8rem;
    cursor: pointer;
}

.voice-toggle-btn.selected {
}

.voice-toggle-btn .open, .voice-toggle-btn .close {
    position: relative;
    padding-right: 20px;
}

.voice-toggle-btn .open::after, .voice-toggle-btn .close::after {
    width: 20px;
    height: 20px;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    position: absolute;
    background-size: contain;
    content: "";
}

.voice-toggle-btn .open {
    font-weight: bold;
    display: block;
}

.voice-toggle-btn .open::after {
    background-image: url(../image/2022_04/ico_open.png);
}

.voice-toggle-btn .close {
    font-weight: bold;
    display: none;
}

.voice-toggle-btn .close::after {
    background-image: url(../image/2022_04/ico_close.png);
}

.voice-toggle-btn.selected .open {
    display: none;
}

.voice-toggle-btn.selected .close {
    display: block;
}

/*=====================================*/
/* apply-notes */
/*=====================================*/
.apply-notes {
    margin-top: 90px;
}

.apply-notes .inner {
    max-width: 1024px;
}

.apply-notes h3 {
    text-align: center;
    font-size: 24px;
    font-size: 2.4rem;
    margin-top: 30px;
}

.apply-list_wrap h4.bg_yel {
    color: #000;
    display: block;
    text-align: center;
    font-size: 2rem;
    margin-top: 20px;
    background: #fffaa5;
    padding: 2% 1%;
}

.apply-list_wrap dl {
    margin: 30px 0;
}

.apply-list_wrap dt {
    background: #f3f3f3;
    margin-top: 20px;
}

.apply-list_wrap dt span {
    display: block;
    text-align: left;
    background: #f4696a;
    width: 9em;
    font-size: 20px;
    font-size: 2rem;
    color: #fff;
    font-weight: bold;
    padding: 2px 0 0 5px;
}

.apply-list_head {
    text-align: center;
    font-size: 24px;
    font-size: 2.4rem;
    margin-top: 30px;
}

.apply-list {
    margin: 0 2%;
    font-size: 14px;
    font-size: 1.4rem;
}

.apply-list li {
    line-height: 1.4;
    margin-left: 1em;
    text-indent: -1em;
}

.apply-notes .btn {
    width: 30%;
    margin: 0 0 0 auto;
}

.apply-notes {
    font-size: 14px;
    font-size: 1.4rem;
}

.apply-notes .title-bar {
    background-color: #cc0000;
}

.winSP .apply-notes .apply-list_wrap {
    padding: 2%;
}

.winSP .apply-notes .apply-list_wrap h3 {
    font-size: 5vw;
}

.winSP .apply-list_wrap h4.bg_yel {
    font-size: 4vw;
}

.winSP .apply-list li {
    line-height: 1.5;
}

.winSP .apply-list .fontLL {
    font-size: 4.5vw !important;
}

.copyrightText {
    font-size: 12px;
    font-size: 1.2rem;
    width: 1024px;
    max-width: 100%;
    margin: 100px auto 0;
}

.winSP .copyrightText {
    font-size: 3vw;
    width: 95%;
    margin: 50px auto 0;
}

/*=====================================*/
/* font */
/*=====================================*/
.font1_2rem {
    font-size: 12px !important;
    font-size: 1.2rem !important;
}

.font1_4rem {
    font-size: 14px !important;
    font-size: 1.4rem !important;
}

.font1_5rem {
    font-size: 15px !important;
    font-size: 1.5rem !important;
}

.font1_8rem {
    font-size: 18px !important;
    font-size: 1.8rem !important;
}

.font2rem {
    font-size: 20px !important;
    font-size: 2rem !important;
}

.font2_2rem {
    font-size: 22px !important;
    font-size: 2.2rem !important;
}

.font2_6rem {
    font-size: 26px !important;
    font-size: 2.6rem !important;
}

.font2_8rem {
    font-size: 28px !important;
    font-size: 2.8rem !important;
}

.font3rem {
    font-size: 30px !important;
    font-size: 3.0rem !important;
}

.font4rem {
    font-size: 37px !important;
    font-size: 3.7rem !important;
}

.font5rem {
    font-size: 45px !important;
    font-size: 4.5rem !important;
}

.font5rem {
    font-size: 46px !important;
    font-size: 4.6rem !important;
}

.font6rem {
    font-size: 55px !important;
    font-size: 5.5rem !important;
}

.font7rem {
    font-size: 70px !important;
    font-size: 7rem !important;
}

.winSP .font1_5rem {
    font-size: 13px !important;
}

.winSP .font1_8rem {
    font-size: 15px !important;
}

.winSP .font2rem {
    font-size: 17px !important;
}

.winSP .font2_5rem {
    font-size: 22px !important;
}

.winSP .font3rem {
    font-size: 27px !important;
}

.winSP .font4rem {
    font-size: 30px !important;
}

.winSP .font5rem {
    font-size: 37px !important;
}

.winSP .font6rem {
    font-size: 40px !important;
}

.winSP .font7rem {
    font-size: 55px !important;
}

span.normal {
    font-weight: normal !important;
}

/* 2025/10 追加 */

.u_annotation {
    display: block;
    padding-left: 1em;
    text-indent: -1em;
    line-height: 1.4;
}

/* アプリボタン2つ並び
----------------------------*/
.btn_app{
  display: flex;
  gap: 10px;
}
.btn_app a{
  display:block;
  position:relative;
  padding:1em 3em;
  background:#1f325e;
  box-shadow: 0 2px 2px rgba(0,0,0,0.2), 0 -14px 10px -5px #121c33 inset;
  font-size:12px;
  font-size:1.2rem;
  color:#fff;
  text-align:center;
}
.btn_app a:after{
    content: '';
    width: 8px;
    height: 8px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff; 
    position: absolute;
    top: 50%;
    left: 10px;
    transform: translateY(-50%) rotate(45deg);
}
.btn_app a:hover{
  text-decoration:none;
  background:#121c33;
  box-shadow: 0 -14px 10px -5px #1f325e inset;
}
.winSP .btn_app {
  flex-direction: column;
  width: 80%;
  margin:0 auto;
}

/* 学習中の疑問は質問メールで解消！
----------------------------*/
.q_card-img {
  display: flex;
  justify-content: center;
  padding: 50px 0 0;
}
.q_card-img div {
  flex: 0 0 35%;
  margin: 0 30px;
}
.winSP .q_card-img {
  padding: 25px 0 0;
}
.winSP .q_card-img div {
  flex: 0 0 46%;
  margin: 0 2%;
}

/* pdf（PDFのアイコンつきリンク）
----------------------------*/
.pdf {
  margin-top: 10px;
  margin-bottom: 10px;
  display: block;
}

.pdf a {
  position: relative;
  display: inline-block;
  padding-left: 20px;
}

.pdf a:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 16px;
  height: 16px;
  content: "";
  background: url(../image/ico-pdf.png);
}

.pdf a span {
  text-decoration: underline;
  color: #000;
}

sup {
    font-size: smaller;
    vertical-align: super;
}