/* SP用CSS */
@media screen and (max-width: 780px) {
    .sp {
        display: block;
    }

    .sp-none {
        display: none;
    }

    html {
        font-size: 62.5%;
    }

    /* ==================================================
   Common
   ================================================== */
    #main-body {
        font-size: 1.8rem;
    }

    .inner {
        padding: 0 2rem;
    }

    .heading {
        padding: .6rem 1rem 1rem 8rem;
        font-size: 2.5rem;
    }

    .heading:before {
        width: 9rem;
        height: 11rem;
        top: 0;
    }

    .heading .number {
        font-size: 3rem;
        padding-top: 0rem;
        padding-left: 1.9rem;
    }

    .btn__link {
        height: auto;
        font-size: 2rem;
        padding: 2.5rem;
        width: auto;
    }

    .popup-box-title {
        width: 101%;
    }

    .popup-box {
        padding-left: 2rem;
        padding-right: 2rem;
    }

    .bg.parts {
        background-image: url(../img/index/cta-bg.jpg);
        background-size: cover;
        border-radius: 0%;
    }

    .bg.parts .btn__pry {
        font-size: 2rem;
    }
    
    .cta-parts .btn__pry--org::after {
        background-color: transparent;
        color: #fff;
        border: none;
        font-size: 5rem;
        font-weight: normal;
        right: 3rem;
    }

    /* ==================================================
   Header
   ================================================== */
    #header .inner {
        padding: 0 .8rem;
    }

    .haeder__hamburger-menu {
        margin-right: 2rem;
    }

    /* ==================================================
   Footer
   ================================================== */
    #footer {
        padding: 1rem 0;
    }

    .footer__inner {
        margin-left: 0;
        padding: 1rem;
    }

    .footer__logo-container {
        width: auto;
    }

    .footer__nav {
        padding: 1rem;
        flex-direction: column;
    }

    .footer__nav-list ul {
        margin: 0;
    }
    .footer__nav-list .sub-menu{
        margin-left: 0;
    }

    .footer__nav-item--sub {
        margin-left: 0;
    }

    .footer__nav-link {
        font-size: 1.6rem;
    }

    .footer__copy {
        margin-top: 1rem;
        text-align: center;
    }

    /* ==================================================
   FV
   ================================================== */
    #fv.fv-page {
        margin-top: 7rem;
        height: 20rem;
        background-position: center;
    }

    .fv-page .fv__content {
        top: 50%;
        left: 50%;
    }

    .fv-page .fv__content-title {
        font-size: 3rem;
    }

    /* ==================================================
   Form
   ================================================== */
    #main-body form {
        padding: 2rem 1.6rem;
    }

    .form-row {
        row-gap: 1rem;
        padding: 1rem;
    }

    .address-group {
        flex-direction: column;
        gap: 1rem;
    }

    .mw_wp_form #schedule-field, .mw_wp_form #venue-field, .mw_wp_form #course-field{
        width:100%;
    }

    .mwform-tel-field input[type="text"], .mwform-zip-field input[type="text"] {
    display: inline-block;
    width: 10rem;
    }
    
    form .wpcf7-list-item {
        margin: 0;
    }

    #city,
    #district,
    #street,
    #email,
    #mobile-email,
    #company,
    #industry,
    #reg-num,
    #phone,
    #name-field,
    #furigana-field {
        width: 100%;
        max-width: 40rem;
    }

    #ques{
        width: 100%;
    }

    /* チェックボックスの設定 */
    input[type="checkbox"]:checked:before {
        top: 2px;
        left: 6px;
        width: 6px;
        height: 12px;
    }

    .border-none {
        padding: 1rem 0;
    }

    .form-row.form-submit.border-none {
        flex-direction: column;
    }

    /* 更新講座のコース */
    .course-group .wpcf7-list-item {
        width: 100%;
    }

    form .course-group {
        padding: 1rem 0;
        width: 100%;
    }

    .privacy-policy__chk{
        display: block;
    }

    .exp-group{
        flex-wrap: wrap;
    }

    .exp-group .error{
        width: 100%;
    }

    .title-label{
        flex-basis: 100%;
    }

    .form__note ol{
        padding:0 2.6rem;
    }

    .enroll__form-container #course{
        width: 100%;
    }

    .enroll__form-container #furigana{
        width: 100%;
    }

    /* 書籍注文注意書き */
    #books__form .content_box ul{
        padding:0 2rem;
    }
  
  #pref {
    width: 30%;
}


    /* ==================================================
   index page
   ================================================== */
    /* fv */
    #fv {
        background-position: 65% center;
    }

    .fv__content {
        width: 100%;
        top: 45%;
        left: 0;
        padding: 1.5rem;
    }

    .fv__content-title {
        font-size: 2.1rem;
    }

    .fv__content-text {
        font-size: 1.8rem;
    }

    .courses__container {
        flex-direction: column;
    }

    /* コース */
    /* 共通 */
    .courses__title {
        font-size: 2.5rem;
    }

    /* 左 */
    .courses__left {
        width: 100%;
        padding: 2rem 1rem 1rem 1rem;
    }

    .course__item {
        flex-direction: column;
        gap: 1rem;
    }

    .course__duration {
        justify-content: space-around;

    }

    .course__location {
        flex-basis: auto;
    }

    .course__date {
        flex-grow: unset;
    }

    .course__info {
        width: 100%;
        text-align: center;
    }

    .course__btn-container {
        width: 100%;
        max-width: 40rem;
    }

    /* 右 */
    .courses__right {
        width: 100%;
    }

    .courses__right-top,
    .courses__right-bottom {
        height: auto;
        padding: 2rem 1rem 2rem 1rem;
    }

    .courses__right .courses__btn-container {
        width: 100%;
        padding: 1rem;
        max-width: 40rem;
    }

    .courses__text-box {
        width: 100%;
        margin: 1.5rem auto;
    }

    #main-body section {
        padding: 6rem 0;
    }

    .courses__right .course__btn-container {
        width: auto;
    }

    /* about */
    #main-about .title {
        margin-bottom: 6rem;
    }

    #main-about .container {
        max-width: 100%;
        margin: 2rem 0;
    }

    #main-body .title {
        font-size: 2.5rem;
    }

    #main-about .container__title {
        font-size: 1.6rem;
    }

    #main-about .container__title span {
        font-size: 1.8rem;
    }

    #main-about .container__imges {
        padding: 9rem 0 2rem 0;
    }

    #main-about .imges__row-img-container {
        width: 12rem;
    }

    #main-about .container__title-box {
        left: 0%;
        width: 100%;
        transform: translate(0%, 0%);
    }

    #main-about .description {
        padding: 1rem;
    }

    /* consultation */
    #main-consultation .title {
        margin-bottom: 6rem;
    }

    #main-consultation .inner {
        padding: 0;
    }

    #main-consultation .consultation__bg {
        border-radius: 0%;
        margin: 0;
        background-image: url(../img/index/cta-bg.jpg);
        background-position: center;
        background-size: cover;
        background-repeat: no-repeat;

    }

    #main-consultation .btn-container {
        width: auto;
    }


    #main-consultation .text-box {
        width: 90%;
        padding: 4rem 3rem 5rem 3rem;
    }

    /* flow */
    #main-flow .title {
        margin-bottom: 6rem;
    }

    #main-flow .description {
        padding: 0 1rem;
    }

    #main-flow .flow-title {
        top: 0%;
        width: 100%;
        font-size: 1.8rem;
        padding: 0.8rem 0;
    }

    #main-flow .flow-container1 {
        margin-top: 4.5rem;
        max-width: 90%;

    }

    #main-flow .flow {
        flex-direction: column;
        align-items: center;
        padding: 7rem 1rem 3rem 1rem;
        gap: 2rem;
    }

    #main-flow .flow-step {
        width: 13rem;
        height: 12rem;
    }

    #main-flow .flow-label {
        top: 45%;
    }

    #main-flow .flow-step__outer,
    #main-flow .flow-step__inner {
        transform: rotate(90deg);
        transform-origin: center;
    }

    #main-flow .flow-point {
        width: auto;
        gap: .5rem;
    }

    #main-flow .flow-point__circle {
        width: 2rem;
        height: 2rem;
    }

    #main-flow .flow-point__label {
        position: static;
        width: auto;
    }

    #main-flow .flow-container2 {
        max-width: 90%;
        padding: 4rem 2rem 3rem 2rem;
        border-radius: 25px;
        margin: 2rem auto;
    }

    #main-flow .flow-container2 .flow2-title {
        font-size: 2rem;
        top: -2%;
        padding: 0 1rem;
    }

    #main-flow .cards {
        flex-direction: column;
        gap: 2rem;
    }

    #main-flow .card {
        max-width: 40rem;
        width: 90%;
        height: auto;
        border-radius: 20px;
        padding: 1rem;
    }

    #main-flow .card-img {
        border-radius: 20px 20px 0 0;
        object-fit: cover;
        height: 100%;
    }

    #main-flow .card-text {
        font-size: 1.6rem;
    }

    .card-content {
        padding: 1rem;
    }

    /* point */
    #main-body .title {
        margin-bottom: 6rem;
    }

    #main-poin .description {
        padding: 0 1rem;
    }

    #main-poin .point-list {
        margin: 6rem 0;
        width: 100%;
    }

    #main-poin .point-item {
        font-size: 1.6rem;
    }

    #main-poin .point-icon {
        left: -8rem;
    }

    #main-poin .container {
        max-width: 100%;
        margin: 0;
        padding: 1.8rem 1.2rem;
    }

    #main-poin .text-container {
        width: 100%;
    }

    #main-poin .text-container__text {
        text-align: center;
        font-size: 1.8rem;
        margin: 1rem 0 2rem 0;
    }

    /* main-update */
    #main-update .description {
        padding: 1rem 2rem;
    }

    #main-update .btn-container {
        margin: 4rem auto 4rem auto;
        width: 38rem;
    }

    #main-update .btn-container .btn {
        font-size: 2rem;
        line-height: 6rem;
        padding: 1rem 1rem;
    }

    /* main-news */
    #main-news .inner {
        padding-top: 0;
        padding-bottom: 0;
    }

    #main-news {
        background-color: #fff;
    }

    #main-news .news__title {
        font-size: 2.5rem;
    }

    .news__list {
        gap: 1rem;
        max-width: 100%;
    }

    .news__item {
        align-items: flex-start;
        flex-wrap: wrap;
        padding: 1rem;
    }

    .news__link {
        width: 100%;
    }

    .news__date,
    .news__category,
    .news__link {
        margin-right: 0;
        white-space: normal;
    }

    .news__category {
        font-size: 1.6rem;
        padding: .2rem .4rem;
        width: auto;
        margin-bottom: 0.5rem;
        margin-left: 2rem;
    }

    .news__link {
        overflow: visible;
    }

    .news__footer {
        margin-top: 4rem;
    }


    /* copy button */
    #main-consultation .main-cta-parts .btn-container {
        margin: 8rem auto 6rem auto;
    }

    #main-about .btn-container {
        margin: 8rem auto 4rem auto;
    }

    /* ==================================================
   About page
   ================================================== */
    #about-consultation .btn-container {
        width: auto;
    }

    #about-consultation .btn__pry {
        line-height: 6rem;
        font-size: 2rem;
    }

    /* page-about */
    #page-about .column {
        flex-direction: column;
        gap: 4rem;
    }

    #page-about .column__descripion {
        width: 100%;
        padding: 0 1rem;
    }

    #page-about .column__img-container {
        margin: 0 auto;
    }

    /* page-duties */
    #page-duties .cards {
        padding-top: 2rem;
        gap: 2rem;
        justify-content: center;
    }

    #page-duties .card {
        width: 20rem;
    }

    #page-duties .card__text {
        font-size: 1.8rem;
    }

    #page-duties .description {
        padding: 0 1rem;
    }

    /* about-reasonable */
    #about-reasonable .text-container {
        font-size: 2rem;
        padding: 3rem 1rem;
    }

    #about-reasonable .btn {
        padding: 1rem 0;
        font-size: 2.5rem;
    }

    #abou-career .container {
        width: 90%;
    }

    /* about-consultation */
    #about-consultation {}

    #about-consultation .inner {
        padding: 0;
    }

    #about-consultation .bg {
        border-radius: 0%;
        margin: 0;
    }

    #about-consultation .text-box {
        width: 90%;
        padding: 4rem 3rem 5rem 3rem;
    }

    #about-consultation.about-consultation2 {
        background-color: #F8F8F8;
    }

    /* abou-career */
    #abou-career {
        margin-top: 2rem;
        margin-bottom: 2rem;
    }

    #abou-career .container .text {
        font-size: 2rem;
    }

    #abou-career .container .link__container {
        font-size: 1.8rem;
    }

    /* ==================================================
   Flow page
   ================================================== */
    /* flow-header */
    #flow-header {
        margin-top: 0;
    }

    #flow-header .container {
        padding: 2rem 1.5rem;
    }

    #flow-header .list-container {
        padding: .5rem 1rem;
    }

    #flow-header .list-container ol {
        padding-left: 3rem;
    }

    #flow-header .list-container li {
        margin-bottom: .8rem;
    }

    #flow-header .flow {
        flex-direction: column;
        align-items: center;
        padding: 4rem 1rem 2rem 1rem;
        gap: 1rem;
    }

    #flow-header .flow-step {
        width: 12rem;
        height: 12rem;
    }

    #flow-header .flow-label {
        top: 45%;
    }

    #flow-header .flow-step__outer,
    #flow-header .flow-step__inner {
        transform: rotate(90deg);
        transform-origin: center;
    }

    #flow-header .flow-point {
        width: auto;
        gap: .5rem;
    }

    #flow-header .flow-point__circle {
        width: 2rem;
        height: 2rem;
    }

    #flow-header .flow-point__label {
        position: static;
        width: auto;
        font-size: 1.8rem;
    }

    /* flow-content */
    #flow-content {
        gap: 6rem;
    }

    #flow-content .colomn {
        flex-direction: column;
    }

    #flow-content .heading__title span {
        font-size: 1.6rem;
    }

    #flow-content .btn-container .btn {
        line-height: 6rem;
        font-size: 2rem;
    }

    #flow-content .column__img-container {
        width: 100%;
    }

    #flow-content .description {
        width: 100%;
    }

    #flow-content .description p {
        margin-bottom: 3.6rem;
    }

    #flow-content .btn-container {
        width: auto;
    }

    #flow-content .flow-item--2 .btn-container .btn {
        line-height: normal;
        font-size: 2rem;
    }

    #flow-content .flow-item--2 .btn-container {
        margin-bottom: 3rem;
    }

    #flow-content .flow-item--3 .btn-container {
        margin-bottom: 3rem;
    }

    #flow-content .flow-item--4 .description__img-container {
        margin-bottom: 3rem;
    }

    /* flow-links */
    #main-body.flow #flow-links {
        padding: 4rem 0 0rem 0;
    }

    #flow-links .flow-links__container {
        width: 100%;
    }

    #flow-links .flow-links__container-text {
        font-size: 2rem;
        padding: 1rem 3.5rem 1rem 3rem
    }

    #flow-links .flow-links__container-link {
        font-size: 1.8rem;
    }

    /* flow-consultation */

    #flow-consultation .inner {
        padding: 0;
    }

    #flow-consultation .bg {
        border-radius: 0%;
        margin: 0;
    }

    #flow-consultation .btn-container {
        width: auto;
    }

    #flow-consultation .text-box {
        width: 90%;
        padding: 4rem 3rem 5rem 3rem;
    }

    #flow-consultation .btn-container .btn {
        line-height: 6rem;
        font-size: 2rem;
    }

    #flow-consultation .cta-parts {
        margin: 8rem 0 4rem 0;
    }

    /* ==================================================
   Training page
   ================================================== */
    /* flow-header */
    #flow-header .flow-header__container {
        max-width: 100%;
        margin: 0;
        padding: 1.8rem 1.2rem;
    }

    #flow-header .text-container {
        width: 100%;
    }

    #flow-header .text-container__benefit {
        text-align: center;
        font-size: 1.8rem;
        margin: 1rem 0 2rem 0;
    }

    /* flow-content */
    /* 1.キャリアコンサルタント合格率 */
    #flow-content .pass-rate__table {
        width: 100%;
        margin: 0;
    }

    #flow-content .pass-rate__table td,
    #flow-content .pass-rate__table th {
        padding: 1rem;
    }

    #flow-content .pass-rate__table .column-small,
    #flow-content .pass-rate__table .column-medium {
        width: auto;
    }


    /* 4.学習スタイルと修了基準 */
    #flow-content .learning__columns {
        flex-direction: column;
        gap: 0rem;
    }

    /* 5.現在受付中の通学会場と講座 */


    /* 6.受講資格、受講料、合格保証 */
    #flow-content .qualification__columns {
        flex-direction: column;
    }

    #flow-content .qualification__columns {
        gap: 2rem;
    }

    #flow-content .qualification__btn-container {
        width: auto;
    }

    #flow-content .qualification__btn-container .btn {
        font-size: 2rem;
    }

    /* 7.カリキュラム */
    #flow-content .curriculum__btn-container {
        width: 100%;
        margin: 0 auto 2rem;
    }

    #flow-content .btn__link--curriculum,
    #flow-content .btn__link {
        width: 100%;
        height: 11rem;
        font-size: 2rem;
        padding: 2.5rem;
    }

    /* 8.講師紹介 */
    .instructor-intro__description {
        padding: 0 1rem;
    }

    .instructors {
        padding: 4rem 0rem 2rem 0;
        gap: 4rem;
    }

    .instructor__profile {
        flex-direction: column;
        align-items: flex-start;
        gap: 0rem;
    }

    .instructor__img-container {
        margin: 0 auto;
    }

    .instructor__info {
        margin-bottom: 1rem;
    }

    .instructor__qualifications {
        padding: 0 1rem;
    }

    #flow-content .instructor__bio {
        max-width: 100%;
        padding: 1rem;
    }

    /* 8.卒業後の進路  */
    .pathway__btn-container {
        width: 100%;
    }

    /* flow-content */

    /* flow-links */
    #main-body.training #flow-links {
        padding-bottom: 10rem;
    }

    .flow-links__btn-container {
        width: 100%;
    }

    .flow-links__btn-container .btn {
        font-size: 2rem;
        gap: 4rem;
    }

    .flow-links__btn-container .btn-icon {
        width: 6rem;
    }



    /* ==================================================
   Contact page
   ================================================== */
    #fv.fv-contact {
        height: 19rem;
    }

    #name,
    #furigana {
        max-width: 100%;
    }

    .privacy-policy {
        margin-top: 2rem;
    }

    /* ==================================================
   Apply page
   ================================================== */
    #main-body #apply-header {
        padding-bottom: 0;
    }

    #apply-header p {
        padding-top: 0;
    }

    /* apply */
    #main-body #apply {
        padding-top: 2rem;
    }

    #apply .apply__headlile-title {
        font-size: 2.3rem;
    }

    #apply .venue__title {
        font-size: 2.3rem;
    }

    #apply .venue__details {
        font-size: 1.8rem;
    }

    #apply .venue__map iframe {
        max-width: 100%;
        height: auto;
    }

    #apply .venue__column .dates {
        font-size: 2rem;
    }

    #apply .schedule__info {
        font-size: 1.4rem;
    }

    #apply .schedule__date {
        width: 100%;
        height: auto;
        padding: 1rem;
        max-height: none;
        max-width: none;
    }

    #apply .schedule__date ul {
        height: auto;
    }

    #apply .schedule__date ul {
        height: auto;
    }

    #apply .apply__info .info__box {
        padding: 3rem 2rem;
    }

    #apply .info__btn-container {
        width: auto;
    }

    #apply .info__btn-container .btn {
        font-size: 2rem;
    }

    #apply .apply__cta {
        padding: 4rem 0;
    }

    /* ==================================================
   Cose-list page
   ================================================== */
    #course-list .course-list__title {
        font-size: 2.5rem;
        margin-bottom: 6rem;
    }

    .course-list-link__container{
        max-width: 95%;
    }

    #course-list .course-item {
        flex-direction: column;
        align-items: flex-start;
        padding: 1rem 0;
    }

    #course-list .courses__content {
        width: 100%;
        margin-bottom: 1rem;
    }

    #course-list .courses__details {
        padding: 0 1rem;
        gap: 0.5rem;
    }

    #course-list .courses__location,
    #course-list .courses__duration {
        font-size: 1.8rem;
    }

    #course-list .courses__location::before {
        margin-right: 1rem;
    }

    #course-list .courses__dates {
        font-size: 1.8rem;
    }

    #course-list .courses__dates span {
        font-size: 1.4rem;
    }

    #course-list .courses__btn-container {
        width: 100%;
        max-width: 38rem;
        margin: 1rem auto;
    }

    #course-list .courses__btn-container a {
        width: 100%;
        padding: 1rem;
        font-size: 1.6rem;
    }

    #course-list .course-info {
        padding: 1rem;
        margin-left: 1rem;
        font-size: 1.8rem;
    }

    /* ==================================================
   enrollment-form
   ================================================== */
    #enroll .enroll__title {
        font-size: 2.5rem;
    }

    #enroll .enroll__notes {
        padding: 2rem;
        margin-bottom: 1.5rem;
    }

    #enroll .enroll__note:nth-child(2) .enroll__notes-text {
        padding: 0;
    }

    #enroll .enroll__benefits {
        padding: 2rem;
    }

    #enroll .enroll__form-container {
        padding: 6rem 0;
    }

    #enroll .enroll__form-ex {
        padding: 0 1rem;
    }

    #enroll .enroll-form ol {
        padding-left: 2.5rem;
    }

    #enroll .form__note {
        margin-top: 2rem;
        padding: 1rem;
    }

    /* ==================================================
   Update-Overview page
   ================================================== */
    #overview-header .overview-header__title {
        margin-bottom: 4rem;
    }


    /* overview-body */
    #overview-body .overview-body__title {
        font-size: 2.5rem;
        padding: 1rem 2rem 1rem 8rem;
        white-space: normal;
    }

    #overview-body .overview-body__title span {
        font-size: 1.6rem;
    }

    #overview-body .overview-body__title::before {
        width: 8rem;
        height: 6rem;
        font-size: 3rem;
        padding-right: 3rem;
        top: 2.8rem;
    }

    /* 2.講習時間数 */
    .overview-body__columns {
        flex-direction: column;
    }

    .overview-body__column-box--left {
        max-width: 100%;
    }

    .overview-body__column-icon {
        width: 3rem;
    }

    /* 3.現在受付中の更新講習 */
    .overview-body__course-details {
        flex-direction: column;
    }

    #overview-body .overview-body__course-type {
        flex-basis: auto;
    }

    .overview-body__course-schedule-item {
        flex-direction: column;
    }

    .overview-body__course-btn-container {
        width: 80%;
        margin: 1rem auto;
    }

    .overview-body__course-btn-container .btn {
        width: 100%;
        padding: 0.4rem 1rem 0.4rem 0;
    }


    /* 4.講習修了判定基準 */
    .overview-body__evaluation-table {
        min-width: 60rem;
    }

    .overview-body__evaluation-description {
        overflow-x: auto;
    }

    /* ==================================================
   Update-apply page
   ================================================== */
    .update-apply-body__items {
        padding: 1rem;
        display: flex;
        flex-direction: column;
        gap: 2rem;
    }

    .update-apply-body__item {
        overflow-x: auto;
    }

    .update-apply-body__item-table {
        width: auto;
        min-width: 100rem;
    }


    .update-apply-footer__btn {
        font-size: 1.8rem;
    }

    .update-apply-footer__btn-container--pdf .update-apply-footer__btn{
        font-size: 1.8rem;
        width: 38rem;
    }


    .update-apply-footer__column {
        flex-direction: column;
        padding: 0;
    }
  
  .update-apply-footer__info{
    text-align:center;}
  
  .update-apply-footer__column .update-apply-footer__btn{
    margin:0 auto;
  }
  
  .content-list.part .content-list__course__method {
    margin: 0;
    text-align:left;
}
.content-list.part .content-list__course-schedule{
    min-width: auto;
}
.content-list.part .content-list__course-schedule time{
  max-width:40rem;
  flex-basis: auto;
  }
  
  .content-list.part .schedule-item{
       align-items: normal;
    	gap:0;
        padding-left: 0rem;
    text-indent: 0rem;
  }
  
  .overview-body__item {
    overflow:hidden;
  }

    /* ==================================================
   Update-Form
   ================================================== */
    #update-form__header .update-form__title {
        margin-bottom: 6rem;
    }

    #update-form__header .update-form__notes {
        background-color: #FFF4BC;
        padding: 1.6rem 2rem;
        margin-bottom: 1.5rem;
    }

    #update-form__header .update-form__notes-title,
    #update-form__header .update-form__text,
    #update-form__header .update-form__info-title {
        font-size: 1.4rem;
        line-height: 160%;
    }

    #update-form__header .update-form__text,
    #update-form__header .update-form__info p {
        padding: 0 1rem;
    }

    #update-form__header .update-form__info {
        padding: 1.2rem 2rem;
    }

    #update-form__header .update-form__info {
        padding: 1.2rem 2rem;
    }

    #update-form__header .update-form__info .update-form__info-title {
        font-size: 1.6rem;
        margin-bottom: 1rem;
    }

    #update-form__header .update-form__info p {
        font-size: 1.4rem;
        line-height: 160%;
    }

    #update-form__header .update-form__info a {
        font-size: 1.4rem;
    }

    /* ==================================================
   Update-course-list page
   ================================================== */

    #update-course__header .update-course__title {
        font-size: 2.5rem;
    }

    #main-body #update-course__body{
        padding-top: 1rem;
    }

    .content-list__course-details {
        flex-direction: column;
    }

    #main-body .content-list__course-type {
        flex-basis: auto;
    }

    .schedule-item {
        flex-direction: column;
    }

    .content-list__course-btn-container {
        width: 80%;
        margin: 1rem auto;
    }

    .content-list__course-btn-container .btn {
        width: 100%;
        padding: 0.4rem 1rem 0.4rem 0;
    }

    /* ==================================================
   Books page
   ================================================== */
    /* 書籍リスト */
    section#books__list {
        padding-top: 2rem;
        padding-bottom: 2rem;
    }

    .books__list-title {
        font-size: 2.5rem;
        margin: 1rem 0;
    }

    .book-items {
        padding: 1rem 0.5rem;
    }

    .book-item__title {
        margin-top: 0;
    }

    .book-item {
        flex-direction: column-reverse;
        align-items: center;
        margin-bottom: 1.5rem;
    }

    .book-item__description {
        text-align: center;
        padding: 0 1rem;
    }

    .book-item__title {
        font-size: 1.7rem;
    }

    .book-item__price {
        font-size: 1.7rem;
        padding: 1.2rem 1.5rem;
    }

    .book-item__image {
        width: 12rem;
        height: auto;
        margin-top: 1rem;
    }

    /* 申し込みセクション */
    #main-body #books__form {
        padding-top: 2rem;
    }

    .headline-bule__title {
        font-size: 2.5rem;
    }

    .books__form-container {
        padding-top: 2rem;
    }

    .form-item {
        width: 100%;
        margin-right: 0;
    }

    .book-section__option {
        gap: 1rem;
    }

    .book-section__toral {
        margin-left: 0;
    }

    /* ==================================================
   FAQ page
   ================================================== */
    .faq-header__title {
        font-size: 2.5rem;
        text-align: center;
        padding: 0 1rem;
        margin-bottom: 6rem;
    }

    .faq-header__tabs {
        margin-top: 6rem;
        flex-direction: column;
        align-items: center;
        gap: 1rem;
    }

    .faq-tab {
        width: 30rem;
        font-size: 1.6rem;
        padding: 1.5rem 1.5rem;
        border-radius: 50px;
    }

    #main-body #faq-body {
        padding-top: 2rem;
        padding-bottom: 12rem;
    }

    .Qa-Box .Qa dt,
    .Qa-Box .Qa dd {
        width: 100%;
    }

    .Qa dd .exception-container{
        width: 100%;
    }

    /* ********************************************************
   投稿ページ・カテゴリページ共有部分
   ******************************************************** */
    #fv.fv-post {
        background-position: 35% center;
    }

    .main__column {
        flex-direction: column;
    }

    #main-body .main__column {
        padding-top: 2rem;
    }


    /* ********************************************************
   投稿ページ
   ******************************************************** */
    /* サイドバーは記事の下へ移動 */
    #post {
        width: 100%;
    }

    #content__sideber {
        width: 100%;
        margin: 4rem 0 6rem 0;
    }

    #feature {
        padding: 4rem 0 0 0;
    }

    #feature h2 {
        font-size: 2.5rem;
    }


    /* 記事の内容 */
    #post section {
        padding: 2rem 0;
    }

    #post .inner {
        padding: 0 1rem;
    }

    #post .post__title {
        padding-top: 0;
        margin-top: 0;
        font-size: 1.8rem;
    }

    #post .post__category {
        width: 11rem;
        max-width: 11rem;
        line-height: 2rem;
        height: 2.4rem;
        font-size: 1.2rem;
        text-align: center;
        padding-left: 1rem;
        padding-right: 2rem;
    }

    #post .post__category::before {
        left: 1px;
        bottom: .5px;
        right: .5px;
    }

    #post .post__img-container {
        width: auto;
        height: auto;
    }

    /* ナビゲーション */
    .post__navigation span {
        display: none;
    }

    #post .nav-previous .nav-title{
        display: none;
    }

    .post__prev::after {
        width: 15rem;
    }

    .post__next::before {
        left: -6.4rem;
        width: 15rem;
    }

    .post__next::after {
        bottom: 1.3rem;
    }

    #post .nav-previous a::after{
        width: 15rem;
    }

    #post .nav-next .nav-subtitle::before{
        width: 15rem;
    }

    /* ********************************************************
   カテゴリページ
   ******************************************************** */
    #main-body #feature {
        padding: 4rem 0 0 0;
    }

    .news__inner {
        width: 100%;

    }

    #news {
        width: 100%;
    }

    #news .inner {
        padding: 0 1rem;
    }

    .news__headline h3 {
        font-size: 1.8rem;
    }

    .news__headline h3 span {
        width: 9rem;
        min-width: 9rem;
        font-size: 1.2rem;
        text-align: center;
        padding-right: 1rem;
        padding-left: 0;
    }

    .news__text p {
        font-size: 1.4rem;
    }

    /* ==================================================
   各種パーツ
   ================================================== */
   /* 受付中の養成講座一覧 */
   #main-body .courses-parts .courses__duration {
    flex-grow: 0;
    gap: .8rem;
   }
    #main-body .courses-parts .courses__location::before{
        margin-right: 0.8rem;
    }

    #main-body .courses-parts .courses__details{
        justify-content: center;
        gap: .8rem;
    }
    #main-body .courses-parts .courses__btn-container{
        width: 85%;
        margin: 1rem auto;
    }

    #main-body .course__note.parts{
        margin: 2rem 0;
        padding: 0;
    }

    #main-body .courses-parts .course-item{
        flex-direction: column;
    }

    /* 受付中の更新講習 */
    .content-list.part .content-list__course-btn-container{

        width: 90%;   
    }

    .content-list.part .content-list__course-btn-container .btn{
        width: 100%;
  
    }

    .content-box.part{
        padding: 1rem 2rem;
    }
  
  
  /* ボタンパーツ*/
  article.cta-popup.parts {
    margin: 8rem 0;
}
  
  
  /* プライバシーポリシー*/
  #main-body.privacy-policy{
    padding:0 3.2rem;
  }
  
  #main-body.privacy-policy ol{
    padding-left:2.4rem;
  }
  
  #main-body.privacy-policy h2{
    font-size: 2.4rem;
    margin-bottom: 3.2rem;
  }
  

    /* ********************************************************
   add code
   ******************************************************** */
  #post-778 .apply_list{
    padding-left:0;
  }
 
}








@media screen and (max-width: 560px) {
    html {
        font-size: 50%;
    }

}


@media screen and (max-width: 350px) {
  
      html {
        font-size: 45%;
    }
}