@charset "UTF-8";
.PRm {
    background: rgba(255, 255, 255, 0.3);
    border: solid 1px #4486CA;
    border-radius: 0.5em 0 0 0.5em;
    position: absolute;
    top: 70px;
    right: 0;
    font-size: 1.6rem;
    padding: 1em 0.5em;
    text-align: center;
    width: 6rem;
    display: none;
}
.Sm {
    background: rgba(255, 255, 255, 0.3);
    border: solid 1px #4486CA;
    border-radius: 0.5em 0 0 0.5em;
    position: absolute;
    top: 190px;
    right: 0;
    font-size: 1.6rem;
    padding: 1em 0.5em;
    text-align: center;
    width: 6rem;
    display: none;
}
.fb {
    background: rgba(255, 255, 255, 0.3);
    border: solid 1px #4486CA;
    border-radius: 0.5em 0 0 0.5em;
    position: absolute;
    top: 310px;
    right: 0;
    font-size: 1.6rem;
    padding: 1em 0.5em;
    text-align: center;
    width: 6rem;
}
.PRm img,
.Sm img,
.fb img {
    width: 4rem;
}
.PRm a,
.Sm a,
.fb a {
    text-decoration: none;
    color: #000;
    font-family: serif;
}




/*index.html*/
#index header {
    background: url(../img/index_main.jpg) center;
    height:
        /*56.5vh*/
        31.5vw;
    background-size: cover;
}
#index header h2 {
    font-size: 6.5rem;
    color: rgba(255, 255, 255, 0.7);
    font-weight: 600;
}
.index_cnt1 {
    background: url(../img/index_intro.jpg) center;
    /*height:31.5vw; */
    background-size: cover;
    padding: 10rem 0;
}
/*.intro h3{font-size:2.2rem;}*/
.index_cnt1 strong {
    font-size: 2rem;
}
.index_cnt1 em {
    font-size: 2rem;
    color: #4486CA;
    font-weight: bold;
    font-style: normal;
    margin: 1em 0 0 0;
    display: block;
    letter-spacing: 0.25em;
}
.index_cnt1 .inner {
    background: rgba(255, 255, 255, 0.5);
    text-align: center;
    line-height: 2em;
    padding: 2.5rem 5rem;
    width: 80%;
    /*max-width: 63rem;*/
    border-radius: 0.5em;
    box-shadow: 0.5rem 0.5rem 0.5rem rgba(0, 0, 0, 0.25);
}
.index_cnt1 .inner p {
    line-height: 2;
}
.index_cnt2 {
    background: url(../img/news_fb_bg.png);
    width: 100%;
    padding: 10rem 0;
}
.index_cnt2 .inner {
    display: flex;
}
.index_cnt2 .inner .left {
    width: 50%;
}

.index_cnt2 .inner .left .news {
    width: 75%;
    margin: 0 auto 3.5rem;
    background: rgba(255, 255, 255, 0.8);
    padding: 5em;
    border-radius: 1em;
}
.index_cnt2 .inner .left .news h3 {
    background: rgba(3, 110, 184, 0.8);
    clip-path: polygon(0 0, 100% 0, 80% 100%, 0 100%);
    box-shadow: 0.5rem 0.5rem 0.5rem rgba(0, 0, 0, 0.5);
    color: #fff;
    padding: 0.5em 1em;
    font-size: 2rem;
    text-align: center;
    /*display: inline;*/
    z-index: 2;
    position: relative;
    top: -2rem;
    left: -7.5rem;
    width: 100%;
    letter-spacing: 0.25em;
}

.index_cnt2 .inner .left .news ul li {
    border-bottom: 1px dashed #1D2088;
    font-size: 2.2rem;
    list-style: inside;
}
.index_cnt2 .inner .left .news_img {
    /*width: 33%;*/
    border-radius: 50%;
    margin: 1em 0;
    border: 3px solid #fff;
    outline: 3px solid #1D2088;
    overflow: hidden;
    aspect-ratio: 1/1;
    /*display: inline-block;*/
}

.index_cnt2 .inner .left .news_pic {
    display: flex;
    gap: 1rem;
    padding: 0 5em;
}
.index_cnt2 .inner .left .news_img img {
    height: 100%;
}
.index_cnt2 .inner .right {
    width: 50%;
}
.index_cnt3 {
    width: 80%;
    max-width: 1080px;
    padding: 7rem 0;
    margin: auto;
}
.index_cnt3 .inner {
    display: flex;
    justify-content: space-between;
}
.index_cnt3 .inner .left,
.index_cnt3 .inner .right {
    width: 48%;
}
.index_cnt3 .inner .left::after {
    width: 1px;
    height: inherit;
    background: #1D2088;

}

