@charset "UTF-8";
/* education/wings01.phpのスタイル */
p, li {
    font-weight: lighter;
}
/* ===============================================
                SPスタイル
=============================================== */
@media screen and (max-width: 768px) {

    /* ↓↓↓ === ページ内共通 === ↓↓↓ */
    .sec_ttl {
        width: 100%;
        font-size: 2.4rem;
        font-weight: 700;
        font-style: italic;
        color: #002D69;
        text-align: center;
    }
    .sec_lead {
        width: 100%;
        margin-top: 0.5rem;
        font-style: italic;
        font-weight: bold;
        text-align: center !important
    }
    /* ↑↑↑ === ページ内共通 === ↑↑↑ */

    .wings02_sec01 h3 {
        text-align: center;
    }
    .wings02_sec01 h3 span {
        display: block;
    }
    .wings02_sec01 .sub-ttl {
        margin-top: 2.64rem;
        font-style: italic;
    }
    .wings02_sec01 .title-32 {
        margin: 1rem auto;
    }
    .wings02_sec01 p:nth-child(2) {
        margin-top: 1rem;
    }
    .wings02_sec01 .sec-desc {
        box-sizing: border-box;
        width: 100%;
        padding: 0 10px;
        margin-top: 30px;
        text-align: justify;
    }

    .wings02_sec01 .grid_wrap {
        width: 100%;
        overflow-x: scroll;
    }
    .wings02_sec01 .grid {
        min-width: 800px;
        padding: 0 10px;
        overflow-x: scroll;
        display: grid;
        grid-template-columns: repeat(7, 1fr);
        grid-template-areas:
        ". tA tA tB tB tC tC"
        "tD cE cE cE cE . ."
        "tD cF cG cG . . ."
        "tD cH cH cH cH cH cH"
        "tI cJ cK cK . . ."
        "tI cL cL cL cL cL cL"
        "tM cN cN cN cN . ."
        "tO cP cP cP cP . ."
        "tO cQ cQ cR cR . ."
        "tO cS cS cT cT cT cT"
        "tO . . cU cU cU cU"
        "tV . . . . cW cX";
        gap: 4px; /* 罫線 */
        margin-top: 30px;
        overflow: hidden;
    }
    .cell {
        padding: 4px 8px;
        font-weight: bold;
        color: #fff;
    }
    .ttl_a {grid-area: tA;background:#e53178;}
    .ttl_b {grid-area: tB;background:#f29519;position:relative}
    .ttl_c {grid-area: tC;background:#42af35;}
    .ttl_d {grid-area: tD;}
    .cntnt_e {grid-area: cE;background:#00a5e9;}
    .cntnt_f {grid-area: cF;background:#00a5e9}
    .cntnt_g {grid-area: cG;background:#00a5e9}
    .cntnt_h {grid-area: cH;background:#00a5e9}
    .ttl_i {grid-area:tI;}
    .cntnt_j {grid-area: cJ;background:#0085cc;}
    .cntnt_k {grid-area: cK;background:#0085cc;}
    .cntnt_l {grid-area: cL;background:#0085cc;}
    .ttl_m {grid-area: tM;}
    .cntnt_n {grid-area: cN;background:#0085cc;}
    .ttl_o {grid-area: tO;}
    .cntnt_p {grid-area: cP;background:#006bb7;}
    .cntnt_q {grid-area: cQ;background:#006bb7;}
    .cntnt_r {grid-area: cR;background:#006bb7;}
    .cntnt_s {grid-area: cS;background:#006bb7;}
    .cntnt_t {grid-area: cT;background:#006bb7;}
    .cntnt_u {grid-area: cU;background:#006bb7;}
    .ttl_v {grid-area: tV;}
    .cntnt_w {grid-area: cW;background:#1c367e;}
    .cntnt_x {grid-area: cX;background:#1c367e;}

    .ttl_b:before {
        content: "";
        width: 2px;
        height: calc(42px * 13);
        border: 2px dotted rgba(131, 147, 187, .7);
        position: absolute;
        top: 0;
        left: -4px;
        z-index: -1;
    }
    .ttl_b:after {
        content: "";
        width: 2px;
        height: calc(42px * 13);
        border: 2px dotted rgba(131, 147, 187, .7);
        position: absolute;
        top: 0;
        right: -4px;
        z-index: -1;
    }

    .ttl_d, .ttl_i, .ttl_m,
    .ttl_o, .ttl_v {
        display: flex;
        justify-content: center;
        align-items: center;
        background:#fff;
        border:1px solid #002D69;
        border-radius: 10px;
        color:#002D69;
    }
    div[class^="cntnt_"] {
        border-radius: 10px;
    }


    .wings02_sec01 .figs {
        margin-top: 3rem;
    }
    .figs figure:last-child {
        margin-top: 1rem;
    }
    .figs figcaption {
        font-size: 1.6rem;
        font-weight: lighter;
        text-align: left;
    }


    .wings02_sec02 {
        margin-top: 6rem;
    }
    .learnig_stages div {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        margin-top: 3rem;
        width: 100%;
    }
    .learnig_stages div h4,
    .learnig_stages div h5,
    .learnig_stages div ol,
    .learnig_stages div li,
    .learnig_stages div p {
        width: 100%;
    }
    .learnig_stages div h4 {
        padding: 0.5rem 0;
        font-weight: 700;
        color: #fff;
        text-align: center;
    }
    .learnig_stages .stage01 h4 { background: #1192e2; }
    .learnig_stages .stage02 h4 { background: #1f62b4; }
    .learnig_stages .stage03 h4 { background: #1d266a; }

    .learnig_stages div h5 {
        margin-top: 1rem;
        font-weight: 500;
        color: #002D69;
        text-align: left;
    }
    .learnig_stages div h5:last-child {
        margin-top: 3rem;
    }
    .learnig_stages div li,
    .learnig_stages div p {
        box-sizing: border-box;
        padding-left: 1rem;
        margin-bottom: 2rem;
        text-align: justify;
    }
    .learnig_stages div li {
        box-sizing: border-box;
        width: calc( 100% - 2rem );
        margin-left: 2rem;
        position: relative;
    }
    .learnig_stages div li:before {
        content: "●";
        display: flex;
        justify-content: center;
        align-items: center;
        position: absolute;
        top: 0;
        left: -1rem;
    }

    .the_goal {
        display: flex;
        justify-content: center;
        align-items: center;
        box-sizing: border-box;
        width: 90% !important;
        height: 42px;
        padding: 0.5rem 0;
        position: relative;
    }
    .the_goal:after {
        content: "";
        display: block;
        width: 10%;
        height: 100%;
        clip-path: polygon(0 0, 0% 100%, 100% 50%);
        position: absolute;
        top: 0%;
        left: 99.9%;
    }
    .the_goal span:first-child {
        padding: 0.1rem 2rem;
        display: block;
        margin-right: 1rem;
        border-radius: 2rem;
    }
    .the_goal span:last-child {
        display: block;
        color: #fff;
    }

    .stage01 .the_goal, .stage01 .the_goal:after {
        background: #1192e2;
        color: #fff;
    }
    .stage01 .the_goal span:first-child {
        background: #fff;
        color: #1192e2;
    }

    .stage02 .the_goal, .stage02 .the_goal:after {
        background: #1f62b4;
        color: #fff;
    }.stage02 .the_goal span:first-child {
        background: #fff;
        color: #1f62b4;
    }

    .stage03 .the_goal, .stage03 .the_goal:after {
        background: #1d266a;
        color: #fff;
    }.stage03 .the_goal span:first-child {
        background: #fff;
        color: #1d266a;
    }

    .wings02_sec02 .figs {
        margin-top: 3rem;
    }
    .figs figure {
        margin-top: 2rem;
    }
    .figs figure:first-child {
        margin-top: 0;
    }
    .figs figcaption {
        font-size: 1.6rem;
        font-weight: 500;
        color: #002D69;
        text-align: left;
    }
    .figs figure:nth-child(2) span {
        font-size: 1.4rem;
        margin-left: 1.5rem;
    }
    .figs figure:nth-child(3) {
        position: relative;
    }
    .figs figure:nth-child(3):after {
        content: "※中・高6年間で2回実施予定";
        text-align: left;
        font-size: 1.4rem;
        color: #333;
        position: absolute;
        left: 0;
        bottom: -2.2rem;
    }
    .figs figure:nth-child(3) figcaption {
        display: flex;
        justify-content: space-between;
    }
    .figs figure:nth-child(3) span {
        display: block;
        width: 50%;
    }
    .figs figure:nth-child(3) span:last-child {
        text-align: right;
    }

}


/* ===============================================
                PCスタイル
=============================================== */
@media screen and (min-width: 769px) {

    /* ↓↓↓ === 共通 === ↓↓↓ */
    .sec_ttl {
        width: 100%;
        font-size: 2.4rem;
        font-weight: 700;
        font-style: italic;
        color: #002D69;
        text-align: center;
    }
    .sec_lead {
        width: 100%;
        margin-top: 0.5rem;
        font-style: italic;
        font-weight: bold;
    }
    /* ↑↑↑ === 共通 === ↑↑↑ */

    .wings02_sec01 h3 {
        text-align: center;
    }
    .wings02_sec01 h3 span {
        display: block;
    }
    .wings02_sec01 .sub-ttl {
        font-style: italic;
    }
    .wings02_sec01 .title-32 {
        margin-bottom: 1rem;
    }
    .wings02_sec01 .sec-desc {
        margin-top: 30px;
        text-align: justify;
    }

    .wings02_sec01 .grid {
        min-width: 800px;
        display: grid;
        grid-template-columns: repeat(7, 1fr);
        grid-template-areas:
        ". tA tA tB tB tC tC"
        "tD cE cE cE cE . ."
        "tD cF cG cG . . ."
        "tD cH cH cH cH cH cH"
        "tI cJ cK cK . . ."
        "tI cL cL cL cL cL cL"
        "tM cN cN cN cN . ."
        "tO cP cP cP cP . ."
        "tO cQ cQ cR cR . ."
        "tO cS cS cT cT cT cT"
        "tO . . cU cU cU cU"
        "tV . . . . cW cX";
        gap: 4px; /* 罫線 */
        margin-top: 30px;
        overflow: hidden;
    }
    .cell {
        padding: 4px 8px;
        font-weight: bold;
        color: #fff;
    }
    .ttl_a {grid-area: tA;background:#e53178;}
    .ttl_b {grid-area: tB;background:#f29519;position:relative}
    .ttl_c {grid-area: tC;background:#42af35;}
    .ttl_d {grid-area: tD;}
    .cntnt_e {grid-area: cE;background:#00a5e9;}
    .cntnt_f {grid-area: cF;background:#00a5e9}
    .cntnt_g {grid-area: cG;background:#00a5e9}
    .cntnt_h {grid-area: cH;background:#00a5e9}
    .ttl_i {grid-area:tI;}
    .cntnt_j {grid-area: cJ;background:#0085cc;}
    .cntnt_k {grid-area: cK;background:#0085cc;}
    .cntnt_l {grid-area: cL;background:#0085cc;}
    .ttl_m {grid-area: tM;}
    .cntnt_n {grid-area: cN;background:#0085cc;}
    .ttl_o {grid-area: tO;}
    .cntnt_p {grid-area: cP;background:#006bb7;}
    .cntnt_q {grid-area: cQ;background:#006bb7;}
    .cntnt_r {grid-area: cR;background:#006bb7;}
    .cntnt_s {grid-area: cS;background:#006bb7;}
    .cntnt_t {grid-area: cT;background:#006bb7;}
    .cntnt_u {grid-area: cU;background:#006bb7;}
    .ttl_v {grid-area: tV;}
    .cntnt_w {grid-area: cW;background:#1c367e;}
    .cntnt_x {grid-area: cX;background:#1c367e;}

    .ttl_b:before {
        content: "";
        width: 2px;
        height: calc(42px * 13);
        border: 2px dotted rgba(131, 147, 187, .7);
        position: absolute;
        top: 0;
        left: -4px;
        z-index: -1;
    }
    .ttl_b:after {
        content: "";
        width: 2px;
        height: calc(42px * 13);
        border: 2px dotted rgba(131, 147, 187, .7);
        position: absolute;
        top: 0;
        right: -4px;
        z-index: -1;
    }

    .ttl_d, .ttl_i, .ttl_m,
    .ttl_o, .ttl_v {
        display: flex;
        justify-content: center;
        align-items: center;
        background:#fff;
        border:1px solid #002D69;
        border-radius: 10px;
        color:#002D69;
    }
    div[class^="cntnt_"] {
        border-radius: 10px;
    }

    .wings02_sec01 .figs {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        width: 100%;
        margin-top: 30px;
    }
    .wings02_sec01 .figs figure {
        width: calc( 50% - 10px );
    }
    .wings02_sec01 .figs figcaption {
        font-size: 1.4rem;
        text-align: left;
        color: #666;
    }



    .wings02_sec02 {
        margin-top: 60px;
    }
    .wings02_sec02 .learnig_stages {
        display: flex;
        justify-content: space-between;
    }
    .learnig_stages div {
        display: flex;
        flex-direction: column;
        width: 31.5%;
    }
    .learnig_stages div h4 {
        margin-bottom: 1rem;
        color: #fff;
    }
    .stage01 h4 { background: #1192e2; }
    .stage02 h4 { background: #1f62b4; }
    .stage03 h4 { background: #1d266a; }

    .learnig_stages div h5 {
        font-weight: 700;
        text-align: left;
        color: #002D69;
    }
    .learnig_stages div p {
        margin-top: 0.5rem;
        text-align: justify;
    }
    .learnig_stages div ol {
        display: flex;
        flex-direction: column;
        align-items: flex-end;
        margin-bottom: 2rem;
    }
    .learnig_stages div li {
        width: 90%;
        text-align: left;
        position: relative;
    }
    .learnig_stages div li:before {
        content: "●";
        display: inline-block;
        position: absolute;
        top: 0;
        left: -2rem;
    }
    .the_goal {
        margin-top: auto !important;
        display: flex;
        justify-content: center;
        align-self: stretch;
        box-sizing: border-box;
        width: 90%;
        height: 42px;
        padding: 0.5rem 0;
        position: relative;
    }
    .the_goal:after {
        content: "";
        display: block;
        width: 10%;
        height: 100%;
        clip-path: polygon(0 0, 0% 100%, 100% 50%);
        position: absolute;
        top: 0%;
        left: 100%;
    }
    .the_goal span:first-child {
        padding: 0 1rem;
        display: block;
        margin-right: 1rem;
        border-radius: 2rem;
    }
    .the_goal span:last-child {
        display: block;
        color: #fff;
    }

    .stage01 .the_goal, .stage01 .the_goal:after {
        background: #1192e2;
        color: #fff;
    }
    .stage01 .the_goal span:first-child {
        background: #fff;
        color: #1192e2;
    }

    .stage02 .the_goal, .stage02 .the_goal:after {
        background: #1f62b4;
        color: #fff;
    }.stage02 .the_goal span:first-child {
        background: #fff;
        color: #1f62b4;
    }

    .stage03 .the_goal, .stage03 .the_goal:after {
        background: #1d266a;
        color: #fff;
    }.stage03 .the_goal span:first-child {
        background: #fff;
        color: #1d266a;
    }


    .wings02_sec02 .figs {
        display: flex;
        justify-content: space-between;
        margin-top: 70px;
    }
    .figs figure {
        width: 31.5%;
    }
    .figs figcaption {
        text-align: left;
        color: #002D69;
    }
    .figs figure:nth-child(2) span {
        font-size: 1.4rem;
        margin-left: 1.5rem;
    }
    .figs figure:nth-child(3) {
        position: relative;
    }
    .figs figure:nth-child(3):after {
        content: "※中・高6年間で2回実施予定";
        text-align: left;
        font-size: 1.4rem;
        color: #333;
        position: absolute;
        left: 0;
        bottom: -2.2rem;
    }
    .figs figure:nth-child(3) figcaption {
        display: flex;
        justify-content: space-between;
    }
    .figs figure:nth-child(3) span {
        display: block;
        width: 50%;
    }
    .figs figure:nth-child(3) span:last-child {
        text-align: right;
    }


}