:root {
    --cyan-text: #02abbf;
    --text: #4e4e4e;
    --green-10: #f2fbe5;
    --org-10: #fff1ed;
    --black: #000;
    --cyan-07: #b4e9ef;
    --cyan-10: #ecf9fb;
    --white: white;
    --blue: #0073ba;
    --green-01: #80d500;
    --org-01: #ff744a;
    --cyan-01: #44c8d8;
    --green-09: #e5f7cc;
    --yellow-06: #ffe5a4;
    --ivory: #f5f1ed;
    --cyan-08: #c7eef3;
    --cyan-04: #7cd8e4;
    --org-09: #ffe3db;
    --yellow-08: #fff0c9;
    --cyan-06: #a1e3ec;
    --org-07: #ffc7b7;
    --green-06: #c0ea80;
    --yellow-09: #fff5db;
    --yellow-05: #ffe092;
    --green-04: #a6e24d;
    --org-06: #ffb9a4;
    --yellow-04: #ffdb80;
    --cyan-05: #8fdee8;
    --cyan-09: #daf4f7;
    --org-03: #ff906e;
    --cyan-03: #69d3e0;
    --yellow-01: #ffcc4a;
    --green-03: #9add33;
    --yellow-text: #eba900;
    --green_text: #6fb900;
    --org-04: #ff9e80;
    --org-02: #ff825c;
    --yellow-10: #fffaed;
    --cyan-02: #57cedc;
    --org-05: #ffac92;
    --org-08: #ffd5c9;
    --green-02: #8dd91a;
    --green-05: #b3e666;
    --green-07: #ce9;
    --green-08: #d9f3b2;
    --yellow-02: #ffd15c;
    --yellow-03: #ffd66e;
    --yellow-07: #ffebb7;
}

.w-layout-grid {
    grid-row-gap: 16px;
    grid-column-gap: 16px;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr;
    grid-auto-columns: 1fr;
    display: grid;
}

h1 {
    margin-top: 20px;
    margin-bottom: 10px;
    font-size: 38px;
    font-weight: bold;
    line-height: 44px;
}

h2 {
    margin-top: 20px;
    margin-bottom: 10px;
    font-size: 32px;
    font-weight: bold;
    line-height: 36px;
}

h3 {
    margin-top: 20px;
    margin-bottom: 10px;
    font-size: 24px;
    font-weight: bold;
    line-height: 30px;
}

h4 {
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 18px;
    font-weight: bold;
    line-height: 24px;
}

h5 {
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 14px;
    font-weight: bold;
    line-height: 20px;
}

h6 {
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 12px;
    font-weight: bold;
    line-height: 18px;
}

p {
    margin-bottom: 10px;
}

a {
    color: var(--cyan-text);
    text-decoration: none;
}

ul,
ol {
    margin-top: 0;
    margin-bottom: 10px;
    padding-left: 40px;
}

strong {
    font-weight: bold;
}

em {
    font-style: italic;
}

blockquote {
    border-left: 5px solid #e2e2e2;
    margin-bottom: 10px;
    padding: 10px 20px;
    font-size: 18px;
    line-height: 22px;
}

.header {
    z-index: 1;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    padding: 0;
    display: flex;
    position: relative;
}

.container {
    width: 100%;
    max-width: 1440px;
    min-height: 1em;
    position: relative;
}

.container.page {
    grid-column-gap: 3em;
    grid-row-gap: 3em;
    flex-flow: column;
    max-width: 74em;
    margin-bottom: 3em;
}

.header_body {
    justify-content: space-between;
    align-items: center;
    margin-top: 1.5em;
    margin-bottom: 1.5em;
    display: flex;
}

.header_name {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    justify-content: flex-start;
    align-items: center;
    display: flex;
}

.site_logo {
    height: 4em;
}

.schook_logo {
    height: 1em;
}

.header_utility {
    grid-column-gap: 1.25em;
    grid-row-gap: 1.25em;
    justify-content: center;
    align-items: center;
    display: flex;
}

.header_utility_link {
    color: var(--text);
    flex-flow: column;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    transition: transform .2s;
    display: flex;
}

.header_utility_link:hover {
    transform: scale(1.05);
}

.header_utility_icon {
    width: 2.25em;
    height: 2.25em;
}

.body {
    color: var(--text);
    letter-spacing: .1em;
    font-family: Noto Sans JP, sans-serif;
    font-size: 1em;
    font-weight: 400;
    line-height: 1.88;
}

.header_utility_text {
    letter-spacing: 0;
    font-size: .875em;
    font-weight: 500;
    line-height: 1.24;
}

.header_utility_link_button {
    grid-column-gap: 0em;
    grid-row-gap: 0em;
    border: 1px solid var(--text);
    background-color: var(--green-10);
    color: var(--text);
    border-radius: 1em 1em 0;
    justify-content: center;
    align-items: center;
    width: 8em;
    height: 4em;
    padding: .5em 0 .5em .5em;
    font-weight: 500;
    line-height: 1.44;
    text-decoration: none;
    transition: transform .2s;
    display: flex;
    z-index: 999;
}

.header_utility_link_button:hover {
    transform: scale(1.05);
}

.header_utility_link_button.org {
    background-color: var(--org-10);
}

.header_top {
    border-bottom: 1px solid var(--black);
    justify-content: center;
    align-items: center;
    width: 100%;
    padding-left: 3em;
    padding-right: 3em;
    display: flex;
}

.header_bottom {
    justify-content: center;
    align-items: center;
    width: 100%;
    padding-left: 3em;
    padding-right: 3em;
    display: flex;
}

.header_nav {
    grid-column-gap: 3.5em;
    grid-row-gap: 3.5em;
    justify-content: center;
    align-items: center;
    margin-top: 1em;
    margin-bottom: 1em;
    display: flex;
}

.nav_item {
    color: var(--text);
    flex: 0 auto;
    justify-content: center;
    align-items: center;
    padding: 0;
    font-weight: 500;
    text-decoration: none;
    transition: transform .2s;
    display: flex;
}

.nav_item:hover {
    transform: scale(1.05);
}

.nav_icon {
    width: 4em;
    height: 4em;
}

.top_hero {
    width: 700px;
    min-height: 120px;
    margin-left: auto;
    margin-right: auto;
}

.top_hero.single-item {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    aspect-ratio: 2.45;
    background-color: var(--cyan-07);
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    max-width: 1440px;
    margin-left: 0;
    margin-right: 0;
    padding: 0;
    position: relative;
}

.top_hero.single-item.sp {
    display: none;
}

.hero_item_img {
    aspect-ratio: 2.44;
    object-fit: contain;
}

.hero_item_img.alt {
    display: block;
}

.hero_item_img.sp {
    display: none;
}

.hero_wrap {
    background-color: var(--cyan-07);
    flex-flow: column;
    justify-content: center;
    align-items: center;
    padding-top: 0;
    padding-bottom: 0;
    display: flex;
    overflow: hidden;
    position: relative;
}

.image {
    margin-left: 1em;
    margin-right: 1em;
}

.header_utility_link_button_wrap {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    display: flex;
}

.nav_item_text {
    white-space: nowrap;
    font-size: 1.25em;
}

.menu_wrap {
    display: none;
}

.content {
    overflow: hidden;
}

.top_lead_sec {
    background-image: url('../images/bk_stage.svg');
    background-position: 50% 100%;
    background-repeat: no-repeat;
    background-size: contain;
    justify-content: center;
    align-items: center;
    width: 100%;
    min-height: 30em;
    display: flex;
    position: relative;
    z-index: 0;
}

.lead_illust_bk {
    z-index: -1;
    height: 45em;
    position: absolute;
    inset: 0% auto auto 0%;
}

.lead_illust_bk.alt {
    z-index: -5;
    inset: 0% 0% auto auto;
}

.lead_flex {
    justify-content: center;
    align-items: center;
    padding: 5em;
    display: flex;
}

.lead_flex_item {
    flex-flow: column;
    flex: 0 auto;
    justify-content: center;
    align-items: center;
    height: 32em;
    display: flex;
    position: relative;
}

.lead_flex_item.left {
    flex: none;
    width: 40em;
}

.lead_text_wrap {
    background-image: url('../images/site_lead_bk_illust.svg');
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    position: relative;
}

.lead_text_bk {
    position: absolute;
    inset: 0%;
}

.lead_text {
    margin: 2em 3em;
    font-size: 3em;
    font-weight: 500;
    line-height: 1.44;
    display: block;
    position: relative;
}

.lead_text_sub {
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    margin-top: 0;
    margin-bottom: 0;
    font-size: 1.25em;
    font-weight: 500;
    display: flex;
}

.under_l {
    border-bottom: 2px dashed var(--text);
    white-space: nowrap;
    display: block;
}

.st_img {
    z-index: 0;
    width: auto;
    height: 32em;
    position: absolute;
    inset: 0% auto 0% 3%;
}

.st_img.st_04 {
    z-index: -1;
    inset: 0% 32% 0% auto;
}

.st_img.st_03 {
    z-index: -2;
    left: 22%;
}

.st_img.st_02 {
    z-index: 0;
    left: auto;
    right: 15%;
}

.st_fukidashi {
    z-index: 0;
    width: 4.75em;
    position: absolute;
    inset: 0% auto auto 17%;
}

.st_fukidashi.fukidashi_02 {
    width: 8.1875em;
    inset: 0% 2% auto auto;
}

.st_label_title {
    z-index: -5;
    width: 14.43em;
    position: absolute;
    inset: -7% 0% auto 33%;
}

.st_label {
    z-index: 0;
    width: 15.875em;
    position: absolute;
    inset: 38% auto 0% 5%;
}

.st_label.st_label_02 {
    width: 9.8125em;
    top: 66%;
    left: 36%;
}

.st_label.st_label_03 {
    z-index: -5;
    width: 9em;
    inset: auto 1% 16% auto;
}

.st_note {
    width: 14.8125em;
    font-size: 1em;
    position: absolute;
    inset: auto 0% 0% auto;
}

.top_news_sec {
    background-color: var(--cyan-10);
    justify-content: center;
    align-items: center;
    padding-bottom: 3em;
    padding-left: 3em;
    padding-right: 3em;
    display: flex;
    padding-top: 5em;
    z-index: 0;
}

.news_flex {
    grid-column-gap: 4em;
    grid-row-gap: 4em;
    justify-content: center;
    align-items: flex-start;
    display: flex;
}

.news_tab_list {
    flex: 1;
}

.news_sidebar {
    grid-column-gap: 3em;
    grid-row-gap: 3em;
    flex-flow: column;
    width: 22em;
    display: flex;
}

.top_sec_title {
    margin-top: 0;
    margin-bottom: 0;
    font-size: 2.5em;
    font-weight: 500;
}

.top_sec_title_wrap {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    justify-content: flex-start;
    align-items: center;
    margin-bottom: 2em;
    display: flex;
    position: relative;
}

.top_sec_title_wrap.alt {
    margin-bottom: 0;
}

.sec_sub_title {
    color: var(--blue);
    font-family: Playwrite DE Grund, sans-serif;
    font-size: 1.125em;
    font-weight: 400;
}

.tab_label {
    background-color: var(--white);
    border-radius: 1.25em;
    padding: 1.5em 2em;
    font-size: 1.125em;
    transition: transform .2s;
}

.tab_label:hover {
    transform: scale(1.03);
}

.tab_label.w--current {
    background-color: var(--white);
    border-radius: 1.25em 1.25em 0;
    padding-top: 1.5em;
    padding-bottom: 1.5em;
}

.tab_label.tab_label_02 {
    background-color: var(--green-01);
    color: var(--white);
}

.tab_label.tab_label_03 {
    background-color: var(--org-01);
    color: var(--white);
}

.tab_label.tab_label_04 {
    background-color: var(--cyan-text);
    color: var(--white);
}

.tab_label_text {
    white-space: nowrap;
    line-height: 1.44;
}

.tabs-menu {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    justify-content: flex-start;
    align-items: center;
    margin-bottom: 2em;
    display: flex;
    overflow: scroll;
}

.news_grid {
    grid-column-gap: 2.5rem;
    grid-row-gap: 2.5rem;
    grid-template: "Area"
                 "."
                 "."
                 / 1fr 1fr 1fr;
    overflow: visible;
    padding: .5em;
    margin: -0.5em;
}

.news_card {
    grid-column-gap: .25em;
    grid-row-gap: .25em;
    color: var(--black);
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    padding-bottom: 1em;
    text-decoration: none;
    transition: transform .2s;
    display: flex;
}

.news_card:hover {
    transform: scale(1.01);
}

.news_card_img {
    aspect-ratio: 3 / 2;
    object-fit: cover;
    border-radius: 1.25em;
    width: 100%;
    box-shadow: 0 2px 5px #0003;
}

.news_card_title {
    margin-top: 0;
    margin-bottom: 0;
    font-size: 1.125em;
    font-weight: 500;
    line-height: 1.44;
}

.news_car_date {
    font-weight: 500;
}

.news_card_img_wrap {
    width: 100%;
    position: relative;
    aspect-ratio: 3 / 2;
    background-color: #b4e8ef;
    border-radius: 1.25em;
}

.news_card_img_wrap.single {
    width: 100%;
    margin-bottom: 1em;
    font-size: 1.5em;
}

.news_card_cat {
    border: 1px solid var(--green-01);
    background-color: var(--white);
    color: var(--green-01);
    border-radius: 2.5em;
    padding: .25em .75em;
    font-size: .875em;
    position: absolute;
    inset: auto auto 1em 1em;
}

.news_card_cat.cat_02 {
    border-color: var(--org-01);
    color: var(--org-01);
}

.news_card_cat.cat_03 {
    border-color: var(--cyan-01);
    color: var(--cyan-text);
}

.news_card_cat.single {
    bottom: 2em;
    left: 2em;
}

.news_sidebar_inner {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
    flex-flow: column;
    display: flex;
}

.news_sidebar_inner.alt {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
}