.index_cnt3 .inner h3 {
    background: #1D2088;

    clip-path: polygon(0 0, 100% 0, 80% 100%, 0 100%);
    color: #fff;
    padding: 0.5em 4em 0.5em 1em;
    font-size: 2rem;
    display: inline;
    z-index: 2;
    position: relative;
}
.index_cnt3 .inner h3 span::before {
    content: "　";
}
.index_cnt3 .inner .left h3::before {
    content: "01 ";
}
.index_cnt3 .inner .right h3::before {
    content: "02 ";
}
.index_cnt3 .inner img {
    aspect-ratio: 3/2;
    width: 100%;
    border-radius: 1em;
}
.index_cnt3 .inner p strong {
    font-size: 2.4rem;
    text-align: center;
    display: inline-block;
    width: 100%;
    border-bottom: 1px solid #4486CA;
    letter-spacing: 0.5em;
    margin: 0 0 1em 0;
}
.index_cnt3 .inner p strong:first-letter {
    color: #4486CA;
    font-size: 3.1rem;
}
.index_cnt3 .inner p {
    margin: 1em 5rem;
}
/*.index_cnt3 .inner p:nth-child(4) {
    text-align: right;
}*/
.index_cnt3 .inner a {
    background: #4486CA;
    color: #fff;
    text-decoration: none;
    padding: 0.25em 0.5em;
    /*text-align:right;display: inline-block;*/
    float: right;
}
.index_cnt3 .inner a::after {
    content: " >"
}




/*instructor.html*/
#instructor header {
    background: url(../img/instructor_header_bg.jpg) center;
    height:
        /*56.5vh*/
        20vw;
    background-size: cover;
}


.instructor_cnt1 h3 {
    color: #4486CA;
    padding: 1em;
    text-align: center;
    letter-spacing: 0.25em;
    line-height: 1em;
    font-size: 3rem;
    /*margin:0 0 8rem;*/
}
.instructor_cnt1 h3 span {
    content: "\A";
    white-space: pre;
    display: block;
    color: #000;
    font-size: 0.6em;
}
.instructor_cnt1 h3 span::before,
.instructor_cnt1 h3 span::after {
    content: "-";
}

.instructor_cnt1 .inner>.msg {
    color: #1D2088;
    text-align: center;
    letter-spacing: 0.25em;
    line-height: 2;
    font-size: 3rem;
    font-weight: 600;
    /*margin:0 0 6rem;*/
    text-align: center;
}
.instructor_cnt1 .inner>p {
    text-align: center;
}



.instructor_cnt1 {
    background-image: url(../img/instructor_cnt1_bg.jpg);
    background-color: rgba(255, 255, 255, 0.5);
    background-blend-mode: lighten;
    background-position: center;
    /*height:31.5vw; */
    background-size: cover;
    padding: 10rem 0;
}
.instructor_cnt1 strong {
    font-size: 2rem;
}
.instructor_cnt1 em {
    font-size: 2rem;
    color: #4486CA;
    font-weight: bold;
    font-style: normal;
    margin: 1em 0 0 0;
    display: block;
    letter-spacing: 0.25em;
}
.instructor_cnt1 .inner {
    background: rgba(255, 255, 255, 0.5);
    text-align: center;
    line-height: 2em;
    padding: 4em;
    border-radius: 0.5em;
    box-shadow: 0.5rem 0.5rem 0.5rem rgba(0, 0, 0, 0.25);
}
.instructor_cnt1 .inner p {
    line-height: 2;
}



.instructor_cnt2 {
    padding: 8rem 0;
}
.instructor_cnt2 h3 {
    color: #4486CA;
    padding: 1em;
    text-align: center;
    letter-spacing: 0.25em;
    line-height: 1em;
    font-size: 3rem;
    margin: 0 0 8rem;
}
.instructor_cnt2 h3 span {
    content: "\A";
    white-space: pre;
    display: block;
    color: #000;
    font-size: 0.6em;
}
.instructor_cnt2 h3 span::before,
.instructor_cnt2 h3 span::after {
    content: "-";
}
.instructor_cnt2 .inner {}
.instructor_cnt2 .inner p.msg {
    margin: 0 0 8rem;
    text-align: center;
}

.instructor_cnt3 {
    background-image: url(../img/instructor_cnt2_bg.jpg);
    background-color: rgba(255, 255, 255, 0.5)
        /*rgba(68,134,202,0.5)*/
    ;
    background-blend-mode: lighten
        /*color-dodge*/
    ;
    background-position: center;
    background-size: cover;
    padding: 10rem 0;
}
.instructor_cnt3-B {
    padding: 10rem 0;
}
[class^=instructor_cnt3] .inner .staff {
    padding: 5rem;
    border-radius: 2rem;
    background: rgba(255, 255, 255, 0.7);
    margin: 0 0 8rem;
    /*box-shadow: 0.5rem 0.5rem 0 rgba(0,0,0,0.125);*/
}
[class^=instructor_cnt3] .inner .staff .col2 {
    display: flex;
    justify-content: space-between;
    gap: 5rem;
    /*margin: 0 0 5rem;*/
}

