@charset "UTF-8"; :root {
    --tryBlue: #1F3B9E;
    --white: #fff;
}

.seminar p, .seminar h1, .seminar h2, .seminar h3, .seminar table, .seminar tbody {
    line-height: 1.4;
    letter-spacing: 0.04em;
}

.seminar em {
    font-style: normal;
}

.seminar table {
    border-collapse: collapse;
    border-spacing: 0;
}

.seminar img {
    width: 100%;
    height: auto;
    display: block;
}

.seminar h1, .seminar h2, .seminar h3 {
    margin: 0;
    color: var(--tryBlue);
    font-weight: bold;
}

.seminar p, .seminar th, .seminar td span {
    margin: 0;
    /* font-size: 12px; */
    color: #333;
    font-family: "Noto Sans JP", sans-serif;
}

@media screen and (min-width: 768px) {
    .seminar p, .seminar th, .seminar td span {
        font-size: 24px;
    }
}

body {
    margin: 0;
}

.seminar {
    max-width: 750px;
    margin: 0 auto;
}

/* -- kv -- */
.seminar .kv p {
    font-size: 13px;
    text-align: center;
    padding: 10px;
    letter-spacing: rem;
    color: var(--tryBlue);
    font-weight: bold;
}

/* --cta -- */
.seminar .cta {
    background-color: #FAFAD9;
    padding: 18px 20px 22px;
}

.seminar .cta p {
    font-size: 21px;
    font-weight: 800;
    color: var(--tryBlue);
    line-height: 1.26;
    text-align: center;
    margin-bottom: 16px;
}

.seminar .cta span {
    color: #F06E00;
}

.seminar .cta .num {
    font-size: 32px;
    letter-spacing: -0.03em;
    margin-right: 3px;
    line-height: 1.1;
}

.seminar .vta .sec {
    font-size: 22px;
}

@media screen and (min-width: 768px) {
    .seminar .kv p {
        font-size: 24px;
        padding: 22px;
    }

    .seminar .cta {
        padding: 34px 20px 42px;
        ; }

    .seminar .cta p {
        font-size: 42px;
        margin-bottom: 29px;
    }

    .seminar .cta .num {
        font-size: 60px;
    }

    .seminar .cta img {
        max-width: 660px;
        margin: 0 auto;
    }
}

/* --開催概要 -- */
.summary {
    padding: 30px 5% 29px;
    border-top: solid 1px #CCCCCC;
    border-bottom: solid 1px #CCCCCC;
    margin: 0 auto;
    width: 100%;
}

.heading_ttl {
    font-size: 20px;
    color: var(--white)!important;
    background-color: var(--tryBlue);
    padding: 8px 16px 10px!important;
    width: 100%;
    margin: 0 auto 20px!important;
}

.participate .heading_ttl {
    margin: 0 auto 0!important;
}

.seminar table {
    margin: 21px 0 17px;
    width: 100%;
}

.seminar table th {
    background-color: #F2F2F2;
    font-weight: 700;
    padding: 8px 8px;
    width: 24%;
}

.seminar table td {
    padding: 10px 12px 11.5px;
    font-size: 14px;
    font-weight: 900;
    color: var(--tryBlue);
}

.seminar table td span {
    font-weight: 400;
}

@media screen and (min-width: 768px) {
    .summary {
        padding: 65px 40px 60px;
    }

    .heading_ttl {
        font-size: 36px;
        padding: 20px 32px 24px;
    }

    .seminar table {
        margin: 40px 0 14px;
    }

    .seminar th {
        padding: 8px 8px 10px!important;
    }

    .seminar td {
        padding: 10px 12px 12px!important;
        font-size: 24px!important;
    }
}

/* -- こんな不安 -- */
.anxiety {
    background-color: #F2F2F2;
    margin: 0 auto;
    width: 100%;
}

.anxiety_cont {
    padding: 30px 0 0;
}

.anxiety_cont h2 {
    padding: 0;
    width: 85%;
    margin: 0 auto 13px;
}

.anxiety_points {
    background-color: #64AAFF;
    border-radius: 8px;
    padding: 14px 24px 28px;
    margin: 0 auto;
    width: 90%;
}

.anxiety_point {
    font-weight: bold;
    display: flex;
    gap: 8px;
    border-bottom: 1px solid var(--white)!important;
    padding: 10px 0 12px;
}

.anxiety_point:last-child {
    border-bottom: none!important;
}

.anxiety_point p {
    color: var(--white);
    font-size: 14px;
}

.anxiety_point::before {
    content: "";
    display: block;
    background-image: url("/seminar/img/check.png");
    width: 20px;
    height: 20px;
    background-size: contain;
    background-repeat: no-repeat;
}

.anxiety_point span {
    color: #FFFF00;
}

.anxiety_img {
    margin-top: -43px;
}

