:root {
    --black: #333333;
    --white: #fff;
    --green-009E82: #009E82;
    --green-008E75: #008E75;
    --light-green: #E9FAED;
    --red: #E6191A;
    --yellow: #FFEF3B;
    --beige: #FFFBE3;
    --orange: #FF5D02;
    --blue: #0D6DC0;
    --light-blue: #E8F7FF;
    --toned-down-blue: #C0DCF4;
    --gray-blue: #DAE2EB;
    --pink: #FEE6F3;
    --shocking-pink: #F3409F;

    --yellow-orange-gradient: linear-gradient(90deg, #FFBD16 0%, #FF5D02 100%);
    --yellow-orange-gradient-reverse: linear-gradient(90deg, #FFBD16 100%, #FF5D02 0%);

    --font-base: "Noto Sans JP", sans-serif;
    --font-en: "Montserrat", sans-serif;
}
/* ==================================================
    全体CSS
================================================== */
body {
    font-family: var(--font-base);
    color: var(--black);
    position: relative;
}
.inner1200 {
    max-width: 1200px;
    margin: 0 auto;
}
.inner1040 {
    max-width: 1040px;
    margin: 0 auto;
}
.inner750 {
    max-width: 750px;
    margin: 0 auto;
}
.pc_only {
    display: block;
}
.pc_only_flex {
    display: flex;
}
.sp_only {
    display: none;
}
.sp_only_flex {
    display: none !important;
}
.fade-up-trigger {
    opacity: 0;
}
/* 波 */
.wave {
    width: 100%;
    height: auto;
}
/* ctaボタン */
.cta-btn {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 371px;
    height: 79px;
    margin: 0 auto;
    align-items: center;
    gap: 8px;
    border-radius: 8px;

    /* gradient animation */
    background: linear-gradient(90deg,
            #FFBD16 0%,
            #FF5D02 50%,
            #FFBD16 100%);
    background-size: 200% auto;

    background-position: 100% 50%;

    color: var(--white);
    box-shadow: 2px 2px 10px 0 rgba(0, 0, 0, 0.25);
    font-weight: 800;
    position: relative;

    transition: background-position 0.3s ease, transform 0.3s ease;
}
.cta-btn .cta-speech {
    position: relative;
    display: flex;
    align-items: center;
    gap: 6px;
}
.cta-btn .cta-speech::before,
.cta-btn .cta-speech::after {
    content: "";
    display: block;
    width: 8.5px;
    height: 11.5px;
    background: url(../img/icon/icon-tri.svg);
    background-repeat: no-repeat;
}
.cta-btn .cta-speech::before {
    rotate: 301deg;
}
.cta-btn .cta-text {
    font-size: clamp(20px, 2vw, 24px);
}
.cta-btn::after {
    content: "";
    display: block;
    width: 12px;
    height: 20.5px;
    background: url(../img/icon/white-arrow.svg);
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    right: 7%;
    transform: translateY(-50%);
}
.cta-btn:hover {
    background-position: 0% 50%;
}
/* マーカー線 */
.yellow-marker {
    background: linear-gradient(transparent 71%, var(--yellow) 49%);
}
.yellow-m-ttl .yellow-marker {
    background: linear-gradient(transparent 71%,
            var(--yellow) 49%);

    background-repeat: no-repeat;
    background-size: 0% 100%;

    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
}

.yellow-m-ttl .yellow-marker.is-active {
    animation: markerAnime 1.2s ease-out forwards;
}

@keyframes markerAnime {
    0% {
        background-size: 0% 100%;
    }

    100% {
        background-size: 100% 100%;
    }
}
/* 共通クラス */
.sub-ttl {
    font-size: clamp(16px, 2vw, 20px);
    font-weight: 500;
    line-height: 1.6;
    text-align: center;
    margin-top: 41px;
}
@media screen and (max-width: 768px) {
    .pc_only {
        display: none !important;
    }
    .pc_only_flex {
        display: none !important;
    }
    .sp_only {
        display: block !important;
    }
    .sp_only_flex {
        display: flex !important;
    }
}

/* ==================================================
    header
================================================== */

header {
    padding: 16px 50px;
}
header a {
    transition: 0.3s;
}
header a:hover {
    opacity: 0.7;
}

/* ==================================================
    FV
================================================== */
.fv {
    position: relative;
    background-image: url("./assets/img/fv/kv_pc.png");
    background-image: url("../img/fv/kv_pc.png");
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center top;
    padding-bottom: 3rem;
}
/* .fv::before {
    content: "";
    display: block;
    width: 100%;
    height: 563px;
    background: url(../img/fv/kv_pc_before.svg);
    background-repeat: no-repeat;
    background-size: 100% auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
} */
.fv .kv-img {
    width: 100%;
    height: auto;
}
.fv_wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 24px 3rem 40px;
}
/* .fv_wrapper img {
    width: 100%;
    height: auto;
} */
.fv-left {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.fv-left h1 {
    display: flex;
    flex-direction: column;
    font-size: clamp(20px, 2.4vw, 36px);
    font-weight: 700;
    line-height: 2;
}
.fv_wrapper .top-box {
    display: flex;
    align-items: center;
    gap: 20px;
}
.fv-left h1 .white-box {
    background: var(--white);
    border-radius: 30px;
    font-size: clamp(14px, 1.4vw, 20px);
    height: 48px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 2rem;
}
.fv-left h1 .main {
    /* color: #FFF;

    -webkit-text-stroke: 2px #008D74;
    paint-order: stroke fill;

    text-shadow: 0 3px 0 #008D74;

    font-family: "Noto Sans JP";
    font-size: clamp(28px, 5vw, 56px);
    font-weight: 700; */
    line-height: 1.3;
    /* letter-spacing: -1.12px; */
    margin-top: 15px;
}
.fv-left h1 .main img {
    max-width: 100%;
    height: auto;
}
.fv-circle-list-wrapper {
    margin-top: -75px;
}
.fv-circle-list {
    display: flex;
    justify-content: center;
    align-items: center;
}
.fv-circle-list li {
    width: clamp(126px, 16vw, 200px);
    aspect-ratio: 1 / 1;
    border-radius: 50vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    filter: drop-shadow(2px 2px 10px rgba(5, 70, 34, 0.25));
    font-size: clamp(16px, 2vw, 28px);
    font-weight: 700;
    line-height: 1.6;
    text-align: center;
}
.fv-circle-note {
    display: inline-block;
    white-space: nowrap;
}
.fv-circle-note sup {
    font-size: 0.6em;
    font-weight: 500;
    margin-left: 0.5px;
}
.fv-circle-list small {
    font-size: 65%;
    font-weight: 500;
}
.fv-circle-list li:first-child,
.fv-circle-list li:last-child {
    background: var(--green-009E82);
    color: var(--white);
}
.fv-circle-list li:nth-child(2) {
    background: var(--white);
    color: var(--black);
    border: solid 4px var(--green-009E82);
}
.fv-note-wrapper {
    display: flex;
    justify-content: flex-end;
}
.fv-note {
    font-size: clamp(13px, 1vw, 16px);
    font-weight: 500;
    margin-top: 12px;
    text-align: left;
    line-height: 1.6;
}
.fv-right img {
    margin-left: 2rem;
    width: 100%;
    height: auto;
}
/* ctaボタン */
.fv-cta-btn {
    display: flex;
    flex-direction: column;
    justify-content: center;
    /* width: 451px; */
    width: 82%;
    height: auto;
    padding: 1rem 0;
    margin: 0 auto;
    align-items: center;
    gap: 8px;
    border-radius: 8px;
    background: linear-gradient(90deg,
            #FFBD16 0%,
            #FF5D02 50%,
            #FFBD16 100%);
    background-size: 200% auto;
    background-position: 100% 50%;
    color: var(--white);
    box-shadow: 2px 2px 10px 0 rgba(0, 0, 0, 0.25);
    font-weight: 800;
    position: relative;
    transition: background-position 0.3s ease, transform 0.3s ease;
    margin-top: 67px;
}
.fv-cta-btn .cta-speech {
    position: relative;
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: clamp(13px, 2vw, 20px);
}
.fv-cta-btn .cta-speech::before,
.fv-cta-btn .cta-speech::after {
    content: "";
    display: block;
    width: 8.5px;
    height: 11.5px;
    background: url(../img/icon/icon-tri.svg);
    background-repeat: no-repeat;
}
.fv-cta-btn .cta-speech::before {
    rotate: 301deg;
}
.fv-cta-btn .cta-text {
    font-size: clamp(20px, 2.3vw, 28px);
}
.fv-cta-btn::after {
    content: "";
    display: block;
    width: 12px;
    height: 20.5px;
    background: url(../img/icon/white-arrow.svg);
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    right: 7%;
    transform: translateY(-50%);
}
.fv-cta-btn:hover {
    background-position: 0% 50%;
}
.fv-cta-btn .diagonal-speech {
    position: absolute;
    transform: rotate(-6deg);
    padding: 8px 24px;

    border: 2px solid transparent;
    border-radius: 32px;

    background:
        linear-gradient(#fff, #fff) padding-box,
        linear-gradient(90deg, #FF5D02 0%, #FFBD16 100%) border-box;

    color: #FF5D02;
    font-size: clamp(14px, 1.4vw, 18px);
    font-weight: 700;

    top: -1.3rem;
    left: 0;
}
.fv-cta-btn .diagonal-speech::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -8px;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 10px solid #FFF;
}
/* ==================================================
    about
================================================== */
.about-green-back {
    padding: 0 20px;
}
.about-main-box-wrapper {
    padding: 0 20px;
}
.about-green-back {
    background: var(--light-green);
    padding-bottom: 40px;
}
.about-green-back h3 {
    font-size: clamp(24px, 2.5vw, 32px);
    font-weight: bold;
    color: #008D74;
    text-align: center;
    padding-top: 8px;
}
.about-green-back h3 strong {
    /* font-size: clamp(28px, 2.5vw, 48px); */
    font-size: 48px;
    font-weight: 700;
}
.orange-text {
    color: var(--orange);
}
.green-wave-box {
    background: var(--light-green);
    padding: 32px 40px 40px;
    border-radius: 0 0 12px 12px;
}
.threetypes-intotal {
    display: block;
    margin: 30px auto 32px;
}
.about-purpose-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
    padding: 0 60px 0 40px;
    margin-top: 80px;
}
.about-purpose-list li {
    border-radius: 12.7px;
    border: 3px solid #009E82;
    background: #FFF;
    box-shadow: 3.193px 3.193px 15.963px 0 rgba(0, 0, 0, 0.25);
    font-size: clamp(16px, 1.7vw, 24px);
    font-weight: 500;
    line-height: 1.6;
    position: relative;
}
.about-purpose-list li:first-child {
    padding: 6.8% 19% 6% 24.2%;
}
.about-purpose-list li:first-child .purpose-list-img {
    position: absolute;
    bottom: -3px;
    left: -12%;
}
.about-purpose-list li:nth-child(2) {
    padding: 6.8% 18% 6% 19.2%;
}
.about-purpose-list li:nth-child(2) p {
    text-align: center;
}
.about-purpose-list li:nth-child(2) .purpose-list-img {
    position: absolute;
    bottom: -3px;
    right: -20.5%;
}
/* about-main-box */
.about-main-box {
    border-radius: 12px;
    background: #FFF;
    box-shadow: 2px 2px 10px 0 rgba(0, 0, 0, 0.25);
    margin-top: -6.3rem;
    position: relative;
}
.about-main-box h4 {
    font-size: clamp(22px, 2.22vw, 32px);
    border-radius: 12px 12px 0 0;
    background: #009E82;
    color: var(--white);
    text-align: center;
    font-feature-settings: 'palt' on;
    font-weight: 700;
    padding: 15px 0 18px;
}
.about-main-box .top-box {
    padding: 40px 40px 38px 40px;
}
.about-main-box .top-box p {
    font-size: clamp(16px, 1.5vw, 20px);
    font-weight: 500;
    line-height: 1.6;
}
.about-main-box .top-box strong {
    font-weight: 700;
}
.about-main-box .top-box p:nth-child(1),
.about-main-box .top-box p:nth-child(2) {
    margin-bottom: 16px;
}
/* requirement-list */
.requirement-list {
    width: fit-content;
    margin: 38px auto 0;
}
.requirement-list li {
    display: flex;
    align-items: center;
    gap: 24px;
}
.requirement-list li p:first-child {
    font-size: clamp(18px, 1.67vw, 24px);
    font-weight: 700;
    border-left: solid 6px #A3E8C5;
    padding-left: 10px;
}
/* green-wave-box */

.green-wave-box h5 {
    font-size: clamp(20px, 2.1vw, 30px);
    font-weight: 700;
    text-align: center;
    margin-bottom: 24px;
}
.green-wave-box p {
    font-size: clamp(16px, 1.5vw, 20px);
    font-weight: 500;
    line-height: 1.6;
}
.green-wave-box .yellow-marker {
    font-weight: bold;
}
.green-wave-box p.red-note {
    color: var(--red);
}
.about-three-wave {
    width: 100%;
    height: auto;
}

/* ==================================================
    get-unit
================================================== */
.get-unit {
    padding: 0 20px;
}
.get-unit h3 {
    font-size: clamp(24px, 2.5vw, 32px);
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 30px 0 42px;
}
.get-unit .blue-text-box {
    margin-right: 5px;
}
.get-unit .disc {
    position: relative;
}
.get-unit .disc::before {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border-radius: 50vh;
    background: var(--blue);
    position: absolute;
    top: -0.6rem;
    left: 50%;
    transform: translateX(-50%);
}
.get-unit p {
    font-size: clamp(16px, 2vw, 20px);
    font-weight: 500;
    line-height: 1.6;
}
.get-unit p .yellow-marker {
    font-weight: 700;
}
.get-unit p.get-note {
    font-size: clamp(13px, 1.1vw, 16px);
    margin-top: 16px;
}
/*get-unit table */
.license-table {
    width: 100%;
    margin-top: 32px;
    box-shadow: 2px 2px 10px 0 rgba(0, 0, 0, 0.25);
    border-radius: 10px;
}
.license-table thead {
    height: 102px;
}
.license-table thead th {
    border-right: 1px solid #E0E0E0;
    background: #C0DCF4;
    text-align: center;
    vertical-align: middle;
    padding: 0 16px;
}
.license-table thead tr:first-child :first-child {
    border-radius: 10px 0 0 0;
}
.license-table thead tr:first-child th:last-child {
    border-right: none;
    border-radius: 0 10px 0 0;
}
.license-table tbody th {
    border-left: 1px solid #E0E0E0;
    padding: 1rem 0.7rem;
}
.license-table tbody th,
.license-table tbody td {
    border-right: 1px solid #E0E0E0;
    border-bottom: 1px solid #E0E0E0;
    text-align: left;
    vertical-align: middle;
    padding: 1rem 0.5rem;
    line-height: 1.4;
    font-weight: 500;
}
.license-table__subject {
    background: #FEE6F3;
    line-height: 1.6;
}
.license-notes {
    margin: 24px 0 40px;
}
.license-notes p {
    font-size: clamp(13px, 1.1vw, 16px) !important;
    font-weight: 500;
}
/* ==================================================
    accordion
================================================== */
/*アコーディオン全体*/
.accordion-area {
    list-style: none;
    width: 100%;
    margin: 0 auto;
    border-radius: 16px;
    background: #E8F7FF;
    margin: 32px 0;
}
.accordion-area h3 {
    font-size: clamp(16px, 2vw, 20px);
    padding: 24px;
    justify-content: flex-start;
    margin: 0;
}
.teaching-sup {
    font-size: 0.85rem;
}
.accordion-area .dot-list {
    font-size: clamp(16px, 2vw, 20px);
    font-weight: 500;
    line-height: 1.6;
    padding-left: 1.5em;
    list-style: disc;
    list-style-position: outside;
}
.accordion-area .dot-list sup {
    font-size: 0.9rem;
}
.accordion-area .dot-list li::marker {
    font-size: 0.75rem;
}
.ac-note {
    font-size: clamp(13px, 1vw, 16px) !important;
    margin-top: 13px;
}
/* アコーディオンが開いた時のスタイル */
details[open] .icon {
    transform: rotate(180deg);
}
/*アコーディオンタイトル*/
.title {
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 3% 3% 3% 50px;
    cursor: pointer;
    position: relative;
}
.icon-wrapper {
    position: absolute;
    right: 26px !important;
    top: 50%;
    transform: translateY(-50%);
}
.icon {
    display: block;
    position: relative;
    width: 24px;
    height: 16px;
    transform-origin: center 43%;
    transition: transform 0.4s;
}

.icon::before,
.icon::after {
    content: "";
    position: absolute;
    top: 4px;
    display: block;
    width: 15px;
    height: 3px;
    background-color: #333;
}

.icon::before {
    left: 0;
    transform: rotate(45deg);
}

.icon::after {
    right: 0;
    transform: rotate(-45deg);
}

.title.close .icon {
    transform: rotate(180deg);
}
/*アコーディオンで現れるエリア*/
.box {
    display: none;
    padding: 0 24px 24px 24px;
}


/* ==================================================
    working-study
================================================== */
.working-study {
    margin-top: -3%;
}
.working-study-wrapper {
    background: var(--green-008E75);
    color: var(--white);
    padding-bottom: 13px;
    margin-top: -0.2%;
}
.working-study h3 {
    font-size: clamp(24px, 2.5vw, 32px);
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
}
.ws-check-list {
    background: var(--white);
    color: var(--black);
    display: flex;
    flex-direction: column;
    font-size: clamp(16px, 2vw, 20px);
    font-weight: 500;
    gap: 16px;
    padding: 24px 32px;
    border-radius: 10px;
    margin: 24px 0 40px;
}
.ws-check-list svg path {
    stroke-dasharray: 30;
    stroke-dashoffset: 30;
}
.ws-check-list li {
    display: flex;
    align-items: center;
    gap: 14px;
}
.working-study .white-box {
    color: var(--green-008E75);
    background: var(--white);
    padding: 7px 18px;
    margin: 0 10px;
    position: relative;
}
.ws-yellow-marker {
    display: block;
    position: relative;
    z-index: 5;
}
.ws-yellow-marker::before {
    content: "";
    display: block;
    width: 104%;
    height: 12px;
    background: var(--yellow);
    position: absolute;
    bottom: -1px;
    transform: translateX(-4px);
    z-index: -1;
}
.wave.ws-bottomwave {
    margin-top: -0.3%;
}

/* ==================================================
   teaching-license
================================================== */

.teaching-license-wrapper {
    background: var(--beige);
    padding: 0 20px;
}
.teaching-license h3 {
    font-size: clamp(24px, 2.5vw, 32px);
    font-weight: 700;
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--green-009E82);
}
.teaching-license .green-text-box {
    margin-right: 5px;
}
.teaching-license .sub-ttl {
    text-align: left;
}
/* teaching-f-flex */
.teaching-f-flex {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 40px;
    gap: 65px;
    display: grid;
    grid-template-columns: auto auto;
}
.teaching-f-ex {
    width: 450px;
    height: 168px;
    color: var(--black);
    border-radius: 8px;
    position: relative;
    background: url(../img/teaching-license/first-flex-speech.svg);
}
.teaching-f-ex.two {
    width: 450px;
    height: 200px;
    background: url(../img/teaching-license/first-second-speech.svg);
}
.teaching-f-ex.two .teaching-f-info-flex {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    position: absolute;
    left: -2rem;
    bottom: 1px;
}
.teaching-f-ex.two .teaching-f-info-flex .dot-list {
    margin: 7% 0 0 16px;
}

.t-green-label {
    font-size: clamp(14px, 1.1vw, 18px);
    background: var(--green-009E82);
    color: var(--white);
    font-weight: 500;
    border-radius: 18px;
    width: fit-content;
    padding: 5px 34px;
    position: absolute;
    top: -7%;
    left: 50%;
    transform: translate(-50%);
}
.teaching-f-info-flex {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    position: absolute;
    left: -2rem;
bottom: 2px;
}
.teaching-f-info-flex .dot-list {
    font-size: clamp(16px, 1.7vw, 20px);
    font-weight: 500;
    padding-left: 1.5em;
    list-style: disc;
    list-style-position: outside;
    line-height: 1.6;
    margin: 12% 0 0 20px;
}
.teaching-f-info-flex .dot-list li::marker {
    font-size: 0.75rem;
}
/* .first-flex-ex01 {
    position: absolute;
    bottom: 0;
    left: -3rem;
} */
/* right */
/* .teaching-f-flex .orange-ttl {
    font-size: clamp(20px, 1.4vw, 24px);
    font-weight: 700;
    position: relative;
    z-index: 5;
    width: fit-content;
    margin: 0 auto;
}
.teaching-f-flex .orange-ttl::before {
    content: "";
    width: 100%;
    height: 12px;
    position: absolute;
    bottom: 0;
    left: 0;
    background: rgba(255, 93, 2, 0.50);
    z-index: -1;
} */
.teaching-f-flex .orange-ttl {
    font-size: clamp(20px, 1.4vw, 24px);
    font-weight: 700;
    width: fit-content;
    margin: 0 auto;
}

.teaching-f-flex .orange-ttl span {
    background: linear-gradient(transparent 65%,
            rgba(255, 93, 2, 0.5) 65%);
    background-repeat: no-repeat;
    background-size: 0% 100%;

    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
}

.teaching-f-flex .orange-ttl.is-active span {
    animation: markerAnime 1.2s ease-out forwards;
}

@keyframes markerAnime {
    0% {
        background-size: 0% 100%;
    }

    100% {
        background-size: 100% 100%;
    }
}
.for-eight-ttl-wrapper {
    position: relative;
}
.for-eight-ttl-wrapper::before,
.for-eight-ttl-wrapper::after {
    content: "";
    display: block;
    width: 33%;
    height: 3px;
    background: var(--green-009E82);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    border-radius: 4px;
}
.for-eight-ttl-wrapper::before {
    left: 0;
}
.for-eight-ttl-wrapper::after {
    right: 0;
}
.for-eight-ttl {
    color: var(--green-009E82);
    font-size: clamp(16px, 1.5vw, 20px);
    font-weight: 700;
    text-align: center;
    margin-top: 24px;
}
.for-eight-credits {
    max-width: 491px;
    margin: 0 auto;
}
.for-eight-exlist {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-top: 14px;
}
.for-eight-exlist li {
    border-radius: 6px;
    border: 3px solid #009E82;
    background: #FFF;
}
.for-eight-exlist li>p:first-child {
    background: #009E82;
    color: var(--white);
    font-size: clamp(16px, 1.5vw, 20px);
    font-weight: 700;
    padding: 19px 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 70px;
    gap: 2.5px;
}
.for-eight-exlist li div {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 80px;
    font-weight: 700;
}
.for-eight-exlist li:first-child div p:nth-child(1) {
    font-size: clamp(18px, 1.6vw, 22px);
}
.for-eight-exlist li:first-child div p:nth-child(1) strong {
    font-size: clamp(32px, 3vw, 40px);
    font-weight: 700;
    transform: translateY(4px);
}
.for-eight-exlist li:nth-child(2) div p:nth-child(1) {
    font-size: clamp(18px, 1.6vw, 22px);
}
.for-eight-exlist li:nth-child(3) div p:nth-child(1) {
    font-size: clamp(16px, 1.3vw, 18px);
}
.for-eight-exlist li:nth-child(3) div p:nth-child(1) strong {
    font-size: clamp(22px, 1.8vw, 26px);
}
.for-eight-credits-note {
    font-size: clamp(12px, 1.3vw, 16px);
    font-weight: 400;
    text-align: right;
    margin-top: 8px;
}

/* teaching-q */
.teaching-q {
    border-radius: 20px;
    background: #E8F7FF;
    box-shadow: 2px 2px 10px 0 rgba(0, 0, 0, 0.25);
    margin: 40px 0 80px;
    padding: 40px 5rem 57px;
}
.teaching-q-ttl {
    position: relative;
    text-align: center;
}

.teaching-q-ttl::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    border-top: 2px dashed #4aa9df;
}
.teaching-q h4 {
    display: inline-block;
    background: #E8F7FF;
    font-size: clamp(24px, 2.5vw, 32px);
    font-weight: 700;
    position: relative;
    z-index: 5;
    padding: 0 0.5rem;
}
.teaching-q-subttl {
    font-size: clamp(16px, 1.5vw, 20px);
    font-weight: 500;
    text-align: center;
    line-height: 1.6;
    margin: 32px 0;
}
.teaching-s-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
}
.teaching-s-grid li {
    background: var(--white);
    border-radius: 10px;
    padding: 20px 0 24px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 14px;
    height: 160px;
}
.teaching-s-grid li h5 {
    font-size: clamp(18px, 1.6vw, 24px);
    font-weight: 700;
}
.teaching-s-grid li p {
    font-size: clamp(16px, 1.5vw, 20px);
    line-height: 1.6;
    text-align: center;
}
.teaching-q-summary {
    background: var(--white);
    padding: 16px 70px 16px 20px;
    border: 3px solid #0075C2;
    border-radius: 10px;
    margin-top: 60px;
    font-size: clamp(16px, 1.5vw, 20px);
    font-weight: 500;
    position: relative;
    width: 96%;
}
.teaching-q01 {
    position: absolute;
    bottom: -3rem;
    right: -3rem;
}
.teaching-license .cta-btn {
    margin-top: 40px;
}
.teach-sub-ttl {
    font-size: clamp(20px, 1.7vw, 24px);
    font-weight: 700;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 26px 0 40px;
}
.teach-sub-ttl p:first-child {
    display: flex;
    gap: 11px;
}
.teach-sub-ttl p:first-child span:first-child {
    position: relative;
}
.teach-sub-ttl p:first-child .green-text-box {
    border-radius: 2px;
}
.teach-sub-ttl p:first-child span:first-child::before {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    background: url(../img/icon/icon-stepup.svg);
    position: absolute;
    top: 50%;
    right: -1.3rem;
    transform: translateY(-50%);
}
.tl-bottom-info p {
    font-size: clamp(16px, 2vw, 20px);
    font-weight: 500;
    line-height: 1.6;
}
.tl-bottom-info p:nth-child(2) {
    margin-top: 16px;
}
.tl-bottom-info .red-note {
    color: var(--red);
}

/* ==================================================
   recommend-reasons
================================================== */

.recommend-reasons-wrapper {
    background: #E6F4FE;
    padding: 0 20px;
}
.recommend-reasons h3 {
    font-size: clamp(24px, 2.5vw, 32px);
    font-weight: 700;
    display: flex;
    justify-content: center;
    align-items: center;
}
.recommend-reasons .blue-text-box {
    margin-left: 0px;
    margin-right: 5px;
}
.recommend-reasons .disc {
    position: relative;
}
.recommend-reasons .disc::before {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border-radius: 50vh;
    background: var(--blue);
    position: absolute;
    top: -0.6rem;
    left: 50%;
    transform: translateX(-50%);
}

/* recommend-reasons-list */
.recommend-reasons-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
    margin: 62px 0 40px;
    align-items: stretch;
}
.recommend-reasons-list>li {
    background: var(--white);
    padding: 40px 20px 32px 40px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    border-radius: 8px;
    box-shadow: 2px 2px 10px 0 rgba(0, 0, 0, 0.25);
    position: relative;
}
.recommend-reasons-list>li::before {
    content: "";
    display: block;
    width: 110px;
    height: 110px;
    background-image: url(../img/recommend-reasons/badge01.svg);
    position: absolute;
    top: 0;
    left: 0;
}
.recommend-reasons-list>li img {
    width: 100%;
    height: auto;
}
.recommend-reasons-list>li:nth-child(2)::before {
    background-image: url(../img/recommend-reasons/badge02.svg);
}
.recommend-reasons-list>li:nth-child(3)::before {
    background-image: url(../img/recommend-reasons/badge03.svg);
}
.recommend-reasons-list>li h4 {
    text-align: center;
    font-size: clamp(20px, 2vw, 24px);
    font-weight: 700;
}
.recommend-reasons-list>li p {
    font-size: clamp(16px, 2vw, 20px);
    font-weight: 500;
    line-height: 1.6;
}
.reco-speech-b {
    display: flex;
    flex-direction: column;
    gap: 16px;
}
@media screen and (max-width: 768px) {
    .recommend-reasons-list {
        display: grid;
        grid-template-columns: repeat(1, 1fr);
        gap: 24px;
    }
    .recommend-reasons-list>li::before {
        width: 88px;
        height: 88px;
        background-image: url(../img/recommend-reasons/badge01-sp.svg);
    }
    .recommend-reasons-list>li:nth-child(2)::before {
        background-image: url(../img/recommend-reasons/badge02-sp.svg);
    }
    .recommend-reasons-list>li:nth-child(3)::before {
        background-image: url(../img/recommend-reasons/badge03-sp.svg);
    }
}