.instructor_cnt3 .inner .staff:nth-of-type(even) {}
.instructor_cnt3-B .inner .staff .col2 {
    flex-direction: row-reverse;
}
[class^=instructor_cnt3] .inner .staff .col2 .left {
    width: 30%;
}
[class^=instructor_cnt3] .inner .staff .col2 .left p {
    overflow: hidden;
    aspect-ratio:
        /*2/3*/
        1/1.5;
    border: 1rem solid rgba(255, 255, 255, 0.5);
    /*box-shadow: 0.5rem 0.5rem 0 rgba(0,0,0,0.125);*/
}
[class^=instructor_cnt3] .inner .staff .col2 .left img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}
[class^=instructor_cnt3] .inner .staff .col2 .right {
    width: 70%;
}
[class^=instructor_cnt3] .inner .staff .col2 .right .name {
    font-size: 2.8em;
    /*color: #1D2088;*/
    font-weight: 700;
    letter-spacing: 0.25em;
    border-bottom: 1px solid #000;
}
[class^=instructor_cnt3] .inner .staff .col2 .right .name span {
    background: #1D2088;
    border-radius: 1em;
    color: #fff;
    font-size: initial;
    font-family: sans-serif;
    /*
    border-radius: 1em;
    */
    padding: 0 2em;
    margin: 0 0 0 1em;
}
[class^=instructor_cnt3] .inner .staff .col2 .right .name span::before,
[class^=instructor_cnt3] .staff .col2 .right .name span::after {
    content: "-";
}
[class^=instructor_cnt3] .inner .staff .col2 .right p {
    line-height: 2;
    margin: 0 0 1rem;
}
[class^=instructor_cnt3] .inner .staff .col2 .right dl {
    display: flex;
    flex-wrap: wrap;
}
[class^=instructor_cnt3] .inner .staff .col2 .right dt {
    /*font-size: 1.8rem;*/
    font-weight: 600;
    width: 20%;
    /*
    border-left: 0.25em solid #4486CA;*/
    color: #000;
    height: fit-content;
    padding: 0;
    margin: 0 0 1em;
    justify-content: space-between;
    display: inline-flex;
}
[class^=instructor_cnt3] .inner .staff .col2 .right dt::before {
    content: "【";
    display: inline-block;
}
[class^=instructor_cnt3] .inner .staff .col2 .right dt::after {
    content: "】";
    display: inline-block;
}
[class^=instructor_cnt3] .inner .staff .col2 .right dd {
    /*font-size: 1.8rem;*/
    font-weight: 600;
    margin: 0 0 1em;
    width: 80%;
}
[class^=instructor_cnt3] .inner .staff .col2 .right ul {
    /*display: grid;
    grid-template-columns: 1fr 1fr;*/
}
[class^=instructor_cnt3] .inner .staff .col2 .right ul li {
    /*font-size: 1.8rem;*/
    font-weight: 600;
    /*line-height: 1;*/
    list-style: inside;
}




[class^=instructor_cnt3] .inner .staff .qa {
    background: rgba(255, 255, 255, 0.5);
    padding: 5rem;
    border-radius: 2rem;
    /*border: 1em solid #f8f6e7;
    padding: 4em;*/
    display: grid;
    gap: 5rem;
    grid-template-columns: 1fr 1fr;
}
[class^=instructor_cnt3] .inner .staff .qa dl dt {
    font-size: 2.0rem;
    font-weight: 600;
    border-bottom: 1px dashed #000;
}
[class^=instructor_cnt3] .inner .staff .qa dl dt::before {
    content: "Q ";
    font-size: 1.6rem;
    color: #4486CA;
}
[class^=instructor_cnt3] .inner .staff .qa dl dd {
    padding: 0 0 1em 0;
}
[class^=instructor_cnt3] .inner .staff .qa dl dd::before {
    content: "A  ";
}




/*features*/

#features header {
    background: url(../img/features_header_bg.jpg) center;
    height:
        /*56.5vh*/
        20vw;
    background-size: cover;
}
.features_cnt1 {
    padding: 10rem 0;
}
.features_cnt1 .inner>.msg {
    color: #1D2088;
    text-align: center;
    letter-spacing: 0.25em;
    line-height: 2;
    font-size: 3rem;
    font-weight: 600;
    margin: 0 0 6rem;
    text-align: center;
}
.features_cnt1 .inner>p {
    text-align: center;
}
.features_cnt2 {
    padding: 8rem 0;
    background-color: rgba(255, 255, 255, 0.7);
    background-image: url(../img/features_cnt2_bg.jpg);
    background-position: bottom;
    background-size: cover;
    background-blend-mode: lighten;
}
.features_cnt2 h3 {
    color: #4486CA;
    padding: 1em;
    text-align: center;
    letter-spacing: 0.25em;
    line-height: 1em;
    font-size: 3rem;
    margin: 0 0 8rem;
}
.features_cnt2 h3 span {
    content: "\A";
    white-space: pre;
    display: block;
    color: #000;
    font-size: 0.6em;
}
.features_cnt2 h3 span::before,
.features_cnt2 h3 span::after {
    content: "-";
}
.features_cnt2 .col3 {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 10rem 5rem;
}
.features_cnt2 .col3 dl {
    box-shadow: 0.5rem 0.5rem 0 rgba(0, 0, 0, 0.125);
    border-radius: 2rem;
}
.features_cnt2 .col3 dl dt {
    background: #4486CA;
    border-radius: 2rem 2rem 0 0;
    padding: 2.5rem;
    color: #fff;
    text-align: center;
    position: relative;
    font-size: 2.6rem;
    /*border: 3px solid #fff;
    outline: 3px solid #4486CA;*/
    font-family: sans-serif;
}
.features_cnt2 .col3 dl dt::before {
    width: 10rem;
    height: 5rem;
    background: #4486CA;
    color: #fff;
    font-size: 1.6rem;
    display: grid;
    position: absolute;
    left: calc(35%);
    top: -5rem;
    border-radius: 5rem 5rem 0 0;
    text-align: center;
    align-items: flex-end;
}
.features_cnt2 .col3 dl:nth-of-type(1) dt::before {
    content: "その1";
}
.features_cnt2 .col3 dl:nth-of-type(2) dt::before {
    content: "その2";
}
.features_cnt2 .col3 dl:nth-of-type(3) dt::before {
    content: "その3";
}
.features_cnt2 .col3 dl:nth-of-type(4) dt::before {
    content: "その4";
}
.features_cnt2 .col3 dl:nth-of-type(5) dt::before {
    content: "その5";
}
.features_cnt2 .col3 dl:nth-of-type(6) dt::before {
    content: "その6";
}
.features_cnt2 .col3 dl dt a {
    color: #fff;
}
.features_cnt2 .col3 dl dd {
    background: #fff;
    border-radius: 0 0 2rem 2rem;
    padding: 2.5rem;
    text-align: center;
}
.features_cnt3 {
    padding: 8rem 0;
}
.features_cnt3 .feat {
    display: flex;
    background: aliceblue;
    margin: 0 0 8rem;
    padding: 5rem;
    border-radius: 2rem;
}
.features_cnt3 .feat:nth-of-type(even) {
    flex-direction: row-reverse;
}
.features_cnt3 .feat .pic {
    width: 40%;
}
.features_cnt3 .feat .pic img {
    width: 100%;
}