.news_sidebar_card {
    background-color: var(--white);
    color: var(--text);
    border-radius: 1.5em 1.5em 0;
    width: 100%;
    padding: 1.5em;
    text-decoration: none;
    transition: transform .2s;
    position: relative;
}

.news_sidebar_card:hover {
    transform: scale(1.0125);
}

.news_sidebar_img {
    aspect-ratio: 3 / 2;
    border-radius: 1em;
}

.news_sidebar_body {
    position: relative;
}

.news_sidebar_label {
    background-color: var(--blue);
    color: var(--white);
    border-radius: 1em 1em 0;
    margin-top: 0;
    margin-bottom: 0;
    padding: 1em;
    font-size: 1.125em;
    font-weight: 500;
    line-height: 1.44;
    text-decoration: none;
    display: inline-block;
    position: absolute;
    top: -1.5em;
    left: -.5em;
    box-shadow: 0 2px 5px #0003;
}

.news_sidebar_text {
    margin-bottom: 2em;
    padding-top: 2.5em;
    font-size: 1.25em;
    line-height: 1.88;
}

.news_sidebar_link_icon {
    width: 2em;
    position: absolute;
    inset: auto 1.5em 1.5em auto;
}

.news_sidebar_link_icon.alt {
    width: 1.5em;
    bottom: .5em;
    right: .5em;
}

.news_sidebar_link {
    background-color: var(--white);
    color: var(--text);
    border-radius: 1.5em 1.5em 0;
    justify-content: center;
    align-items: center;
    padding: 1.75em 1.5em;
    text-decoration: none;
    transition: transform .2s;
    display: flex;
    position: relative;
}

.news_sidebar_link:hover {
    transform: scale(1.025);
}

.news_sidebar_link.green {
    background-color: var(--green-09);
}

.news_sidebar_link.yellow {
    background-color: var(--yellow-06);
    transition: transform .2s;
}

.news_sidebar_icon {
    width: 2.5em;
}

.text-block {
    font-size: 1em;
    font-weight: 500;
}

.small {
    font-size: .875em;
}

.news_footer {
    flex-flow: column;
    justify-content: center;
    align-items: center;
    height: 15em;
    margin-top: 7em;
    display: flex;
    position: relative;
}

.button_link_wrap {
    grid-column-gap: 1.5em;
    grid-row-gap: 1.5em;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding-top: 1.5em;
    padding-bottom: 1.5em;
    display: flex;
    position: relative;
}

.button_link_wrap.mt_3 {
    margin-top: 3em;
}

.button_link_wrap.mt_3.mb_3,
.button_link_wrap.mb_3 {
    margin-bottom: 3em;
}

.button_link {
    grid-column-gap: .5em;
    grid-row-gap: .5em;
    border: 1px solid var(--text);
    background-color: var(--white);
    color: var(--text);
    border-radius: 1em;
    justify-content: center;
    align-items: center;
    padding: 1.125em 1.5em;
    text-decoration: none;
    transition: transform .2s;
    display: flex;
}

.button_link:hover {
    transform: scale(1.03);
}

.button_link.disable {
    border-color: var(--white);
    color: var(--org-01);
}

.button_link.disable:hover {
    transform: none;
}

.button_link.large_link {
    font-size: 1.25em;
}

.button_link_text {
    letter-spacing: 0;
    white-space: nowrap;
    font-weight: 500;
    color: ;
}

.button_link_icon {
    width: 1.5em;
}

.button_link_icon.reverce {
    transform: rotate(180deg);
}

.news_sns_wrap {
    grid-column-gap: 1.5em;
    grid-row-gap: 1.5em;
    justify-content: center;
    align-items: center;
    width: 100%;
    display: flex;
    position: relative;
}

.news_sns_wrap.footer {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    justify-content: flex-start;
    align-items: center;
    margin-top: 1em;
}

.news_sns_link {
    transition: transform .2s;
}

.news_sns_link:hover {
    transform: scale(1.05);
}

.news_sns_link_icon {
    width: 2.5em;
}

.st_image {
    z-index: 0;
    width: 16.5em;
    position: absolute;
    inset: auto auto 0 0%;
}

.st_image.st_image_b {
    width: 17.3em;
    inset: 0 0% auto auto;
}

.top_opens_sec {
    background-color: var(--ivory);
    justify-content: center;
    align-items: flex-start;
    min-height: 30em;
    padding: 5em 3em 8em;
    display: flex;
}

.hero_masking {
    background-color: var(--cyan-07);
    width: 100%;
    height: 1em;
    position: relative;
}

.top_sec_title_wrap_outer {
    justify-content: space-between;
    align-items: center;
    margin-bottom: 3em;
    display: flex;
}

.event_list {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
    justify-content: flex-start;
    align-items: stretch;
    margin-left: -1em;
    margin-right: -1em;
    padding: .9em;
    display: flex;
    overflow: scroll;
}

.event_list.page_taiken {
    grid-column-gap: 2.5em;
    grid-row-gap: 2.5em;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr 1fr;
    grid-auto-columns: 1fr;
    display: grid;
}

.event_item {
    background-color: var(--white);
    border-radius: 1.25em;
    flex: none;
    width: 26.25em;
    min-height: 15em;
    box-shadow: 0 2px 5px #0003;
}

.event_item.page_taiken {
    width: auto;
}

.event_item_header {
    grid-column-gap: .5em;
    grid-row-gap: .5em;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    height: 18em;
    padding: 1.5em;
    display: flex;
}

.event_item_year {
    line-height: 1.44;
}

.event_item_date {
    font-size: 2em;
    font-weight: 500;
    line-height: 1.44;
}

.event_item_date_wrap {
    justify-content: center;
    align-items: center;
    display: flex;
}

.event_item_day {
    font-size: 1.125em;
    font-weight: 500;
    line-height: 1.448;
}

.event_item_time {
    padding-left: .5em;
    font-size: 1em;
    font-weight: 500;
}

.event_cat_wrap {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    justify-content: flex-start;
    align-items: center;
    display: flex;
}

.event_cat {
    background-color: var(--cyan-01);
    color: var(--white);
    border-radius: 1.5em;
    padding: .25em .75em;
    line-height: 1.44;
}

.event_cat.sub {
    background-color: var(--cyan-10);
    color: var(--cyan-text);
}

.event_cat.gakkousetumei {
    background-color: var(--green-01);
}

.event_cat.nyusitaisaku {
    background-color: var(--org-01);
}

.event_title {
    margin-top: 0;
    margin-bottom: 0;
    font-size: 1.25em;
    font-weight: 500;
    line-height: 1.44;
}

.event_img {
    object-fit: cover;
    transition: opacity .2s;
    position: relative;
    aspect-ratio: 3/2;
}

.event_img.active {
    opacity: .15;
}

.event_body {
    aspect-ratio: 3 / 2;
    position: relative;
}

.event_memo {
    opacity: 0;
    color: var(--black);
    margin-bottom: 0;
    padding: 1.5em;
    transition: opacity .2s;
    position: absolute;
    inset: 0%;
}

.event_memo.active {
    opacity: 100;
}

.event_footer {
    justify-content: center;
    align-items: center;
    padding: 1.5em;
    display: flex;
}

.footer_nav {
    border-bottom: 1px solid var(--text);
    justify-content: center;
    align-items: center;
    width: 100%;
    padding-left: 3em;
    padding-right: 3em;
    display: flex;
}

.footer_body {
    background-color: var(--cyan-08);
    justify-content: center;
    align-items: center;
    padding: 7.5em 3em 3em;
    display: flex;
}

.footer_nav_list {
    grid-column-gap: 3em;
    grid-row-gap: 3em;
    justify-content: center;
    align-items: center;
    margin-bottom: 0;
    padding-top: 2em;
    padding-bottom: 2em;
    padding-left: 0;
    font-size: 1em;
    list-style-type: none;
    display: flex;
}

.footer_nav_link {
    color: var(--text);
    font-size: 1.125em;
    font-weight: 500;
    line-height: 1.44;
    text-decoration: none;
}

.footer_flex {
    grid-column-gap: 3em;
    grid-row-gap: 3em;
    justify-content: center;
    align-items: stretch;
    margin-bottom: 5em;
    display: flex;
}

.footer_flex_item {
    grid-column-gap: .5em;
    grid-row-gap: .5em;
    flex-flow: column;
    flex: 1;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
    position: relative;
}

.footer_logo_img {
    height: 4em;
}

.footer_address {
    margin-top: 1em;
    margin-bottom: 0;
    line-height: 1.44;
}

.footer_school_slogan {
    height: 4em;
}

.group_label {
    margin-top: 1em;
    margin-bottom: 0;
    font-size: 1em;
    font-weight: 500;
    line-height: 1.44;
}

.group_list {
    grid-column-gap: 0em;
    grid-row-gap: 0em;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
}

.group_link {
    color: var(--text);
    line-height: 1.44;
    text-decoration: none;
}

.st_image_footer {
    width: 18.5em;
    position: absolute;
    inset: -5em 0% auto auto;
}

.footer_copy {
    padding-top: 1.5em;
    padding-bottom: 1.5em;
}

.footer_copy_text {
    text-align: center;
    font-size: .875em;
}

.st_test {
    background-color: #ffe3db;
    width: 100%;
    height: 100vh;
}

.st_test.od_stripe {
    justify-content: center;
    align-items: center;
    display: flex;
}

.image_slider {
    padding-left: 5em;
    padding-right: 5em;
}

.is_item {
    aspect-ratio: 3 / 2;
    background-color: var(--cyan-08);
    justify-content: center;
    align-items: flex-end;
    width: 100%;
    display: flex;
    position: relative;
}

.is_item.is_thumb {
    cursor: pointer;
    width: 12.5em;
    min-width: 12.5em;
    transition: transform .2s;
}

.is_item.is_thumb:hover {
    transform: scale(1.05);
}

.is_item_img {
    aspect-ratio: 3 / 2;
    object-fit: cover;
    width: 100%;
    position: absolute;
    inset: 0%;
}

.sl_arrow {
    justify-content: center;
    align-items: center;
    width: 5em;
    display: flex;
    position: absolute;
    inset: 0% auto 0% 0%;
    transform: translate(-5em);
}

.sl_arrow.next {
    inset: 0% 0% 0% auto;
    transform: translate(5em);
}

.st_arrow_img {
    cursor: pointer;
    width: 3em;
    height: 3em;
    transition: transform .2s;
}

.st_arrow_img:hover {
    transform: scale(1.1);
}

.st_arrow_img.prev {
    cursor: pointer;
    width: 3em;
    height: 3em;
    transform: rotate(180deg);
}

.st_arrow_img.prev:hover {
    transform: scale(1.1)rotate(180deg);
}

.is_list {
    grid-column-gap: 1.25em;
    grid-row-gap: 1.25em;
    margin-top: 2em;
    display: flex;
    overflow: scroll;
}

.is_cap {
    background-color: var(--cyan-10);
    border-radius: 3em;
    margin-bottom: 1em;
    padding: 1em 1.5em;
    font-family: Noto Sans JP, sans-serif;
    font-size: 1.125em;
    font-weight: 500;
    display: block;
    position: relative;
}

.page_head {
    background-color: var(--cyan-07);
    justify-content: center;
    align-items: flex-end;
    height: 31.25em;
    padding-top: 1.25em;
    display: flex;
    position: relative;
}

.page_head_img {
    object-fit: cover;
    object-position: 50% 0%;
    width: 100%;
    height: 30em;
    position: absolute;
    inset: auto 0% 0%;
}

.page_title {
    justify-content: flex-start;
    align-items: center;
    padding-bottom: 4em;
    display: flex;
}

.page_title_inner {
    display: flex;
}

.page_title_ribon {
    z-index: 1;
    background-color: var(--cyan-04);
    border-top-right-radius: 1.5em;
    width: 2.5em;
    min-height: 3em;
    position: relative;
    transform: translate(1em, -1em);
}

.page_title_ribon.alt {
    border-top-left-radius: 1.5em;
    border-top-right-radius: 0;
    transform: translate(-1em, -1em);
}

.page_title_text {
    margin-top: 0;
    margin-bottom: 0;
    font-family: Noto Sans JP, sans-serif;
    font-size: 2.5em;
    font-weight: 500;
    line-height: 1;
}

.page_title_text_wrap {
    z-index: 2;
    border-top: .5em solid var(--cyan-04);
    background-color: var(--white);
    border-bottom-right-radius: 1.5em;
    border-bottom-left-radius: 1.5em;
    padding: 2em 4em;
    position: relative;
    box-shadow: 0 2px 5px #0003;
}

.site_body {
    font-size: 1em;
    line-height: 1.88px;
}

.breadcrumbs {
    border-bottom: 1px solid var(--text);
    background-color: var(--white);
    justify-content: center;
    align-items: center;
    padding-left: 3em;
    padding-right: 3em;
    display: flex;
}

.breadcrumbs.single {
    border-top: 1px solid var(--text);
}

.breadcrumbs_menu {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    justify-content: flex-start;
    align-items: center;
    padding-top: 1.25em;
    padding-bottom: 1.25em;
    line-height: 1.44;
    display: flex;
}

.breadcrumbs_menu_item {
    color: var(--text);
    text-decoration: none;
    transition: color .2s;
}

.breadcrumbs_menu_item:hover {
    color: var(--blue);
}

.breadcrumbs_menu_item.current:hover {
    color: var(--text);
}

.section {
    background-color: var(--white);
    justify-content: center;
    align-items: center;
    padding: 3em 3em 5em;
    display: flex;
    position: relative;
}

.section.illust_bk {
    background-image: url('../images/bk_img_a.svg');
    background-position: 50% -10%;
    background-repeat: no-repeat;
    background-size: contain;
}

.section.illust_bk.illust_bk_bottom {
    background-position: 50% 110%;
}

.section.cyan {
    background-color: var(--cyan-08);
}

.section.orange {
    background-color: var(--org-09);
    color: var(--text);
    white-space: normal;
}

.section.orange.od_stripe {
    white-space: normal;
    flex-flow: column;
}

.section.orange.od_stripe.no-padding {
    padding-left: 0;
    padding-right: 0;
}