/* ==================================================
  license-flow
================================================== */

.license-flow {
    padding: 0 20px;
}
.license-flow h3 {
    font-size: clamp(24px, 2.5vw, 32px);
    font-weight: bold;
    display: flex;
    justify-content: center;
    flex-direction: column;
    line-height: 1.6;
    text-align: center;
    gap: 16px;
    margin: 35px 0 53px;
}
.license-flow .green-text-box {
    display: block;
    width: fit-content;
    margin: 0 auto;
    padding: 2px 8px 3px;
}

/* ==================================================
    tab_css
================================================== */
.tabs {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
    margin-top: 77px;
}

.tab {
    padding: 25px 0 12px 0;
    cursor: pointer;
    border-radius: 12px 12px 0 0;
    background: #009E82;
    color: var(--white);
    font-size: clamp(16px, 1.8vw, 24px);
    font-weight: 700;
    position: relative;
    text-align: center;
}
.tab:not(.is-active) {
    background: #C5E6E0;
    color: #55605E;
}
.tab .ad-timing {
    background: var(--white);
    color: var(--black);
    border-radius: 6px;
    border: solid 3px var(--green-009E82);
    width: fit-content;
    padding: 9px 3rem;
    position: absolute;
    top: -2.5rem;
    left: 50%;
    transform: translateX(-50%);
    font-size: clamp(16px, 1.6vw, 20px);
}
.tab:not(.is-active) .ad-timing {
    border: solid 3px #C5E6E0;
}
.tab .ad-timing::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -10px;
    transform: translateX(-50%);

    width: 0;
    height: 0;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-top: 10px solid var(--white);
}
.tab.is-active {
    background: #009E82;
    color: #fff;
}