.features_cnt3 .feat dl {
    width: 60%;
    padding: 5rem;
}
.features_cnt3 .feat dl dt::before {
    background: #4486CA;
    color: #fff;
    padding: 0 1em;
    border-radius: 1rem;
    font-size: 1.6rem;
    margin: 0 1em 1em 0;
}

.features_cnt3 .feat:nth-of-type(1) dl dt::before {
    content: "その1";
}
.features_cnt3 .feat:nth-of-type(2) dl dt::before {
    content: "その2";
}
.features_cnt3 .feat:nth-of-type(3) dl dt::before {
    content: "その3";
}
.features_cnt3 .feat:nth-of-type(4) dl dt::before {
    content: "その4";
}
.features_cnt3 .feat:nth-of-type(5) dl dt::before {
    content: "その5";
}
.features_cnt3 .feat:nth-of-type(6) dl dt::before {
    content: "その6";
}
.features_cnt3 .feat dl dt {
    font-size: 2rem;
    font-family: sans-serif;
    margin: 0 0 1em;
}

.features_cnt3 .feat dl dd::first-line {
    font-size: 2.8rem;
    /*color: darkorange;*/
    margin: 0 0 1em;
    font-weight: 600;
}




/*curriculum*/
#curriculum header {
    background: url(../img/curriculum_header_bg.jpg) center;
    height:
        /*56.5vh*/
        20vw;
    background-size: cover;
}
.curriculum_cnt1 {
    padding: 10rem 0;
}
.curriculum_cnt1 .inner>.msg {
    color: #1D2088;
    text-align: center;
    letter-spacing: 0.25em;
    line-height: 2;
    font-size: 3rem;
    font-weight: 600;
    margin: 0 0 6rem;
    text-align: center;
}
.curriculum_cnt1 .inner>p {
    text-align: center;
}

.curriculum_cnt2 {
    padding: 8rem 0;
    background-color: rgba(255, 255, 255, 0.8);
    background-image: url(../img/curriculum_cnt2_bg.jpg);
    background-position: bottom;
    background-size: cover;
    background-blend-mode: lighten;
}

.curriculum_cnt2 h3 {
    color: #4486CA;
    padding: 1em;
    text-align: center;
    letter-spacing: 0.25em;
    line-height: 1em;
    font-size: 3rem;
    margin: 0 0 8rem;
}
.curriculum_cnt2 h3 span {
    content: "\A";
    white-space: pre;
    display: block;
    color: #000;
    font-size: 0.6em;
}
.curriculum_cnt2 h3 span::before,
.curriculum_cnt2 h3 span::after {
    content: "-";
}
.curriculum_cnt2 .curriculm {
    display: flex;
    background: rgba(255, 255, 255, 0.5);
    margin: 0 0 8rem;
    padding: 5rem;
    border-radius: 2rem;
    box-shadow: 0.5rem 0.5rem 0 rgba(0, 0, 0, 0.125);
}
.curriculum_cnt2 .curriculm:nth-of-type(even) {
    flex-direction: row-reverse;
}
.curriculum_cnt2 .curriculm .pic {
    width: 40%;
}
.curriculum_cnt2 .curriculm .pic img {
    width: 100%;
}

.curriculum_cnt2 .curriculm dl {
    width: 60%;
    padding: 5rem;
}
.curriculum_cnt2 .curriculm dl dt::before {
    background: #4486CA;
    color: #fff;
    padding: 0 1em;
    border-radius: 1rem;
    font-size: 1.6rem;
    margin: 0 1em 1em 0;
}

.curriculum_cnt2 .curriculm:nth-of-type(1) dl dt::before {
    content: "その1";
}
.curriculum_cnt2 .curriculm:nth-of-type(2) dl dt::before {
    content: "その2";
}
.curriculum_cnt2 .curriculm:nth-of-type(3) dl dt::before {
    content: "その3";
}
.curriculum_cnt2 .curriculm:nth-of-type(4) dl dt::before {
    content: "その4";
}
.curriculum_cnt2 .curriculm:nth-of-type(5) dl dt::before {
    content: "その5";
}
.curriculum_cnt2 .curriculm dl dt {
    font-size: 2rem;
    font-family: sans-serif;
    margin: 0 0 1em;
}