.section.orange.od_stripe.wide {
    color: var(--text);
    white-space: normal;
}

.section.ivory {
    background-color: var(--ivory);
}

.section.ivory.illust_bk.illust_bk_bottom {
    background-position: 50% 110%;
}

.section.yellow {
    background-color: var(--yellow-08);
}

.section.green {
    background-color: var(--green-09);
    color: var(--text);
}

.section.green.od_stripe {
    white-space: normal;
    font-weight: 400;
}

.section.cyan_shade {
    background-color: var(--cyan-10);
}

.sec_title_a {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    background-color: var(--cyan-10);
    box-shadow: .5em .5em 0 0 var(--cyan-06);
    border-radius: 1.75em;
    justify-content: center;
    align-items: center;
    margin-bottom: 3em;
    padding: .875em 1em;
    display: flex;
}

.sec_title_a.orange {
    background-color: var(--org-10);
    box-shadow: .5em .5em 0 0 var(--org-07);
    margin-bottom: 3em;
}

.sec_title_a.green {
    background-color: var(--green-09);
    box-shadow: .5em .5em 0 0 var(--green-06);
}

.sec_title_a.yellow {
    background-color: var(--yellow-09);
    box-shadow: .5em .5em 0 0 var(--yellow-05);
}

.sec_title_a.w_green {
    background-color: var(--white);
    box-shadow: .5em .5em 0 0 var(--green-04);
}

.sec_title_a.w_orange {
    background-color: var(--white);
    box-shadow: .5em .5em 0 0 var(--org-06);
}

.sec_title_a.w {
    background-color: var(--white);
}

.sec_title_a.w_yellow {
    background-color: var(--white);
    box-shadow: .5em .5em 0 0 var(--yellow-04);
}

.sec_title_a.mt_3 {
    margin-top: 3em;
}

.sec_title_a.w_cyan {
    background-color: var(--white);
    box-shadow: .5em .5em 0 0 var(--cyan-05);
}

.sec_title_a.w_cyan.mt_5 {
    margin-top: 5em;
}

.sec_title_a_icon {
    width: 4em;
    height: 4em;
}

.sec_title_a_text {
    color: var(--text);
    text-align: center;
    margin-top: 0;
    margin-bottom: 0;
    font-size: 2em;
    font-weight: 500;
    line-height: 1.44;
}

.card_topic_flex {
    grid-column-gap: 2.5em;
    grid-row-gap: 2.5em;
    justify-content: center;
    align-items: stretch;
    margin-top: 6em;
    margin-bottom: 3em;
    display: flex;
}

.card_topic_flex.col_2 {
    width: 66.666%;
    margin: 6em auto 0;
}

.card {
    background-color: var(--cyan-09);
    text-align: center;
    border-radius: 1.5em 1.5em 0;
    flex: 1;
    min-height: 5em;
    padding: 2em;
    position: relative;
    box-shadow: 0 2px 5px #0003;
    z-index: 0;
}

.card.yellow {
    background-color: var(--yellow-09);
}

.card.green {
    background-color: var(--green-09);
}

.card.orange {
    background-color: var(--org-09);
}

.card.blue {
    background-color: #def2ff;
}

.card.line_orange {
    border: 3px solid var(--org-01);
    background-color: var(--white);
}

.card.line_green {
    border: 3px solid var(--green-01);
    background-color: var(--white);
}

.card.gray {
    background-color: var(--ivory);
    text-align: left;
    height: 100%;
}

.card.orange_line {
    border: 3px solid var(--org-03);
    background-color: var(--white);
}

.card.cyan_line {
    border: 3px solid var(--cyan-03);
    background-color: var(--white);
}

.card.yellow_line {
    border: 3px solid var(--yellow-01);
    background-color: var(--white);
}

.card.green_line {
    border: 3px solid var(--green-03);
    background-color: var(--white);
}

.card.blue_line {
    background-color: var(--white);
    border: 3px solid #75c7fa;
}

.card.line_yellow {
    border: 3px solid var(--yellow-01);
    background-color: var(--white);
}

.card.line_yellow.mt_3 {
    margin-top: 3em;
}

.card.line_yellow.mt_3.mb_3 {
    margin-bottom: 3em;
}

.card_label_a {
    width: 9.25em;
    height: 9.25em;
    position: relative;
    transform: translate(0, -6.5em);
}

.card_label_a.alt {
    width: 12.55em;
    height: 12.5em;
    transform: translate(0, -65%);
}

.card_inner {
    z-index: 0;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    margin-top: -7em;
    padding: 0;
    display: flex;
    position: relative;
    inset: 0%;
}

.card_inner.alt {
    white-space: normal;
    margin-top: -9em;
    position: relative;
}

.card_lead {
    color: var(--black);
    font-size: 1.75em;
    line-height: 1.44;
}

.card_lead.orange {
    color: var(--org-01);
    text-align: left;
}

.card_lead.cyan {
    color: var(--cyan-text);
}

.card_lead.yellow {
    color: var(--yellow-text);
}

.card_lead.green {
    color: var(--green_text);
}

.card_lead.bule {
    color: var(--blue);
}

.illust_03_01 {
    width: 100%;
    max-width: 15em;
    margin-bottom: 1em;
}

.pose_03_01 {
    width: 12.5em;
    position: absolute;
    inset: auto auto 1.5em -5em;
}

.div-block {
    grid-column-gap: .5em;
    grid-row-gap: .5em;
    flex-flow: column;
    justify-content: flex-start;
    align-items: center;
    margin-bottom: 1em;
    margin-right: auto;
    display: flex;
}

.text-block-2 {
    background-color: var(--green-01);
    color: var(--white);
    padding: .5em 1em;
    font-weight: 500;
    line-height: 1.44;
}

.text-block-3 {
    line-height: 1.44;
}

.pose_03_02 {
    width: 10em;
    position: absolute;
    inset: 4em -1.5em auto auto;
}

.illust_03_02 {
    width: 14em;
    margin-top: 1em;
    margin-left: auto;
    margin-right: auto;
    padding-right: 4em;
}

.pose_03_03 {
    width: 12.5em;
    position: absolute;
    inset: auto -4em 0% auto;
}

.card_text {
    color: var(--black);
    margin-top: .5em;
    line-height: 1.44;
}

.card_text.alt {
    text-align: left;
}

.img_03_01 {
    width: 17.5em;
    margin-top: .5em;
    margin-bottom: .5em;
    position: relative;
}

.fukidashi_03_03 {
    z-index: 0;
    width: 9.25em;
    position: absolute;
    inset: 4em -1.5em auto auto;
}

.img_03_02 {
    width: 16.875em;
    margin-top: .5em;
}

.fukidashi_03_04 {
    z-index: 0;
    width: 12em;
    margin-left: auto;
    margin-right: auto;
    position: absolute;
    inset: auto 0% -1.5em;
}

.sec_title_b {
    flex-flow: column;
    justify-content: center;
    align-items: center;
    margin-bottom: 3em;
    display: flex;
}

.sec_title_c_wrap {
    background-image: url('../images/line_title_bk.svg');
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: cover;
    justify-content: center;
    align-items: center;
    height: 8.25em;
    padding: 0 2em 0 8em;
    display: flex;
    position: relative;
}

.sec_title_c_wrap.alt {
    background-position: 0 100%;
    padding-left: 9em;
}

.sec_title_c_wrap.alt.alt_2 {
    padding-left: 12em;
}

.sec_title_c_text {
    text-align: center;
    margin-top: 0;
    margin-bottom: 0;
    font-size: 2em;
    font-weight: 500;
    line-height: 1.333;
    position: relative;
    top: .75em;
}

.icon_head_01_blue {
    width: 4em;
    position: absolute;
    inset: 2.5em auto auto 3em;
}

.section_lead {
    color: var(--blue);
    text-align: center;
    margin-bottom: 1em;
    font-size: 2em;
    font-weight: 500;
    line-height: 1.44;
}

.section_lead.label {
    color: var(--blue);
    margin-bottom: 0;
    font-size: 1.75em;
}

.section_lead.label.align_left {
    text-align: left;
}

.section_lead.mt_3 {
    margin-top: 3em;
}

.section_text {
    color: var(--text);
    text-align: center;
    margin-bottom: 1em;
    font-size: 1.5em;
}

.section_text.medium {
    text-align: left;
    font-size: 1.25em;
}

.section_text.medium.tiny {
    padding-left: 2em;
    padding-right: 2em;
}

.section_text.medium.mb_0 {
    margin-bottom: 0;
}

.section_text.medium.align_center {
    text-align: center;
}

.section_text.medium.mb_3 {
    margin-bottom: 3em;
}

.section_text.small {
    text-align: left;
    font-size: 1em;
}

.section_text.small.center {
    text-align: center;
}

.section_text.small.center.mb_3 {
    margin-bottom: 3em;
}

.section_text.tiny {
    padding-left: 3em;
    padding-right: 3em;
}

.section_text.large.bule {
    color: var(--blue);
    text-align: left;
}

.section_text.large.bule.label {
    line-height: 1.44;
}

.section_text.label {
    color: var(--text);
    margin-bottom: 0;
}

.section_text.align_left {
    text-align: left;
}

.section_flex {
    grid-column-gap: 2.5em;
    grid-row-gap: 2.5em;
    justify-content: center;
    align-items: stretch;
    margin-bottom: 2em;
    padding-top: 3em;
    display: flex;
}

.section_flex.base {
    justify-content: center;
    align-items: center;
    margin-bottom: 4em;
    padding-top: 0;
}

.section_flex.alt {
    padding-top: 0;
}

.section_flex.alt.facility {
    padding-left: 5em;
    padding-right: 5em;
}

.section_flex.pt_0 {
    padding-top: 0;
}

.section_flex_item {
    flex: 1;
    position: relative;
}

.section_flex_item.valign_middle {
    justify-content: flex-start;
    align-items: center;
    display: flex;
}

.sec_flex_03 {
    margin-bottom: 1em;
}

.section_lead_alt {
    color: var(--black);
    text-align: center;
    margin-bottom: 1em;
    font-size: 1.75em;
    font-weight: 500;
    line-height: 1.44;
}

.section_lead_alt.orange {
    color: var(--org-01);
    text-align: left;
    white-space: normal;
}

.section_lead_alt.small {
    text-align: left;
    font-size: 1.125em;
}

.section_lead_alt.green {
    color: var(--green_text);
    text-align: left;
    white-space: normal;
}

.section_lead_alt.alt_2 {
    text-align: left;
    font-size: 1.5em;
}

.section_lead_alt.alt_2.cyan {
    color: var(--cyan-text);
}

.section_lead_alt.alt_2.cyan.center {
    text-align: center;
}

.flote_label {
    grid-column-gap: .5em;
    grid-row-gap: .5em;
    background-color: var(--cyan-01);
    border-radius: 1.5em;
    justify-content: center;
    align-items: center;
    padding: 1.25em 1.75em;
    display: flex;
}

.flote_label.orange {
    background-color: var(--org-01);
}

.flote_label.orange.shade {
    background-color: var(--org-04);
}

.flote_label.blue {
    background-color: var(--blue);
}

.flote_label.green {
    background-color: var(--green-01);
}

.flote_label_text {
    color: var(--white);
    font-size: 1.5em;
    font-weight: 500;
    line-height: 1.44;
}

.flote_label_icon {
    width: 3em;
    height: 3em;
}

.flote_label_wrap {
    justify-content: center;
    align-items: center;
    display: flex;
    position: absolute;
    inset: 0% 0% auto;
    transform: translate(0, -50%);
}

.flex_box {
    grid-column-gap: 2.5em;
    grid-row-gap: 2.5em;
    justify-content: center;
    align-items: center;
    display: flex;
}

.flex_item {
    flex: 1;
}

.text_orange {
    color: var(--org-01);
}

.image-3 {
    width: 100%;
}

.stack {
    grid-column-gap: 3em;
    grid-row-gap: 3em;
    flex-flow: column;
    display: flex;
}

.text_green {
    color: var(--green-01);
}

.fukidashi_03_05 {
    z-index: 0;
    width: 9.8em;
    position: absolute;
    inset: -1em -2em auto auto;
}

@media (min-width: 479px) {
    .fukidashi_03_05 {
        inset: -1em -2em auto auto;
    }
}

.float_icon_label {
    grid-column-gap: .5em;
    grid-row-gap: .5em;
    justify-content: flex-start;
    align-items: center;
    margin-bottom: 1em;
    display: flex;
    position: relative;
}

.float_icon_label.alt {
    padding-top: 1em;
}

.float_icon_label_img {
    width: 5.5em;
    height: 5.5em;
    position: absolute;
    inset: -5em auto auto -1em;
}

.float_icon_text {
    padding-left: 3em;
    font-size: 1.5em;
    font-weight: 500;
    line-height: 1.448;
}

.img_03_07 {
    text-align: left;
    width: 80%;
    margin-top: 2em;
    margin-right: auto;
    display: block;
    position: relative;
}

.pose_03_04 {
    z-index: 0;
    width: 16em;
    position: absolute;
    inset: auto -1.5em -3em auto;
}

@media (min-width: 479px) {
    .pose_03_04 {
    }
}

.text_cyan {
    color: var(--cyan-01);
}

.img_03_08 {
    width: 80%;
    margin-top: 2em;
    margin-left: auto;
    margin-right: auto;
    display: block;
}

.fukidashi_03_07 {
    width: 9.375em;
    position: absolute;
    inset: -1em auto auto 1em;
}

.img_03_08_wrap {
    position: relative;
}

.illust_03_03_wrap {
    margin-top: 5em;
    margin-bottom: 5em;
    position: relative;
}

.illust_03_03 {
    width: 43.75em;
}

.image-4 {
    width: 16.375em;
    position: absolute;
    inset: auto 0% -5em auto;
}

.table_flex {
    grid-column-gap: 2.5em;
    grid-row-gap: 2.5em;
    justify-content: center;
    align-items: stretch;
    margin-bottom: 3em;
    display: flex;
    position: relative;
}

.fs-table_instance {
    display: block;
}