@media screen and (min-width: 768px) {
    .anxiety_cont {
        padding: 62px 40px 0;
    }

    .anxiety_points {
        border-radius: 13px;
        padding: 26px 48px 47px;
        margin-top: 32px;
    }

    .anxiety_point {
        gap: 16px;
        border-bottom: 2px solid var(--white);
        padding: 23px 0;
    }

    .anxiety_point p {
        font-size: 26px;
    }

    .anxiety_point::before {
        width: 32px;
        height: 40px;
    }

    .anxiety_img {
        margin-top: -90px;
    }
}

/* セミナーなら */
.feature {
    background-image: url("/seminar/img/block_bg.png");
    background-repeat: repeat;
}

.feature_points {
    padding: 4px 20px 24px;
}

.feature_point {
    display: flex;
    gap: 16px;
    border-bottom: 1px solid var(--tryBlue);
    padding: 16px 0 14px;
}

.feature_point:last-child {
    border-bottom: none;
}

.feature_point img {
    width: 54px;
    height: 60px;
}

.feature_point_heading {
    font-size: 20px;
    font-weight: bold;
    color: var(--tryBlue)!important;
}

.feature_point_detail {
    font-size: 14px;
    line-height: 1.6!important;
    margin-top: 2px!important;
}

@media screen and (min-width: 768px) {
    .feature_points {
        padding: 8px 40px 49px;
    }

    .feature_point {
        gap: 32px;
        border-bottom: 2px solid var(--tryBlue);
        padding: 32px 0;
    }

    .feature_point img {
        width: 106px;
        height: 120px;
    }

    .feature_point_heading {
        font-size: 40px;
    }

    .feature_point_detail {
        font-size: 29px;
    }
}

/* -- 今、中学受験は大きく変わっています -- */
.changes_examinations {
    background-image: url("/seminar/img/block_bg.png");
    background-repeat: repeat;
    padding-bottom: 40px;
}

.changes_examinations h2 {
    text-align: center;
    font-size: 23px;
    padding: 0 20px;
    margin-top: 14px;
    line-height: 1.4;
}

h2.changes_examinations_ttl {
    font-size: 26px;
    color: var(--white);
    margin-top: -155px;
}

.changes_examinations_details {
    display: flex;
    gap: 13px;
    margin-top: 23px;
    padding: 0 20px;
}

.changes_examinations_detail {
    background-color: var(--white);
    border: 1px solid var(--tryBlue);
    padding: 18px 12px;
    box-shadow: 0 7px 12px #1e5a820f;
}

.changes_examinations_detail .heading {
    font-size: 15px;
    font-weight: bold;
    color: var(--tryBlue);
    text-align: center;
}

.changes_examinations_detail .detail {
    font-size: 10px;
    margin-top: 10px;
}

.changes_examinations h3 {
    font-size: 14px;
    color: #333;
    text-align: center;
    margin-top: 30px;
    padding: 0 20px;
}

@media screen and (min-width: 768px) {
    .changes_examinations {
        padding-bottom: 65px;
    }

    .changes_examinations h2 {
        font-size: 49px;
        margin-top: 20px;
    }

    h2.changes_examinations_ttl {
        font-size: 48px;
        margin-top: -310px;
    }

    .changes_examinations_details {
        gap: 24px;
        margin-top: 45px;
        padding: 0 40px;
    }

    .changes_examinations_detail {
        border: 2px solid var(--tryBlue);
        padding: 29px 24px;
        box-shadow: 0 7px 12px #1e5a820f;
    }

    .changes_examinations_detail .heading {
        font-size: 31px;
    }

    .changes_examinations_detail .detail {
        font-size: 19px;
        margin-top: 23px;
    }

    .changes_examinations h3 {
        font-size: 27px;
        margin-top: 62px;
        line-height: 1.5;
    }
}

/* -- 中学受験対策 -- */
.countermeasure {
    background-color: #EEF6FD;
    padding: 40px 20px;
}

.countermeasure_border {
    border: 2px solid var(--tryBlue);
    width: 60px;
    margin: 18px auto 0;
}

.countermeasure h2 {
    font-size: 24px;
    text-align: center;
    line-height: 1.3;
}

.countermeasure h2 span {
    font-size: 32px;
}

.countermeasure_point {
    background-color: var(--white);
    border-radius: 20px;
    padding: 0 20px 28px;
    box-shadow: 0 7px 12px #1e5a8230;
    margin-top: 30px;
}

.countermeasure_point .point {
    font-size: 14px;
    color: var(--white);
    border-radius: 0 0 8px 8px;
    background-color: #64AAFF;
    padding: 6px 0 8px;
    text-align: center;
    width: 108px;
    margin: 0 auto 16px;
    font-weight: bold;
}

.countermeasure_point .heading {
    font-size: 20px;
    margin-top: 20px;
    letter-spacing: 0;
    font-weight: bold;
    color: var(--tryBlue);
    text-align: center;
    line-height: 1.3;
}

.countermeasure_point .detail {
    font-size: 14px;
    margin-top: 5px;
    line-height: 1.6;
}