.curriculum_cnt2 .curriculm dl dd::first-line {
    font-size: 2.8rem;
    /*color: darkorange;*/
    margin: 0 0 1em;
    font-weight: 600;
}
.curriculum_cnt3 {
    padding: 8rem 0;
    background-color: rgba(255, 255, 255, 0.7);
    background-image: url(../img/curriculum_cnt3_bg.jpg);
    background-position: bottom;
    background-size: cover;
    background-blend-mode: lighten;
}
.curriculum_cnt3 h3 {
    color: #4486CA;
    padding: 1em;
    text-align: center;
    letter-spacing: 0.25em;
    line-height: 1em;
    font-size: 3rem;
    margin: 0 0 8rem;
}
.curriculum_cnt3 h3 span {
    content: "\A";
    white-space: pre;
    display: block;
    color: #000;
    font-size: 0.6em;
}
.curriculum_cnt3 h3 span::before,
.curriculum_cnt3 h3 span::after {
    content: "-";
}
.curriculum_cnt3 .col3 {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 10rem 5rem;
}
.curriculum_cnt3 .col3 dl {
    box-shadow: 0.5rem 0.5rem 0 rgba(0, 0, 0, 0.125);
    border-radius: 2rem;
}
.curriculum_cnt3 .col3 dl dt {
    background: #4486CA;
    border-radius: 2rem 2rem 0 0;
    padding: 2.5rem;
    color: #fff;
    text-align: center;
    position: relative;
    font-size: 2.6rem;
    /*border: 3px solid #fff;
    outline: 3px solid #4486CA;*/
    font-family: sans-serif;
}
.curriculum_cnt3 .col3 dl dd {
    background: #fff;
    border-radius: 0 0 2rem 2rem;
    padding: 2.5rem;
    text-align: center;
}
.curriculum_cnt3 .col3 p strong {
    font-family: sans-serif;
    font-size: 2.6rem;
    color: #4486CA;
    font-weight: normal;
}
.curriculum_cnt3 .col3 ul li {
    border-bottom: 1px dashed #000;
    list-style: inside;
}

.curriculum_cnt3 .col3 p {
    color: #ccc;
}




/*dormitory*/
.dormitory_cnt1 {
    padding: 8rem 0;
    /*background-color: rgba(255,255,255,0.7);
    background-image: url(../img/features_cnt2_bg.jpg);
    background-position:bottom;
    background-size:cover;
    background-blend-mode: lighten;*/
}
.dormitory_cnt1 h3 {
    color: #4486CA;
    padding: 1em;
    text-align: center;
    letter-spacing: 0.25em;
    line-height: 1em;
    font-size: 3rem;
    margin: 0 0 8rem;
}
.dormitory_cnt1 h3 span {
    content: "\A";
    white-space: pre;
    display: block;
    color: #000;
    font-size: 0.6em;
}
.dormitory_cnt1 h3 span::before,
.dormitory_cnt1 h3 span::after {
    content: "-";
}

.dormitory_cnt2 .msg {
    color: #1D2088;
    text-align: center;
    letter-spacing: 0.25em;
    line-height: 2;
    font-size: 3rem;
    font-weight: 600;
    text-align: center;
}
.dormitory_cnt2 p {
    text-align: center;
}


.dormitory_cnt2 .inner .dormitory {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 1rem;
    margin: 0 0 8rem;
}
.dormitory_cnt2 .inner .dormitory li {
    list-style: none;
    aspect-ratio: 3/2;
    overflow: hidden;
}
.dormitory_cnt2 .inner .dormitory li img {
    width: 100%;
}
.dormitory_cnt2 .inner .dormitory li:nth-of-type(1) {
    grid-column: 1/5;
}

.dormitory_cnt2 .inner .col2 {
    display: flex;
    gap: 5rem;
}
.dormitory_cnt2 .inner h4 {
    font-size: 2.6rem;
    border-left: 0.5rem solid #000;
    padding: 1em 0;
    writing-mode: vertical-lr;
    background: #000;
    color: #fff;

}
.dormitory_cnt2 .inner .col2 .left,
.dormitory_cnt2 .inner .col2 .right {
    width: 45%;
}
.dormitory_cnt2 .inner dl {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 5rem;
}
.dormitory_cnt2 .inner dt {
    width: 30%;
}
.dormitory_cnt2 .inner dd {
    width: 70%;
}
.dormitory_cnt2 .inner address {}
.dormitory_cnt2 .inner .col2 .right p {}
.dormitory_cnt2 .inner .col2 .right p img {
    width: 100%;
}

.dormitory_cnt2 .inner h5 {
    font-size: 2.2rem;
    margin: 0 0 5rem;
}
.dormitory_cnt2 .inner ul.share {
    display: flex;
    gap: 1rem;
}
.dormitory_cnt2 .inner ul.share li {
    background: #1D2088;
    border-radius: 50%;
    list-style: none;
    width: 13rem;
}
.dormitory_cnt2 .inner ul.share li img {
    width: 100%;
}


.dormitory_cnt2 {

    padding: 8rem 0;
    background-color: rgba(255, 255, 255, 0.7);
    background-image: url(../img/dormitory_cnt2_bg.jpg);
    background-position: bottom;
    background-size: cover;
    background-blend-mode: lighten;
}