.tab-content {
    display: none;
    padding: 32px 60px;
    border: 3px solid #009E82;
    background: var(--white);
    margin-bottom: 34px;
    position: relative;
    z-index: 5;
    isolation: isolate;
}
/* .tab-content::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #C5E6E0;
    z-index: -1;
}

.tab-content > * {
    position: relative;
    z-index: 1;
} */

.tab-content.is-active {
    display: block;
}
.tab-content.first.is-active {
    border-radius: 0 12px 12px 12px;
}
.tab-content.second.is-active {
    border-radius: 12px 0px 12px 12px;
}
/* ///// */
.tab-content .red-box {
    border-radius: 6px;
    background: #FEE6F3;
    font-size: clamp(14px, 1.5vw, 20px);
    padding: 16px;
}
.tab-content .red-box strong {
    font-size: clamp(16px, 1.6vw, 20px);
}
.tab-content .red-box p {
    font-weight: 500;
    line-height: 1.6;
    margin-top: 10px;
}

/* license-getflow-list */
.license-getflow-list-wrapper {
    position: relative;
}

.progress-border-wrapper {
    position: absolute;
    top: 12px;
    left: 10px;

    width: 3px;
    height: 93%;
    background: var(--green-009E82);
}

/* 矢印の左側 */
.progress-border-wrapper::before,
.progress-border-wrapper::after {
    content: "";
    position: absolute;
    bottom: 3px;

    width: 16px;
    height: 3px;

    background: var(--green-009E82);
}

