@charset "UTF-8";
@import url(https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Noto+Sans+JP:wght@100..900&display=swap);


.c-cta-contact__title, .c-drawer__cta-title, .c-heading01, .c-heading02, .c-link-card-event__title, .c-link-card01__title .text, .c-link-media-event__title, .c-lower-kv01__title, .c-lower-menu__title .ja, .c-post-content>h2, .c-post-content>h3, .c-post-content>h4, .c-title01, .c-title02, .p-course-division_kv__copy, .p-course-division_kv__title, .p-course-division_study-training__title, .p-course-division_support__aco-head, .p-event-single_content>h2, .p-facility-zone-modal__head .title, .p-facility_zone-card__title .text, .p-teacher_teacher__name .ja {
    font-weight: 500;
    letter-spacing: .05em;
    line-height: 1.5
}

.c-post-content>p {
    margin-bottom: 1.5em
}

.c-post-content>h2, .c-post-content>h3, .c-post-content>h4 {
    margin-bottom: 1em;
    margin-top: 3em
}

.c-post-content>h2 {
    font-size: min(calc(1.63265vw + .74235rem), 2.375rem);
    position: relative
}

.c-post-content>h2:before {
    aspect-ratio: 1/1;
    background-color: #07d0d8;
    border-radius: 50%;
    content: "";
    left: -.75em;
    position: absolute;
    top: .4em;
    width: .2631578947em
}

.c-post-content>h3 {
    color: #07d0d8;
    font-size: min(calc(1.06122vw + .68878rem), 1.75rem);
    padding-left: 1em;
    position: relative
}

.c-post-content>h3:before {
    background-color: #07d0d8;
    bottom: .2em;
    content: "";
    left: 0;
    position: absolute;
    top: .3em;
    width: min(.1224489796vw + 1.0408163265px, 3px)
}

.c-post-content .c-button01 {
    margin: min(2.0408163265vw + 17.3469387755px, 50px) 0
}

.c-post-content .wp-block-image {
    margin: min(2.8571428571vw + 24.2857142857px, 70px) auto;
    text-align: center
}

.c-post-content>:first-child {
    margin-top: 0
}

.c-post-content>:last-child {
    margin-bottom: 0
}

.p-event-single_content>p {
    margin-bottom: 1.5em
}

.p-event-single_content>h2 {
    color: #07d0d8;
    font-size: min(calc(.32653vw + .79847rem), 1.125rem);
    margin-bottom: min(3.2653061224vw + 27.7551020408px, 80px);
    margin-top: min(7.3469387755vw + 62.4489795918px, 180px);
    position: relative
}

.p-event-single_content>h2:before {
    border-top: 1px solid;
    content: "";
    position: absolute;
    right: calc(100% + 2em);
    top: .8em;
    width: 100vw
}

.p-event-single_content>:first-child {
    margin-top: 0
}

.p-event-single_content>:last-child {
    margin-bottom: 0
}

