@charset "utf-8";
/* CSS Document */

/*---------

color & font set

----------------------------**/

.support{ --bg-sub-title: rgb(249, 136, 7);}
.introduction-accent{ background-color: rgb(255, 235, 243);}

/* /support/test/　banner */
.section-wrap > .site-theme-bg-stripe:not(:last-child){ margin-bottom: 0;}
.site-theme-bg-stripe + .banner{
    display: grid;
    grid-template-columns: minmax(1fr, 75rem);
    justify-content: center;
    text-align: center;
    background-color: rgba(226, 243, 255, 1);
}

.support table h4{
    width: 100%;
    color: #fff;
    padding: 0.8em;
    margin-top: 1.6em;
    background-color: var(--bg-sub-title);
}

.free-education.reservation h3,
.free-education.current h3{
    padding: .4em;
    border-bottom: 1px solid #000;}

.free-education.reservation h3{ background-color: var(--bg-site-main-blue);}
.free-education.current h3{ background-color: rgba(212 ,234 ,167 ,1);}

/*---------

figure

----------------------------**/

.section-inner figure{ margin: 1.5em auto 2em;}
.section-inner .fig-large{ width: 70%;}

/*---------

rank-list

----------------------------**/

.rank-list dl{
    border-top: 1px solid #bfbfbf;
    border-bottom: 1px solid #bfbfbf;
    display: grid;
    grid-template-columns: 16% repeat(auto-fit ,minmax(120px ,1fr));
    grid-auto-rows: 1fr;
    margin-bottom: 1rem;
}

.rank-list dt,
.rank-list dd{
    padding: 4%;
    display: grid;
    text-align: center;
    justify-content: center;
    align-items: center;
}

.rank-list dt{
    color: #ce1536;
    line-height: 1.6;
}

.rank-list dl dt:nth-of-type(1){
    font-size: 1.1rem;
    line-height: 1.0;
    color: #FFF;
    background-color: rgba(253, 142, 190 ,1);
    align-content: center;
}

.rank-list dt:nth-of-type(1) span{
    font-size: 2.5rem;
    display: block;
}

.rank-list dt:nth-of-type(2){ border-right: 1px solid #bfbfbf;}
.rank-list dl dd:nth-child(2){ justify-content: flex-start;}
.rank-list dl dd:nth-child(2) ul{ text-align: left;}

.rank-list dl.rank_a dt:nth-of-type(1){ background-color: rgba(206, 021, 054 ,1);}
.rank-list dl.rank_b dt:nth-of-type(1){ background-color: rgba(218, 051, 087 ,1);}
.rank-list dl.rank_c dt:nth-of-type(1){ background-color: rgba(230, 081, 121 ,1);}
.rank-list dl.rank_d dt:nth-of-type(1){ background-color: rgba(241, 112, 156 ,1);}
.rank-list dl.rank_e dt:nth-of-type(1){ background-color: rgba(253, 142, 190 ,1);}

/*---------

free-education

----------------------------**/

.free-education,
.free-education_list{ position: relative;}
.free-education_list{ margin-top: 1em;}
.free-education .emphasis h4{ margin: 0; padding: .25em;}

.free-education_list::after{
    content: "";
    display: block;
    width: .2rem;
    height: 100%;
    position: absolute;
    left: 50%;
    top: 0;
    background-color: #00c6ff;
    z-index: -1;
}

/* .free-education_body{ position: relative; z-index: 10;} */
.free-education_body:not(:last-child){ padding-bottom: 2.4rem;}

.free-education_head{
    border: 1px solid #bfbfbf;
    display: grid;
    grid-template-columns: repeat(auto-fit ,33.33%);
    grid-auto-rows: 1fr;
    gap: 0;
}

.free-education_head > div{
    line-height: 1.2;
    min-height: 6rem;
    display: grid;
    place-items: center;
    text-align: center;
    background-color: #ededed;
}

.free-education_head > div:nth-of-type(2){
    border-left: 1px solid #bfbfbf;
    border-right: 1px solid #bfbfbf;
    background-color: var(--bg-site-main-blue);
}

.free-education_item{
    padding: 1em;
    border-left: 1px solid #bfbfbf;
    border-right: 1px solid #bfbfbf;
    border-bottom: 1px solid #bfbfbf;
    background-color: #FFF;
}
.link-list_blank::after{
    content: "";
    display: inline-block;
    width: 0.75em;
    height: 0.75em;
    position: relative;
    top: 0;
    right: -0.5em;
    background: url("../../assets/images/support/blank.png") no-repeat;
    background-size: contain;
}
.link-list_blank{
    color: #2a72f5;
    text-decoration: underline;
}
.link-list_blank:hover{
    text-decoration: none;
}
.link_list_fontsmall{
  font-size:  11px;
}
.indent_01{
  padding-left:1em;
}

@media (min-width:768px){

    .free-education_body:not(:last-child){ padding-bottom: 4rem;}
}

/*--- icon
----------------------------**/

.free-education_head span.person,
.free-education_head span.school{ display: inline-block; position: relative; margin-left: 2rem;}

.free-education_head span.person::before,
.free-education_head span.school::before{
    content: "";
    display: inline-block;
    width: 1.6rem;
    height: 1.6rem;
    background-size: contain;
    position: absolute;
    left: -2rem;
    top: 50%;
    transform: translateY(-1rem);
}

.free-education_head span.person::before{ background-image: url(../images/icon/icon-person.png);}
.free-education_head span.school::before{ background-image: url(../images/icon/icon-school.png);}

@media (min-width:768px){

    .free-education_head span.person::before,
    .free-education_head span.school::before{ transform: translateY(-.9rem);}
}

/*--- reservation
----------------------------**/

.free-education.reservation .emphasis h4{
    color: initial;
    background-color: var(--site-point-color);
    padding: 1em;
}

.free-education.reservation .emphasis_item{ color: #FFF; background-color: #e60000;}
.free-education.reservation .emphasis_item span{ color: var(--site-point-color);}

@media not all and (min-width:768px){
    .free-education_head{ font-size: 1.1rem;}
    .free-education.reservation .emphasis_item span{ font-size: 1.6rem;}
}

/*--- current
----------------------------**/

.free-education.current .emphasis h4{ color: #FFF; background-color: rgba(127, 189, 0, 1);}
.current .free-education_head > div:nth-of-type(2){ background-color: rgba(212 ,234 ,167 ,1);}

/*---------

other

----------------------------**/

.graph-area{
    max-width: 52rem;
    margin: 2.5rem auto;
    padding-left: 1rem;
    padding-right: 1rem;
}

/*---------

table

----------------------------**/

.table-style th.subtitle{ text-align: left;}

/*---------

children page

----------------------------**/

.sp_only {
    display: none;
}
.pc_only {
    display: block;
}
.tab_only {
    display: none;
}

.sup-child {
    padding-top: 80px;
}

.sup-child .p-fee__ex__header , .sup-child .p-fee__text {
    margin-top: 15px;
    font-size: 16px;
    line-height: 2em;
}

.sup-child table tbody {
    font-size: 14px;
}

.p-fee.sup-child {
    padding-top: 0;
}

.sup-child__img {
    text-align: center;
    margin-top: 30px;
}

.study-graph img {
    background: #fff;
    padding: 10px;
}

.sup-child tr td {
    text-align: start;
    vertical-align: middle;
}

.sup-child__ex {
    margin-top: 30px;
}

.sup-child .p-fee__caption {
    text-indent: -1em;
    padding: 0 0 0 1em;
    display: block;
    line-height: 1.5em;
    text-align: start;
}

.sup-child__scholarship {
    margin-top: 45px;
}

.sup-child .sup-child__table-head {
    letter-spacing: -0.2em;
}

.sup-child .p-fee__header , .sup-child .c-heading {
    margin-bottom: 30px;
}


.sup-child tr .sup-child__bg-blue {
    background-image: linear-gradient(90deg,#bffcff,#a79fff);
}

.sup-child tr .sup-child__bg-red {
    background-image: linear-gradient(90deg,#ffbad7,#ffd39e);
}

.sup-child .sup-child__bg-gray {
    background-color: #c1c1c1;
}

.sup-child .sup-child__bg-black {
    background:linear-gradient(90deg,#68717b,#2b2d31);
    color: white;
}

.sup-child tr .sup-child__flex-bet {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border: none;
}

.sup-child ul {
    margin-left: calc(1em + 9px);
    list-style: disc;
}

.sup-child ol {
    margin-left: 1.6em;
    list-style: decimal;
}

.sup-child th , .sup-child td {
    vertical-align: middle;
    height: 5em;
}

.sup-child .sup-child__link-btn {
    margin-top: 14px;
    border-radius: 100px;
    background-color: #ffffff;
    color: #000000;
    line-height: 1.5em;
    text-align: start;
    width: 50%;
}

.sup-child tbody tr th {
    font-weight: bold;
    vertical-align: middle;
    background-color: #c1c1c1;
}

.sup-child__border {
    height: 30px;
    width: 2px;
    margin: auto;
    background-color: white;
    position: relative;
}

.sup-child__border p {
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
    width: max-content;
}

.reserve-schedule {
    margin-top: 80px;
}

.reserve-schedule .sup-child__info {
    margin-bottom: 15px;
}

.reserve-schedule .sup-child__table {
    table-layout: fixed;
}

.reserve-schedule tr:first-child th {
    background-color: #c1c1c1;
}

.reserve-schedule th span {
    font-weight: bold;
    /* text-decoration: underline #fff 4px; */
}

.reserve-schedule .sup-child__lh-15 {
    line-height: 1.5em;
}

.reserve-schedule .p-fee__table {
    margin-top: 0;
}

.requirements .sup-child__bg-black {
    background: #68717b;
    color: white;
}

.requirements .sup-child__subtitle {
    text-align: start;
}

.sup-child__link:last-child{
    margin-bottom: 45px;
}

.requirements .c-button {
    padding: 10px 25px;
}

.requirements .c-button__text {
    line-height: 28px;
}

.sup-child__contact {
    max-width: 1280px;
    padding: 0 80px;
    margin: 80px auto 0;
}

.sup-child__contact .sup-child__anchors {
    padding: 0;
    width: 100%;
}

.sup-child__contact .p-anchors__list {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 10px;
}

.sup-child__contact .p-anchors__item {
    margin: 0;
    padding: 0;
}

.sup-child__info {
    font-size: 18px;
    letter-spacing: .04em;
    line-height: 32px;
    color: #fff;
    margin-top: 30px;
}

.sup-child__caption-box {
    display: block;
    margin-bottom: 30px;
}

.sup-child__point-list {
    display: grid;
    row-gap: 1.6rem;
    grid-template-columns: repeat(3, 31%);
    grid-auto-rows: 1fr;
    column-gap: 3.5%;
    text-align: center;
}

.sup-child__point_item p {
    font-size: 22px;
    line-height: 32px;
}

.point-number::before {
    content: "point";
    display: inline;
    font-size: 14px;
    color: white;
}

.point-number {
    font-size: 22px;
    font-weight: bold;
    border-bottom: white solid 1px;
    margin-bottom: 15px;
    line-height: 32px;
}

.sup-child__rank-list {
    margin-top: 15px;
}

.sup-child__rank-list dl {
    border-top: 1px solid #bfbfbf;
    border-bottom: 1px solid #bfbfbf;
    border-right: 1px solid #bfbfbf;
    display: grid;
    grid-template-columns: 16% repeat(auto-fit ,minmax(120px ,1fr));
    grid-auto-rows: 1fr;
    margin-bottom: 1rem;
    font-size: 18px;
    line-height: 30px;
}

.sup-child__rank-list dt, .sup-child__rank-list dd {
    padding: 4%;
    display: grid;
    text-align: center;
    justify-content: center;
    align-items: center;
    color: #000;
}

.sup-child__rank-list dd {
    background-color: #e8e8e8;
}

.sup-child__rank-list dl dt:nth-of-type(1) {
    font-size: 14px;
    line-height: 1.0;
    color: #FFF;
    background-color: rgba(253, 142, 190 ,1);
    align-content: center;
}

.sup-child__rank-list .rank_a dt:nth-of-type(1){
    background-color: rgba(206, 021, 054 ,1);
}

.sup-child__rank-list .rank_b dt:nth-of-type(1){
    background-color: rgba(218, 051, 087 ,1);
}

.sup-child__rank-list .rank_c dt:nth-of-type(1){
    background-color: rgba(230, 081, 121 ,1);
}

.sup-child__rank-list .rank_d dt:nth-of-type(1){
    background-color: rgba(241, 112, 156 ,1);
}

.sup-child__rank-list .rank_e dt:nth-of-type(1){
    background-color: rgba(253, 142, 190 ,1);
}

.sup-child__rank-list dl dt:nth-of-type(2){
    border-right: 1px solid #bfbfbf;
    background-color: #68717b;
    color: #fff;
}

.rank {
    font-size: 22px;
    line-height: 30px;
}

.period {
    font-weight: bold;
}

.pdf_link {
    color: #2a72f5;
    border-bottom: #2a72f5 solid 1px;
}


.qualification__caption {
    text-indent: -1em;
    padding: 0 0 0 1em;
    display: block;
    line-height: 1.5em;
    text-align: start;
}

.qualification-list dd {
    text-align: start;
    justify-content: start;
    line-height: 2em;
}

.qualification-list ul {
    list-style: none;
    margin: 0;
}

.qualification-list li {
    margin: 0;
}

.sup-child sup {
    font-size: 10px;
    display: inline-block;
    margin-top: -0.5em;
    vertical-align: super;
}

.sup-child .notelist {
    list-style: none;
    margin: 0;
    font-size: 11px;
}

.sup-child .notelist li {
    display: grid;
    grid-template-columns: 2.5em 1fr;
    column-gap: 0.25em;
    margin: 10px 0;
    line-height: 1.5em;
}

.pdf_link::after {
    content: "";
    display: inline-block;
    width: 0.75em;
    height: 0.75em;
    position: relative;
    top: 0;
    right: -0.5em;
    background: url(../../assets/images/support/blank.png) no-repeat;
    background-size: contain;
}

.sup-child strong {
    font-weight: bold;
}

.sup-child__inline-table {
    margin-top: 10px;
}

.sup-child .sup-child__entry-text {
    color: black;
}

.sup-child__radius-header {
    text-align: start;
    margin-bottom: 20px;
}

.sup-child__ao-table-content {
    margin-bottom: 10px;
}

.sup-child__radius {
    background-color: #2c2c2c;
    border-image-slice: 1;
    padding: 20px;
}

.sup-child__radius-free {
    background-image: linear-gradient(125deg, #05aeff 0%,#c92cff);
    border-radius: 100vw;
    color: #ffffff;
    display: inline-block;
    padding: 2px 15px;
    margin: 0 20px;
}

.sup-child__ao-entry {
    padding: 20px;
    width: 100%;
    margin: auto;
    background: #e8e8e8;
    border-image-slice: 1;
    line-height: 32px;
    color: #000000;
}

.entry-head {
    text-align: start;
    font-size: 16px;
}

.hr_blue {
    height: 1px;
    width: 100%;
    display: inline-block;
    background-image: linear-gradient(125deg,#ff509a 0%,#ffb155);
}

.sup-child__ao-square {
    border: solid #000 2px;
    font-weight: bold;
    width: 1.5em;
    height: 1.5em;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    margin-right: 5px;
}

.sup-child .entry-radius {
    border-radius: 100vw;
    padding: 2px 15px;
    background-image: linear-gradient(90deg,#05d1ff 0%,#3c2cff);
    color: #fff;
    margin: 0 10px;
}

.sup-child__point-ao-list {
    display: grid;
    grid-template-columns: repeat(3, 31%);
    grid-auto-rows: 1fr 1fr 1fr;
    column-gap: 3.5%;
    justify-items: center;
}

@media (max-width: 1024px) {

    .sup-child__contact {
        padding: 0 80px;
    }

    .sup-child__contact .p-anchors__list {
        grid-template-columns: 1fr 1fr;
    }

    .sup-child .sup-child__link-btn {
        width: 100%;
    }

    .tab_only {
        display: block;
    }

}

@media (max-width: 767px) {

    .sup-child .p-fee__header {
        margin: 30px 0;
    }

    .p-fee .p-fee__header {
        margin: 0 2.4rem;
    }

    .sup-child .p-fee__ex {
        padding: 0;
    }

    .p-fee .p-fee__ex {
        padding: 0 2.4rem;
    }

    .l-fee .p-fee {
        padding: 50px 0 0;
        margin: 0 auto 0;
    }

    .p-fee__table .sup-child__table {
        width: 100%;
    }

    .requirements .sup-child__sp-table {
        width: 50rem;
    }

    .sp_only {
        display: block;
    }
    .pc_only {
        display: none;
    }
    .requirements .c-button {
        padding: 10 0;
    }

    .sup-child__point_item {
        display: grid;
        grid-template-columns: 20% 75%;
        grid-auto-rows: 1fr;
        column-gap: 5%;
        align-items: center;
    }

    .point-number {
        padding: 10% 0;
        border-bottom: none;
        border-right: 1px solid #fff;
        margin: 0;
    }

    .sup-child__point-list {
        grid-template-columns: 1fr;
    }

    .point-number::before {
        display: block;
    }

    .sup-child__point_item p {
        text-align: start;
    }

    .sup-child__rank-list dl {
        font-size: 16px;
    }

    .qualification-list li {
        margin: 10px 0;
    }

    .sup-child__info {
        font-size: 16px;
    }

    .sup-test colgroup {
        display: none;
    }

    .sup-test th , .sup-test td {
        display: block;
        width: 100%;
    }

    .sup-child th, .sup-child td {
        height: auto;
    }

    .sup-child__inline-table th ,.sup-child__inline-table td {
        height: 5em;
        display: table-cell;
        width: auto;
    }

    .sup-child__inline-table colgroup {
        display: block;
    }

    .table-scroll {
        overflow-x: scroll;
    }

    .sup-child__table-parent thead td,
    .sup-child__table-parent tbody td,
    .sup-child__table-parent tbody th {
        border-top: none;
    }

    .sup-child__inline-table thead th {
        border-top: #000 solid 1px;
    }

    .sup-test .sup-child__table-parent > table,
    .sup-test .sup-child__table-parent > table > tbody,
    .sup-test .sup-child__table-parent > table > thead > tr,
    .sup-test .sup-child__table-parent > table > tbody > tr,
    .sup-test .sup-child__table-parent > table > thead > tr > th,
    .sup-test .sup-child__table-parent > table > tbody > tr > th,
    .sup-test .sup-child__table-parent > table > tbody > tr > td {
        width: 100%;
        display: block;
    }

}
/* souki */
.sup-child__entry-body {
    margin-top: 30px;
}
.sup-child__entry-body p {
    font-size: 20px;
    text-align: center;
    margin-bottom: 15px;
}
@media (max-width: 767px){
    .sup-child__entry-body p {
        font-size: 18px;
    }
}
small {
    font-size: 11px;
    line-height: 1.5em;
    display: block;
}
.entry-head span:nth-child(3) {
    float: right;
}
.accent-color {
    background-color: rgb(247 158 197);
}
.link-list_blank.link-list_blank_white::after{
    background: url(../../assets/images/admission/blank_wh.png) no-repeat;
    background-size: contain;
}
/* --souki */

/* 20240304 */
.notes-list{
    margin-left:0em!important;
}
/* 20240304 */

.link-list_blank.link-list_blank_white::after{
    background: url(../../assets/images/admission/blank_wh.png) no-repeat;
    background-size: contain;
}

/*------------------

20250522
AOページのポイント追加

--------------------*/
.admission-ao-point .point-number{
    margin-bottom: 0;
    border: none;
}
.admission-ao-point .point-number::before{
    content: "POINT";
    display: inline;
    font-size: 14px;
    color: currentColor;
}
.admission-ao-point .sup-child__point_item{
    display: flex;
}
.admission-ao-point .sup-child__point_item p{
    margin-left: 10px;
}
.admission-ao-point .p-fee__text{
    margin-top: 0;
}

@media (max-width:786px){
    .admission-ao-point .point-number{
        border: none;
    }
    .admission-ao-point .sup-child__point_item{
        display: block;
    }  
    .admission-ao-point .sup-child__point_item p{
        margin-left: 0;
    }
    .admission-ao-point .point-number{
        padding: 3% 0;
    }
}

/* 20250827　AOエントリー強調表現 */
/* 共通設定 */
.admission-ao #section01::before {
    content: "";
    /* display: block; */
    display: none;
    margin: 0 auto;
}

@media (min-width: 769px) {
    .admission-ao #section01::before {
        width: 600px;
        height: 120px;
        background: url(../../../design/common/images/admission/ao/ao-entry-banner--pc.png)no-repeat center;
        background-size: cover;
        margin-bottom: 3rem;
    }
}

@media (max-width: 768px) {
    .admission-ao #section01::before {
        max-width: 100%;
        width: calc(100%);
        padding-top: 20.67%;
        background: url(../../../design/common/images/admission/ao/ao-entry-banner--pc.png)no-repeat center;
        background-size: contain;
        margin-bottom: 3rem;
    }
}

@media (min-width: 500px) and (max-width: 768px) {
    .admission-ao #section01::before{
        padding-top: 30%;
    }
}

.admission-ao #section03 .sup-child__entry-body > div:nth-child(3).sup-child__ao-entry strong::after,
.admission-ao #section04 .sup-child__table tr:nth-child(3) td:after
{
    content: "エントリー受付中！";
    color: #fff;
    background: red;
    font-size: 1rem;
    font-weight: bold;
    /* display: inline-block; */
    display: none;
    padding: 0px 5px;
    border-radius: 5px;
    margin-left: 10px;
}
.admission-ao #section04 .sup-child__table tr:nth-child(3) td:after{
    margin-left: 0;
}
@media (max-width:768px){
    .admission-ao #section03 .table-style.type-block table tr:nth-child(3) td:after,
    .admission-ao #section04 .flow-body:nth-child(2) .heading-area p:after{
        margin-left: 0;
    }
}