/* ＼ */
.progress-border-wrapper::before {
    left: -12px;
    transform: rotate(45deg);
}

/* ／ */
.progress-border-wrapper::after {
    right: -12px;
    transform: rotate(-45deg);
}
.license-getflow-list {
    margin-top: 32px;
}
.license-getflow-list li {
    display: flex;
    gap: 28px;
    padding-bottom: 28px;
}
.license-getflow-list li::before {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    border: solid 3px var(--green-009E82);
    background: var(--white);
    border-radius: 50vh;
    position: relative;
    z-index: 5;
    flex-shrink: 0;
}
.license-getflow-list li:nth-child(1)::before {
    background: var(--green-009E82);
    margin-top: 10px;
}
.license-getflow-list li:nth-child(2)::before {
    background: var(--green-009E82);
    margin-top: 10px;
}
.lg-right-wrapper {
    width: 100%;
}
.lg-right-wrapper p {
    line-height: 1.6;
    font-size: clamp(16px, 1.6vw, 20px);
    font-weight: 500;
}
.license-getflow-list li h5 {
    padding: 10px 20px;
    border-radius: 4px;
    background: #009E82;
    color: var(--white);
    width: 100%;
    margin-bottom: 10px;
    position: relative;
    font-size: clamp(16px, 1.6vw, 20px);
    font-weight: 700;
}
.license-getflow-list li h5::before {
    content: "";
    position: absolute;
    top: 50%;
    left: -11px;
    transform: translateY(-50%);

    width: 0;
    height: 0;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-right: 12px solid #009E82;
}
.license-getflow-list li:nth-child(3) h5,
.license-getflow-list li:nth-child(4) h5,
.license-getflow-list li:nth-child(5) h5 {
    padding: 0;
    background: transparent;
    color: var(--black);
}
.license-getflow-bottom li:nth-child(2) h5 {
    padding: 0;
    background: transparent;
    color: var(--black);
}
.license-getflow-bottom li:nth-child(2) h5::before {
    content: none;
}
.license-getflow-bottom li:nth-child(2)::before {
    background: var(--white);
    margin-top: 0px;
}
.license-getflow-list li:nth-child(3) h5::before,
.license-getflow-list li:nth-child(4) h5::before,
.license-getflow-list li:nth-child(5) h5::before {
    content: none;
}
.lg-right-wrapper .green-box {
    border-radius: 4px;
    background: #DEFAF5;
    margin-top: 28px;
    display: flex;
    padding: 16px;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    align-self: stretch;
    position: relative;
}
.lg-right-wrapper .green-box::before {
    content: "";
    position: absolute;
    top: -12px;
    left: 20px;

    width: 0;
    height: 0;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-bottom: 12px solid #DEFAF5;
}
.lg-right-wrapper .green-box strong {
    font-size: clamp(14px, 1.5vw, 20px);
    font-weight: 700;
}
.license-getflow-bottom {
    border-radius: 12px !important;
    border: 3px solid #009E82;
    background: #FFF;
    border-radius: 0 12px 12px 12px;
    padding: 32px 60px;
    margin: 46px 0 40px;
    position: relative;
}
.license-getflow-list.bottom {
    position: relative;
}
.license-get-ttl {
    border-radius: 4px;
    background: var(--green-009E82);
    color: var(--white);
    font-size: 24px;
    font-weight: 700;
    padding: 13px 0;
    text-align: center;
}
.progress-border-wrapper.two {
    height: 70.5%;
}

.license-flow .cta-btn {
    margin-bottom: 40px;
}

/* ==================================================
  other-contents
================================================== */


