@charset "UTF-8";



@media (min-width: 768px) {

    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    .h1,
    .h2,
    .h3,
    .h4,
    .h5,
    .h6 {
        margin-top: 3em;
        margin-bottom: 0.8em;
        clear: both;
    }
}


/* ──────────────── 追加 ──────────────── */



/* パーツ */
@media (min-width: 768px) {

    .post-thumbnail {
        margin-bottom: 3.8rem;
    }

    h2 {
        padding: 0 0 1.4rem 0.08em;
        margin: 9rem 0 3.6rem;
        font-size: 3rem;
        letter-spacing: 0.08em;
        background-size: auto 4.2rem;
    }

    h2::before {
        height: 0.2rem;
    }

    h3 {
        padding: 0.8rem 1.8rem;
        margin: 5.6rem 0 1.8rem;
        font-size: 2.6rem;
        letter-spacing: 0.08em;
    }

    h4 {
        padding: 0 0 1.4rem 1em;
        margin: 3.3rem 0 1.4rem;
        font-size: 2rem;
        letter-spacing: 0.08em;
    }

    h4::after {
        height: 0.6rem;
        background-size: 0.9rem 0.9rem;
    }

    .parts-mokuji {
        display: flex;
        flex-direction: column;
        height: 500px;
        flex-wrap: wrap;
    }

    .subtit {
        font-size: 1.8rem;
        margin: 2.1rem 0 1.2rem;
    }

    .subtit::before {
        width: 1.4rem;
        height: 1.4rem;
    }

    .caution {
        font-size: 1.2rem;
    }

    .full-img {
        margin: 36px 0;
    }

    .box-ttl {
        font-size: 2rem;
    }

    .box-ttl:has(.num-c) {
        padding-left: 43px;
    }

    .num-c {
        width: 36px;
        font-size: 2rem;
        top: -1px;
    }

    .check-list li::before {
        width: 20px;
        top: 5px;
    }

    #contents_wp table {
        font-size: 1.6rem;
    }

    #contents_wp table th {
        padding: 1.6rem 2rem;
    }

    #contents_wp table td {
        padding: 1.6rem 2rem;
    }

    .simplelbox {
        padding: 22px;
    }

    #contents_wp ol:not([class]) {
        padding-left: 3rem;
        margin-bottom: 26px;
    }

    #contents_wp ul:not([class]) {
        padding-left: 1.3rem;
    }

    .grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .quotebox::before,
    .quotebox::after {
        width: 6em;
        height: 6em;
    }

    .quotebox::before {
        background-position: top 17% left 35%;
        background-size: 2.4em;
    }

    .fukidashi {
        font-size: 2rem;
        padding: 16px 26px;
    }

    .matomebox {
        padding: 22px;
    }

    .matomebox-tit {
        font-size: 2rem;
    }

    .surveybox {
        font-size: 1.6rem;
        padding: 22px;
    }

    .hosokubox {
        font-size: 1.6rem;
        padding: 22px;
    }

    .c-btn,
    .c-btn_pink {
        font-size: 1.8rem;
    }

    .c-btn a,
    .c-btn_pink a {
        border-radius: 2.4rem;
    }

    .taglist li {
        font-size: 1.6rem;
    }

    .jumplist {
        grid-template-columns: repeat(3, 1fr);
    }

    .jumplist a {
        border-radius: 2.4rem;
    }

    .jumplist li:nth-child(odd) a {
        background: var(--bs-secondary);
    }

    .jumplist li:nth-child(even) a {
        background: var(--bs-blue-300);
    }

    .numlist {
        gap: 16px;
    }

    .numlist-tit {
        font-size: 2rem;
    }

    .numlist-num::before {
        font-size: 3.2rem;
    }

    .rank span {
        font-size: 1.6rem;
    }

    .rank a {
        font-size: 2rem;
    }

    .ranking-catch {
        font-size: 1.6rem;
    }

    .ranking-i .ranking a {
        font-size: 2rem;
    }

    .scrolltable thead th {
        width: 240px;
    }

    .scrolltable thead th:not(.scrolltable thead th:first-of-type) {
        width: 280px;
    }

    .scrolltable .c-btn {
        width: 100%;
    }

    .flow {
        padding: 3.2rem 3.4rem;
    }

    .flow-tit {
        font-size: 2.4rem;
        margin-bottom: 1.4rem;
    }

    .flow-num {
        width: 4rem;
        height: 4rem;
    }

    .flow-num:before {
        font-size: 2.2rem;
    }

    .picup-wrap {
        display: grid;
        gap: 12px 8px;
        grid-template-columns: repeat(4, 1fr);
    }

    .picup-tit {
        font-size: 2rem;
        padding: 16px 26px;
    }

    .picup-post-ttl {
        font-size: 1.6rem;
    }

    .faqQ {
        padding: 20px 55px 20px 25px
    }

    .faqQ__btn {
        right: 20px;
    }

    .faqA {
        padding: 20px 25px;
    }

    .review-wrap {
        min-width: 76%;
    }

    .review-name {
        font-size: 1.6rem;
    }

    .review-course {
        font-size: 1.6rem;
    }

    .review-bottom {
        display: flex;
        align-items: flex-start;
        gap: 12px;
    }

    .review-bottom img {
        width: 37%;
        flex-shrink: 0;
    }

    .review-bottom-inner {
        margin-top: 0;
    }

    /* ポジショニング */
    .posMap {
        margin-bottom: 36px;
    }

    .posMap__top-ttl {
        font-size: 2.2rem;
        padding: 16px 26px;
        line-height: 1.2;
    }

    .posMap__top-subTtl {
        font-size: 2rem;
    }

    .posMap__top-notes {
        font-size: 1.2rem;

    }

    .posMap__inner {
        width: 55%;
        margin: 0 auto;
    }

    .posMap__inner::before {
        right: 6%;
    }

    .posMap__item-02::before {
        background-size: auto 32px;
        width: 40px;
        height: 32px;
        top: -74%;
    }

    .posMap__item {
        padding: 8px 12px;
    }

    .posMap__label-01,
    .posMap__label-02 {
        font-size: 18px;
        width: 48px;
        height: 48px;
    }

    .posMap__label-03,
    .posMap__label-04 {
        font-size: 16px;
        padding: 8px;
    }

    .posMap__item-logo {
        height: 32px;
    }

    .tab {
        font-size: 1.6rem;
    }

    .map-ttl {
        font-size: 2rem;
        padding: 16px 26px;
        width: 80%;
        margin-left: auto;
        margin-right: auto;
    }

    .map-cont {
        width: 80%;
        margin: 0 auto;
    }

    .shindan {
        padding: 30px 50px;
    }

    .shindan-txt {
        font-size: 18px;
    }

    .shindan-ttl,
    .shindan-faq-box.result .ttl {
        font-size: 2.2rem;
    }

    .shindan-faq-box .select-wrap .select {
        font-size: 16px;
    }

    .shindan-faq-box .ttl {
        font-size: 18px;
    }

    .shindan .btn-wrap button {
        font-size: 16px;
    }

    .shindan2 {
        padding: 30px 50px;
    }

    .shindan2-ttl {
        font-size: 2.2rem;
    }

    .shindan2-txt {
        font-size: 18px;
    }

    .shindan2 .choices-list {
        width: fit-content;
        min-width: 70%;
    }

    #contents_wp .shindan2-btn a {
        font-size: 16px;
        transition: 0.4s;
    }

    .shindan2-btn a:hover {
        opacity: .6;
    }

    .shindan2 .faq-q_ttl,
    .shindan2 .faq-a_ttl {
        font-size: 2.2rem;
    }

    .post-date {
        font-size: 1.6rem;
    }

    .shindan3-faq-ttl {
        flex-direction: column;
        text-align: center;
        font-size: 2.2rem;
    }

    .shindan3-faq-ttl-q {
        padding: 10px 15px;
        margin-bottom: 20px
    }

    .shindan-item:hover {
        background-color: #f0fbfb;
        transition: background-color 0.3s;
    }

    .shindan3-result {
        text-align: center;
    }

    .shindan-result-wrap {
        padding: 30px 20px;
    }

    #result-q2,
    #result-q3 {
        display: block;
        text-align: center;
    }

    #result-base {
        font-size: 3.5rem;
        line-height: 45px;
        padding: 12px auto;
    }

    #result-base a:visited {
        color: var(--bs-primary) !important;
    }

    #result-base a:hover {
        opacity: 0.5;
        transition: opacity 0.3s;
    }

    #result-img-wrap {
        width: 880px;
        margin: 25px auto 25px auto;
    }

    #result-img-wrap img:hover {
        opacity: 0.7;
        transition: opacity 0.3s;
    }

    .shindan-retry button:hover {
        background-color: #e9a4ab;
        transition: background-color 0.3s;
    }


    .scrollBoxImg {
        padding: 26px 40px;
    }


    .scrollBoxImg-list li:last-child::after {
        width: 40px;
    }

    .scrollBoxImg-list img {
        height: 300px;
    }

    .scrollBoxImg-ttl .num {
        width: 2em;
    }

    .scrollBoxImg-list {
        gap: 24px;
    }


}