.fs-table_header {
    color: var(--text);
    text-align: left;
    border: 1px solid #ddd;
    padding: .5em;
    font-weight: 500;
    line-height: 1.44;
}

.fs-table_row {
    text-align: left;
    border: 1px solid #ddd;
}

.fs-table_head {
    background-color: #f3f3f3;
}

.fs-table_cell {
    text-align: left;
    border: 1px solid #ddd;
    padding: 8px;
}

.fs-table_table {
    text-align: left;
    border-collapse: collapse;
    border: 1px solid #ddd;
    width: 100%;
    font-size: 1.25em;
}

.icon_head_04_blue {
    width: 5.375em;
    position: absolute;
    inset: 3em auto auto 2.5em;
}

.faculty_voice {
    grid-column-gap: 2.5em;
    grid-row-gap: 2.5em;
    width: 100%;
    padding: 6em 1em 1em;
    display: flex;
    overflow: scroll;
}

.voice_card {
    background-color: var(--white);
    border-radius: 1.5em 1.5em 0;
    min-width: 30em;
    max-width: 30em;
    padding: 8em 2em 2em;
    position: relative;
    box-shadow: 0 2px 5px #0003;
}

.voice_card_lead {
    color: var(--blue);
    text-align: center;
    margin-bottom: 1em;
    font-size: 1.5em;
    font-weight: 500;
    line-height: 1.448;
}

.voice_card_text {
    margin-bottom: 1em;
    font-size: 1.125em;
}

.voice_card_limg {
    width: 12.5em;
    margin-left: auto;
    margin-right: auto;
    display: block;
    position: absolute;
    inset: 0% 0% auto;
    transform: translate(0, -40%);
}

.voice_card_cap {
    text-align: right;
    line-height: 1.44;
}

.cap_medium {
    font-size: 1.25em;
    font-weight: 500;
}

.cap_large {
    font-size: 1.5em;
    font-weight: 500;
}

.section_copy {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    justify-content: center;
    align-items: center;
    margin-bottom: 1.5em;
    display: flex;
}

.section_copy_div {
    background-color: var(--cyan-text);
    width: 3px;
    height: 2em;
    transform: skew(25deg);
}

.section_copy_div.right {
    transform: skew(-25deg);
}

.section_copy_text {
    color: var(--cyan-text);
    text-align: center;
    font-size: 2em;
    font-weight: 500;
    line-height: 1.44;
}

.page_03_shikaku_flex {
    grid-column-gap: 18em;
    grid-row-gap: 18em;
    justify-content: center;
    align-items: center;
    margin-top: 4em;
    margin-bottom: 3em;
    display: flex;
    position: relative;
}

.page_03_shikaku_item {
    z-index: 0;
    grid-column-gap: 1.5em;
    grid-row-gap: 1.5em;
    flex-flow: column;
    flex: 1;
    display: flex;
    position: relative;
}

.page_03_shikaku_fukidashi {
    border: 2px solid var(--green-01);
    background-color: var(--white);
    border-radius: 1.5em 1.5em 0;
    padding: 2em;
    box-shadow: 0 2px 5px #0003;
}

.page_03_shikaku_fukidashi.right {
    border-bottom-right-radius: 1.5px;
    border-bottom-left-radius: 0;
}

.page_03_shikaku_text {
    color: var(--black);
    text-align: center;
    font-size: 1.75em;
    font-weight: 500;
    line-height: 1.44;
}

.superscript {
    font-size: .75em;
}

.pose_03_06 {
    z-index: 0;
    width: 20em;
    position: absolute;
}

.card_03_shikaku {
    z-index: 0;
    background-color: var(--green-10);
    border-radius: 1.5em 1.5em 0;
    margin-bottom: 1em;
    padding: 6em 2em 2em;
    position: relative;
}

.card_03_shikaku_label_wrap {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    justify-content: flex-start;
    align-items: center;
    display: flex;
    position: absolute;
    inset: 0% 0% auto;
}

.card_03_shikaku_label {
    background-color: var(--green-01);
    color: var(--white);
    white-space: nowrap;
    border-top-left-radius: 1.5em;
    border-bottom-right-radius: 1.5em;
    padding: 1.5em 2em;
    font-weight: 500;
}

.card_03_shikaku_label_text {
    font-size: 1.5em;
    font-weight: 500;
    line-height: 1.44;
}

.card_03_shikaku_body {
    width: 80%;
}

.pose_03_07 {
    width: 8.5em;
    position: absolute;
    inset: -1em 3em auto auto;
}

.faculty_voice_wrap {
    width: 100%;
    margin-left: -3em;
    margin-right: -3em;
    overflow: scroll;
}

.icon_head_03_blue {
    width: 8.25em;
    position: absolute;
    inset: 3.5em auto auto 3em;
}

.page_03_shinro {
    background-image: url('../images/img_03_09.png');
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 1.5em;
    justify-content: center;
    align-items: flex-end;
    margin-bottom: 5em;
    padding: 0 2em 2em;
    display: flex;
}

.page_03_shinro_item {
    flex: 0 auto;
}

.page_03_shinro_item.center {
    flex: none;
}

.page_03_shinro_note {
    background-color: #ffffffe6;
    border-radius: 1em;
    padding: 2em 1em 1em;
    position: relative;
}

.page_03_shinro_note.alt {
    display: none;
}

.page_03_shinro_note_icon {
    width: 5em;
    height: 5em;
    margin-top: -3em;
    margin-left: auto;
    margin-right: auto;
    display: block;
    position: absolute;
    inset: 0% 0% auto;
}

.page_03_card {
    background-color: var(--white);
    border-radius: 1.5em 1.5em 0;
    margin-bottom: 5em;
    padding: 4em 2em 2em;
    position: relative;
    box-shadow: 0 2px 5px #0003;
}

.page_03_card.cyan {
    background-color: var(--cyan-10);
}

.page_03_card_flex {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
    justify-content: center;
    align-items: stretch;
    display: flex;
}

.page_03_card_flex_item {
    flex: 1;
    position: relative;
}

.page_03_card_flex_div {
    background-color: var(--text);
    width: 1px;
}

.inline_list {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    flex-flow: wrap;
    margin-bottom: 1em;
    display: flex;
}

.inline_list_item {
    background-color: var(--green-01);
    color: var(--white);
    white-space: nowrap;
    border-radius: 2em;
    padding: .5em 1em;
    font-size: 1.25em;
    font-weight: 500;
    line-height: 1.44;
}

.inline_list_item.blue {
    background-color: var(--blue);
    margin-bottom: 1em;
    display: inline-block;
}

.sub_tilte {
    border-left: .25em solid var(--cyan-01);
    margin-top: 1em;
    margin-bottom: 1em;
    padding: 1em;
    font-size: 1.25em;
    font-weight: 500;
    line-height: 1.44;
}

.sub_tilte.blue {
    border-left-color: var(--blue);
}

.sub_tilte.mt_3 {
    margin-top: 3em;
}

.sub_tilte.sub_tilte_large {
    font-size: 1.5em;
}

.page_03_card_voice_cap {
    color: var(--black);
    margin-bottom: 3em;
    line-height: 1.88;
}

.large {
    color: var(--black);
    font-size: 1.75em;
}

.fukidashi_03_09 {
    width: 8.43em;
    margin-bottom: .5em;
}

.img_03_10 {
    width: 13.5em;
    position: absolute;
    inset: -2em 0% auto auto;
}

.table_flex_item {
    flex: 1;
}

.table_wrap {
    background-color: var(--white);
    width: 100%;
    overflow: scroll;
}

.table_wrap.table_large {
    margin-top: 2em;
    margin-bottom: 2em;
    font-size: 1.5em;
}

.table_wrap.table_middle {
    margin-bottom: 1em;
    font-size: 1.25em;
}

.table_wrap.table_middle.mb_3 {
    margin-bottom: 3em;
}

.oda_table {
    border-style: solid none none solid;
    border-width: 1px;
    border-color: var(--text);
    color: var(--black);
    width: 100%;
    line-height: 1.44;
}

.oda_table.scroll {
    overflow: scroll;
}

.bk_mint {
    background-color: #bee1dd;
}

.bk_salmon {
    background-color: #fddbc1;
}

.txt_mint {
    color: #69bbb2;
}

.txt_salmon {
    color: #ecb081;
}

.txt_left {
    text-align: left;
}

.table_title {
    margin-top: 2em;
    margin-bottom: .5em;
    font-size: 1.25em;
    font-weight: 500;
}

.illust_03_04 {
    width: 18em;
}

.text-block-4 {
    display: inline-block;
}

.illust_03_06 {
    width: 8.3em;
    position: absolute;
    inset: 0% 0% auto auto;
}

.illust_03_06.illust_03_06_alt {
    top: 7em;
}

.page_03_card_footer {
    text-align: center;
    margin-top: 1em;
    font-size: 1.5em;
}

.label {
    color: var(--cyan-text);
    font-weight: 500;
}

.page_02_card {
    background-color: var(--white);
    border-radius: 1.75em 1.75em 0;
    justify-content: center;
    align-items: stretch;
    margin-top: 5em;
    margin-bottom: 3em;
    display: flex;
    position: relative;
    box-shadow: 0 2px 5px #0003;
    z-index: 0;
}

.page_02_card.line_orange {
    border: 3px solid var(--org-04);
    background-color: var(--org-10);
    box-shadow: none;
}

.page_02_card.line_cyan {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    border: 3px solid var(--cyan-01);
    box-shadow: none;
    justify-content: flex-start;
    align-items: stretch;
    margin-top: 3em;
    padding-left: 2em;
    padding-right: 2em;
}

.page_02_card.page_08 {
    background-color: var(--cyan-10);
}

.page_02_card_item {
    flex: 0 50%;
    position: relative;
}

.page_02_card_item.bk_img {
    background-image: url('../images/img_02_01.png');
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    border-top-left-radius: 1.75em;
    border-bottom-left-radius: 1.75em;
    justify-content: center;
    align-items: center;
    display: flex;
}

.page_02_card_copy {
    color: var(--cyan-text);
    text-align: center;
    padding-top: 4em;
    padding-bottom: 4em;
    font-size: 1.75em;
    font-weight: 500;
    position: relative;
}

.pose_02_01 {
    width: 17.5em;
    position: absolute;
    inset: auto -5em -2em auto;
}

.page_02_card_flex_3 {
    justify-content: center;
    align-items: flex-start;
    margin-left: 2em;
    margin-right: 2em;
    display: flex;
}

.page_02_card_item_inner {
    flex-flow: column;
    justify-content: center;
    align-items: center;
    padding: 4em 2em 2em;
    display: flex;
}

.page_02_card_inner {
    padding: 2em 0;
}

.pose_02_02 {
    width: 12.5em;
    position: absolute;
    inset: auto 2em 0% auto;
    z-index: -1;
}

.icon_head_02_green {
    width: 4.625em;
    position: absolute;
    inset: 2.5em auto auto 2.5em;
}

.charm_01 {
    width: 60%;
    margin-right: auto;
}

.pose_02_03 {
    width: 8.375em;
    position: absolute;
    inset: auto 1em -1.5em auto;
}

.illust_02_01 {
    width: 130%;
    max-width: none;
    margin-top: 1em;
}

.illust_02_02 {
    width: 11em;
    margin-top: 1em;
}

.illust_02_03 {
    width: 120%;
    max-width: none;
    margin-bottom: -4em;
}

.illust_02_04 {
    width: 11.5em;
    margin-top: 1em;
    margin-bottom: -3em;
    margin-left: auto;
    display: block;
}

.illust_02_05 {
    margin-bottom: 2em;
}

.illust_02_05.alt {
    display: none;
}

.image_text_flex {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
}

.image_text__img {
    width: 9.375em;
}

.badge_label {
    background-color: var(--green-01);
    color: var(--white);
    border-radius: 1em 1em 0;
    margin-bottom: 1em;
    padding: 1em 1.5em;
    font-size: 1.25em;
    font-weight: 500;
    display: inline-block;
    box-shadow: 0 2px 5px #0003;
}

.badge_label.cyan {
    background-color: var(--cyan-01);
}

.badge_label.oramge {
    background-color: var(--org-02);
}

.badge_label.ivoly {
    background-color: var(--ivory);
    color: var(--text);
    margin-top: 2em;
}

.green {
    color: var(--green_text);
    white-space: nowrap;
    font-weight: 500;
}

.cyan_txt {
    color: var(--cyan-text);
    white-space: nowrap;
}

.orange {
    color: var(--org-01);
    white-space: nowrap;
}

.image-5 {
    width: 100%;
}

.card_shadow {
    background-color: var(--cyan-10);
    box-shadow: .5em .5em 0 0 var(--cyan-05);
    border-radius: 1.75em;
    padding: 5em;
}

.pose_02_04 {
    width: 18.75em;
    position: absolute;
    inset: 6em 0% auto auto;
}

.card_shadow_head {
    height: 20em;
    margin-bottom: 2em;
    position: relative;
}

.text-block-5 {
    color: var(--cyan-text);
    margin-bottom: .25em;
    font-size: 2.5em;
    line-height: 1.44;
    display: inline-block;
}

.text_large {
    font-size: 1.75em;
}

.img_02_03 {
    width: 20em;
    position: absolute;
    inset: 0% 0% auto auto;
}

.list {
    grid-column-gap: .5em;
    grid-row-gap: .5em;
    color: var(--cyan-text);
    text-align: left;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    margin-top: 1em;
    margin-bottom: 0;
    padding-left: 2em;
    font-size: 1.25em;
    display: flex;
}

.list_text {
    color: var(--text);
}

.banner_wrap {
    justify-content: center;
    align-items: center;
    display: flex;
}

.banner_wrap.mb_3 {
    margin-bottom: 3em;
}

.banner_02_01 {
    width: 30em;
}

.day_schedule {
    grid-column-gap: 3em;
    grid-row-gap: 3em;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
    position: relative;
}

.day_schedule_head {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    justify-content: flex-start;
    align-items: center;
    margin-bottom: 1em;
    display: flex;
}