.other-contents-wrapper {
    background: var(--pink);
}
.other-contents h3 {
    font-size: clamp(24px, 2.5vw, 32px);
    font-weight: bold;
    /* display: flex;
    justify-content: center;
    align-items: center; */
    text-align: center;
    line-height: 2.3;
}
.other-contents-txwrapper {
    padding: 0 20px;
}
.other-contents .pink-text-box {
    background: var(--shocking-pink);
    color: var(--white);
    padding: 4px 9px 5px;
    margin: 0 5px;
    border-radius: 2px;
}
.other-contents .disc {
    display: inline-block;
    position: relative;
}
.other-contents .disc::before {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border-radius: 50vh;
    background: var(--shocking-pink);
    position: absolute;
    top: 0.4rem;
    left: 50%;
    transform: translateX(-50%);
}
.oc-f-txt {
    font-size: 20px;
    font-size: clamp(16px, 2vw, 20px);
    font-weight: 500;
    line-height: 1.6;
    margin-top: 30px;
}
.other-note {
    font-feature-settings: 'palt' on;
    font-size: 16px;
    font-size: clamp(14px, 1.3vw, 16px);
    font-weight: 500;
    line-height: 1.6;
    margin-top: 16px;
}
.otherSwiper {
    margin: 40px 0;
    /* padding-bottom: 49px; */
}
.otherSwiper h5 {
    text-align: center;
    font-size: 28px;
    font-size: clamp(24px, 2.2vw, 28px);
    font-weight: 700;
    line-height: 1.5;
    padding-bottom: 8px;
    position: relative;
}
.otherSwiper p {
    font-feature-settings: 'palt' on;
    /* font-size: clamp(16px, 1.3vw, 20px); */
    font-size: 20px;
    font-weight: 500;
    line-height: 1.6;
}
.otherSwiper small {
    font-feature-settings: 'palt' on;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.6;
}
.otherSwiper h5 small {
    display: block;
    font-size: 70%;
}
.otherSwiper .title-wrap {
    position: relative;
    width: 100%;
}
.otherSwiper .swiper-wrapper {
    align-items: stretch;
}
.otherSwiper .swiper-slide {
    background: var(--white);
    display: flex;
    width: 380px;
    height: auto;
    padding: 24px 16px 16px;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    align-self: stretch;
    border-radius: 10px;
    box-shadow: 1px 1px 10px 0 rgba(0, 0, 0, 0.25);
}
.otherSwiper .swiper-slide img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}
.swiper-pagination {
    position: static;
    margin-top: 24px;
}
.swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    margin: 0 5px !important;
}
.swiper-pagination-bullet-active {
    background: var(--shocking-pink);
    opacity: var(--swiper-pagination-bullet-opacity, 1);
}
.swiper-button-next,
.swiper-button-prev {
    content: "";
    display: block;
    width: 40px;
    height: 40px;
    filter: drop-shadow(0 0 6px rgba(0, 0, 0, 0.25));
}
.swiper-button-prev {
    background: url(../img/icon/icon-prev.svg);
    left: 7.7rem !important;
}
.swiper-button-next {
    background: url(../img/icon/icon-next.svg);
    right: 7.7rem !important;
}
.swiper-button-prev svg,
.swiper-button-next svg {
    display: none !important;
}
/* ==================================================
  reasonable
================================================== */
.reasonable {
    padding: 0 20px;
}
.reasonable h3 {
    font-size: clamp(24px, 2.5vw, 32px);
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 35px;
}
.reasonable .cta-btn {
    margin-bottom: 40px;
}
.reasonable .yellow-m-ttl {
    font-size: clamp(18px, 1.8vw, 24px);
}
.blue-text-box {
    display: block;
    background: var(--blue);
    color: var(--white);
    padding: 4px 9px 8px;
    margin-left: 8px;
}
/* re-total-list */
.re-total-list {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    margin: 40px 0 45px;
    font-size: clamp(14px, 2vw, 20px);
    font-weight: 700;
}
.re-total-list .total-box {
    padding: 9px 28px 11px 29px;
    border-radius: 4px;
}
.re-total-list .total-box:first-child {
    background: #C0DCF4;
}
.re-total-list .total-box:nth-child(3),
.re-total-list .total-box:nth-child(5) {
    background: #DAE2EB;
}
/* リーズナブルtable */
.tuition-table {
    width: 100%;
    margin: 40px 0 24px;
    box-shadow: 2px 2px 10px 0 rgba(0, 0, 0, 0.25);
    border-radius: 10px;
    font-size: clamp(13px, 1.78vw + 6.33px, 20px);
}
.tuition-table__col-student {
    width: 29%;
}
.tuition-table__col-admission {
    width: 50%;
}

.tuition-table__col-tuition {
    width: 23%;
}
.tuition-table thead th {
    text-align: center;
    padding: 12px 20px;
    border-right: solid 1px #E4EFF2;
}
.tuition-table thead th:nth-child(1) {
    background: var(--blue);
    color: var(--white);
    border-radius: 10px 0px 0px 0px;
}
.tuition-table thead th:nth-child(2) {
    background: var(--gray-blue);
}
.tuition-table thead th:nth-child(3) {
    background: var(--gray-blue);
    border-radius: 0px 10px 0px 0px;
}
.tuition-table tbody th {
    padding: 16px 24px;
    border: solid 1px #E4EFF2;
    border-left: none;
    border-top: none;
}
.tuition-table tbody td {
    vertical-align: middle;
    border: solid 1px #E4EFF2;
    border-left: none;
    border-top: none;
    text-align: center;
}
.tuition-table__list {
    list-style-type: disc;
    font-weight: 500;
    line-height: 1.6;
    margin: 0;
    padding-left: 20px;
    list-style-position: outside;
    margin-top: 5px;
}
.tuition-table__list li::marker {
    font-size: 0.85rem;
}
/* tuition-table__admission-fee */
.tuition-table__admission-fee {
    display: flex;
    justify-content: center;
    align-items: center;
    vertical-align: middle;
    gap: 24px;
}
.tuition-table__normal-fee,
.tuition-table__discount-fee {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 8px;
}
.tuition-table__normal-fee span,
.tuition-table__discount-fee span {
    display: block;
}
.tuition-table__normal-fee strong,
.tuition-table__discount-fee strong {
    display: block;
    font-weight: 500;
}
.tuition-table__discount-fee strong {
    color: var(--red);
}
.tuition-table__tuition {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 12px;
}
.r-normal-note {
    font-size: clamp(16px, 2vw, 20px);
    font-weight: 500;
    line-height: 1.6;
    margin-bottom: 16px;
}
.r-red-note {
    color: var(--red);
    font-size: clamp(16px, 2vw, 20px);
    font-weight: 500;
    line-height: 1.6;
    margin-bottom: 40px;
}
.tuition-table-scroll-icon {
    display: none;
}
.license-table-scroll-icon {
    display: none;
}

@media screen and (max-width: 1024px) {
    .tuition-table-wrap {
        position: relative;
    }
    .license-table-wrap {
        position: relative;
    }
    .tuition-table-scroll {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        padding-left: 5px;
    }
    .license-table-scroll {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        padding-left: 5px;
    }

    .tuition-table {
        min-width: 548px;
    }
    .tuition-table tbody th {
        padding: 16px 16px;
    }
    .license-table-scroll {
        padding-bottom: 15px;
    }
    .license-table {
        min-width: 1000px;
    }
    .license-table thead tr th {
        padding: 14px 0;
        line-height: 1.4;
    }
    .f-last-th {
        padding: 0 16px !important;
    }

    .tuition-table-scroll-icon {
        display: block;
        position: absolute;
        top: 50%;
        left: 45%;
        transform: translateY(-50%);
        z-index: 10;
        transition: opacity 0.3s;
    }
    .license-table-scroll-icon {
        display: block;
        position: absolute;
        top: 50%;
        left: 45%;
        transform: translateY(-50%);
        z-index: 10;
        transition: opacity 0.3s;
    }

    .tuition-table-scroll-icon.is-hidden {
        opacity: 0;
        pointer-events: none;
    }
    .license-table-scroll-icon.is-hidden {
        opacity: 0;
        pointer-events: none;
    }
}

/* ==================================================
  admission-flow
================================================== */

.admission-flow-wrapper {
    background: var(--light-green);
}
.admission-flow h3 {
    font-size: clamp(24px, 2.5vw, 32px);
    font-weight: 700;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
}
.green-text-box {
    display: block;
    background: var(--green-009E82);
    color: var(--white);
    padding: 4px 8px 5px;
    border-radius: 2px;
}

/* 「教養学部入学」における流れをご紹介 */
.af-list-wrapper {
    background: var(--white);
    color: var(--black);
    padding: 24px;
    border-radius: 8px;
    margin: 40px 0;
}
.admission-flow-box {
    counter-reset: flow;
    list-style: none;
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.admission-flow-box::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 14px;
    width: 2px;
    background: var(--green-009E82);
}
.admission-flow-box li {
    counter-increment: flow;
    display: flex;
    gap: 16px;
}
.admission-flow-box li::before {
    content: counter(flow);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: 2px solid #008E75;
    border-radius: 50%;
    background: var(--white);
    color: #008E75;
    font-weight: 700;
    position: relative;
    z-index: 10;
    gap: 16px;
    font-family: var(--font-en);
    font-size: clamp(16px, 2vw, 20px);
    font-weight: 700;
    flex-shrink: 0;
}
.admission-flow-box .af-flow-ttl {
    font-size: clamp(16px, 2vw, 20px);
    font-weight: 700;
}
.af-flow-ttl {
    margin-top: 2px;
}
.af-flow-text {
    font-size: clamp(16px, 2vw, 20px);
    font-weight: 500;
    line-height: 1.6;
    margin-top: 7px;
}
/* yellow-m-ttl */
.yellow-m-ttl {
    font-size: clamp(20px, 2.2vw, 24px);
    font-weight: bold;
    line-height: 1.6;
    text-align: center;
}
/* btn-box */
.af-btn-box {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 45px;
    padding: 40px 0 80px;
}
.admission-flow .cta-btn {
    margin: 0;
}
.pdf-btn {
    color: var(--orange);
    font-size: 18px;
    font-weight: 700;
    display: flex;
    min-width: 371px;
    height: 79px;
    justify-content: center;
    align-items: center;
    border-radius: 8px;
    border: 3px solid #FF5E02;
    background: #FFF;
    box-shadow: 2px 2px 10px 0 rgba(0, 0, 0, 0.25);
    position: relative;
}
.pdf-btn::after {
    content: "";
    display: block;
    width: 12.3px;
    height: 20.5px;
    background: url(../img/icon/orange-arrow.svg);
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    right: 7%;
    transform: translateY(-50%);
}
.pdf-btn:hover {
    background: var(--orange);
    color: var(--white);
}
.pdf-btn:hover::after {
    background: url(../img/icon/white-arrow.svg);
}

