@charset "UTF-8";

/* =========================================
   manabi-tourism.html / 観光まちづくり学部 SP (〜767px)
   Figma SP frame: 722:1123 (750 × 13380)
   ========================================= */

@media screen and (max-width: 767px) {

    .pc { display: none !important; }
    .sp { display: block !important; }

    .hamburger__line {
        background: #000;
    }

    .inner {
        display: block;
        width: 94vw;
        margin: 0 auto;
    }

    body {
        position: relative;
    }

    .back_img {
        position: absolute;
        top: 0;
        width: 100%;
        z-index: -1;
    }

    /* ===== メインビジュアル ===== */
    .mt_main {
        padding-top: 30vw;
        text-align: center;
    }

    .mt_main_series {
        font-size: 3.8vw;
        line-height: 1.5;
        letter-spacing: 0.4vw;
        margin-bottom: 4vw;
    }

    .mt_main_title {
        font-size: 6.4vw;
        line-height: 1.6;
        letter-spacing: 0.5vw;
        margin: 0 auto 5vw;
        padding-bottom: 5vw;
        width: 100%;
    }

    .mt_main_label_row {
        flex-direction: column;
        gap: 2.5vw;
        margin-bottom: 6vw;
    }

    .mt_main_label {
        font-size: 4.5vw;
        line-height: 1.5;
        height: auto;
        padding: 1.5vw 4vw;
        border-radius: 1vw;
    }

    .mt_main_subject {
        font-size: 5.5vw;
        line-height: 1.5;
    }

    .mt_main_visual {
        width: 100%;
        height: 65vw;
        border-radius: 35vw;
    }

    /* ===== 授業紹介 ===== */
    .mt_intro {
        margin-top: 12vw;
    }

    .mt_intro_box {
        border-radius: 4vw;
        padding: 6vw 5vw;
    }

    .mt_intro_title {
        font-size: 4.5vw;
        line-height: 1.5;
        letter-spacing: 0.4vw;
        margin-bottom: 4vw;
    }

    .mt_intro_body {
        width: 100%;
        font-size: 3.8vw;
        line-height: 1.8;
    }

    .mt_mark {
        font-size: 3.8vw;
        line-height: 1.8;
    }

    /* ===== 教員紹介 ===== */
    .mt_prof {
        margin-top: 12vw;
        flex-direction: column;
        gap: 5vw;
        align-items: center;
        text-align: center;
    }

    .mt_prof_photo {
        width: 45vw;
        height: 45vw;
    }

    .mt_prof_info {
        width: 100%;
        text-align: left;
    }

    .mt_prof_name {
        font-size: 4.5vw;
        line-height: 1.5;
        margin-bottom: 1vw;
        text-align: center;
    }

    .mt_prof_role {
        font-size: 3.6vw;
        line-height: 1.5;
        margin-bottom: 4vw;
        text-align: center;
    }

    .mt_prof_body {
        font-size: 3.6vw;
        line-height: 1.7;
    }

    /* ===== Q&A ===== */
    .mt_qa_list {
        margin-top: 12vw;
        display: flex;
        flex-direction: column;
        gap: 8vw;
    }

    .mt_qa_box {
        border-radius: 5vw;
        padding: 7vw 5vw;
        gap: 6vw;
    }

    .mt_qa_q {
        font-size: 4vw;
        line-height: 1.6;
        letter-spacing: 0.2vw;
        border-radius: 2vw;
        padding: 3vw 4vw;
    }

    .mt_qa_lead {
        font-size: 3.6vw;
        line-height: 1.7;
    }

    .mt_qa_row {
        flex-direction: column;
        gap: 4vw;
    }

    .mt_qa_img {
        width: 100%;
        height: 50vw;
        border-radius: 4vw;
    }

    .mt_qa_text {
        width: 100%;
        gap: 3vw;
    }

    .mt_qa_h {
        font-size: 4.5vw;
        line-height: 1.5;
    }

    .mt_qa_text p {
        font-size: 3.6vw;
        line-height: 1.7;
    }

    /* ===== 特徴カード ===== */
    .mt_feature_grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 6vw 4vw;
        width: 100%;
    }

    .mt_feature_card {
        width: 100%;
    }

    .mt_feature_img {
        height: 30vw;
        border-radius: 4vw;
        margin-bottom: 3vw;
    }

    .mt_feature_no {
        font-size: 3vw;
        margin-bottom: 1vw;
    }

    .mt_feature_ttl {
        font-size: 4vw;
        margin-bottom: 3vw;
    }

    .mt_feature_desc {
        font-size: 3.4vw;
        line-height: 1.7;
    }

    /* ===== スキルリスト ===== */
    .mt_skill_item {
        width: 100%;
        flex-direction: column;
        gap: 4vw;
        padding-bottom: 6vw;
    }

    .mt_skill_img {
        width: 100%;
        height: 50vw;
        border-radius: 4vw;
    }

    .mt_skill_body {
        gap: 3vw;
    }

    .mt_skill_ttl {
        font-size: 4.5vw;
    }

    .mt_skill_desc {
        font-size: 3.6vw;
        line-height: 1.7;
    }

    .mt_skill_kadai {
        flex-direction: column;
        align-items: flex-start;
        padding: 4vw;
        gap: 3vw;
        border-radius: 1vw;
    }

    .mt_skill_kadai_label {
        width: auto;
        font-size: 3.8vw;
        padding-left: 6vw;
    }

    .mt_skill_kadai_label::before {
        width: 4vw;
        height: 5vw;
    }

    .mt_skill_kadai p {
        font-size: 3.4vw;
        line-height: 1.7;
    }

    /* ===== 授業潜入レポート ===== */
    .mt_report_lead {
        font-size: 4.5vw;
        line-height: 1.5;
    }

    .mt_report_item {
        width: 100%;
        height: auto;
        flex-direction: column;
        gap: 4vw;
        padding-bottom: 6vw;
    }

    .mt_report_img {
        width: 100%;
        height: 60vw;
        border-radius: 3vw;
    }

    .mt_report_text {
        font-size: 3.6vw;
        line-height: 1.7;
    }

    /* ===== 締めコピー ===== */
    .mt_outro_copy {
        font-size: 4.2vw;
        line-height: 1.8;
        margin-top: 5vw;
        margin-bottom: 6vw;
    }

    /* SPでは文章内の改行を無効化して自動折り返しに */
    .mt_outro_copy br {
        display: none;
    }

    .mt_outro_btn {
        gap: 3vw;
        width: 90%;
        height: auto;
        min-height: 16vw;
        padding: 4vw;
        border-radius: 10vw;
        font-size: 4vw;
        line-height: 1.4;
        letter-spacing: 0.3vw;
    }

    .mt_outro_btn_blank {
        width: 4vw;
        height: 4vw;
    }

    .mt_outro_btn::after {
        width: 8vw;
        height: 2.5vw;
        margin-left: 4vw;
        background-size: 100% 100%;
    }

    /* ===== バナー ===== */
    .banner {
        margin-top: 20vw;
        margin-bottom: 20vw;
    }

}