.day_schedule_time {
    color: var(--cyan-text);
    font-size: 2.5em;
    font-weight: 500;
    line-height: 1.44;
}

.day_schedule_event {
    color: var(--black);
    font-size: 2em;
    font-weight: 500;
    line-height: 1.44;
}

.day_schedule_item {
    border-left: .5em solid var(--cyan-01);
    max-width: 70%;
    padding-left: 1.5em;
    position: relative;
}

.day_schedule_text {
    max-width: 24em;
    font-size: 1.25em;
}

.fukidashi_04_01 {
    width: 13.25em;
    position: absolute;
    inset: auto -13em 3em auto;
}

.fukidashi_04_02 {
    width: 13.75em;
    position: absolute;
    inset: auto -8em 2em auto;
}

.fukidashi_04_03 {
    width: 12em;
    position: absolute;
    inset: auto 0% 5em auto;
}

.pose_04_01 {
    width: 22.8em;
    position: absolute;
    inset: 0% 0% auto auto;
}

.img_04_01 {
    width: 13em;
    position: absolute;
    inset: 24em 16em auto auto;
}

.illust_04_01 {
    width: 21em;
    position: absolute;
    inset: 42em 0% auto auto;
}

.year_schedule {
    grid-column-gap: 2.5em;
    grid-row-gap: 4em;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr 1fr;
    grid-auto-columns: 1fr;
    justify-content: center;
    align-items: center;
    margin-bottom: 2.5em;
    padding-left: 3em;
    padding-right: 3em;
    display: grid;
    position: relative;
}

.year_schedule_item {
    grid-column-gap: .5em;
    grid-row-gap: .5em;
    flex-flow: row;
    flex: 1;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
}

.year_schedule_month {
    background-image: url('../images/illust_04_02.svg');
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    flex: none;
    justify-content: center;
    align-items: center;
    width: 7.25em;
    height: 7.25em;
    display: flex;
}

.year_schedule_month_text {
    margin-top: .5em;
    font-size: 1.75em;
    font-weight: 500;
}

.year_schedule_month_date {
    padding-top: .5em;
    font-size: 1.125em;
}

.pose_04_02 {
    width: 24.75em;
    position: absolute;
    inset: auto 0% -8em auto;
}

.img_04_02 {
    padding: 3em;
}

.seifuku_flex {
    margin-bottom: 3em;
    display: flex;
}

.seifuku_flex.mental {
    grid-column-gap: 2.5em;
    grid-row-gap: 2.5em;
    justify-content: center;
    align-items: center;
}

.seifuku_flex_item {
    flex: 1;
}

.pose_04_03 {
    width: 40em;
}

.seifuku_flex_sub {
    justify-content: center;
    align-items: flex-end;
    display: flex;
}

.pose_04_04 {
    width: 16em;
}

.illust_04_03 {
    margin-bottom: 1em;
}

.blue_label {
    color: var(--blue);
    font-weight: 500;
}

.seifuku_flex_alt {
    grid-column-gap: 2.5em;
    grid-row-gap: 2.5em;
    margin-bottom: 3em;
    display: flex;
}

.seifuku_flex_alt_item {
    background-color: var(--cyan-10);
    border-radius: 2em 2em 0;
    flex-flow: column;
    flex: 1;
    justify-content: flex-start;
    align-items: flex-start;
    padding: 2em;
    display: block;
    box-shadow: 0 2px 5px #0003;
}

.seifuku_flex_alt_title {
    color: var(--blue);
    margin-bottom: .5em;
    font-size: 1.25em;
    font-weight: 500;
    line-height: 1.44;
}

.seifuku_flex_alt_img {
    text-align: center;
    object-fit: contain;
    object-position: 50% 0%;
    width: 100%;
    height: 12em;
    margin: -5em auto 1em;
    display: block;
}

.image-6 {
    width: 100%;
    max-width: 1024px;
}

.facility_img {
    aspect-ratio: 3 / 2;
    object-fit: cover;
    border-radius: 1.5em;
    width: 100%;
    margin-bottom: .5em;
}

.facility_cap {
    font-size: 1.25em;
    line-height: 1.44;
}

.pose_04_05 {
    width: 12.5em;
}

.text-block-6 {
    font-size: 1.5em;
}

.break {
    width: 0;
    display: block;
}

.img_10_01 {
    width: 100%;
}

.page_10_flex_01 {
    grid-column-gap: 2.5em;
    grid-row-gap: 2.5em;
    background-color: var(--yellow-09);
    border-radius: 1.5em 1.5em 0;
    margin-bottom: 3em;
    padding: 2.5em;
    display: flex;
    box-shadow: 0 2px 5px #0003;
}

.page_10_flex_01.ivory {
    background-color: var(--ivory);
    box-shadow: none;
}

.page_10_flex_01_item {
    flex: 1;
}

.page_10_flex_01_item.page_10_flex_01_item--alt {
    flex: none;
}

.page_10_flex_01_item.page_10_flex_01_item--alt.valign_middle {
    justify-content: flex-start;
    align-items: center;
    display: flex;
}

.img_10_02 {
    width: 23em;
}

.flex_wrap {
    flex-flow: column;
    justify-content: center;
    align-items: center;
    margin-bottom: 3em;
    display: flex;
}

.image-7 {
    width: 100%;
}

.label_20 {
    color: var(--cyan-text);
    font-size: 1.25em;
    font-weight: 500;
}

.taiken_sub_cat {
    letter-spacing: 0;
    font-size: .875em;
}

.faq_flex {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
    flex-flow: column;
    margin-bottom: 3em;
    display: flex;
}

.faq_flex_item {
    border-bottom: 1px dashed var(--text);
    padding-bottom: 2em;
}

.faq_flex_item.last {
    border-bottom-style: none;
}

.faq_flex_q {
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
}

.faq_flex_q_label {
    color: var(--blue);
    flex: none;
    width: 2em;
    font-family: Playwrite DE Grund, sans-serif;
    font-size: 1.75em;
    line-height: 1.2;
}

.faq_flex_q_label.answer {
    color: var(--org-01);
}

.faq_flex_q_text {
    color: var(--cyan-text);
    margin-top: 0;
    margin-bottom: 0;
    font-size: 1.5em;
    font-weight: 500;
    line-height: 1.44;
}

.faq_flex_a {
    flex-flow: row;
    justify-content: flex-start;
    align-items: flex-start;
    margin-top: 2em;
    display: flex;
}

.faq_flex_a_text {
    margin-bottom: 0;
    font-size: 1.25em;
}

.sec_title_d {
    justify-content: center;
    align-items: center;
    display: flex;
}

.sec_title_d_text {
    border-top: 3px solid var(--cyan-05);
    border-bottom: 3px solid var(--cyan-05);
    text-align: center;
    margin-top: 0;
    margin-bottom: 1em;
    padding-top: .25em;
    padding-bottom: .25em;
    font-size: 2.5em;
    font-weight: 500;
    line-height: 1.44;
}

.page_08_flex {
    grid-column-gap: 2.5em;
    grid-row-gap: 2.5em;
    justify-content: center;
    align-items: center;
    max-width: 65em;
    margin-left: auto;
    margin-right: auto;
    display: flex;
}

.illust_08_01 {
    width: 17em;
}

.link {
    text-decoration: none;
    transition: color .2s;
}

.link:hover {
    color: var(--blue);
}

.page_08_card {
    border: 3px solid var(--blue);
    background-color: var(--white);
    border-radius: 1.5em;
    padding: 2em;
}

.page_08_card.mb_3 {
    margin-bottom: 3em;
}

.link-2 {
    text-decoration: none;
    transition: color .2s;
}

.link-2:hover {
    color: var(--blue);
    text-decoration: underline;
}

.access_head_flex {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    justify-content: center;
    align-items: flex-end;
    margin-bottom: 0;
    display: flex;
}

.illust_09_01 {
    width: 11.25em;
}

.illust_09_02 {
    width: 13.75em;
}

.illust_09_03 {
    width: 11.25em;
}

.page_09_flex {
    grid-column-gap: 3em;
    grid-row-gap: 3em;
    display: flex;
}

.page_09_flex.mb_3 {
    margin-bottom: 3em;
}

.page_09_flex_item {
    flex: 1;
    position: relative;
}

.page_09_flex_item.page_09_flex_item_alt {
    flex: none;
}

.illust_09_04 {
    width: 100%;
}

.illust_09_05 {
    width: 100%;
    max-width: 30em;
}

.pose_08_01 {
    width: 38%;
    position: absolute;
    inset: auto auto -17% -5%;
}

.illust_08_04 {
    width: 100%;
    max-width: 65em;
    margin-left: auto;
    margin-right: auto;
    display: block;
}

.illust_08_05 {
    width: 100%;
}

.page_11_grid {
    grid-column-gap: 2.5em;
    grid-row-gap: 7em;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr;
    grid-auto-columns: 1fr;
    margin-top: 6em;
    margin-bottom: 3em;
    display: grid;
}

.page_11_grid_item {
    background-color: var(--cyan-10);
    border-radius: 2em 2em 0;
    min-height: 10em;
    padding: 2em;
    position: relative;
    box-shadow: 0 2px 5px #0003;
}

.page_11_grid_item.bk_orange {
    background-color: var(--org-10);
}

.page_11_grid_item.bk_green {
    background-color: var(--green-10);
}

.page_11_grid_item.bk_ivoly {
    background-color: var(--ivory);
}

.page_11_grid_item.bk_yellow {
    background-color: var(--yellow-10);
}

.page_11_grid_item.bk_white {
    background-color: var(--white);
}

.voice_-major {
    font-size: 1.125em;
    font-weight: 500;
    line-height: 1.44;
}

.voice_name {
    margin-bottom: .25px;
    font-size: 1.75em;
    font-weight: 500;
    line-height: 1.44;
}

.voice_name.p_voice {
    font-size: 1.25em;
}

.voice_hs {
    line-height: 1.44;
}

.voice_lead {
    color: var(--blue);
    margin-top: 2em;
    margin-bottom: .75em;
    font-size: 1.5em;
    font-weight: 500;
    line-height: 1.44;
}

.voice_lead.p_voice {
    margin-top: 3em;
}

.voice_img {
    width: 13em;
    margin-top: -5em;
    position: absolute;
    inset: 0% 0% auto auto;
}

.voice_text {
    margin-bottom: 0;
    font-size: 1.25em;
}

.voice_grade {
    background-color: var(--blue);
    color: var(--white);
    border-radius: 3em;
    justify-content: center;
    align-items: center;
    width: 3.5em;
    height: 3.5em;
    font-weight: 500;
    display: flex;
    position: absolute;
    inset: auto 1em 1em auto;
    box-shadow: 0 2px 5px #0003;
}

.voice_img_alt {
    width: 11em;
    position: absolute;
    inset: -3em 2em auto auto;
}

.page_12_flex {
    grid-column-gap: 2.5em;
    grid-row-gap: 2.5em;
    max-width: 60em;
    margin-left: auto;
    margin-right: auto;
    display: flex;
}

.page_12_flex_item {
    flex: 1;
}

.page_12_flex_item.page_12_flex_item_alt {
    flex: 0 auto;
}

.pl_12_01 {
    width: 18em;
    margin-bottom: 1em;
}

.pl_12_01_text {
    width: 18em;
    padding-left: 1em;
    line-height: 1.44;
}

.ridi_name {
    font-size: 1.5em;
}

.page_12_card {
    background-color: var(--white);
    border-radius: 2em 2em 0;
    max-width: 50em;
    margin-bottom: 2em;
    margin-left: auto;
    margin-right: auto;
    padding: 3em;
    display: block;
    box-shadow: 0 2px 5px #0003;
}

.page_12_card_text {
    color: var(--blue);
    text-align: center;
    font-size: 2em;
    font-weight: 500;
    line-height: 1.44;
}

.page_12_grid {
    grid-column-gap: 2.5em;
    grid-row-gap: 2.5em;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr 1fr;
    grid-auto-columns: 1fr;
    margin-top: 3em;
    margin-bottom: 3em;
    display: grid;
}

.page_12_grid_img {
    width: 100%;
}

.page_12_grid_cap {
    grid-column-gap: .75em;
    grid-row-gap: .75em;
    justify-content: flex-start;
    align-items: center;
    height: 2.5em;
    padding-left: .5em;
    display: flex;
}

.page_12_grid_cap_icon {
    width: 2.5em;
}

.page_12_grid_cap_label {
    font-size: 1.25em;
    font-weight: 500;
    line-height: 1.44;
}

.page_12_history {
    flex-flow: column;
    width: 100%;
    max-width: 60em;
    margin: 5em auto 3em;
    display: flex;
}

.page_12_history_item {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
    border-top: 4px solid var(--green-03);
    padding-top: 1em;
    padding-bottom: 2em;
    display: flex;
}

.page_12_history_head {
    flex-flow: column;
    flex: none;
    justify-content: flex-start;
    align-items: center;
    width: 10em;
    display: flex;
}

.history_year {
    color: var(--cyan-text);
    font-size: 2.5em;
    font-weight: 500;
    line-height: 1.44;
}

.history_text {
    margin-bottom: 0;
    font-size: 1.25em;
}

.page_06_flex {
    grid-column-gap: 2.5em;
    grid-row-gap: 2.5em;
    margin-top: 4em;
    margin-bottom: 2em;
    display: flex;
}

.page_06_flex_item {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    background-color: var(--white);
    border-radius: 2em 2em 0;
    flex-flow: column;
    flex: 1;
    justify-content: center;
    align-items: center;
    padding: 2em;
    display: flex;
    box-shadow: 0 2px 5px #0003;
}

.page_06_flex_text {
    text-align: center;
    font-size: 1.5em;
    font-weight: 500;
    line-height: 1.44;
}

.illust_06_01 {
    width: 100%;
    margin-bottom: 1em;
}

.blanc_cell {
    background-image: url('../images/table_blanc_line.svg');
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
}

.blanc_cel {
    background-color: #0000000a;
}

.text_underline {
    border-bottom: 2px solid var(--blue);
}