/* ==================================================
  howto-study
================================================== */

.howto-study {
    padding: 0 20px;
}

.howto-study h3 {
    font-size: clamp(24px, 2.5vw, 32px);
    font-weight: 700;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 40px;
}
.howto-study .cta-btn {
    margin-bottom: 40px;
}
.howto-study .green-text-box {
    margin: 0 8px;
}
.howto-study .disc {
    position: relative;
}
.howto-study .disc::before {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border-radius: 50vh;
    background: var(--green-009E82);
    position: absolute;
    top: -0.6rem;
    left: 50%;
    transform: translateX(-50%);
}
/* howto-study-list */
.howto-study-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
    margin: 40px 0 32px;
}
.howto-study-list>li {
    border: solid 3px var(--green-009E82);
    border-radius: 8px;
}
.howto-study-list h4 {
    background: var(--green-009E82);
    color: var(--white);
    font-size: clamp(18px, 1.7vw, 24px);
    font-weight: 700;
    padding: 12px 0;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
}
.howto-study-list h4 .number {
    display: flex;
    justify-content: center;
    align-items: center;
    background: var(--white);
    color: var(--green-009E82);
    font-weight: 700;
    width: 36px;
    height: 36px;
    border-radius: 50vh;
    font-size: clamp(16px, 2vw, 20px);
}
.howto-study-list .bottom-wrapper {
    font-size: clamp(16px, 2vw, 20px);
    padding: 24px;
}
.howto-study-list .bottom-wrapper .first-text {
    font-weight: 500;
    line-height: 1.6;
}
.howto-study-list .bottom-wrapper .second-text {
    font-size: clamp(14px, 1.5vw, 16px);
    line-height: 1.6;
}
.howto-dot-list {
    margin: 0;
    padding: 0;
    list-style: none;
}
.howto-dot-list li {
    position: relative;
    padding-left: 22px;
    font-weight: 500;
    line-height: 1.6;
}
.howto-dot-list li::before {
    content: "";
    position: absolute;
    top: 0.8em;
    left: 4px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #00a78d;
    transform: translateY(-50%);
}
.howto-study-list .category-ttl {
    font-weight: 500;
    margin-bottom: 8px;
}
.howto-study-list-icon {
    width: 100%;
    height: auto;
}

.howto-study-flow {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 13px;
    margin: 35px 0 20px;
}
.howto-study-flow-second {
    margin: 35px 0 25px;
}
.howto-study-flow li {
    border: solid 3px var(--green-009E82);
    border-radius: 6px;
    padding: 18px 24px 24px;
    font-size: 16px;
    font-weight: 500;
    line-height: 160%;
    text-align: center;
}
.howto-study-flow-second li {
    border: solid 3px var(--green-009E82);
    border-radius: 6px;
    padding: 24px 40px 13px;
    max-width: 230px;
    margin: 0 auto;
    position: relative;
}

