
/*====================================================
////id |  page_title
====================================================*/
.course_title.title_bg {
    color: #fff;
    display: flex;
        align-items: center;
        justify-content: center;
}
.course_title.title_bg .page_title_bg {
    position: absolute;
        top: 0;
        left: 0;
    width: 100%;
    height: 100%;
}
.course_title.title_bg .page_title_bg::after {
    background: #000;
    content: '';
    display: block;
    margin: auto;
    opacity: .5;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
    .course_title.title_bg .page_title-inner {
        padding: 80px 0 min(15vw, 80px);
    }
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
    .course_title.title_bg {
        min-height: min(30vw, 450px);
    }
    .course_title.title_bg .page_title-inner {
        padding: min(10vw, 100px) 0;
    }
}

@media screen and (min-width: 1080px) {
}

@media (hover: hover) {}

/*====================================================
////id |  coach
====================================================*/
#coach {
    background: #fff;
    overflow: hidden;
}
.coach-item-wrapper {
    display: flex;
        flex-wrap: wrap;
        grid-gap: min(4vw, 40px);
        justify-content: center;
}
.coach-item-link {
    display: block;
    text-align: center;
}
.coach-item-img {
    margin-bottom: 10px;
}
.coach-item-img-figure {
    padding-top: 100%;
}
.coach-item-text {
    line-height: 1.4;
}
.coach-item-text .position {
    font-size: .5em;
}
.coach-item-name {
    font-weight: 500;
}
.coach-item-link_text {
    font-size: .5em;
    margin-top: .3em;
    text-align: right;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
    .coach-item {
        width: calc(100% / 2 - min(4vw, 40px) * 1 / 2);
    }
    .coach-item-text {
        font-size: min(4.5vw, 2.5rem);
    }
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
    .coach-item {
        width: calc(100% / 3 - min(4vw, 40px) * 2 / 3);
    }
    .coach-item-text {
        font-size: min(2.6vw, 2.5rem);
    }
}

@media screen and (min-width: 1080px) {
    .coach-item {
        width: calc(100% / 4 - min(4vw, 40px) * 3 / 4);
    }
    .coach-item-text {
        font-size: min(2.0vw, 2.8rem);
    }
}

@media (hover: hover) {}

/*====================================================
////id |  plan
====================================================*/
#plan::before{
    background: #000;
    content: '';
    display: block;
    margin: auto;
    opacity: .7;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.plan-inner {
    color: #fff;
}
.plan-item-wrapper {
    display: flex;
        flex-wrap: wrap;
        gap: min(3vw, 30px);
        justify-content: center;
    margin: min(8vw, 60px) auto 0;
    max-width: 1000px;
}
.plan-item {
    background: #fff;
    border-radius: 10px;
    color: var(--black);
    /* display: flex;
        align-items: center;
        justify-content: center; */
    line-height: 1.3;
}
.plan-item-title_text {
    border: solid 1px;
    display: inline-block;
    padding: 0 .5em;
    margin-bottom: .5em;
    min-width: 4em;
}
.plan-item-notax_price {
    font-weight: 500;
}
.plan-item-notax_price .big {
    font-size: 1.4em;
}
.plan-item-tax_price {
    font-size: .7em;
}
.plan-item-text {
    font-size: .9em;
    margin-top: .3em;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 960px) {
    .plan-item-wrapper {
        flex-direction: column;
        max-width: 500px;
    }
    .plan-item {
        padding: 1em 1em;
    }
    .plan-item-notax_price {
        font-size: min(6vw, 3rem);
    }
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 960px) {
    .plan-item {
        padding: 1.5em 1em;
        width: calc(100% / 3 - min(3vw, 30px) * 2 / 3);
    }
    .plan-item-notax_price {
        font-size: min(3vw, 3.5rem);
    }
}

@media (hover: hover) {}

/*====================================================
////id |  area
====================================================*/
.area-item-wrapper {
    display: flex;
        flex-wrap: wrap;
        gap: .3em;
        justify-content: center;
}
.area-item {
    background-color: #fff;
    border: solid 1px;
    line-height: 1;
    padding: .4em 1.5em .3em;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
}

@media (hover: hover) {}

/*====================================================
////id |  flow
====================================================*/
#flow {
    overflow: hidden;
}
.flow-inner {
    max-width: none;
}
.flow-slider {
    display: grid;
        grid-gap: 20px;
}
.flow-slider.is-overflow {
    margin: auto;
    width: 90%;
}
.flow-slider .splide__track {
    overflow: visible;
}
.flow-slider .splide__track.is-overflow {
    display: flex;
    justify-content: center;
}
.flow-slider .splide__arrows {
    display: flex;
        gap: min(5vw, 100px);
        justify-content: space-between;
    grid-row: 2;
    position: unset;
}
.flow-slider .splide__arrow {
    background: var(--gray);
    flex: 1;
    margin: 0;
    max-width: 80px;
    position: unset;
}
.flow-slider .splide__arrow::before {
    display: none;
}
.flow-slider .splide__arrow svg {
    display: block;
    height: 60%;
}
.flow-slider-progress {
    margin-top: 0;
}