.dormitory_cnt2 .inner {
    padding: 5rem;
    border-radius: 2rem;
    background: rgba(255, 255, 255, 0.7);
    margin: 0 auto 8rem;
    box-shadow: 0.5rem 0.5rem 0.5rem rgba(0, 0, 0, 0.5);
}
.dormitory_cnt2 h3 {
    color: #4486CA;
    padding: 1em;
    text-align: center;
    letter-spacing: 0.25em;
    line-height: 1em;
    font-size: 3rem;
    margin: 0 0 8rem;
}
.dormitory_cnt2 h3 span {
    content: "\A";
    white-space: pre;
    display: block;
    color: #000;
    font-size: 0.6em;
}
.dormitory_cnt2 h3 span::before,
.dormitory_cnt2 h3 span::after {
    content: "-";
}

.dormitory_cnt2 .inner>.msg {
    color: #1D2088;
    text-align: center;
    letter-spacing: 0.25em;
    line-height: 2;
    font-size: 3rem;
    font-weight: 600;
    text-align: center;
}
.dormitory_cnt2 .inner>p {
    text-align: center;
}

.dormitory_cnt3 {
    padding: 8rem 0;
    /*background-color: rgba(255,255,255,0.7);
    background-image: url(../img/features_cnt2_bg.jpg);
    background-position:bottom;
    background-size:cover;
    background-blend-mode: lighten;*/
}
.dormitory_cnt4 h3 {
    color: #4486CA;
    padding: 1em;
    text-align: center;
    letter-spacing: 0.25em;
    line-height: 1em;
    font-size: 3rem;
    margin: 0 0 8rem;
}
.dormitory_cnt4 h3 span {
    content: "\A";
    white-space: pre;
    display: block;
    color: #000;
    font-size: 0.6em;
}
.dormitory_cnt4 h3 span::before,
.dormitory_cnt4 h3 span::after {
    content: "-";
}

.dormitory_cnt4 .inner>.msg {
    color: #1D2088;
    text-align: center;
    letter-spacing: 0.25em;
    line-height: 2;
    font-size: 3rem;
    font-weight: 600;
    text-align: center;
}
.dormitory_cnt4 .inner>p {
    text-align: center;
}


.dormitory_cnt4 {
    padding: 8rem 0;
    background-color: rgba(255, 255, 255, 0.7);
    background-image: url(../img/dormitory_cnt4_bg.jpg);
    background-position: bottom;
    background-size: cover;
    background-blend-mode: lighten;
}
.dormitory_cnt4 .inner {
    padding: 5rem;
    border-radius: 2rem;
    background: rgba(255, 255, 255, 0.7);
    margin: 0 auto 8rem;
    box-shadow: 0.5rem 0.5rem 0.5rem rgba(0, 0, 0, 0.5);
}
.dormitory_cnt4 .inner .class {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 1rem;
    margin: 0 0 8rem;
}
.dormitory_cnt4 .inner .class li {
    list-style: none;
    aspect-ratio: 3/2;
    overflow: hidden;
}
.dormitory_cnt4 .inner .class li img {
    width: 100%;
}
.dormitory_cnt4 .inner .class li:nth-of-type(1) {
    grid-column: 1/3;
    grid-row: 1/3;
}

.dormitory_cnt4 .inner h4 {
    font-size: 2.6rem;
    border-left: 0.5rem solid #000;
    padding: 0 0 0 1em;
    margin: 0 0 5rem;
}

.dormitory_cnt4 .inner .col2 {
    display: flex;
    gap: 5rem;
    margin: 0 0 8rem;
}
.dormitory_cnt4 .inner .col2 .left,
.dormitory_cnt4 .inner .col2 .right {
    width: 50%;
}

.dormitory_cnt4 .inner .col2 .left p {
    width: 100%;
}
.dormitory_cnt4 .inner .col2 .left p img {
    width: 100%;
}
.dormitory_cnt4 .inner .about {
    display: flex;
    gap: 5rem;
}
.dormitory_cnt4 .inner .about h4 {
    font-size: 2.6rem;
    border-left: 0.5rem solid #000;
    padding: 1em 0;
    writing-mode: vertical-lr;
    background: #000;
    color: #fff;

}
.dormitory_cnt4 .inner .about .left,
.dormitory_cnt4 .inner .about .right {
    width: 45%;
}
.dormitory_cnt4 .inner .about dl {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 5rem;
}
.dormitory_cnt4 .inner .about dt {
    width: 30%;
}
.dormitory_cnt4 .inner .about dd {
    width: 70%;
}
.dormitory_cnt4 .inner .about address {}
.dormitory_cnt4 .inner .about .right p {}
.dormitory_cnt4 .inner .about .right p img {
    width: 100%;
}