.howto-study-flow li:nth-child(1) {
    font-weight: 700;
    line-height: 1.2;
    position: relative;
}
.howto-study-flow li:nth-child(1) .green-label {
    background: var(--green-009E82);
    color: var(--white);
    font-size: 16px;
    padding: 3px 13px;
    border-radius: 28px;
    position: absolute;
    top: -1rem;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
}
.howto-study-flow-second li .green-label {
    background: var(--green-009E82);
    color: var(--white);
    font-size: 16px;
    font-weight: 700;
    padding: 8px 25px;
    border-radius: 28px;
    position: absolute;
    top: -1.4rem;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
}
.howto-study-flow li:nth-child(1) {
    position: relative;
}
.howto-study-flow li:nth-child(1)::before {
    content: "";
    display: block;
    width: 29px;
    height: 29px;
    background: url(../img/icon/icon-plus.svg);
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    top: 50%;
    right: -1.45rem;
    transform: translateY(-50%);
    z-index: 5;
}
.howto-study-flow li:nth-child(2) {
    position: relative;
}
.howto-study-flow li:nth-child(2)::before {
    content: "";
    display: block;
    width: 29px;
    height: 29px;
    background: url(../img/icon/icon-plus.svg);
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    top: 50%;
    right: -1.45rem;
    transform: translateY(-50%);
    z-index: 5;
}
.howto-study-flow-second p {
    font-size: clamp(16px, 2vw, 20px);
    font-weight: 700;
    text-align: center;
    margin-top: 8px;
}
.howto-study-flow-second p small {
    font-size: 85%;
    font-weight: 400 !important;
}
.howto-study-flow li:nth-child(1) .main-text {
    margin-top: 14px;
}
.howto-study-flow li:nth-child(2),
.howto-study-flow li:nth-child(3) {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* ==================================================
  footer
================================================== */
footer {
    background: var(--white);
    padding: 24px 0 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 14px;
}
footer a {
    transition: 0.3s;
}
footer a:hover {
    opacity: 0.7;
}


/* ==================================================
    他セクション
================================================== */



/* ==================================================
    レスポンシブ
================================================== */

@media (min-width: 1024px) and (max-width: 1500px) {
    .about-main-box {
        margin-top: -4rem;
    }
}
@media (min-width: 1024px) {
    .for-eight-exlist li {
        min-width: 150px;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1250px) {
    /* recommend-reasons */
    .recommend-reasons-list>li::before {
        width: 90px;
        height: 90px;
    }
    .recommend-reasons-list {
        gap: 18px;
    }
}
/* タブレット */
@media screen and (min-width: 769px) and (max-width: 1100px) {
    /* about */
    .about-main-box {
        margin-top: -3.3rem;
    }
    .about-purpose-list li:first-child .purpose-list-img {
        bottom: -21px;
        left: -12%;
        width: 30%;
    }
    .about-purpose-list li:nth-child(2) .purpose-list-img {
        bottom: -25px;
        right: -16.5%;
        width: 37%;
    }
    /* howto-study */
    .howto-study-list .bottom-wrapper {
        padding: 16px;
    }
    .howto-study-list {
        gap: 25px;
    }
    .howto-study-flow li {
        padding: 18px 14px 24px;
    }
    /* recommend-reasons */
    .recommend-reasons-list>li::before {
        width: 75px;
        height: 75px;
    }
    .recommend-reasons-list {
        gap: 18px;
    }
    /* other-content */
    .swiper-button-next,
    .swiper-button-prev {
        top: var(--swiper-navigation-top-offset, 43%) !important;
    }
    .swiper-button-next {
        background: url(../img/icon/icon-next.svg);
        right: 1.2rem !important;
    }
    .swiper-button-prev {
        background: url(../img/icon/icon-prev.svg);
        left: 1.2rem !important;
    }
    /* teaching-license */
    .for-eight-credits {
        max-width: 491px;
        margin: 0 auto;
    }
}
@media screen and (max-width: 890px) {
    .teaching-license-wrapper {
        padding: 0 16px;
    }
    .teaching-license h3 {
        flex-direction: column;
        gap: 8px;
    }
    .tl-spttl-flex {
        display: flex;
        align-items: center;
    }
    .teach-sub-ttl {
        font-size: clamp(18px, 1.7vw, 24px);
        margin: 14px 0 35px;
    }
    .teaching-license .sub-ttl {
        margin-top: 20px;
    }
    .tl-sp-ttlflex {
        display: flex;
        align-items: center;
    }
    .teaching-f-flex {
        grid-template-columns: repeat(1, 1fr);
        margin-top: 19px;
        gap: 20px;
    }
    .teaching-f-flex.two {
        margin-top: 36px;
    }
    .teaching-f-flex .right {
        width: 100%;
        text-align: center;
    }
    .teaching-f-flex .orange-ttl {
        display: inline;
        text-align: center;
        line-height: 1.6;
    }
    .teaching-f-ex {
        max-width: 343px;
        height: 171px;
        background: url(../img/teaching-license/first-flex-speech-sp.svg);
        margin: 0 auto;
    }
    .teaching-f-info-flex {
        flex-direction: row-reverse;
        left: 0rem;
        bottom: 16px;
    }
    .first-flex-ex01 {
        width: 103px;
        height: 155px;
    }
    .for-eight-exlist li>p:first-child {
        height: 50px;
    }
    .for-eight-exlist li div {
        height: 60px;
    }
    .t-green-label {
        padding: 9px 34px;
        top: 4%;
    }
    .for-eight-exlist {
        gap: 6px;
    }
    .teaching-q {
        padding: 36px 16px 37px;
        margin: 30px 0 40px;
    }
    .teaching-q01 {
        position: absolute;
        bottom: -1.3rem;
        right: -1rem;
        width: 33%;
    }
    .teaching-s-grid {
        grid-template-columns: repeat(1, 1fr);
        gap: 16px;
    }
    .teaching-s-grid li {
        height: 121px;
    }
    .teaching-sup {
        font-size: 0.65rem;
    }
    .teaching-f-ex.two {
        max-width: 343px;
        height: 180px;
        background: url(../img/teaching-license/first-second-speech-sp.svg);
        margin: 0 auto;
    }
    .teaching-f-ex.two .teaching-f-info-flex {
        flex-direction: row;
        position: static;
    }
    .teaching-f-ex.two .t-green-label {
        padding: 9px 34px;
        top: -9%;
    }
    .teaching-f-ex.two .teaching-f-info-flex {
        padding: 0.4rem 4px;
    }
    .teaching-f-ex.two .teaching-f-info-flex .dot-list {
        margin: 7% 0 0 0;
    }
    .teaching-license .cta-btn {
        margin-top: 30px;
    }
}
@media screen and (min-width: 600px) and (max-width: 768px) {
    /* 全体 */
    .cta-btn {
        width: 70% !important;
        height: 66px;
        gap: 4px;
    }
    /* fv */
    .fv-left h1 {
        font-size: 30px;
    }
    .fv-circle-list li {
        filter: none;
        box-shadow: 2px 2px 10px rgba(5, 70, 34, 0.18);
        width: 26vw !important;
        font-size: 24px !important;
    }
    .fv-sp-bottom-wrapper {
        background: var(--light-green);
    }
    .fv-sp-bottom {
        width: 68% !important;
        margin: 0 auto;
    }
    /* about */
    .about-purpose-list li {
        font-size: 24px;
    }
    .about-purpose-list li p {
        text-align: center;
    }
    .about-purpose-list li:first-child .purpose-list-img {
        position: absolute;
        bottom: -3px;
        left: -4%;
        width: auto !important;
        height: auto !important;
    }
    .about-purpose-list li:nth-child(2) .purpose-list-img {
        position: absolute;
        bottom: -3px;
        right: -4.5% !important;
        width: auto !important;
        height: auto !important;
    }
    .threetypes-intotal {
        width: 79% !important;
        height: auto;
    }
    /* recommend-reasons */
    .recommend-reasons-list>li img {
        width: 54%;
        height: auto;
        margin: 0 auto;
    }
}
/* スマホ */
@media screen and (max-width: 768px) {
    /* 全体 */
    .cta-btn {
        width: 100%;
        height: 66px;
        gap: 4px;
    }
    .sub-ttl {
        text-align: left;
        margin-top: 26px;
    }
    /* header */
    header {
        padding: 8px 16px 16px 16px;
    }
    header img {
        width: 151px;
        height: auto;
    }
    /* fv */
    .fv {
        background-image: none;
        padding-bottom: 0;
    }
    .fv_wrapper {
        flex-direction: column;
        padding: 24px 16px 0px;
        position: relative;
        background-image: url("../img/fv/kv_sp.png");
        background-size: 100% 100%;
        background-repeat: no-repeat;
        background-position: center top;
        padding-bottom: 0rem;
    }
    .fv_wrapper .top-box {
        gap: 12px;
    }
    .fv-sp-bottom {
        display: flex;
        flex-direction: column;
        gap: 9px;
        padding: 0 16px;
        background: var(--light-green);
    }
    .fv-cta-btn {
        width: 100%;
        height: 67px;
        margin-top: 46px;
    }
    .fv-cta-btn .diagonal-speech {
        padding: 7px 12px;
        top: -1.5rem;
    }
    .fv-left h1 {
        align-items: center;
    }
    .fv-left h1 .white-box {
        height: 32px;
        padding: 0 1.2rem;
    }
    .fv-right img {
        display: block;
        width: 88%;
        height: auto;
        margin: 0 auto;
    }
    .fv-circle-list-wrapper {
        margin-top: 0rem;
        padding: 0 16px;
    }
    .fv-circle-list {
        margin-top: -5rem;
    }
    .fv-circle-list li {
        flex: 0 0 26vw;
        width: 26vw;
        aspect-ratio: 1;
        transform: none;
    }
    .fv-circle-list li+li {
        margin-left: -14px;
    }
    .fv-circle-list li:nth-child(1) {
        z-index: 2;
    }
    .fv-circle-list li:nth-child(2) {
        z-index: 5;
        border: solid 1px var(--green-009E82);
    }
    .fv-circle-list li:nth-child(3) {
        z-index: 3;
    }
    .fv-circle-list small {
        font-size: 80%;
    }
    .fv-note {
        text-align: left;
        line-height: 1.8;
        margin-top: 18px;
        padding-bottom: 32px;
    }
    /* about */
    .threetypes-intotal {
        width: 100%;
        height: auto;
    }
    .about-green-back h3 {
        font-size: 20px;
        line-height: 1.6;
    }
    .about-green-back h3 strong {
        font-size: 28px;
    }
    .about-green-back {
        padding: 0 16px 40px;
    }
    .about-main-box .top-box {
        padding: 16px;
        padding-bottom: 24px;
    }
    .green-wave-box {
        padding: 20px 16px 24px;
    }
    .about-purpose-list {
        grid-template-columns: repeat(1, 1fr);
        padding: 0 2rem;
        gap: 26px;
        margin-top: 26px;
    }
    .about-main-box {
        margin-top: -31px;
    }
    .about-main-box-wrapper {
        padding: 0 16px;
    }
    .about-purpose-list li:first-child {
        padding: 6% 20%;
    }
    .about-purpose-list li:nth-child(2) {
        padding: 6% 16% 6% 9%;
    }
    .about-purpose-list li p {
        text-align: center;
    }
    .requirement-list li p:first-child {
        padding: 10px 0 10px 10px;
    }
    .for-eight-exlist li {
        min-width: auto;
    }
    /* working-study */
    .working-study {
        margin-top: -8%;
    }
    .working-study-wrapper {
        padding: 0 16px;
        margin-top: -1px;
    }
    .working-study h3 {
        flex-direction: column;
        gap: 14px;
    }
    .ws-sp-ttlflex {
        display: flex;
        align-items: center;
    }
    .working-study .white-box {
        padding: 7px 5px;
        margin: 0 5px 0 0;
    }
    .ws-check-list {
        margin: 24px 0 30px;
        /* padding: 16px; */
        padding: 16px 0px 16px 12px;
        gap: 8px;
    }
    .ws-check-list li {
        line-height: 1.6;
        align-items: flex-start;
    }
    .ws-check-list li svg {
        margin-top: 5px;
    }
    .requirement-list {
        margin: 24px 0 0;
    }
    .ws-bottomwave {
        margin-top: -1px;
    }
    /* get-unit */
    .get-unit {
        padding: 0 16px;
    }
    .get-unit h3 {
        margin: 30px 0 30px;
    }
    .accordion-area h3 {
        margin-top: 24px;
        margin-bottom: 0px;
    }
    .accordion-area {
        margin: 24px 0;
        border-radius: 10px;
    }
    .icon {
        width: 21px;
        height: 8px;
    }
    .icon::before,
    .icon::after {
        width: 13px;
    }
    .get-unit .disc::before {
        width: 7px;
        height: 7px;
    }
    .accordion-area .dot-list sup {
        font-size: 0.6rem;
    }
    .license-table {
        margin-top: 24px;
    }
    .license-notes {
        margin: 16px 0 24px;
    }
    /* other-contents */
    .swiper-button-next,
    .swiper-button-prev {
        top: var(--swiper-navigation-top-offset, 47%) !important;
    }
    .swiper-button-next {
        right: 0.3rem !important;
    }
    .swiper-button-prev {
        left: 0.3rem !important;
    }
    /* teaching-license */
    .teaching-q-summary {
        padding: 18px 59px 18px 16px;
        margin-top: 24px;
        line-height: 1.6;
        display: flex;
        justify-content: center;
    }
    .teaching-q-summary span {
        display: block;
        width: fit-content;
    }
    /* license-flow */
    .license-flow {
        padding: 0 16px;
    }
    .license-flow h3 {
        font-size: 18px;
        gap: 10px;
        margin: 35px 0 34px;
    }
    .license-flow h3 .green-text-box {
        font-size: clamp(24px, 2.5vw, 32px);
    }
    .license-getflow-bottom {
        padding: 0px 16px 24px;
        margin: 32px 0 30px;
    }
    .license-flow .cta-btn {
        margin-bottom: 24px;
    }
    .license-get-ttl {
        padding: 13px;
        text-align: left;
        line-height: 1.6;
        display: flex;
        justify-content: center;
    }
    .yellow-m-ttl.lt-adjust {
        letter-spacing: -0.01em;
    }
    /* tab */
    .tabs {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 7px;
        margin-top: 54px;
    }
    .tab-content {
        margin-bottom: 32px;
    }
    .tab-content .red-box p {
        line-height: 1.6;
    }
    .tab .ad-timing {
        width: 63%;
        padding: 8px 0.5rem;
        position: absolute;
        top: -1.7rem;
    }
    .tab .ad-timing::after {
        bottom: -8px;
        border-left: 4px solid transparent;
        border-right: 4px solid transparent;
        border-top: 9px solid var(--white);
    }
    .tab-content {
        padding: 24px 16px 0px;
    }
    .license-getflow-list li {
        gap: 20px;
    }
    .license-getflow-list li::before {
        width: 18px;
        height: 18px;
    }
    .progress-border-wrapper {
        left: 8px;
    }
    .lg-right-wrapper .green-box p {
        font-size: 14px;
    }
    .progress-border-wrapper::before,
    .progress-border-wrapper::after {
        width: 11px;
        height: 3px;
    }
    .progress-border-wrapper::before {
        left: -8px;
        transform: rotate(45deg);
    }
    .progress-border-wrapper::after {
        right: -8px;
        transform: rotate(-45deg);
    }
    .lg-right-wrapper .green-box {
        margin-top: 16px;
        padding: 12px;
    }
    .progress-border-wrapper.two {
        height: 65.5%;
    }
    .license-getflow-list {
        margin-top: 24px;
    }
    .license-getflow-list li {
        padding-bottom: 16px;
    }
    /* recommend-reasons */
    .recommend-reasons-wrapper {
        padding: 0 16px;
    }
    .recommend-reasons .disc::before {
        width: 7px;
        height: 7px;
        top: -0.6rem;
    }
    .recommend-reasons h3 {
        padding-top: 6px;
    }
    .recommend-reasons-list {
        margin: 32px 0 40px;
    }
    .recommend-reasons-list>li {
        padding: 36px 16px 24px 24px;
        height: auto;
    }
    .reco-speech-b {
        display: flex;
        flex-direction: column;
        gap: 14px;
        width: 91%;
        transform: translateX(-5px);
    }
    .recommend-reasons .cta-btn {
        padding-bottom: 5px;
    }
    /* howto-study */
    .howto-study {
        padding: 0 16px;
    }
    .howto-study-list {
        grid-template-columns: repeat(1, 1fr);
        margin: 24px 0 40px;
        gap: 24px;
    }
    .howto-study .disc::before {
        width: 7px;
        height: 7px;
    }
    .howto-study-list .bottom-wrapper {
        padding: 20px 12px 24px 12px;
    }
    .howto-study-flow {
        gap: 6px;
        margin: 30px 0px 20px;
    }
    .howto-study-flow li {
        padding: 1rem 0.1rem;
        font-size: 14px;
    }
    .howto-study-flow li:nth-child(1) {
        position: relative;
    }
    .howto-study-flow li:nth-child(1)::before {
        content: "";
        display: block;
        width: 22px;
        height: 22px;
        background: url(../img/icon/icon-plus.svg);
        background-repeat: no-repeat;
        background-size: cover;
        position: absolute;
        top: 50%;
        right: -1.05rem;
        transform: translateY(-50%);
        z-index: 5;
    }
    .howto-study-flow li:nth-child(2) {
        position: relative;
    }
    .howto-study-flow li:nth-child(2)::before {
        content: "";
        display: block;
        width: 22px;
        height: 22px;
        background: url(../img/icon/icon-plus.svg);
        background-repeat: no-repeat;
        background-size: cover;
        position: absolute;
        top: 50%;
        right: -1.05rem;
        transform: translateY(-50%);
        z-index: 5;
    }
    .howto-study-list-icon {
        width: 82%;
        height: auto;
    }
    .howto-study-flow li:nth-child(1) .main-text {
        margin-top: 6px;
    }
    .howto-study-list .bottom-wrapper .first-text {
        margin-bottom: 8px;
    }
    .howto-study-flow-second li {
        padding: 24px 24px 13px;
        max-width: 176px;
    }
    .howto-study-flow-second li .green-label {
        padding: 6px 18px;
        top: -1.2rem;
    }
    .howto-study-flow-second {
        margin: 26px 0 21px;
    }
    .howto-study .cta-btn {
        margin-bottom: 24px;
    }
    /* other-contents */
    .other-contents h3 {
        font-size: 22px;
    }
    .other-contents .disc::before {
        content: "";
        display: block;
        width: 7px;
        height: 7px;
        border-radius: 50vh;
        background: var(--shocking-pink);
        position: absolute;
        top: 0.2rem;
        left: 50%;
        transform: translateX(-50%);
    }
    .other-contents-txwrapper {
        padding: 0px;
    }
    .other-contents-txtbox {
        padding: 0 16px;
    }
    .otherSwiper {
        margin: 26px 0 33px;
        overflow: hidden;
    }
    .otherSwiper p {
        font-size: 16px;
    }
    .otherSwiper small {
        font-size: 14px;
    }
    .other-cta-wrapper {
        padding: 0 16px;
    }
    .oc-f-txt {
        margin-top: 24px;
    }
    .other-note {
        margin-top: 8px;
    }
    .swiper-pagination-bullet {
        width: 7px;
        height: 7px;
        margin: 0 3px !important;
    }
    /* reasonable */
    .reasonable {
        padding: 0 16px;
    }
    .re-total-list {
        gap: 14px;
        margin: 24px 0;
    }
    .re-total-list .total-box {
        padding: 13px 1.25rem;
    }
    .re-total-list li:nth-child(2) img {
        width: 16px;
        height: 12px;
    }
    .re-total-list li:nth-child(4) img {
        width: 16px;
        height: 16px;
    }

    .tuition-table {
        margin: 32px 0 24px;
    }
    .reasonable .cta-btn {
        margin-bottom: 24px;
    }
    .r-normal-note {
        margin-top: 5px;
    }
    /* admission-flow */
    .admission-flow-wrapper {
        padding: 0 16px;
    }
    .af-list-wrapper {
        padding: 20px 16px;
    }
    .admission-flow .sub-ttl {
        text-align: center;
    }
    /* .admission-flow-box li::before {
    width: 23px;
    height: 23px;
} */
    .af-flow-ttl {
        margin-top: 4px;
    }
    .admission-flow-box {
        gap: 12px;
    }
    .af-list-wrapper {
        margin: 21px 0 24px;
    }
    .af-btn-box {
        padding: 40px 0px 74px;
        flex-direction: column;
        gap: 20px;
    }
    .pdf-btn {
        min-width: auto;
        width: 70%;
        height: 66px;
    }
    /* footer */
    footer img {
        width: 151px;
        height: 30px;
    }
}
@media screen and (max-width: 599px) {
    /* admission-flow */
    .pdf-btn {
        min-width: auto;
        width: 100%;
        height: 66px;
    }
    .about-purpose-list li:first-child .purpose-list-img {
        position: absolute;
        bottom: -3px;
        left: -6%;
        width: 94px;
        height: auto;
    }
    .about-purpose-list li:nth-child(2) .purpose-list-img {
        position: absolute;
        bottom: -3px;
        right: -7.5%;
        width: 118px;
        height: auto;
    }
}
@media screen and (max-width: 550px) {
    /* about */
    .about-purpose-list {
        grid-template-columns: repeat(1, 1fr);
        padding: 0 2rem;
        gap: 40px;
        margin-top: 26px;
    }
    .about-purpose-list li:first-child .purpose-list-img {
        width: 86px;
    }
    .about-purpose-list li:nth-child(2) .purpose-list-img {
        width: 112px;
    }
    /* teaching */
    .teaching-q-summary {
        display: block;
    }
    /* license-flow */
    .lg-right-wrapper .green-box::before {
        top: -9.5px;
    }
}
@media screen and (max-width: 430px) {
    /* fv */
    .fv-circle-list li {
        flex: 0 0 32vw;
        width: 32vw;
        max-width: 126px;
        aspect-ratio: 1;
    }
    /* about */
    .about-purpose-list {
        grid-template-columns: repeat(1, 1fr);
        padding: 0 2rem;
        gap: 26px;
        margin-top: 26px;
    }
    .about-main-box {
        margin-top: -6rem;
    }
    .about-purpose-list li:first-child .purpose-list-img {
        position: absolute;
        bottom: -3px;
        left: -12%;
    }
    .about-purpose-list li:first-child .purpose-list-img {
        width: 70px;
        height: 106px;
    }
    .about-purpose-list li:nth-child(2) .purpose-list-img {
        position: absolute;
        bottom: -3px;
        right: -11.5%;
        width: 89px;
        height: 109px;
    }
}
@media screen and (max-width: 360px) {
    /* fv */
    .fv-left h1 .white-box {
    font-size: clamp(13px, 1.4vw, 20px);
}
    /* about */
    .about-purpose-list {
        padding: 0 1.3rem;
    }
    .about-purpose-list li:first-child {
        padding: 6% 13%;
    }
    .about-purpose-list li:nth-child(2) {
        padding: 6% 16% 6% 8%;
    }
    .about-green-back h3 {
        font-size: 17px;
    }
    .about-main-box h4 {
        font-size: 20px;
    }
    /* working-study */
    .working-study h3 {
        font-size: 21px;
    }
    /* teaching */
    .teaching-f-ex {
        width: calc(100vw - 32px);
        max-width: none;
        height: 148px;
        background-size: 100% 100%;
    }
    .first-flex-ex01 {
        width: 81px;
        height: auto;
    }
    .teaching-f-ex.two .t-green-label {
        padding: 9px 34px;
        top: -2%;
    }
    .teaching-f-ex.two .teaching-f-info-flex .dot-list {
        margin: 0;
    }
    .teaching-f-ex.two .teaching-f-info-flex {
        position: static;
        display: flex;
        justify-content: center;
        align-items: center;
        padding-top: 29px;
    }
    .teaching-f-ex.two {
        width: calc(100vw - 32px);
        max-width: none;
        max-height: 197px;
        background-size: 100% 100%;
    }
    .teaching-f-info-flex .dot-list {
        font-size: 14px;
        margin: 8% 0 0 17px;
    }
    .teaching-q-summary {
        font-size: 14px;
    }
    /* get-unit */
    .get-unit h3 {
        font-size: 21px;
    }
    /* howto-study */
    .howto-study h3 {
        font-size: 22px;
    }
    /* license-flow */
    .license-get-ttl {
       font-size: 20px;
    }
    /* recommend-reasons */
    .recommend-reasons h3 {
        font-size: 22px;
    }
    /* other-contents */
    .other-contents h3 {
        font-size: 18px;
    }
    /* reasonable */
    .re-total-list .total-box {
        padding: 13px 0.8rem;
    }
    .yellow-m-ttl {
        font-size: 18px;
    }
}