.gakuhi_label {
    color: var(--cyan-text);
    margin-top: 2em;
    margin-bottom: 1em;
    font-size: 1.5em;
}

.dd_menu_item {
    background-color: var(--white);
    text-align: center;
    padding: 1em;
    font-size: 1.125em;
    font-weight: 500;
    line-height: 1.44;
    transition: background-color .2s;
}

.dd_menu_item:hover {
    background-color: var(--cyan-09);
}

.dropdown-list {
    width: 100%;
}

.dropdown-list.w--open {
    width: auto;
}

.dd_nav_wrap {
    position: relative;
}

.oda_pagenation {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    justify-content: center;
    align-items: center;
    margin-top: 8em;
    margin-bottom: 0;
    display: flex;
}

.pg_arrow_link {
    grid-column-gap: 0em;
    grid-row-gap: 0em;
    cursor: pointer;
    justify-content: center;
    align-items: center;
    margin-left: .5em;
    margin-right: .5em;
    transition: transform .2s;
    display: flex;
}

.pg_arrow_link:hover {
    transform: scale(1.05);
}

.pg_arrow.pg_prev {
    width: 3em;
    height: 3em;
    transform: rotate(180deg);
}

.pg_arrow_text {
    color: var(--black);
    font-size: 1.25em;
    font-weight: 500;
    line-height: 1.44;
    white-space: nowrap;
}

.pg_num {
    justify-content: center;
    align-items: center;
    width: 3em;
    height: 3em;
    display: flex;
}

.pg_item {
    background-color: var(--white);
    color: var(--black);
    border-radius: 1.5em;
    justify-content: center;
    align-items: center;
    width: 3em;
    height: 3em;
    transition: transform .2s;
    display: flex;
}

.pg_item:hover {
    transform: scale(1.15);
}

.pg_item.current {
    background-color: var(--cyan-01);
    color: var(--white);
}

.pg_item_text {
    font-size: 1.25em;
    font-weight: 500;
}

.heading {
    position: absolute;
    inset: 0% auto auto 0%;
}

.single_news_taitle {
    background-color: #fff0;
    flex-flow: column;
    justify-content: flex-start;
    align-items: center;
    margin-top: 0;
    margin-bottom: 0;
    padding: 1em 1em 2.5em;
    font-size: 2em;
    font-weight: 500;
    line-height: 1.44;
    display: block;
    position: absolute;
    inset: auto 0% 0%;
}

.single_news_title_bk {
    background-color: #ffffffe6;
}

.single_news_date {
    margin-bottom: 3em;
    padding-left: 2.5em;
    font-size: 1.25em;
    font-weight: 500;
}

.single_cantent {
    border-bottom: 1px solid var(--text);
    padding-bottom: 2.5em;
}

.single_cantent h1 {
    color: var(--cyan-text);
    margin-top: 1em;
    margin-bottom: .5em;
    font-size: 3em;
    line-height: 1.44;
}

.single_cantent p {
    margin-bottom: 2em;
    font-size: 1.25em;
}

.single_cantent h2 {
    color: var(--cyan-text);
    margin-top: 1em;
    margin-bottom: .5em;
    font-size: 2.5em;
    line-height: 1.44;
}

.single_cantent h3 {
    color: var(--cyan-text);
    margin-top: 1em;
    margin-bottom: .75em;
    font-size: 2em;
    line-height: 1.44;
}

.single_cantent h4 {
    color: var(--cyan-text);
    margin-top: 1em;
    margin-bottom: 1em;
    font-size: 1.875em;
    line-height: 1.44;
}

.single_cantent h5 {
    color: var(--cyan-text);
    margin-top: 1em;
    margin-bottom: 1em;
    font-size: 1.75em;
    line-height: 1.44;
}

.single_cantent h6 {
    color: var(--cyan-text);
    margin-top: 1em;
    margin-bottom: 1em;
    font-size: 1.5em;
    line-height: 1.44;
}

.single_cantent blockquote {
    border-left-width: 4px;
    border-left-color: var(--cyan-01);
    font-size: 1.5em;
    line-height: 1.88;
}

.single_cantent ol,
.single_cantent ul {
    font-size: 1.25em;
}

.single_cantent a {
    transition: color .2s;
}

.single_cantent a:hover {
    color: var(--blue);
    -webkit-text-stroke-color: var(--blue);
}

.single_cantent li,
.list-item {
    margin-bottom: .5em;
}

@media screen and (max-width: 991px) {
    .header {
        z-index: 1;
        position: relative;
    }

    .header_utility {
        margin-right: 4em;
    }

    .header_utility.menu {
        grid-column-gap: 2em;
        grid-row-gap: 2em;
        flex-flow: column;
        margin-right: 0;
        font-size: 1.125em;
    }

    .header_bottom {
        padding: 0;
    }

    .header_nav {
        grid-column-gap: 2.5em;
        grid-row-gap: 2.5em;
        justify-content: flex-start;
        align-items: center;
        overflow: visible;
    }

    .nav_item {
        white-space: nowrap;
        flex-flow: row;
        flex: none;
        margin-bottom: 0;
    }

    .nav_item.last {
        padding-right: 3em;
    }

    .nav_item.menu {
        flex: 1;
        justify-content: flex-start;
        align-items: center;
        font-size: 1.25em;
    }

    .nav_item.menu:hover {
        transform: translate(2%);
    }

    .top_hero.single-item {
        width: 96.5%;
    }

    .header_utility_link_button_wrap {
        z-index: 8;
        font-size: 1.25em;
        position: fixed;
        inset: auto auto 2em 2em;
    }

    .header_utility_link_button_wrap.menu {
        position: static;
    }

    .header_nav_wrap {
        width: 100%;
        padding-left: 3em;
        padding-right: 3em;
        overflow: scroll;
    }

    .drawer_menu_button {
        z-index: 15;
        background-image: url('../images/icon_menu.svg');
        background-position: 50%;
        background-repeat: no-repeat;
        background-size: contain;
        justify-content: center;
        align-items: center;
        width: 4em;
        height: 4em;
        transition: transform .2s;
        position: fixed;
        inset: 1.5em 1.5em auto auto;
    }

    .drawer_menu_button:hover {
        transform: scale(1.05);
    }

    .drawer_menu_button.active {
        background-image: url('../images/icon_close.svg');
        background-position: 50%;
        background-size: auto;
    }

    .menu_bar {
        width: 3em;
        height: 4em;
        position: absolute;
    }

    .menu_bar.alt {
        width: 3em;
        transition-property: none;
    }

    .drawer_menu_button_inner {
        justify-content: center;
        align-items: center;
        width: 4em;
        height: 4em;
        display: flex;
        position: relative;
    }

    .drawer_menu {
        z-index: 14;
        background-color: var(--cyan-10);
        width: 100%;
        max-width: 375px;
        padding: 2.25em;
        transition: transform .2s;
        display: block;
        position: fixed;
        inset: 0% 0% 0% auto;
        overflow: scroll;
        transform: translate(100%);
    }

    .drawer_menu.active {
        padding: 0;
        display: block;
        position: fixed;
        transform: translate(0%);
        box-shadow: 0 2px 5px #0003;
    }

    .drawer_shade {
        z-index: 13;
        opacity: .8;
        background-color: #fff;
        display: none;
        position: fixed;
        inset: 0%;
    }

    .drawer_shade.active {
        display: block;
    }

    .menu_wrap {
        z-index: 999;
        display: block;
        position: static;
        inset: 0%;
    }

    .image-2 {
        position: absolute;
    }

    .menu_text {
        display: none;
    }

    .menu_nav {
        border-bottom: 1px solid var(--text);
        flex-flow: column;
        margin-bottom: 0;
        padding: 6em 2.25em 2.25em;
        display: flex;
    }

    .menu_nav.sub {
        grid-column-gap: 1.5em;
        grid-row-gap: 1.5em;
        padding-top: 2.25em;
    }

    .menu_nav_item {
        justify-content: space-between;
        align-items: center;
        font-size: .875em;
        display: flex;
    }

    .menu_nav_link {
        color: var(--text);
        justify-content: center;
        align-items: center;
        width: 100%;
        padding-top: 1em;
        padding-bottom: 1em;
        font-size: 1.125em;
        font-weight: 500;
        text-decoration: none;
        display: flex;
    }

    .menu_icon {
        width: 1.5em;
    }

    .menu_utility {
        background-color: var(--white);
        justify-content: center;
        align-items: center;
        min-height: 15em;
        padding: 2.25em;
        display: flex;
    }

    .header_utility_link_wrap {
        grid-column-gap: 1.5em;
        grid-row-gap: 1.5em;
        justify-content: center;
        align-items: center;
        display: flex;
    }

    .menu_footer {
        grid-column-gap: 1em;
        grid-row-gap: 1em;
        flex-flow: column;
        justify-content: flex-start;
        align-items: flex-start;
        padding: 2.25em 2.25em 5em;
        display: flex;
    }

    .menu_logo {
        height: 3em;
    }

    .menu_sns_wrap {
        grid-column-gap: 1em;
        grid-row-gap: 1em;
        justify-content: flex-start;
        align-items: center;
        display: flex;
    }

    .menu_sns_icon {
        width: 2.5em;
    }

    .content {
        position: relative;
    }

    .lead_illust_bk {
        height: 40em;
    }

    .lead_flex {
        flex-flow: column-reverse;
        padding-bottom: 2em;
    }

    .lead_flex_item {
        height: auto;
        padding: 2em 5em;
    }

    .lead_flex_item.left {
        height: 32em;
    }

    .news_flex {
        flex-flow: column;
        justify-content: center;
        align-items: center;
    }

    .news_sidebar {
        width: 45em;
    }

    .news_card_cat.single.cat_02 {
        bottom: 1em;
        left: 1em;
    }

    .news_sidebar_inner {
        flex-flow: row;
        flex: 1;
    }

    .news_sidebar_inner.alt {
        flex-flow: column;
        flex: 1;
    }

    .event_list.page_taiken {
        grid-template-columns: 1fr 1fr;
    }

    .event_item_header {
        height: 18em;
    }

    .event_item_year {
        margin-bottom: -.5em;
    }

    .footer_nav {
        padding-left: 0;
        padding-right: 0;
        overflow: hidden;
    }

    .footer_nav_list {
        justify-content: flex-start;
        align-items: center;
        width: 100%;
        margin-left: 0;
        margin-right: 0;
        padding-left: 3em;
        padding-right: 3em;
        font-size: 1em;
        overflow: scroll;
    }

    .footer_nav_link {
        white-space: nowrap;
    }

    .st_image_footer {
        bottom: -4em;
    }

    .page_head {
        height: 25.25em;
    }

    .page_head_img {
        height: 24em;
    }

    .page_title {
        padding-left: 2em;
        padding-right: 2em;
        font-size: .875em;
    }

    .card_topic_flex {
        grid-column-gap: 2.5em;
        grid-row-gap: 6em;
        flex-flow: wrap;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }

    .card_topic_flex.col_2 {
        width: 100%;
    }

    .card {
        min-width: 23em;
        max-width: 23em;
    }

    .card.green {
        max-width: 22em;
    }

    .card.line_orange,
    .card.line_green,
    .card.gray,
    .card.line_yellow.mt_3.mb_3.page_02_bottom_content {
        min-width: auto;
        max-width: none;
    }

    .section_lead.label {
        text-align: left;
    }

    .section_text.large.bule.mt_2 {
        margin-top: 2em;
    }

    .section_text.label {
        text-align: left;
    }

    .illust_03_03 {
        width: 70%;
    }

    .image-4 {
        width: 25%;
    }

    .page_03_shikaku_flex {
        grid-column-gap: 15em;
        grid-row-gap: 15em;
    }

    .card_03_shikaku_label_wrap {
        width: 75%;
    }

    .illust_03_05 {
        width: 24em;
    }

    .img_03_10 {
        width: 10em;
        top: 0;
    }

    .illust_03_06 {
        width: 7em;
        right: 5em;
    }

    .illust_03_06.illust_03_06_alt {
        top: 0;
        right: -1.5em;
    }

    .page_02_card.line_cyan {
        flex-flow: column;
        padding-top: 2em;
        padding-bottom: 2em;
    }

    .page_02_card_inner {
        padding: 0;
    }

    .card_shadow {
        padding: 3em;
    }

    .pose_02_04 {
        width: 17em;
        top: 8em;
    }

    .card_shadow_head {
        height: 16em;
    }

    .img_02_03 {
        width: 15em;
    }

    .day_schedule {
        font-size: .875em;
    }

    .year_schedule {
        grid-column-gap: 2em;
        place-items: start stretch;
    }

    .year_schedule_month {
        font-size: .875em;
    }

    .pose_04_02 {
        width: 20em;
        bottom: -5em;
        right: -3em;
    }

    .pose_04_03 {
        width: 50em;
    }

    .pose_04_04 {
        width: 45%;
    }

    .blue_label {
        line-height: 1.44;
    }

    .seifuku_flex_alt {
        flex-flow: wrap;
        justify-content: center;
        align-items: stretch;
    }

    .seifuku_flex_alt_item {
        flex: 0 40%;
    }

    .page_09_flex {
        flex-flow: column;
        justify-content: center;
        align-items: flex-start;
        max-width: 42em;
        margin-left: auto;
        margin-right: auto;
    }

    .page_09_flex_item.page_09_flex_item_alt {
        flex-flow: column;
        flex: 1;
        justify-content: center;
        align-items: center;
        width: 100%;
    }

    .illust_09_05 {
        max-width: none;
        margin-left: auto;
        margin-right: auto;
        display: block;
    }

    .voice_img_alt {
        right: 1em;
    }

    .page_12_grid {
        grid-column-gap: 2em;
        grid-row-gap: 2em;
    }

    .dd_nav_wrap {
        flex: none;
    }

    .oda_pagenation {
        grid-column-gap: .75em;
        grid-row-gap: .75em;
        flex-flow: wrap;
        margin-bottom: 0;
    }

    .pg_arrow_text {
        white-space: nowrap;
    }

    .pg_item,
    .pg_item.current {
        flex: none;
    }

    .single_news_taitle {
        padding: .5em .5em 2.5em;
        line-height: 1.4;
    }
}