/*access.html*/
#access header {
    background: url(../img/access_header_bg.jpg) center;
    height:
        /*56.5vh*/
        20vw;
    background-size: contain;
}
.access_cnt1 {
    padding: 10rem 0;
}
.access_cnt1 .inner>.msg {
    color: #1D2088;
    text-align: center;
    letter-spacing: 0.25em;
    line-height: 2;
    font-size: 3rem;
    font-weight: 600;
    margin: 0 0 6rem;
    text-align: center;
}
.access_cnt1 .inner>p {
    text-align: center;
}
.access_cnt2 {
    padding: 8rem 0;
    background-color: rgba(255, 255, 255, 0.7);
    background-image: url(../img/features_cnt2_bg.jpg);
    background-position: bottom;
    background-size: cover;
    background-blend-mode: lighten;
}
.access_cnt2 h3 {
    color: #4486CA;
    padding: 1em;
    text-align: center;
    letter-spacing: 0.25em;
    line-height: 1em;
    font-size: 3rem;
    margin: 0 0 8rem;
}
.access_cnt2 h3 span {
    content: "\A";
    white-space: pre;
    display: block;
    color: #000;
    font-size: 0.6em;
}
.access_cnt2 h3 span::before,
.access_cnt2 h3 span::after {
    content: "-";
}
.access_cnt2 .inner p.msg {
    margin: 0 0 8rem;
    text-align: center;
}
.inner-car {
    background: rgba(255, 255, 255, 0.5);
    padding: 5rem;
    border-radius: 2rem;
    margin: 0 0 8rem;
    /*box-shadow: 0.5rem 0.5rem 0 rgba(0,0,0,0.125);*/
}
.inner-car h4 {
    font-size: 2.6rem;
    margin: 0 0 4rem;
    border-bottom: 1px solid #000;
}
.inner-car h5 {
    display: inline list-item;
    list-style: disclosure-open;
    color: #383838;
    font-size: 2.2rem;
}
.inner-car h5::marker {
    color: darkgoldenrod;
}
.inner-car p {
    color: #666;
    margin: 0 0 2rem;
}
.inner-car h6 {
    text-align: center;
    border-bottom: 1px dashed #383838;
    color: #383838;
    letter-spacing: 0.5em;
    font-size: 2.4rem;
}
.access_cnt2 .inner #map {
    border: 0;
    width: 100%;
    aspect-ratio: 1 / 0.6;
}
.access_cnt2 .inner address {
    margin: 0 0 8rem;
}
.access_cnt2 h4 {
    /*
    letter-spacing: 0.5em;
    margin: 4em auto;
    text-align: center;*/
}
#access .tel_mail {
    text-align: center;
    font-size: 2.4rem;
    border-bottom: 0.125em solid #1D2088;
    border-top: 0.125em solid #1D2088;
    padding: 1em 0;
    background: #1D2088;
    color: #fff;
}
#access .tel_mail a {
    text-decoration: none;
    font-size: 4rem;
    font-weight: 600;
    color: #fff;
}







/*dormitory.html*/
#dormitory header {
    background: url(../img/dormitory_header_bg.jpg) center;
    height:
        /*56.5vh*/
        20vw;
    background-size: cover;
}
/*#dormitory h3 {
    background: #4486CA;
    color: #fff;
    padding: 1em;
    text-align: center;
    letter-spacing: 0.25em;
    line-height: 1em;
    font-size: 3rem;
}
#dormitory h3 span {
    font-size: 0.6em;
}
*/


/*inquiry.html*/
#inquiry header {
    background: url(../img/inquiry_header_bg.jpg) center;
    height:
        /*56.5vh*/
        20vw;
    background-size: cover;
}


.inquiry_cnt1 {
    width: 100%;
    padding: 8rem 0;
    margin: auto;
    text-align: center;
    background: url(../img/index_cnt1_logo.png) no-repeat 78.5% center;
    background-size: 10.4rem;
}
.inquiry_cnt1 h3 {
    color: #4486CA;
    padding: 1em;
    text-align: center;
    letter-spacing: 0.25em;
    line-height: 1em;
    font-size: 3rem;
    margin: 0 0 8rem;
}

.inquiry_cnt1 h3 span {
    content: "\A";
    white-space: pre;
    display: block;
    color: #000;
    font-size: 0.6em;
}
.inquiry_cnt1 h3 span::before,
.inquiry_cnt1 h3 span::after {
    content: "-";
}
.inquiry_cnt1 .inner dl.qa {
    background: rgba(255, 255, 255, 0.5);
    padding: 5rem;
    border-radius: 2rem;
    text-align: left;
    /*border: 1em solid #f8f6e7;
    padding: 4em;*/
}
.inquiry_cnt1 .inner dl.qa dt {
    font-size: 2.4rem;
    font-weight: 600;
}
.inquiry_cnt1 .inner dl.qa dt::before {
    content: "Q ";
    font-size: 1.6rem;
    color: #4486CA;
}
.inquiry_cnt1 .inner dl.qa dd {
    border-bottom: 1px dashed #4486CA;
    padding: 0 0 1em 0;
}
.inquiry_cnt1 .inner dl.qa dd::before {
    content: "A  ";
}



.inquiry_cnt1 p {
    /*line-height: 2;
    margin:0 0 2em 0;*/
}
.inquiry_cnt2 {
    width: 100%;
    padding: 8rem 0;
    text-align: center;
    background-color: rgba(255, 255, 255, 0.7);
    background-image: url(../img/curriculum_cnt2_bg.jpg);
    background-position: bottom;
    background-size: cover;
    background-blend-mode: lighten;
}

.inquiry_cnt1 .step {
    display: flex;
    background: rgba(255, 255, 255, 0.5);
    margin: 0 0 14rem;
    padding: 5rem;
    border-radius: 2rem;
    box-shadow: 0.5rem 0.5rem 0 rgba(0, 0, 0, 0.125);
    text-align: left;
    flex-wrap: wrap;
    position: relative;
}
.inquiry_cnt1 .step::after {
    content: "";
    width: 8rem;
    height: 4rem;
    margin: auto;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    background: #ccc;
    position: absolute;
    bottom: -10rem;
    left: calc(50% - 4rem);
}
.inquiry_cnt1 .step:nth-of-type(even) {
    flex-direction: row-reverse;
}
.inquiry_cnt1 .step .pic {
    width: 40%;
    aspect-ratio: 3/2;
    overflow: hidden;
}
.inquiry_cnt1 .step .pic img {
    width: 100%;
}