@keyframes rotate {
    0% {
        transform: rotate3d(0, 0, 0, 0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes swimUp {
    0% {
        transform: translateZ(0)
    }

    to {
        transform: translate3d(0, -10px, 0)
    }
}

@keyframes bubbleShake {
    0% {
        transform: translate3d(5px, 0, 0)
    }

    50% {
        transform: translate3d(-5px, 0, 0)
    }

    to {
        transform: translate3d(5px, 0, 0)
    }
}

@keyframes bubbleUp {
    0% {
        transform: translateZ(0)
    }

    to {
        opacity: 0;
        transform: translate3d(0, -150vh, 0)
    }
}

@keyframes lowFrameRotate {
    0%, 50%, to {
        transform: rotate(0)
    }

    25% {
        transform: rotate(6deg)
    }

    75% {
        transform: rotate(-6deg)
    }
}

@keyframes lowFrameScale {
    0% {
        transform: scale(1)
    }

    to {
        transform: scale(1.1)
    }
}

@keyframes lowFrameY {
    0% {
        transform: translateY(0)
    }

    to {
        transform: translateY(-1em)
    }
}

/*! destyle.css v2.0.2 | MIT License | https://github.com/nicolas-cusan/destyle.css */
*, :after, :before {
    border-style: solid;
    border-width: 0;
    box-sizing: border-box
}

html {
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: #fff0;
    line-height: 1.15
}

body {
    margin: 0
}

main {
    display: block
}

address, blockquote, dl, figure, form, iframe, p, picture, pre, table {
    margin: 0
}

h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    margin: 0
}

ol, ul {
    list-style: none;
    margin: 0;
    padding: 0
}

dt {
    font-weight: 700
}

dd {
    margin-left: 0
}

hr {
    border-top-width: 1px;
    box-sizing: content-box;
    clear: both;
    color: inherit;
    height: 0;
    margin: 0;
    overflow: visible
}

pre {
    font-family: monospace, monospace;
    font-size: inherit
}

address {
    font-style: inherit
}

a {
    background-color: #fff0;
    color: inherit;
    text-decoration: none
}

abbr[title] {
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted
}

b, strong {
    font-weight: bolder
}

code, kbd, samp {
    font-family: monospace, monospace;
    font-size: inherit
}

small {
    font-size: 80%
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

embed, iframe, img, object {
    vertical-align: bottom
}

button, input, optgroup, select, textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: #fff0;
    border-radius: 0;
    color: inherit;
    font: inherit;
    margin: 0;
    outline: 0;
    padding: 0;
    text-align: inherit;
    vertical-align: middle
}

[type=checkbox] {
    -webkit-appearance: checkbox;
    -moz-appearance: checkbox;
    appearance: checkbox
}

[type=radio] {
    -webkit-appearance: radio;
    -moz-appearance: radio;
    appearance: radio
}

button, input {
    overflow: visible
}

button, select {
    text-transform: none
}

[type=button], [type=reset], [type=submit], button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer
}

[type=button][disabled], [type=reset][disabled], [type=submit][disabled], button[disabled] {
    cursor: default
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
    border-style: none;
    padding: 0
}

[type=button]:-moz-focusring, [type=reset]:-moz-focusring, [type=submit]:-moz-focusring, button:-moz-focusring {
    outline: 1px dotted ButtonText
}

select::-ms-expand {
    display: none
}

fieldset, option {
    padding: 0
}

fieldset {
    margin: 0;
    min-width: 0
}

legend {
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal
}

progress {
    vertical-align: baseline
}

textarea {
    overflow: auto
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

label[for] {
    cursor: pointer
}

details {
    display: block
}

summary {
    display: list-item
}

[contenteditable] {
    outline: none
}

table {
    border-spacing: 0
}

caption {
    text-align: left
}

td, th {
    padding: 0
}

th {
    font-weight: 700;
    text-align: left
}

[hidden], template {
    display: none
}

body {
    -webkit-text-size-adjust: 100%;
    font-feature-settings: "palt";
    background-color: #fff;
    color: #505050;
    font-family: Noto Sans JP, Hiragino Sans, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN W3, 游ゴシック, YuGothic, 游ゴシック体, BIZ UDPGothic, Meiryo, Helvetica Neue, Arial, sans-serif;
    font-size: min(calc(.2449vw + .7551rem), 1rem);
    font-weight: 400;
    letter-spacing: .05em;
    line-height: 2;
    scrollbar-gutter: stable;
    text-indent: min(0vw, 0rem)
}

#page {
    overflow: clip;
    position: relative
}

figure, picture {
    display: block
}

img {
    height: auto;
    max-width: 100%;
    min-height: 1px;
    -o-object-fit: cover;
    object-fit: cover;
    vertical-align: bottom
}

img.-t {
    -o-object-position: center top;
    object-position: center top
}

img.-tl {
    -o-object-position: left top;
    object-position: left top
}

img.-tr {
    -o-object-position: right top;
    object-position: right top
}

img.-r {
    -o-object-position: right center;
    object-position: right center
}

img.-b {
    -o-object-position: center bottom;
    object-position: center bottom
}

img.-bl {
    -o-object-position: left bottom;
    object-position: left bottom
}

img.-br {
    -o-object-position: right bottom;
    object-position: right bottom
}

img.-l {
    -o-object-position: left center;
    object-position: left center
}

.js-svg {
    height: 1em;
    width: 1em
}

img.js-svg {
    opacity: .6
}

svg.js-svg {
    opacity: 1
}

svg {
    overflow: hidden
}

table {
    border-collapse: collapse;
    margin: 0 auto;
    width: 100%
}

td, th {
    border: 1px solid #ccc;
    vertical-align: top
}

input, textarea {
    background-color: #fff;
    border: 1px solid #a7a6aa;
    border-radius: 2px;
    margin: 0;
    padding: 5px 7px
}

input[type=text], textarea {
    border: 1px solid #aaa;
    outline: none;
    transition: all .3s ease
}

input[type=text]:focus, textarea:focus {
    border: 1px solid #52a8ec;
    box-shadow: 0 0 7px #52a8ec
}

.l-header {
    height: min(5.7142857143vw + 68.5714285714px, 160px);
    left: 0;
    pointer-events: none;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 5000
}

.l-header__inner {
    align-items: center;
    display: flex;
    height: 100%
}

.l-header__logo {
    color: #3e3a39;
    font-size: min(calc(3.02041vw + 2.66709rem), 5.6875rem);
    margin-right: auto;
    pointer-events: auto;
    transition-duration: 1s;
    transition-property: color
}

.is-drawer-open .l-header__logo {
    color: #fff
}

.l-header__logo .link {
    align-items: center;
    display: flex;
    gap: .2197802198em
}

.l-header__logo .link .main {
    font-size: 1em
}

.l-header__logo .link .text {
    font-size: .5274725275em
}

.l-header__logo img, .l-header__logo svg {
    display: block;
    height: 1.3em;
    width: auto
}

.l-header__cta {
    display: flex;
    gap: min(.8163265306vw + 6.9387755102px, 20px);
    margin-right: 20px;
    opacity: 1;
    pointer-events: auto;
    transition-duration: 1s;
    transition-property: opacity, visibility;
    visibility: visible
}

.is-drawer-open .l-header__cta {
    opacity: 0;
    visibility: hidden
}

.l-header__cta-button {
    color: #fff;
    flex: 1;
    font-weight: 500;
    line-height: 1.5
}

.l-header__cta-button.-pamphlet {
    order: -1
}

.l-header__cta-button.-pamphlet a {
    background-image: linear-gradient(120deg, #e9f213, #e2dc52 32.45%, #f88f00)
}

.l-header__cta-button.-pamphlet .ico {
    color: #f88f00
}

.l-header__cta-button a {
    align-items: center;
    background-image: linear-gradient(120deg, #d8f213, #84e252 32.45%, #09bcd3);
    border-radius: 9999px;
    box-shadow: 0 0 70px rgb(46 204 188 / .3);
    display: flex;
    gap: 1em;
    min-height: 3.5em;
    min-width: 11.875em;
    padding: .5em 1em .5em 1.5em;
    transition-duration: .5s
}

.l-header__cta-button a .ico {
    aspect-ratio: 1/1;
    background-color: #fff;
    border-radius: 50%;
    color: #09bcd3;
    color: #07d0d8;
    display: grid;
    font-size: 1.875em;
    height: 1em;
    margin-left: auto;
    overflow: hidden;
    place-items: center;
    transition-duration: .5s
}

.l-header__cta-button a .ico .c-ico {
    font-size: .4333333333em
}

.l-header-hamburger {
    cursor: pointer;
    display: grid;
    font-size: min(calc(1.63265vw + 3.36735rem), 5rem);
    margin: -10px;
    padding: 10px;
    pointer-events: auto;
    transform: scaleX(1);
    transition-duration: .5s;
    transition-property: transform
}

.l-header-hamburger img {
    border-radius: 50%;
    box-shadow: 0 0 70px rgb(46 204 188 / .3);
    display: block;
    grid-area: 1/1;
    transition-duration: 1s;
    transition-property: opacity;
    width: 1em
}

.l-header-hamburger .default {
    opacity: 1
}

.is-drawer-open .l-header-hamburger .default, .l-header-hamburger .close {
    opacity: 0
}

.is-drawer-open .l-header-hamburger .close {
    opacity: 1
}

.l-footer {
    color: #fff;
    margin-top: min(10.612244898vw + 90.2040816327px, 260px);
    padding-bottom: min(5.306122449vw + 45.1020408163px, 130px);
    position: relative
}

.l-footer__gallery {
    display: grid;
    gap: 10px
}

.l-footer__gallery .swiper {
    max-width: 100%
}

.l-footer__gallery .swiper-slide {
    aspect-ratio: 1/1;
    margin-right: 10px
}

.l-footer__gallery .swiper-slide img {
    border-radius: 10px;
    width: 25vw
}

.l-footer__main {
    margin-top: 90px
}

.l-footer__main-row {
    align-items: start;
    display: grid;
    grid-template-columns: 1fr auto
}

.l-footer__company-logo {
    display: flex;
    font-size: min(calc(2.20408vw + 3.73342rem), 5.9375rem);
    margin-bottom: .5em
}

.l-footer__company-logo img {
    display: block;
    height: 1em;
    width: auto
}

.l-footer__company-address {
    font-size: min(calc(.08163vw + .91837rem), 1rem);
    margin-bottom: .5em
}

.l-footer__company-address .zip-code {
    margin-bottom: .5em
}

.l-footer__company-contacts {
    display: grid;
    font-size: 1rem;
    gap: .6em;
    justify-content: start
}

.l-footer__company-contacts a {
    align-items: center;
    display: flex;
    font-family: Montserrat, sans-serif;
    gap: .5em;
    line-height: 1;
    transition-duration: .5s;
    transition-property: opacity
}

.l-footer__company-contacts a .c-ico {
    font-size: 1.125em
}

.l-footer__company-links {
    display: flex;
    gap: min(.8163265306vw + 6.9387755102px, 20px);
    margin-top: min(.4081632653vw + 28.4693877551px, 35px)
}

.l-footer__company-button {
    display: flex;
    font-size: min(calc(.08163vw + .91837rem), 1rem);
    font-weight: 500;
    line-height: 1.5
}

.l-footer__company-button a {
    align-items: center;
    border: 1px solid #fff;
    border-radius: 9999px;
    color: #fff;
    display: flex;
    gap: .5em;
    justify-content: center;
    min-width: 15em;
    padding: .5em 2em .5em 1.5em;
    transition-duration: .5s;
    transition-property: background-color, color
}

.l-footer__company-button .ico {
    font-size: .875em
}

.l-footer__company-sns {
    display: flex;
    gap: 15px
}

.l-footer__company-sns a {
    aspect-ratio: 1/1;
    border: 1px solid #fff;
    border-radius: 50%;
    color: #fff;
    display: grid;
    font-size: min(calc(.65306vw + 2.34694rem), 3rem);
    place-items: center;
    transition-duration: .5s;
    transition-property: background-color, color;
    width: 1em
}

.l-footer__company-sns a .c-ico {
    font-size: .4791666667em
}

.l-footer__cta {
    display: grid;
    font-size: min(calc(1.38889vw - .07552rem), 1.3125rem);
    gap: min(.8163265306vw + 6.9387755102px, 20px)
}

.l-footer__cta-button {
    color: #fff;
    flex: 1;
    font-weight: 500;
    line-height: 1.5
}

.l-footer__cta-button.-pamphlet a {
    background-image: linear-gradient(120deg, #e9f213, #e2dc52 32.45%, #f88f00)
}

.l-footer__cta-button.-pamphlet .ico {
    color: #f88f00
}

.l-footer__cta-button a {
    align-items: center;
    background-image: linear-gradient(120deg, #d8f213, #84e252 32.45%, #09bcd3);
    border-radius: 9999px;
    display: flex;
    gap: 1em;
    min-height: 5em;
    min-width: 27.1428571429em;
    padding: .5em 1.5em .5em 3em;
    transition-duration: .5s
}

.l-footer__cta-button a .ico {
    aspect-ratio: 1/1;
    background-color: #fff;
    border-radius: 50%;
    color: #09bcd3;
    color: #07d0d8;
    display: grid;
    font-size: 2.8571428571em;
    height: 1em;
    margin-left: auto;
    overflow: hidden;
    place-items: center;
    transition-duration: .5s
}

.l-footer__cta-button a .ico .c-ico {
    font-size: .4166666667em
}

.l-footer__bottom {
    margin-top: min(3.6734693878vw + 31.2244897959px, 90px)
}

.l-footer__menu {
    display: flex;
    font-size: min(calc(.16327vw + .71173rem), .875rem);
    line-height: 1.5;
    margin-inline: -1em
}

.l-footer__menu li+li {
    position: relative
}

.l-footer__menu li+li:before {
    border-left: 1px solid;
    bottom: .2em;
    content: "";
    left: 0;
    position: absolute;
    top: .2em
}

.l-footer__menu a {
    padding: 0 1em;
    transition-duration: .5s;
    transition-property: opacity
}

.l-footer__copyright {
    font-size: min(calc(.16327vw + .64923rem), .8125rem);
    margin-top: 1em
}

.c-ico {
    fill: currentColor;
    align-items: center;
    display: inline-flex;
    flex-shrink: 0;
    justify-content: center
}

.c-ico img, .c-ico svg {
    height: 1em;
    width: auto
}

.c-ico.-down img, .c-ico.-down svg {
    rotate: 90deg
}

.c-pagetop {
    display: none
}

.c-crumbs {
    font-size: min(calc(.32653vw + .79847rem), 1.125rem);
    line-height: 1.5;
    margin: min(5.7142857143vw + 48.5714285714px, 140px) 0 min(3.6734693878vw + 31.2244897959px, 90px);
    overflow: hidden;
    position: relative;
    z-index: 10
}

.c-lower-menu-wrapper+.c-crumbs {
    margin-top: min(4.0816326531vw + 34.693877551px, 100px)
}

.c-crumbs #breadcrumbs>span {
    align-items: center;
    display: flex;
    gap: 1em;
    white-space: nowrap
}

.c-crumbs #breadcrumbs .bar {
    color: #07d0d8;
    font-size: .7777777778em
}

.c-crumbs #breadcrumbs a {
    transition-duration: .5s
}

.c-fixed-bubble-area {
    inset: 0;
    pointer-events: none;
    position: fixed;
    z-index: 0
}

.c-faq01 {
    background-color: #e6f8f9;
    border-radius: 10px;
    padding: min(1.2244897959vw + 10.4081632653px, 30px) min(2.4489795918vw + 10.8163265306px, 50px)
}

.c-faq01+.c-faq01 {
    margin-top: 20px
}

.c-faq01__head {
    font-weight: 400;
    position: relative
}

.c-faq01__body, .c-faq01__head {
    display: grid;
    grid-template-columns: auto 1fr
}

.c-faq01__body {
    padding-top: 20px
}

.c-faq01__en {
    color: #07d0d8;
    font-family: Montserrat, sans-serif;
    font-size: 1.625em;
    font-weight: 500;
    line-height: 1;
    margin-top: .1em;
    width: 2.5em
}

.c-faq01__title {
    font-size: 1.3125em;
    line-height: 1.5
}

.c-faq01__content {
    background-color: #fff;
    border-radius: 10px;
    padding: min(1.2244897959vw + 10.4081632653px, 30px)
}

.c-media {
    -moz-column-gap: min(3.6734693878vw + 31.2244897959px, 90px);
    column-gap: min(3.6734693878vw + 31.2244897959px, 90px);
    display: flex;
    row-gap: min(2.4489795918vw + 20.8163265306px, 60px)
}

.c-media+.c-media {
    margin-top: min(4.0816326531vw + 34.693877551px, 100px)
}

.c-media__text-area {
    flex: 1
}

.c-media__img {
    flex: 1;
    text-align: center
}

.c-media.-reverse .c-media__img {
    order: -1
}

.c-notes {
    font-size: min(calc(.16327vw + .71173rem), .875rem)
}

.c-notes.-center {
    margin-inline: auto;
    max-width: -moz-fit-content;
    max-width: fit-content
}

.c-notes p {
    padding-left: 1em;
    position: relative
}

.c-notes p:before {
    content: "※";
    left: 0;
    position: absolute;
    top: 0
}

.c-overlay {
    background-color: rgb(0 0 0 / .3);
    height: 100lvh;
    left: 0;
    opacity: 0;
    pointer-events: none;
    position: fixed;
    top: 0;
    transition-duration: .5s;
    visibility: hidden;
    width: 100%;
    z-index: 1000
}

.is-drawer-open .c-overlay, .is-modal-open .c-overlay {
    opacity: 1;
    pointer-events: auto;
    visibility: visible
}

.is-modal-open .c-overlay {
    z-index: 6000
}

.c-select {
    max-width: 200px;
    position: relative;
    width: 100%
}

.c-select:before {
    aspect-ratio: 9/7;
    background-color: currentColor;
    clip-path: polygon(50% 0, 100% 100%, 0 100%);
    content: "";
    font-size: .4375em;
    height: 1em;
    pointer-events: none;
    position: absolute;
    right: 2em;
    rotate: 180deg;
    top: 50%;
    translate: 0 -50%;
    z-index: 10
}

.c-select select {
    background-color: #fff;
    border: 1px solid #d6cdc5;
    border-radius: 4px;
    border-radius: 3px;
    cursor: pointer;
    display: block;
    height: 2.5em;
    padding: 0 1em;
    width: 100%
}

.c-table01.-dt-em15 dl dt {
    width: 15em
}

.c-table01 dl {
    border-bottom: 1px solid #bfd3d3;
    display: grid;
    grid-template-columns: auto 1fr
}

.c-table01 dl:first-child {
    border-top: 1px solid #bfd3d3
}

.c-table01 dl dd, .c-table01 dl dt {
    padding: 20px min(1.6326530612vw + 13.8775510204px, 40px)
}

.c-table01 dl dt {
    background-color: #e6f8f9;
    font-weight: 400;
    width: 12em
}

.c-flow-media {
    counter-increment: number;
    display: grid;
    grid-template: "INDEX TEXTAREA IMG"auto/auto 615fr 360fr;
    padding-bottom: min(2.8571428571vw + 24.2857142857px, 70px);
    position: relative
}

.c-flow-media:last-of-type {
    padding-bottom: 0
}

.c-flow-media:last-of-type:before {
    display: none
}

.c-flow-media-list {
    counter-reset: number
}

.c-flow-media:before {
    border-left: 2px dotted #07d0d8;
    bottom: 0;
    content: "";
    left: .5em;
    position: absolute;
    top: .5em
}

.c-flow-media:before, .c-flow-media__index {
    font-size: min(calc(3.67347vw + 1.95153rem), 5.625rem)
}

.c-flow-media__index {
    aspect-ratio: 1/1;
    background-color: rgb(7 208 216 / .2);
    border-radius: 50%;
    color: #fff;
    display: grid;
    font-family: Montserrat, sans-serif;
    font-weight: 500;
    grid-area: INDEX;
    -ms-grid-column: 1;
    -ms-grid-row: 1;
    height: 1em;
    line-height: 1;
    margin-right: min(1.6326530612vw + 13.8775510204px, 40px);
    place-items: center;
    position: relative
}

.c-flow-media__index:before {
    background-color: #07d0d8;
    border-radius: 50%;
    content: "";
    inset: .0888888889em;
    position: absolute
}

.c-flow-media__index .num {
    font-size: .3333333333em;
    position: relative;
    z-index: 10
}

.c-flow-media__index .num:before {
    content: counter(number, decimal-leading-zero)
}

.c-flow-media__text-area {
    grid-area: TEXTAREA;
    -ms-grid-column: 2;
    -ms-grid-row: 1;
    margin-top: min(.8163265306vw + 6.9387755102px, 20px);
    padding-right: min(5.7142857143vw + 48.5714285714px, 140px)
}

.c-flow-media__img {
    grid-area: IMG;
    -ms-grid-column: 3;
    -ms-grid-row: 1
}

.c-cta-contact {
    background-color: #e6f8f9;
    border-radius: min(.8163265306vw + 6.9387755102px, 20px);
    margin-top: min(1.6326530612vw + 23.8775510204px, 50px);
    padding: min(2.0408163265vw + 17.3469387755px, 50px) min(2.4489795918vw + 10.8163265306px, 50px) min(4.4897959184vw + 8.1632653061px, 80px)
}

.c-cta-contact__title {
    border-bottom: 2px dotted;
    color: #07d0d8;
    font-size: min(calc(.81633vw + .93367rem), 1.75rem);
    margin-inline: auto;
    margin-bottom: 1.5em;
    padding-bottom: .2em;
    position: relative;
    width: -moz-fit-content;
    width: fit-content
}

.c-cta-contact .c-button01 a {
    min-width: 20em
}

.c-bg {
    background-image: url(img/bg_grad.jpg);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    height: 100lvh;
    left: 0;
    opacity: 0;
    pointer-events: none;
    position: fixed;
    top: 0;
    transition-duration: 2s;
    transition-property: opacity, visibility;
    visibility: hidden;
    width: 100vw;
    z-index: -1
}

.is-bg .c-bg {
    opacity: 1;
    visibility: visible
}

.c-course-panel {
    aspect-ratio: 1538/709
}

.c-course-panel a {
    display: grid;
    font-weight: 500;
    height: 100%;
    padding: min(4.0816326531vw + 24.693877551px, 90px) min(8.1632653061vw + -10.612244898px, 120px);
    position: relative;
    width: 100%
}

.c-course-panel__img {
    inset: 0;
    pointer-events: none;
    position: absolute;
    z-index: 0
}

.c-course-panel__img:before {
    background-image: linear-gradient(transparent, #5a5a5a);
    border-radius: 0 0 min(1.2244897959vw + 10.4081632653px, 30px) min(1.2244897959vw + 10.4081632653px, 30px);
    bottom: 0;
    content: "";
    display: none;
    height: 50.7142857143%;
    left: 0;
    opacity: .4;
    position: absolute;
    width: 100%;
    z-index: 2
}

.c-course-panel__img img {
    -o-object-fit: initial;
    object-fit: fill;
    width: 100%
}

.c-course-panel__img-bg {
    height: 100%;
    overflow: hidden
}

.c-course-panel__img-bg, .c-course-panel__img-bg:before {
    border-radius: min(1.2244897959vw + 10.4081632653px, 30px)
}

.c-course-panel__img-bg:before {
    content: "";
    inset: 0;
    opacity: 0;
    position: absolute;
    transition-duration: .5s;
    transition-property: opacity;
    z-index: 1
}

.-high-school-division .c-course-panel__img-bg:before, .-specialized-division .c-course-panel__img-bg:before, .c-course-panel__img-bg:before {
    box-shadow: inset 0 0 min(4.8816326531vw + 34.693877551px, 100px) #ffa200
}

.-adult-learners-division .c-course-panel__img-bg:before {
    box-shadow: inset 0 0 min(4.0816326531vw + 34.693877551px, 100px) #1c62ff
}

.c-course-panel__img-obj {
    border-radius: 0 0 min(1.2244897959vw + 10.4081632653px, 30px) min(1.2244897959vw + 10.4081632653px, 30px);
    bottom: 0;
    overflow: hidden;
    position: absolute;
    right: 0;
    width: 100%;
    z-index: 1
}

.c-course-panel__text-area {
    align-self: end;
    color: #fff;
    font-size: min(calc(.2449vw + .7551rem), 1rem);
    max-width: 460px;
    overflow: hidden;
    pointer-events: none;
    position: relative;
    width: 100%;
    z-index: 90
}

.c-course-panel__copy {
    font-size: min(calc(.32653vw + .73597rem), 1.0625rem);
    line-height: 1.5;
    margin-bottom: 1em
}

.c-course-panel__title {
    align-items: center;
    display: flex;
    font-size: min(calc(1.8vw + 1.42602rem), 3.875rem);
    font-weight: 500;
    letter-spacing: .1em;
    line-height: 1.5;
    margin-bottom: .6em
}

.c-course-panel__title .arrow {
    aspect-ratio: 1/1;
    background-color: #07d0d8;
    border-radius: 50%;
    color: #fff;
    font-size: .9677419355em;
    height: 1em;
    margin-left: .3em;
    margin-top: .1em;
    overflow: hidden;
    transition-duration: .5s
}

.c-course-panel__title .arrow img, .c-course-panel__title .arrow svg {
    font-size: .2666666667em
}

.c-course-panel:hover .c-course-panel__title .arrow {
    background-color: #fff;
    color: #07d0d8
}

.c-course-panel__courses {
    display: grid;
    font-size: min(calc(.73469vw + .76531rem), 1.5rem);
    gap: .5em;
    line-height: 1.5;
    margin-top: 1em
}

.c-course-panel__courses-item {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .5em;
    padding-left: 1.2em;
    position: relative
}

.c-course-panel__courses-item:before {
    aspect-ratio: 1/1;
    background-color: currentColor;
    border-radius: 50%;
    content: "";
    left: 0;
    position: absolute;
    top: .58em;
    width: .4166666667em
}

.c-course-panel__courses-item .labels {
    border: 1px solid;
    border-radius: 9999px;
    display: flex;
    flex-wrap: wrap;
    font-size: min(calc(.2449vw + .7551rem), 1rem);
    gap: .5em;
    padding: .1em 1em .2em
}

.c-course-panel__text-area .text_shadow {
    text-shadow: 1px 1px 8px rgba(0, 0, 0, 5)
}

.c-course-panel.js-anim_elm .c-course-panel__text-area {
    opacity: 0;
    transform: translate3d(-20px, 0, 0);
    transition-duration: 1s;
    transition-property: opacity, transform
}

.c-course-panel.js-anim_elm.is-act .c-course-panel__text-area {
    opacity: 1;
    transform: translateZ(0)
}

.c-container {
    margin-left: auto;
    margin-right: auto;
    max-width: min(65.7142857143vw + 128.5714285714px, 1180px);
    padding-left: min(1.6326530612vw + 13.8775510204px, 40px);
    padding-right: min(1.6326530612vw + 13.8775510204px, 40px);
    width: 100%
}

.c-container.-l {
    max-width: min(81.2244897959vw + 70.4081632653px, 1370px)
}

.c-container.-m {
    max-width: min(73.8775510204vw + 97.9591836735px, 1280px)
}

.c-container.-s {
    max-width: min(49.387755102vw + 189.7959183673px, 980px)
}

.c-fluid {
    padding-left: min(1.6326530612vw + 13.8775510204px, 40px);
    padding-right: min(1.6326530612vw + 13.8775510204px, 40px)
}

.c-grid-container {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, min(31.2244897959vw + 50.4081632653px, 550px)) minmax(0, min(31.2244897959vw + 50.4081632653px, 550px)) minmax(0, 1fr)
}

.c-grid-fluid {
    display: grid;
    grid-template-columns: minmax(0, min(1.6326530612vw + 13.8775510204px, 40px)) minmax(0, calc(50% - min(1.6326530612vw + 13.8775510204px, 40px))) minmax(0, calc(50% - min(1.6326530612vw + 13.8775510204px, 40px))) minmax(0, min(1.6326530612vw + 13.8775510204px, 40px))
}

.c-grid-container>.col1-2, .c-grid-fluid>.col1-2 {
    grid-column: 1/2
}

.c-grid-container>.col1-3, .c-grid-fluid>.col1-3 {
    grid-column: 1/3
}

.c-grid-container>.col1-4, .c-grid-fluid>.col1-4 {
    grid-column: 1/4
}

.c-grid-container>.col1-5, .c-grid-fluid>.col1-5 {
    grid-column: 1/5
}

.c-grid-container>.col2-3, .c-grid-fluid>.col2-3 {
    grid-column: 2/3
}

.c-grid-container>.col2-4, .c-grid-fluid>.col2-4 {
    grid-column: 2/4
}

.c-grid-container>.col2-5, .c-grid-fluid>.col2-5 {
    grid-column: 2/5
}

.c-grid-container>.col3-4, .c-grid-fluid>.col3-4 {
    grid-column: 3/4
}

.c-grid-container>.col3-5, .c-grid-fluid>.col3-5 {
    grid-column: 3/5
}

.c-grid-container>.col4-5, .c-grid-fluid>.col4-5 {
    grid-column: 4/5
}

.c-grid-container.-nowrap>[class*=col], .c-grid-fluid.-nowrap>[class*=col] {
    grid-row: 1/-1
}

.c-grid-column {
    display: grid
}

.c-grid-column.-col4 {
    grid-template-columns: repeat(4, minmax(0, 1fr))
}

.c-grid-column.-col3 {
    grid-template-columns: repeat(3, minmax(0, 1fr))
}

.c-grid-column.-col2 {
    grid-template-columns: repeat(2, minmax(0, 1fr))
}

.c-grid-column.-col1 {
    grid-template-columns: repeat(1, minmax(0, 1fr))
}

.c-text01 {
    font-size: min(calc(.2449vw + .7551rem), 1rem)
}

.c-text02 {
    font-size: min(calc(.40816vw + .84184rem), 1.25rem)
}

.c-text03 {
    font-size: min(calc(.16327vw + .64923rem), .8125rem)
}

.c-text04 {
    font-size: min(calc(.32653vw + .79847rem), 1.125rem)
}

.c-text05 {
    font-size: min(calc(.81633vw + .93367rem), 1.75rem)
}

.c-text06 {
    font-size: min(calc(.16327vw + .71173rem), .875rem)
}

.c-text07 {
    font-size: min(calc(.65306vw + .84694rem), 1.5rem)
}

.c-color-red {
    color: red
}

.c-heading01 {
    font-size: min(calc(1.30612vw + 1.06888rem), 2.375rem);
    margin-bottom: 1em;
    position: relative
}

.c-heading01:before {
    aspect-ratio: 1/1;
    background-color: #07d0d8;
    border-radius: 50%;
    content: "";
    left: -.75em;
    position: absolute;
    top: .4em;
    width: .2631578947em
}

.c-heading02 {
    color: #07d0d8;
    font-size: min(calc(.32653vw + .79847rem), 1.125rem);
    margin-bottom: min(3.2653061224vw + 27.7551020408px, 80px);
    position: relative
}

.c-heading02:before {
    border-top: 1px solid;
    content: "";
    position: absolute;
    right: calc(100% + 2em);
    top: .8em;
    width: 100vw
}

.c-heading02.-index {
    align-items: baseline;
    display: flex;
    gap: 1.6em
}

.c-heading02.-index:after {
    content: attr(data-index);
    font-family: Montserrat, sans-serif;
    line-height: 1;
    order: -1
}

.c-title01, .c-title02 {
    margin-bottom: 1em
}

.c-title02 {
    color: #07d0d8;
    font-size: min(calc(.65306vw + 1.09694rem), 1.75rem);
    padding-left: .8em;
    position: relative
}

.c-title02:before {
    background-color: #07d0d8;
    bottom: .2em;
    content: "";
    left: 0;
    position: absolute;
    top: .3em;
    width: min(.1224489796vw + 1.0408163265px, 3px)
}

.c-button01 {
    display: flex;
    font-size: min(calc(.32653vw + .73597rem), 1.0625rem);
    line-height: 1.5
}

.c-button01 a {
    align-items: center;
    background-color: #07d0d8;
    border: 1px solid #07d0d8;
    border-radius: 9999px;
    color: #fff;
    display: grid;
    gap: 1em;
    grid-template-columns: 1fr auto;
    min-height: 3.5294117647em;
    min-width: 17.6470588235em;
    padding: .5em 1em .5em 1.5em;
    transition-duration: .5s
}

.c-button01 a .text {
    margin-right: auto
}

.c-button01 a .ico {
    aspect-ratio: 1/1;
    background-color: #fff;
    border-radius: 50%;
    color: #07d0d8;
    font-size: 1.9411764706em;
    height: 1em;
    overflow: hidden;
    transition-duration: .5s
}

.c-button01 a .ico .c-ico img, .c-button01 a .ico .c-ico svg {
    font-size: .3333333333em
}

.c-button01.-m a {
    min-width: 19.3529411765em
}

.c-button01.-fx a {
    gap: 2em;
    min-width: auto
}

.c-button01.-white a {
    background-color: #fff;
    border-color: #bfd3d3;
    color: #505050
}

.c-button01.-white .ico {
    background-color: #07d0d8;
    color: #fff
}

.c-button01.-disabled {
    pointer-events: none
}

.c-button01.-disabled a {
    background-color: #ccc;
    border-color: #ccc
}

.c-button01.-disabled .ico {
    display: none
}

.c-button01.-back a {
    padding-left: 1em;
    padding-right: 1.5em
}

.c-button01.-back a .ico {
    order: -1;
    scale: -1 1
}

.c-button01.u-center a {
    display: grid;
    grid-template-columns: 1fr auto 1fr
}

.c-button01.u-center a:before {
    content: ""
}

.c-button01.u-center a .ico {
    margin-left: auto
}

.c-drawer {
    background-color: #07d0d8;
    background-image: url(img/bg_grad.jpg);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    height: 100lvh;
    opacity: 0;
    position: fixed;
    right: 0;
    top: 200%;
    transition-delay: 0s, 0s, 1s;
    transition-duration: 1s, 1s, 0s;
    transition-property: opacity, visibility, top;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    visibility: hidden;
    width: 100%;
    z-index: 4000
}

.is-drawer-open .c-drawer {
    opacity: 1;
    top: 0;
    transition-delay: 0s, 0s, 0s;
    transition-duration: 1s, 1s, 0s;
    visibility: visible
}

.c-drawer__bubble-area {
    inset: 0;
    position: absolute;
    z-index: 0
}

.c-drawer__bubble-area canvas {
    backface-visibility: hidden
}

.c-drawer__objs {
    inset: 0;
    pointer-events: none;
    position: absolute;
    z-index: -1
}

.c-drawer__objs img {
    display: block;
    width: 1em
}

.c-drawer__objs .obj {
    position: absolute
}

.c-drawer__objs .obj.-obj01 {
    font-size: min(calc(4.16327vw + 2.21173rem), 6.375rem);
    left: .2em;
    top: 50%;
    translate: 0 calc(-50% - .1em)
}

.c-drawer__objs .obj.-obj02 {
    font-size: min(calc(15.22449vw + 8.08801rem), 23.3125rem);
    right: -.1em;
    top: 50%;
    translate: 0 calc(-50% + .2em)
}

.c-drawer__wrapper {
    height: 100%;
    overflow: auto;
    overscroll-behavior: contain;
    width: 100%
}

.c-drawer__container {
    opacity: 0;
    padding-bottom: min(11.4285714286vw + 37.1428571429px, 220px);
    padding-top: min(9.7959183673vw + 63.2653061224px, 220px);
    position: relative;
    transform: translate3d(0, 40px, 0);
    transition-duration: 1s;
    transition-property: transform, opacity;
    z-index: 10
}

.is-drawer-open .c-drawer__container {
    opacity: 1;
    transform: translateZ(0)
}

.c-drawer__menu {
    align-items: start;
    display: flex;
    justify-content: space-between
}

.c-drawer__menu-group {
    display: grid;
    gap: min(.8163265306vw + 16.9387755102px, 30px)
}

.c-drawer__menu-item {
    font-size: min(calc(.4898vw + .8227rem), 1.3125rem);
    line-height: 1.5
}

.c-drawer__menu-item.js-drawer-accordion .js-accordion-wrap {
    height: auto
}

.c-drawer__menu-item.js-drawer-accordion.is-open .toggle:after {
    opacity: 0
}

.c-drawer__menu-item .page {
    font-weight: 500
}

.c-drawer__menu-item .page .link, .c-drawer__menu-item .page a {
    align-items: center;
    display: flex;
    gap: .7em
}

.c-drawer__menu-item .page .link {
    cursor: auto
}

.c-drawer__menu-item .page .ico {
    aspect-ratio: 1/1;
    background-color: #fff;
    border-radius: 50%;
    color: #07d0d8;
    flex-shrink: 0;
    font-size: 1.5714285714em;
    height: 1em;
    overflow: hidden
}

.c-drawer__menu-item .page .ico .c-ico img, .c-drawer__menu-item .page .ico .c-ico svg {
    font-size: .3333333333em
}

.c-drawer__menu-item .page .toggle {
    aspect-ratio: 1/1;
    background-color: #fff;
    border-radius: 50%;
    color: #07d0d8;
    display: none;
    flex-shrink: 0;
    font-size: 1.5714285714em;
    height: 1em;
    overflow: hidden;
    place-items: center
}

.c-drawer__menu-item .page .toggle:after, .c-drawer__menu-item .page .toggle:before {
    border-top: 1px solid #07d0d8;
    content: "";
    grid-area: 1/1;
    width: .303030303em
}

.c-drawer__menu-item .page .toggle:after {
    rotate: 90deg
}

.c-drawer__menu-item .children {
    display: grid;
    font-size: min(calc(.16327vw + .96173rem), 1.125rem);
    gap: 1em;
    margin-top: 1em;
    padding-left: 1.5em;
    position: relative
}

.c-drawer__menu-item .children:before {
    border-left: 1px solid;
    bottom: .3em;
    content: "";
    left: 0;
    position: absolute;
    top: .3em
}

.c-drawer__menu-item .children a {
    justify-self: start;
    position: relative
}

.c-drawer__menu-item .children a:after {
    background-color: currentColor;
    bottom: -.25em;
    content: "";
    display: block;
    height: 1px;
    left: auto;
    position: absolute;
    right: 0;
    transition-duration: .5s;
    transition-property: width;
    width: 0
}

.c-drawer__bottom {
    display: grid;
    gap: min(3.2653061224vw + 27.7551020408px, 80px) min(1.6326530612vw + 13.8775510204px, 40px);
    grid-template-columns: 1fr auto;
    margin-top: min(4.8979591837vw + 41.6326530612px, 120px)
}

.c-drawer__sns {
    display: flex;
    gap: 15px
}

.c-drawer__sns a {
    aspect-ratio: 1/1;
    border: 1px solid #fff;
    border-radius: 50%;
    color: #fff;
    display: grid;
    font-size: min(calc(.65306vw + 2.34694rem), 3rem);
    place-items: center;
    transition-duration: .5s;
    transition-property: background-color, color;
    width: 1em
}

.c-drawer__sns a .c-ico {
    font-size: .4791666667em
}

.c-drawer__links {
    align-items: start;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    font-size: 1rem;
    gap: 1em 2em;
    line-height: 1.5;
    margin-top: 2em
}

.c-drawer__links a {
    align-items: center;
    display: flex;
    gap: .5em;
    justify-self: start;
    position: relative
}

.c-drawer__links a:after {
    background-color: currentColor;
    bottom: -.25em;
    content: "";
    display: block;
    height: 1px;
    left: auto;
    position: absolute;
    right: 0;
    transition-duration: .5s;
    transition-property: width;
    width: 0
}

.c-drawer__links a .c-ico {
    font-size: .875em
}

.c-drawer__cta {
    align-self: center;
    background-color: #fff;
    border-radius: 10px;
    padding: min(.8163265306vw + 16.9387755102px, 30px) min(2.8571428571vw + 9.2857142857px, 55px)
}

.c-drawer__cta-title {
    align-items: center;
    color: #07d0d8;
    display: flex;
    flex-wrap: wrap;
    gap: .5em 1em;
    justify-content: center;
    margin-bottom: 1em
}

.c-drawer__cta-title strong {
    font-size: 1.3125em;
    font-weight: inherit
}

.c-drawer__cta-button {
    color: #fff;
    font-weight: 500;
    line-height: 1.5
}

.c-drawer__cta-buttons {
    display: grid;
    gap: min(.8163265306vw + 6.9387755102px, 20px);
    grid-template-columns: repeat(3, 1fr)
}

.c-drawer__cta-button.-entry a {
    background-color: #07d0d8;
    background-image: none
}

.c-drawer__cta-button.-pamphlet a {
    background-image: linear-gradient(120deg, #e9f213, #e2dc52 32.45%, #f88f00)
}

.c-drawer__cta-button.-pamphlet .ico {
    color: #f88f00
}

.c-drawer__cta-button.-event {
    order: 10
}

.c-drawer__cta-button a {
    align-items: center;
    background-image: linear-gradient(120deg, #d8f213, #84e252 32.45%, #09bcd3);
    border-radius: 9999px;
    display: flex;
    gap: 2em;
    min-height: 3.75em;
    padding: .5em 1.5em .5em 2em;
    transition-duration: .5s
}

.c-drawer__cta-button a .ico {
    aspect-ratio: 1/1;
    background-color: #fff;
    border-radius: 50%;
    color: #09bcd3;
    color: #07d0d8;
    display: grid;
    font-size: 2.0625em;
    height: 1em;
    margin-left: auto;
    overflow: hidden;
    place-items: center;
    transition-duration: .5s
}

.c-drawer__cta-button a .ico .c-ico {
    font-size: .4242424242em
}

.js-anim_elm .-delay1, .js-anim_elm.-delay1 {
    transition-delay: .5s !important
}

.js-anim_elm .-delay2, .js-anim_elm.-delay2 {
    transition-delay: 1s !important
}

.js-anim_elm .-delay3, .js-anim_elm.-delay3 {
    transition-delay: 1.5s !important
}

.js-anim_elm .-delay4, .js-anim_elm.-delay4 {
    transition-delay: 2s !important
}

.js-anim_elm .-delay5, .js-anim_elm.-delay5 {
    transition-delay: 2.5s !important
}

.js-anim_elm .-delay6, .js-anim_elm.-delay6 {
    transition-delay: 3s !important
}

.js-anim_elm .-delay7, .js-anim_elm.-delay7 {
    transition-delay: 3.5s !important
}

.js-anim_elm .-delay8, .js-anim_elm.-delay8 {
    transition-delay: 4s !important
}

.js-anim_elm .-delay9, .js-anim_elm.-delay9 {
    transition-delay: 4.5s !important
}

.js-anim_elm .-delay10, .js-anim_elm.-delay10 {
    transition-delay: 5s !important
}

.js-anim_elm .-delay11, .js-anim_elm.-delay11 {
    transition-delay: 5.5s !important
}

.js-anim_elm .-delay12, .js-anim_elm.-delay12 {
    transition-delay: 6s !important
}

.js-anim_elm .-delay13, .js-anim_elm.-delay13 {
    transition-delay: 6.5s !important
}

.js-anim_elm .-delay14, .js-anim_elm.-delay14 {
    transition-delay: 7s !important
}

.js-anim_elm .-delay15, .js-anim_elm.-delay15 {
    transition-delay: 7.5s !important
}

.js-anim_elm .-delay16, .js-anim_elm.-delay16 {
    transition-delay: 8s !important
}

.js-anim_elm .-delay17, .js-anim_elm.-delay17 {
    transition-delay: 8.5s !important
}

.js-anim_elm .-delay18, .js-anim_elm.-delay18 {
    transition-delay: 9s !important
}

.js-anim_elm .-delay19, .js-anim_elm.-delay19 {
    transition-delay: 9.5s !important
}

.js-anim_elm .-delay20, .js-anim_elm.-delay20 {
    transition-delay: 10s !important
}

.js-anim_elm.-visibility .visibility, .js-anim_elm.-visibility.visibility {
    visibility: hidden
}

.js-anim_elm.-visibility.is-act .visibility, .js-anim_elm.-visibility.is-act.visibility {
    visibility: visible
}

.js-anim_elm.-base1 .base1, .js-anim_elm.-base1.base1 {
    opacity: 0;
    transform: translate3d(0, 20px, 0);
    transition-delay: 0s;
    transition-duration: 2s;
    transition-property: opacity, transform;
    transition-timing-function: ease, cubic-bezier(.215, .61, .355, 1)
}

.js-anim_elm.-base1.is-act .base1, .js-anim_elm.-base1.is-act.base1 {
    opacity: 1;
    transform: translateZ(0)
}

.js-anim_elm.-base2 .base2, .js-anim_elm.-base2.base2 {
    opacity: 0;
    transform: translate3d(0, 20px, 0);
    transition-delay: 0s;
    transition-duration: 2s;
    transition-property: opacity, transform;
    transition-timing-function: ease, cubic-bezier(.215, .61, .355, 1)
}

.js-anim_elm.-base2.is-act .base2, .js-anim_elm.-base2.is-act.base2 {
    opacity: 1;
    transform: translateZ(0)
}

.js-anim_elm.-base3 .base3, .js-anim_elm.-base3.base3 {
    opacity: 0;
    transform: translate3d(0, 20px, 0);
    transition-delay: 0s;
    transition-duration: 2s;
    transition-property: opacity, transform;
    transition-timing-function: ease, cubic-bezier(.215, .61, .355, 1)
}

.js-anim_elm.-base3.is-act .base3, .js-anim_elm.-base3.is-act.base3 {
    opacity: 1;
    transform: translateZ(0)
}

.js-anim_elm.-list1>* {
    opacity: 0;
    transform: translate3d(0, 20px, 0);
    transition-delay: 0s;
    transition-duration: 2s;
    transition-property: opacity, transform;
    transition-timing-function: ease, cubic-bezier(.215, .61, .355, 1)
}

.js-anim_elm.-list1>:nth-child(0) {
    transition-delay: -.1s
}

.js-anim_elm.-list1>:first-child {
    transition-delay: 0s
}

.js-anim_elm.-list1>:nth-child(2) {
    transition-delay: .1s
}

.js-anim_elm.-list1>:nth-child(3) {
    transition-delay: .2s
}

.js-anim_elm.-list1>:nth-child(4) {
    transition-delay: .3s
}

.js-anim_elm.-list1>:nth-child(5) {
    transition-delay: .4s
}

.js-anim_elm.-list1>:nth-child(6) {
    transition-delay: .5s
}

.js-anim_elm.-list1>:nth-child(7) {
    transition-delay: .6s
}

.js-anim_elm.-list1>:nth-child(8) {
    transition-delay: .7s
}

.js-anim_elm.-list1>:nth-child(9) {
    transition-delay: .8s
}

.js-anim_elm.-list1>:nth-child(10) {
    transition-delay: .9s
}

.js-anim_elm.-list1.is-act>* {
    opacity: 1;
    transform: translateZ(0)
}

.js-accordion-trigger {
    cursor: pointer
}

.js-accordion-wrap {
    height: 0;
    overflow: hidden
}

.js-endless-slider .swiper-wrapper {
    transition-timing-function: linear
}

.js-endless-slider .swiper-slide {
    width: auto
}

.js-arrow {
    display: grid
}

.js-arrow .c-ico {
    grid-area: 1/1
}

.js-modal-trg {
    cursor: pointer
}

.c-slider-scrollbar01 {
    background-color: #e6f8f9;
    border-radius: 9999px;
    font-size: .625rem;
    height: 1em;
    position: relative;
    width: 100%
}

.c-slider-scrollbar01 .swiper-scrollbar-drag {
    background: initial;
    border-radius: initial
}

.c-slider-scrollbar01 .swiper-scrollbar-drag:before {
    background-color: #07d0d8;
    border-radius: 9999px;
    content: "";
    height: .6em;
    left: 0;
    position: absolute;
    right: 0;
    top: 50%;
    translate: 0 -50%
}

.c-lower-kv01 {
    margin-bottom: min(6.1224489796vw + 52.0408163265px, 150px);
    padding-top: min(8.1632653061vw + 69.387755102px, 200px)
}

.c-lower-kv01:has(+.c-lower-intro) {
    margin-bottom: min(2.8571428571vw + 24.2857142857px, 70px)
}

.c-lower-kv01__container {
    display: grid;
    margin-inline: auto;
    max-width: 1100px;
    position: relative;
    z-index: 0
}

.c-lower-kv01__title {
    align-self: end;
    font-size: min(calc(2.53061vw + .96939rem), 3.5rem);
    grid-area: 1/1;
    position: relative;
    text-align: center;
    z-index: 10
}

.c-lower-kv01__en {
    color: #f2fdfd;
    font-family: Montserrat, sans-serif;
    font-size: min(calc(6.93878vw + 3.68622rem), 10.625rem);
    font-weight: 500;
    grid-area: 1/1;
    line-height: 1;
    margin-inline: calc(50% - 50vw);
    min-width: 0;
    text-transform: uppercase
}

.c-lower-kv01__en .swiper-slide {
    margin-right: .4em
}

.c-lower-kv01__bubble {
    line-height: 1;
    position: absolute;
    width: 1em;
    z-index: 5
}

.c-lower-kv01__bubble img {
    display: block
}

.c-lower-kv01__bubble.-bubble01 {
    font-size: min(calc(5.55102vw + 2.94898rem), 8.5rem);
    left: .5em;
    top: -.2em
}

.c-lower-kv01__bubble.-bubble02 {
    font-size: min(calc(10.16327vw + 5.39923rem), 15.5625rem);
    right: -.2em;
    top: .3em
}

.c-lower-kv01__fish-area {
    inset: 0;
    position: absolute
}

.c-lower-kv01__fish-area .fish {
    animation-direction: alternate;
    animation-iteration-count: infinite;
    animation-name: swimUp;
    animation-timing-function: cubic-bezier(.645, .045, .355, 1);
    line-height: 1;
    position: absolute;
    width: 1em;
    z-index: 10
}

.c-lower-kv01__fish-area .fish img {
    display: block
}

.c-lower-kv01__fish-area .-fish01 {
    animation-duration: 6s
}

.c-lower-kv01__fish-area .-fish02 {
    animation-direction: alternate-reverse;
    animation-duration: 8s
}

.c-lower-kv01__fish-area.-a .-fish01 {
    font-size: min(calc(2.4898vw + 1.3227rem), 3.8125rem);
    left: 2.5em;
    top: 0
}

.c-lower-kv01__fish-area.-a .-fish02 {
    bottom: -1em;
    font-size: min(calc(3.7551vw + 1.9949rem), 5.75rem);
    right: -.7em
}

.c-lower-kv01__fish-area.-b .-fish01 {
    font-size: min(calc(5.30612vw + 2.81888rem), 8.125rem);
    left: 1em;
    top: 0
}

.c-lower-kv01__fish-area.-b .-fish02 {
    bottom: -.5em;
    font-size: min(calc(8.73469vw + 4.64031rem), 13.375rem);
    right: -.5em
}

.c-lower-kv01__fish-area.-c .-fish01 {
    font-size: min(calc(6.85714vw + 3.64286rem), 10.5rem);
    left: -.2em;
    top: 0
}

.c-lower-kv01__fish-area.-c .-fish02 {
    bottom: -1em;
    font-size: min(calc(4.36735vw + 2.32015rem), 6.6875rem);
    right: -.7em
}

.c-lower-kv01__fish-area.-d .-fish01 {
    bottom: -.4em;
    font-size: min(calc(8.40816vw + 4.46684rem), 12.875rem);
    right: -.6em
}

.c-lower-kv01__fish-area.-e .-fish01 {
    font-size: min(calc(6.85714vw + 3.64286rem), 10.5rem);
    left: -.2em;
    top: 0
}

.c-lower-kv01__fish-area.-e .-fish02 {
    bottom: -.3em;
    font-size: min(calc(11.38776vw + 6.04974rem), 17.4375rem);
    right: -.5em
}

.c-lower-intro {
    margin-bottom: min(5.306122449vw + 45.1020408163px, 130px);
    position: relative;
    z-index: 10
}

.c-lower-intro .text {
    text-align: center
}

.c-lower-menu {
    background-image: url(../../img/common/lower/menu_bg@2x.jpg);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: min(1.2244897959vw + 10.4081632653px, 30px);
    margin-top: min(6.9387755102vw + 58.9795918367px, 170px);
    overflow: hidden;
    padding: min(1.2244897959vw + 10.4081632653px, 30px) 0 min(2.8571428571vw + 24.2857142857px, 70px)
}

.c-lower-menu__title {
    color: #07d0d8;
    display: grid;
    font-size: min(calc(.32653vw + .79847rem), 1.125rem);
    margin-bottom: 1em
}

.c-lower-menu__title .ja {
    align-self: center;
    grid-area: 1/1;
    margin-left: 1.5em
}

.c-lower-menu__title .en {
    font-family: Montserrat, sans-serif;
    font-size: min(calc(4.89796vw + 2.60204rem), 7.5rem);
    grid-area: 1/1;
    line-height: 1;
    opacity: .08;
    text-transform: uppercase
}

.c-lower-menu__menu {
    display: grid;
    gap: min(.4081632653vw + 8.4693877551px, 15px) min(2.8571428571vw + 9.2857142857px, 55px);
    grid-template-columns: repeat(3, 1fr)
}

.c-lower-menu__menu .c-button01 a {
    min-width: auto;
    width: 100%
}

.c-modal {
    height: 100vh;
    left: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 8000
}

.c-modal.js-modal {
    opacity: 0;
    pointer-events: none;
    transform: translate3d(0, 20px, 0);
    transition-duration: .5s;
    transition-property: opacity, visibility, transform;
    visibility: hidden
}

.c-modal.js-modal.is-act {
    opacity: 1;
    pointer-events: all;
    transform: translateZ(0);
    visibility: visible
}

.c-modal__wrapper {
    display: grid;
    min-height: 100%;
    padding: min(3.2653061224vw + 27.7551020408px, 80px) 0;
    place-items: center;
    width: 100%
}

.c-modal-close {
    aspect-ratio: 1/1;
    background-color: #07d0d8;
    border: min(.0816326531vw + .693877551px, 2px) solid #fff;
    border-radius: 50%;
    color: #fff;
    cursor: pointer;
    display: grid;
    font-size: min(4.0816326531vw + 34.693877551px, 100px);
    height: 1em;
    place-items: center;
    transition-duration: .5s;
    transition-property: opacity
}

.c-modal-close .c-ico {
    font-size: .28em;
    rotate: 45deg
}

.c-pagenavi {
    color: #111;
    font-family: Montserrat, sans-serif;
    font-size: min(calc(.4898vw + .5102rem), 1rem);
    font-weight: 500;
    line-height: 1
}

.c-pagenavi .wp-pagenavi {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: center
}

.c-pagenavi .pages {
    border-bottom: 1px solid;
    display: grid;
    font-size: .875em;
    height: 5.7142857143em;
    place-items: center;
    width: 8.3571428571em
}

.c-pagenavi .current, .c-pagenavi .extend, .c-pagenavi .page {
    aspect-ratio: 1/1;
    border: 1px solid #d6cdc5;
    border-radius: 50%;
    display: grid;
    height: 5.3125em;
    place-items: center
}

.c-pagenavi .current {
    background-color: #07d0d8;
    border-color: #07d0d8;
    color: #fff
}

.c-post-block-table dl {
    border-bottom: 1px solid #bfd3d3;
    display: grid;
    grid-template-columns: auto 1fr
}

.c-post-block-table dl:first-child {
    border-top: 1px solid #bfd3d3
}

.c-post-block-table dl dd, .c-post-block-table dl dt {
    padding: 20px min(1.6326530612vw + 13.8775510204px, 40px)
}

.c-post-block-table dl dt {
    background-color: #e6f8f9;
    font-weight: 400;
    width: 12em
}

.c-post-block-media {
    display: flex;
    gap: min(5.306122449vw + 10.1020408163px, 95px)
}

.c-post-block-media+.c-post-block-media {
    margin-top: min(4.0816326531vw + 34.693877551px, 100px)
}

.c-post-block-media.-reverse .c-post-block-media__img {
    order: -1
}

.c-post-block-media__text-area {
    align-self: center;
    flex: 475
}

.c-post-block-media__img {
    aspect-ratio: 530/418;
    flex: 530;
    text-align: center
}

.c-post-block-media__img img {
    height: 100%;
    width: 100%
}

.c-link-card01 a {
    display: block
}

.c-link-card01__title {
    display: flex;
    font-size: min(calc(.4898vw + 1.0102rem), 1.5rem);
    gap: .5em;
    margin-top: 1em
}

.c-link-card01__title .ico {
    aspect-ratio: 1/1;
    background-color: #07d0d8;
    border-radius: 50%;
    color: #fff;
    font-size: 1.6666666667em;
    height: 1em;
    justify-self: center;
    overflow: hidden;
    transition-duration: .5s
}

.c-link-card01__title .ico .c-ico img, .c-link-card01__title .ico .c-ico svg {
    font-size: .3em
}

.c-link-card01__summary {
    margin-top: 1em
}

.c-link-news {
    align-items: center;
    display: grid;
    grid-template: "DATE CATS TITLE"auto/auto auto 1fr;
    padding: 2em 0
}

.c-link-news+.c-link-news {
    border-top: 1px solid #bfd3d3
}

.c-link-news__date {
    color: #07d0d8;
    font-family: Montserrat, sans-serif;
    font-size: min(calc(.16327vw + .71173rem), .875rem);
    font-weight: 500;
    grid-area: DATE;
    -ms-grid-column: 1;
    -ms-grid-row: 1;
    line-height: 1;
    width: 8.5714285714em
}

.c-link-news__cats {
    display: flex;
    font-size: min(calc(.16327vw + .58673rem), .75rem);
    grid-area: CATS;
    -ms-grid-column: 2;
    -ms-grid-row: 1;
    width: 9.1666666667em
}

.c-link-news__cats li {
    background-color: #07d0d8;
    border-radius: 5px;
    color: #fff;
    line-height: 1.5;
    padding: .2em .7em .3em
}

.c-link-news__title {
    grid-area: TITLE;
    -ms-grid-column: 3;
    -ms-grid-row: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    transition-duration: .5s;
    transition-property: color;
    white-space: nowrap
}

.c-link-card-event__img {
    aspect-ratio: 340/300
}

.c-link-card-event__img img {
    height: 100%;
    width: 100%
}

.c-link-card-event__title {
    color: #07d0d8;
    font-size: min(calc(.65306vw + .84694rem), 1.5rem);
    margin: 1em 0 .7em
}

.c-link-card-event__box, .c-link-card-event__summary {
    font-size: min(calc(.16327vw + .71173rem), .875rem)
}

.c-link-card-event__box {
    background-color: #e6f8f9;
    margin-top: 20px;
    padding: 20px min(.8163265306vw + 16.9387755102px, 30px)
}

.c-link-media-event {
    align-items: start;
    background-color: #e6f8f9;
    display: grid;
    gap: min(2.0408163265vw + 17.3469387755px, 50px);
    grid-template-columns: 495fr 445fr;
    padding: min(1.6326530612vw + 13.8775510204px, 40px) min(2.8571428571vw + 9.2857142857px, 55px)
}

.c-link-media-event+.c-link-media-event {
    margin-top: 20px
}

.c-link-media-event__img {
    aspect-ratio: 495/436
}

.c-link-media-event__img img {
    height: 100%;
    width: 100%
}

.c-link-media-event__text-area {
    align-self: center
}

.c-link-media-event__title {
    color: #07d0d8;
    font-size: min(calc(.81633vw + .93367rem), 1.75rem);
    margin-bottom: 1em
}

.c-link-media-event__box {
    background-color: #fff;
    font-size: min(calc(.32653vw + .79847rem), 1.125rem);
    margin-top: min(.8163265306vw + 16.9387755102px, 30px);
    padding: 1em 1.5em
}

.c-link-media-event__box+.c-link-media-event__box {
    margin-top: 10px
}

.c-link-media-event__box .date {
    display: grid;
    grid-template-columns: auto 1fr
}

.c-link-media-event__box .date dt {
    font-weight: 400
}

.c-link-media-event__buttons {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, 1fr);
    margin-top: min(1.6326530612vw + 13.8775510204px, 40px)
}

.c-link-media-event__buttons .button {
    font-size: min(calc(.32653vw + .73597rem), 1.0625rem);
    line-height: 1.5
}

.c-link-media-event__buttons .button a {
    align-items: center;
    background-color: #07d0d8;
    border: 1px solid #07d0d8;
    border-radius: 9999px;
    color: #fff;
    display: grid;
    gap: 1em;
    grid-template-columns: 1fr auto;
    min-height: 3.5294117647em;
    padding: .5em 1em .5em 1.5em;
    transition-duration: .5s
}

.c-link-media-event__buttons .button a .text {
    margin-right: auto
}

.c-link-media-event__buttons .button a .ico {
    aspect-ratio: 1/1;
    background-color: #fff;
    border-radius: 50%;
    color: #07d0d8;
    font-size: 1.9411764706em;
    height: 1em;
    overflow: hidden;
    transition-duration: .5s
}

.c-link-media-event__buttons .button a .ico .c-ico img, .c-link-media-event__buttons .button a .ico .c-ico svg {
    font-size: .3333333333em
}

.c-link-media-event__buttons .button.-white a {
    background-color: #fff;
    color: #07d0d8
}

.c-link-media-event__buttons .button.-white .ico {
    background-color: #07d0d8;
    color: #fff
}

.ajax-loader, .wpcf7-spinner {
    display: none
}

.wpcf7-list-item {
    margin: 0
}

.c-form {
    background-color: #f0fbfb;
    border-radius: min(.8163265306vw + 6.9387755102px, 20px);
    font-size: 1.0625rem;
    padding: min(3.2653061224vw + 27.7551020408px, 80px) min(6.1224489796vw + -2.9591836735px, 95px)
}

.c-form-table input[type=email], .c-form-table input[type=text], .c-form-table select, .c-form-table textarea {
    background-color: #fff;
    border: 0;
    border-radius: 10px;
    display: block;
    padding: 0 1.5em;
    width: 100%
}

.c-form-table input[type=email]::-moz-placeholder, .c-form-table input[type=text]::-moz-placeholder, .c-form-table select::-moz-placeholder, .c-form-table textarea::-moz-placeholder {
    color: #ccc
}

.c-form-table input[type=email]::placeholder, .c-form-table input[type=text]::placeholder, .c-form-table select::placeholder, .c-form-table textarea::placeholder {
    color: #ccc
}

.c-form-table input[type=email], .c-form-table input[type=text], .c-form-table select {
    height: 3.8235294118em
}

.c-form-table textarea {
    padding: 1em 1.5em
}

.c-form-table dl {
    margin-top: min(2.0408163265vw + 17.3469387755px, 50px)
}

.c-form-table dl:first-of-type {
    margin-top: 0
}

.c-form-table dl dd, .c-form-table dl dt {
    line-height: 1.5
}

.c-form-table dl dt {
    align-items: center;
    display: flex;
    font-size: min(calc(.4898vw + .7602rem), 1.25rem);
    font-weight: 500;
    line-height: 1.5;
    margin-bottom: 1em;
    position: relative
}

.c-form-table dl dt:after {
    border-radius: 5px;
    flex-shrink: 0;
    font-size: min(calc(.16327vw + .58673rem), .75rem);
    line-height: 1;
    margin-left: .5em;
    margin-top: .2em;
    padding: .2em .4em .3em
}

.c-form-table dl .zip {
    max-width: min(4.0816326531vw + 164.693877551px, 230px);
    min-width: min(4.0816326531vw + 164.693877551px, 230px)
}

.c-form-table .required:after {
    background: red;
    color: #fff;
    content: "必須"
}

.c-form-table .any:after {
    background: #607d8b;
    color: #fff;
    content: "任意"
}

.c-form-table .formrun-system-show, .c-form-table .furigana_error {
    color: red;
    margin-top: .2em
}

.c-form-table .furigana_error {
    display: none
}

.c-form-radios {
    font-size: 1.0625rem
}

.c-form-radios .wpcf7-radio {
    display: grid;
    gap: min(.8163265306vw + 6.9387755102px, 20px);
    grid-template-columns: repeat(auto-fit, minmax(10em, 1fr))
}

.c-form-radios .wpcf7-radio.-col3 {
    grid-template-columns: repeat(3, minmax(10em, 1fr))
}

.c-form-radios label {
    align-items: center;
    cursor: pointer;
    display: flex
}

.c-form-radios input {
    display: none
}

.c-form-radios input+span {
    align-items: center;
    background-color: #fff;
    border: 2px solid #fff;
    border-radius: 10px;
    display: grid;
    gap: .625em;
    grid-template: "CHECK TEXT"auto/auto 1fr;
    height: 3.8235294118em;
    padding: 0 1em;
    position: relative;
    width: 100%
}

.c-form-radios input+span:before {
    background-color: #e6f8f9;
    border-radius: 5px;
    content: "";
    cursor: pointer;
    flex-shrink: 0;
    font-size: 1.6470588235em;
    grid-area: CHECK;
    -ms-grid-column: 1;
    -ms-grid-row: 1;
    height: 1em;
    text-align: center;
    width: 1em
}

.c-form-radios input+span:after {
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
    border-right-color: #fff;
    border-top-color: #fff;
    content: "";
    display: none;
    grid-area: CHECK;
    -ms-grid-column: 1;
    -ms-grid-row: 1;
    height: .4em;
    transform: translate(.5em, -.1em) rotate(-45deg);
    width: .8em
}

.c-form-radios input:checked+span {
    border-color: #07d0d8;
    color: #07d0d8
}

.c-form-radios input:checked+span:before {
    background-color: #07d0d8
}

.c-form-radios input:checked+span:after {
    display: block
}

.c-form-select {
    position: relative
}

.c-form-select .ico {
    color: #07d0d8;
    pointer-events: none;
    position: absolute;
    right: 1.5em;
    top: 50%;
    translate: 0 -50%;
    z-index: 10
}

.c-form-select .ico img, .c-form-select .ico svg {
    rotate: 90deg
}

.c-form-select select {
    cursor: pointer
}

.c-form-actions__buttons {
    display: grid;
    gap: 20px;
    grid-template-columns: 1fr;
    place-content: center
}

.c-form-actions .checkbox {
    justify-self: center
}

.c-form-actions .checkbox label {
    align-items: center;
    cursor: pointer;
    display: flex;
    width: 14.4117647059em
}

.c-form-actions .checkbox input {
    display: none
}

.c-form-actions .checkbox input+span {
    align-items: center;
    background-color: #fff;
    border: 2px solid #fff;
    border-radius: 10px;
    display: grid;
    gap: .625em;
    grid-template: "CHECK TEXT"auto/auto 1fr;
    height: 3.8235294118em;
    padding: 0 1em;
    position: relative;
    width: 100%
}

.c-form-actions .checkbox input+span:before {
    background-color: #e6f8f9;
    border-radius: 5px;
    content: "";
    cursor: pointer;
    flex-shrink: 0;
    font-size: 1.6470588235em;
    grid-area: CHECK;
    -ms-grid-column: 1;
    -ms-grid-row: 1;
    height: 1em;
    text-align: center;
    width: 1em
}

.c-form-actions .checkbox input+span:after {
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
    border-right-color: #fff;
    border-top-color: #fff;
    content: "";
    display: none;
    grid-area: CHECK;
    -ms-grid-column: 1;
    -ms-grid-row: 1;
    height: .4em;
    transform: translate(.5em, -.1em) rotate(-45deg);
    width: .8em
}

.c-form-actions .checkbox input:checked+span {
    border-color: #07d0d8;
    color: #07d0d8
}

.c-form-actions .checkbox input:checked+span:before {
    background-color: #07d0d8
}

.c-form-actions .checkbox input:checked+span:after {
    display: block
}

.c-form-actions .submit {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: center
}

.c-form-actions .submit button, .c-form-actions .submit input {
    align-items: center;
    background-color: #07d0d8;
    border: 1px solid #07d0d8;
    border-radius: 9999px;
    color: #fff;
    cursor: pointer;
    display: grid;
    max-width: 20.5882352941em;
    min-height: 3.8235294118em;
    padding: .5em 1em;
    text-align: center;
    width: 100%
}

.c-form-actions .submit button:disabled, .c-form-actions .submit input:disabled {
    background-color: #ededed;
    border-color: #ededed;
    color: #ccc
}

.c-form-event_list {
    display: none;
    opacity: 0;
    transition: visibility .3s ease, opacity .3s ease;
    visibility: hidden
}

.c-form-event_list.is-act {
    display: block;
    opacity: 1;
    visibility: visible
}

.c-list-num {
    counter-reset: number;
    display: grid;
    font-size: min(calc(.32653vw + .79847rem), 1.125rem);
    gap: .4em
}

.c-list-num>li {
    counter-increment: number;
    padding-left: 1.5em;
    position: relative
}

.c-list-num>li:before {
    color: #07d0d8;
    content: counter(number) ".";
    font-size: 1.1111111111em;
    font-weight: 700;
    left: 0;
    position: absolute;
    top: -.08em
}

.c-list>li {
    padding-left: 1em;
    position: relative
}

.c-list>li:before {
    color: #07d0d8;
    content: "・";
    left: 0;
    position: absolute;
    top: 0
}

.u-block, .u-block_center {
    display: block
}

.u-block_center {
    margin-left: auto;
    margin-right: auto
}

.u-none {
    display: none
}

.u-ib {
    display: inline-block
}

.u-left {
    text-align: left
}

.u-center {
    text-align: center
}

.u-right {
    text-align: right
}

.u-justify {
    text-align: justify
}

.u-relative {
    position: relative
}

.u-absolute {
    position: absolute
}

.u-fixed {
    position: fixed
}

.u-flex {
    display: flex
}

.u-flex.-wrap {
    flex-wrap: wrap
}

.u-flex.-reverse {
    flex-direction: reverse
}

.u-flex.-inline {
    display: inline-flex
}

.u-flex.-astart {
    align-items: flex-start
}

.u-flex.-acenter {
    align-items: center
}

.u-flex.-aend {
    align-items: flex-end
}

.u-flex.-jbetween {
    justify-content: space-between
}

.u-flex.-jaround {
    justify-content: space-around
}

.u-flex.-jstart {
    justify-content: flex-start
}

.u-flex.-jcenter {
    justify-content: center
}

.u-flex.-jend {
    justify-content: flex-end
}

.u-grid {
    display: grid
}

.u-overflow-auto {
    overflow: auto
}

.u-overflow-visible {
    overflow: visible
}

.u-overflow-hidden {
    overflow: hidden
}

.u-visibility-visible {
    visibility: visible
}

.u-visibility-hidden {
    visibility: hidden
}

.u-cursor-pointer {
    cursor: pointer
}

.u-cursor-grab {
    cursor: grab
}

.u-cursor-wait {
    cursor: wait
}

.u-cursor-not-allowed {
    cursor: not-allowed
}

.u-uppercase {
    text-transform: uppercase
}

.u-capitalize {
    text-transform: capitalize
}

.u-nowrap {
    white-space: nowrap
}

.u-breakall {
    word-break: break-all
}

.u-keepall {
    word-break: keep-all
}

.u-weight-100 {
    font-weight: 100
}

.u-weight-200 {
    font-weight: 200
}

.u-weight-300 {
    font-weight: 300
}

.u-weight-400 {
    font-weight: 400
}

.u-weight-500 {
    font-weight: 500
}

.u-weight-600 {
    font-weight: 600
}

.u-weight-700 {
    font-weight: 700
}

.u-weight-800 {
    font-weight: 800
}

.u-weight-900 {
    font-weight: 900
}

.u-color-main {
    color: #07d0d8
}

.u-color-font {
    color: #505050
}

.u-color-sub {
    color: #ccc
}

.u-color-white {
    color: #fff
}

.u-color-accent {
    color: #ccc
}

.u-color-note {
    color: #9babb1
}

.u-mt0 {
    margin-top: min(0vw + 0px, 0px) !important
}

.u-mb0 {
    margin-bottom: min(0vw + 0px, 0px) !important
}

.u-ml0 {
    margin-left: min(0vw + 0px, 0px) !important
}

.u-mr0 {
    margin-right: min(0vw + 0px, 0px) !important
}

.u-pt0 {
    padding-top: min(0vw + 0px, 0px) !important
}

.u-pb0 {
    padding-bottom: min(0vw + 0px, 0px) !important
}

.u-pl0 {
    padding-left: min(0vw + 0px, 0px) !important
}

.u-pr0 {
    padding-right: min(0vw + 0px, 0px) !important
}

.u-mt5 {
    margin-top: min(.4081632653vw + 3.4693877551px, 10px) !important
}

.u-mb5 {
    margin-bottom: min(.4081632653vw + 3.4693877551px, 10px) !important
}

.u-ml5 {
    margin-left: min(.4081632653vw + 3.4693877551px, 10px) !important
}

.u-mr5 {
    margin-right: min(.4081632653vw + 3.4693877551px, 10px) !important
}

.u-pt5 {
    padding-top: min(.4081632653vw + 3.4693877551px, 10px) !important
}

.u-pb5 {
    padding-bottom: min(.4081632653vw + 3.4693877551px, 10px) !important
}

.u-pl5 {
    padding-left: min(.4081632653vw + 3.4693877551px, 10px) !important
}

.u-pr5 {
    padding-right: min(.4081632653vw + 3.4693877551px, 10px) !important
}

.u-mt10 {
    margin-top: min(.8163265306vw + 6.9387755102px, 20px) !important
}

.u-mb10 {
    margin-bottom: min(.8163265306vw + 6.9387755102px, 20px) !important
}

.u-ml10 {
    margin-left: min(.8163265306vw + 6.9387755102px, 20px) !important
}

.u-mr10 {
    margin-right: min(.8163265306vw + 6.9387755102px, 20px) !important
}

.u-pt10 {
    padding-top: min(.8163265306vw + 6.9387755102px, 20px) !important
}

.u-pb10 {
    padding-bottom: min(.8163265306vw + 6.9387755102px, 20px) !important
}

.u-pl10 {
    padding-left: min(.8163265306vw + 6.9387755102px, 20px) !important
}

.u-pr10 {
    padding-right: min(.8163265306vw + 6.9387755102px, 20px) !important
}

.u-mt15 {
    margin-top: min(1.2244897959vw + 10.4081632653px, 30px) !important
}

.u-mb15 {
    margin-bottom: min(1.2244897959vw + 10.4081632653px, 30px) !important
}

.u-ml15 {
    margin-left: min(1.2244897959vw + 10.4081632653px, 30px) !important
}

.u-mr15 {
    margin-right: min(1.2244897959vw + 10.4081632653px, 30px) !important
}

.u-pt15 {
    padding-top: min(1.2244897959vw + 10.4081632653px, 30px) !important
}

.u-pb15 {
    padding-bottom: min(1.2244897959vw + 10.4081632653px, 30px) !important
}

.u-pl15 {
    padding-left: min(1.2244897959vw + 10.4081632653px, 30px) !important
}

.u-pr15 {
    padding-right: min(1.2244897959vw + 10.4081632653px, 30px) !important
}

.u-mt20 {
    margin-top: min(1.6326530612vw + 13.8775510204px, 40px) !important
}

.u-mb20 {
    margin-bottom: min(1.6326530612vw + 13.8775510204px, 40px) !important
}

.u-ml20 {
    margin-left: min(1.6326530612vw + 13.8775510204px, 40px) !important
}

.u-mr20 {
    margin-right: min(1.6326530612vw + 13.8775510204px, 40px) !important
}

.u-pt20 {
    padding-top: min(1.6326530612vw + 13.8775510204px, 40px) !important
}

.u-pb20 {
    padding-bottom: min(1.6326530612vw + 13.8775510204px, 40px) !important
}

.u-pl20 {
    padding-left: min(1.6326530612vw + 13.8775510204px, 40px) !important
}

.u-pr20 {
    padding-right: min(1.6326530612vw + 13.8775510204px, 40px) !important
}

.u-mt25 {
    margin-top: min(2.0408163265vw + 17.3469387755px, 50px) !important
}

.u-mb25 {
    margin-bottom: min(2.0408163265vw + 17.3469387755px, 50px) !important
}

.u-ml25 {
    margin-left: min(2.0408163265vw + 17.3469387755px, 50px) !important
}

.u-mr25 {
    margin-right: min(2.0408163265vw + 17.3469387755px, 50px) !important
}

.u-pt25 {
    padding-top: min(2.0408163265vw + 17.3469387755px, 50px) !important
}

.u-pb25 {
    padding-bottom: min(2.0408163265vw + 17.3469387755px, 50px) !important
}

.u-pl25 {
    padding-left: min(2.0408163265vw + 17.3469387755px, 50px) !important
}

.u-pr25 {
    padding-right: min(2.0408163265vw + 17.3469387755px, 50px) !important
}

.u-mt30 {
    margin-top: min(2.4489795918vw + 20.8163265306px, 60px) !important
}

.u-mb30 {
    margin-bottom: min(2.4489795918vw + 20.8163265306px, 60px) !important
}

.u-ml30 {
    margin-left: min(2.4489795918vw + 20.8163265306px, 60px) !important
}

.u-mr30 {
    margin-right: min(2.4489795918vw + 20.8163265306px, 60px) !important
}

.u-pt30 {
    padding-top: min(2.4489795918vw + 20.8163265306px, 60px) !important
}

.u-pb30 {
    padding-bottom: min(2.4489795918vw + 20.8163265306px, 60px) !important
}

.u-pl30 {
    padding-left: min(2.4489795918vw + 20.8163265306px, 60px) !important
}

.u-pr30 {
    padding-right: min(2.4489795918vw + 20.8163265306px, 60px) !important
}

.u-mt35 {
    margin-top: min(2.8571428571vw + 24.2857142857px, 70px) !important
}

.u-mb35 {
    margin-bottom: min(2.8571428571vw + 24.2857142857px, 70px) !important
}

.u-ml35 {
    margin-left: min(2.8571428571vw + 24.2857142857px, 70px) !important
}

.u-mr35 {
    margin-right: min(2.8571428571vw + 24.2857142857px, 70px) !important
}

.u-pt35 {
    padding-top: min(2.8571428571vw + 24.2857142857px, 70px) !important
}

.u-pb35 {
    padding-bottom: min(2.8571428571vw + 24.2857142857px, 70px) !important
}

.u-pl35 {
    padding-left: min(2.8571428571vw + 24.2857142857px, 70px) !important
}

.u-pr35 {
    padding-right: min(2.8571428571vw + 24.2857142857px, 70px) !important
}

.u-mt40 {
    margin-top: min(3.2653061224vw + 27.7551020408px, 80px) !important
}

.u-mb40 {
    margin-bottom: min(3.2653061224vw + 27.7551020408px, 80px) !important
}

.u-ml40 {
    margin-left: min(3.2653061224vw + 27.7551020408px, 80px) !important
}

.u-mr40 {
    margin-right: min(3.2653061224vw + 27.7551020408px, 80px) !important
}

.u-pt40 {
    padding-top: min(3.2653061224vw + 27.7551020408px, 80px) !important
}

.u-pb40 {
    padding-bottom: min(3.2653061224vw + 27.7551020408px, 80px) !important
}

.u-pl40 {
    padding-left: min(3.2653061224vw + 27.7551020408px, 80px) !important
}

.u-pr40 {
    padding-right: min(3.2653061224vw + 27.7551020408px, 80px) !important
}

.u-mt45 {
    margin-top: min(3.6734693878vw + 31.2244897959px, 90px) !important
}

.u-mb45 {
    margin-bottom: min(3.6734693878vw + 31.2244897959px, 90px) !important
}

.u-ml45 {
    margin-left: min(3.6734693878vw + 31.2244897959px, 90px) !important
}

.u-mr45 {
    margin-right: min(3.6734693878vw + 31.2244897959px, 90px) !important
}

.u-pt45 {
    padding-top: min(3.6734693878vw + 31.2244897959px, 90px) !important
}

.u-pb45 {
    padding-bottom: min(3.6734693878vw + 31.2244897959px, 90px) !important
}

.u-pl45 {
    padding-left: min(3.6734693878vw + 31.2244897959px, 90px) !important
}

.u-pr45 {
    padding-right: min(3.6734693878vw + 31.2244897959px, 90px) !important
}

.u-mt50 {
    margin-top: min(4.0816326531vw + 34.693877551px, 100px) !important
}

.u-mb50 {
    margin-bottom: min(4.0816326531vw + 34.693877551px, 100px) !important
}

.u-ml50 {
    margin-left: min(4.0816326531vw + 34.693877551px, 100px) !important
}

.u-mr50 {
    margin-right: min(4.0816326531vw + 34.693877551px, 100px) !important
}

.u-pt50 {
    padding-top: min(4.0816326531vw + 34.693877551px, 100px) !important
}

.u-pb50 {
    padding-bottom: min(4.0816326531vw + 34.693877551px, 100px) !important
}

.u-pl50 {
    padding-left: min(4.0816326531vw + 34.693877551px, 100px) !important
}

.u-pr50 {
    padding-right: min(4.0816326531vw + 34.693877551px, 100px) !important
}

.u-mt55 {
    margin-top: min(4.4897959184vw + 38.1632653061px, 110px) !important
}

.u-mb55 {
    margin-bottom: min(4.4897959184vw + 38.1632653061px, 110px) !important
}

.u-ml55 {
    margin-left: min(4.4897959184vw + 38.1632653061px, 110px) !important
}

.u-mr55 {
    margin-right: min(4.4897959184vw + 38.1632653061px, 110px) !important
}

.u-pt55 {
    padding-top: min(4.4897959184vw + 38.1632653061px, 110px) !important
}

.u-pb55 {
    padding-bottom: min(4.4897959184vw + 38.1632653061px, 110px) !important
}

.u-pl55 {
    padding-left: min(4.4897959184vw + 38.1632653061px, 110px) !important
}

.u-pr55 {
    padding-right: min(4.4897959184vw + 38.1632653061px, 110px) !important
}

.u-mt60 {
    margin-top: min(4.8979591837vw + 41.6326530612px, 120px) !important
}

.u-mb60 {
    margin-bottom: min(4.8979591837vw + 41.6326530612px, 120px) !important
}

.u-ml60 {
    margin-left: min(4.8979591837vw + 41.6326530612px, 120px) !important
}

.u-mr60 {
    margin-right: min(4.8979591837vw + 41.6326530612px, 120px) !important
}

.u-pt60 {
    padding-top: min(4.8979591837vw + 41.6326530612px, 120px) !important
}

.u-pb60 {
    padding-bottom: min(4.8979591837vw + 41.6326530612px, 120px) !important
}

.u-pl60 {
    padding-left: min(4.8979591837vw + 41.6326530612px, 120px) !important
}

.u-pr60 {
    padding-right: min(4.8979591837vw + 41.6326530612px, 120px) !important
}

.u-mt65 {
    margin-top: min(5.306122449vw + 45.1020408163px, 130px) !important
}

.u-mb65 {
    margin-bottom: min(5.306122449vw + 45.1020408163px, 130px) !important
}

.u-ml65 {
    margin-left: min(5.306122449vw + 45.1020408163px, 130px) !important
}

.u-mr65 {
    margin-right: min(5.306122449vw + 45.1020408163px, 130px) !important
}

.u-pt65 {
    padding-top: min(5.306122449vw + 45.1020408163px, 130px) !important
}

.u-pb65 {
    padding-bottom: min(5.306122449vw + 45.1020408163px, 130px) !important
}

.u-pl65 {
    padding-left: min(5.306122449vw + 45.1020408163px, 130px) !important
}

.u-pr65 {
    padding-right: min(5.306122449vw + 45.1020408163px, 130px) !important
}

.u-mt70 {
    margin-top: min(5.7142857143vw + 48.5714285714px, 140px) !important
}

.u-mb70 {
    margin-bottom: min(5.7142857143vw + 48.5714285714px, 140px) !important
}

.u-ml70 {
    margin-left: min(5.7142857143vw + 48.5714285714px, 140px) !important
}

.u-mr70 {
    margin-right: min(5.7142857143vw + 48.5714285714px, 140px) !important
}

.u-pt70 {
    padding-top: min(5.7142857143vw + 48.5714285714px, 140px) !important
}

.u-pb70 {
    padding-bottom: min(5.7142857143vw + 48.5714285714px, 140px) !important
}

.u-pl70 {
    padding-left: min(5.7142857143vw + 48.5714285714px, 140px) !important
}

.u-pr70 {
    padding-right: min(5.7142857143vw + 48.5714285714px, 140px) !important
}

.u-mt75 {
    margin-top: min(6.1224489796vw + 52.0408163265px, 150px) !important
}

.u-mb75 {
    margin-bottom: min(6.1224489796vw + 52.0408163265px, 150px) !important
}

.u-ml75 {
    margin-left: min(6.1224489796vw + 52.0408163265px, 150px) !important
}

.u-mr75 {
    margin-right: min(6.1224489796vw + 52.0408163265px, 150px) !important
}

.u-pt75 {
    padding-top: min(6.1224489796vw + 52.0408163265px, 150px) !important
}

.u-pb75 {
    padding-bottom: min(6.1224489796vw + 52.0408163265px, 150px) !important
}

.u-pl75 {
    padding-left: min(6.1224489796vw + 52.0408163265px, 150px) !important
}

.u-pr75 {
    padding-right: min(6.1224489796vw + 52.0408163265px, 150px) !important
}

.u-mt80 {
    margin-top: min(6.5306122449vw + 55.5102040816px, 160px) !important
}

.u-mb80 {
    margin-bottom: min(6.5306122449vw + 55.5102040816px, 160px) !important
}

.u-ml80 {
    margin-left: min(6.5306122449vw + 55.5102040816px, 160px) !important
}

.u-mr80 {
    margin-right: min(6.5306122449vw + 55.5102040816px, 160px) !important
}

.u-pt80 {
    padding-top: min(6.5306122449vw + 55.5102040816px, 160px) !important
}

.u-pb80 {
    padding-bottom: min(6.5306122449vw + 55.5102040816px, 160px) !important
}

.u-pl80 {
    padding-left: min(6.5306122449vw + 55.5102040816px, 160px) !important
}

.u-pr80 {
    padding-right: min(6.5306122449vw + 55.5102040816px, 160px) !important
}

.u-mt85 {
    margin-top: min(6.9387755102vw + 58.9795918367px, 170px) !important
}

.u-mb85 {
    margin-bottom: min(6.9387755102vw + 58.9795918367px, 170px) !important
}

.u-ml85 {
    margin-left: min(6.9387755102vw + 58.9795918367px, 170px) !important
}

.u-mr85 {
    margin-right: min(6.9387755102vw + 58.9795918367px, 170px) !important
}

.u-pt85 {
    padding-top: min(6.9387755102vw + 58.9795918367px, 170px) !important
}

.u-pb85 {
    padding-bottom: min(6.9387755102vw + 58.9795918367px, 170px) !important
}

.u-pl85 {
    padding-left: min(6.9387755102vw + 58.9795918367px, 170px) !important
}

.u-pr85 {
    padding-right: min(6.9387755102vw + 58.9795918367px, 170px) !important
}

.u-mt90 {
    margin-top: min(7.3469387755vw + 62.4489795918px, 180px) !important
}

.u-mb90 {
    margin-bottom: min(7.3469387755vw + 62.4489795918px, 180px) !important
}

.u-ml90 {
    margin-left: min(7.3469387755vw + 62.4489795918px, 180px) !important
}

.u-mr90 {
    margin-right: min(7.3469387755vw + 62.4489795918px, 180px) !important
}

.u-pt90 {
    padding-top: min(7.3469387755vw + 62.4489795918px, 180px) !important
}

.u-pb90 {
    padding-bottom: min(7.3469387755vw + 62.4489795918px, 180px) !important
}

.u-pl90 {
    padding-left: min(7.3469387755vw + 62.4489795918px, 180px) !important
}

.u-pr90 {
    padding-right: min(7.3469387755vw + 62.4489795918px, 180px) !important
}

.u-mt95 {
    margin-top: min(7.7551020408vw + 65.9183673469px, 190px) !important
}

.u-mb95 {
    margin-bottom: min(7.7551020408vw + 65.9183673469px, 190px) !important
}

.u-ml95 {
    margin-left: min(7.7551020408vw + 65.9183673469px, 190px) !important
}

.u-mr95 {
    margin-right: min(7.7551020408vw + 65.9183673469px, 190px) !important
}

.u-pt95 {
    padding-top: min(7.7551020408vw + 65.9183673469px, 190px) !important
}

.u-pb95 {
    padding-bottom: min(7.7551020408vw + 65.9183673469px, 190px) !important
}

.u-pl95 {
    padding-left: min(7.7551020408vw + 65.9183673469px, 190px) !important
}

.u-pr95 {
    padding-right: min(7.7551020408vw + 65.9183673469px, 190px) !important
}

.u-mt100 {
    margin-top: min(8.1632653061vw + 69.387755102px, 200px) !important
}

.u-mb100 {
    margin-bottom: min(8.1632653061vw + 69.387755102px, 200px) !important
}

.u-ml100 {
    margin-left: min(8.1632653061vw + 69.387755102px, 200px) !important
}

.u-mr100 {
    margin-right: min(8.1632653061vw + 69.387755102px, 200px) !important
}

.u-pt100 {
    padding-top: min(8.1632653061vw + 69.387755102px, 200px) !important
}

.u-pb100 {
    padding-bottom: min(8.1632653061vw + 69.387755102px, 200px) !important
}

.u-pl100 {
    padding-left: min(8.1632653061vw + 69.387755102px, 200px) !important
}

.u-pr100 {
    padding-right: min(8.1632653061vw + 69.387755102px, 200px) !important
}

.u-visible {
    display: block
}

.u-hidden {
    display: none
}

.u-hidden-max, .u-hidden-md, .u-hidden-min, .u-hidden-sp, .u-hidden-spmin, .u-hidden-tab {
    display: none !important
}

.u-mb-em0_25 {
    margin-bottom: .25em !important
}

.u-mt-em0_25 {
    margin-top: .25em !important
}

.u-mb-em0_5 {
    margin-bottom: .5em !important
}

.u-mt-em0_5 {
    margin-top: .5em !important
}

.u-mb-em0_75 {
    margin-bottom: .75em !important
}

.u-mt-em0_75 {
    margin-top: .75em !important
}

.u-mb-em1 {
    margin-bottom: 1em !important
}

.u-mt-em1 {
    margin-top: 1em !important
}

.u-mb-em1_25 {
    margin-bottom: 1.25em !important
}

.u-mt-em1_25 {
    margin-top: 1.25em !important
}

.u-mb-em1_5 {
    margin-bottom: 1.5em !important
}

.u-mt-em1_5 {
    margin-top: 1.5em !important
}

.u-mb-em1_75 {
    margin-bottom: 1.75em !important
}

.u-mt-em1_75 {
    margin-top: 1.75em !important
}

.u-mb-em2 {
    margin-bottom: 2em !important
}

.u-mt-em2 {
    margin-top: 2em !important
}

.u-mb-em2_5 {
    margin-bottom: 2.5em !important
}

.u-mt-em2_5 {
    margin-top: 2.5em !important
}

.u-mb-em3 {
    margin-bottom: 3em !important
}

.u-mt-em3 {
    margin-top: 3em !important
}

.u-gap-0 {
    gap: 0
}

.u-gap-em0_25 {
    gap: .25em
}

.u-gap-em0_5 {
    gap: .5em
}

.u-gap-em1 {
    gap: 1em
}

.u-gap-em2 {
    gap: 2em
}

.u-gap-10 {
    gap: min(.4081632653vw + 3.4693877551px, 10px)
}

.u-gap-row-10 {
    row-gap: min(.4081632653vw + 3.4693877551px, 10px)
}

.u-gap-col-10 {
    -moz-column-gap: min(.4081632653vw + 3.4693877551px, 10px);
    column-gap: min(.4081632653vw + 3.4693877551px, 10px)
}

.u-gap-20 {
    gap: min(.8163265306vw + 6.9387755102px, 20px)
}

.u-gap-row-20 {
    row-gap: min(.8163265306vw + 6.9387755102px, 20px)
}

.u-gap-col-20 {
    -moz-column-gap: min(.8163265306vw + 6.9387755102px, 20px);
    column-gap: min(.8163265306vw + 6.9387755102px, 20px)
}

.u-gap-30 {
    gap: min(1.2244897959vw + 10.4081632653px, 30px)
}

.u-gap-row-30 {
    row-gap: min(1.2244897959vw + 10.4081632653px, 30px)
}

.u-gap-col-30 {
    -moz-column-gap: min(1.2244897959vw + 10.4081632653px, 30px);
    column-gap: min(1.2244897959vw + 10.4081632653px, 30px)
}

.u-gap-40 {
    gap: min(1.6326530612vw + 13.8775510204px, 40px)
}

.u-gap-row-40 {
    row-gap: min(1.6326530612vw + 13.8775510204px, 40px)
}

.u-gap-col-40 {
    -moz-column-gap: min(1.6326530612vw + 13.8775510204px, 40px);
    column-gap: min(1.6326530612vw + 13.8775510204px, 40px)
}

.u-gap-50 {
    gap: min(2.0408163265vw + 17.3469387755px, 50px)
}

.u-gap-row-50 {
    row-gap: min(2.0408163265vw + 17.3469387755px, 50px)
}

.u-gap-col-50 {
    -moz-column-gap: min(2.0408163265vw + 17.3469387755px, 50px);
    column-gap: min(2.0408163265vw + 17.3469387755px, 50px)
}

.u-gap-60 {
    gap: min(2.4489795918vw + 20.8163265306px, 60px)
}

.u-gap-row-60 {
    row-gap: min(2.4489795918vw + 20.8163265306px, 60px)
}

.u-gap-col-60 {
    -moz-column-gap: min(2.4489795918vw + 20.8163265306px, 60px);
    column-gap: min(2.4489795918vw + 20.8163265306px, 60px)
}

.u-gap-70 {
    gap: min(2.8571428571vw + 24.2857142857px, 70px)
}

.u-gap-row-70 {
    row-gap: min(2.8571428571vw + 24.2857142857px, 70px)
}

.u-gap-col-70 {
    -moz-column-gap: min(2.8571428571vw + 24.2857142857px, 70px);
    column-gap: min(2.8571428571vw + 24.2857142857px, 70px)
}

.u-gap-80 {
    gap: min(3.2653061224vw + 27.7551020408px, 80px)
}

.u-gap-row-80 {
    row-gap: min(3.2653061224vw + 27.7551020408px, 80px)
}

.u-gap-col-80 {
    -moz-column-gap: min(3.2653061224vw + 27.7551020408px, 80px);
    column-gap: min(3.2653061224vw + 27.7551020408px, 80px)
}

.u-gap-90 {
    gap: min(3.6734693878vw + 31.2244897959px, 90px)
}

.u-gap-row-90 {
    row-gap: min(3.6734693878vw + 31.2244897959px, 90px)
}

.u-gap-col-90 {
    -moz-column-gap: min(3.6734693878vw + 31.2244897959px, 90px);
    column-gap: min(3.6734693878vw + 31.2244897959px, 90px)
}

.u-gap-100 {
    gap: min(4.0816326531vw + 34.693877551px, 100px)
}

.u-gap-row-100 {
    row-gap: min(4.0816326531vw + 34.693877551px, 100px)
}

.u-gap-col-100 {
    -moz-column-gap: min(4.0816326531vw + 34.693877551px, 100px);
    column-gap: min(4.0816326531vw + 34.693877551px, 100px)
}

.u-radius-10 {
    border-radius: 10px
}

.u-radius-20 {
    border-radius: min(.8163265306vw + 6.9387755102px, 20px)
}

.u-link {
    color: #07d0d8;
    text-decoration: underline
}

.u-hover-img {
    overflow: hidden
}

.u-hover-img>img {
    height: 100%;
    transition-duration: .5s;
    width: 100%
}

.u-hover-text {
    position: relative
}

.u-hover-text:after {
    background-color: currentColor;
    bottom: -.25em;
    content: "";
    display: block;
    height: 1px;
    left: auto;
    position: absolute;
    right: 0;
    transition-duration: .5s;
    transition-property: width;
    width: 0
}

.u-f-1 {
    flex: 1
}

.u-f-475 {
    flex: 475
}

.u-f-625 {
    flex: 625
}

.u-as-center {
    align-self: center
}

.u-over-right {
    margin-right: max(-4.0816326531vw + -34.693877551px, -100px)
}

.u-jc-center {
    justify-content: center
}

.u-font-mont {
    font-family: Montserrat, sans-serif;
    line-height: 1
}

.p-index_kv {
    max-height: 100vw;
    position: relative;
    width: 100%
}

.p-index_kv, .p-index_kv__bg {
    height: 133.3333333333vh;
    z-index: 0
}

.p-index_kv__bg {
    background-image: url(img/background.png);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    left: 0;
    position: absolute;
    right: 0;
    top: 0
}

.p-index_kv__circle {
    aspect-ratio: 1196/1195;
    height: 74.75vw;
    left: 50%;
    mix-blend-mode: screen;
    position: absolute;
    top: 50%;
    translate: -50% -52%
}

.p-index_kv__circle:before {
    animation: rotate 15s linear infinite;
    background-image: url(img/header_bg_circle3.png);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 100%;
    width: 100%
}

.p-index_kv__objs {
    height: 100vh;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1
}

.p-index_kv__objs .obj {
    animation-direction: alternate;
    animation-iteration-count: infinite;
    animation-name: swimUp;
    animation-timing-function: ease;
    backface-visibility: hidden
}

.p-index_kv__objs .fish {
    position: absolute
}

.p-index_kv__objs .fish.-i01 {
    animation-duration: 8s;
    left: 8%;
    top: 7%;
    width: 65.625vw
}

.p-index_kv__objs .fish.-i02 {
    animation-direction: alternate-reverse;
    animation-duration: 7s;
    right: -8%;
    top: 60%;
    width: 33.375vw
}

.p-index_kv__objs .fish.-i03 {
    animation-duration: 6s;
    left: 15%;
    top: 60%;
    width: 10.1875vw
}

.p-index_kv__objs .fish.-i04 {
    animation-duration: 5.6s;
    right: 2%;
    top: 34%;
    width: 15.5vw
}

.p-index_kv__objs .fish.-i05 {
    animation-duration: 6.2s;
    right: 12%;
    rotate: -12deg;
    top: 26%;
    width: 3.8125vw
}

.p-index_kv__objs .fish.-i06 {
    animation-direction: alternate-reverse;
    animation-duration: 7.4s;
    left: 6%;
    rotate: -198deg;
    top: 70%;
    width: 7.1875vw
}

.p-index_kv__objs .fish.-i07 {
    animation-duration: 6s;
    right: 18%;
    rotate: 21deg;
    top: 17%;
    width: 6.5vw
}

.p-index_kv__objs .fish.-i08 {
    animation-duration: 7.4s;
    bottom: 13%;
    right: 8%;
    width: 4.3125vw
}

.p-index_kv__objs .fish.-i09 {
    animation-direction: alternate-reverse;
    animation-duration: 7s;
    left: 3%;
    top: 42%;
    width: 5.1875vw
}

.p-index_kv__objs .cameleon {
    animation-duration: 8s;
    bottom: -14%;
    line-height: 1;
    position: absolute;
    right: -6%;
    width: 28.9375vw
}

.p-index_kv__objs .cat {
    animation-direction: alternate-reverse;
    animation-duration: 6s;
    bottom: -5%;
    left: 2%;
    line-height: 1;
    position: absolute;
    rotate: 12deg;
    width: 14.1875vw
}

.p-index_kv__objs .rabbit {
    animation-duration: 5s;
    bottom: -14%;
    left: 20%;
    line-height: 1;
    position: absolute;
    width: 8.375vw
}

.p-index_kv__bubble-area {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 10
}

.p-index_kv__bubble-area canvas {
    backface-visibility: hidden
}

.p-index_kv__main {
    font-size: max(48.3125vw, 700px);
    left: 50%;
    position: absolute;
    text-align: center;
    top: 50%;
    translate: -50% -50%;
    width: 1em;
    z-index: 50
}

.p-index_kv__main .main {
    backface-visibility: hidden
}

.p-index_kv__main img {
    display: block;
    width: 100%
}

.p-index_kv__copy {
    backface-visibility: hidden;
    font-size: 1.3027166882em;
    left: 50%;
    position: absolute;
    text-align: center;
    top: .17em;
    transition-duration: 2s;
    transition-property: opacity, transform;
    translate: calc(-50% + .03em) 0;
    width: 1em;
    z-index: 100
}

.p-index_kv__copy img {
    display: block;
    width: 100%
}

.p-index_intro {
    padding-bottom: min(11.0204081633vw + 98.6734693878px, 275px);
    position: relative;
    z-index: 10
}

.p-index_intro-wrapper {
    margin-top: -12.5vw;
    padding-top: min(12.2448979592vw + 44.0816326531px, 240px);
    position: relative
}

.p-index_intro-wrapper:after, .p-index_intro-wrapper:before {
    aspect-ratio: 2402/1576;
    background-color: #fff;
    border-radius: 50%;
    content: "";
    left: 50%;
    position: absolute;
    translate: -50% 0;
    width: 150.125vw
}

.p-index_intro-wrapper:before {
    top: 0
}

.p-index_intro-wrapper:after {
    opacity: .4;
    top: -2.5vw
}

.p-index_intro__container {
    position: relative
}

.p-index_intro__text-area {
    margin-inline: auto;
    position: relative;
    width: -moz-fit-content;
    width: fit-content
}

.p-index_intro__copy {
    filter: blur(10px);
    font-size: min(calc(4.16327vw + 3.39923rem), 7.5625rem);
    line-height: 1;
    margin-bottom: .5em;
    opacity: 0;
    transform: translate3d(0, 20px, 0);
    transition-duration: 2s;
    transition-property: filter, opacity, transform;
    transition-timing-function: ease, ease, cubic-bezier(.215, .61, .355, 1)
}

.is-act .p-index_intro__copy {
    filter: blur(0);
    opacity: 1;
    transform: translateZ(0)
}

.p-index_intro__copy img, .p-index_intro__copy svg {
    height: 1em;
    width: auto
}

.p-index_intro__text strong {
    color: #07d0d8;
    font-weight: 400
}

.p-index_intro__fish {
    bottom: min(2.0408163265vw + 17.3469387755px, 50px);
    font-size: min(calc(3.26531vw + 1.73469rem), 5rem);
    left: 13.4375vw;
    pointer-events: none;
    position: absolute;
    width: 1em
}

.p-index_intro__fish img {
    animation-direction: alternate;
    animation-duration: 7s;
    animation-iteration-count: infinite;
    animation-name: swimUp;
    animation-timing-function: cubic-bezier(.645, .045, .355, 1)
}

.p-index_intro__bubble {
    line-height: 1;
    pointer-events: none;
    position: absolute
}

.p-index_intro__bubble.-bubble01 {
    font-size: min(5.5510204082vw + 47.1836734694px, 136px);
    left: -2em;
    top: -.5em;
    width: 1em
}

.p-index_intro__bubble.-bubble02 {
    bottom: 0;
    font-size: min(9.8775510204vw + 83.9591836735px, 242px);
    right: -1.5em;
    width: 1em
}

.p-index_intro__bubble.-bubble03 {
    bottom: min(2.0408163265vw + 17.3469387755px, 50px);
    font-size: min(8.4897959184vw + 72.1632653061px, 208px);
    left: .1em;
    width: 1em;
    z-index: 50
}

.p-index_intro_feature-card {
    aspect-ratio: 1/1;
    background-image: url(img/feature-card_background.png);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 20px;
    color: #fff;
    display: flex;
    overflow: hidden;
    padding: min(1.6326530612vw + 23.8775510204px, 50px) min(2.4489795918vw + 10.8163265306px, 50px);
    position: relative;
    z-index: 0
}

.p-index_intro_feature-card.-card01 .-obj01 {
    animation: lowFrameRotate 5s steps(1) infinite;
    left: 15%;
    top: 15%;
    width: 33.4426229508%
}

.p-index_intro_feature-card.-card02 .-obj01 {
    animation: lowFrameRotate 4s steps(1) infinite;
    left: -5%;
    rotate: 7deg;
    top: 4%;
    width: 39.8360655738%
}

.p-index_intro_feature-card.-card03 .-obj01 {
    animation: lowFrameRotate 5s steps(1) infinite;
    right: -5%;
    top: 4%;
    width: 63.7704918033%
}

.p-index_intro_feature-card.-card04 .-obj01 {
    animation: lowFrameY 3s steps(2) infinite;
    left: 35%;
    top: 7%;
    width: 42.131147541%
}

.p-index_intro_feature-card.-card05 .-obj01 {
    animation: lowFrameY 5s steps(2) infinite;
    right: 10%;
    rotate: 14deg;
    top: 12%;
    width: 34.7540983607%
}

.p-index_intro_feature-card__index {
    font-family: Montserrat, sans-serif;
    font-size: min(calc(1.06122vw + 1.25128rem), 2.3125rem);
    left: .5em;
    line-height: 1;
    position: absolute;
    top: .5em;
    z-index: 999
}

.p-index_intro_feature-card__img {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    z-index: 1
}

.p-index_intro_feature-card__img img {
    height: 100%;
    width: auto;
    object-fit: contain
}

.keen-slider {
    height: 100%;
    display: flex
}

.keen-slider__slide {
    height: 100%;
    flex: 1 0 auto;
    display: flex;
    justify-content: center;
    align-items: center
}

#js-index-intro-slider {
    height: 100vh
}

.keen-slider__slide {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center
}

.keen-slider__slide img {
    height: 100%;
    width: auto;
    object-fit: cover
}

.feature-card_img_transparent_b {
    mask-image: linear-gradient(to bottom, rgb(0 0 0) 30%, #fff0 80%);
    -webkit-mask-image: linear-gradient(to bottom, rgb(0 0 0) 30%, #fff0 80%)
}

.feature-card_img_transparent_b2 {
    mask-image: linear-gradient(to bottom, rgb(0 0 0) 10%, #fff0 50%);
    -webkit-mask-image: linear-gradient(to bottom, rgb(0 0 0) 10%, #fff0 50%)
}

.feature-card_img_transparent_l {
    mask-image: linear-gradient(to left, rgb(0 0 0) 10%, #fff0 45%);
    -webkit-mask-image: linear-gradient(to left, rgb(0 0 0) 10%, #fff0 45%)
}

.p-index_intro_feature-card__text-area {
    align-self: flex-end;
    position: relative;
    z-index: 10
}

.p-index_intro_feature-card__title {
    font-size: min(calc(1.06122vw + 1.00128rem), 2.0625rem);
    font-weight: 500;
    line-height: 1.5;
    margin-bottom: .6em
}

.p-index_intro_feature-card__title em {
    border-bottom: 3px dotted;
    color: #f6ff89;
    font-style: normal
}

.p-index_intro_feature-card__obj {
    position: absolute
}

.p-index_intro_feature-card-slider {
    margin-top: min(6.1224489796vw + 52.0408163265px, 150px)
}

.p-index_intro_feature-card-slider .c-slider-scrollbar01 {
    position: relative
}

.p-index_intro_feature-card-slider .c-slider-scrollbar01 .swiper-scrollbar-drag {
    display: block;
    position: absolute;
    top: 50%
}

.p-index_intro_feature-card-slider .keen-slider:not([data-keen-slider-disabled]) {
    overflow: visible
}

.p-index_intro_feature-card-slider .keen-slider__slide:not(:last-child) {
    max-width: min(25.306122449vw + 215.1020408163px, 620px);
    min-width: min(25.306122449vw + 215.1020408163px, 620px);
    padding-right: min(.8163265306vw + 6.9387755102px, 20px)
}

.p-index_intro_feature-card-slider .keen-slider__slide:last-child {
    max-width: min(24.4897959184vw + 208.1632653061px, 600px);
    min-width: min(24.4897959184vw + 208.1632653061px, 600px)
}

.p-index_course {
    --heading-height: 200px;
    position: relative
}

.p-index_course__grid {
    display: grid;
    grid-template-rows: var(--heading-height) repeat(3, calc(150vh - var(--heading-height)));
    position: relative
}

.p-index_course__heading {
    grid-column: 1/-1;
    grid-row: 1/-1
}

.p-index_course__heading__inner {
    color: #07d0d8;
    display: grid;
    font-size: min(calc(8.32653vw + 2.29847rem), 10.625rem);
    line-height: 1.5;
    position: sticky;
    top: 0;
    z-index: 1
}

.p-index_course__heading__inner .en {
    font-family: Montserrat, sans-serif;
    grid-area: 1/1;
    line-height: 1;
    opacity: .08;
    text-transform: uppercase
}

.p-index_course__heading__inner .ja {
    align-self: center;
    font-size: min(calc(.82653vw + .99847rem), 6.125rem);
    grid-area: 1/1;
    margin-left: 3em
}

.p-index_course__heading__inner.js-anim_elm .en span {
    display: inline-block;
    opacity: 0;
    transform: translateY(.5em);
    transition-duration: 2s
}

.p-index_course__heading__inner.js-anim_elm .ja {
    opacity: 0;
    transform: translate3d(0, 20px, 0);
    transition-delay: .5s;
    transition-duration: 2s;
    transition-property: opacity, transform;
    transition-timing-function: ease, cubic-bezier(.215, .61, .355, 1)
}

.p-index_course__heading__inner.js-anim_elm.is-act .en span {
    opacity: 1;
    transform: translateY(0)
}

.p-index_course__heading__inner.js-anim_elm.is-act .ja {
    opacity: 1;
    transform: translateZ(0)
}

.p-index_course__panel {
    grid-column: 1/-1
}

.p-index_course__panel.-panel01 {
    grid-row: 2/-1
}

.p-index_course__panel.-panel02 {
    grid-row: 3/-1
}

.p-index_course__panel.-panel03 {
    grid-row: 4/-1
}

.p-index_course__panel__inner {
    height: calc(100vh - var(--heading-height));
    opacity: calc(1 - var(--progress, 0));
    position: sticky;
    top: var(--heading-height);
    transform: scale3d(calc(1 - var(--progress, 0)*.5), calc(1 - var(--progress, 0)*.5), 1);
    transform-origin: center 25%
}

.p-index_work-book {
    margin-top: min(16.3265306122vw + 38.7755102041px, 300px);
    position: relative;
    z-index: 50
}

.p-index_work-book__row {
    display: grid;
    grid-template-columns: 1fr 1fr
}

.p-index_work-book__text-area {
    align-self: center;
    padding-right: min(4.0816326531vw + 34.693877551px, 100px)
}

.p-index_work-book__img-area {
    display: grid;
    justify-content: start;
    opacity: 0;
    position: relative;
    transform: translate3d(0, 20px, 0);
    transition-delay: 0s;
    transition-duration: 2s;
    transition-property: opacity, transform;
    transition-timing-function: ease, cubic-bezier(.215, .61, .355, 1)
}

.is-act .p-index_work-book__img-area {
    opacity: 1;
    transform: translateZ(0)
}

.p-index_work-book__img-area__container {
    max-width: 475px
}

.p-index_work-book__img-area .swiper {
    overflow: visible
}

.p-index_work-book__img-area .swiper-slide {
    cursor: pointer;
    overflow: visible
}

.p-index_work-book__img-area .swiper-slide .card {
    border-radius: min(.8163265306vw + 6.9387755102px, 20px);
    overflow: hidden;
    position: relative
}

.p-index_work-book__img-area .swiper-slide .card img {
    height: 100%;
    width: 100%
}

.p-index_work-book__img-area .swiper-slide .card:after {
    background-image: url(img/background.png);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transition-duration: .5s
}

.p-index_work-book__img-area .swiper-slide .card-wrapper {
    opacity: 0;
    transition-duration: .5s
}

.p-index_work-book__img-area .swiper-slide-active .card-wrapper, .p-index_work-book__img-area .swiper-slide-next .card-wrapper, .p-index_work-book__img-area .swiper-slide-prev .card-wrapper {
    opacity: 1
}

.p-index_work-book__img-area .swiper-slide-active .card:after {
    opacity: 0
}

.p-index_work-book__img-area .swiper-slide-next .card:after {
    opacity: .7
}

.p-index_work-book__objs {
    pointer-events: none;
    position: absolute
}

.p-index_work-book__objs .obj {
    opacity: 0;
    transition-duration: 2s
}

.is-act .p-index_work-book__objs .obj {
    opacity: 1
}

.p-index_work-book__objs.-left {
    bottom: 5%;
    left: -25%;
    position: absolute;
    width: 50.3157894737%
}

.p-index_work-book__objs.-left .obj {
    transform: translateX(20%)
}

.is-act .p-index_work-book__objs.-left .obj {
    transform: translateX(0)
}

.p-index_work-book__objs.-left .-front {
    position: absolute;
    right: 35%;
    top: 20%;
    width: 22.5941422594%;
    z-index: 50
}

.p-index_work-book__objs.-left .-back {
    position: relative;
    width: 100%;
    z-index: 1
}

.p-index_work-book__objs.-right {
    position: absolute;
    right: -50%;
    top: 30%;
    width: 85.2631578947%
}

.p-index_work-book__objs.-right .obj {
    transform: translateX(-20%)
}

.is-act .p-index_work-book__objs.-right .obj {
    transform: translateX(0)
}

.p-index_work-book__objs.-right .-front {
    bottom: -40%;
    position: absolute;
    right: 25%;
    width: 48.6419753086%;
    z-index: 50
}

.p-index_work-book__objs.-right .-back {
    position: relative;
    width: 100%;
    z-index: 5
}

.p-index_work-book__bubble {
    line-height: 1;
    pointer-events: none;
    position: absolute
}

.p-index_work-book__bubble.-bubble01 {
    font-size: min(8.1632653061vw + 69.387755102px, 200px);
    right: -1.1em;
    top: -.3em;
    width: 1em;
    z-index: 5
}

.p-index_work-book__bubble.-bubble02 {
    bottom: -.1em;
    font-size: min(8.0816326531vw + 68.693877551px, 198px);
    left: -1em;
    width: 1em;
    z-index: 0
}

.p-index_work-book__copy {
    color: #07d0d8;
    font-size: min(calc(1.14286vw + 1.23214rem), 2.375rem);
    font-weight: 500;
    letter-spacing: .05em;
    line-height: 1.5;
    margin-bottom: .8em
}

.p-index_work-book .c-button01 {
    margin-top: min(2.4489795918vw + 20.8163265306px, 60px)
}

.p-index_fixed-button {
    bottom: -.1em;
    font-size: min(calc(10.12245vw + 10.12755rem), 20.25rem);
    opacity: 0;
    position: fixed;
    right: -.1em;
    transform: translate3d(0, .1em, 0);
    transition-duration: 1s;
    transition-property: transform, opacity, visibility;
    visibility: hidden;
    width: 1em;
    z-index: 5000
}

.is-loading-end .p-index_fixed-button {
    opacity: 1;
    transform: translateZ(0);
    visibility: visible
}

.is-bottom .p-index_fixed-button, .is-drawer-open .p-index_fixed-button, .is-top .p-index_fixed-button {
    opacity: 0;
    transform: translate3d(0, .1em, 0);
    visibility: hidden
}

.p-index_fixed-button a {
    display: block;
    transform: scaleX(1);
    transition-duration: .5s;
    transition-property: transform
}

.p-index_fixed-button a img {
    display: block
}

.p-index_fixed-link {
    bottom: .2em;
    font-size: 19.375rem;
    max-width: 100%;
    opacity: 0;
    position: fixed;
    right: 30px;
    transform: translate3d(0, .1em, 0);
    transition-duration: 1s;
    transition-property: transform, opacity, visibility;
    visibility: hidden;
    width: 1em;
    z-index: 5000
}

.is-middle .p-index_fixed-link {
    opacity: 1;
    transform: translateZ(0);
    visibility: visible
}

.is-drawer-open .p-index_fixed-link {
    opacity: 0;
    transform: translate3d(0, .1em, 0);
    visibility: hidden
}

.p-index_fixed-link a {
    display: block;
    filter: drop-shadow(0 0 15px rgb(0 0 0 / .1));
    transition-duration: .5s;
    transition-property: opacity
}

.p-index_fixed-link a img {
    display: block
}

.p-index_fixed-link__close {
    aspect-ratio: 1/1;
    background-image: url(../../img/index/fixed-link_close@2x.png);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    cursor: pointer;
    font-size: .1451612903em;
    position: absolute;
    right: -.3em;
    top: -.3em;
    width: 1em;
    z-index: 10
}

.p-index_fixed-cta {
    background-image: linear-gradient(120deg, #d8f213, #84e252 32.45%, #09bcd3);
    border-radius: 9999px;
    bottom: min(1.2244897959vw + 10.4081632653px, 30px);
    color: #fff;
    display: none;
    font-size: min(calc(.2449vw + .7551rem), 0.75rem);
    height: 5.6875em;
    left: 0;
    margin-inline: 2vw;
    opacity: 0;
    position: fixed;
    right: 0;
    transform: translate3d(0, 50%, 0);
    transition-duration: 1s;
    transition-property: transform, opacity, visibility;
    visibility: hidden;
    z-index: 3000
}

.p-index_fixed-cta__item {
    flex: 1;
    font-weight: 500;
    line-height: 1.5
}

.p-index_fixed-cta__item.-pamphlet {
    order: -1
}

.p-index_fixed-cta__item.-pamphlet a:before {
    opacity: 0
}

.p-index_fixed-cta__item a {
    display: grid;
    grid-template-rows: 1fr 1fr;
    height: 100%;
    padding-top: .5em;
    position: relative;
    text-align: center
}

.p-index_fixed-cta__item a:before {
    border: 1px solid;
    bottom: .8em;
    content: "";
    left: 0;
    position: absolute;
    top: .8em
}

.p-index_fixed-cta__item .c-ico {
    font-size: 1.7692307692em
}

.is-middle .p-index_fixed-cta {
    opacity: 1;
    transform: translateZ(0);
    visibility: visible
}

.p-message_message__row {
    display: flex;
    gap: min(5.306122449vw + 10.1020408163px, 95px)
}

.p-message_message__text-area {
    flex: 540
}

.p-message_message__img {
    flex: 675;
    margin-right: -200px
}

.p-message_message__name {
    margin-top: min(1.6326530612vw + 13.8775510204px, 40px);
    text-align: right
}

.p-message_message__name .job {
    font-size: min(calc(.16327vw + .77423rem), .9375rem);
    margin-bottom: 1em
}

.p-message_message__name .name {
    font-size: min(calc(.65306vw + .84694rem), 1.5rem);
    font-weight: 500
}

.p-teacher_teacher+.p-teacher_teacher {
    margin-top: min(4.0816326531vw + 34.693877551px, 100px)
}

.p-teacher_teacher__profile {
    display: grid;
    gap: min(2.0408163265vw + 22.3469387755px, 55px);
    grid-template-columns: 570fr 475fr
}

.p-teacher_teacher__text-area {
    align-self: center
}

.p-teacher_teacher__job {
    font-weight: 500
}

.p-teacher_teacher__name {
    font-size: min(calc(1.63265vw + .74235rem), 2.375rem);
    margin-bottom: 1em
}

.p-teacher_teacher__name .ja {
    display: block
}

.p-teacher_teacher__name .en {
    color: #07d0d8;
    display: block;
    font-family: Montserrat, sans-serif;
    font-size: min(calc(.16327vw + .71173rem), .875rem);
    font-weight: 500;
    line-height: 1;
    margin-top: .5em;
    text-transform: uppercase
}

.p-teacher_message {
    background-color: #e6f8f9;
    border-radius: 10px;
    display: grid;
    grid-template-columns: auto 1fr;
    margin-top: min(.8163265306vw + 26.9387755102px, 40px);
    padding: min(2.4489795918vw + 10.8163265306px, 50px)
}

.p-teacher_message__head {
    color: #07d0d8;
    font-family: Montserrat, sans-serif;
    font-size: min(calc(.65306vw + .84694rem), 1.5rem);
    font-weight: 500;
    line-height: 1;
    line-height: 1.5;
    margin-bottom: 1em;
    padding-right: 1em;
    text-transform: uppercase;
    width: 7.9166666667em
}

.p-high-school-graduate_intro {
    margin-inline: auto;
    margin-top: min(2.4489795918vw + 20.8163265306px, 60px);
    position: relative;
    width: -moz-fit-content;
    width: fit-content
}

.p-high-school-graduate_intro__obj {
    bottom: -5%;
    position: absolute;
    right: -14%;
    width: 23.1111111111%
}

.p-facility_hero {
    height: min(28.5714285714vw + 142.8571428571px, 600px)
}

.p-facility_hero img {
    height: 100%;
    width: 100%
}

.p-facility_zone__head {
    position: relative
}

.p-facility_zone__head .content {
    display: grid;
    gap: min(5.306122449vw + 45.1020408163px, 130px);
    grid-template-columns: 1fr auto;
    position: relative
}

.p-facility_zone__head .text {
    padding-bottom: min(2.0408163265vw + 17.3469387755px, 50px)
}

.p-facility_zone__obj {
    align-self: end;
    font-size: min(calc(5.59184vw + 2.97066rem), 8.5625rem);
    justify-self: end;
    line-height: 1;
    padding-right: .7299270073em;
    position: relative
}

.p-facility_zone__obj .main {
    height: 1em;
    width: auto
}

.p-facility_zone__obj .fukidashi {
    bottom: .5em;
    height: 1.2700729927em;
    position: absolute;
    right: 0;
    width: auto
}

.p-facility_zone-card {
    position: relative
}

.p-facility_zone-card__title {
    bottom: 1em;
    color: #fff;
    display: flex;
    font-size: min(calc(.4898vw + 1.0102rem), 1.5rem);
    gap: .5em;
    left: 1em;
    margin-top: 1em;
    position: absolute;
    right: 1em
}

.p-facility_zone-card__title .ico {
    aspect-ratio: 1/1;
    background-color: #07d0d8;
    border-radius: 50%;
    color: #fff;
    display: grid;
    font-size: 1.6666666667em;
    height: 1em;
    justify-self: center;
    overflow: hidden;
    place-items: center;
    transition-duration: .5s
}

.p-facility_zone-card__title .ico .c-ico img, .p-facility_zone-card__title .ico .c-ico svg {
    font-size: .4em
}

.p-facility-zone-modal {
    background-color: #fff;
    border-radius: min(.8163265306vw + 6.9387755102px, 20px);
    padding: min(2.4489795918vw + 20.8163265306px, 60px) min(6.5306122449vw + -4.4897959184px, 100px);
    position: relative
}

.p-facility-zone-modal .close {
    position: absolute;
    right: -.3em;
    top: -.3em
}

.p-facility-zone-modal__head {
    align-items: center;
    display: flex;
    font-size: min(calc(1.63265vw + .74235rem), 2.375rem);
    gap: .5em;
    margin-bottom: .5em
}

.p-facility-zone-modal__head .index {
    color: #07d0d8;
    font-family: Montserrat, sans-serif;
    font-size: min(.3265306122vw + 12.7755102041px, 18px);
    font-weight: 500;
    line-height: 1
}

.p-facility-zone-modal__row {
    display: grid;
    gap: min(.8163265306vw + 26.9387755102px, 40px);
    grid-template-columns: 620fr 435fr
}

.p-facility-zone-modal__text-area {
    align-self: center
}

.p-facility-zone-modal__creatures {
    display: grid;
    gap: min(.8163265306vw + 6.9387755102px, 20px);
    grid-template-columns: repeat(3, 1fr);
    margin-top: min(.8163265306vw + 16.9387755102px, 30px);
    text-align: center
}

.p-facility-zone-modal__creatures .img img {
    border-radius: 50%
}

.p-facility-zone-modal__creatures .name {
    font-size: min(calc(.16327vw + .77423rem), .9375rem);
    line-height: 1.5;
    margin-top: .5em
}

.p-facility-zone-modal__menu {
    color: #07d0d8;
    display: grid;
    gap: 1em;
    grid-template-columns: 1fr 1fr;
    margin-top: min(.8163265306vw + 16.9387755102px, 30px)
}

.p-facility-zone-modal__menu .link {
    align-items: center;
    display: flex;
    gap: .8em
}

.p-facility-zone-modal__menu .link.-prev {
    justify-self: start
}

.p-facility-zone-modal__menu .link.-prev .c-ico {
    order: -1;
    scale: -1 1
}

.p-facility-zone-modal__menu .link.-next {
    justify-self: end
}

.p-facility-zone-modal__menu .link .c-ico {
    font-size: 1.125em
}

.p-facility_facility .swiper {
    margin-inline: -10px;
    overflow: visible
}

.p-facility_facility .swiper-slide {
    padding-inline: 10px;
    width: 33.3333333333%
}

.p-news_selects {
    display: flex;
    gap: min(.8163265306vw + 6.9387755102px, 20px);
    justify-content: end
}

.p-news-single_meta {
    align-items: center;
    display: flex;
    gap: 20px;
    margin-bottom: min(2.8571428571vw + 24.2857142857px, 70px)
}

.p-news-single_meta__date {
    color: #07d0d8;
    font-family: Montserrat, sans-serif;
    font-size: min(calc(.16327vw + .71173rem), .875rem);
    font-weight: 500;
    line-height: 1
}

.p-news-single_meta__cats {
    display: flex;
    font-size: min(calc(.16327vw + .58673rem), .75rem)
}

.p-news-single_meta__cats li {
    background-color: #07d0d8;
    border-radius: 5px;
    color: #fff;
    line-height: 1.5;
    padding: .2em .7em .3em
}

.p-event_tab-menu {
    border-bottom: 1px solid #9babb1;
    display: flex;
    font-size: min(calc(.40816vw + .84184rem), 1.25rem);
    line-height: 1.5;
    margin-bottom: min(2.8571428571vw + 24.2857142857px, 70px)
}

.p-event_tab-menu__item {
    color: #9babb1;
    cursor: pointer;
    flex: 1;
    padding-bottom: 1em;
    position: relative;
    text-align: center;
    transition-duration: .5s;
    transition-property: color
}

.p-event_tab-menu__item.-all {
    order: 0
}

.p-event_tab-menu__item.-adult-learners-division {
    order: 1
}

.p-event_tab-menu__item.-high-school-division {
    order: 2
}

.p-event_tab-menu__item.-specialized-division {
    order: 3
}

.p-event_tab-menu__item.-current {
    color: #505050;
    font-weight: 500;
    pointer-events: none
}

.p-event_tab-menu__item.-current:before {
    border-bottom: 4px solid #07d0d8;
    bottom: -2px;
    content: "";
    left: 0;
    position: absolute;
    right: 0
}

.p-event-single_kv {
    margin-bottom: min(4.0816326531vw + 34.693877551px, 100px);
    padding-top: min(10.612244898vw + 90.2040816327px, 260px);
    position: relative
}

.p-event-single_kv__container {
    position: relative
}

.p-event-single_kv__en {
    color: #f2fdfd;
    font-family: Montserrat, sans-serif;
    font-size: min(calc(6.93878vw + 3.68622rem), 10.625rem);
    font-weight: 500;
    grid-area: 1/1;
    left: 0;
    line-height: 1;
    margin-inline: calc(50% - 50vw);
    min-width: 0;
    position: absolute;
    right: 0;
    text-transform: uppercase;
    top: -.25em;
    z-index: 0
}

.p-event-single_kv__en .swiper-slide {
    margin-right: .4em
}

.p-event-single_kv__row {
    display: grid;
    gap: min(3.6734693878vw + 26.2244897959px, 85px);
    grid-template-columns: 470fr 570fr;
    position: relative;
    z-index: 10
}

.p-event-single_kv__text-area {
    align-self: center
}

.p-event-single_kv__img {
    aspect-ratio: 570/502;
    position: relative;
    text-align: center
}

.p-event-single_kv__img img {
    height: 100%;
    width: 100%
}

.p-event-single_kv__box {
    background-color: #e6f8f9;
    font-size: min(calc(.32653vw + .79847rem), 1.125rem);
    margin-top: min(.8163265306vw + 16.9387755102px, 30px);
    padding: 1em 1.5em
}

.p-event-single_kv__box+.p-event-single_kv__box {
    margin-top: 10px
}

.p-event-single_kv__bubble {
    line-height: 1;
    position: absolute;
    width: 1em;
    z-index: -1
}

.p-event-single_kv__bubble.-bubble01 {
    font-size: min(5.5510204082vw + 47.1836734694px, 136px);
    left: -.4em;
    top: -.5em
}

.p-event-single_kv__bubble.-bubble02 {
    font-size: min(10.1632653061vw + 86.387755102px, 249px);
    right: -1.2em;
    top: .4em
}

.p-event-single_date {
    background-color: #e6f8f9;
    border-radius: 10px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding: min(1.6326530612vw + 13.8775510204px, 40px) min(5.7142857143vw + -1.4285714286px, 90px) min(1.6326530612vw + 13.8775510204px, 40px) min(2.8571428571vw + 9.2857142857px, 55px)
}

.p-event-single_date__head {
    align-self: center;
    font-size: min(calc(.81633vw + .93367rem), 1.75rem);
    padding-right: 1em
}

.p-event-single_date__head p {
    align-items: center;
    display: flex;
    gap: 1em
}

.p-event-single_date__head p .date {
    font-size: min(calc(.40816vw + .84184rem), 1.25rem)
}

.p-event-single_date__head p .time {
    font-size: min(calc(.2449vw + .7551rem), 1rem)
}

.p-event-single_date__body {
    align-self: start;
    display: flex;
    justify-content: flex-end
}

.p-event-single_access__row {
    display: grid;
    gap: min(5.306122449vw + 10.1020408163px, 95px);
    grid-template-columns: 720fr 290fr
}

.p-event-single_access__text-area {
    align-self: center
}

.p-event-single_access__img {
    text-align: center
}

.p-event-single_access__title {
    font-size: min(calc(.65306vw + .84694rem), 1.5rem);
    font-weight: 500;
    line-height: 1.5;
    margin-bottom: 1em
}

.p-event-single_access__title small {
    font-size: min(calc(.32653vw + .79847rem), 1.125rem);
    font-weight: 400
}

.p-event-single_access__list {
    color: #07d0d8;
    font-weight: 500
}

.p-event-single_access__list li {
    padding-left: 1em;
    position: relative
}

.p-event-single_access__list li:before {
    content: "・";
    left: 0;
    position: absolute;
    top: 0
}

.p-event-single_access__button {
    display: flex;
    font-size: min(calc(.2449vw + .7551rem), 1rem);
    font-weight: 500;
    line-height: 1.5;
    margin-top: min(1.6326530612vw + 13.8775510204px, 40px)
}

.p-event-single_access__button a {
    align-items: center;
    background-color: #fff;
    border: 1px solid #07d0d8;
    border-radius: 9999px;
    color: #07d0d8;
    display: grid;
    gap: 1em;
    grid-template-columns: 1fr auto;
    min-height: 2.8125em;
    padding: .5em 1.5em;
    transition-duration: .5s
}

.p-admission_schedule-course-list {
    background-color: #e6f8f9;
    border-radius: 10px;
    display: grid;
    gap: min(2.0408163265vw + 17.3469387755px, 50px);
    grid-template-columns: repeat(3, 1fr);
    padding: min(2.4489795918vw + 10.8163265306px, 50px) min(7.3469387755vw + -7.5510204082px, 110px)
}

.p-admission_schedule-course__title {
    font-size: min(calc(.4898vw + .8227rem), 1.3125rem);
    line-height: 1.5;
    margin-bottom: 1em;
    text-align: center
}

.p-admission_schedule-course__date {
    background-color: #fff;
    border-radius: 10px;
    padding: min(.8163265306vw + 16.9387755102px, 30px)
}

.p-admission_schedule-course__date p {
    margin-inline: auto;
    width: -moz-fit-content;
    width: fit-content
}

.p-recruitment_course-box {
    background-color: #e6f8f9;
    border-radius: 10px;
    padding: min(1.6326530612vw + 13.8775510204px, 40px) min(2.8571428571vw + 9.2857142857px, 55px)
}

.p-recruitment_course-box+.p-recruitment_course-box {
    margin-top: min(.8163265306vw + 16.9387755102px, 30px)
}

.p-recruitment_course-box__body {
    display: grid;
    gap: min(1.2244897959vw + 15.4081632653px, 35px);
    grid-template-columns: 1fr auto
}

.p-recruitment_course-box__block {
    display: grid;
    gap: 10px
}

.p-recruitment_course-box__box {
    background-color: #fff;
    font-size: min(calc(.32653vw + .79847rem), 1.125rem);
    font-weight: 500;
    line-height: 1.7;
    padding: min(.4081632653vw + 13.4693877551px, 20px) min(.8163265306vw + 16.9387755102px, 30px)
}

.p-recruitment_course-box__box-list {
    display: grid;
    gap: min(.8163265306vw + 6.9387755102px, 20px);
    grid-template-columns: 320fr 400fr
}

.p-recruitment_course-box__box .year {
    font-size: min(calc(.65306vw + .84694rem), 1.5rem);
    margin-top: -.1em
}

.p-recruitment_course-box .c-button01 {
    align-self: center
}

.p-recruitment_course-box .c-button01 a {
    min-width: 12.0588235294em
}

.p-pamphlet-link-list {
    display: grid;
    gap: min(2.8571428571vw + 24.2857142857px, 70px);
    grid-template-columns: repeat(2, 1fr)
}

.p-pamphlet-link__img {
    margin-bottom: 20px;
    margin-top: min(.8163265306vw + 16.9387755102px, 30px);
    text-align: center
}

.-i02 .p-pamphlet-link__img {
    translate: max(-3.6734693878vw + 28.7755102041px, -30px) 0
}

.p-pamphlet-link__notes {
    margin-inline: auto;
    max-width: 500px
}

.p-course_panels {
    display: grid;
    gap: min(4.0816326531vw + 34.693877551px, 100px)
}

.p-course-division__container {
    translate: min(4.0816326531vw + 34.693877551px, 100px) 0
}

.p-course-division_anchor-menu {
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    background-color: hsl(0 0% 100% / .2);
    border-radius: 0 10px 10px 0;
    bottom: min(2.4489795918vw + 20.8163265306px, 60px);
    color: #07d0d8;
    font-weight: 500;
    left: 0;
    min-width: 13.75em;
    opacity: 0;
    padding: min(1.2244897959vw + 10.4081632653px, 30px) min(1.2244897959vw + 10.4081632653px, 30px) min(1.2244897959vw + 10.4081632653px, 30px) min(1.6326530612vw + 13.8775510204px, 40px);
    position: fixed;
    transform: translate3d(-50%, 0, 0);
    transition-duration: 1s, 1s, 1s, .5s;
    transition-property: opacity, visibility, transform, color;
    visibility: hidden;
    z-index: 1000
}

.is-content-view .p-course-division_anchor-menu {
    opacity: 1;
    transform: translateZ(0);
    visibility: visible
}

.is-top .p-course-division_anchor-menu {
    opacity: 0;
    transform: translate3d(-50%, 0, 0);
    visibility: hidden
}

.is-bg .p-course-division_anchor-menu {
    color: #fff
}

.p-course-division_anchor-menu ul {
    display: grid;
    gap: .2em
}

.p-course-division_anchor-menu a {
    display: grid;
    gap: 1em;
    grid-template: "ICO TEXT"auto/auto 1fr
}

.p-course-division_anchor-menu a .ico {
    grid-area: ICO;
    -ms-grid-column: 1;
    -ms-grid-row: 1
}

.p-course-division_anchor-menu a .ico.-def {
    opacity: 1
}

.p-course-division_anchor-menu a .ico.-act, .p-course-division_anchor-menu a.is-current .ico.-def {
    opacity: 0
}

.p-course-division_anchor-menu a.is-current .ico.-act {
    opacity: 1
}

.p-course-division_kv {
    position: relative
}

.p-course-division_kv-wrapper {
    margin-bottom: min(4.8979591837vw + 41.6326530612px, 120px);
    margin-inline: auto;
    max-width: 1600px;
    padding-top: min(10.612244898vw + 70.2040816327px, 240px);
    translate: max(-4.0816326531vw + -34.693877551px, -100px) 0
}

.p-course-division_kv-wrapper:has(+.p-course-division_creature) {
    margin-bottom: 26.25vw;
    position: relative
}

.p-course-division_kv-wrapper:has(+.p-course-division_creature):after, .p-course-division_kv-wrapper:has(+.p-course-division_creature):before {
    aspect-ratio: 2402/1576;
    background-color: #fff;
    border-radius: 50%;
    content: "";
    left: 50%;
    opacity: 0;
    position: absolute;
    transform: scale3d(.9, .9, 1);
    transition-duration: 2s;
    transition-property: opacity, transform;
    translate: -50% 0;
    width: 150.125vw
}

.p-course-division_kv-wrapper:has(+.p-course-division_creature):before {
    bottom: -17.5vw
}

.p-course-division_kv-wrapper:has(+.p-course-division_creature):after {
    bottom: -20vw;
    opacity: .4
}

.is-bg .p-course-division_kv-wrapper:has(+.p-course-division_creature):after, .is-bg .p-course-division_kv-wrapper:has(+.p-course-division_creature):before {
    transform: scaleX(1)
}

.is-bg .p-course-division_kv-wrapper:has(+.p-course-division_creature):before {
    opacity: 1
}

.is-bg .p-course-division_kv-wrapper:has(+.p-course-division_creature):after {
    opacity: .4
}

.p-course-division_kv__en {
    color: #f2fdfd;
    font-family: Montserrat, sans-serif;
    font-size: min(calc(6.93878vw + 3.68622rem), 10.625rem);
    font-weight: 400;
    left: calc(50% - 50vw);
    line-height: 1;
    min-width: 0;
    position: absolute;
    right: calc(50% - 50vw);
    text-transform: uppercase;
    top: -.4em
}

.p-course-division_kv__en .swiper-slide {
    margin-right: .4em
}

.p-course-division_kv__row {
    display: grid;
    grid-template-columns: 580fr 920fr;
    position: relative;
    z-index: 10
}

.p-course-division_kv__text-area {
    margin-top: min(4.0816326531vw + 34.693877551px, 100px);
    padding-left: min(35vw + -454.65px, 105px);
    padding-right: min(2.8571428571vw + 24.2857142857px, 70px);
    transition-delay: .2s;
    transition-timing-function: ease, cubic-bezier(.215, .61, .355, 1)
}

.p-course-division_kv__img, .p-course-division_kv__text-area {
    opacity: 0;
    transform: translate3d(0, 20px, 0);
    transition-duration: 2s;
    transition-property: opacity, transform
}

.p-course-division_kv__img {
    text-align: center;
    transition-delay: 0s;
    transition-timing-function: ease, cubic-bezier(.215, .61, .355, 1)
}

.p-course-division_kv__head {
    display: flex;
    flex-wrap: wrap;
    font-size: min(calc(2.85714vw + 1.51786rem), 4.375rem);
    gap: .2857142857em;
    margin-bottom: .7em
}

.p-course-division_kv__labels {
    align-self: center;
    font-size: min(calc(.4898vw + .8227rem), 1.3125rem);
    line-height: 1.5;
    margin-right: calc(max(-2.8571428571vw + -24.2857142857px, -70px) + 1em)
}

.p-course-division_kv__labels li {
    border: 1px solid;
    border-radius: 9999px;
    padding: 0 .8em .1em
}

.p-course-division_kv__copy {
    color: #07d0d8;
    font-size: min(calc(.97959vw + .77041rem), 1.75rem);
    margin-bottom: 1.7857142857em
}

.p-course-division_kv__condition {
    margin-top: min(2.4489795918vw + 20.8163265306px, 60px)
}

.p-course-division_kv__condition-title {
    background-color: #07d0d8;
    color: #fff;
    font-weight: 500;
    line-height: 1.5;
    margin-bottom: 1em;
    max-width: -moz-fit-content;
    max-width: fit-content;
    padding: .5em 1em .6em
}

.p-course-division_kv__condition-items {
    display: grid;
    font-weight: 500;
    gap: .2em
}

.p-course-division_kv__condition-items>li {
    padding-left: 1.5em;
    position: relative
}

.p-course-division_kv__condition-items>li .ico {
    color: #07d0d8;
    left: 0;
    position: absolute;
    top: .55em
}

.p-course-division_kv__notes {
    font-size: min(calc(.32653vw + .79847rem), 1.125rem);
    margin-top: 1em
}

.is-loaded .p-course-division_kv .p-course-division_kv__img, .is-loaded .p-course-division_kv .p-course-division_kv__text-area {
    opacity: 1;
    transform: translateZ(0)
}

.p-course-division_feature-media {
    display: grid;
    grid-template-columns: 625fr 615fr
}

.p-course-division_feature-media__text-area {
    align-self: center;
    padding-right: min(1.6326530612vw + 13.8775510204px, 40px)
}

.p-course-division_feature-media__img {
    text-align: center
}

.p-course-division_course-introduction+.p-course-division_course-introduction {
    margin-top: min(7.3469387755vw + 62.4489795918px, 180px)
}

.p-course-division_course-introduction__head {
    display: flex;
    flex-wrap: wrap;
    gap: 10px min(.4081632653vw + 13.4693877551px, 20px);
    margin-bottom: 30px
}

.p-course-division_course-introduction__title {
    margin-bottom: 0
}

.p-course-division_course-introduction__labels {
    align-self: center;
    font-size: min(calc(.32653vw + .79847rem), 1.125rem);
    line-height: 1.5
}

.p-course-division_course-introduction__labels li {
    border: 1px solid;
    border-radius: 9999px;
    padding: 0 .8em .1em
}

.p-course-division_card-job {
    background-color: #e6f8f9;
    border-radius: 10px;
    height: 100%;
    padding: min(.8163265306vw + 16.9387755102px, 30px);
    text-align: center
}

.p-course-division_card-job-slider .swiper-slide {
    height: auto
}

.p-course-division_card-job__img img {
    border-radius: 50%
}

.p-course-division_card-job__title {
    line-height: 1.5;
    margin-inline: -1em
}

.p-course-division_licenses {
    -moz-column-count: 4;
    column-count: 4;
    -moz-column-gap: 2em;
    column-gap: 2em;
    font-size: min(calc(.32653vw + .79847rem), 1.125rem)
}

.p-course-division_licenses ul {
    display: block;
    margin-bottom: -.5em;
    width: 100%
}

.p-course-division_licenses ul li {
    margin-bottom: .5em;
    padding-left: 1.2em;
    position: relative
}

.p-course-division_licenses ul li:before {
    aspect-ratio: 1/1;
    background-color: #07d0d8;
    border-radius: 50%;
    content: "";
    left: 0;
    position: absolute;
    top: .75em;
    width: .5555555556em
}

.p-course-division_creature {
    color: #fff;
    margin-bottom: min(8.9795918367vw + 136.3265306122px, 280px)
}

.p-course-division_creature__section.-section01 {
    display: grid;
    grid-template: "COPY TEXT"auto/660fr 540fr
}

.p-course-division_creature__section.-section01 .main-copy {
    font-size: min(calc(9.79592vw + 5.20408rem), 15rem);
    grid-area: COPY;
    -ms-grid-column: 1;
    -ms-grid-row: 1;
    line-height: 1;
    padding-right: .2em
}

.p-course-division_creature__section.-section01 .main-copy img {
    height: 1em;
    width: auto
}

.p-course-division_creature__section.-section01 .text {
    grid-area: TEXT;
    -ms-grid-column: 2;
    -ms-grid-row: 1;
    padding-top: min(7.3469387755vw + 62.4489795918px, 180px)
}

.p-course-division_creature__section.-section02 {
    display: grid;
    gap: 0 min(1.2244897959vw + 10.4081632653px, 30px);
    grid-template: "IMG01 COPY"1fr "IMG01 IMG02"auto "IMG01 IMG03"auto/720fr 530fr;
    margin-left: max(-4.0816326531vw + -34.693877551px, -100px);
    margin-top: min(4.8979591837vw + 41.6326530612px, 120px)
}

.p-course-division_creature__section.-section02 .copy {
    align-self: center;
    font-size: min(calc(3.42857vw + 1.82143rem), 5.25rem);
    grid-area: COPY;
    -ms-grid-column: 3;
    -ms-grid-row: 1;
    justify-self: center;
    line-height: 1
}

.p-course-division_creature__section.-section02 .copy img, .p-course-division_creature__section.-section02 .copy svg {
    height: 1em;
    width: auto
}

.p-course-division_creature__section.-section02 .img-with-text {
    -ms-grid-row-span: 5;
    display: grid;
    grid-area: IMG01;
    -ms-grid-column: 1;
    -ms-grid-row: 1
}

.p-course-division_creature__section.-section02 .img-with-text .img {
    grid-area: 1/1
}

.p-course-division_creature__section.-section02 .img-with-text .img>img {
    height: 100%;
    width: 100%
}

.p-course-division_creature__section.-section02 .img-with-text .text {
    grid-area: 1/1;
    padding: min(4.0816326531vw + 4.693877551px, 70px) min(4.8979591837vw + 1.6326530612px, 80px);
    position: relative
}

.p-course-division_creature__section.-section02 .-img02 {
    grid-area: IMG02;
    -ms-grid-column: 3;
    -ms-grid-row: 3;
    position: relative
}

.p-course-division_creature__section.-section02 .-img02 .obj {
    bottom: -.5em;
    font-size: min(calc(8vw + 4.25rem), 12.25rem);
    line-height: 1;
    position: absolute;
    right: -.2em;
    width: 1em
}

.p-course-division_creature__section.-section02 .-img03 {
    grid-area: IMG03;
    -ms-grid-column: 3;
    -ms-grid-row: 5;
    margin-top: min(1.2244897959vw + 10.4081632653px, 30px)
}

.p-course-division_creature__section.-section03 {
    display: grid;
    gap: 0 min(1.2244897959vw + 10.4081632653px, 30px);
    grid-template: "IMG01 COPY"1fr ". IMG02"auto "IMG03 IMG03"auto/1fr 1fr;
    margin-left: max(-4.0816326531vw + -34.693877551px, -100px);
    margin-top: min(4.8979591837vw + 41.6326530612px, 120px)
}

.p-course-division_creature__section.-section03 .copy {
    align-self: center;
    font-size: min(calc(3.42857vw + 1.82143rem), 5.25rem);
    grid-area: COPY;
    -ms-grid-column: 3;
    -ms-grid-row: 1;
    line-height: 1;
    margin-top: -1em;
    padding-left: .5em
}

.p-course-division_creature__section.-section03 .copy img, .p-course-division_creature__section.-section03 .copy svg {
    height: 1em;
    width: auto
}

.p-course-division_creature__section.-section03 .img-with-text {
    -ms-grid-column-span: 3;
    display: grid;
    grid-area: IMG03;
    -ms-grid-column: 1;
    -ms-grid-row: 5;
    margin-top: min(5.306122449vw + 45.1020408163px, 130px)
}

.p-course-division_creature__section.-section03 .img-with-text .img {
    grid-area: 1/1;
    position: relative
}

.p-course-division_creature__section.-section03 .img-with-text .img>img {
    height: 100%;
    width: 100%
}

.p-course-division_creature__section.-section03 .img-with-text .img .obj {
    font-size: min(calc(14.04082vw + 7.45918rem), 21.5rem);
    left: .7em;
    line-height: 1;
    position: absolute;
    top: -.85em;
    width: 1em
}

.p-course-division_creature__section.-section03 .img-with-text .text {
    grid-area: 1/1;
    padding: min(4.0816326531vw + 4.693877551px, 70px) min(4.8979591837vw + 1.6326530612px, 80px);
    position: relative
}

.p-course-division_creature__section.-section03 .-img01 {
    -ms-grid-row-span: 1;
    grid-area: IMG01;
    -ms-grid-column: 1;
    -ms-grid-row: 1;
    justify-self: end
}

.p-course-division_creature__section.-section03 .-img02 {
    grid-area: IMG02;
    -ms-grid-column: 3;
    -ms-grid-row: 3;
    justify-self: start;
    margin-top: max(-2.0408163265vw + -17.3469387755px, -50px)
}

.p-course-division_creature__section.-section04 {
    display: grid;
    grid-template: "COPY IMG02 ."auto "IMG01 IMG02 IMG03"auto "TEXT . ."auto/622fr 380fr 235fr;
    margin-top: min(8.5714285714vw + 52.8571428571px, 190px)
}

.p-course-division_creature__section.-section04 .copy {
    font-size: min(calc(2.04082vw + 1.08418rem), 3.125rem);
    grid-area: COPY;
    -ms-grid-column: 1;
    -ms-grid-row: 1;
    line-height: 1;
    padding: 1.6em 0
}

.p-course-division_creature__section.-section04 .copy img, .p-course-division_creature__section.-section04 .copy svg {
    height: 1em;
    width: auto
}

.p-course-division_creature__section.-section04 .text {
    grid-area: TEXT;
    -ms-grid-column: 1;
    -ms-grid-row: 3;
    margin-top: min(1.6326530612vw + 13.8775510204px, 40px)
}

.p-course-division_creature__section.-section04 .img.-img01 {
    -ms-grid-row-span: 1;
    grid-area: IMG01;
    -ms-grid-column: 1;
    -ms-grid-row: 2;
    justify-self: end
}

.p-course-division_creature__section.-section04 .img.-img02 {
    -ms-grid-row-span: 2;
    grid-area: IMG02;
    -ms-grid-column: 2;
    -ms-grid-row: 1;
    margin-left: max(-2.0408163265vw + -17.3469387755px, -50px);
    position: relative
}

.p-course-division_creature__section.-section04 .img.-img03 {
    -ms-grid-column-span: 1;
    grid-area: IMG03;
    -ms-grid-column: 3;
    -ms-grid-row: 2;
    margin-left: max(-4.0816326531vw + -34.693877551px, -100px);
    margin-top: min(1.0204081633vw + 8.6734693878px, 25px);
    position: relative
}

.p-course-division_creature__section.-section04 .img.-img03 .obj {
    bottom: -1.1em;
    font-size: min(calc(7.59184vw + 4.03316rem), 11.625rem);
    left: -1.2em;
    line-height: 1;
    position: absolute;
    width: 1em
}

.p-course-division_creature .main-copy.js-anim_elm {
    opacity: 0;
    transform: translate3d(0, 20px, 0);
    transition-duration: 2s;
    transition-property: opacity, transform
}

.p-course-division_creature .main-copy.js-anim_elm.is-act {
    opacity: 1;
    transform: translateZ(0)
}

.p-course-division_creature .copy.js-anim_elm path {
    opacity: 0;
    transition-duration: 2s;
    transition-property: opacity, transform
}

.p-course-division_creature .copy.js-anim_elm path:first-child {
    transition-delay: .1s
}

.p-course-division_creature .copy.js-anim_elm path:nth-child(2) {
    transition-delay: .2s
}

.p-course-division_creature .copy.js-anim_elm path:nth-child(3) {
    transition-delay: .3s
}

.p-course-division_creature .copy.js-anim_elm path:nth-child(4) {
    transition-delay: .4s
}

.p-course-division_creature .copy.js-anim_elm path:nth-child(5) {
    transition-delay: .5s
}

.p-course-division_creature .copy.js-anim_elm path:nth-child(6) {
    transition-delay: .6s
}

.p-course-division_creature .copy.js-anim_elm path:nth-child(7) {
    transition-delay: .7s
}

.p-course-division_creature .copy.js-anim_elm path:nth-child(8) {
    transition-delay: .8s
}

.p-course-division_creature .copy.js-anim_elm path:nth-child(9) {
    transition-delay: .9s
}

.p-course-division_creature .copy.js-anim_elm path:nth-child(10) {
    transition-delay: 1s
}

.p-course-division_creature .copy.js-anim_elm path:nth-child(11) {
    transition-delay: 1.1s
}

.p-course-division_creature .copy.js-anim_elm path:nth-child(12) {
    transition-delay: 1.2s
}

.p-course-division_creature .copy.js-anim_elm path:nth-child(13) {
    transition-delay: 1.3s
}

.p-course-division_creature .copy.js-anim_elm path:nth-child(14) {
    transition-delay: 1.4s
}

.p-course-division_creature .copy.js-anim_elm path:nth-child(15) {
    transition-delay: 1.5s
}

.p-course-division_creature .copy.js-anim_elm path:nth-child(16) {
    transition-delay: 1.6s
}

.p-course-division_creature .copy.js-anim_elm path:nth-child(17) {
    transition-delay: 1.7s
}

.p-course-division_creature .copy.js-anim_elm path:nth-child(18) {
    transition-delay: 1.8s
}

.p-course-division_creature .copy.js-anim_elm path:nth-child(19) {
    transition-delay: 1.9s
}

.p-course-division_creature .copy.js-anim_elm path:nth-child(20) {
    transition-delay: 2s
}

.p-course-division_creature .copy.js-anim_elm.is-act path {
    opacity: 1
}

.p-course-division_creature .text span {
    display: block
}

.p-course-division_creature .text.js-anim_elm span {
    opacity: 0;
    transform: translate3d(0, 20px, 0);
    transition-duration: 2s;
    transition-property: opacity, transform
}

.p-course-division_creature .text.js-anim_elm span:first-child {
    transition-delay: .2s
}

.p-course-division_creature .text.js-anim_elm span:nth-child(2) {
    transition-delay: .4s
}

.p-course-division_creature .text.js-anim_elm span:nth-child(3) {
    transition-delay: .6s
}

.p-course-division_creature .text.js-anim_elm span:nth-child(4) {
    transition-delay: .8s
}

.p-course-division_creature .text.js-anim_elm span:nth-child(5) {
    transition-delay: 1s
}

.p-course-division_creature .text.js-anim_elm.is-act, .p-course-division_creature .text.js-anim_elm.is-act span {
    opacity: 1;
    transform: translateZ(0)
}

.p-course-division_creature .obj.js-anim_elm {
    opacity: 0;
    transform: translate3d(0, 20px, 0);
    transition-duration: 2s;
    transition-property: opacity, transform
}

.p-course-division_creature .obj.js-anim_elm.is-act {
    opacity: 1;
    transform: translateZ(0)
}

.p-course-division_creature .img.js-anim_elm {
    opacity: 0;
    transform: scale3d(1.1, 1.1, 1) translate3d(0, 20px, 0);
    transition-duration: 2s;
    transition-property: opacity, transform
}

.p-course-division_creature .img.js-anim_elm.is-act {
    opacity: 1;
    transform: scaleX(1) translateZ(0)
}

.p-course-division_study-style {
    align-items: center;
    display: flex;
    justify-content: center
}

.p-course-division_study-style__item {
    border-radius: 50%;
    position: relative;
    z-index: 0
}

.p-course-division_study-style__item:before {
    -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
    background-color: #fff;
    border-radius: 50%;
    content: "";
    inset: 0;
    mix-blend-mode: multiply;
    opacity: .85;
    position: absolute;
    z-index: -1
}

.p-course-division_study-style__item:after {
    border-radius: 50%;
    content: "";
    inset: -4%;
    mix-blend-mode: multiply;
    opacity: .2;
    position: absolute;
    z-index: -1
}

.p-course-division_study-style__item:first-child:after, .p-course-division_study-style__item:first-child:before {
    box-shadow: inset 0 0 min(2.0408163265vw + 17.3469387755px, 50px) #00ceff
}

.p-course-division_study-style__item:nth-child(2) {
    margin-left: -5%
}

.p-course-division_study-style__item:nth-child(2):after, .p-course-division_study-style__item:nth-child(2):before {
    box-shadow: inset 0 0 min(2.0408163265vw + 17.3469387755px, 50px) #89ff00
}

.p-course-division_study-style.js-anim_elm .p-course-division_study-style__item {
    opacity: 0;
    transform: translate3d(0, 20px, 0);
    transition-duration: 2s;
    transition-property: opacity, transform
}

.p-course-division_study-style.js-anim_elm .p-course-division_study-style__item:after, .p-course-division_study-style.js-anim_elm .p-course-division_study-style__item:before {
    opacity: 0;
    transform: scale3d(.7, .7, 1);
    transition-duration: 2s;
    transition-property: opacity, transform
}

.p-course-division_study-style.js-anim_elm .p-course-division_study-style__item:nth-child(0), .p-course-division_study-style.js-anim_elm .p-course-division_study-style__item:nth-child(0):before {
    transition-delay: 0s
}

.p-course-division_study-style.js-anim_elm .p-course-division_study-style__item:first-child, .p-course-division_study-style.js-anim_elm .p-course-division_study-style__item:first-child:before, .p-course-division_study-style.js-anim_elm .p-course-division_study-style__item:nth-child(0):after {
    transition-delay: .2s
}

.p-course-division_study-style.js-anim_elm .p-course-division_study-style__item:first-child:after, .p-course-division_study-style.js-anim_elm .p-course-division_study-style__item:nth-child(2), .p-course-division_study-style.js-anim_elm .p-course-division_study-style__item:nth-child(2):before {
    transition-delay: .4s
}

.p-course-division_study-style.js-anim_elm .p-course-division_study-style__item:nth-child(2):after {
    transition-delay: .6s
}

.p-course-division_study-style.js-anim_elm.is-act .p-course-division_study-style__item {
    opacity: 1;
    transform: translateZ(0)
}

.p-course-division_study-style.js-anim_elm.is-act .p-course-division_study-style__item:after, .p-course-division_study-style.js-anim_elm.is-act .p-course-division_study-style__item:before {
    transform: scaleX(1)
}

.p-course-division_study-style.js-anim_elm.is-act .p-course-division_study-style__item:before {
    opacity: .85
}

.p-course-division_study-style.js-anim_elm.is-act .p-course-division_study-style__item:after {
    opacity: .2
}

.p-course-division_study-training {
    background-color: #e6f8f9;
    border-radius: min(.8163265306vw + 6.9387755102px, 20px);
    margin-top: 60px;
    padding: 60px min(6.5306122449vw + -4.4897959184px, 100px) min(2.8571428571vw + 24.2857142857px, 70px);
    position: relative
}

.p-course-division_study-training__obj {
    aspect-ratio: 1/1;
    background-color: rgb(7 208 216 / .2);
    border-radius: 50%;
    display: grid;
    font-size: 5.4375rem;
    left: 50%;
    place-items: center;
    position: absolute;
    top: -.5em;
    translate: -50% 0;
    width: 1em
}

.p-course-division_study-training__obj:before {
    aspect-ratio: 1/1;
    background-color: #07d0d8;
    border-radius: 50%;
    content: "";
    inset: 50%;
    position: absolute;
    translate: -50% -50%;
    width: .816091954em
}

.p-course-division_study-training__obj .ico {
    color: #fff;
    font-size: .2298850575em;
    position: relative;
    z-index: 10
}

.p-course-division_study-training__title {
    border-bottom: 2px dotted;
    color: #07d0d8;
    font-size: min(calc(.97959vw + .89541rem), 1.875rem);
    margin-bottom: 1em;
    margin-inline: auto;
    max-width: -moz-fit-content;
    max-width: fit-content;
    padding-bottom: .1em
}

.p-course-division_study-training__media {
    display: grid;
    gap: min(.8163265306vw + 16.9387755102px, 30px) min(1.2244897959vw + 10.4081632653px, 30px);
    grid-template-columns: 200fr 245fr
}

.p-course-division_study-training__media .img {
    text-align: center
}

.p-course-division_study-training__media .text-area {
    align-self: center
}

.p-course-division_facility {
    position: relative
}

.p-course-division_facility:before {
    background-color: #07d0d8;
    content: "";
    filter: blur(min(8.1632653061vw + 69.387755102px, 200px));
    height: 100%;
    left: calc(50% - 50vw);
    opacity: .2;
    position: absolute;
    right: calc(50% - 50vw);
    top: 50%;
    translate: 0 -50%;
    z-index: -1
}

.p-course-division_spot .swiper {
    margin-inline: max(-.4081632653vw + -3.4693877551px, -10px);
    overflow: visible
}

.p-course-division_spot .swiper-slide {
    padding-inline: min(.4081632653vw + 3.4693877551px, 10px);
    width: 25%
}

.p-course-division_project__item {
    background-color: #fff;
    border-radius: 10px;
    padding: min(2.4489795918vw + 10.8163265306px, 50px)
}

section+.p-course-division_support {
    margin-top: min(4.8979591837vw + 41.6326530612px, 120px)
}

.p-course-division_support__aco {
    background-color: #e6f8f9;
    border-radius: 10px
}

.p-course-division_support__aco-body, .p-course-division_support__aco-head {
    padding: min(1.6326530612vw + 13.8775510204px, 40px) min(2.4489795918vw + 10.8163265306px, 50px)
}

.p-course-division_support__aco-head {
    align-items: center;
    color: #07d0d8;
    display: flex;
    font-size: min(calc(.4898vw + .8227rem), 1.3125rem);
    gap: 1em;
    justify-content: space-between
}

.p-course-division_support__aco-body {
    padding-top: 0
}

.p-course-division_support__aco-body .box {
    background-color: #fff;
    border-radius: 10px;
    padding: min(.8163265306vw + 16.9387755102px, 30px) min(1.6326530612vw + 13.8775510204px, 40px)
}

.p-course-division_support__aco-body .box+.box {
    margin-top: 15px
}

.p-course-division_support__aco-body .items {
    -moz-column-count: 3;
    column-count: 3;
    -moz-column-gap: 1em;
    column-gap: 1em
}

.p-course-division_support__aco-body .items ul {
    display: block;
    margin-bottom: -.5em;
    width: 100%
}

.p-course-division_support__aco-body .items ul li {
    margin-bottom: .5em;
    padding-left: 2em;
    position: relative
}

.p-course-division_support__aco-body .items ul li:before {
    aspect-ratio: 1/1;
    background-image: url(../../img/common/ico/ico-check.svg);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    height: 1em;
    left: 0;
    position: absolute;
    top: .55em
}

.p-course-division_support__aco-toggle {
    aspect-ratio: 1/1;
    background-color: #07d0d8;
    border-radius: 50%;
    color: #fff;
    display: grid;
    flex-shrink: 0;
    font-size: 2.380952381em;
    height: 1em;
    overflow: hidden;
    place-items: center
}

.p-course-division_support__aco-toggle:after, .p-course-division_support__aco-toggle:before {
    border-top: 1px solid;
    content: "";
    grid-area: 1/1;
    width: .2em
}

.p-course-division_support__aco-toggle:after {
    rotate: 90deg
}

.is-open .p-course-division_support__aco-toggle:after {
    opacity: 0
}

.p-course-division_cta {
    display: grid;
    gap: min(2.0408163265vw + 17.3469387755px, 50px);
    grid-template-columns: repeat(2, 1fr)
}

.p-course-division_cta__item a {
    display: block;
    position: relative;
    transform: scaleX(1);
    transition-duration: .5s;
    transition-property: transform
}

.p-course-division_cta__item.-pamphlet .p-course-division_cta__item-obj {
    bottom: -20%;
    left: -7%;
    width: 73.1092436975%
}

.p-course-division_cta__item.-high-school .p-course-division_cta__item-obj {
    bottom: -5%;
    left: -4%;
    width: 63.8655462185%
}

.p-course-division_cta__item.-specialized .p-course-division_cta__item-obj {
    bottom: -8%;
    left: -6.6%;
    width: 69.9159663866%
}

.p-course-division_cta__item.-adult-learners .p-course-division_cta__item-obj {
    bottom: 0;
    left: -4%;
    width: 66.218487395%
}

.p-course-division_cta__item-main img {
    border-radius: min(.4081632653vw + 3.4693877551px, 10px);
    width: 100%
}

.p-course-division_cta__item-obj {
    pointer-events: none;
    position: absolute
}

.p-course-division_cta__item-obj img {
    width: 100%
}

.p-high-school-division_w-school__table::-webkit-scrollbar {
    height: 5px
}

.p-high-school-division_w-school__table::-webkit-scrollbar-thumb {
    background-color: #07d0d8
}

.p-high-school-division_w-school__table::-webkit-scrollbar-track {
    background-color: #fff
}

.p-high-school-division_w-school__table img {
    max-width: none;
    width: 100%
}

@media only screen and (max-width:1599px) {
    .l-footer__gallery .swiper-slide img {
        width: min(16.3265306122vw + 138.7755102041px, 400px)
    }

    .c-grid-column.-col4.-col4-max {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    .c-grid-column.-col4.-col3-max {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col4.-col2-max {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col4.-col1-max {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .c-grid-column.-col3.-col4-max, .c-grid-column.-col4-max {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    .c-grid-column.-col3.-col3-max {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col3.-col2-max {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col3.-col1-max {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .c-grid-column.-col3-max {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col2.-col4-max {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    .c-grid-column.-col2.-col3-max {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col2.-col2-max {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col2.-col1-max {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .c-grid-column.-col2-max {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col1.-col4-max {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    .c-grid-column.-col1.-col3-max {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col1.-col2-max {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col1-max, .c-grid-column.-col1.-col1-max {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .u-visible-max {
        display: none !important
    }

    .u-hidden-max {
        display: block !important
    }

    .u-hidden-max.-f {
        display: flex !important
    }

    .u-hidden-max.-i {
        display: inline !important
    }

    .u-hidden-max.-ib {
        display: inline-block !important
    }

    .p-message_message__img {
        margin-right: -12.5vw
    }
}

@media only screen and (max-width:1299px) {
    .c-grid-column.-col4.-col4-md {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    .c-grid-column.-col4.-col3-md {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col4.-col2-md {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col4.-col1-md {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .c-grid-column.-col4-max.-col4-md {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-max.-col3-md {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-max.-col2-md {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-max.-col1-md {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3.-col4-md, .c-grid-column.-col4-md {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    .c-grid-column.-col3.-col3-md {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col3.-col2-md {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col3.-col1-md {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .c-grid-column.-col3-max.-col4-md {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-max.-col3-md {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-max.-col2-md {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-max.-col1-md {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-md {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col2.-col4-md {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    .c-grid-column.-col2.-col3-md {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col2.-col2-md {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col2.-col1-md {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .c-grid-column.-col2-max.-col4-md {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-max.-col3-md {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-max.-col2-md {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-max.-col1-md {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-md {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col1.-col4-md {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    .c-grid-column.-col1.-col3-md {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col1.-col2-md {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col1.-col1-md {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .c-grid-column.-col1-max.-col4-md {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-max.-col3-md {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-max.-col2-md {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-max.-col1-md {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-md {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .c-drawer__bottom {
        grid-template-columns: 1fr
    }

    .c-drawer__links {
        flex-direction: row
    }

    .u-visible-md {
        display: none !important
    }

    .u-hidden-md {
        display: block !important
    }

    .u-hidden-md.-f {
        display: flex !important
    }

    .u-hidden-md.-i {
        display: inline !important
    }

    .u-hidden-md.-ib {
        display: inline-block !important
    }

    .p-course-division__container {
        translate: 0
    }

    .p-course-division_anchor-menu {
        display: none
    }

    .p-course-division_kv-wrapper {
        translate: 0
    }

    .p-course-division_kv__row {
        grid-template-columns: 1fr
    }

    .p-course-division_kv__text-area {
        padding-left: 0;
        padding-right: 0
    }

    .p-course-division_kv__img {
        order: -1
    }
}

@media only screen and (max-width:1023px) {
    .l-footer__main-row {
        grid-template-columns: 1fr
    }

    .l-footer__company-logo {
        justify-content: center;
        margin: 1em 0 1.5em
    }

    .l-footer__company-address {
        margin-bottom: 1em;
        text-align: center
    }

    .l-footer__company-contacts {
        margin-inline: auto;
        max-width: -moz-fit-content;
        max-width: fit-content
    }

    .l-footer__company-links {
        align-items: center;
        flex-direction: column;
        gap: min(.8163265306vw + 16.9387755102px, 30px)
    }

    .l-footer__company-sns {
        order: -1
    }

    .l-footer__company-sns a {
        font-size: min(calc(.40816vw + 3.34184rem), 3.75rem)
    }

    .l-footer__cta {
        font-size: min(calc(.2449vw + 1.0676rem), 1.3125rem);
        order: -1
    }

    .l-footer__cta-button a {
        min-height: 4.7368421053em;
        min-width: auto;
        padding-left: 2em
    }

    .l-footer__cta-button a .ico {
        font-size: 2.3333333333em
    }

    .l-footer__menu {
        display: none
    }

    .l-footer__copyright {
        text-align: center
    }

    .c-flow-media {
        grid-template: "INDEX TEXTAREA"auto "INDEX IMG"auto/auto 1fr
    }

    .c-flow-media__text-area {
        padding-right: 0
    }

    .c-flow-media__index {
        -ms-grid-row-span: 2;
        -ms-grid-column: 1;
        -ms-grid-row: 1
    }

    .c-flow-media__text-area {
        -ms-grid-column: 2;
        -ms-grid-row: 1
    }

    .c-flow-media__img {
        -ms-grid-column: 2;
        -ms-grid-row: 2;
        margin-top: min(2.4489795918vw + 20.8163265306px, 60px)
    }

    .c-course-panel {
        aspect-ratio: auto;
        height: 90%
    }

    .c-course-panel__img:before {
        display: block
    }

    .c-course-panel__img-bg img {
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover;
        width: 100%
    }

    .c-course-panel__img-obj, .c-course-panel__text {
        display: none
    }

    .c-grid-column.-col4.-col4-tab {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    .c-grid-column.-col4.-col3-tab {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col4.-col2-tab {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col4.-col1-tab {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .c-grid-column.-col4-max.-col4-tab {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-max.-col3-tab {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-max.-col2-tab {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-max.-col1-tab {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-md.-col4-tab {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-md.-col3-tab {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-md.-col2-tab {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-md.-col1-tab {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3.-col4-tab, .c-grid-column.-col4-tab {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    .c-grid-column.-col3.-col3-tab {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col3.-col2-tab {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col3.-col1-tab {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .c-grid-column.-col3-max.-col4-tab {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-max.-col3-tab {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-max.-col2-tab {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-max.-col1-tab {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-md.-col4-tab {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-md.-col3-tab {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-md.-col2-tab {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-md.-col1-tab {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-tab {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col2.-col4-tab {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    .c-grid-column.-col2.-col3-tab {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col2.-col2-tab {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col2.-col1-tab {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .c-grid-column.-col2-max.-col4-tab {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-max.-col3-tab {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-max.-col2-tab {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-max.-col1-tab {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-md.-col4-tab {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-md.-col3-tab {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-md.-col2-tab {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-md.-col1-tab {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-tab {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col1.-col4-tab {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    .c-grid-column.-col1.-col3-tab {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col1.-col2-tab {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col1.-col1-tab {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .c-grid-column.-col1-max.-col4-tab {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-max.-col3-tab {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-max.-col2-tab {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-max.-col1-tab {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-md.-col4-tab {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-md.-col3-tab {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-md.-col2-tab {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-md.-col1-tab {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-tab {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .c-drawer__menu {
        display: grid;
        gap: min(3.2653061224vw + 27.7551020408px, 80px);
        grid-template-columns: repeat(2, 1fr)
    }

    .c-drawer__sns {
        order: -1
    }

    .c-drawer__sns a {
        font-size: min(calc(.40816vw + 3.34184rem), 3.75rem)
    }

    .c-drawer__cta-buttons, .c-lower-menu__menu {
        grid-template-columns: repeat(2, 1fr)
    }

    .c-post-block-media {
        flex-direction: column
    }

    .c-post-block-media__img {
        order: -1
    }

    .c-form-actions__buttons, .c-link-media-event {
        grid-template-columns: 1fr
    }

    .u-visible-tab {
        display: none !important
    }

    .u-hidden-tab {
        display: block !important
    }

    .u-hidden-tab.-f {
        display: flex !important
    }

    .u-hidden-tab.-i {
        display: inline !important
    }

    .u-hidden-tab.-ib {
        display: inline-block !important
    }

    .u-over-right {
        margin-right: 0
    }

    .p-index_kv__circle {
        height: 142.6666666667vw
    }

    .p-index_kv__objs .fish.-i01 {
        top: 8%;
        width: min(34.9387755102vw + 296.9795918367px, 856px)
    }

    .p-index_kv__objs .fish.-i02 {
        right: -30%;
        top: 30%;
        width: min(17.7142857143vw + 150.5714285714px, 434px)
    }

    .p-index_kv__objs .fish.-i03 {
        top: 25%;
        width: min(5.387755102vw + 45.7959183673px, 132px)
    }

    .p-index_kv__objs .fish.-i04, .p-index_kv__objs .fish.-i05 {
        display: none
    }

    .p-index_kv__objs .fish.-i06 {
        left: 3%;
        top: 36%;
        width: min(3.8367346939vw + 32.612244898px, 94px)
    }

    .p-index_kv__objs .fish.-i07 {
        display: none
    }

    .p-index_kv__objs .fish.-i08 {
        bottom: 45%;
        right: 5%;
        width: min(2.2857142857vw + 19.4285714286px, 56px)
    }

    .p-index_kv__objs .fish.-i09 {
        left: -2%;
        top: 24%;
        width: min(2.7755102041vw + 23.5918367347px, 68px)
    }

    .p-index_kv__objs .cameleon {
        bottom: 0;
        right: -15%;
        width: min(16.2448979592vw + 138.0816326531px, 398px)
    }

    .p-index_kv__objs .cat {
        bottom: 42%;
        left: -2%;
        width: min(8.1632653061vw + 69.387755102px, 200px)
    }

    .p-index_kv__objs .rabbit {
        bottom: 2%;
        left: -2%;
        width: min(6.3673469388vw + 54.1224489796px, 156px)
    }

    .p-index_kv__main {
        font-size: min(106.6666666667vw, 700px);
        translate: -50% calc(-50% + .02em)
    }

    .p-index_kv__copy {
        font-size: .66em;
        top: 50%;
        translate: -50% calc(-50% + .4em)
    }

    .p-index_intro {
        margin-bottom: max(-11.0204081633vw + -98.6734693878px, -275px)
    }

    .p-index_intro-wrapper:after, .p-index_intro-wrapper:before {
        width: 248vw
    }

    .p-index_course__heading__inner {
        margin-bottom: 1em;
        padding-top: min(5.7142857143vw + 68.5714285714px, 160px)
    }

    .p-index_work-book__row {
        grid-template-columns: 1fr
    }

    .p-index_work-book__text-area {
        display: contents;
        padding-right: 0
    }

    .p-index_work-book__img-area {
        justify-content: center;
        margin-top: min(4.8979591837vw + 41.6326530612px, 120px)
    }

    .p-index_work-book__img-area__container {
        max-width: min(19.5918367347vw + 166.5306122449px, 480px)
    }

    .p-index_work-book__img-area .swiper-slide .card {
        aspect-ratio: 232/331
    }

    .p-index_work-book__objs.-right {
        right: -40%
    }

    .p-index_work-book .c-button01 {
        justify-content: center;
        margin-top: min(6.5306122449vw + 55.5102040816px, 160px);
        order: 10
    }

    .p-message_message__row {
        flex-direction: column
    }

    .p-message_message__img {
        margin-right: 0;
        order: -1
    }

    .p-teacher_message, .p-teacher_teacher__profile {
        grid-template-columns: 1fr
    }

    .p-facility_zone__head .content {
        gap: min(1.6326530612vw + 13.8775510204px, 40px)
    }

    .p-facility-zone-modal__head {
        margin-bottom: 1em
    }

    .p-facility-zone-modal__row {
        grid-template-columns: 1fr
    }

    .p-facility_facility .swiper-slide {
        width: 90%
    }

    .p-event-single_date, .p-event-single_kv__row {
        grid-template-columns: 1fr
    }

    .p-event-single_date__head {
        margin-bottom: 1em;
        padding-right: 0;
        text-align: center
    }

    .p-event-single_date__body {
        justify-content: center
    }

    .p-event-single_access__row {
        grid-template-columns: 1fr
    }

    .p-admission_schedule-course-list {
        grid-template-columns: repeat(2, 1fr)
    }

    .p-recruitment_course-box__body {
        grid-template-columns: 1fr
    }

    .p-recruitment_course-box__title {
        text-align: center
    }

    .p-recruitment_course-box__box-list {
        grid-template-columns: 1fr
    }

    .p-recruitment_course-box .c-button01 {
        justify-content: center
    }

    .p-pamphlet-link-list {
        grid-template-columns: 1fr
    }

    .p-course_panels .c-course-panel {
        height: 80vh
    }

    .p-course-division_kv-wrapper:has(+.p-course-division_creature):after, .p-course-division_kv-wrapper:has(+.p-course-division_creature):before {
        width: 248vw
    }

    .p-course-division_feature-media {
        grid-template-columns: 1fr
    }

    .p-course-division_feature-media__text-area {
        display: contents
    }

    .p-course-division_feature-media .c-button01 {
        order: 10
    }

    .p-course-division_licenses {
        -moz-column-count: 3;
        column-count: 3
    }

    .p-course-division_creature__section.-section01 {
        grid-template: "COPY"auto "TEXT"auto/1fr
    }

    .p-course-division_creature__section.-section01 .main-copy {
        padding-right: 0
    }

    .p-course-division_creature__section.-section01 .text {
        padding-top: min(4.0816326531vw + 34.693877551px, 100px)
    }

    .p-course-division_creature__section.-section02 {
        grid-template: "IMG01"auto "COPY"auto "IMG02"auto "IMG03"auto "TEXT"auto/1fr;
        margin-left: 0
    }

    .p-course-division_creature__section.-section02>.main-copy {
        -ms-grid-column: 1;
        -ms-grid-row: 2
    }

    .p-course-division_creature__section.-section01 .text {
        -ms-grid-row: 5
    }

    .p-course-division_creature__section.-section02 .copy {
        font-size: min(calc(6.20408vw + 3.29592rem), 9.5rem);
        justify-self: end;
        margin-top: .5em
    }

    .p-course-division_creature__section.-section02 .img-with-text {
        display: contents;
        grid-area: initial
    }

    .p-course-division_creature__section.-section02 .img-with-text .img {
        -ms-grid-row-span: 5;
        grid-area: IMG01;
        -ms-grid-column: 1;
        -ms-grid-row: 1
    }

    .p-course-division_creature__section.-section02 .img-with-text .text {
        grid-area: TEXT;
        -ms-grid-column: 3;
        -ms-grid-row: 1;
        margin-top: min(2.4489795918vw + 20.8163265306px, 60px);
        padding: 0
    }

    .p-course-division_creature__section.-section02 .-img02 {
        justify-self: end;
        margin-top: min(6.5306122449vw + 55.5102040816px, 160px);
        max-width: min(21.1428571429vw + 179.7142857143px, 518px)
    }

    .p-course-division_creature__section.-section02 .-img02 .obj {
        bottom: auto;
        font-size: min(calc(9.79592vw + 5.20408rem), 15rem);
        left: -.7em;
        right: auto;
        top: -1em
    }

    .p-course-division_creature__section.-section02 .-img03 {
        max-width: min(18.693877551vw + 158.8979591837px, 458px)
    }

    .p-course-division_creature__section.-section03 {
        grid-template: "COPY"auto "IMG01"auto "IMG02"auto "TEXT"auto "IMG03"auto/1fr;
        margin-left: 0
    }

    .p-course-division_creature__section.-section03>.main-copy {
        -ms-grid-column: 1;
        -ms-grid-row: 1
    }

    .p-course-division_creature__section.-section01 .text {
        -ms-grid-column: 1;
        -ms-grid-row: 4
    }

    .p-course-division_creature__section.-section03>.img, .p-course-division_creature__section.-section03>.img-with-text {
        -ms-grid-row-span: 1;
        -ms-grid-row: 2
    }

    .p-course-division_creature__section.-section02 .img-with-text .text {
        -ms-grid-row: 4
    }

    .p-course-division_creature__section.-section03>.-img03 {
        -ms-grid-column-span: 1;
        -ms-grid-column: 1;
        -ms-grid-row: 5
    }

    .p-course-division_creature__section.-section03 .copy {
        font-size: min(5.7142857143vw + 48.5714285714px, 140px);
        margin-bottom: .5em;
        margin-top: 0;
        padding-left: 0
    }

    .p-course-division_creature__section.-section03 .img-with-text {
        display: contents;
        grid-area: initial
    }

    .p-course-division_creature__section.-section03 .img-with-text .img {
        -ms-grid-column-span: 3;
        grid-area: IMG03;
        -ms-grid-column: 1;
        -ms-grid-row: 5;
        margin-top: min(16.3265306122vw + 138.7755102041px, 400px)
    }

    .p-course-division_creature__section.-section03 .img-with-text .img .obj {
        font-size: min(calc(18.77551vw + 9.97449rem), 28.75rem);
        left: -.1em
    }

    .p-course-division_creature__section.-section03 .img-with-text .text {
        grid-area: TEXT;
        -ms-grid-column: 3;
        -ms-grid-row: 1;
        margin-top: min(4.0816326531vw + 34.693877551px, 100px);
        padding: 0
    }

    .p-course-division_creature__section.-section03 .-img01 {
        justify-self: start;
        max-width: min(17.387755102vw + 147.7959183673px, 426px)
    }

    .p-course-division_creature__section.-section03 .-img02 {
        justify-self: end;
        margin-top: min(.8163265306vw + 6.9387755102px, 20px);
        max-width: min(21.6326530612vw + 183.8775510204px, 530px)
    }

    .p-course-division_creature__section.-section04 {
        grid-template: "COPY"auto "IMG01"auto "IMG02"auto "IMG03"auto "TEXT"auto/1fr
    }

    .p-course-division_creature__section.-section04>.main-copy {
        -ms-grid-column: 1;
        -ms-grid-row: 1
    }

    .p-course-division_creature__section.-section04>.img, .p-course-division_creature__section.-section04>.img-with-text {
        -ms-grid-row-span: 1;
        -ms-grid-row: 2
    }

    .p-course-division_creature__section.-section04>.-img03, .p-course-division_creature__section.-section04>.img, .p-course-division_creature__section.-section04>.img-with-text {
        -ms-grid-column-span: 1;
        -ms-grid-column: 1;
        -ms-grid-row: 4
    }

    .p-course-division_creature__section.-section04>.-img01 {
        -ms-grid-row-span: 1;
        -ms-grid-column: 1;
        -ms-grid-row: 2
    }

    .p-course-division_creature__section.-section04>.-img02 {
        -ms-grid-row-span: 1;
        -ms-grid-column: 1;
        -ms-grid-row: 3
    }

    .p-course-division_creature__section.-section04 .copy {
        font-size: min(calc(6.93878vw + 3.68622rem), 10.625rem);
        margin-bottom: .3em;
        padding: 0
    }

    .p-course-division_creature__section.-section04 .img.-img01 {
        justify-self: start;
        max-width: min(19.1836734694vw + 163.0612244898px, 470px)
    }

    .p-course-division_creature__section.-section04 .img.-img02 {
        justify-self: end;
        margin-left: 0;
        margin-top: max(-1.6326530612vw + -13.8775510204px, -40px);
        max-width: min(21.5510204082vw + 183.1836734694px, 528px)
    }

    .p-course-division_creature__section.-section01 .main-copy, .p-course-division_creature__section.-section02 .copy {
        -ms-grid-column: 1;
        -ms-grid-row: 1
    }

    .p-course-division_creature__section.-section02 .img-with-text, .p-course-division_creature__section.-section02 .img-with-text .img {
        -ms-grid-row-span: 1;
        -ms-grid-column: 1;
        -ms-grid-row: 1
    }

    .p-course-division_creature__section.-section02 .img-with-text .text {
        -ms-grid-column: 1;
        -ms-grid-row: 5
    }

    .p-course-division_creature__section.-section02 .-img02 {
        -ms-grid-column: 1;
        -ms-grid-row: 3
    }

    .p-course-division_creature__section.-section02 .-img03 {
        -ms-grid-column: 1;
        -ms-grid-row: 4
    }

    .p-course-division_creature__section.-section03 .copy {
        -ms-grid-column: 1;
        -ms-grid-row: 1
    }

    .p-course-division_creature__section.-section03 .img-with-text {
        -ms-grid-column: 1;
        -ms-grid-row: 4
    }

    .p-course-division_creature__section.-section03>.img-with-text {
        -ms-grid-column-span: 1;
        -ms-grid-column: 1;
        -ms-grid-row: 5
    }

    .p-course-division_creature__section.-section03 .img-with-text .img {
        -ms-grid-column: 1;
        -ms-grid-row: 4
    }

    .p-course-division_creature__section.-section03>.img {
        -ms-grid-column-span: 1;
        -ms-grid-column: 1;
        -ms-grid-row: 5
    }

    .p-course-division_creature__section.-section03 .img-with-text .text {
        -ms-grid-column: 1;
        -ms-grid-row: 5;
        -ms-grid-row: 4
    }

    .p-course-division_creature__section.-section03 .-img01 {
        -ms-grid-row-span: 1;
        -ms-grid-column: 1;
        -ms-grid-row: 1
    }

    .p-course-division_creature__section.-section03>.-img01 {
        -ms-grid-row-span: 1;
        -ms-grid-column: 1;
        -ms-grid-row: 2
    }

    .p-course-division_creature__section.-section03 .-img02, .p-course-division_creature__section.-section03>.-img02 {
        -ms-grid-column: 1;
        -ms-grid-row: 3
    }

    .p-course-division_creature__section.-section04 .copy {
        -ms-grid-column: 1;
        -ms-grid-row: 1
    }

    .p-course-division_creature__section.-section02>.copy {
        -ms-grid-column: 1;
        -ms-grid-row: 2
    }

    .p-course-division_creature__section.-section03>.copy, .p-course-division_creature__section.-section04>.copy {
        -ms-grid-column: 1;
        -ms-grid-row: 1
    }

    .p-course-division_creature__section.-section01>.text {
        -ms-grid-column: 1;
        -ms-grid-row: 2
    }

    .p-course-division_creature__section.-section04 .text {
        -ms-grid-column: 1;
        -ms-grid-row: 5;
        -ms-grid-row: 4
    }

    .p-course-division_creature__section.-section04>.text {
        -ms-grid-column: 1;
        -ms-grid-row: 5
    }

    .p-course-division_creature__section.-section04 .img.-img01 {
        -ms-grid-row-span: 1;
        -ms-grid-column: 1;
        -ms-grid-row: 1
    }

    .p-course-division_creature__section.-section03>.img.-img01, .p-course-division_creature__section.-section04>.img.-img01 {
        -ms-grid-row-span: 1;
        -ms-grid-column: 1;
        -ms-grid-row: 2
    }

    .p-course-division_creature__section.-section03>.img.-img02, .p-course-division_creature__section.-section04 .img.-img02 {
        -ms-grid-column: 1;
        -ms-grid-row: 3
    }

    .p-course-division_creature__section.-section04>.img.-img02 {
        -ms-grid-row-span: 1;
        -ms-grid-column: 1;
        -ms-grid-row: 3
    }

    .p-course-division_creature__section.-section04 .img.-img03 {
        -ms-grid-column: 1;
        -ms-grid-row: 4
    }

    .p-course-division_creature__section.-section03>.img.-img03 {
        -ms-grid-column-span: 1;
        -ms-grid-column: 1;
        -ms-grid-row: 5
    }

    .p-course-division_creature__section.-section04>.img.-img03 {
        -ms-grid-column-span: 1;
        -ms-grid-column: 1;
        -ms-grid-row: 4
    }

    .p-course-division_creature__section.-section04 .img.-img03 {
        margin-bottom: min(13.8775510204vw + 117.9591836735px, 340px);
        margin-left: 0;
        margin-top: max(-2.8571428571vw + -24.2857142857px, -70px);
        max-width: min(16.7346938776vw + 142.2448979592px, 410px)
    }

    .p-course-division_creature__section.-section04 .img.-img03 .obj {
        bottom: auto;
        font-size: min(calc(9.95918vw + 5.29082rem), 15.25rem);
        left: auto;
        right: -.7em;
        top: .2em;
        z-index: 20
    }

    .p-course-division_study-training__media {
        grid-template-columns: 1fr
    }

    .p-course-division_study-training__media .title {
        text-align: center
    }

    .p-course-division_spot .swiper-slide {
        width: 66.6666666667%
    }

    .p-course-division_support__aco-body .items {
        -moz-column-count: 2;
        column-count: 2
    }

    .p-high-school-division_w-school__table {
        overflow-x: auto
    }

    .p-high-school-division_w-school__table img {
        width: min(35.9183673469vw + 665.306122449px, 1240px)
    }
}

@media only screen and (max-width:767px) {
    .l-header__cta {
        display: none
    }

    .c-media {
        flex-direction: column
    }

    .c-media__img {
        order: -1
    }

    .c-table01 dl {
        grid-template-columns: 1fr
    }

    .c-table01 dl dt {
        width: 100% !important
    }

    .c-grid-column.-col4.-col4-sp {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    .c-grid-column.-col4.-col3-sp {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col4.-col2-sp {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col4.-col1-sp {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .c-grid-column.-col4-max.-col4-sp {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-max.-col3-sp {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-max.-col2-sp {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-max.-col1-sp {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-md.-col4-sp {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-md.-col3-sp {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-md.-col2-sp {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-md.-col1-sp {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-tab.-col4-sp {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-tab.-col3-sp {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-tab.-col2-sp {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-tab.-col1-sp {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3.-col4-sp, .c-grid-column.-col4-sp {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    .c-grid-column.-col3.-col3-sp {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col3.-col2-sp {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col3.-col1-sp {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .c-grid-column.-col3-max.-col4-sp {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-max.-col3-sp {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-max.-col2-sp {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-max.-col1-sp {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-md.-col4-sp {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-md.-col3-sp {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-md.-col2-sp {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-md.-col1-sp {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-tab.-col4-sp {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-tab.-col3-sp {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-tab.-col2-sp {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-tab.-col1-sp {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-sp {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col2.-col4-sp {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    .c-grid-column.-col2.-col3-sp {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col2.-col2-sp {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col2.-col1-sp {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .c-grid-column.-col2-max.-col4-sp {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-max.-col3-sp {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-max.-col2-sp {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-max.-col1-sp {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-md.-col4-sp {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-md.-col3-sp {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-md.-col2-sp {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-md.-col1-sp {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-tab.-col4-sp {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-tab.-col3-sp {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-tab.-col2-sp {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-tab.-col1-sp {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-sp {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col1.-col4-sp {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    .c-grid-column.-col1.-col3-sp {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col1.-col2-sp {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col1.-col1-sp {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .c-grid-column.-col1-max.-col4-sp {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-max.-col3-sp {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-max.-col2-sp {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-max.-col1-sp {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-md.-col4-sp {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-md.-col3-sp {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-md.-col2-sp {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-md.-col1-sp {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-tab.-col4-sp {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-tab.-col3-sp {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-tab.-col2-sp {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-tab.-col1-sp {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-sp {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .c-drawer__menu {
        gap: 0;
        grid-template-columns: 1fr;
        margin-inline: auto;
        max-width: 300px
    }

    .c-drawer__menu-group {
        gap: 0
    }

    .c-drawer__menu-item {
        font-size: min(calc(.2449vw + 1.0676rem), 1.3125rem)
    }

    .c-drawer__menu-item.js-drawer-accordion .js-accordion-trigger a {
        pointer-events: none
    }

    .c-drawer__menu-item.js-drawer-accordion .js-accordion-wrap {
        height: 0
    }

    .c-drawer__menu-item.js-drawer-accordion .ico {
        display: none
    }

    .c-drawer__menu-item .page .link, .c-drawer__menu-item .page a {
        border-bottom: 1px solid;
        padding: 1.5em 0
    }

    .c-drawer__menu-item .page .toggle {
        display: grid
    }

    .c-drawer__menu-item .children:before {
        display: none
    }

    .c-drawer__sns {
        justify-content: center
    }

    .c-drawer__links {
        align-items: center;
        flex-direction: column
    }

    .c-drawer__cta {
        order: -1
    }

    .c-drawer__cta-buttons {
        grid-template-columns: repeat(1, 1fr)
    }

    .c-drawer__cta-button {
        font-size: 1rem;
        margin-inline: auto;
        max-width: 18.75em;
        width: 100%
    }

    .c-lower-intro .text {
        text-align: left
    }

    .c-lower-intro .text br {
        display: none
    }

    .c-lower-menu__menu {
        grid-template-columns: 1fr
    }

    .c-pagenavi .pages {
        display: none
    }

    .c-post-block-table dl {
        grid-template-columns: 1fr
    }

    .c-post-block-table dl dt {
        width: 100%
    }

    .c-link-news {
        grid-template: "DATE CATS"auto "TITLE TITLE"auto/auto 1fr
    }

    .c-link-news__cats {
        width: 100%
    }

    .c-link-news__date {
        -ms-grid-column: 1;
        -ms-grid-row: 1
    }

    .c-link-news__cats {
        -ms-grid-column: 2;
        -ms-grid-row: 1
    }

    .c-link-news__title {
        -ms-grid-column-span: 2;
        -ms-grid-column: 1;
        -ms-grid-row: 2;
        margin-top: .5em
    }

    .c-form-table input[type=email], .c-form-table input[type=text], .c-form-table select {
        height: 2.9411764706em
    }

    .c-form-radios .wpcf7-radio.-col3 {
        grid-template-columns: repeat(auto-fit, minmax(10em, 1fr))
    }

    .c-form-actions .submit .wpcf7-previous {
        order: 10
    }

    .u-visible-sp {
        display: none !important
    }

    .u-hidden-sp {
        display: block !important
    }

    .u-hidden-sp.-f {
        display: flex !important
    }

    .u-hidden-sp.-i {
        display: inline !important
    }

    .u-hidden-sp.-ib {
        display: inline-block !important
    }

    .u-jc-center-sp {
        justify-content: center !important
    }

    .p-index_intro_feature-card {
        aspect-ratio: 260/360
    }

    .p-index_intro_feature-card__text {
        line-height: 1.8
    }

    .p-index_fixed-button {
        display: none
    }

    .p-index_fixed-link {
        bottom: min(2.4489795918vw + 80.8163265306px, 120px);
        right: 50%;
        translate: 50% 0
    }

    .p-index_fixed-cta {
        display: flex
    }

    .p-high-school-graduate_intro__obj {
        display: none
    }

    .p-facility_zone__head .content {
        grid-template-columns: 1fr
    }

    .p-facility_zone__head .text {
        padding-bottom: 0
    }

    .p-facility_zone__obj {
        padding-top: min(3.2653061224vw + 27.7551020408px, 80px)
    }

    .p-admission_schedule-course-list, .p-facility-zone-modal__menu {
        grid-template-columns: 1fr
    }

    .p-course-division_licenses {
        -moz-column-count: 2;
        column-count: 2
    }

    .p-course-division_study-style {
        flex-direction: column
    }

    .p-course-division_study-style__item:nth-child(2) {
        margin-left: 0;
        margin-top: -15%
    }

    .p-course-division_support__aco-body .items {
        -moz-column-count: 1;
        column-count: 1
    }

    .p-course-division_cta {
        grid-template-columns: 1fr
    }
}

@media only screen and (max-width:567px) {
    .c-container {
        max-width: 100%
    }

    .c-grid-container {
        grid-template-columns: minmax(0, min(1.6326530612vw + 13.8775510204px, 40px)) minmax(0, calc(50% - min(1.6326530612vw + 13.8775510204px, 40px))) minmax(0, calc(50% - min(1.6326530612vw + 13.8775510204px, 40px))) minmax(0, min(1.6326530612vw + 13.8775510204px, 40px))
    }

    .c-grid-column.-col4.-col4-spmin {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    .c-grid-column.-col4.-col3-spmin {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col4.-col2-spmin {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col4.-col1-spmin {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .c-grid-column.-col4-max.-col4-spmin {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-max.-col3-spmin {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-max.-col2-spmin {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-max.-col1-spmin {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-md.-col4-spmin {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-md.-col3-spmin {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-md.-col2-spmin {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-md.-col1-spmin {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-tab.-col4-spmin {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-tab.-col3-spmin {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-tab.-col2-spmin {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-tab.-col1-spmin {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-sp.-col4-spmin {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-sp.-col3-spmin {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-sp.-col2-spmin {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col4-sp.-col1-spmin {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3.-col4-spmin, .c-grid-column.-col4-spmin {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    .c-grid-column.-col3.-col3-spmin {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col3.-col2-spmin {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col3.-col1-spmin {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .c-grid-column.-col3-max.-col4-spmin {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-max.-col3-spmin {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-max.-col2-spmin {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-max.-col1-spmin {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-md.-col4-spmin {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-md.-col3-spmin {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-md.-col2-spmin {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-md.-col1-spmin {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-tab.-col4-spmin {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-tab.-col3-spmin {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-tab.-col2-spmin {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-tab.-col1-spmin {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-sp.-col4-spmin {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-sp.-col3-spmin {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-sp.-col2-spmin {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-sp.-col1-spmin {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col3-spmin {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col2.-col4-spmin {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    .c-grid-column.-col2.-col3-spmin {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col2.-col2-spmin {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col2.-col1-spmin {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .c-grid-column.-col2-max.-col4-spmin {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-max.-col3-spmin {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-max.-col2-spmin {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-max.-col1-spmin {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-md.-col4-spmin {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-md.-col3-spmin {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-md.-col2-spmin {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-md.-col1-spmin {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-tab.-col4-spmin {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-tab.-col3-spmin {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-tab.-col2-spmin {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-tab.-col1-spmin {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-sp.-col4-spmin {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-sp.-col3-spmin {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-sp.-col2-spmin {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-sp.-col1-spmin {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col2-spmin {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col1.-col4-spmin {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    .c-grid-column.-col1.-col3-spmin {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .c-grid-column.-col1.-col2-spmin {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .c-grid-column.-col1.-col1-spmin {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .c-grid-column.-col1-max.-col4-spmin {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-max.-col3-spmin {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-max.-col2-spmin {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-max.-col1-spmin {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-md.-col4-spmin {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-md.-col3-spmin {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-md.-col2-spmin {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-md.-col1-spmin {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-tab.-col4-spmin {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-tab.-col3-spmin {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-tab.-col2-spmin {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-tab.-col1-spmin {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-sp.-col4-spmin {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-sp.-col3-spmin {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-sp.-col2-spmin {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-sp.-col1-spmin {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important
    }

    .c-grid-column.-col1-spmin {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .u-visible-spmin {
        display: none !important
    }

    .u-hidden-spmin {
        display: block !important
    }

    .u-hidden-spmin.-f {
        display: flex !important
    }

    .u-hidden-spmin.-i {
        display: inline !important
    }

    .u-hidden-spmin.-ib {
        display: inline-block !important
    }
}

@media only screen and (max-width:374px) {
    .u-visible-min {
        display: none !important
    }

    .u-hidden-min {
        display: block !important
    }

    .u-hidden-min.-f {
        display: flex !important
    }

    .u-hidden-min.-i {
        display: inline !important
    }

    .u-hidden-min.-ib {
        display: inline-block !important
    }
}

@media (any-hover:hover) {
    .l-header__cta-button a:hover .ico {
        transform: translateX(20%)
    }

    .l-header-hamburger:hover {
        transform: scale3d(1.05, 1.05, 1)
    }

    .l-footer__company-contacts a:hover {
        opacity: .7
    }

    .l-footer__company-button a:hover, .l-footer__company-sns a:hover {
        background-color: #fff;
        color: #07d0d8
    }

    .l-footer__cta-button a:hover .ico {
        transform: translateX(20%)
    }

    .c-crumbs #breadcrumbs a:hover, .l-footer__menu a:hover {
        opacity: .7
    }

    .c-course-panel a:hover .c-course-panel__img-bg:before {
        opacity: 1
    }

    .c-button01 a:hover .ico {
        transform: translateX(20%)
    }

    .c-drawer__menu-item .children a:hover:after {
        left: 0;
        width: 100%
    }

    .c-drawer__sns a:hover {
        background-color: #fff;
        color: #07d0d8
    }

    .c-drawer__links a:hover:after {
        left: 0;
        width: 100%
    }

    .c-drawer__cta-button a:hover .ico {
        transform: translateX(20%)
    }

    .c-modal-close:hover {
        opacity: .7
    }

    .c-link-news:hover .c-link-news__title {
        color: #07d0d8
    }

    .c-link-media-event__buttons .button a:hover .ico {
        transform: translateX(20%)
    }

    .u-link:hover {
        text-decoration: none
    }

    .js-modal-trg:hover .u-hover-img>img, a:hover .u-hover-img>img {
        transform: scale(1.05)
    }

    .u-hover-text:hover:after {
        left: 0;
        width: 100%
    }

    .p-index_fixed-button a:hover {
        transform: scale3d(1.1, 1.1, 1)
    }

    .p-index_fixed-link a:hover {
        opacity: .7
    }

    .p-event_tab-menu__item:hover {
        color: #505050
    }

    .p-course-division_cta__item a:hover {
        transform: scale3d(1.05, 1.05, 1)
    }
}

@media only screen and (orientation:portrait) {
    .p-index_kv {
        height: 100vh;
        max-height: none
    }

    .p-index_intro-wrapper {
        margin-top: -8.5714285714vw
    }
}

.powered {
    display: none !important
}