@media screen and (min-width: 768px) {
    .countermeasure {
        padding: 82px 40px;
    }

    .countermeasure_border {
        border: 4px solid var(--tryBlue);
        width: 111px;
        margin: 36px auto 0;
    }

    .countermeasure h2 {
        font-size: 48px;
    }

    .countermeasure h2 span {
        font-size: 64px;
    }

    .countermeasure_point {
        border-radius: 30px;
        padding: 0 40px 60px;
        box-shadow: 0 7px 12px #1e5a8230;
        margin-top: 60px;
    }

    .countermeasure_point .point {
        font-size: 27px;
        border-radius: 0 0 16px 8px;
        padding: 11px 0 17px;
        width: 216px;
        margin: 0 auto 32px;
    }

    .countermeasure_point .heading {
        font-size: 39px;
        margin-top: 35px;
    }

    .countermeasure_point .detail {
        font-size: 28px;
        margin-top: 23px;
    }
}

/* -- 登壇者の紹介 -- */
.speaker_introduction {
    background-image: url("/seminar/img/introduction_bg.png");
    background-size: cover;
    padding: 30px 20px;
}

.speaker_introduction h3 {
    color: var(--white);
    font-size: 24px;
    text-align: center;
}

.speaker {
    background-color: #182E4C;
    border: 1px solid #DCC878;
    width: 100%;
    margin-top: 24px;
}

.profile {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 20px 18px;
}

.name {
    font-weight: bold;
}

.name p:first-of-type {
    background-color: #DCC878;
    color: #182E4C;
    width: 161px;
    height: 23px;
    text-align: center;
    padding-top: 2px;
    font-size: 12px;
}

.name p:nth-of-type(2) {
    color: var(--white);
    font-size: 24px;
    margin-top: 4px;
}

.person {
    width: 110px;
    height: 110px;
}

.career {
    background-color: #0F1E32;
    padding: 12px 20px 12px;
}

.career p {
    font-size: 13px;
    line-height: 1.8;
    color: var(--white);
}

@media screen and (min-width: 768px) {
    .speaker_introduction {
        padding: 64px 40px;
    }

    .speaker_introduction h3 {
        font-size: 47px;
    }

    .speaker {
        border: 2px solid #DCC878;
        width: 666px;
        margin-top: 46px;
    }

    .profile {
        padding: 40px 40px 36px;
    }

    .name p:first-of-type {
        width: 320px;
        height: 43px;
        padding-top: 4px;
        font-size: 24px!important;
    }

    .name p:nth-of-type(2) {
        font-size: 48px!important;
        margin-top: 9px;
    }

    .person {
        width: 220px;
        height: 220px;
    }

    .career {
        padding: 24px 40px 22px;
    }

    .career p {
        font-size: 26px;
    }
}

/* -- 参加方法 -- */
.participate {
    padding: 30px 20px 31px;
    font-weight: bold;
}

.participate_step {
    display: flex;
    gap: 8px;
    border-bottom: 1px solid #CCCCCC;
    padding: 20px 0;
}

.participate_step:nth-of-type(3) {
    border-bottom: none;
}

.participate_step p {
    font-size: 17px!important;
}

.participate_step::before {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    background-size: contain;
    background-repeat: no-repeat;
}

.participate_step:first-of-type::before {
    background-image: url("/seminar/img/participate_step01.png");
}

.participate_step:nth-of-type(2)::before {
    background-image: url("/seminar/img/participate_step02.png");
    width: 30px;
}

.participate_step:nth-of-type(3)::before {
    background-image: url("/seminar/img/participate_step03.png");
}

.participate_steps_txt {
    font-size: 19px;
    color: var(--tryBlue)!important;
    text-align: center;
}

@media screen and (min-width: 768px) {
    .participate {
        padding: 60px 40px 68px;
    }

    .participate_step {
        gap: 16px;
        border-bottom: 2px solid #CCCCCC;
        padding: 40px 0;
    }

    .participate_step p {
        font-size: 34px!important;
    }

    .participate_step::before {
        width: 48px;
        height: 48px;
    }

    .participate_step:nth-of-type(2)::before {
        width: 60px;
    }

    .participate_steps_txt {
        font-size: 38px!important;
    }
}

@media all and (max-width: 374px) {
    .seminar .kv p {
        font-size: 11px;
    }

    .seminar table th {
        width: 36%;
    }

    .anxiety_point p br {
        display: none;
    }

    .feature_point_heading br {
        display: none;
    }

    h2.changes_examinations_ttl {
        font-size: 24px;
        margin-top: -140px;
    }

    .changes_examinations_detail .heading {
        font-size: 12px;
    }

    .changes_examinations h3 {
        font-size: 12px;
    }

    .changes_examinations h2 {
        font-size: 20px;
    }

    .countermeasure h2 {
        font-size: 22px;
    }

    .countermeasure_point .heading {
        font-size: 16px;
    }

    .feature_point_heading {
        font-size: 17px;
    }

    .feature_point_detail {
        font-size: 12px;
    }

    .name p:first-of-type {
        width: 135px;
        height: 19px;
        font-size: 10px;
    }

    .person {
        width: 80px;
        height: 80px;
    }

    .participate_step p {
        font-size: 14px;
    }

    .participate_steps_txt {
        font-size: 16px;
    }

    .participate_step::before {
        width: 20px;
        height: 20px;
    }
}