.inquiry_cnt1 .step dl {
    width: 60%;
    padding: 0 5rem;
}
.inquiry_cnt1 .step dl dt::before {
    background: #4486CA;
    color: #fff;
    padding: 0 1em;
    /*border-radius: 1rem;*/
    font-size: 1.6rem;
    margin: 0 1em 1em 0;
}

.inquiry_cnt1 .step:nth-of-type(1) dl dt::before {
    content: "【STEP1】";
    font-family: sans-serif;
    font-weight: normal;
}
.inquiry_cnt1 .step:nth-of-type(2) dl dt::before {
    content: "【STEP2】";
    font-family: sans-serif;
    font-weight: normal;
}
.inquiry_cnt1 .step:nth-of-type(3) dl dt::before {
    content: "【STEP3】";
    font-family: sans-serif;
    font-weight: normal;
}
.inquiry_cnt1 .step:nth-of-type(4) dl dt::before {
    content: "【STEP4】";
    font-family: sans-serif;
    font-weight: normal;
}
.inquiry_cnt1 .step:nth-of-type(5) dl dt::before {
    content: "【STEP5】";
    font-family: sans-serif;
    font-weight: normal;
}
.inquiry_cnt1 .step:nth-of-type(6) dl dt::before {
    content: "【STEP6】";
    font-family: sans-serif;
    font-weight: normal;
}
.inquiry_cnt1 .step:nth-of-type(7) dl dt::before {
    content: "【STEP7】";
    font-family: sans-serif;
}
.inquiry_cnt1 .step:nth-of-type(8) dl dt::before {
    content: "【STEP8】";
    font-family: sans-serif;
    font-weight: normal;
}
.inquiry_cnt1 .step dl dt {
    font-size: 2.8rem;
    font-weight: bold;
    margin: 0 0 1em;
}

.inquiry_cnt1 .step dl dd::first-line {
    /*color: darkorange;*/
    margin: 0 0 1em;
    font-weight: 600;
}

.inquiry_cnt2 h3 {
    color: #4486CA;
    padding: 1em;
    text-align: center;
    letter-spacing: 0.25em;
    line-height: 1em;
    font-size: 3rem;
    margin: 0 0 8rem;
}

.inquiry_cnt2 h3 span {
    content: "\A";
    white-space: pre;
    display: block;
    color: #000;
    font-size: 0.6em;
}
.inquiry_cnt2 h3 span::before,
.inquiry_cnt2 h3 span::after {
    content: "-";
}
.inquiry_cnt2 p {
    line-height: 2;
    margin: 0 0 2em 0;
}
.inquiry_cnt2 dl {
    display: flex;
    flex-wrap: wrap;
    text-align: left;
    background: rgba(255, 255, 255, 0.5);
    margin: 0 0 8rem;
    padding: 5rem;
    border-radius: 2rem;
    box-shadow: 0.5rem 0.5rem 0 rgba(0, 0, 0, 0.125);
}
.inquiry_cnt2 dt {
    width: 30%;
    line-height: 2;
    border-bottom: 0.1rem dashed #000;
    padding: 0.5em;
}
.inquiry_cnt2 dd {
    width: 70%;
    line-height: 2;
    border-bottom: 0.1rem dashed #000;
    padding: 0.5em;
}
.inquiry_cnt2 input[type="text"],
/*.inquiry_cnt2 input[type="textarea"],*/
.inquiry_cnt2 textarea,
.inquiry_cnt2 input,
.inquiry_cnt2 select,
.inquiry_cnt2 select option {
    width: 100%;
    font-size: 1.6rem;
    padding: 1em;
    background: #fff;
    border: 0.1rem solid #666;
    border-radius: 1rem;
}

.inquiry_cnt2
/*input[type="textarea"]*/
textarea {
    height: 10em;
}
.inquiry_cnt2 input[type="submit"] {
    width: fit-content;
    padding: 1em 4em;
    margin: auto;
}

.inquiry_cnt3 {
    width: 100%;
    padding: 8rem 0;
    text-align: center;
}

.inquiry_cnt3 h3 {
    color: #4486CA;
    padding: 1em;
    text-align: center;
    letter-spacing: 0.25em;
    line-height: 1em;
    font-size: 3rem;
    margin: 0 0 8rem;
}

.inquiry_cnt3 h3 span {
    content: "\A";
    white-space: pre;
    display: block;
    color: #000;
    font-size: 0.6em;
}
.inquiry_cnt3 h3 span::before,
.inquiry_cnt3 h3 span::after {
    content: "-";
}
.inquiry_cnt3 .info {
    /*width:fit-content;*/
    margin: auto;
    padding: 4rem 5rem;
    background: aliceblue;
    border-radius: 1rem;
}
.inquiry_cnt3 address {
    font-style: normal;
    line-height: 2;
}
.inquiry_cnt3 .tel {
    font-size: 2rem;
}
.inquiry_cnt3 .tel a {
    font-family: "游明朝体", "Yu Mincho", YuMincho, 'Noto Serif JP', serif, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro";
    font-size: 4rem;
    text-decoration: none;
    color: #000;
    margin: 0 7rem 0 0;
}
.inquiry_cnt3 .info p {
    margin: 0;
}