@media screen and (max-width: 767px) {
    .schook_logo {
        display: none;
    }

    .header_utility {
        grid-column-gap: .5em;
        grid-row-gap: .5em;
        margin-right: 4em;
        font-size: 1.125em;
    }

    .header_utility_icon {
        width: 2.5em;
        height: 2.5em;
    }

    .header_utility_text {
        display: none;
    }

    .header_utility_text.alt,
    .header_utility_text.menu {
        display: block;
    }

    .header_utility_link_button {
        font-size: 1.125em;
    }

    .header_top {
        padding-left: 2em;
        padding-right: 2em;
    }

    .nav_item.last {
        padding-right: 2em;
    }

    .nav_item.menu {
        font-size: 1.125em;
    }

    .top_hero.single-item {
        display: none;
    }

    .top_hero.single-item.sp {
        aspect-ratio: 1 / 1.2;
        display: block;
    }

    .hero_item_img.sp {
        aspect-ratio: 1 / 1.2;
        display: inline-block;
    }

    .header_utility_link_button_wrap {
        z-index: 8;
        font-size: 1em;
        bottom: 2em;
        right: 2em;
    }

    .nav_item_text {
        font-size: 1.125em;
    }

    .header_nav_wrap {
        padding-left: 2em;
        padding-right: 2em;
    }

    .menu_nav_item {
        font-size: 1em;
    }

    .menu_utility {
        border-bottom: 1px solid var(--text);
    }

    .menu_footer {
        padding: 2.25em 2.25em 5em;
    }

    .lead_illust_bk,
    .lead_illust_bk.alt {
        height: 35em;
    }

    .lead_flex_item {
        padding-left: 2em;
        padding-right: 2em;
    }

    .top_news_sec {
        overflow: hidden;
    }

    .news_tab_list,
    .news_sidebar {
        width: 100%;
    }

    .top_sec_title_wrap.alt {
        grid-column-gap: 0em;
        grid-row-gap: 0em;
        flex-flow: column;
        justify-content: flex-start;
        align-items: flex-start;
    }

    .tab_label_text {
        white-space: nowrap;
    }

    .tabs-menu {
        margin-left: -3em;
        margin-right: -3em;
        padding-left: 3em;
        padding-right: 3em;
        overflow: scroll;
    }

    .news_grid {
        grid-column-gap: 2rem;
        grid-row-gap: 2rem;
        grid-template-rows: auto auto;
        grid-template-columns: 1fr 1fr;
        grid-auto-rows: minmax(auto, 1fr);
        place-items: stretch stretch;
    }

    .news_card {
        width: 100%;
    }

    .news_card.dev_temp {
        display: none;
    }

    .news_sidebar_inner {
        width: 100%;
    }

    .news_sidebar_link {
        font-size: 1.125em;
    }

    .news_footer {
        margin-top: 2em;
    }

    .button_link_wrap {
        position: relative;
    }

    .button_link.small {
        font-size: 1em;
    }

    .news_sns_wrap {
        position: relative;
    }

    .st_image {
        z-index: 0;
        width: 12.375em;
    }

    .st_image.st_image_b {
        z-index: 0;
        width: 12.975em;
    }

    .tabs {
        width: 100%;
        max-width: 100%;
    }

    .top_sec_title_wrap_outer {
        grid-column-gap: 1em;
        grid-row-gap: 1em;
        flex-flow: row;
        justify-content: flex-start;
        align-items: center;
    }

    .event_list {
        margin-left: -3em;
        margin-right: -3em;
        padding-left: 3em;
        padding-right: 3em;
    }

    .event_list.page_taiken {
        grid-template-columns: 1fr;
        max-width: 45em;
        margin-left: auto;
        margin-right: auto;
    }

    .brake_ml {
        display: inline-block;
    }

    .footer_body {
        padding-top: 5em;
    }

    .footer_flex {
        flex-flow: column;
    }

    .st_image_footer {
        width: 16em;
        top: auto;
        bottom: 5em;
    }

    .page_head {
        height: 21.25em;
    }

    .page_head_img {
        height: 20em;
    }

    .page_title {
        font-size: .75em;
    }

    .breadcrumbs {
        padding-left: 0;
        padding-right: 0;
    }

    .breadcrumbs_menu {
        padding-left: 3em;
        padding-right: 3em;
        overflow: scroll;
    }

    .breadcrumbs_menu_item {
        white-space: nowrap;
    }

    .section {
        font-size: .875em;
    }

    .section.ivory {
        background-color: var(--ivory);
    }

    .sec_title_a_text {
        text-align: center;
    }

    .card_topic_flex {
        grid-column-gap: 6em;
        grid-row-gap: 6em;
        flex-flow: column;
    }

    .card_topic_flex.col_2 {
        width: 100%;
    }

    .card {
        width: 100%;
        min-width: 25em;
        max-width: 25em;
        margin-left: auto;
        margin-right: auto;
    }

    .sec_title_c_wrap.alt.alt_2 {
        padding-left: 12em;
    }

    .section_text.label {
        width: 65%;
    }

    .section_text.mb_left {
        text-align: left;
    }

    .section_flex {
        grid-row-gap: 5em;
        flex-flow: column;
    }

    .section_flex.alt {
        grid-row-gap: 2.5em;
        margin-bottom: 2.5em;
    }

    .section_flex.alt.facility {
        margin-left: auto;
        margin-right: auto;
        padding-left: 5em;
        padding-right: 5em;
    }

    .section_flex_item {
        width: 100%;
    }

    .flex_box {
        flex-flow: column;
    }

    .flex_box.reverse {
        flex-flow: column-reverse;
    }

    .illust_03_03 {
        width: 100%;
    }

    .image-4 {
        width: 19em;
        margin-bottom: -25em;
        margin-left: auto;
        display: block;
        position: relative;
        bottom: 0;
        left: auto;
        right: 0;
    }

    .table_flex {
        grid-row-gap: 2.5em;
        flex-flow: column;
        margin-bottom: 2.5em;
    }

    .page_03_shikaku_flex {
        grid-column-gap: 12em;
        grid-row-gap: 12em;
        margin-bottom: 2em;
    }

    .pose_03_06 {
        width: 24em;
    }

    .card_03_shikaku_label_wrap {
        width: 85%;
    }

    .card_03_shikaku_label_text {
        font-size: 1.25em;
    }

    .card_03_shikaku_body {
        width: 85%;
    }

    .pose_03_07 {
        right: -1em;
    }

    .icon_head_03_blue {
        width: 7.5em;
        position: absolute;
        inset: 4em auto auto 3em;
    }

    .page_03_shinro {
        grid-column-gap: 1em;
        grid-row-gap: 1em;
        flex-flow: column;
        justify-content: center;
        align-items: center;
        padding: 0;
        display: flex;
    }

    .page_03_shinro_item {
        flex: 1;
    }

    .illust_03_05 {
        width: 30em;
    }

    .page_03_shinro_note {
        display: none;
    }

    .page_03_shinro_note.alt {
        margin-bottom: 3em;
        font-size: 1.25em;
        display: block;
    }

    .page_03_card {
        margin-top: 5em;
    }

    .page_03_card_flex {
        flex-flow: column;
    }

    .page_03_card_flex_div {
        width: 100%;
        height: 1px;
    }

    .illust_03_06 {
        width: 8em;
        right: 7em;
    }

    .illust_03_06.illust_03_06_alt {
        right: 0;
    }

    .pose_02_01 {
        width: 13em;
        right: -5.5em;
    }

    .page_02_card_item_inner {
        padding-bottom: 1em;
        padding-left: 1em;
        padding-right: 1em;
    }

    .card_shadow_head {
        height: 30em;
    }

    .img_02_03 {
        width: 18em;
        inset: auto 0% 0% auto;
    }

    .day_schedule_head {
        grid-column-gap: 0em;
        grid-row-gap: 0em;
        flex-flow: column;
        justify-content: flex-start;
        align-items: flex-start;
    }

    .day_schedule_text {
        max-width: 20em;
    }

    .fukidashi_04_01 {
        bottom: 4.8em;
        right: -8em;
    }

    .fukidashi_04_02 {
        bottom: 5.1em;
        right: 1.3em;
    }

    .fukidashi_04_03 {
        right: 14%;
    }

    .img_04_01 {
        top: 40.5em;
        right: 5.2em;
    }

    .illust_04_01 {
        top: 56.7em;
    }

    .day_schedule_img_wrap {
        font-size: 1.7vw;
    }

    .year_schedule {
        grid-row-gap: 3em;
        grid-template-columns: 1fr 1fr;
        padding-left: 0;
        padding-right: 0;
        font-size: 1em;
    }

    .year_schedule_item.space {
        display: none;
    }

    .pose_04_02 {
        bottom: -23.3em;
    }

    .img_04_02 {
        padding-left: 0;
    }

    .seifuku_flex.mb_brake {
        flex-flow: column;
    }

    .seifuku_flex_sub {
        margin-bottom: 2em;
    }

    .seifuku_flex_alt {
        grid-row-gap: 5em;
    }

    .seifuku_flex_alt_item {
        flex-basis: 45%;
    }

    .img_10_02 {
        width: 16em;
    }

    .overflow_mb {
        width: 100%;
        overflow: scroll;
    }

    .image-7 {
        min-width: 80em;
    }

    .page_11_grid {
        grid-row-gap: 2.5em;
        grid-template-columns: 1fr;
    }

    .voice_img {
        margin-top: 0;
        inset: 0% 0% auto auto;
    }

    .voice_img_alt {
        inset: 1em 2em auto auto;
    }

    .page_12_flex {
        flex-flow: column;
    }

    .page_12_flex_item.page_12_flex_item_alt {
        justify-content: flex-start;
        align-items: center;
        display: flex;
    }

    .page_12_grid {
        grid-template-columns: 1fr 1fr;
    }

    .oda_pagenation {
        flex-flow: wrap;
        margin-top: 5em;
        margin-bottom: 0;
    }

    .single_news_taitle {
        font-size: 1.75em;
    }

    .single_news_date {
        margin-bottom: 2em;
        padding-left: 1.5em;
        font-size: 1.5em;
    }

    .single_cantent {
        font-size: 1.125em;
    }

    .page_06_flex {
        flex-direction: column;
    }
}