.flow-item {
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 3px 6px rgba(0, 0, 0, .15);
    padding: min(6vw, 45px) 20px;
    position: relative;
}
.flow-item::after {
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 40 40"><path fill="%23888888" d="M40,20c0,11.05-8.95,20-20,20S0,31.05,0,20,8.95,0,20,0s20,8.95,20,20Z" /><path fill="%23ffffff" d="M24.72,24.18v-3.32H7.41v-1.72h17.31v-3.32l7.87,4.18-7.87,4.18Z" /></svg>') no-repeat center bottom / contain;
    content: '';
    display: block;
    margin: auto;
    position: absolute;
        top: 0;
        left: calc(100% + 7px);
        bottom: 0;
    width: 26px;
    height: 26px;
}
.flow-item:last-child::after {
    display: none;
}
.flow-item-img {
    margin: auto;
    width: min(60%, 150px);
}
.flow-item dt {
    display: flex;
        align-items: center;
        justify-content: center;
    font-size: 1.1em;
    font-weight: 500;
    line-height: 1.4;
    margin: .3em 0;
    min-height: 3.5em;
    text-align: center;
}
.flow-item dd {
    font-size: .9em;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
    .flow-slider.is-overflow {
        width: min(calc(100% - 100px), 400px);
    }

}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
}

@media (hover: hover) {}


/*====================================================
////id |  cancel
====================================================*/
#cancel {
    border: solid var(--d_gray);
    border-width: 1px 0;
}
.cancel-inner {
    display: flex;
        justify-content: center;
}
.cancel-text {
    font-size: .9em;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
    .cancel-head {
        font-size: 1.2em;
        margin-bottom: 1em;
        text-align: center;
    }
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
    .cancel-content {
        display: flex;
    }
    .cancel-head {
        font-size: min(2.6vw, 2.6rem);
        margin-right: 2em;
    }
}

@media (hover: hover) {}

/*====================================================
////id |  other_course
====================================================*/
.other_course-inner {
    width: 100%;
        max-width: none;
}

.other_course-item-link {
    display: block;
    position: relative;
}
.other_course-item-img-figure::after {
    background: #000;
    content: '';
    display: block;
    margin: auto;
    opacity: .5;
    position: absolute;
        top: 0;
        left: 0;
    transition: .3s ease-in-out;
    width: 100%;
    height: 100%;
}
.other_course-item-text {
    color: #fff;
    display: flex;
        align-items: center;
        justify-content: center;
    font-weight: 500;
    position: absolute;
        top: 0;
        left: 0;
    text-align: center;
    width: 100%;
    height: 100%;
}
.other_course-item-text .en {
    line-height: 1;
    margin-bottom: .2em;
}
.other_course-item-text .arrow {
    filter: invert(10);
    margin-left: 0;
    margin-top: .2em;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
    .other_course-item-wrapper {
        display: grid;
    }
    .other_course-item-img-figure {
        padding-top: min(50vw, 300px);
    }
    .other_course-item-text {
        filter: drop-shadow(0 0 .3em #000);
    }
    .other_course-item-text .en {
        font-size: min(10vw, 5rem);
        margin-bottom: .1em;
    }
    .other_course-item-text .arrow {
        font-size: min(7vw, 4rem);
        margin-top: .1em;
    }
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
    .other_course-item-wrapper {
        display: flex;
            flex-wrap: wrap;
    }
    .other_course-item {
        flex: 1;
        min-width: 50%;
    }
    /* .other_course-item-wrapper.items_odd .other_course-item:first-child {
        min-width: 100%;
    } */
    .other_course-item-img-figure {
        padding-top: min(48vw, 450px);
    }
    .other_course-item-text .en {
        font-size: min(6vw, 6rem);
    }
    .other_course-item-text .arrow {
        font-size: min(5vw, 6.5rem);
    }
}

@media screen and (min-width: 1080px) {
    .other_course-item {
        min-width: calc(100% / 3);
    }
    .other_course-item-wrapper.items_odd .other_course-item:first-child {
        min-width: calc(100% / 3);
    }
    .other_course-item-img-figure {
        padding-top: min(33vw, 450px);
    }
    .other_course-item-text .en {
        font-size: min(4vw, 6rem);
    }
    .other_course-item-text .arrow {
        font-size: min(3.5vw, 6.5rem);
    }
}

@media (hover: hover) {
    a:hover .other_course-item-img-figure::after {
        opacity: .8;
    }
}

/*====================================================
////id |  xxx
====================================================*/

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
}

@media (hover: hover) {}