@media screen and (max-width: 479px) {
    .header_body {
        margin-top: 1em;
        margin-bottom: 1em;
    }

    .site_logo {
        height: 3.2em;
    }

    .header_utility {
        font-size: 1em;
    }

    .header_utility.menu {
        font-size: 1.25em;
    }

    .header_utility_icon {
        width: 2em;
        height: 2em;
    }

    .header_utility_text.alt {
        display: block;
    }

    .header_top {
        padding-left: 1em;
        padding-right: 1em;
    }

    .header_nav {
        grid-column-gap: 2em;
        grid-row-gap: 2em;
        margin-top: .5em;
        margin-bottom: .5em;
        font-size: 1em;
    }

    .nav_item.last {
        padding-right: 1em;
    }

    .top_hero.single-item.sp {
        width: 95%;
    }

    .header_utility_link_button_wrap {
        z-index: 6;
        right: 1em;
    }

    .header_nav_wrap {
        padding-left: 1em;
        padding-right: 1em;
    }

    .drawer_menu_button {
        z-index: 15;
        width: 3.2em;
        height: 3.2em;
        top: 1em;
        right: 1em;
    }

    .drawer_menu_button.active {
        width: 3em;
        height: 3em;
        top: 1em;
        right: 1em;
    }

    .drawer_menu {
        z-index: 14;
    }

    .drawer_shade {
        z-index: 13;
    }

    .menu_footer {
        padding-bottom: 5em;
    }

    .lead_illust_bk,
    .lead_illust_bk.alt {
        height: 28em;
    }

    .lead_flex {
        padding-left: 2em;
        padding-right: 2em;
    }

    .lead_flex_item.left {
        font-size: .75em;
    }

    .top_sec_title_wrap {
        grid-row-gap: 0em;
        flex-flow: column;
        justify-content: flex-start;
        align-items: flex-start;
        font-size: .875em;
    }

    .news_grid {
        grid-template-columns: 1fr;
    }

    .news_card_img {
        aspect-ratio: auto;
        border-radius: 0;
        max-width: none;
        height: 18em;
    }

    .news_card_img_wrap.single {
        width: auto;
        position: absolute;
        inset: -2em -2em auto;
    }

    .news_sidebar_inner {
        flex-flow: column;
    }

    .news_footer {
        height: 20em;
        margin-top: 0;
    }

    .button_link_text {
        white-space: nowrap;
    }

    .st_image {
        left: -4em;
    }

    .st_image.st_image_b {
        right: -4em;
    }

    .top_sec_title_wrap_outer {
        grid-column-gap: 1em;
        grid-row-gap: 1em;
    }

    .event_list.page_taiken {
        max-width: none;
        margin-left: -3em;
        margin-right: -3em;
        padding-left: 2em;
        padding-right: 2em;
    }

    .event_item {
        width: 25em;
    }

    .st_image_footer {
        width: 14em;
        right: -4em;
    }

    .footer {
        overflow: hidden;
    }

    .image_slider {
        padding-left: 0;
        padding-right: 0;
        position: relative;
    }

    .sl_arrow {
        width: 4em;
        display: none;
        inset: 0% auto 0% 0%;
    }

    .sl_arrow.next {
        width: 4em;
    }

    .page_head {
        height: 13.25em;
    }

    .page_head_img {
        height: 12em;
    }

    .page_title {
        justify-content: flex-start;
        align-items: center;
        padding-left: 1em;
        padding-right: 1em;
        font-size: .625em;
    }

    .page_title_text {
        line-height: 1.2;
    }

    .page_title_text_wrap {
        padding-left: 2em;
        padding-right: 2em;
    }

    .breadcrumbs_menu {
        white-space: nowrap;
    }

    .section {
        font-size: 1em;
    }

    .section.illust_bk {
        background-position: 50% -10%;
        background-size: 300%;
    }

    .section.orange.od_stripe {
        white-space: normal;
    }

    .section.orange.od_stripe.wide {
        color: var(--text);
        white-space: normal;
        padding-left: 1em;
        padding-right: 1em;
    }

    .section.cyan_shade {
        position: relative;
    }

    .sec_title_a {
        font-size: .875em;
    }

    .sec_title_a.orange,
    .sec_title_b {
        font-size: .75em;
    }

    .sec_title_c_wrap.alt {
        background-position: 0 100%;
        background-size: cover;
    }

    .section_lead._03_cal_style {
        width: 90%;
    }

    .section_text.tiny {
        padding-left: 0;
        padding-right: 0;
    }

    .section_text.large.bule {
        margin-top: 2em;
    }

    .section_text.large.bule.label {
        margin-top: 0;
    }

    .section_flex.base {
        grid-row-gap: 2.5em;
    }

    .section_flex.alt.facility {
        padding-left: 0;
        padding-right: 0;
    }

    .flote_label {
        font-size: .875em;
    }

    .image-3 {
        transform: scale(1.25);
    }

    .illust_03_03 {
        width: 100%;
    }

    .image-4 {
        z-index: 0;
        width: 14em;
        margin-bottom: -20em;
        margin-left: auto;
        display: block;
        position: relative;
        top: 2em;
        left: 0;
        right: 0;
    }

    .voice_card {
        min-width: 25em;
        max-width: 25em;
    }

    .page_03_shikaku_flex {
        grid-column-gap: 1.5em;
        grid-row-gap: 1.5em;
        flex-flow: column;
        align-items: stretch;
        margin-top: 0;
        padding-top: 22em;
    }

    .pose_03_06 {
        margin-left: auto;
        margin-right: auto;
        display: block;
        inset: 0% 0% auto;
    }

    .card_03_shikaku {
        padding-top: 12em;
    }

    .card_03_shikaku_label_wrap {
        flex-flow: column;
        justify-content: flex-start;
        align-items: flex-start;
        width: 100%;
    }

    .card_03_shikaku_label_text {
        padding-left: 1.25em;
        padding-right: 1.25em;
    }

    .pose_03_07 {
        width: 7em;
        inset: auto -1.5em -1em auto;
    }

    .page_03_shinro {
        grid-column-gap: 0em;
        grid-row-gap: 0em;
    }

    .illust_03_05 {
        width: 85%;
        margin-left: auto;
        margin-right: auto;
        display: block;
    }

    .table_wrap {
        background-color: var(--white);
        overflow: scroll;
    }

    .table_wrap.table_large {
        font-size: 1.25em;
    }

    .oda_table.scroll {
        min-width: 40em;
    }

    .illust_03_06 {
        right: 4em;
    }

    .illust_03_06.illust_03_06_alt {
        right: -3em;
    }

    .page_02_card {
        flex-flow: column;
    }

    .page_02_card.line_orange {
        padding-top: 2em;
    }

    .page_02_card_item.bk_img {
        border-top-right-radius: 1.75em;
        border-bottom-left-radius: 0;
        flex: 0 auto;
        height: 15em;
    }

    .page_02_card_copy {
        padding: 2em;
    }

    .page_02_card_flex_3 {
        flex-flow: column;
    }

    .page_02_card_item_inner {
        padding-top: 1em;
        padding-bottom: 0;
    }

    .pose_02_02 {
        width: 11em;
        right: -2em;
    }

    .illust_02_05 {
        display: none;
    }

    .illust_02_05.alt {
        display: block;
    }

    .cyan_txt.alt {
        white-space: normal;
    }

    .card_shadow {
        padding: 2em;
    }

    .pose_02_04 {
        width: 14em;
        top: 8em;
        right: -2em;
    }

    .card_shadow_head {
        height: auto;
    }

    .text-block-5 {
        font-size: 1.75em;
    }

    .img_02_03 {
        width: 100%;
        margin-top: 1em;
        margin-left: auto;
        display: block;
        position: relative;
    }

    .day_schedule_event {
        line-height: 1.44;
    }

    .day_schedule_item {
        max-width: 75%;
    }

    .day_schedule_text {
        max-width: none;
    }

    .fukidashi_04_01 {
        inset: 11% -58% auto auto;
    }

    .fukidashi_04_02 {
        inset: 0% -18% auto auto;
    }

    .fukidashi_04_03 {
        inset: 0% 0% auto auto;
    }

    .pose_04_01 {
        top: 25%;
        right: -7%;
    }

    .img_04_01,
    .illust_04_01 {
        display: none;
    }

    .year_schedule {
        z-index: 2;
        grid-column-gap: 1em;
        grid-row-gap: 1em;
        grid-template-columns: 1fr;
        margin-bottom: 0;
        padding-bottom: 23em;
        font-size: 1.125em;
    }

    .pose_04_02 {
        z-index: 1;
        inset: auto 0% 0% auto;
    }

    .img_04_02 {
        display: none;
    }

    .seifuku_flex.mental {
        grid-column-gap: 0em;
        grid-row-gap: 0em;
    }

    .seifuku_flex_alt {
        grid-column-gap: 5em;
        grid-row-gap: 5em;
        flex-flow: column;
    }

    .seifuku_flex_alt_img {
        height: 18em;
    }

    .text-block-6 {
        font-size: 1.25em;
    }

    .break {
        display: inline-block;
    }

    .page_10_flex_01 {
        grid-column-gap: 1em;
        grid-row-gap: 1em;
        flex-flow: column;
    }

    .img_10_02 {
        width: 100%;
    }

    .page_08_flex {
        flex-flow: column;
    }

    .access_head_flex {
        font-size: .75em;
    }

    .page_11_grid {
        grid-column-gap: 6em;
        grid-row-gap: 6em;
    }

    .voice_img {
        width: 12em;
        top: -5em;
    }

    .voice_img_alt {
        top: -4em;
        right: 1em;
    }

    .page_12_flex_item.page_12_flex_item_alt {
        flex-flow: column;
        justify-content: center;
        align-items: center;
        display: flex;
    }

    .page_12_card {
        font-size: .75em;
    }

    .page_12_grid {
        grid-template-columns: 1fr;
    }

    .page_12_history_item {
        grid-column-gap: .5em;
        grid-row-gap: .5em;
        flex-flow: column;
    }

    .page_12_history_head {
        width: 100%;
    }

    .oda_pagenation {
        margin-bottom: 0;
    }

    .single_news_taitle {
        font-size: 1.5em;
    }

    .single_news_title_bk {
        background-color: #ffffffe6;
    }

    .single_cantent {
        word-break: break-all;
        margin-top: 23em;
        font-size: 1em;
        position: relative;
    }
}

.ex_item_link_wrap:hover .tri_shape {
    transform: translateX(100%);
}

.ex_item_link_wrap:hover .tri_shape.yoko {
    transform: translateX(-100%);
}

/* Typography */
/* Fluid Typography */
/* tool https://websemantics.uk/tools/responsive-font-calculator/ */
/* 14px @ 478px increasing to 16px @ 1600px */
/* 12px @ 478px increasing to 16px @ 1600px */
body {
    font-size: clamp(12px, calc(0.75rem + ((1vw - 4.78px) * 0.3565)), 16px) !important;

    /* Note: The calc base value (0.75rem) MUST be stated in REM to maintain accessibility */
    /* Where: 0.3565 = 100 * font-size_difference / viewport_width_difference */
    /* Safari resize fix */
    min-height: 0vw;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    line-height: 1.44;
    font-weight: bold;
    padding: 0;
    margin-top: 0em;
    margin-bottom: 1em;
}

p {
    margin-bottom: 2em;
}

h1 {
    font-size: 3em;
}

h2 {
    font-size: 2.5em;
}

h3 {
    font-size: 2em;
}

h4 {
    font-size: 1.75em;
}

h5 {
    font-size: 1.5em;
}

h6 {
    font-size: 1.25em;
}

.scrollbar::-webkit-scrollbar,
.table_wrap::-webkit-scrollbar {
    display: none;
}

.image_box:hover .tri_shape {
    transform: translateX(100%);
}

.scrollbar,
.table_wrap {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.scrollbar::-webkit-scrollbar,
.table_wrap::-webkit-scrollbar {
    display: none;
}

.slick-arrow {
    display: none!important;
}

.slick-slide {
    padding-left: .5em;
    padding-right: .5em;
}

.od_stripe {
    background-size: auto auto;
    background-image: repeating-linear-gradient(152deg, transparent, transparent 2em, rgba(255, 255, 255, 0.5) 2em, rgba(255, 255, 255, 0.5) 2.625em );
}

.od_stripe_blue {
    background-size: auto auto;
    background-image: repeating-linear-gradient(152deg, transparent, transparent 2em, #ECF9FB 2em, #ECF9FB 2.625em );
}

/* table */
.oda_table tr {
    border-bottom: 1px solid #4e4e4e;
}

.oda_table td,
.oda_table th {
    border-right: 1px solid #4e4e4e;
    padding: .5em 1em;
    line-height: 1.44;
}

.oda_table.txt_center {
    text-align: center;
}

.oda_table th {
    background-color: #DAF4F7;
    font-weight: normal;
    white-space: nowrap;
}

.oda_table.oda_table_relaxed td,
.oda_table.oda_table_relaxed th {
    padding: 1em 1.25em;
}

.event_title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
}

.single_cantent img {
    display: block;
    margin-top: 2em;
    margin-bottom: 2em;
}

.single_cantent img.aligncenter {
    margin-left: auto;
    margin-right: auto;
}

.single_cantent img.alignright {
    margin-left: auto;
    margin-right: 0;
}

.mce-content-body {
    padding: 2em!important;
}

.event_cat.hogosha {
    background-color: #676bdb!important;
}

.event_cat.taisaku {
    background-color: var(--org-01)!important;
}

.event_cat.gakko {
    background-color: var(--green-01)!important;
}

.event_cat.taiken {
    background-color: var(--cyan-01);
}

.event_cat.taikendoji {
    background-color: var(--cyan-10);
    color: var(--cyan-text);
}

.align_right {
    text-align: right!important;
}

.td_empty {
    background-image: linear-gradient(to right top, transparent calc(50% - 0.5px), #999 50%, #999 calc(50% + 0.5px), transparent calc(50% + 1px));
}

.page_top_link {
    z-index: 9;
    background-color: var(--cyan-01);
    box-shadow: -.25em .25em 0 0 var(--white);
    color: var(--cyan-01);
    background-image: url("../images/icon_next_prev.svg");
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: auto;
    border-radius: 3em;
    width: 5em;
    height: 5em;
    position: fixed;
    inset: auto 2.25em 2.25em auto;
    transform: rotate(-90deg);
}

.sitemap_list {
    width: 100%;
    max-width: 40em;
    margin-bottom: 0;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
    font-size: 1.5em;
    font-weight: 500;
    line-height: 1.44;
    position: relative;
}

.sitemap_list.sub_lisut {
    padding-left: 3em;
    font-size: 1em;
}

.sitemap_list_item {
    border-bottom: 1px dashed var(--text);
    padding-top: .5em;
    padding-bottom: .5em;
}

.sitemap_list_item.last_item {
    border-bottom-style: none;
}

.sitemap_list_link {
    color: var(--text);
    transition: color .2s;
}

.sitemap_list_link:hover {
    color: var(--cyan-text);
}

@media screen and (max-width: 991px){
    .sitemap_list {
        margin-bottom: 0;
        padding-left: 0;
    }

    .sitemap_list.sub_lisut {
        padding-left: 3em;
    }

    .sitemap_list_item {
        border-bottom: 1px dashed var(--text);
        color: var(--text);
        padding-top: .5em;
        padding-bottom: .5em;
    }

    .sitemap_list_item.last_item {
        border-bottom-style: none;
    }

    .sitemap_list_link {
        color: var(--text);
        font-size: 1.5em;
        font-weight: 500;
        line-height: 1.448;
        transition: color .2s;
    }

    .sitemap_list_link:hover {
        color: var(--cyan-text);
    }
}

/* 20250717_BB追加 */
.oda_table.oda_table_relaxed{
	min-width: 870px;
	font-size:18px;
}
.oda_table.zikanwari td,.oda_table.zikanwari th {
	padding: .5em 0;
}

@media screen and (max-width: 767px) {
.oda_table.oda_table_relaxed {
  font-size: 14px;
}
}

.oda_table.oda_table_relaxed td, .oda_table.oda_table_relaxed th{
	padding:1em 0.8em;
}

.mid_table {
width: 720px;
margin: auto;
}
@media screen and (max-width: 767px) {
.mid_table {
margin: auto;
  display: table;
  border: none;
  width: 100% !important;
 min-width: 100% !important;
  text-align: center;
}
.mid_table tr {
  border: none;
}
.mid_table td, .mid_table th {
  border: none;
  display: block;
  border-radius: 10px;
  max-width: 100%;
}
.mid_table th {
  color: #26B7C8;
  font-weight: bold;
}
}

.oda_table.oda_table_relaxed　li:first-child {
  margin-top: 0;
}
.oda_table.oda_table_relaxed li {
    margin-top: 12px;
}


/* 保護者・中学校の先生　うかい亭画像 */
.img_03_10{
 width:15.5em;
}

@media screen and (max-width: 991px) {
.img_03_10{
		width:11.5em;
	}
}

/* 縦スクロールバー　非表示 */
.event_list{
	overflow-x:scroll;
	overflow-y:hidden;
}

.faculty_voice{
	overflow-x:scroll;
	overflow-y:hidden;
	
}
/* イベントタイトル表示修正　*/
.event_title {
	display: block;
  -webkit-line-clamp: 5;
  overflow: inherit;
	font-size: 1.15em;
}

strong{
	color:var(--blue);
}

.news_sidebar_card {
  border: 3px solid var(--yellow-01);
}

.footer_nav_link:hover{
	color:var(--cyan-text);
}

.group_link:hover{
	opacity:0.7;
}

/* トップページ体験満席表示　*/
.button_link.disable {
  text-align: center;
  font-size: large;
	padding:0;
	line-height: 1.3;
}

