@charset "UTF-8";
:root {
    --color-pink: #ff83bc;
    --color-pink-rgb: 255, 131, 188;
    --color-blue: #60a0f9;
    --color-blue-rgb: 96, 160, 249;
    --color-aqua: #79d2f8;
    --color-aqua-rgb: 121, 210, 248;
    --color-green: #afd862;
    --color-green-rgb: 175, 216, 98;
    --color-yellow: #f8c730;
    --color-yellow-rgb: 248, 199, 48;
    --color-orange: #ffa346;
    --color-orange-rgb: 255, 163, 70;
    --color-purple: #df9ae0;
    --color-purple-rgb: 223, 154, 224;
    --color-black: #231815;
    --color-black-rgb: 35, 24, 21;
    --color-beige: #f8f7f4;
    --color-beige-rgb: 248, 247, 244;
    --color-beige-dark: #b2b2a4;
    --color-beige-dark-rgb: 178, 178, 164;
    --color-red: #c30000;
    --color-red-rgb: 195, 0, 0;
    --color-border: #ebebeb;
    --color-border-rgb: 235, 235, 235;
    --color-gray: #f1f0ec;
    --color-gray-rgb: 241, 240, 236;
    --color-gray2: #d3d3d3;
    --color-gray2-rgb: 211, 211, 211;
    --color-gray3: #b9b9b9;
    --color-gray3-rgb: 185, 185, 185;
    --color-dot: #afafaf;
    --color-dot-rgb: 175, 175, 175;
    --color-dot-pale: #d3d3d3;
    --color-dot-pale-rgb: 211, 211, 211;
    --color-disable: #bcbcbc;
    --color-disable-rgb: 188, 188, 188;
    --font-ja: heisei-kaku-gothic-std, sans-serif;
    --font-en: "Urbanist", sans-serif;
    --font-size-xs: calc(var(--torem)*12);
    --font-size-sm: calc(var(--torem)*14);
    --font-size-md: calc(var(--torem)*16);
    --font-size-lg: calc(var(--torem)*18);
    --font-size-xl: calc(var(--torem)*24);
    --line-height: 1.8;
    --space-xs: 1.5625rem;
    --space-sm: 2.1875rem;
    --space-md: 3.125rem;
    --space-lg: 4.375rem;
    --space-xl: 5.3125rem;
    --space-xxl: 7.8125rem;
    --torem: .0625rem;
    --dotted-line-bottom: radial-gradient(circle at .125rem calc(100% - .125rem), var(--color-dot) .09375rem, transparent .125rem) left center /.625rem repeat-x, transparent;
    --dotted-line-top-pale: radial-gradient(circle at .125rem .125rem, var(--color-dot-pale) .0625rem, transparent .125rem) left center /.625rem repeat-x, transparent;
    --dotted-line-bottom-pale: radial-gradient(circle at .125rem calc(100% - .125rem), var(--color-dot-pale) .0625rem, transparent .125rem) left center /.625rem repeat-x, transparent;
    --dotted-line-topbottom-pale: radial-gradient(circle at .125rem .125rem, var(--color-dot-pale) .0625rem, transparent .125rem) left center /.625rem repeat-x, radial-gradient(circle at .125rem calc(100% - .125rem), var(--color-dot-pale) .0625rem, transparent .125rem) left center /.625rem repeat-x, transparent;
    --dotted-line-right-pale: radial-gradient(circle at center center, var(--color-dot-pale) .0625rem, transparent .125rem) right .1875rem center /.625rem .625rem repeat-y, transparent;
    --duration-fast: .3s;
    --duration-normal: .6s;
    --duration-slow: 1.6s;
    --ease-out-sine: cubic-bezier(.61, 1, .88, 1);
    --ease-none: cubic-bezier(.25, .25, .75, .75);
    --ease-power1-in: cubic-bezier(.55, .085, .68, .53);
    --ease-power1-inout: cubic-bezier(.455, .03, .515, .955);
    --ease-power1-out: cubic-bezier(.25, .46, .45, .94);
    --ease-power2-in: cubic-bezier(.55, .055, .675, .19);
    --ease-power2-inout: cubic-bezier(.645, .045, .355, 1);
    --ease-power2-out: cubic-bezier(.215, .61, .355, 1);
    --ease-power3-in: cubic-bezier(.895, .03, .685, .22);
    --ease-power3-inout: cubic-bezier(.77, 0, .175, 1);
    --ease-power3-out: cubic-bezier(.165, .84, .44, 1);
    --ease-power4-in: cubic-bezier(.755, .05, .855, .06);
    --ease-power4-inout: cubic-bezier(.86, 0, .07, 1);
    --ease-power4-out: cubic-bezier(.23, 1, .32, 1);
    --ease-expo-in: cubic-bezier(.95, .05, .795, .035);
    --ease-expo-inout: cubic-bezier(1, 0, 0, 1);
    --ease-expo-out: cubic-bezier(.19, 1, .22, 1);
    --ease-circ-in: cubic-bezier(.6, .04, .98, .335);
    --ease-circ-inout: cubic-bezier(.785, .135, .15, .86);
    --ease-circ-out: cubic-bezier(.075, .82, .165, 1);
    --ease-back-in: cubic-bezier(.6, -.28, .735, .045);
    --ease-back-inout: cubic-bezier(.68, -.55, .265, 1.55);
    --ease-back-out: cubic-bezier(.175, .885, .32, 1.275);
    --ease-bounce-once: cubic-bezier(.68, -.6, .32, 1.6);
    --base-background: #fbfbfb;
    --base-line-height: 1.8;
    --line-height-base: var(--base-line-height);
    --base-color: var(--color-light);
    --base-font-family: var(--font-serif-ja);
    --base-font-weight: 500;
    --base-strong-color: var(--color-gold);
    --base-srcoll-margin: var(--space-2xl);
    --base-letter-spacing: 0em;
    --font-family-base: "Noto Sans JP", sans-serif;
    --font-family-en: var(--font-caslon);
    --font-family-a1-b: "A1 Gothic B", sans-serif;
    --font-weight-thin: 100;
    --font-weight-extraLight: 200;
    --font-weight-light: 300;
    --font-weight-regular: 400;
    --font-weight-medium: 500;
    --font-weight-semiBold: 600;
    --font-weight-bold: 700;
    --font-weight-extraBold: 800;
    --font-weight-black: 900
}

@media (width >=48rem) {
    :root {
        --space-xs: 2.8125rem;
        --space-sm: 3.75rem;
        --space-md: 5.3125rem;
        --space-lg: 7.5rem;
        --space-xl: 10rem;
        --space-xxl: 13.5rem
    }
}

*,
:after,
:before {
    box-sizing: border-box
}

:where(:root) {
    font-family: sans-serif;
    line-height: 1.5;
    text-spacing-trim: trim-start;
    line-break: strict;
    overflow-wrap: anywhere;
    text-autospace: normal;
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    text-size-adjust: 100%;
    scrollbar-gutter: stable;
    -webkit-tap-highlight-color: transparent
}

:where(body) {
    margin: unset;
    min-block-size: 100dvb
}

:where(h1, h2, h3, h4, h5, h6) {
    text-wrap: pretty
}

:where(h1) {
    font-size: 2em;
    margin-block: .67em
}

:where(h2, h3, h4, h5, h6) {
    margin-block: unset
}

:where(search) {
    display: block
}

:where(p, blockquote, figure, pre, address, ul, ol, dl, menu) {
    margin-block: unset
}

:where(blockquote, figure) {
    margin-inline: unset
}

:where(p:lang(en)) {
    text-wrap: pretty
}

:where(address:lang(ja)) {
    font-style: unset
}

:where(ul, ol, menu) {
    list-style-type: "";
    padding-inline-start: unset
}

:where(dt) {
    font-weight: bolder
}

:where(dd) {
    margin-inline-start: unset
}

:where(pre) {
    text-spacing-trim: space-all;
    text-autospace: no-autospace
}

@media print {
    :where(pre) {
        white-space: pre-wrap
    }
}

:where(em:lang(ja)) {
    font-weight: bolder
}

:where(:is(i, cite, em, dfn, var):lang(ja)) {
    font-style: unset
}

:where(code, kbd, samp) {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;
    font-feature-settings: normal;
    font-size: unset;
    font-variation-settings: normal
}

:where(abbr[title]) {
    cursor: help;
    text-decoration-line: underline;
    text-decoration-style: dotted
}

:where(time) {
    text-autospace: no-autospace
}

@media (forced-colors:active) {
    :where(mark) {
        background-color: Highlight;
        color: HighlightText
    }
}

:where(a:-moz-any-link) {
    color: unset;
    text-decoration-line: unset;
    text-decoration-thickness: from-font
}

:where(a:any-link) {
    color: unset;
    text-decoration-line: unset;
    text-decoration-thickness: from-font
}

:where(img, svg, picture, video, canvas, model, audio, iframe, embed, object) {
    block-size: auto;
    max-inline-size: 100%;
    vertical-align: bottom
}

:where(iframe) {
    border: unset
}

:where(table) {
    border-collapse: collapse
}

:where(caption) {
    text-align: unset
}

:where(th) {
    text-align: unset
}

::file-selector-button,
:where(button, input, select, textarea) {
    border: 1px solid;
    border-color: unset;
    border-radius: unset;
    color: unset;
    font: unset;
    letter-spacing: unset;
    text-align: unset
}

:where([type=radio], [type=checkbox]) {
    margin: unset
}

:where([type=file]) {
    border: unset
}

:where([type=search]) {
    -webkit-appearance: textfield
}

@supports (-webkit-touch-callout:none) {
    :where([type=search]) {
        background-color: Canvas
    }
}

:where(:is([type=tel], [type=url], [type=email], [type=number]):not(:-moz-placeholder)) {
    direction: ltr
}

:where(:is([type=tel], [type=url], [type=email], [type=number]):not(:placeholder-shown)) {
    direction: ltr
}

:where(textarea) {
    margin-block: unset;
    resize: block
}

:where(input:not([type=button], [type=submit], [type=reset]), textarea, [contenteditable]) {
    text-autospace: no-autospace
}

::file-selector-button,
:where(button, [type=button], [type=submit], [type=reset]) {
    background-color: unset;
    touch-action: manipulation
}

::file-selector-button,
:where(button, label[for], select, [type=button], [type=submit], [type=reset], [role=tab], [role=button], [role=option]) {
    cursor: pointer
}

:where(fieldset) {
    border: unset;
    margin-inline: unset;
    min-inline-size: 0;
    padding: unset
}

:where(legend) {
    padding-inline: unset
}

:where(progress) {
    vertical-align: unset
}

::-moz-placeholder {
    opacity: unset
}

::placeholder {
    opacity: unset
}

:where(summary) {
    cursor: pointer;
    list-style-type: ""
}

:where(summary)::-webkit-details-marker {
    display: none
}

:where(dialog, [popover]) {
    border: unset;
    overscroll-behavior-block: contain;
    padding: unset
}

:where(dialog:not([open], [popover]), [popover]:not(:popover-open)) {
    display: none !important
}

:where(dialog) {
    max-block-size: unset;
    max-inline-size: unset
}

:where(dialog)::backdrop {
    background-color: #0000004d
}

:where([popover]) {
    margin: unset
}

:where(:focus:not(:focus-visible)) {
    outline: none
}

:where(:focus-visible) {
    outline-offset: 3px
}

[tabindex="-1"]:focus-visible {
    outline: none !important
}

:where(:disabled, [aria-disabled=true]) {
    cursor: default
}

[hidden]:not([hidden=until-found]) {
    display: none !important
}

html {
    font-size: 4.2666666667vw
}

@media (width >=48rem) {
    html {
        font-size: min(1rem, 1.4814814815vw)
    }
}

body {
    color: var(--color-black);
    font-family: var(--font-ja);
    font-weight: 500;
    line-height: 1.75
}

::-moz-placeholder {
    color: rgba(var(--color-black-rgb), .4)
}

::placeholder {
    color: rgba(var(--color-black-rgb), .4)
}

.u-mt-0 {
    margin-top: 0
}

.u-mt-1 {
    margin-top: 1px
}

.u-mt-2 {
    margin-top: 2px
}

.u-mt-3 {
    margin-top: 3px
}

.u-mt-4 {
    margin-top: 4px
}

.u-mt-5 {
    margin-top: 5px
}

.u-mt-6 {
    margin-top: 6px
}

.u-mt-7 {
    margin-top: 7px
}

.u-mt-8 {
    margin-top: 8px
}

.u-mt-9 {
    margin-top: 9px
}

.u-mt-10 {
    margin-top: 10px
}

.u-mt-11 {
    margin-top: 11px
}

.u-mt-12 {
    margin-top: 12px
}

.u-mt-13 {
    margin-top: 13px
}

.u-mt-14 {
    margin-top: 14px
}

.u-mt-15 {
    margin-top: 15px
}

.u-mt-16 {
    margin-top: 16px
}

.u-mt-17 {
    margin-top: 17px
}

.u-mt-18 {
    margin-top: 18px
}

.u-mt-19 {
    margin-top: 19px
}

.u-mt-20 {
    margin-top: 20px
}

.u-mt-21 {
    margin-top: 21px
}

.u-mt-22 {
    margin-top: 22px
}

.u-mt-23 {
    margin-top: 23px
}

.u-mt-24 {
    margin-top: 24px
}

.u-mt-25 {
    margin-top: 25px
}

.u-mt-26 {
    margin-top: 26px
}

.u-mt-27 {
    margin-top: 27px
}

.u-mt-28 {
    margin-top: 28px
}

.u-mt-29 {
    margin-top: 29px
}

.u-mt-30 {
    margin-top: 30px
}

.u-mt-31 {
    margin-top: 31px
}

.u-mt-32 {
    margin-top: 32px
}

.u-mt-33 {
    margin-top: 33px
}

.u-mt-34 {
    margin-top: 34px
}

.u-mt-35 {
    margin-top: 35px
}

.u-mt-36 {
    margin-top: 36px
}

.u-mt-37 {
    margin-top: 37px
}

.u-mt-38 {
    margin-top: 38px
}

.u-mt-39 {
    margin-top: 39px
}

.u-mt-40 {
    margin-top: 40px
}

.u-mt-41 {
    margin-top: 41px
}

.u-mt-42 {
    margin-top: 42px
}

.u-mt-43 {
    margin-top: 43px
}

.u-mt-44 {
    margin-top: 44px
}

.u-mt-45 {
    margin-top: 45px
}

.u-mt-46 {
    margin-top: 46px
}

.u-mt-47 {
    margin-top: 47px
}

.u-mt-48 {
    margin-top: 48px
}

.u-mt-49 {
    margin-top: 49px
}

.u-mt-50 {
    margin-top: 50px
}

.u-color--pink {
    color: var(--color-pink)
}

.u-color--blue {
    color: var(--color-blue)
}

.u-color--aqua {
    color: var(--color-aqua)
}

.u-color--black {
    color: var(--color-black)
}

.u-color--green {
    color: var(--color-green)
}

.u-color--beige {
    color: var(--color-beige)
}

.u-color--beige-dark {
    color: var(--color-beige-dark)
}

.u-bg--beige {
    background-color: var(--color-beige)
}

.u-en {
    font-family: var(--font-en)
}

.u-wbr {
    display: inline-block
}

.u-center {
    text-align: center
}

.u-right {
    text-align: right
}

@media (width >=48rem) {
    .u-display-sm {
        display: none !important
    }
}

@media (width < 48rem) {
    .u-hidden-sm {
        display: none !important
    }
}

@media (width >=64rem) {
    .u-display-md {
        display: none !important
    }
}

@media (width < 64rem) {
    .u-hidden-md {
        display: none !important
    }
}

.l-header {
    align-items: center;
    display: flex;
    justify-content: space-between;
    left: 0;
    padding: .875rem min(.8125rem, .8125vw);
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 100
}

@media (width >=48rem) {
    .l-header {
        gap: min(2.1875rem, 2.1875vw);
        height: 6.25rem;
        padding: 1.5625rem min(3.75rem, 3.75vw)
    }
    .is-header-colored .l-header {
        background-color: var(--color-beige)
    }
}

.is-header-colored .l-header .l-header__menu {
    color: var(--color-black)
}

@media (width < 48rem) {
    .l-header:after {
        background-color: #fff;
        content: "";
        display: block;
        height: 100%;
        left: 0;
        position: absolute;
        width: 100%
    }
}

.l-header__logo {
    position: relative;
    width: 9.25rem;
    z-index: 1
}

@media (width >=48rem) {
    .l-header__logo {
        width: min(12.8125rem, 14.6428571429vw)
    }
}

.l-header__nav {
    align-items: center;
    gap: 1.875rem;
    height: 100%;
    left: 0;
    opacity: 0;
    overflow-y: scroll;
    overscroll-behavior: none;
    position: fixed;
    top: 0;
    visibility: hidden;
    width: 100%
}

@media (width >=48rem) {
    .l-header__nav {
        display: flex;
        gap: min(2.1875rem, 2.1875vw);
        height: auto;
        opacity: 1 !important;
        overflow-y: visible;
        position: relative;
        visibility: visible !important
    }
}

.l-header__menu {
    background-color: #fff;
    color: #fff;
    padding-bottom: 2.5rem;
    padding-top: 5.625rem;
    transition: color var(--duration-fast) var(--ease-power3-out);
    width: 100%
}

@media (width >=48rem) {
    .l-header__menu {
        background-color: transparent;
        display: flex;
        gap: min(1.625rem, 1.625vw);
        justify-content: flex-end;
        padding: 0
    }
}

.l-header__menu-item {
    background: var(--dotted-line-bottom-pale)
}

@media (width >=48rem) {
    .l-header__menu-item {
        background: none
    }
}

.l-header__menu-item:last-child {
    background: none
}

.l-header__menu-item>a,
.l-header__menu-item>span {
    align-items: center;
    color: var(--color-black);
    display: flex;
    font-size: 1.0625rem;
    justify-content: space-between;
    padding: 1.1875rem 1.875rem;
    position: relative
}

@media (width >=48rem) {
    .l-header__menu-item>a,
    .l-header__menu-item>span {
        font-size: min(.9375rem, 1.0714285714vw);
        padding: 0
    }
}

.l-header__menu-item>a:before,
.l-header__menu-item>span:before {
    aspect-ratio: 1;
    background-color: var(--color-pink);
    border-radius: 50%;
    bottom: 0;
    display: block;
    left: 50%;
    opacity: 0;
    position: absolute;
    transform: translate(-50%, 150%);
    width: .5rem
}

@media (width >=48rem) {
    .l-header__menu-item>a:before,
    .l-header__menu-item>span:before {
        content: ""
    }
}

.l-header__menu-item>a:after,
.l-header__menu-item>span:after {
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18.338' height='15.279' viewBox='0 0 18.338 15.279'%3E%3Cpath fill='%2360a0f9' fill-rule='evenodd' d='M10.644.378A1.527 1.527 0 0 1 12.8.521l5.158 6.111a1.53 1.53 0 0 1 0 2.013L12.8 14.757a1.528 1.528 0 0 1-2.3-2.011l2.94-3.58H1.527a1.528 1.528 0 1 1 0-3.055H13.44L10.5 2.533a1.527 1.527 0 0 1 .143-2.155Z'/%3E%3C/svg%3E") 50%/contain no-repeat;
    content: "";
    display: block;
    height: 1rem;
    width: 1.1875rem
}

@media (width>=48rem) {
    .l-header__menu-item>a:after,
    .l-header__menu-item>span:after {
        content: none
    }
}

@media (hover) {
    .l-header__menu-item>a,
    .l-header__menu-item>span {
        transition: color var(--duration-fast) var(--ease-power3-out)
    }
    .l-header__menu-item>a:hover,
    .l-header__menu-item>span:hover {
        color: var(--color-blue) !important
    }
}

.l-header__menu-item.is-current a:before,
.l-header__menu-item.is-current span:before {
    opacity: 1
}

.l-header__menu-item--submenu,
.l-header__menu-item--submenu>a,
.l-header__menu-item--submenu>span {
    position: relative
}

@media (width>=48rem) {
    .l-header__menu-item--submenu>a,
    .l-header__menu-item--submenu>span {
        gap: .375rem
    }
    .l-header__menu-item--submenu>a:after,
    .l-header__menu-item--submenu>span:after {
        aspect-ratio: 10/6;
        background-color: var(--color-blue);
        content: "";
        display: block;
        -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.808' height='6.926' viewBox='0 0 10.808 6.926'%3E%3Cpath stroke='rgba(0,0,0,0)' stroke-miterlimit='10' d='M5.405 6.426a.92.92 0 0 1-.66-.275L.774 2.18A.935.935 0 0 1 2.096.858l3.311 3.309 3.3-3.309a.936.936 0 0 1 1.322 1.326L6.063 6.151a.93.93 0 0 1-.661.275Z'/%3E%3C/svg%3E") center/contain no-repeat;
        mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.808' height='6.926' viewBox='0 0 10.808 6.926'%3E%3Cpath stroke='rgba(0,0,0,0)' stroke-miterlimit='10' d='M5.405 6.426a.92.92 0 0 1-.66-.275L.774 2.18A.935.935 0 0 1 2.096.858l3.311 3.309 3.3-3.309a.936.936 0 0 1 1.322 1.326L6.063 6.151a.93.93 0 0 1-.661.275Z'/%3E%3C/svg%3E") center/contain no-repeat;
        width: .625rem
    }
}

.l-header__submenu {
    border-top: 2.8125rem solid transparent;
    color: var(--color-black);
    opacity: 0;
    position: absolute;
    visibility: hidden;
    width: 100%
}

@media (width>=48rem) {
    .l-header__submenu:before {
        aspect-ratio: 1;
        background-color: #fff;
        border-radius: .25rem;
        content: "";
        display: block;
        left: 50%;
        position: absolute;
        top: 0;
        transform: translate(-50%, -45%) rotate(45deg);
        width: 2.1875rem
    }
}

.l-header__submenu-inner {
    background-color: #fff;
    border-radius: 1rem;
    padding: 2.0625rem 2.625rem;
    position: fixed;
    right: min(3.75rem, 3.75vw)
}

.l-header__submenu-inner--center {
    left: 50%;
    position: absolute;
    right: auto;
    transform: translate(-50%)
}

.l-header__submenu-title {
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: .9375rem
}

.l-header__submenu-list {
    display: flex;
    gap: 2rem
}

.l-header__submenu-item {
    width: 15rem
}

.l-header__submenu-pic {
    aspect-ratio: 240/120;
    border-radius: .75rem;
    display: block;
    overflow: hidden
}

.l-header__submenu-pic img {
    display: block;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.l-header__submenu-text {
    align-items: center;
    background: radial-gradient(circle at .1875rem calc(100% - .1875rem), var(--color-border) 2px, transparent 0), transparent;
    background-position: left 2px bottom;
    background-repeat: repeat-x;
    background-size: 10px;
    display: flex;
    font-size: 1rem;
    font-weight: 700;
    gap: .375rem;
    margin-top: .625rem;
    padding-bottom: .5rem;
    padding-left: .3125rem;
    position: relative
}

.l-header__submenu-text small {
    font-size: .75rem
}

.l-header__submenu-text:after,
.l-header__submenu-text:before {
    aspect-ratio: 1;
    content: "";
    display: block;
    position: absolute;
    right: .3125rem;
    width: 1.375rem
}

.l-header__submenu-text:before {
    background-color: var(--color-blue);
    border-radius: 50%
}

.l-header__submenu-text:after {
    background-color: #fff;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18.338' height='15.279' viewBox='0 0 18.338 15.279'%3E%3Cpath fill='%2360a0f9' fill-rule='evenodd' d='M10.644.378A1.527 1.527 0 0 1 12.8.521l5.158 6.111a1.53 1.53 0 0 1 0 2.013L12.8 14.757a1.528 1.528 0 0 1-2.3-2.011l2.94-3.58H1.527a1.528 1.528 0 1 1 0-3.055H13.44L10.5 2.533a1.527 1.527 0 0 1 .143-2.155Z'/%3E%3C/svg%3E") center/.6875rem no-repeat;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18.338' height='15.279' viewBox='0 0 18.338 15.279'%3E%3Cpath fill='%2360a0f9' fill-rule='evenodd' d='M10.644.378A1.527 1.527 0 0 1 12.8.521l5.158 6.111a1.53 1.53 0 0 1 0 2.013L12.8 14.757a1.528 1.528 0 0 1-2.3-2.011l2.94-3.58H1.527a1.528 1.528 0 1 1 0-3.055H13.44L10.5 2.533a1.527 1.527 0 0 1 .143-2.155Z'/%3E%3C/svg%3E") center/.6875rem no-repeat
}

@media (hover) {
    .l-header__submenu-pic img {
        transition: transform var(--duration-fast) var(--ease-power3-out)
    }
    .l-header__submenu-item a:hover .l-header__submenu-pic img {
        transform: scale(1.1)
    }
}

.l-header__contact {
    background-color: #fff;
    overflow: hidden;
    padding: 3.125rem 1.25rem
}

@media (width>=48rem) {
    .l-header__contact {
        background-color: transparent;
        overflow: visible;
        padding: 0
    }
}

.l-header__contact-inner {
    background: url(../images/l-header-contact-bg-sp.webp) 50%/cover no-repeat;
    border-radius: .5rem;
    padding: 1.875rem;
    position: relative
}

@media (width>=48rem) {
    .l-header__contact-inner {
        background: none;
        padding: 0
    }
}

.l-header__contact-inner:after,
.l-header__contact-inner:before {
    background: url(../images/l-header-contact-obj-sp.webp) 50%/cover no-repeat;
    content: "";
    display: block;
    height: 7.5rem;
    left: 50%;
    pointer-events: none;
    position: absolute;
    transform: translate(-50%);
    width: 100vw
}

@media (width>=48rem) {
    .l-header__contact-inner:after,
    .l-header__contact-inner:before {
        content: "";
        display: none
    }
}

.l-header__contact-inner:before {
    background-position: top;
    top: -3.125rem
}

.l-header__contact-inner:after {
    background-position: bottom;
    bottom: -2.1875rem
}

.l-header__contact-title {
    color: #fff;
    font-size: 1.25rem;
    line-height: 1.6;
    margin-bottom: .9375rem;
    text-align: center
}

.l-header__contact-buttons {
    display: flex;
    flex-direction: column;
    gap: min(.625rem, .625vw)
}

@media (width>=48rem) {
    .l-header__contact-buttons {
        align-items: center;
        flex-direction: row
    }
}

.l-header__contact-button a {
    align-items: center;
    border-radius: .5rem;
    display: flex;
    gap: 1.4375rem;
    height: 4.6875rem;
    justify-content: space-between;
    padding: 0 1.625rem;
    text-align: center;
    width: min(17.1875rem, 100%)
}

@media (hover) {
    .l-header__contact-button a {
        transition: transform var(--duration-fast) var(--ease-power3-out)
    }
}

@media (width>=48rem) {
    .l-header__contact-button a {
        border-radius: .25rem;
        font-size: min(.9375rem, 1.0714285714vw);
        height: 2.5rem;
        justify-content: center;
        padding: 0;
        width: min(8rem, 8vw)
    }
}

.l-header__contact-button a:after {
    content: "";
    display: block;
    height: 1rem;
    margin-left: .625rem;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18.338' height='15.279' viewBox='0 0 18.338 15.279'%3E%3Cpath fill='%2360a0f9' fill-rule='evenodd' d='M10.644.378A1.527 1.527 0 0 1 12.8.521l5.158 6.111a1.53 1.53 0 0 1 0 2.013L12.8 14.757a1.528 1.528 0 0 1-2.3-2.011l2.94-3.58H1.527a1.528 1.528 0 1 1 0-3.055H13.44L10.5 2.533a1.527 1.527 0 0 1 .143-2.155Z'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18.338' height='15.279' viewBox='0 0 18.338 15.279'%3E%3Cpath fill='%2360a0f9' fill-rule='evenodd' d='M10.644.378A1.527 1.527 0 0 1 12.8.521l5.158 6.111a1.53 1.53 0 0 1 0 2.013L12.8 14.757a1.528 1.528 0 0 1-2.3-2.011l2.94-3.58H1.527a1.528 1.528 0 1 1 0-3.055H13.44L10.5 2.533a1.527 1.527 0 0 1 .143-2.155Z'/%3E%3C/svg%3E") center/contain no-repeat;
    width: 1rem
}

@media (width>=48rem) {
    .l-header__contact-button a:after {
        content: "";
        display: none
    }
}

.l-header__contact-button:hover a {
    transform: translateY(-5%)
}

.l-header__contact-button--free {
    color: var(--color-blue)
}

.l-header__contact-button--free a {
    background-color: #fff
}

.l-header__contact-button--free a:after {
    background-color: var(--color-blue)
}

@media (width>=48rem) {
    .l-header__contact-button--free {
        color: #fff
    }
    .l-header__contact-button--free a {
        background-color: var(--color-blue)
    }
}

.l-header__contact-button--contact {
    color: #fff
}

@media (width>=48rem) {
    .l-header__contact-button--contact {
        color: var(--color-black)
    }
}

.l-header__contact-button--contact a {
    border: 1px solid #fff;
    font-size: .9375rem
}

@media (width>=48rem) {
    .l-header__contact-button--contact a {
        border: 1px solid var(--color-border);
        font-size: min(.9375rem, 1.0714285714vw)
    }
}

.l-header__contact-button--contact a:after {
    background-color: #fff
}

@media (width>=48rem) {
    .l-header__contact-button--contact a {
        background-color: #fff
    }
}

.l-header__spButton {
    align-items: center;
    background-color: var(--color-black);
    border: none;
    border-radius: .25rem;
    color: #fff;
    display: flex;
    font-family: var(--font-en);
    font-size: .9375rem;
    font-weight: 900;
    height: 2.25rem;
    justify-content: space-between;
    letter-spacing: .06em;
    padding: 0 .875rem;
    text-transform: uppercase;
    width: 6.5625rem;
    z-index: 1
}

.l-header__spButton-text {
    position: relative
}

.l-header__spButton-text span {
    display: block;
    height: 1em;
    line-height: 1
}

.l-header__spButton-text span:first-child {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
    content: "MENU"
}

.l-header__spButton-text span:nth-child(2) {
    clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0 100%);
    content: "CLOSE";
    position: absolute;
    transform: translateY(-100%);
    white-space: nowrap
}

.l-header__spButton-line {
    height: .875rem;
    position: relative;
    width: 1.125rem
}

.l-header__spButton-line>span {
    background-color: #fff;
    border-radius: .125rem;
    content: "";
    display: block;
    height: .125rem;
    position: absolute;
    width: 1.125rem
}

.l-header__spButton-line span:first-child {
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%)
}

.l-header__spButton-line span:nth-child(2) {
    left: 50%;
    top: 0;
    transform: translate(-50%)
}

.l-header__spButton-line span:nth-child(3) {
    left: 50%;
    top: 100%;
    transform: translate(-50%, -100%)
}

.l-header__spmenu {
    background-color: var(--color-beige);
    display: grid;
    font-size: .9375rem;
    gap: 1.125rem;
    padding: 2.5rem 1.875rem
}

.l-header__spmenu a {
    align-items: center;
    display: inline-flex;
    gap: .5rem
}

.l-header__bottom {
    background-color: var(--color-beige);
    display: flex;
    flex-direction: column;
    gap: 1.75rem;
    padding: 1.875rem 1.25rem
}

.l-header__sns {
    display: flex;
    flex-wrap: wrap;
    gap: 1.5625rem 0;
    justify-content: space-between;
    padding: 0 .3125rem
}

.l-header__sns-item {
    grid-row: 2/3;
    width: 3.3125rem
}

.l-header__sns-item a {
    display: block
}

.l-header__sns-item img {
    width: 100%
}

.l-header__operation {
    background-color: rgba(var(--color-beige-dark-rgb), .1);
    border-radius: .75rem;
    padding: .625rem .9375rem 1.25rem
}

.l-header__operation-title {
    align-items: center;
    display: flex;
    gap: .75rem;
    margin-bottom: .75rem
}

.l-header__operation-title--en {
    font-size: 1.375rem;
    font-weight: 900;
    letter-spacing: .03em;
    text-transform: capitalize;
    white-space: nowrap
}

.l-header__operation-title--ja {
    font-size: .75rem;
    font-weight: 700;
    white-space: nowrap
}

.l-header__operation-list {
    display: flex;
    gap: .625rem
}

.l-header__operation-item a {
    align-items: center;
    background-color: #fff;
    border-radius: .5rem;
    display: flex;
    height: 5.5rem;
    justify-content: center;
    overflow: hidden;
    position: relative
}

.l-header__operation-item a:after {
    aspect-ratio: 1;
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15.757' height='16.029' viewBox='0 0 15.757 16.029'%3E%3Cpath fill='%23231815' fill-rule='evenodd' d='M5.839 3.544a.95.95 0 0 1 1.01-.884l4.945.42a.95.95 0 0 1 .884.884l.42 4.945a.949.949 0 0 1-1.893.127l-.28-2.862-5.23 5.23A.95.95 0 1 1 4.35 10.06l5.233-5.232-2.862-.275a.95.95 0 0 1-.883-1.01'/%3E%3Cpath fill='%23231815' d='M10.394 16.029H1a1 1 0 0 1-1-1v-9.4a1 1 0 0 1 1-1 1 1 0 0 1 1 1v8.4h8.394a1 1 0 0 1 1 1 1 1 0 0 1-1 1'/%3E%3C/svg%3E") 50%/contain no-repeat;
    bottom: .5rem;
    content: "";
    display: block;
    position: absolute;
    right: .5rem;
    width: .9375rem
}

.l-header__operation-item img {
    display: block;
    width: 64%
}

.l-header__copyright {
    align-items: center;
    background-color: var(--color-black);
    color: #fff;
    display: flex;
    font-size: .8125rem;
    font-weight: 600;
    height: 3rem;
    justify-content: center;
    text-align: center
}

@media (width>=48rem) {
    .l-header--white .l-header__menu-item>a,
    .l-header--white .l-header__menu-item>span {
        color: #fff
    }
    .l-header--white .l-header__menu-item--submenu {
        position: relative
    }
}

@media (width>=48rem) and (width>=48rem) {
    .l-header--white .l-header__menu-item--submenu>a:after,
    .l-header--white .l-header__menu-item--submenu>span:after {
        background: #fff
    }
}

@media (width>=48rem) {
    .is-header-white .l-header--white .l-header__menu-item>a,
    .is-header-white .l-header--white .l-header__menu-item>span {
        color: var(--color-black)
    }
    .is-header-white .l-header--white .l-header__menu-item--submenu {
        position: relative
    }
}

@media (width>=48rem) and (width>=48rem) {
    .is-header-white .l-header--white .l-header__menu-item--submenu>a:after,
    .is-header-white .l-header--white .l-header__menu-item--submenu>span:after {
        background: var(--color-blue)
    }
}

.l-footer {
    background-color: var(--color-beige);
    display: block
}

.l-footer__company {
    background-color: #fff;
    border-top: 1px solid var(--color-border);
    overflow: hidden;
    padding: 2.1875rem;
    width: 100%
}

@media (width>=48rem) {
    .l-footer__company {
        padding: 3.125rem
    }
}

.l-footer__company-loop {
    animation: loop-footer 80s linear infinite;
    display: flex;
    white-space: nowrap;
    width: -moz-max-content;
    width: max-content;
    width: -moz-fit-content;
    width: fit-content;
    will-change: transform
}

@keyframes loop-footer {
    0% {
        transform: translate(0)
    }
    to {
        transform: translate(-50%)
    }
}

.l-footer__company-item {
    flex-shrink: 0;
    margin-right: 3.125rem
}

@media (width>=48rem) {
    .l-footer__company-item {
        margin-right: 5rem
    }
}

.l-footer__company-item img {
    height: 3.1875rem
}

@media (width>=48rem) {
    .l-footer__company-item img {
        height: 4.9375rem
    }
}

.l-footer__company-item a,
.l-footer__company-item span {
    display: block
}

@media (hover) {
    .l-footer__company-item a img {
        transition: transform var(--duration-fast) var(--ease-power3-out)
    }
    .l-footer__company-item a:hover img {
        transform: scale(1.1)
    }
}

.l-footer__inner {
    margin: 0 auto;
    padding-bottom: 2.1875rem;
    padding-top: 2.1875rem;
    width: min(21rem, 100%)
}

@media (width>=48rem) {
    .l-footer__inner {
        display: grid;
        gap: 2.1875rem;
        grid-template-columns: 1fr 1fr;
        padding-bottom: 3.4375rem;
        padding-top: 3.4375rem;
        width: min(87.5rem, 92%)
    }
    .l-footer__nav {
        width: min(39.8125rem, 50vw)
    }
}

.l-footer__sns {
    background: radial-gradient(circle at .1875rem calc(100% - 3px), #bbb 2px, transparent 0), transparent;
    background-position: 0 100%;
    background-repeat: repeat-x;
    background-size: .625rem;
    display: flex;
    flex-wrap: wrap;
    gap: 1.5625rem 0;
    justify-content: space-between;
    padding-bottom: 1.5625rem
}

@media (width>=48rem) {
    .l-footer__sns {
        flex-wrap: nowrap;
        gap: .8125rem;
        justify-content: flex-start
    }
}

.l-footer__sns-item {
    grid-row: 2/3;
    width: 3.3125rem
}

@media (width>=48rem) {
    .l-footer__sns-item {
        width: 3.625rem
    }
}

.l-footer__sns-item a {
    display: block
}

.l-footer__sns-item img,
.l-footer__sns-item--logo {
    width: 100%
}

@media (width>=48rem) {
    .l-footer__sns-item--logo {
        margin-right: 1.25rem;
        width: auto
    }
}

.l-footer__sns-item--logo a {
    display: block;
    width: 11.375rem
}

@media (width>=48rem) {
    .l-footer__sns-item--logo a {
        width: 13.8125rem
    }
}

.l-footer__menu {
    display: grid;
    font-size: .875rem;
    gap: .875rem;
    padding: 1.5625rem 0
}

@media (width>=48rem) {
    .l-footer__menu {
        display: flex;
        flex-wrap: wrap;
        font-size: 1rem;
        gap: .625rem 3.5rem;
        padding: 1.5625rem 0;
        width: 37.5rem
    }
}

@media (hover) {
    .l-footer__menu-item a {
        transition: color var(--duration-fast) var(--ease-power3-out)
    }
    .l-footer__menu-item a:hover {
        color: var(--color-blue)
    }
}

.l-footer__operation {
    background-color: rgba(var(--color-beige-dark-rgb), .1);
    border-radius: .75rem;
    padding: .625rem .9375rem 1.25rem
}

@media (width>=48rem) {
    .l-footer__operation {
        padding: 1.5625rem 2.8125rem
    }
}

.l-footer__operation-title {
    align-items: center;
    display: flex;
    gap: .75rem;
    margin-bottom: .75rem
}

.l-footer__operation-title--en {
    font-size: 1.375rem;
    font-weight: 900;
    letter-spacing: .03em;
    text-transform: capitalize
}

.l-footer__operation-title--ja {
    font-size: .75rem;
    font-weight: 700
}

.l-footer__operation-list {
    display: grid;
    gap: .625rem;
    grid-template-columns: repeat(2, 1fr)
}

@media (width>=48rem) {
    .l-footer__operation-list {
        gap: 1.25rem
    }
}

.l-footer__operation-item a {
    align-items: center;
    background-color: #fff;
    border-radius: .5rem;
    display: flex;
    height: 5.5rem;
    justify-content: center;
    overflow: hidden;
    position: relative
}

@media (width>=48rem) {
    .l-footer__operation-item a {
        height: 7.125rem
    }
}

.l-footer__operation-item a:after {
    aspect-ratio: 1;
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15.757' height='16.029' viewBox='0 0 15.757 16.029'%3E%3Cpath fill='%23231815' fill-rule='evenodd' d='M5.839 3.544a.95.95 0 0 1 1.01-.884l4.945.42a.95.95 0 0 1 .884.884l.42 4.945a.949.949 0 0 1-1.893.127l-.28-2.862-5.23 5.23A.95.95 0 1 1 4.35 10.06l5.233-5.232-2.862-.275a.95.95 0 0 1-.883-1.01'/%3E%3Cpath fill='%23231815' d='M10.394 16.029H1a1 1 0 0 1-1-1v-9.4a1 1 0 0 1 1-1 1 1 0 0 1 1 1v8.4h8.394a1 1 0 0 1 1 1 1 1 0 0 1-1 1'/%3E%3C/svg%3E") 50%/contain no-repeat;
    bottom: .5rem;
    content: "";
    display: block;
    position: absolute;
    right: .5rem;
    width: .9375rem
}

.l-footer__operation-item img {
    display: block;
    width: 64%
}

@media (width>=48rem) {
    .l-footer__operation-item img {
        width: 8.75rem
    }
}

@media (hover) {
    .l-footer__operation-item img {
        transition: transform var(--duration-fast) var(--ease-power3-out)
    }
    .l-footer__operation-item:hover img {
        transform: scale(1.1)
    }
}

.l-footer__copyright {
    align-items: center;
    background-color: var(--color-black);
    color: #fff;
    display: flex;
    font-size: .8125rem;
    font-weight: 600;
    height: 3rem;
    justify-content: center;
    text-align: center
}

.l-overlay {
    background-color: #0009;
    opacity: 0;
    visibility: hidden;
    z-index: 10
}

.l-overlay,
.l-overlay-transition {
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%
}

.l-overlay-transition {
    background-color: rgba(var(--color-beige-rgb), 1);
    z-index: 1000
}

.l-title {
    overflow: hidden;
    position: relative;
    text-align: center
}

.l-title h1 {
    margin: 0
}

.l-title h1+.c-text {
    margin-top: .9375rem
}

@media (width>=48rem) {
    .l-title h1+.c-text {
        margin-top: 1.5625rem
    }
}

.l-title__inner {
    margin: 0 auto;
    padding-bottom: 2.1875rem;
    padding-top: 9.375rem;
    position: relative;
    width: min(100%, min(1328px, 100vw))
}

@media (width>=48rem) {
    .l-title__inner {
        padding-bottom: 2.5rem;
        padding-top: min(12.8125rem, 16.015625vw)
    }
}

.l-title__en {
    display: block;
    font-family: var(--font-en);
    font-size: 2.8125rem;
    line-height: 1.2
}

@media (width>=48rem) {
    .l-title__en {
        font-size: min(5.5625rem, 6.953125vw)
    }
}

.l-title__en span {
    display: inline-block
}

.l-title__ja {
    display: block;
    font-size: 1rem;
    line-height: 1.2;
    margin-top: .625rem
}

@media (width>=48rem) {
    .l-title__ja {
        font-size: 1.375rem;
        margin-top: .9375rem
    }
}

.l-title__obj {
    bottom: 0;
    position: absolute;
    right: 0;
    width: min(31.25rem, 39.0625vw)
}

.l-title__image {
    display: block;
    opacity: 0;
    position: relative;
    transform: translateY(3.125rem);
    z-index: 1
}

.l-title__hukidashi {
    align-items: center;
    border-radius: 6.25rem;
    color: #fff;
    display: flex;
    font-size: min(1rem, 1.25vw);
    font-weight: 500;
    height: min(6.5rem, 8.125vw);
    justify-content: center;
    line-height: 1.375;
    right: min(9.625rem, 12.03125vw);
    text-align: left;
    top: min(3.9375rem, 4.921875vw);
    width: min(12.5rem, 15.625vw)
}

.l-title__hukidashi,
.l-title__hukidashi:after {
    background-color: var(--color-aqua);
    position: absolute
}

.l-title__hukidashi:after {
    aspect-ratio: 43/22;
    content: "";
    display: block;
    left: 50%;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='43' height='22' viewBox='0 0 43 22'%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23ff83bc' d='M-1076.229 21897.551h43v22h-43z'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg clip-path='url(%23a)' transform='translate(1076.229 -21897.551)'%3E%3Cpath fill='%23ff83bc' d='M-1059.585 21888.278c2.773 5.598-.829 28.063-16.489 30.315 27.822-.95 43.196-21.963 43.196-21.963Z'/%3E%3C/g%3E%3C/svg%3E") no-repeat center center;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='43' height='22' viewBox='0 0 43 22'%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23ff83bc' d='M-1076.229 21897.551h43v22h-43z'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg clip-path='url(%23a)' transform='translate(1076.229 -21897.551)'%3E%3Cpath fill='%23ff83bc' d='M-1059.585 21888.278c2.773 5.598-.829 28.063-16.489 30.315 27.822-.95 43.196-21.963 43.196-21.963Z'/%3E%3C/g%3E%3C/svg%3E") no-repeat center center;
    -webkit-mask-size: contain;
    mask-size: contain;
    top: 99%;
    transform: scaleX(-1) translate(-40%);
    width: min(2.625rem, 3.28125vw)
}

.l-title__hukidashi--pink,
.l-title__hukidashi--pink:after {
    background-color: var(--color-pink)
}

.l-title__hukidashi--purple,
.l-title__hukidashi--purple:after {
    background-color: var(--color-purple)
}

.l-title__hukidashi--green,
.l-title__hukidashi--green:after {
    background-color: var(--color-green)
}

.l-breadcrumbs {
    color: #333;
    font-size: .75rem;
    left: 0;
    position: absolute;
    top: 5.3125rem;
    width: 100%;
    z-index: 10
}

@media (width>=48rem) {
    .l-breadcrumbs {
        font-size: .875rem;
        top: 9.0625rem
    }
}

.l-breadcrumbs ul {
    align-items: center;
    display: flex;
    gap: .3125rem;
    margin: 0 auto;
    overflow: hidden;
    width: 20.625rem
}

@media (width>=48rem) {
    .l-breadcrumbs ul {
        gap: .5rem;
        width: min(92.5rem, 92%)
    }
}

.l-breadcrumbs li {
    align-items: center;
    display: flex;
    flex-shrink: 0;
    gap: .5rem;
    overflow: hidden;
    position: relative;
    width: -moz-max-content;
    width: max-content
}

.l-breadcrumbs li:after {
    aspect-ratio: 1;
    background-color: rgba(var(--color-black-rgb), .3);
    border-radius: 50%;
    content: "";
    display: block;
    width: .1875rem
}

@media (width>=48rem) {
    .l-breadcrumbs li:after {
        width: .3125rem
    }
}

.l-breadcrumbs li:last-child {
    flex-shrink: 1
}

.l-breadcrumbs li:last-child:after {
    content: none
}

.l-breadcrumbs li a,
.l-breadcrumbs li span {
    color: inherit;
    display: block;
    text-decoration: none;
    white-space: nowrap
}

.l-breadcrumbs li a {
    color: rgba(var(--color-black-rgb), .3);
    text-overflow: ellipsis
}

.l-breadcrumbs li a:hover {
    text-decoration: underline
}

.l-breadcrumbs li:first-child a {
    text-transform: uppercase
}

.l-breadcrumbs li span {
    overflow: hidden;
    text-overflow: ellipsis
}

.l-contact {
    background-color: var(--color-blue);
    padding: 2.8125rem 0
}

@media (width>=48rem) {
    .l-contact {
        padding: 4.375rem 0
    }
}

.l-contact .c-heading-lv2 {
    color: #fff;
    margin-bottom: 1.5rem
}

@media (width>=48rem) {
    .l-contact .c-heading-lv2 {
        margin-bottom: 1.875rem
    }
}

@media (width < 48rem) {
    .l-contact .c-heading__en {
        margin-bottom: .3125rem
    }
    .l-contact .c-heading__ja {
        line-height: 1.8
    }
}

.l-contact__row {
    display: grid;
    gap: 1.25rem
}

@media (width>=48rem) {
    .l-contact__row {
        gap: 3.75rem;
        grid-template-columns: repeat(2, 1fr)
    }
}

.l-contact__col {
    align-items: center;
    background-color: #fff;
    border-radius: .5rem;
    display: flex;
    flex-direction: column;
    height: 6.5rem;
    justify-content: center
}

@media (width>=48rem) {
    .l-contact__col {
        border-radius: .75rem;
        gap: .625rem;
        height: 9.625rem
    }
}

.l-contact__info {
    align-items: center;
    display: flex;
    font-family: var(--font-en);
    font-weight: 700;
    gap: .5rem;
    height: 2.375rem;
    justify-content: center
}

@media (width>=48rem) {
    .l-contact__info {
        height: 3.125rem
    }
}

.l-contact__info span {
    display: block;
    line-height: 2.375rem
}

@media (width>=48rem) {
    .l-contact__info span {
        line-height: 3.125rem
    }
}

.l-contact__info:before {
    aspect-ratio: 1;
    border-radius: 50%;
    content: "";
    display: block;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: cover;
    mask-size: cover;
    width: 2.0625rem
}

@media (width>=48rem) {
    .l-contact__info:before {
        width: 2.6875rem
    }
}

.l-contact__text {
    font-size: .875rem;
    font-weight: 500;
    margin-top: .625rem
}

@media (width>=48rem) {
    .l-contact__text {
        font-size: 1.1875rem
    }
}

.l-contact__col--tel .l-contact__info {
    color: var(--color-green);
    font-size: 1.9375rem
}

@media (width>=48rem) {
    .l-contact__col--tel .l-contact__info {
        font-size: min(2.6875rem, 3.359375vw)
    }
}

.l-contact__col--tel .l-contact__info span {
    background: radial-gradient(circle at .125rem calc(100% - .125rem), var(--color-green) .0625rem, transparent .125rem) 0/.5625rem repeat-x, transparent
}

.l-contact__col--tel .l-contact__info:before {
    background-color: var(--color-green);
    -webkit-mask-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22.609' height='22.609' viewBox='0 0 22.609 22.609'%3E%3Cpath d='M11.3 22.109a10.8 10.8 0 1 1 10.805-10.8 10.816 10.816 0 0 1-10.805 10.8M6.361 6.136a.637.637 0 0 0-.653.653 9.4 9.4 0 0 0 .847 3.84 11.5 11.5 0 0 0 2.4 3.451 11.5 11.5 0 0 0 3.451 2.4 9.4 9.4 0 0 0 3.841.847.64.64 0 0 0 .653-.653v-2.516a.55.55 0 0 0-.141-.365.7.7 0 0 0-.357-.226l-2.146-.436a1 1 0 0 0-.133-.009 1 1 0 0 0-.31.049.9.9 0 0 0-.365.209l-1.461 1.462a10 10 0 0 1-1.12-.754 11 11 0 0 1-1.01-.895 11 11 0 0 1-.941-1.033 7.6 7.6 0 0 1-.739-1.112l1.511-1.524a.65.65 0 0 0 .172-.3 1.1 1.1 0 0 0 .015-.42l-.4-2.176a.58.58 0 0 0-.2-.35.58.58 0 0 0-.389-.147Z'/%3E%3Cpath fill='rgba(0,0,0,0)' d='M11.3 22.609a11.3 11.3 0 1 1 11.305-11.3 11.317 11.317 0 0 1-11.305 11.3M11.3 1a10.3 10.3 0 1 0 10.309 10.305A10.316 10.316 0 0 0 11.3 1m4.945 16.829a9.9 9.9 0 0 1-4.044-.891 12 12 0 0 1-3.6-2.506 12 12 0 0 1-2.5-3.6 9.9 9.9 0 0 1-.891-4.044 1.137 1.137 0 0 1 1.151-1.152H8.88a1.11 1.11 0 0 1 1.084.912l.407 2.2a1.6 1.6 0 0 1-.029.615 1.14 1.14 0 0 1-.3.516L8.8 11.129a7 7 0 0 0 .506.72 10 10 0 0 0 .9.985l.007.006a10 10 0 0 0 .963.853q.352.274.736.517l1.188-1.183a1.36 1.36 0 0 1 .572-.334 1.5 1.5 0 0 1 .658-.057l.032.005 2.185.445a1.2 1.2 0 0 1 .6.383 1.05 1.05 0 0 1 .259.688v2.519a1.14 1.14 0 0 1-1.153 1.153ZM6.361 6.636a.14.14 0 0 0-.114.04.14.14 0 0 0-.039.113 8.9 8.9 0 0 0 .8 3.636 11 11 0 0 0 2.3 3.3 11 11 0 0 0 3.3 2.3 8.9 8.9 0 0 0 3.637.8.14.14 0 0 0 .153-.153v-2.514c0-.007 0-.016-.02-.039a.2.2 0 0 0-.1-.067l-2.1-.427a.5.5 0 0 0-.214.023.4.4 0 0 0-.161.086l-1.732 1.733-.333-.193a10.4 10.4 0 0 1-1.177-.792 11 11 0 0 1-1.054-.933 11 11 0 0 1-.981-1.078 8 8 0 0 1-.787-1.185l-.177-.326 1.774-1.791a.15.15 0 0 0 .041-.069.6.6 0 0 0 0-.213l-.4-2.176a.1.1 0 0 0-.037-.05.08.08 0 0 0-.06-.024Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22.609' height='22.609' viewBox='0 0 22.609 22.609'%3E%3Cpath d='M11.3 22.109a10.8 10.8 0 1 1 10.805-10.8 10.816 10.816 0 0 1-10.805 10.8M6.361 6.136a.637.637 0 0 0-.653.653 9.4 9.4 0 0 0 .847 3.84 11.5 11.5 0 0 0 2.4 3.451 11.5 11.5 0 0 0 3.451 2.4 9.4 9.4 0 0 0 3.841.847.64.64 0 0 0 .653-.653v-2.516a.55.55 0 0 0-.141-.365.7.7 0 0 0-.357-.226l-2.146-.436a1 1 0 0 0-.133-.009 1 1 0 0 0-.31.049.9.9 0 0 0-.365.209l-1.461 1.462a10 10 0 0 1-1.12-.754 11 11 0 0 1-1.01-.895 11 11 0 0 1-.941-1.033 7.6 7.6 0 0 1-.739-1.112l1.511-1.524a.65.65 0 0 0 .172-.3 1.1 1.1 0 0 0 .015-.42l-.4-2.176a.58.58 0 0 0-.2-.35.58.58 0 0 0-.389-.147Z'/%3E%3Cpath fill='rgba(0,0,0,0)' d='M11.3 22.609a11.3 11.3 0 1 1 11.305-11.3 11.317 11.317 0 0 1-11.305 11.3M11.3 1a10.3 10.3 0 1 0 10.309 10.305A10.316 10.316 0 0 0 11.3 1m4.945 16.829a9.9 9.9 0 0 1-4.044-.891 12 12 0 0 1-3.6-2.506 12 12 0 0 1-2.5-3.6 9.9 9.9 0 0 1-.891-4.044 1.137 1.137 0 0 1 1.151-1.152H8.88a1.11 1.11 0 0 1 1.084.912l.407 2.2a1.6 1.6 0 0 1-.029.615 1.14 1.14 0 0 1-.3.516L8.8 11.129a7 7 0 0 0 .506.72 10 10 0 0 0 .9.985l.007.006a10 10 0 0 0 .963.853q.352.274.736.517l1.188-1.183a1.36 1.36 0 0 1 .572-.334 1.5 1.5 0 0 1 .658-.057l.032.005 2.185.445a1.2 1.2 0 0 1 .6.383 1.05 1.05 0 0 1 .259.688v2.519a1.14 1.14 0 0 1-1.153 1.153ZM6.361 6.636a.14.14 0 0 0-.114.04.14.14 0 0 0-.039.113 8.9 8.9 0 0 0 .8 3.636 11 11 0 0 0 2.3 3.3 11 11 0 0 0 3.3 2.3 8.9 8.9 0 0 0 3.637.8.14.14 0 0 0 .153-.153v-2.514c0-.007 0-.016-.02-.039a.2.2 0 0 0-.1-.067l-2.1-.427a.5.5 0 0 0-.214.023.4.4 0 0 0-.161.086l-1.732 1.733-.333-.193a10.4 10.4 0 0 1-1.177-.792 11 11 0 0 1-1.054-.933 11 11 0 0 1-.981-1.078 8 8 0 0 1-.787-1.185l-.177-.326 1.774-1.791a.15.15 0 0 0 .041-.069.6.6 0 0 0 0-.213l-.4-2.176a.1.1 0 0 0-.037-.05.08.08 0 0 0-.06-.024Z'/%3E%3C/svg%3E")
}

.l-contact__col--email .l-contact__info {
    color: var(--color-aqua);
    font-size: 1.125rem
}

@media (width>=48rem) {
    .l-contact__col--email .l-contact__info {
        font-size: min(1.875rem, 2.34375vw)
    }
}

.l-contact__col--email .l-contact__info span {
    background: radial-gradient(circle at .125rem calc(100% - .125rem), var(--color-aqua) .0625rem, transparent .125rem) 0/.5625rem repeat-x, transparent
}

.l-contact__col--email .l-contact__info:before {
    background-color: var(--color-aqua);
    -webkit-mask-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36.229' height='36.229' viewBox='0 0 36.229 36.229'%3E%3Cpath fill='%2379d2f8' d='M18.115 35.729A17.614 17.614 0 0 1 5.659 5.659 17.615 17.615 0 0 1 30.57 30.57a17.5 17.5 0 0 1-12.455 5.159m-6.121-24a1.9 1.9 0 0 0-1.859 1.935v8.9a1.9 1.9 0 0 0 1.859 1.936h13.017a1.9 1.9 0 0 0 1.859-1.935v-8.9a1.9 1.9 0 0 0-1.859-1.935Z'/%3E%3Cpath fill='rgba(0,0,0,0)' d='M18.115 36.229A18.114 18.114 0 0 1 5.306 5.306a18.114 18.114 0 0 1 25.617 25.617 18 18 0 0 1-12.808 5.306m0-35.229a17.114 17.114 0 0 0-12.1 29.216 17.114 17.114 0 0 0 24.2-24.2A17 17 0 0 0 18.115 1m6.9 24H11.994a2.4 2.4 0 0 1-2.359-2.435v-8.9a2.4 2.4 0 0 1 2.359-2.435h13.017a2.4 2.4 0 0 1 2.359 2.435v8.9A2.4 2.4 0 0 1 25.011 25ZM11.994 12.228a1.4 1.4 0 0 0-1.359 1.435v8.9A1.4 1.4 0 0 0 11.994 24h13.017a1.4 1.4 0 0 0 1.359-1.435v-8.9a1.4 1.4 0 0 0-1.359-1.435Z'/%3E%3Cpath fill='%2379d2f8' d='M18.457 20.037a1 1 0 0 1-.612-.196l-6.963-5.16a1 1 0 0 1-.207-1.398 1 1 0 0 1 1.397-.207l6.964 5.158a1 1 0 0 1-.58 1.803'/%3E%3Cpath fill='%2379d2f8' d='M17.532 18.728a1 1 0 0 1 .361-.536l6.905-5.301a1 1 0 0 1 1.401.183 1 1 0 0 1-.183 1.4l-6.903 5.309a1 1 0 0 1-1.58-1.055'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36.229' height='36.229' viewBox='0 0 36.229 36.229'%3E%3Cpath fill='%2379d2f8' d='M18.115 35.729A17.614 17.614 0 0 1 5.659 5.659 17.615 17.615 0 0 1 30.57 30.57a17.5 17.5 0 0 1-12.455 5.159m-6.121-24a1.9 1.9 0 0 0-1.859 1.935v8.9a1.9 1.9 0 0 0 1.859 1.936h13.017a1.9 1.9 0 0 0 1.859-1.935v-8.9a1.9 1.9 0 0 0-1.859-1.935Z'/%3E%3Cpath fill='rgba(0,0,0,0)' d='M18.115 36.229A18.114 18.114 0 0 1 5.306 5.306a18.114 18.114 0 0 1 25.617 25.617 18 18 0 0 1-12.808 5.306m0-35.229a17.114 17.114 0 0 0-12.1 29.216 17.114 17.114 0 0 0 24.2-24.2A17 17 0 0 0 18.115 1m6.9 24H11.994a2.4 2.4 0 0 1-2.359-2.435v-8.9a2.4 2.4 0 0 1 2.359-2.435h13.017a2.4 2.4 0 0 1 2.359 2.435v8.9A2.4 2.4 0 0 1 25.011 25ZM11.994 12.228a1.4 1.4 0 0 0-1.359 1.435v8.9A1.4 1.4 0 0 0 11.994 24h13.017a1.4 1.4 0 0 0 1.359-1.435v-8.9a1.4 1.4 0 0 0-1.359-1.435Z'/%3E%3Cpath fill='%2379d2f8' d='M18.457 20.037a1 1 0 0 1-.612-.196l-6.963-5.16a1 1 0 0 1-.207-1.398 1 1 0 0 1 1.397-.207l6.964 5.158a1 1 0 0 1-.58 1.803'/%3E%3Cpath fill='%2379d2f8' d='M17.532 18.728a1 1 0 0 1 .361-.536l6.905-5.301a1 1 0 0 1 1.401.183 1 1 0 0 1-.183 1.4l-6.903 5.309a1 1 0 0 1-1.58-1.055'/%3E%3C/svg%3E")
}

.c-accordion {
    background-color: #fff;
    border-radius: .375rem;
    padding: 0 1.0625rem
}

@media (width>=48rem) {
    .c-accordion {
        border-radius: .625rem;
        padding: 0 1.5rem
    }
}

.c-accordion__label {
    cursor: pointer;
    padding: 1rem 0 .8125rem;
    position: relative
}

@media (width>=48rem) {
    .c-accordion__label {
        padding: 1.5625rem 0
    }
}

.c-accordion__label p {
    align-items: flex-start;
    display: flex;
    font-size: 1rem;
    font-weight: 700;
    gap: .4375rem;
    line-height: 2;
    width: 90%
}

@media (width>=48rem) {
    .c-accordion__label p {
        font-size: 1.125rem;
        gap: .6875rem;
        line-height: 1.5
    }
}

.c-accordion__label p:before {
    content: "Q.";
    font-family: var(--font-en);
    font-size: 1.25rem;
    line-height: 1.75;
    min-width: 1.25rem
}

@media (width>=48rem) {
    .c-accordion__label p:before {
        font-size: 1.5rem;
        line-height: 1.25;
        min-width: 1.5625rem
    }
}

.c-accordion__arrow {
    aspect-ratio: 1;
    background-color: var(--color-blue);
    display: block;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.808' height='6.926' viewBox='0 0 10.808 6.926'%3E%3Cpath stroke='rgba(0,0,0,0)' stroke-miterlimit='10' d='M5.405 6.426a.92.92 0 0 1-.66-.275L.774 2.18A.935.935 0 0 1 2.096.858l3.311 3.309 3.3-3.309a.936.936 0 0 1 1.322 1.326L6.063 6.151a.93.93 0 0 1-.661.275Z'/%3E%3C/svg%3E") no-repeat center/100%;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.808' height='6.926' viewBox='0 0 10.808 6.926'%3E%3Cpath stroke='rgba(0,0,0,0)' stroke-miterlimit='10' d='M5.405 6.426a.92.92 0 0 1-.66-.275L.774 2.18A.935.935 0 0 1 2.096.858l3.311 3.309 3.3-3.309a.936.936 0 0 1 1.322 1.326L6.063 6.151a.93.93 0 0 1-.661.275Z'/%3E%3C/svg%3E") no-repeat center/100%;
    right: 1.25rem;
    width: .8125rem
}

.c-accordion__arrow,
.c-accordion__icon-wrap {
    position: absolute;
    top: 50%;
    transform: translateY(-50%)
}

.c-accordion__icon-wrap {
    background-color: var(--color-black);
    border-radius: 50%;
    height: 1.5rem;
    right: 0;
    width: 1.5rem
}

@media (width>=48rem) {
    .c-accordion__icon-wrap {
        height: 2.0625rem;
        width: 2.0625rem
    }
}

.c-accordion__icon-wrap span {
    background-color: #fff;
    border-radius: 9999px;
    display: block;
    height: .125rem;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: .625rem
}

.c-accordion__icon-wrap span:last-of-type {
    transform: translate(-50%, -50%) rotate(-90deg)
}

@media (width>=48rem) {
    .c-accordion__icon-wrap span {
        height: .1875rem;
        width: .8125rem
    }
}

.c-accordion__content {
    max-height: 0;
    overflow: hidden
}

@media (width>=48rem) {
    .c-accordion__content--sm {
        max-height: none
    }
}

@media (width>=64rem) {
    .c-accordion__content--md {
        max-height: none !important
    }
}

.c-block-radius {
    background-color: #fff;
    border-radius: 1.25rem 1.25rem 0 0;
    padding-bottom: 3.75rem;
    padding-top: 3.125rem
}

@media (width>=48rem) {
    .c-block-radius {
        border-radius: 3.5rem 3.5rem 0 0;
        padding-bottom: 8.125rem;
        padding-top: 6.25rem
    }
}

.c-block-radius--nopb {
    padding-bottom: 0
}

.c-block-nohead {
    padding-top: 8.125rem
}

@media (width>=48rem) {
    .c-block-nohead {
        padding-top: 13.125rem
    }
}

.c-block-colums {
    align-items: start;
    display: grid;
    gap: 3.125rem;
    grid-template-columns: 100%
}

@media (width>=64rem) {
    .c-block-colums {
        gap: clamp(2.5rem, 2.5rem + 70 * (100vw - 64rem)/576, 6.875rem);
        grid-template-columns: 1fr 20rem
    }
}

.c-block-colums>:last-child {
    grid-row: 1/2
}

@media (width>=64rem) {
    .c-block-colums>:last-child {
        grid-row: auto
    }
}

.c-block-border {
    background: var(--dotted-line-top-pale);
    padding-bottom: 3.125rem;
    padding-top: 3.125rem
}

@media (width>=48rem) {
    .c-block-border {
        padding-bottom: 3.75rem;
        padding-top: 3.75rem
    }
}

.c-block-border:last-child {
    padding-bottom: 0
}

.c-block-border--none {
    background: none;
    padding-top: 0
}

@media (width>=48rem) {
    .c-block-terms {
        margin-top: 1.875rem;
        padding-bottom: 7.5rem
    }
}

.c-block-terms .c-inner {
    background-color: #fff;
    border-radius: 1.25rem;
    padding: 3.125rem 1.25rem 1.875rem;
    width: 100%
}

@media (width>=48rem) {
    .c-block-terms .c-inner {
        padding: 6.25rem 6.5625rem;
        width: 64.25rem
    }
}

.c-block-terms .c-heading-lv3 {
    margin-bottom: 1.25rem
}

@media (width>=48rem) {
    .c-block-terms .c-heading-lv3 {
        margin-bottom: 2.8125rem
    }
    .c-block-terms .c-list-circle li {
        margin-bottom: .1875rem
    }
}

.c-block-detail {
    background-color: #fff;
    border-radius: .625rem;
    order: 2;
    overflow: hidden;
    padding: 2.125rem 1.25rem 2.5rem
}

@media (width>=48rem) {
    .c-block-detail {
        border-radius: 1rem;
        order: 0;
        padding: 3.25rem 2.5rem 2.5rem
    }
}

.c-block-detail__head {
    position: relative
}

.c-block-detail__head>:last-child {
    margin-bottom: 0
}

.c-block-detail__head-fv {
    margin-bottom: 2rem
}

@media (width>=48rem) {
    .c-block-detail__head-fv {
        margin-bottom: 1.875rem
    }
}

.c-block-detail__head-pic {
    border-radius: .5rem;
    display: block;
    overflow: hidden
}

.c-block-detail__head-pic img {
    display: block;
    width: 100%
}

.c-block-detail__head-child {
    align-items: center;
    display: grid;
    font-weight: 700;
    grid-template-columns: 3.25rem 1fr;
    line-height: 1.25rem
}

@media (width < 48rem) {
    .c-block-detail__head-child {
        gap: .3125rem;
        margin-bottom: 1.25rem
    }
}

@media (width>=48rem) {
    .c-block-detail__head-child {
        max-width: 12.5rem
    }
}

.c-block-detail__head-child picture {
    border-radius: 50%;
    display: block;
    overflow: hidden
}

.c-block-detail__head-child dt {
    background-color: var(--color-gray);
    border-radius: .625rem;
    font-size: .8125rem;
    margin-bottom: .3125rem;
    padding: 0 .5rem;
    width: -moz-max-content;
    width: max-content
}

.c-block-detail__head-child dd {
    font-size: .9375rem;
    padding-left: .3125rem
}

.c-block-detail__head-title {
    font-size: 1.25rem;
    line-height: 1.6;
    margin-bottom: 1rem;
    margin-top: 0
}

@media (width>=48rem) {
    .c-block-detail__head-title {
        font-size: 2rem
    }
}

.c-block-detail__head-pin {
    margin-bottom: 1.25rem
}

@media (width>=48rem) {
    .c-block-detail__head-pin {
        margin-bottom: .875rem
    }
}

.c-block-detail__head-category {
    display: flex;
    gap: .5rem;
    margin-bottom: 1.125rem
}

.c-block-detail__head-category li {
    border: 1px solid var(--color-gray2);
    border-radius: 9999px;
    font-size: .875rem;
    padding: 0 .75rem
}

.c-block-detail__head-date {
    align-items: center;
    display: flex;
    font-size: .75rem;
    font-weight: 400;
    gap: .75rem;
    white-space: nowrap
}

.c-block-detail__head-date:after {
    background: var(--dotted-line-bottom-pale);
    content: "";
    display: block;
    height: .25rem;
    width: 100%
}

.c-block-detail__content {
    margin-top: 3.125rem
}

@media (width>=48rem) {
    .c-block-detail__content {
        padding: 0 1.25rem
    }
}

.c-block-detail__content>:first-child {
    margin-top: 0 !important
}

.c-block-detail__content>:last-child {
    margin-bottom: 0 !important
}

.c-block-detail__content .c-heading-lv3 {
    margin-bottom: .9375rem;
    margin-top: .9375rem
}

@media (width>=48rem) {
    .c-block-detail__content .c-heading-lv3 {
        margin-bottom: 1.25rem;
        margin-top: 1.25rem
    }
}

.c-block-detail__content>*+.c-heading-lv3 {
    margin-top: 3.75rem
}

@media (width>=48rem) {
    .c-block-detail__content>*+.c-heading-lv3 {
        margin-top: 5rem
    }
}

.c-block-detail__content .c-heading-bg {
    margin-bottom: 1.75rem;
    margin-top: 1.875rem
}

@media (width>=48rem) {
    .c-block-detail__content .c-heading-bg {
        margin-top: 2.5rem
    }
}

.c-block-detail__content .c-heading-bg:first-child {
    margin-top: 0
}

.c-block-detail__content .c-text+.c-heading-bg {
    margin-top: 1.875rem
}

@media (width>=48rem) {
    .c-block-detail__content .c-text+.c-heading-bg {
        margin-top: 2.5rem
    }
}

.c-block-detail__content .c-text {
    margin-bottom: 1em;
    margin-top: 1em
}

.c-block-detail__content .c-text-note__small {
    margin-bottom: 1.25rem;
    margin-top: 1.25rem;
    white-space: wrap
}

.c-block-detail__content .c-list-circle,
.c-block-detail__content .c-list-number {
    margin-bottom: 1.875rem;
    margin-top: 1.875rem
}

.c-block-detail__content .c-block-detail__content-table {
    margin-bottom: 5rem;
    margin-top: 5rem;
    white-space: nowrap
}

.c-block-detail__content .c-card-imglink {
    margin-bottom: 1.25rem;
    margin-top: 1.25rem
}

@media (width < 48rem) {
    .c-block-detail__content .c-card-imglink {
        height: 13.75rem
    }
}

@media (width>=48rem) {
    .c-block-detail__content .c-card-imglink {
        margin-bottom: 1.5625rem;
        margin-top: 1.5625rem
    }
}

@media (width < 48rem) {
    .c-block-detail__content .c-card-imglink .c-button {
        left: 50%;
        right: auto;
        transform: translate(-50%)
    }
}

.c-block-detail__content-group {
    margin-bottom: 2.5rem;
    margin-top: 2.5rem
}

@media (width>=48rem) {
    .c-block-detail__content-group {
        margin-bottom: 3.125rem;
        margin-top: 3.125rem
    }
}

.c-block-detail__content-column {
    display: grid;
    gap: 1.875rem;
    grid-template-columns: 1fr;
    margin-bottom: 2.5rem;
    margin-top: 2.5rem
}

@media (width>=48rem) {
    .c-block-detail__content-column {
        grid-template-columns: 1fr 1fr;
        margin-bottom: 2.8125rem;
        margin-top: 2.8125rem
    }
}

.c-block-detail__content-column .c-text {
    margin: 0
}

.c-block-detail__content-column .c-text+.c-text {
    margin-top: .625em
}

.c-heading-bg+.c-block-detail__content-column,
.c-heading-lv3+.c-block-detail__content-column {
    margin-top: 0
}

.c-block-detail__content-btn {
    margin-bottom: 3.4375rem;
    margin-top: 3.4375rem
}

@media (width>=48rem) {
    .c-block-detail__content-btn {
        margin-bottom: 3.4375rem;
        margin-top: 3.4375rem
    }
}

.c-block-detail__content-btn .c-button {
    margin: 0 auto;
    min-width: 12.75rem
}

.c-block-detail__content-btn .c-button+.c-button {
    margin-top: 1.75rem
}

.c-heading-lv3+[data-scroll]>.c-block-detail__content-table {
    margin-top: 1.875rem
}

.c-block-detail__content-about {
    align-items: center;
    background-color: var(--color-beige);
    border-radius: .75rem;
    -moz-column-gap: .75rem;
    column-gap: .75rem;
    display: grid;
    grid-template-columns: 5rem 1fr;
    margin-bottom: 3.75rem;
    margin-top: 3.75rem;
    padding: 1.625rem 1.25rem;
    row-gap: .625rem
}

@media (width>=48rem) {
    .c-block-detail__content-about {
        -moz-column-gap: 1.5rem;
        column-gap: 1.5rem;
        grid-template-columns: calc(26% - .75rem) calc(74% - .75rem);
        grid-template-rows: auto;
        margin-bottom: 5.625rem;
        margin-top: 5.625rem;
        padding: 1.875rem 1.75rem 2.1875rem
    }
}

.c-block-detail__content-about.--festival {
    margin-top: 2.875rem
}

.c-block-detail__content-about .c-text {
    margin: 0
}

.c-block-detail__content-about__image {
    aspect-ratio: 1/1;
    background-color: #fff;
    border-radius: 50%;
    overflow: hidden
}

.c-block-detail__content-about__image img {
    display: block;
    left: 50%;
    max-height: 80%;
    max-width: 80%;
    position: relative;
    top: 50%;
    transform: translate(-50%, -50%)
}

@media (width>=48rem) {
    .c-block-detail__content-about__image {
        grid-column: 1/1;
        grid-row: 1/3
    }
}

.c-block-detail__content-about__title {
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.6
}

@media (width>=48rem) {
    .c-block-detail__content-about__title {
        grid-column: 2/3;
        grid-row: 1/1
    }
}

.c-block-detail__content-about__title span {
    display: inline-block
}

.c-block-detail__content-about__text {
    grid-column: 1/3
}

@media (width>=48rem) {
    .c-block-detail__content-about__text {
        grid-column: 2/3;
        grid-row: 2/3
    }
}

.c-block-detail__content-about__text .c-text {
    margin-bottom: 1.5625rem
}

.c-block-detail__content-about__text .c-text:last-child {
    margin-bottom: 0
}

.c-block-detail__content-figure {
    display: block
}

.c-block-detail__content-figure img {
    aspect-ratio: 330/220;
    border-radius: .5rem;
    display: block;
    overflow: hidden;
    width: 100%
}

.c-block-detail__content-figure figcaption {
    font-size: .875rem;
    margin-top: .625rem;
    text-align: center
}

.c-block-detail__content-picture {
    border-radius: .5rem;
    display: block;
    margin-bottom: 2rem;
    margin-top: 2rem;
    overflow: hidden
}

@media (width>=48rem) {
    .c-block-detail__content-picture {
        margin-bottom: 5rem
    }
}

.c-block-detail__content-picture img {
    width: 100%
}

.c-block-detail__content-event {
    margin-top: 4.0625rem
}

@media (width>=48rem) {
    .c-block-detail__content-event {
        margin-top: 5.375rem
    }
}

.c-block-detail__content-event .c-block-detail__content-column {
    margin-top: 1.75rem
}

@media (width>=48rem) {
    .c-block-detail__content-event .c-block-detail__content-column {
        margin-top: 2.125rem
    }
}

.c-block-detail__content-info {
    background-color: var(--color-beige);
    border-radius: .25rem;
    margin-top: 2.125rem;
    padding: 1.25rem
}

@media (width>=48rem) {
    .c-block-detail__content-info {
        margin-top: 2.875rem
    }
}

.c-block-detail__content-info p {
    font-size: .875rem;
    line-height: 2
}

.c-block-detail__content-point {
    margin-top: 3.75rem
}

@media (width>=48rem) {
    .c-block-detail__content-point {
        margin-top: 6.25rem
    }
}

.c-block-detail__content-point .c-text {
    margin-top: 1.5rem
}

.c-block-detail__content-class-detail {
    margin-top: 3.75rem
}

@media (width>=48rem) {
    .c-block-detail__content-class-detail {
        margin-top: 6.25rem
    }
}

.c-block-detail__content-workshop {
    margin-top: 3.75rem
}

@media (width>=48rem) {
    .c-block-detail__content-workshop {
        margin-top: 6.25rem
    }
}

.c-block-detail__content-classroom {
    margin-top: 3.75rem
}

@media (width>=48rem) {
    .c-block-detail__content-classroom {
        margin-top: 6.25rem
    }
}

.c-button {
    align-items: center;
    background-color: var(--color-black);
    border-radius: .375rem;
    color: #fff;
    display: flex;
    font-size: .9375rem;
    font-weight: 500;
    gap: 1rem;
    justify-content: space-between;
    max-width: 100%;
    min-width: 11.8125rem;
    padding: .625rem 1.25rem .625rem 1.875rem;
    transition: transform var(--duration-fast) var(--ease-power3-out);
    width: -moz-max-content;
    width: max-content
}

@media (hover) {
    .c-button:hover {
        transform: translateY(-5%)
    }
}

@media (width>=48rem) {
    .c-button {
        padding: .625rem 1.25rem
    }
}

.c-button--arrow:after {
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18.338' height='15.279' viewBox='0 0 18.338 15.279'%3E%3Cpath fill='%2360a0f9' fill-rule='evenodd' d='M10.644.378A1.527 1.527 0 0 1 12.8.521l5.158 6.111a1.53 1.53 0 0 1 0 2.013L12.8 14.757a1.528 1.528 0 0 1-2.3-2.011l2.94-3.58H1.527a1.528 1.528 0 1 1 0-3.055H13.44L10.5 2.533a1.527 1.527 0 0 1 .143-2.155Z'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18.338' height='15.279' viewBox='0 0 18.338 15.279'%3E%3Cpath fill='%2360a0f9' fill-rule='evenodd' d='M10.644.378A1.527 1.527 0 0 1 12.8.521l5.158 6.111a1.53 1.53 0 0 1 0 2.013L12.8 14.757a1.528 1.528 0 0 1-2.3-2.011l2.94-3.58H1.527a1.528 1.528 0 1 1 0-3.055H13.44L10.5 2.533a1.527 1.527 0 0 1 .143-2.155Z'/%3E%3C/svg%3E") center/contain no-repeat
}

.c-button--arrow:after,
.c-button--tab:after {
    aspect-ratio: 1;
    background-color: #fff;
    content: "";
    display: block;
    width: 1rem
}

.c-button--tab:after {
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15.757' height='16.029' viewBox='0 0 15.757 16.029'%3E%3Cpath fill='%23231815' fill-rule='evenodd' d='M5.839 3.544a.95.95 0 0 1 1.01-.884l4.945.42a.95.95 0 0 1 .884.884l.42 4.945a.949.949 0 0 1-1.893.127l-.28-2.862-5.23 5.23A.95.95 0 1 1 4.35 10.06l5.233-5.232-2.862-.275a.95.95 0 0 1-.883-1.01'/%3E%3Cpath fill='%23231815' d='M10.394 16.029H1a1 1 0 0 1-1-1v-9.4a1 1 0 0 1 1-1 1 1 0 0 1 1 1v8.4h8.394a1 1 0 0 1 1 1 1 1 0 0 1-1 1'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15.757' height='16.029' viewBox='0 0 15.757 16.029'%3E%3Cpath fill='%23231815' fill-rule='evenodd' d='M5.839 3.544a.95.95 0 0 1 1.01-.884l4.945.42a.95.95 0 0 1 .884.884l.42 4.945a.949.949 0 0 1-1.893.127l-.28-2.862-5.23 5.23A.95.95 0 1 1 4.35 10.06l5.233-5.232-2.862-.275a.95.95 0 0 1-.883-1.01'/%3E%3Cpath fill='%23231815' d='M10.394 16.029H1a1 1 0 0 1-1-1v-9.4a1 1 0 0 1 1-1 1 1 0 0 1 1 1v8.4h8.394a1 1 0 0 1 1 1 1 1 0 0 1-1 1'/%3E%3C/svg%3E") center/contain no-repeat;
    transform: translateY(-10%)
}

.c-button--pin:after {
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19.94' height='19.936' viewBox='0 0 19.94 19.936'%3E%3Cg data-name='グループ 194856' transform='translate(24.129)'%3E%3Cellipse cx='9.97' cy='9.968' fill='%23fff' data-name='楕円形 19469' rx='9.97' ry='9.968' transform='translate(-24.129)'/%3E%3Cg data-name='グループ 195269'%3E%3Cg data-name='グループ 194390'%3E%3Cg data-name='グループ 194375'%3E%3Cpath fill='%23231815' d='M-9.909 8.646a4.257 4.257 0 1 0-8.5 0c0 2.489 4.25 7.136 4.25 7.136s4.25-4.647 4.25-7.136m-6.23-.088a1.982 1.982 0 1 1 1.98 2.095 2.05 2.05 0 0 1-1.979-2.095Z' data-name='パス 615449'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E") 50%/contain no-repeat
}

.c-button--pin:after,
.c-button--play:after {
    aspect-ratio: 1;
    content: "";
    display: block;
    width: 1.25rem
}

.c-button--play:after {
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19.94' height='19.936' viewBox='0 0 19.94 19.936'%3E%3Cg transform='translate(24.129)'%3E%3Cellipse cx='9.97' cy='9.968' fill='%23fff' rx='9.97' ry='9.968' transform='translate(-24.129)'/%3E%3Cpath fill='%23231815' d='M-10.602 9.331a.55.55 0 0 1 0 .986l-5.261 2.832a.614.614 0 0 1-.919-.493V7.001a.614.614 0 0 1 .919-.493Z'/%3E%3C/g%3E%3C/svg%3E") 50%/contain no-repeat
}

@media (width>=48rem) {
    .c-button--center {
        justify-content: center;
        position: relative
    }
    .c-button--center:after {
        position: absolute;
        right: 1.5rem
    }
}

.c-button--pdf:after {
    aspect-ratio: 1;
    background-color: #fff;
    content: "";
    display: block;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22.002' height='12.998' viewBox='0 0 22.002 12.998'%3E%3Cg data-name='グループ 198589'%3E%3Cpath fill='%23fff' d='M20.002 13h-18a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h18a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2m-4.916-9.867a.64.64 0 0 0-.472.2.65.65 0 0 0-.2.475v5.393a.63.63 0 0 0 .2.471.65.65 0 0 0 .472.2.66.66 0 0 0 .471-.2.64.64 0 0 0 .2-.471V7.178H17.7a.65.65 0 0 0 .471-.2.65.65 0 0 0 .2-.473.65.65 0 0 0-.2-.471.66.66 0 0 0-.471-.2h-1.943V4.486H17.7a.65.65 0 0 0 .471-.2.64.64 0 0 0 .2-.471.66.66 0 0 0-.2-.475.64.64 0 0 0-.471-.2Zm-5.392 0a.66.66 0 0 0-.476.2.66.66 0 0 0-.2.475v5.393a.64.64 0 0 0 .2.471.67.67 0 0 0 .476.2h2.021a1.3 1.3 0 0 0 .959-.389 1.3 1.3 0 0 0 .389-.959V4.479a1.33 1.33 0 0 0-.389-.963 1.32 1.32 0 0 0-.959-.385Zm-5.4 0a.64.64 0 0 0-.471.2.66.66 0 0 0-.2.475v5.393a.64.64 0 0 0 .2.471.66.66 0 0 0 .471.2.67.67 0 0 0 .476-.2.64.64 0 0 0 .2-.471V7.178h1.353a1.3 1.3 0 0 0 .959-.389 1.29 1.29 0 0 0 .389-.959V4.482a1.33 1.33 0 0 0-.389-.963 1.33 1.33 0 0 0-.959-.385Zm7.417 5.393h-1.348V4.481h1.348zm-5.391-2.7H4.967V4.478H6.32z' data-name='中マド 57'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22.002' height='12.998' viewBox='0 0 22.002 12.998'%3E%3Cg data-name='グループ 198589'%3E%3Cpath fill='%23fff' d='M20.002 13h-18a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h18a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2m-4.916-9.867a.64.64 0 0 0-.472.2.65.65 0 0 0-.2.475v5.393a.63.63 0 0 0 .2.471.65.65 0 0 0 .472.2.66.66 0 0 0 .471-.2.64.64 0 0 0 .2-.471V7.178H17.7a.65.65 0 0 0 .471-.2.65.65 0 0 0 .2-.473.65.65 0 0 0-.2-.471.66.66 0 0 0-.471-.2h-1.943V4.486H17.7a.65.65 0 0 0 .471-.2.64.64 0 0 0 .2-.471.66.66 0 0 0-.2-.475.64.64 0 0 0-.471-.2Zm-5.392 0a.66.66 0 0 0-.476.2.66.66 0 0 0-.2.475v5.393a.64.64 0 0 0 .2.471.67.67 0 0 0 .476.2h2.021a1.3 1.3 0 0 0 .959-.389 1.3 1.3 0 0 0 .389-.959V4.479a1.33 1.33 0 0 0-.389-.963 1.32 1.32 0 0 0-.959-.385Zm-5.4 0a.64.64 0 0 0-.471.2.66.66 0 0 0-.2.475v5.393a.64.64 0 0 0 .2.471.66.66 0 0 0 .471.2.67.67 0 0 0 .476-.2.64.64 0 0 0 .2-.471V7.178h1.353a1.3 1.3 0 0 0 .959-.389 1.29 1.29 0 0 0 .389-.959V4.482a1.33 1.33 0 0 0-.389-.963 1.33 1.33 0 0 0-.959-.385Zm7.417 5.393h-1.348V4.481h1.348zm-5.391-2.7H4.967V4.478H6.32z' data-name='中マド 57'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
    width: 1.375rem
}

.c-button--back {
    min-width: auto;
    padding-left: 1.25rem
}

@media (width < 48rem) {
    .c-button--back {
        padding-bottom: .4375rem;
        padding-top: .4375rem
    }
}

@media (width>=48rem) {
    .c-button--back {
        gap: .75rem;
        height: 2.5rem
    }
}

.c-button--back:before {
    background-color: #fff;
    content: "";
    display: block;
    height: .625rem;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6.74' height='10.519' viewBox='0 0 6.74 10.519'%3E%3Cpath d='M6.429 5.938a1 1 0 0 1-.219.158l-4.4 4.13a1.11 1.11 0 0 1-1.5 0 .957.957 0 0 1 .001-1.407l3.838-3.61-3.73-3.506a.956.956 0 0 1 0-1.411 1.11 1.11 0 0 1 1.5 0l4.51 4.235a.956.956 0 0 1 0 1.411'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6.74' height='10.519' viewBox='0 0 6.74 10.519'%3E%3Cpath d='M6.429 5.938a1 1 0 0 1-.219.158l-4.4 4.13a1.11 1.11 0 0 1-1.5 0 .957.957 0 0 1 .001-1.407l3.838-3.61-3.73-3.506a.956.956 0 0 1 0-1.411 1.11 1.11 0 0 1 1.5 0l4.51 4.235a.956.956 0 0 1 0 1.411'/%3E%3C/svg%3E") center/contain no-repeat;
    transform: rotate(180deg);
    width: .375rem
}

.c-button--back:after {
    content: none
}

.c-button--open {
    min-width: auto;
    padding-left: 1.5rem;
    padding-right: 1.5rem
}

.c-button--open:after {
    aspect-ratio: 1;
    content: "";
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14.291' height='14.291' viewBox='0 0 14.291 14.291'%3E%3Cg fill='%23fff'%3E%3Cpath d='M12.79 8.645H1.5a1.5 1.5 0 1 1 0-3h11.29a1.5 1.5 0 0 1 0 3'/%3E%3Cpath d='M5.646 12.791V1.5a1.5 1.5 0 0 1 1.5-1.5 1.5 1.5 0 0 1 1.5 1.5v11.291a1.5 1.5 0 0 1-1.5 1.5 1.5 1.5 0 0 1-1.5-1.5'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14.291' height='14.291' viewBox='0 0 14.291 14.291'%3E%3Cg fill='%23fff'%3E%3Cpath d='M12.79 8.645H1.5a1.5 1.5 0 1 1 0-3h11.29a1.5 1.5 0 0 1 0 3'/%3E%3Cpath d='M5.646 12.791V1.5a1.5 1.5 0 0 1 1.5-1.5 1.5 1.5 0 0 1 1.5 1.5v11.291a1.5 1.5 0 0 1-1.5 1.5 1.5 1.5 0 0 1-1.5-1.5'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
    width: 1rem
}

.c-button--open:after,
.c-rbutton {
    background-color: #fff;
    display: block
}

.c-rbutton {
    border-radius: 1.5rem;
    font-size: 1rem;
    font-weight: 700;
    padding: .625rem 1rem;
    position: relative;
    text-align: center
}

.c-rbutton:after {
    aspect-ratio: 1;
    background-color: var(--color-black);
    content: "";
    display: block;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6.74' height='10.519' viewBox='0 0 6.74 10.519'%3E%3Cpath d='M6.429 5.938a1 1 0 0 1-.219.158l-4.4 4.13a1.11 1.11 0 0 1-1.5 0 .957.957 0 0 1 .001-1.407l3.838-3.61-3.73-3.506a.956.956 0 0 1 0-1.411 1.11 1.11 0 0 1 1.5 0l4.51 4.235a.956.956 0 0 1 0 1.411'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6.74' height='10.519' viewBox='0 0 6.74 10.519'%3E%3Cpath d='M6.429 5.938a1 1 0 0 1-.219.158l-4.4 4.13a1.11 1.11 0 0 1-1.5 0 .957.957 0 0 1 .001-1.407l3.838-3.61-3.73-3.506a.956.956 0 0 1 0-1.411 1.11 1.11 0 0 1 1.5 0l4.51 4.235a.956.956 0 0 1 0 1.411'/%3E%3C/svg%3E") center/contain no-repeat;
    position: absolute;
    right: .75rem;
    top: 50%;
    transform: translateY(-50%);
    width: .6875rem
}

.c-button-hover .c-button {
    pointer-events: none
}

.c-button-hover:hover .c-button {
    transform: translateY(-10%)
}

@media (width>=48rem) {
    .c-card-course {
        display: grid
    }
}

.c-card-course a {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: subgrid;
    position: relative
}

@media (width>=48rem) {
    .c-card-course a {
        grid-row: span 4
    }
}

@media (hover) {
    .c-card-course a {
        transition: transform var(--duration-fast) var(--ease-power3-out)
    }
    .c-card-course .c-card-course__head-pic {
        transform-origin: right bottom;
        transition: transform var(--duration-normal) var(--ease-power3-out)
    }
    .c-card-course:hover a {
        transform: translateY(-.625rem)
    }
    .c-card-course:hover .c-card-course__head-pic {
        transform: rotate(10deg) translateY(-50%)
    }
}

.c-card-course__head {
    position: absolute;
    transform: translateY(-60%);
    width: 100%
}

.c-card-course__head .c-hukidashi-text {
    width: min(14.4375rem, 68%)
}

@media (width>=48rem) {
    .c-card-course__head .c-hukidashi-text {
        left: .625rem;
        position: relative;
        z-index: 1
    }
}

.c-card-course__head-pic {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: min(13.3125rem, 100% - 11.5625rem);
    z-index: 0
}

.c-card-course__body {
    background-color: #fff;
    border: .125rem solid var(--color-border);
    border-radius: .5rem;
    padding: 2.375rem 1rem
}

@media (width>=48rem) {
    .c-card-course__body {
        align-items: flex-start;
        display: grid;
        gap: 0;
        grid-row: span 4;
        grid-template-rows: subgrid;
        padding: 3.125rem min(2.0625rem, 2.0625vw) 2.0625rem
    }
}

.c-card-course__title {
    align-items: baseline;
    display: flex;
    font-size: 1.4375rem;
    gap: .3125rem;
    margin-bottom: .625rem;
    z-index: 0
}

@media (width>=48rem) {
    .c-card-course__title {
        font-size: 1.625rem
    }
}

.c-card-course__title small {
    font-size: 1.125rem
}

@media (width>=48rem) {
    .c-card-course__title small {
        font-size: 1.25rem
    }
}

.c-card-course__text {
    margin-bottom: .9375rem
}

@media (width>=48rem) {
    .c-card-course__text {
        grid-column: 1/2
    }
}

.c-card-course__tags {
    align-items: flex-start;
    display: grid;
    gap: .625rem;
    grid-template-columns: repeat(2, 1fr)
}

@media (width>=48rem) {
    .c-card-course__tags {
        grid-template-columns: 1fr
    }
}

@media (width>=64rem) {
    .c-card-course__tags {
        grid-template-columns: repeat(2, 1fr)
    }
}

.c-card-course__tag {
    background-color: red;
    border-radius: .25rem;
    font-size: .9375rem;
    font-weight: 700;
    padding: .125rem;
    text-align: center
}

@media (width < 48rem) {
    .c-card-course__tag--auto {
        grid-column: 1/3;
        width: 100%
    }
}

@media (width>=64rem) {
    .c-card-course__tag--auto {
        grid-column: 1/3;
        padding: 0 1.875rem;
        width: -moz-max-content;
        width: max-content
    }
}

.c-card-course--pink .c-card-course__tag {
    background-color: rgba(var(--color-pink-rgb), .1);
    color: var(--color-pink)
}

.c-card-course--aqua .c-card-course__tag {
    background-color: rgba(var(--color-aqua-rgb), .1);
    color: var(--color-aqua)
}

.c-card-course--blue .c-card-course__tag {
    background-color: rgba(var(--color-blue-rgb), .1);
    color: var(--color-blue)
}

.c-card-voice {
    display: block;
    position: relative;
    width: min(24.5rem, 100%) !important
}

.c-card-voice:nth-child(3n-1) .c-card-voice__link:before {
    background-color: var(--color-blue)
}

.c-card-voice:nth-child(3n) .c-card-voice__link:before {
    background-color: var(--color-pink)
}

.c-card-voice__link {
    background-color: #fff;
    border: 1px solid var(--color-border);
    border-radius: .3125rem;
    display: block;
    padding: 2.5rem 1.25rem;
    position: relative
}

@media (width>=48rem) {
    .c-card-voice__link {
        padding: 3.4375rem 1.875rem 2.5rem
    }
}

.c-card-voice__link:before {
    aspect-ratio: 36/29;
    background-color: var(--color-aqua);
    content: "";
    display: block;
    left: 1.25rem;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='35.777' height='28.813' viewBox='0 0 35.777 28.813'%3E%3Cpath fill='%2379d2f8' d='M34.177 3.013c-3.107 2.824-6.778 5.931-7.908 10.168a8 8 0 0 1 2.165-.377c4.236 0 7.343 4.05 7.343 8.193a7.67 7.67 0 0 1-8 7.816c-5.18 0-8-5.086-8-9.8 0-7.9 5.736-14.4 11.669-19.013Zm-19.773 0c-3.107 2.824-6.778 5.931-7.908 10.168a8 8 0 0 1 2.163-.377c4.239 0 7.345 4.05 7.345 8.193a7.67 7.67 0 0 1-8 7.816c-5.18 0-8-5.086-8-9.8 0-7.908 5.741-14.4 11.674-19.017Z'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='35.777' height='28.813' viewBox='0 0 35.777 28.813'%3E%3Cpath fill='%2379d2f8' d='M34.177 3.013c-3.107 2.824-6.778 5.931-7.908 10.168a8 8 0 0 1 2.165-.377c4.236 0 7.343 4.05 7.343 8.193a7.67 7.67 0 0 1-8 7.816c-5.18 0-8-5.086-8-9.8 0-7.9 5.736-14.4 11.669-19.013Zm-19.773 0c-3.107 2.824-6.778 5.931-7.908 10.168a8 8 0 0 1 2.163-.377c4.239 0 7.345 4.05 7.345 8.193a7.67 7.67 0 0 1-8 7.816c-5.18 0-8-5.086-8-9.8 0-7.908 5.741-14.4 11.674-19.017Z'/%3E%3C/svg%3E") center/contain no-repeat;
    position: absolute;
    top: 0;
    transform: translateY(-50%);
    width: 2.25rem
}

.c-card-voice__pic {
    aspect-ratio: 1;
    border-radius: 50%;
    display: block;
    grid-row: 1/4;
    overflow: hidden;
    width: 100%
}

.c-card-voice__head {
    display: grid;
    gap: 0 .75rem;
    grid-template-columns: 4.875rem 1fr;
    margin-bottom: 1.5625rem
}

.c-card-voice__name {
    font-size: 1.0625rem;
    font-weight: 700
}

@media (width>=48rem) {
    .c-card-voice__name {
        margin-top: .125rem
    }
}

.c-card-voice__child {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .1875rem
}

.c-card-voice__child-tag {
    background-color: var(--color-beige);
    border-radius: .625rem;
    display: block;
    flex-shrink: 0;
    font-size: .625rem;
    font-weight: 700;
    padding: .125rem .375rem
}

@media (width>=48rem) {
    .c-card-voice__child-tag {
        font-size: .8125rem;
        line-height: 1.4;
        padding: .125rem .375rem
    }
}

.c-card-voice__child-text {
    display: block;
    font-size: .8125rem;
    font-weight: 700
}

.c-card-voice__title {
    font-size: 1.125rem;
    font-weight: 700;
    -webkit-line-clamp: 2;
    line-height: 1.6;
    margin-bottom: 1.25rem
}

.c-card-voice__text,
.c-card-voice__title {
    display: -webkit-box;
    display: -moz-box;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.c-card-voice__text {
    -webkit-line-clamp: 5
}

.c-card-voice:nth-child(2n):before {
    background-color: var(--color-blue)
}

.c-card-voice:nth-child(3n):before {
    background-color: var(--color-pink)
}

@media (hover) {
    .c-card-voice .c-card-voice__link {
        transition: transform var(--duration-normal) var(--ease-power3-out)
    }
    .c-card-voice:hover .c-card-voice__link {
        transform: translateY(-5%)
    }
}

.c-card-default {
    width: min(100%, 24.1875rem)
}

.c-card-default__pic {
    border-radius: .5rem;
    display: block;
    margin-bottom: 1.5rem;
    overflow: hidden
}

.c-card-default__pic img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    width: 100%
}

.c-card-default__title {
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.6;
    margin-bottom: .9375rem
}

.c-card-default__text,
.c-card-default__title {
    display: -webkit-box;
    display: -moz-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.c-card-default__text {
    margin-bottom: .625rem
}

.c-card-default__tags {
    display: flex;
    flex-wrap: wrap;
    font-size: .875rem;
    font-weight: 700;
    gap: .375rem .625rem
}

.c-card-default__tags li {
    background-color: #fff;
    border: 1px solid var(--color-border);
    border-radius: 1rem;
    padding: 0 .75rem
}

.c-card-default__date {
    align-items: center;
    display: flex;
    font-weight: 500;
    gap: 1rem;
    margin-top: .875rem;
    position: relative;
    white-space: nowrap
}

.c-card-default__date:after {
    background: radial-gradient(circle at .1875rem 50%, #bbb 2px, transparent 0), transparent;
    background-position: 50%;
    background-repeat: repeat-x;
    background-size: .625rem;
    content: "";
    display: block;
    width: 100%
}

@media (hover) {
    .c-card-default__pic img {
        transition: transform var(--duration-normal) var(--ease-power3-out)
    }
    .c-card-default a:hover .c-card-default__pic img {
        transform: scale(1.2)
    }
}

.c-card-default__info {
    display: flex;
    gap: 0 1.3125rem;
    margin-bottom: .625rem
}

.c-card-default__info time {
    align-items: center;
    flex-shrink: 0;
    font-size: 1rem
}

.c-cards-business {
    border: 1px solid var(--color-border);
    border-radius: .5rem;
    display: grid;
    gap: 1.25rem;
    padding: 2rem 1.875rem 3.125rem;
    position: relative;
    width: min(23.875rem, 100%)
}

@media (width>=48rem) {
    .c-cards-business {
        padding: 1.875rem min(1.875rem, 2.1428571429vw) 2.5rem
    }
}

.c-cards-business:after,
.c-cards-business:before {
    aspect-ratio: 1;
    bottom: 0;
    content: "";
    display: block;
    position: absolute;
    right: 0;
    width: 2.5rem
}

.c-cards-business:before {
    background-color: var(--color-black);
    border-radius: .5rem 0
}

.c-cards-business:after {
    background-color: #fff;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18.338' height='15.279' viewBox='0 0 18.338 15.279'%3E%3Cpath fill='%2360a0f9' fill-rule='evenodd' d='M10.644.378A1.527 1.527 0 0 1 12.8.521l5.158 6.111a1.53 1.53 0 0 1 0 2.013L12.8 14.757a1.528 1.528 0 0 1-2.3-2.011l2.94-3.58H1.527a1.528 1.528 0 1 1 0-3.055H13.44L10.5 2.533a1.527 1.527 0 0 1 .143-2.155Z'/%3E%3C/svg%3E") center/.875rem no-repeat;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18.338' height='15.279' viewBox='0 0 18.338 15.279'%3E%3Cpath fill='%2360a0f9' fill-rule='evenodd' d='M10.644.378A1.527 1.527 0 0 1 12.8.521l5.158 6.111a1.53 1.53 0 0 1 0 2.013L12.8 14.757a1.528 1.528 0 0 1-2.3-2.011l2.94-3.58H1.527a1.528 1.528 0 1 1 0-3.055H13.44L10.5 2.533a1.527 1.527 0 0 1 .143-2.155Z'/%3E%3C/svg%3E") center/.875rem no-repeat
}

.c-cards-business__head {
    align-items: center;
    display: grid;
    gap: 0 .5625rem;
    grid-template-columns: 5rem 1fr
}

@media (width>=48rem) {
    .c-cards-business__head {
        gap: 0 1.125rem;
        grid-template-columns: min(6.25rem, 7.1428571429vw) 1fr
    }
}

.c-cards-business__head-pic {
    aspect-ratio: 1;
    border-radius: 50%;
    display: block;
    grid-row: 1/3;
    overflow: hidden
}

.c-cards-business__head-pic img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    width: 100%
}

.c-cards-business__head-for {
    align-self: flex-end;
    background: radial-gradient(circle at .1875rem calc(100% - .1875rem), #bbb 2px, transparent 0), transparent;
    background-position: left 2px bottom;
    background-repeat: repeat-x;
    background-size: 10px;
    font-size: .9375rem;
    font-weight: 700;
    margin-bottom: .3125rem;
    padding-bottom: .75rem
}

.c-cards-business__head-title {
    align-self: flex-start;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.75
}

@media (width>=48rem) {
    .c-cards-business__head-title {
        font-size: min(1.5rem, 1.7142857143vw)
    }
}

.c-cards-business--pink .c-cards-business__head-for {
    color: var(--color-pink)
}

.c-cards-business--aqua .c-cards-business__head-for {
    color: var(--color-aqua)
}

@media (hover) {
    .c-cards-business {
        transition: transform var(--duration-fast) var(--ease-power3-out)
    }
    .c-cards-business:hover {
        transform: translateY(-.625rem)
    }
}

.c-card-news {
    background: var(--dotted-line-bottom-pale);
    display: block
}

.c-card-news__link {
    display: block;
    padding: 0 0 .9375rem
}

@media (width>=48rem) {
    .c-card-news__link {
        padding: 0 0 1.25rem
    }
}

@media (hover) {
    .c-card-news__link .c-text {
        transition: color var(--duration-fast) var(--ease-power3-out)
    }
    .c-card-news__link:hover .c-text {
        color: var(--color-blue)
    }
}

.c-card-news__link[href*=".pdf"] .c-card-news__body .c-text:after {
    background-color: #c30000;
    border-radius: .1875rem;
    color: #fff;
    content: "PDF";
    display: inline-block;
    font-family: var(--font-en);
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .03em;
    line-height: 1;
    padding: .1875rem .375rem
}

.c-card-news__head {
    align-items: center;
    display: flex;
    gap: 1.25rem;
    margin-bottom: .625rem
}

.c-card-news__head-date {
    flex-shrink: 0
}

.c-card-news__head-tags {
    display: flex;
    flex-wrap: wrap;
    font-size: .875rem;
    font-weight: 700;
    gap: .3125rem;
    line-height: 1.4
}

.c-card-news__head-tags li {
    border: 1px solid var(--color-border);
    border-radius: .9375rem;
    padding: 0 .75rem;
    text-align: center
}

@media (width>=48rem) {
    .c-card-news__head-tags li {
        min-width: 5rem
    }
}

.c-card-news__body {
    display: -webkit-box;
    display: -moz-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.c-card-news--archive {
    margin-bottom: 1.5625rem
}

@media (width>=48rem) {
    .c-card-news--archive {
        margin-bottom: 2.1875rem
    }
}

.c-card-news--archive:last-of-type {
    margin-bottom: 0
}

@media (width>=48rem) {
    .c-card-news--archive .c-card-news__head-tags {
        display: flex;
        flex-shrink: 0;
        width: 7.5rem
    }
}

.c-card-news--archive .c-card-news__link {
    padding-bottom: 1.5625rem
}

@media (width>=48rem) {
    .c-card-news--archive .c-card-news__link {
        align-items: flex-start;
        display: flex;
        padding-bottom: 2.1875rem
    }
    .c-card-news--archive .c-card-news__head {
        flex-shrink: 0;
        width: 13.9375rem
    }
}

.c-card-courseguide {
    background-color: #fff;
    border-radius: .5625rem;
    padding: 2.5rem 1.25rem 1.5rem;
    position: relative
}

@media (width>=48rem) {
    .c-card-courseguide {
        align-items: center;
        display: flex;
        gap: min(5.1875rem, 5.1875vw);
        padding: 2.8125rem 3.875rem
    }
}

.c-card-courseguide-hukidashi {
    position: absolute;
    right: .9375rem;
    top: -.75rem
}

@media (width>=48rem) {
    .c-card-courseguide-hukidashi {
        left: 3.875rem;
        right: auto
    }
}

.c-card-courseguide-content {
    margin-bottom: 1.25rem
}

@media (width>=48rem) {
    .c-card-courseguide-content {
        margin-bottom: 0;
        padding: 1.5625rem 0;
        width: 39.9375rem
    }
}

.c-card-courseguide-head {
    margin-bottom: .9375rem
}

@media (width>=48rem) {
    .c-card-courseguide-head {
        align-items: center;
        display: flex;
        flex-wrap: nowrap;
        gap: 0 1.875rem
    }
}

.c-card-courseguide-head h3 {
    color: var(--color-pink);
    font-size: 1.4375rem;
    font-weight: 700;
    margin-bottom: .625rem
}

@media (width>=48rem) {
    .c-card-courseguide-head h3 {
        flex-shrink: 0;
        font-size: min(24px, 1.7142857143vw);
        margin-bottom: 0
    }
}

.c-card-courseguide-dl>div {
    width: 100%
}

@media (width>=48rem) {
    .c-card-courseguide-dl>div {
        width: auto
    }
}

.c-card-courseguide-pic {
    border-radius: .625rem;
    display: block;
    overflow: hidden
}

@media (width>=48rem) {
    .c-card-courseguide-pic {
        width: 24.625rem
    }
}

.c-card-courseguide-pic img {
    display: block;
    width: 100%
}

.c-card-courseguide--min {
    padding-bottom: 1.75rem;
    padding-left: 1.75rem;
    padding-right: 1.75rem
}

@media (width>=48rem) {
    .c-card-courseguide--min {
        display: grid;
        gap: 0;
        grid-row: span 4;
        grid-template-rows: subgrid;
        padding-top: 1.4375rem
    }
}

.c-card-courseguide--min .c-card-courseguide-hukidashi {
    left: 0;
    right: auto;
    width: -moz-max-content;
    width: max-content
}

.c-card-courseguide--min .c-hukidashi-text {
    gap: .5625rem
}

.c-card-courseguide--min .c-card-courseguide-content {
    width: 100%
}

@media (width>=48rem) {
    .c-card-courseguide--min .c-card-courseguide-content {
        display: grid;
        grid-row: span 4;
        grid-template-rows: subgrid;
        padding-bottom: 0;
        padding-top: 0
    }
}

.c-card-courseguide--min .c-card-courseguide-head {
    align-items: center;
    display: grid;
    gap: .9375rem;
    grid-template-columns: 1fr .5fr
}

@media (width>=48rem) {
    .c-card-courseguide--min .c-card-courseguide-head {
        grid-row: span 2;
        margin-bottom: 1.25rem
    }
}

.c-card-courseguide--min .c-card-courseguide-head h3 {
    font-size: 1.25rem;
    margin-bottom: 0;
    margin-top: .625rem
}

@media (width>=48rem) {
    .c-card-courseguide--min .c-card-courseguide-head h3 {
        margin-top: 1.25rem
    }
}

.c-card-courseguide--min .c-card-courseguide-head h3 span {
    background: var(--dotted-line-bottom-pale);
    color: var(--color-black);
    display: block;
    font-size: .875rem;
    margin-bottom: .25rem;
    padding-bottom: .5rem
}

.c-card-courseguide--min .c-card-courseguide-title {
    font-size: 1rem;
    font-weight: 700;
    margin-bottom: 1.25rem
}

.c-card-courseguide--min .c-card-courseguide-pic {
    aspect-ratio: 1;
    border-radius: 50%;
    width: 100%
}

.c-card-courseguide--min .c-card-courseguide-pic img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    width: 100%
}

.c-card-courseguide--min .c-card-courseguide {
    padding: 1.5rem
}

.c-card-courseguide--min .c-card-courseguide-hukidashi {
    left: .75rem;
    transform: translateY(-40%)
}

.c-card-courseguide--min .c-card-courseguide-hukidashi .c-hukidashi-text {
    white-space: nowrap
}

@media (width>=48rem) {
    .c-card-courseguide--min .c-card-courseguide-hukidashi .c-hukidashi-text {
        font-size: .9375rem;
        height: 3.125rem;
        justify-content: center;
        width: 12.5rem
    }
    .c-card-courseguide--min .c-card-courseguide-hukidashi .c-hukidashi-text:before {
        width: 1rem
    }
}

.c-card-courseguide--min .c-card-courseguide-hukidashi:after {
    left: 10%;
    transform: scaleX(-1) translateY(-50%) rotate(-20deg)
}

.c-card-courseguide--min .c-list-dl dd,
.c-card-courseguide--min .c-list-dl dt {
    margin: 0
}

.c-card-courseguide--min .c-list-dl dd:first-of-type {
    grid-column: 2/5
}

.c-card-education {
    border: 1px solid var(--color-border);
    border-radius: .5rem;
    padding: 1.875rem
}

.c-card-education__tags {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: .625rem
}

.c-card-education__tags li {
    align-items: center;
    background-color: var(--color-beige);
    border-radius: 1.875rem;
    display: flex;
    font-size: .875rem;
    font-weight: 700;
    line-height: 1.4;
    min-height: 1.8125rem;
    padding: 0 .75rem
}

.c-card-education__title {
    font-weight: 700
}

.c-card-education__title+.c-card-education__text {
    margin-top: .625rem !important
}

.c-card-education__pic {
    display: block;
    margin-bottom: 1.5625rem
}

.c-card-education__text {
    margin-top: 0
}

.c-card-award {
    align-items: center;
    border: 1px solid var(--color-border);
    border-radius: .5rem;
    display: grid;
    gap: 1.5rem .9375rem;
    grid-template-areas: "pic head" "body body";
    grid-template-columns: 4.875rem 1fr;
    padding: 2.1875rem 1.25rem;
    position: relative
}

@media (width>=48rem) {
    .c-card-award {
        align-items: flex-start;
        gap: 1.25rem 1.6875rem;
        grid-template-areas: "pic head" "pic body";
        padding: 2.25rem 2.5rem
    }
}

.c-card-award .c-button {
    grid-column: 1/3;
    margin: 0 auto
}

@media (width>=48rem) {
    .c-card-award .c-button {
        display: none
    }
}

.c-card-award__pic {
    border-radius: 50%;
    grid-area: pic;
    overflow: hidden
}

.c-card-award__pic img {
    display: block;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    width: 100%
}

.c-card-award__head {
    align-items: center;
    background: var(--dotted-line-bottom-pale);
    display: flex;
    flex-wrap: wrap;
    font-size: 1.125rem;
    font-weight: 700;
    gap: 0 .4375rem;
    grid-area: head;
    line-height: 1.5;
    padding-bottom: 1.125rem
}

@media (width>=48rem) {
    .c-card-award__head {
        gap: .8125rem;
        margin-top: .625rem;
        padding-bottom: .75rem
    }
}

.c-card-award__head span {
    color: var(--color-blue);
    display: block;
    font-size: 1rem;
    font-weight: 500;
    width: 100%
}

@media (width>=48rem) {
    .c-card-award__head span {
        width: auto
    }
}

.c-card-award__head small {
    color: var(--color-gray2);
    display: block;
    font-family: var(--font-en);
    font-size: .75rem;
    font-weight: 600
}

.c-card-award__body {
    grid-area: body;
    height: calc(5em*var(--line-height));
    overflow: hidden;
    position: relative
}

@media (width>=48rem) {
    .c-card-award__body {
        height: auto
    }
}

.c-card-award__body:after {
    background-image: linear-gradient(180deg, #fff0, #fff);
    bottom: 0;
    content: "";
    display: block;
    height: 50%;
    left: 0;
    position: absolute;
    width: 100%
}

@media (width>=48rem) {
    .c-card-award__body:after {
        content: none;
        display: none
    }
}

.c-card-award.is-open .c-card-award__body:after {
    display: none
}

.c-card-imglink {
    background-color: var(--color-gray);
    border-radius: .625rem;
    overflow: hidden;
    position: relative
}

.c-card-imglink picture {
    display: block
}

.c-card-imglink picture img {
    width: 100%
}

.c-card-imglink .c-button {
    bottom: .75rem;
    position: absolute;
    right: .75rem
}

@media (width>=48rem) {
    .c-card-imglink .c-button {
        bottom: 1.125rem;
        padding-left: 2.5rem;
        right: 1.125rem
    }
}

.c-card-interview {
    margin-top: 3.25rem
}

@media (width>=48rem) {
    .c-card-interview {
        margin-top: 3.75rem
    }
}

.c-card-interview__answer {
    -moz-column-gap: 1rem;
    column-gap: 1rem;
    display: grid;
    grid-template-columns: 2.5rem 1fr;
    grid-template-rows: auto;
    margin-top: 1.875rem
}

@media (width>=48rem) {
    .c-card-interview__answer {
        grid-template-columns: 3.25rem 1fr;
        margin-top: 2.1875rem
    }
}

.c-card-interview__image {
    border-radius: 50%
}

@media (width>=48rem) {
    .c-card-interview__image {
        grid-column: 1/1;
        grid-row: 1/3
    }
}

.c-card-interview__name {
    font-size: .8125rem;
    grid-column: 1/2;
    grid-row: 2/2;
    text-align: center
}

@media (width>=48rem) {
    .c-card-interview__name {
        font-size: .9375rem;
        grid-column: 2/2;
        grid-row: 1/2;
        text-align: left
    }
}

.c-card-interview__name.--blue {
    color: var(--color-blue)
}

.c-card-interview__name.--pink {
    color: var(--color-pink)
}

.c-card-interview__text {
    grid-column: 2/2;
    grid-row: 1/4
}

@media (width>=48rem) {
    .c-card-interview__text {
        grid-column: 2/2;
        grid-row: 2/3
    }
}

.c-card-interview__text .c-text+.c-text {
    margin-top: .625em
}

.c-card-interview__question {
    font-weight: 700;
    margin-top: .9375rem
}

.c-card-interview__question:before {
    content: "ー";
    font-size: 1rem;
    font-weight: 700;
    margin-top: 2.5rem
}

.c-card-interview__answer+.c-card-interview__question {
    margin-top: 2.5rem
}

.c-case {
    padding: 5rem 0
}

@media (width>=48rem) {
    .c-case {
        padding: 6.25rem 0
    }
}

@media (width < 48rem) {
    .c-case .c-card-default__title {
        font-size: 1.125rem;
        margin-top: .9375rem
    }
}

@media (width>=48rem) {
    .c-case .c-card-default__title {
        margin-bottom: .625rem
    }
}

.c-case .c-card-default__text {
    display: -webkit-box;
    -webkit-line-clamp: none;
    overflow: visible;
    -webkit-box-orient: vertical
}

.c-columns-2 {
    display: grid;
    grid: 1fr;
    row-gap: 3.125rem
}

@media (width>=48rem) {
    .c-columns-2 {
        -moz-column-gap: min(3.125rem, 3.125vw);
        column-gap: min(3.125rem, 3.125vw);
        grid-template-columns: repeat(2, 1fr);
        row-gap: min(4.125rem, 4.125vw)
    }
}

.c-cta-application {
    align-items: center;
    background-color: var(--color-blue);
    border-radius: .75rem;
    display: flex;
    margin: 0 auto;
    max-width: 77.5rem;
    min-height: 14rem;
    padding: 1.875rem;
    position: relative
}

@media (width>=48rem) {
    .c-cta-application {
        min-height: 13rem;
        padding: 2.25rem 3.25rem
    }
}

.c-cta-gear {
    opacity: .3;
    position: absolute
}

.c-cta-gear.--big {
    left: -4.75rem;
    top: -4.375rem;
    width: 12.875rem
}

@media (width>=48rem) {
    .c-cta-gear.--big {
        left: -7.5rem;
        top: -7.5rem;
        width: 21.5rem
    }
}

.c-cta-gear.--small {
    bottom: -3.125rem;
    right: -2.5rem;
    width: 7.25rem
}

@media (width>=48rem) {
    .c-cta-gear.--small {
        bottom: -3.25rem;
        left: 50%;
        right: inherit;
        transform: translate(-50%);
        width: 11.375rem
    }
}

.c-cta-robot {
    position: absolute;
    z-index: 2
}

.c-cta-robot.--horizontal {
    bottom: -2rem;
    left: 0;
    width: 6.375rem
}

@media (width>=48rem) {
    .c-cta-robot.--horizontal {
        bottom: inherit;
        left: 1.5rem;
        top: -.3125rem;
        width: 8.25rem
    }
}

.c-cta-robot.--vertical {
    right: 1.5rem;
    top: -2.25rem;
    width: 4.8125rem
}

@media (width>=48rem) {
    .c-cta-robot.--vertical {
        bottom: 0;
        left: 44%;
        right: inherit;
        top: inherit;
        transform: translate(-50%);
        width: 6.1875rem
    }
}

.c-cta-contents {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    width: 100%
}

@media (width>=48rem) {
    .c-cta-contents {
        align-items: center;
        flex-direction: row;
        gap: min(6.25rem, 7.1428571429vw);
        justify-content: space-between;
        margin-left: auto;
        margin-right: 0;
        max-width: 65.625rem
    }
}

.c-cta-application__title {
    color: #fff;
    font-size: 1.25rem;
    font-weight: 600;
    letter-spacing: .03em;
    line-height: 1.6;
    position: relative;
    text-align: center
}

@media (width>=48rem) {
    .c-cta-application__title {
        font-size: 2.0625rem;
        font-size: min(30px, 2.5vw);
        margin-top: .9375rem;
        text-align: left;
        z-index: 3
    }
}

.c-cta-application__buttons {
    display: grid;
    gap: .625rem;
    position: relative
}

@media (width>=48rem) {
    .c-cta-application__buttons {
        gap: 1rem;
        width: min(28.125rem, 50%)
    }
}

.c-cta-application__buttons-free {
    background-color: #fff;
    border-radius: .5rem;
    color: var(--color-blue);
    font-size: 1.125rem;
    letter-spacing: .02em;
    line-height: 1.2;
    padding: 1.5625rem;
    width: 100%
}

@media (width>=48rem) {
    .c-cta-application__buttons-free {
        font-size: 1.5625rem;
        padding: 1.875rem 2rem
    }
}

.c-cta-application__buttons-free:after {
    background-color: var(--color-blue)
}

.c-cta-application__buttons-event {
    background-color: transparent;
    border: 1px solid #fff;
    border-radius: .5rem;
    color: #fff;
    font-size: .9375rem;
    line-height: 1.4;
    padding: .625rem 1.5625rem .625rem 2.5rem;
    text-align: center;
    width: 100%
}

@media (width>=48rem) {
    .c-cta-application__buttons-event {
        font-size: 1rem;
        padding: 1.125rem 2rem
    }
}

.c-cta-application__buttons-event br {
    display: block
}

@media (width>=48rem) {
    .c-cta-application__buttons-event br {
        display: none
    }
    .c-cta-application--min {
        padding-bottom: 2rem;
        padding-top: 2rem
    }
    .c-cta-application--min .c-cta-contents {
        max-width: 58.3125rem
    }
    .c-cta-application--min .c-cta-application__title {
        font-size: 1.875rem
    }
    .c-cta-application--min .c-cta-application__buttons {
        width: 25rem
    }
    .c-cta-application--min .c-cta-application__buttons-event,
    .c-cta-application--min .c-cta-application__buttons-free {
        padding-left: 1.75rem;
        padding-right: 1.75rem
    }
    .c-cta-application--min .c-cta-application__buttons-free {
        font-size: 1.5625rem;
        padding-bottom: 1.5625rem;
        padding-top: 1.5625rem
    }
    .c-cta-application--min .c-cta-application__buttons-event {
        font-size: .9375rem;
        padding-bottom: .875rem;
        padding-top: .875rem
    }
    .c-cta-application--min .c-cta-robot.--horizontal {
        width: 7.5rem
    }
    .c-cta-application--min .c-cta-robot.--vertical {
        width: 5.625rem
    }
}

@media (width>=48rem) and (width>=48rem) {
    .c-cta-application--min .c-cta-gear.--big {
        left: -6.5625rem;
        top: -6.5625rem;
        width: 19.0625rem
    }
}

.c-cta-fixed {
    bottom: -.625rem;
    display: none;
    left: .625rem;
    position: fixed;
    right: .625rem;
    z-index: 10
}

.c-cta-fixed img {
    height: 100%;
    width: 100%
}

@media (width>=48rem) {
    .c-cta-fixed {
        display: none !important;
        height: 25rem;
        width: 25rem
    }
}

.c-cta-fixed__close {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
    border: none;
    cursor: pointer;
    display: block;
    height: 2.5rem;
    padding: .625rem;
    position: absolute;
    right: 0;
    top: 0;
    transform: translateY(-50%);
    width: 2.5rem
}

.c-cta-fixed__close img {
    height: 100%;
    width: 100%
}

[data-area-color=北海道・東北エリア] .p-school-detail__head-loop {
    color: rgba(var(--color-blue-rgb), .1)
}

[data-area-color=北海道・東北エリア] .p-school-detail__head-area {
    color: var(--color-blue)
}

[data-area-color=関東エリア] .p-school-detail__head-loop {
    color: rgba(var(--color-aqua-rgb), .1)
}

[data-area-color=関東エリア] .p-school-detail__head-area {
    color: var(--color-aqua)
}

[data-area-color=東海エリア] .p-school-detail__head-loop {
    color: rgba(var(--color-yellow-rgb), .1)
}

[data-area-color=東海エリア] .p-school-detail__head-area {
    color: var(--color-yellow)
}

[data-area-color=関西エリア] .p-school-detail__head-loop {
    color: rgba(var(--color-orange-rgb), .1)
}

[data-area-color=関西エリア] .p-school-detail__head-area {
    color: var(--color-orange)
}

[data-area-color=中国・四国エリア] .p-school-detail__head-loop {
    color: rgba(var(--color-pink-rgb), .1)
}

[data-area-color=中国・四国エリア] .p-school-detail__head-area {
    color: var(--color-pink)
}

[data-area-color=九州エリア] .p-school-detail__head-loop {
    color: rgba(var(--color-purple-rgb), .1)
}

[data-area-color=九州エリア] .p-school-detail__head-area {
    color: var(--color-purple)
}

[data-scroll] {
    position: relative;
    width: 100%
}

[data-scroll]:after,
[data-scroll]:before {
    aspect-ratio: 183/124;
    border-radius: .25rem;
    content: "";
    display: block;
    left: 50%;
    overflow: hidden;
    pointer-events: none;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 11.4375rem;
    z-index: 5
}

[data-scroll]:before {
    background: url(../images/c-scroll-bg.webp) no-repeat 50%/contain
}

[data-scroll]:after {
    animation: scrollAnimation 2s var(--ease-power2-out) infinite;
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32.964' height='38.676' viewBox='0 0 32.964 38.676'%3E%3Cg fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' data-name='グループ 198004'%3E%3Cpath d='m26.559 17.249-.008-2.786c-.01-3.562 5.425-3.339 5.413.5l-.014 4.861-.375 10.745c-.264 7.571-17.346 9.631-21.47 3.231L1.951 23.662c-.824-1.239-1.529-3.058-.221-3.839a4.99 4.99 0 0 1 5.175 1.058c2.386 2.893 3.477 4.2 3.464-.37l-.052-16.89c-.008-3.111 5.247-3.883 5.3.072l.153 11.771' data-name='パス 1379188'/%3E%3Cpath d='m21.25 16.462.034-3.655c.028-3.111-5.389-3.883-5.458.072l-.063 3.63' data-name='パス 1379189'/%3E%3Cpath d='m26.575 17.175.016-3.845c.012-3.111-5.225-3.89-5.322.072' data-name='パス 1379190'/%3E%3C/g%3E%3C/svg%3E") no-repeat 50%/1.9375rem
}

[data-scrollarea] {
    overflow-x: auto;
    width: 100%
}

@keyframes scrollAnimation {
    0% {
        opacity: 0;
        transform: translate(-60%, -50%)
    }
    10% {
        opacity: 1;
        transform: translate(-60%, -50%)
    }
    90% {
        opacity: 1;
        transform: translate(-40%, -50%)
    }
    to {
        opacity: 0;
        transform: translate(-40%, -50%)
    }
}

@media (width>=48rem) {
    [data-scroll=sm]:after,
    [data-scroll=sm]:before {
        content: none
    }
}

[data-scroll].is-animated:after,
[data-scroll].is-animated:before {
    opacity: 0;
    transition: opacity .3s ease-in-out .6s, visibility .3s ease-in-out .6s;
    visibility: hidden
}

[data-latlng] {
    height: 21rem;
    width: 100%
}

@media (width>=48rem) {
    [data-latlng] {
        height: 24.375rem
    }
}

[data-modal] {
    display: none
}

.c-detail {
    padding-bottom: 4.375rem
}

@media (width>=48rem) {
    .c-detail {
        padding-bottom: 5rem
    }
}

.c-detail .c-inner {
    width: 100%
}

@media (width>=48rem) {
    .c-detail .c-inner {
        width: min(77.5rem, 92%)
    }
}

.c-detail--nopd {
    padding-bottom: 0
}

.c-dl-line {
    margin-top: 2.5rem
}

@media (width>=48rem) {
    .c-dl-line {
        margin-top: 3rem
    }
}

.c-dl-line__row {
    align-items: stretch;
    display: grid;
    gap: 1rem;
    grid-template-columns: calc(30% - .5rem) calc(70% - .5rem)
}

@media (width>=48rem) {
    .c-dl-line__row {
        gap: 2rem;
        grid-template-columns: calc(20% - 1rem) calc(80% - 1rem)
    }
}

.c-dl-line__row dd,
.c-dl-line__row dt {
    padding: 1.125rem 0
}

.c-dl-line__row dd p,
.c-dl-line__row dt p {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: flex-start
}

@media (width>=48rem) {
    .c-dl-line__row dd p,
    .c-dl-line__row dt p {
        justify-content: center
    }
}

.c-dl-line__row dt {
    border-bottom: 2px solid var(--color-border);
    font-weight: 700
}

.c-dl-line__row dd {
    background: var(--dotted-line-bottom-pale);
    line-height: 1.75
}

@media (width>=48rem) {
    .c-dl-line__row dd {
        line-height: 1.8
    }
}

.c-dl-line__row:first-of-type dt {
    border-top: 2px solid var(--color-border)
}

.c-dl-line__row:first-of-type dd {
    position: relative
}

.c-dl-line__row:first-of-type dd:before {
    background: var(--dotted-line-top-pale);
    content: "";
    display: block;
    height: .21875rem;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.c-dl-line__row-logo {
    display: flex;
    flex-wrap: wrap;
    gap: .625rem
}

.c-dl-line__row-logo a {
    display: block
}

.c-dl-line__row-logo img {
    display: block;
    max-height: 3.4375rem;
    max-width: 100%
}

@media (width>=48rem) {
    .c-dl-line__row-logo img {
        max-height: 3.75rem
    }
}

.c-dl-line__row--center dd p,
.c-dl-line__row--center dt p {
    justify-content: center
}

.c-dl-line__row-sns {
    display: flex;
    gap: .75rem
}

.c-dl-line__row-sns li {
    width: 2.625rem
}

.c-dl-line__row-sns a {
    display: block
}

.c-dl-line__row-sns img {
    width: 100%
}

.c-gallary {
    overflow: hidden;
    width: 100%
}

.c-gallary__slider {
    margin: 0 auto
}

.c-gallary__slider .swiper-wrapper {
    transition-timing-function: ease !important
}

.c-gallary__item {
    width: 19rem !important
}

@media (width>=48rem) {
    .c-gallary__item {
        width: 41.5rem !important
    }
}

.c-gallary--white {
    background-color: #fff
}

.c-gallary--grad {
    background: linear-gradient(to bottom, var(--color-beige) 40%, #fff 40%)
}

.c-gallary--grad-reverse {
    background: linear-gradient(to bottom, #fff 40%, var(--color-beige) 40%)
}

@media (width>=48rem) {
    .c-gallary__slider--min .c-gallary__item {
        width: 27.5rem !important
    }
    .c-gallary__slider--min+.c-slider-controller {
        display: none
    }
}

.c-gear-asset00 svg,
.c-gear-asset01 svg {
    image-rendering: smooth;
    shape-rendering: geometricPrecision;
    width: 100%
}

.c-gear-animate,
.c-gear-animate--reverse {
    transform-origin: 50% 50%
}

@keyframes identifier {
    0% {
        transform: rotate(0)
    }
    to {
        transform: rotate(1turn)
    }
}

.c-gear-scale {
    transform-origin: 50% 50%
}

.c-gear-asset00 {
    aspect-ratio: 1
}

.c-gear-asset01 {
    aspect-ratio: 530/550;
    position: relative;
    width: 33.125rem
}

.c-gear-asset01 svg {
    position: absolute
}

.c-gear-asset01 svg:first-child {
    right: 0;
    top: 0;
    width: 15.8125rem
}

.c-gear-asset01 svg:nth-child(2) {
    bottom: 0;
    left: 0;
    width: 24.75rem
}

.c-heading-lv2 {
    line-height: 1.5;
    margin-bottom: .9375rem
}

@media (width>=48rem) {
    .c-heading-lv2 {
        margin-bottom: 1.25rem
    }
}

.c-heading__en {
    display: inline-flex;
    font-family: var(--font-en);
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.4
}

@media (width>=48rem) {
    .c-heading__en {
        font-size: 3.875rem
    }
}

.c-heading__ja {
    display: block;
    font-size: 1rem;
    font-weight: 700
}

.c-heading--center {
    text-align: center
}

.c-heading--horizontal {
    align-items: baseline;
    display: flex;
    gap: 1rem
}

@media (width>=48rem) {
    .c-heading-lv2--min .c-heading__en {
        font-size: 2.625rem
    }
    .c-heading-lv2--min .c-heading__ja {
        font-size: 1.0625rem
    }
}

.c-heading-withsub {
    font-weight: 700;
    margin-bottom: 1.25rem;
    text-align: center
}

@media (width>=48rem) {
    .c-heading-withsub {
        margin-bottom: 3.125rem
    }
}

.c-heading-withsub>small {
    display: block;
    font-size: 1.0625rem
}

@media (width>=48rem) {
    .c-heading-withsub>small {
        font-size: 1.1875rem;
        margin-bottom: .625rem
    }
}

.c-heading-withsub>span {
    display: block;
    font-size: 1.375rem;
    line-height: 2.1875rem
}

@media (width>=48rem) {
    .c-heading-withsub>span {
        font-size: 2.5rem;
        line-height: 3.375rem
    }
}

.c-heading-withsub>span .u-en {
    font-size: 2rem
}

@media (width>=48rem) {
    .c-heading-withsub>span .u-en {
        font-size: 3rem
    }
}

.c-heading-circle {
    font-size: 1.5rem;
    line-height: 1.5833333333;
    padding-top: 1.25rem;
    position: relative
}

@media (width>=48rem) {
    .c-heading-circle {
        font-size: 2.25rem;
        padding-top: 1.5rem
    }
}

.c-heading-circle:before {
    aspect-ratio: 1;
    background-color: var(--color-pink);
    border-radius: 50%;
    box-shadow: .875rem 0 0 0 var(--color-blue), 1.75rem 0 0 0 var(--color-aqua);
    content: "";
    display: block;
    left: 0;
    position: absolute;
    top: 0;
    width: .5rem
}

.c-heading-circle+.c-text {
    margin-top: 1.5625rem
}

@media (width>=48rem) {
    .c-heading-circle+.c-text {
        margin-top: 2.1875rem
    }
}

.c-heading-lv3 {
    align-items: stretch;
    display: flex;
    font-size: 1.1875rem;
    gap: .5rem
}

@media (width>=48rem) {
    .c-heading-lv3 {
        font-size: 1.625rem;
        gap: .75rem
    }
}

.c-heading-lv3:before {
    background-color: var(--color-blue);
    border-radius: 9999px;
    clip-path: polygon(0 .5rem, 100% .5rem, 100% calc(100% - .5rem), 0 calc(100% - .5rem));
    content: "";
    display: block;
    width: .1875rem
}

@media (width>=48rem) {
    .c-heading-lv3:before {
        clip-path: polygon(0 20%, 100% 20%, 100% 80%, 0 80%);
        width: .25rem
    }
}

.c-heading-lv3--pink:before {
    background-color: var(--color-pink)
}

.c-heading-bg {
    background-color: var(--color-beige);
    border-radius: .25rem;
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 1.7;
    margin-top: 3.75rem;
    padding: .125rem .875rem
}

@media (width>=48rem) {
    .c-heading-bg {
        padding: .125rem .9375rem
    }
}

* .c-heading-lv3+.c-heading-bg {
    margin-top: 1.75rem
}

.c-heading-dot {
    background: var(--dotted-line-bottom-pale);
    font-size: 1.5rem;
    font-weight: 700;
    letter-spacing: .03em
}

@media (width>=48rem) {
    .c-heading-dot {
        font-size: 2.25rem
    }
}

.c-hukidashi-default {
    align-items: center;
    background-color: var(--color-pink);
    border-radius: 5rem;
    color: #fff;
    display: flex;
    font-size: .875rem;
    font-weight: 500;
    gap: 1.0625rem;
    justify-content: center;
    line-height: 1.5;
    padding: .625rem 1.625rem;
    position: relative;
    width: -moz-max-content;
    width: max-content;
    z-index: 1
}

@media (width>=48rem) {
    .c-hukidashi-default {
        font-size: 1.25rem;
        gap: 1.625rem;
        justify-content: flex-start;
        padding: .625rem 2.5rem
    }
}

.c-hukidashi-default:after {
    aspect-ratio: 1;
    background-color: var(--color-pink);
    content: "";
    display: block;
    left: 1.5625rem;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='43' height='22' viewBox='0 0 43 22'%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23ff83bc' d='M-1076.229 21897.551h43v22h-43z'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg clip-path='url(%23a)' transform='translate(1076.229 -21897.551)'%3E%3Cpath fill='%23ff83bc' d='M-1059.585 21888.278c2.773 5.598-.829 28.063-16.489 30.315 27.822-.95 43.196-21.963 43.196-21.963Z'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='43' height='22' viewBox='0 0 43 22'%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23ff83bc' d='M-1076.229 21897.551h43v22h-43z'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg clip-path='url(%23a)' transform='translate(1076.229 -21897.551)'%3E%3Cpath fill='%23ff83bc' d='M-1059.585 21888.278c2.773 5.598-.829 28.063-16.489 30.315 27.822-.95 43.196-21.963 43.196-21.963Z'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
    position: absolute;
    top: 100%;
    transform: translateY(-40%);
    width: 1.875rem
}

@media (width>=48rem) {
    .c-hukidashi-default:after {
        left: 2.1875rem;
        width: 2.375rem
    }
}

.c-hukidashi-default--aqua,
.c-hukidashi-default--aqua:after {
    background-color: var(--color-aqua)
}

.c-hukidashi-text {
    align-items: center;
    background-color: var(--color-pink);
    border-radius: 2.5rem;
    color: #fff;
    display: flex;
    font-size: .9375rem;
    font-weight: 600;
    gap: 1.0625rem;
    height: 2.75rem;
    justify-content: center;
    padding: 0 1.625rem
}

@media (width>=48rem) {
    .c-hukidashi-text {
        border-radius: 1.75rem;
        font-size: 1.0625rem;
        gap: 1.625rem;
        height: 3.5rem;
        justify-content: flex-start;
        width: min(15rem, 100%)
    }
}

.c-hukidashi-text:before {
    aspect-ratio: 16/23;
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15.89' height='22.469' viewBox='0 0 15.89 22.469'%3E%3Cdefs%3E%3ClinearGradient id='b' x2='.006' y1='1' y2='1' gradientUnits='objectBoundingBox'%3E%3Cstop offset='0' stop-color='%23ffff01'/%3E%3Cstop offset='1' stop-color='%23ffe631'/%3E%3C/linearGradient%3E%3ClinearGradient id='d' x1='-1' x2='-.994' y1='1' y2='1' gradientUnits='objectBoundingBox'%3E%3Cstop offset='0' stop-color='%23028e5b'/%3E%3Cstop offset='1' stop-color='%2337a970'/%3E%3C/linearGradient%3E%3CclipPath id='a'%3E%3Cpath fill='none' d='M1.867 0A1.98 1.98 0 0 0 0 2.081v11.99a5.52 5.52 0 0 0 2.019 4.341l4.527 3.562a2.26 2.26 0 0 0 1.4.495V4.32l-5-3.935A1.72 1.72 0 0 0 1.878 0Z'/%3E%3C/clipPath%3E%3CclipPath id='c'%3E%3Cpath fill='none' d='M6.069 0a1.72 1.72 0 0 0-1.066.385l-5 3.935v18.149a2.26 2.26 0 0 0 1.4-.495l4.527-3.562a5.52 5.52 0 0 0 2.019-4.341V2.081A1.98 1.98 0 0 0 6.078 0Z'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill='url(%23b)' d='M0 0h7.945v22.469H0z'/%3E%3C/g%3E%3Cg clip-path='url(%23c)' transform='translate(7.945)'%3E%3Cpath fill='url(%23d)' d='M0 0h7.945v22.469H0z'/%3E%3C/g%3E%3C/svg%3E") 50%/contain no-repeat;
    content: "";
    display: block;
    width: 1rem
}

@media (width>=48rem) {
    .c-hukidashi-text:before {
        width: 1.25rem
    }
}

.c-hukidashi-text:after {
    aspect-ratio: 1;
    background-color: var(--color-pink);
    content: "";
    display: block;
    left: 25%;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='43' height='22' viewBox='0 0 43 22'%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23ff83bc' d='M-1076.229 21897.551h43v22h-43z'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg clip-path='url(%23a)' transform='translate(1076.229 -21897.551)'%3E%3Cpath fill='%23ff83bc' d='M-1059.585 21888.278c2.773 5.598-.829 28.063-16.489 30.315 27.822-.95 43.196-21.963 43.196-21.963Z'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='43' height='22' viewBox='0 0 43 22'%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23ff83bc' d='M-1076.229 21897.551h43v22h-43z'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg clip-path='url(%23a)' transform='translate(1076.229 -21897.551)'%3E%3Cpath fill='%23ff83bc' d='M-1059.585 21888.278c2.773 5.598-.829 28.063-16.489 30.315 27.822-.95 43.196-21.963 43.196-21.963Z'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
    position: absolute;
    top: 100%;
    transform: translateY(-40%);
    width: 1.875rem
}

@media (width>=48rem) {
    .c-hukidashi-text:after {
        width: 2.375rem
    }
}

.c-hukidashi-text--aqua,
.c-hukidashi-text--aqua:after {
    background-color: var(--color-aqua)
}

.c-hukidashi-pic {
    position: relative
}

.c-hukidashi-pic p {
    position: absolute;
    top: 0;
    z-index: 1
}

.c-hukidashi-pic picture {
    display: block
}

.c-hukidashi-pic img {
    display: block;
    width: 100%
}

[class*=c-icon-angle]:after {
    aspect-ratio: 6/10;
    background-color: var(--color-blue);
    content: "";
    display: inline-block;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6.74' height='10.519' viewBox='0 0 6.74 10.519'%3E%3Cpath d='M6.429 5.938a1 1 0 0 1-.219.158l-4.4 4.13a1.11 1.11 0 0 1-1.5 0 .957.957 0 0 1 .001-1.407l3.838-3.61-3.73-3.506a.956.956 0 0 1 0-1.411 1.11 1.11 0 0 1 1.5 0l4.51 4.235a.956.956 0 0 1 0 1.411'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6.74' height='10.519' viewBox='0 0 6.74 10.519'%3E%3Cpath d='M6.429 5.938a1 1 0 0 1-.219.158l-4.4 4.13a1.11 1.11 0 0 1-1.5 0 .957.957 0 0 1 .001-1.407l3.838-3.61-3.73-3.506a.956.956 0 0 1 0-1.411 1.11 1.11 0 0 1 1.5 0l4.51 4.235a.956.956 0 0 1 0 1.411'/%3E%3C/svg%3E") center/contain no-repeat;
    width: .375rem
}

.c-icon-pin {
    align-items: center;
    color: var(--color-blue);
    display: flex;
    font-size: .875rem;
    font-weight: 700;
    gap: .1875rem;
    line-height: 1.4
}

.c-icon-pin:before {
    aspect-ratio: 12/17;
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11.754' height='16.08' viewBox='0 0 11.754 16.08'%3E%3Cpath fill='%2360a0f9' d='M11.754 6.213A5.886 5.886 0 1 0 0 6.213c0 3.441 5.877 9.867 5.877 9.867s5.877-6.426 5.877-9.867M3.14 6.091a2.741 2.741 0 1 1 2.737 2.893A2.836 2.836 0 0 1 3.14 6.091'/%3E%3C/svg%3E") 50%/contain no-repeat;
    content: "";
    display: block;
    width: .75rem
}

.c-image {
    border-radius: .625rem;
    display: block;
    overflow: hidden
}

@media (width>=48rem) {
    .c-image {
        border-radius: 1rem
    }
}

.c-input-select {
    position: relative;
    width: 100%
}

.c-input-select select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: #fff;
    border: .125rem solid var(--color-border);
    border-radius: .375rem;
    font-size: 1rem;
    font-weight: 700;
    height: 3.5rem;
    outline: none;
    padding-left: 1.6875rem;
    padding-right: 2.5rem;
    width: 100%
}

.c-input-select:after {
    transform: translateY(-10%)
}

.c-input-select:after,
.c-input-select:before {
    aspect-ratio: 1;
    background-color: var(--color-blue);
    content: "";
    display: block;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.808' height='6.926' viewBox='0 0 10.808 6.926'%3E%3Cpath stroke='rgba(0,0,0,0)' stroke-miterlimit='10' d='M5.405 6.426a.92.92 0 0 1-.66-.275L.774 2.18A.935.935 0 0 1 2.096.858l3.311 3.309 3.3-3.309a.936.936 0 0 1 1.322 1.326L6.063 6.151a.93.93 0 0 1-.661.275Z'/%3E%3C/svg%3E") no-repeat center/100%;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.808' height='6.926' viewBox='0 0 10.808 6.926'%3E%3Cpath stroke='rgba(0,0,0,0)' stroke-miterlimit='10' d='M5.405 6.426a.92.92 0 0 1-.66-.275L.774 2.18A.935.935 0 0 1 2.096.858l3.311 3.309 3.3-3.309a.936.936 0 0 1 1.322 1.326L6.063 6.151a.93.93 0 0 1-.661.275Z'/%3E%3C/svg%3E") no-repeat center/100%;
    pointer-events: none;
    position: absolute;
    right: 1.25rem;
    top: 50%;
    width: .8125rem
}

.c-input-select:before {
    transform: translateY(-110%) scaleY(-1)
}

.c-intro {
    overflow: hidden;
    padding-bottom: 3rem;
    padding-top: .9375rem;
    position: relative
}

@media (width>=48rem) {
    .c-intro {
        padding-bottom: 5rem;
        padding-top: 5rem
    }
}

.c-intro h2 {
    font-size: 1.3125rem;
    font-weight: 700;
    line-height: 1.7619047619;
    margin-bottom: .9375rem;
    text-align: center
}

@media (width>=48rem) {
    .c-intro h2 {
        font-size: 2rem;
        margin-bottom: 1.875rem
    }
}

.c-intro p {
    font-size: 1rem;
    line-height: 2
}

@media (width>=48rem) {
    .c-intro p {
        font-size: 1.125rem;
        text-align: center
    }
    .c-intro .c-page-nav {
        margin-top: min(12.5rem, 10vw)
    }
}

.c-intro .c-text-lead+.c-text-lead {
    margin-top: 1.2em
}

.c-intro__images {
    align-items: flex-start;
    display: flex;
    gap: 2.625rem;
    left: 50%;
    margin-bottom: 6.25rem;
    margin-top: 5.625rem;
    position: relative;
    transform: translate(-50%);
    width: -moz-max-content;
    width: max-content
}

@media (width>=48rem) {
    .c-intro__images {
        bottom: 16.625rem;
        justify-content: space-between;
        margin: 0;
        position: absolute;
        top: 0;
        width: min(106.875rem, 106.875%)
    }
}

.c-intro__image {
    position: relative
}

.c-intro__image picture {
    display: block
}

.c-intro__image-main img {
    display: block;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center center;
    object-position: center center;
    width: 100%
}

.c-intro__image-sub {
    position: absolute
}

.c-intro__image--01 {
    flex-shrink: 0;
    margin-top: 7.875rem;
    width: 9.625rem
}

@media (width>=48rem) {
    .c-intro__image--01 {
        margin-bottom: 0;
        margin-top: auto;
        width: min(26.25rem, 50% - 21.875rem)
    }
}

.c-intro__image--01 .c-intro__image-main {
    aspect-ratio: 154/168
}

.c-intro__image--01 .c-intro__image-sub {
    bottom: -3.0625rem;
    right: -3.0625rem;
    width: 9.3125rem
}

@media (width>=48rem) {
    .c-intro__image--01 .c-intro__image-sub {
        bottom: max(-3.8125rem, -3.8125vw);
        right: max(-7.875rem, -7.875vw);
        width: min(17.6875rem, 17.6875vw)
    }
}

.c-intro__image--02 {
    flex-shrink: 0;
    width: 14.3125rem
}

@media (width>=48rem) {
    .c-intro__image--02 {
        margin-top: .625rem;
        width: min(26.25rem, 50% - 21.875rem)
    }
}

.c-intro__image--02 .c-intro__image-main {
    aspect-ratio: 229/266
}

.c-intro__image--02 .c-intro__image-sub {
    left: 5.625rem;
    top: -3.0625rem;
    width: 7.625rem
}

@media (width>=48rem) {
    .c-intro__image--02 .c-intro__image-sub {
        left: max(-7.5rem, -7.5vw);
        top: min(.9375rem, .9375vw);
        width: min(13.3125rem, 13.3125vw)
    }
}

.c-intro__image--03 {
    flex-shrink: 0;
    left: 5.375rem;
    position: absolute;
    top: -2rem;
    width: 5.375rem
}

@media (width>=48rem) {
    .c-intro__image--03 {
        left: min(14.5rem, 14.5vw);
        top: 0;
        width: min(12.9375rem, 12.9375vw)
    }
}

.c-intro__image--03 .c-intro__image-main {
    aspect-ratio: 229/266
}

.c-intro__image--04 {
    flex-shrink: 0;
    position: absolute;
    width: 14.3125rem
}

@media (width>=48rem) {
    .c-intro__image--04 {
        bottom: -6.75rem;
        right: min(17.9375rem, 17.9375vw);
        width: min(10.6875rem, 10.6875vw)
    }
}

.c-intro__image--04 .c-intro__image-main {
    aspect-ratio: 229/266
}

.c-inner {
    margin-left: auto;
    margin-right: auto;
    width: 21rem
}

@media (width>=48rem) {
    .c-inner {
        width: min(77.5rem, 92%)
    }
}

.c-inner--md {
    margin: 0 auto
}

@media (width>=48rem) {
    .c-inner--md {
        width: 64.25rem
    }
}

.c-link {
    color: var(--color-blue);
    text-decoration: underline
}

.c-link-back {
    align-items: center;
    display: inline-flex;
    font-size: .9375rem;
    font-weight: 700;
    gap: .5rem;
    justify-content: center
}

.c-link-back:before {
    aspect-ratio: 1;
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ccircle cx='10' cy='10' r='10' fill='%2360a0f9'/%3E%3Cpath fill='%23fff' fill-rule='evenodd' d='M9.171 5.938a.854.854 0 0 0-1.206.08L5.083 9.436a.854.854 0 0 0 0 1.126l2.888 3.418a.854.854 0 1 0 1.286-1.125l-1.644-2h6.658a.854.854 0 1 0 0-1.708H7.61l1.644-2a.854.854 0 0 0-.08-1.2Z'/%3E%3C/svg%3E") 50%/contain no-repeat;
    content: "";
    display: block;
    flex-shrink: 0;
    width: 1.25rem
}

@media (hover) {
    .c-link-back {
        transition: color var(--duration-fast) var(--ease-power3-out)
    }
    .c-link-back:hover {
        color: var(--color-blue)
    }
}

.c-link-map {
    align-items: center;
    color: var(--color-blue);
    display: inline-flex;
    gap: .3125rem;
    text-decoration: underline
}

.c-link-map:after {
    aspect-ratio: 11/15;
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11.754' height='16.08' viewBox='0 0 11.754 16.08'%3E%3Cpath fill='%2360a0f9' d='M11.754 6.213A5.886 5.886 0 1 0 0 6.213c0 3.441 5.877 9.867 5.877 9.867s5.877-6.426 5.877-9.867M3.14 6.091a2.741 2.741 0 1 1 2.737 2.893A2.836 2.836 0 0 1 3.14 6.091'/%3E%3C/svg%3E") no-repeat 50%/contain;
    content: "";
    display: block;
    width: .6875rem
}

@media (hover) {
    .c-link-map:after {
        transition: transform var(--duration-fast) var(--ease-bounce-once)
    }
    .c-link-map:hover {
        text-decoration: none
    }
    .c-link-map:hover:after {
        transform: translateY(-15%)
    }
}

.c-link-tel {
    color: var(--color-blue);
    text-decoration: underline
}

@media (width>=48rem) {
    .c-link-tel {
        color: var(--color-black);
        pointer-events: none;
        text-decoration: none
    }
}

.c-list-circle li {
    margin-bottom: .5rem;
    padding-left: 1em;
    text-indent: -1em
}

.c-list-circle li:before {
    background-color: var(--color-pink);
    border-radius: 50%;
    content: "";
    display: inline-block;
    height: .5rem;
    margin-right: .5em;
    min-width: .5rem;
    vertical-align: middle
}

.c-list-number {
    counter-reset: list
}

.c-list-number li {
    counter-increment: list;
    display: flex;
    gap: .3125rem;
    margin-bottom: .5rem
}

.c-list-number li:before {
    color: var(--color-aqua);
    content: counter(list, decimal-leading-zero);
    display: block;
    font-family: var(--font-en);
    min-width: 1.25rem
}

.c-data-list {
    counter-reset: item;
    margin-top: 1.875rem
}

@media (width>=48rem) {
    .c-data-list {
        margin-top: 3.125rem
    }
}

.c-data-list div {
    margin-bottom: 1.5625rem
}

@media (width>=48rem) {
    .c-data-list div {
        margin-bottom: 2.5rem
    }
}

.c-data-list div:last-child {
    margin-bottom: 0
}

.c-data-list dt {
    counter-increment: item;
    margin-bottom: .5rem;
    margin-top: 0
}

.c-data-list dt:before {
    content: counter(item) ". "
}

.c-data-list dd {
    margin-top: 1rem
}

@media (width>=48rem) {
    .c-data-list dd {
        margin-top: 1rem
    }
}

.c-data-list.--parentheses {
    margin-top: 1.5rem
}

@media (width>=48rem) {
    .c-data-list.--parentheses {
        margin-top: 1.25rem
    }
}

.c-data-list.--parentheses div {
    margin-bottom: .625rem
}

.c-data-list.--parentheses dt {
    font-size: 1rem;
    margin-left: 1.5em;
    text-indent: -1.5em
}

.c-data-list.--parentheses dt:before {
    content: "(" counter(item) ") "
}

.c-data-list.--parentheses dd {
    margin-top: .3125rem;
    padding-left: 1.5em
}

.c-data-list.--inner-list {
    margin-top: 0;
    padding-left: 1em
}

.c-data-list.--inner-list div {
    margin-bottom: 0
}

.c-data-list.--inner-list dt {
    font-weight: 400;
    line-height: 1.75
}

.c-list-dl {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: .75rem .875rem
}

@media (width>=48rem) {
    .c-list-dl {
        display: flex;
        gap: .625rem
    }
}

.c-list-dl div {
    align-items: flex-start;
    display: flex;
    gap: .625rem
}

.c-list-dl dt {
    background-color: var(--color-gray);
    border-radius: 1.4375rem;
    flex-shrink: 0;
    font-size: .875rem;
    font-weight: 700;
    line-height: 1.7857142857;
    padding: 0 .625rem;
    width: -moz-max-content;
    width: max-content
}

.c-list-dl dd {
    font-size: 1rem;
    line-height: 1.5625
}

@media (width>=48rem) {
    .c-list-dl dd {
        margin-right: 1em
    }
}

.c-list-circle-dl {
    display: flex;
    flex-direction: column;
    font-size: 1rem;
    gap: .625rem;
    line-height: 1.8
}

.c-list-circle-dl span {
    align-items: center;
    display: flex;
    margin-right: 1em
}

@media (width>=48rem) {
    .c-list-circle-dl span {
        align-items: baseline;
        display: inline-flex
    }
}

.c-list-circle-dl li span:before {
    background-color: var(--color-pink);
    border-radius: 50%;
    content: "";
    display: block;
    height: .5rem;
    margin-right: .5em;
    width: .5rem
}

.c-loop-images {
    overflow: hidden;
    width: 100%
}

.c-loop-images__slider {
    animation: loopSlider 100s linear infinite;
    display: flex;
    flex-wrap: nowrap;
    width: -moz-max-content;
    width: max-content
}

.c-loop-images__item {
    border-radius: .625rem;
    flex-shrink: 0;
    margin-right: .75rem;
    overflow: hidden;
    width: 16.25rem
}

@media (width>=48rem) {
    .c-loop-images__item {
        margin-right: 1.5rem;
        width: 41.5rem
    }
}

@keyframes loopSlider {
    0% {
        transform: translate(0)
    }
    to {
        transform: translate(-50%)
    }
}

.c-loop-images--white {
    background-color: #fff
}

.c-map-search {
    align-items: flex-start;
    gap: min(2.5rem, 2.5vw) min(3.25rem, 3.25vw);
    grid-template-columns: repeat(2, 1fr)
}

@media (width>=48rem) {
    .c-map-search {
        display: grid
    }
}

.c-map-search__view {
    grid-row: 1/3;
    padding-bottom: 2.5rem;
    position: relative;
    width: min(50.75rem, 50.75vw)
}

.c-map-search__map {
    margin-left: min(.9375rem, .9375vw);
    padding-top: min(2rem, 2vw);
    width: min(39.25rem, 39.25vw)
}

.c-map-search__map path {
    transition: fill var(--duration-normal) var(--ease-power3-out)
}

.c-map-search__ui-group {
    position: absolute
}

.c-map-search__ui-area {
    color: #fff;
    font-size: min(1.25rem, 1.25vw);
    font-weight: 700
}

.c-map-search__ui-button {
    align-items: center;
    background-color: #fff;
    border: none;
    border-radius: min(.9375rem, .9375vw);
    display: grid;
    font-size: min(1rem, 1vw);
    font-weight: 700;
    gap: min(.3125rem, .3125vw);
    grid-template-columns: 4em .625rem;
    height: min(1.875rem, 1.875vw);
    padding: 0 min(.625rem, .625vw);
    text-align: center;
    transition: background-color var(--duration-normal) var(--ease-power3-out), color var(--duration-normal) var(--ease-power3-out);
    width: min(6.25rem, 6.25vw)
}

.c-map-search__ui-button:after {
    aspect-ratio: 10/6;
    background-color: red;
    content: "";
    display: block;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.808' height='6.926' viewBox='0 0 10.808 6.926'%3E%3Cpath stroke='rgba(0,0,0,0)' stroke-miterlimit='10' d='M5.405 6.426a.92.92 0 0 1-.66-.275L.774 2.18A.935.935 0 0 1 2.096.858l3.311 3.309 3.3-3.309a.936.936 0 0 1 1.322 1.326L6.063 6.151a.93.93 0 0 1-.661.275Z'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.808' height='6.926' viewBox='0 0 10.808 6.926'%3E%3Cpath stroke='rgba(0,0,0,0)' stroke-miterlimit='10' d='M5.405 6.426a.92.92 0 0 1-.66-.275L.774 2.18A.935.935 0 0 1 2.096.858l3.311 3.309 3.3-3.309a.936.936 0 0 1 1.322 1.326L6.063 6.151a.93.93 0 0 1-.661.275Z'/%3E%3C/svg%3E") center/contain no-repeat;
    transition: background-color var(--duration-normal) var(--ease-power3-out);
    width: min(.625rem, .625vw)
}

@media (hover) {
    .c-map-search__ui-button:hover {
        color: #fff
    }
    .c-map-search__ui-button:hover:after {
        background-color: #fff !important
    }
}

.c-map-search__ui {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0
}

.c-map-search__ui-item {
    position: relative
}

@media (hover:hover) {
    .c-map-search__ui-item:hover {
        opacity: 1 !important;
        transition: opacity var(--duration-normal) var(--ease-power3-out)
    }
}

.c-map-search__ui-item+.c-map-search__ui-item {
    margin-top: .3125rem
}

.c-map-search__ui-pop {
    min-width: min(10.125rem, 10.125vw);
    opacity: 0;
    padding-top: min(.9375rem, .9375vw);
    position: absolute;
    top: 99.9%;
    transform: translateY(10px);
    visibility: hidden;
    z-index: 1
}

.c-map-search__ui-pop:before {
    aspect-ratio: 32/20;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="62.106" height="50" viewBox="0 0 62.106 50"><path d="M13.713,2.915a3,3,0,0,1,4.679,0l9.8,12.207A3,3,0,0,1,25.851,20H6.255a3,3,0,0,1-2.34-4.878Z" transform="translate(15 14)" fill="%23fff"/></svg>');
    background-repeat: no-repeat;
    background-size: cover;
    content: "";
    display: block;
    position: absolute;
    top: 0;
    transform: translateY(-30%);
    width: 3.125rem;
    z-index: -1
}

.c-map-search__ui-pref {
    background-color: #fff;
    border-radius: min(.25rem, .25vw);
    font-size: min(1rem, 1vw);
    max-height: min(11.25rem, 11.25vw);
    overflow-y: scroll;
    padding: min(1.25rem, 1.25vw)
}

.c-map-search__ui-pref::-webkit-scrollbar {
    border-right: 10px;
    width: .25rem
}

.c-map-search__ui-pref::-webkit-scrollbar-track {
    background-color: transparent
}

.c-map-search__ui-pref::-webkit-scrollbar-thumb {
    background-color: rgba(var(--color-black-rgb), .1);
    border-radius: 8px;
    width: 100px
}

.c-map-search__ui-pref li {
    cursor: pointer
}

@media (hover) {
    .c-map-search__ui-pref li {
        transition: var(--duration-normal) var(--ease-power3-out) color
    }
    .c-map-search__ui-pref li:hover {
        color: var(--color-blue)
    }
}

.c-map-search__ui-pref button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    display: block;
    padding: 0;
    width: 100%
}

.c-map-search__ui-group[data-area=北海道・東北エリア] {
    right: 0;
    top: 0
}

@media (hover) {
    .c-map-search__ui-group[data-area=北海道・東北エリア] .c-map-search__ui-button:hover {
        background-color: var(--color-blue)
    }
}

.c-map-search__ui-group[data-area=北海道・東北エリア] .c-map-search__ui-button:after {
    background-color: var(--color-blue)
}

.c-map-search__ui-group[data-area=関東エリア] {
    right: min(5rem, 5vw);
    top: min(14.25rem, 14.25vw)
}

@media (hover) {
    .c-map-search__ui-group[data-area=関東エリア] .c-map-search__ui-button:hover {
        background-color: var(--color-aqua)
    }
}

.c-map-search__ui-group[data-area=関東エリア] .c-map-search__ui-button:after {
    background-color: var(--color-aqua)
}

.c-map-search__ui-group[data-area=東海エリア] {
    bottom: min(2rem, 2vw);
    right: min(11.1875rem, 11.1875vw)
}

@media (hover) {
    .c-map-search__ui-group[data-area=東海エリア] .c-map-search__ui-button:hover {
        background-color: var(--color-yellow)
    }
}

.c-map-search__ui-group[data-area=東海エリア] .c-map-search__ui-button:after {
    background-color: var(--color-yellow)
}

.c-map-search__ui-group[data-area=関西エリア] {
    left: min(12.8125rem, 12.8125vw);
    top: min(11.25rem, 11.25vw)
}

@media (hover) {
    .c-map-search__ui-group[data-area=関西エリア] .c-map-search__ui-button:hover {
        background-color: var(--color-orange)
    }
}

.c-map-search__ui-group[data-area=関西エリア] .c-map-search__ui-button:after {
    background-color: var(--color-orange)
}

.c-map-search__ui-group[data-area=中国・四国エリア] {
    bottom: 0;
    left: min(15.9375rem, 15.9375vw)
}

@media (hover) {
    .c-map-search__ui-group[data-area=中国・四国エリア] .c-map-search__ui-button:hover {
        background-color: var(--color-pink)
    }
}

.c-map-search__ui-group[data-area=中国・四国エリア] .c-map-search__ui-button:after {
    background-color: var(--color-pink)
}

.c-map-search__ui-group[data-area=九州エリア] {
    left: 0;
    top: min(22.5rem, 22.5vw)
}

@media (hover) {
    .c-map-search__ui-group[data-area=九州エリア] .c-map-search__ui-button:hover {
        background-color: var(--color-purple)
    }
}

.c-map-search__ui-group[data-area=九州エリア] .c-map-search__ui-button:after {
    background-color: var(--color-purple)
}

.c-map-result {
    background-color: #fff;
    border-radius: min(1rem, 1vw);
    height: min(40rem, 40vw);
    padding-left: min(3.125rem, 3.125vw);
    padding-right: min(1.75rem, 1.75vw);
    padding-top: min(2.8125rem, 2.8125vw);
    position: relative;
    width: min(27.25rem, 33.5384615385vw)
}

.c-map-result__title {
    align-items: center;
    display: flex;
    font-size: min(1.25rem, 1.25vw);
    font-weight: 700;
    gap: min(.625rem, 1.875vw);
    margin-bottom: min(1.875rem, 1.875vw)
}

.c-map-result__title span {
    background-color: var(--color-beige);
    border-radius: .3125rem;
    font-size: min(1.625rem, 1.625vw);
    min-width: 9.875rem
}

.c-map-result__default,
.c-map-result__title span {
    align-items: center;
    display: flex;
    justify-content: center
}

.c-map-result__default {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.c-map-result__default p {
    color: rgba(var(--color-black-rgb), .1);
    font-size: min(1.625rem, 1.625vw);
    font-weight: 700
}

.c-map-result__view {
    display: grid;
    grid-template-columns: 1fr
}

.c-map-result__group {
    grid-column: 1/2;
    grid-row: 1/2;
    opacity: 0;
    visibility: hidden
}

.c-map-result__list {
    height: min(29.375rem, 29.375vw);
    overflow-y: auto;
    padding-right: min(.9375rem, .9375vw)
}

.c-map-result__list::-webkit-scrollbar {
    border-right: 10px;
    width: .375rem
}

.c-map-result__list::-webkit-scrollbar-track {
    background-color: transparent
}

.c-map-result__list::-webkit-scrollbar-thumb {
    background-color: rgba(var(--color-black-rgb), .2);
    border-radius: 8px
}

.c-map-result__card-link {
    align-items: flex-start;
    display: flex;
    gap: 1.5625rem;
    padding: min(.9375rem, .9375vw)
}

@media (hover:hover) {
    .c-map-result__card-link:hover {
        background-color: rgba(var(--color-black-rgb), .05);
        transition: background-color var(--duration-normal) var(--ease-power3-out)
    }
    .c-map-result__card-link:hover img {
        transform: scale(1.05)
    }
}

.c-map-result__card-content {
    display: grid;
    flex: 1fr;
    gap: .3125rem
}

.c-map-result__card-name {
    font-size: 1rem;
    font-weight: 700
}

.c-map-result__card-address {
    font-size: .8125rem;
    font-weight: 500;
    line-height: 1.5384615385
}

.c-map-result__card-note {
    font-size: .75rem
}

.c-map-result__card-pic {
    aspect-ratio: 1;
    border-radius: min(.375rem, .375vw);
    display: block;
    flex-shrink: 0;
    overflow: hidden;
    width: min(8rem, 8vw)
}

.c-map-result__card-pic img {
    display: block;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center center;
    object-position: center center;
    transition: transform var(--duration-normal) var(--ease-power3-out);
    width: 100%
}

.c-onsite {
    padding: 5rem 0
}

@media (width>=48rem) {
    .c-onsite {
        padding: 8.75rem 0 6.25rem
    }
}

.c-onsite .c-heading-withsub {
    margin-bottom: 0
}

.c-onsite__content {
    background-color: #fff;
    border-radius: .75rem;
    padding: 3.125rem 1.5625rem;
    position: relative
}

@media (width>=48rem) {
    .c-onsite__content {
        padding: 5rem
    }
}

.c-onsite__content .c-heading-lv3 {
    margin-bottom: 1.875rem
}

.c-onsite__content .c-onsite__block+.c-heading-lv3 {
    margin-top: 2.8125rem
}

@media (width>=48rem) {
    .c-onsite__content .c-onsite__block+.c-heading-lv3 {
        margin-top: 4.375rem
    }
}

.c-onsite__content .c-heading-bg {
    margin-bottom: .625rem;
    margin-top: 0
}

@media (width>=48rem) {
    .c-onsite__content .c-heading-bg {
        margin-bottom: .9375rem
    }
}

.c-onsite__heading-note {
    font-size: .875rem;
    margin-bottom: 1.5625rem;
    text-align: center
}

@media (width>=48rem) {
    .c-onsite__heading-note {
        margin-bottom: 1.875rem
    }
}

.c-onsite__block+.c-onsite__block {
    margin-top: 1.875rem
}

.c-onsite__list {
    display: grid;
    gap: .1875rem
}

@media (width>=48rem) {
    .c-onsite__list {
        gap: .4375rem 3.125rem;
        grid-template-columns: repeat(3, 1fr)
    }
}

.c-onsite__obj {
    aspect-ratio: 385/256;
    position: absolute;
    right: -2.5rem;
    top: 0;
    transform: translateY(-90%);
    width: 24.0625rem
}

.c-onsite__obj picture {
    bottom: 0;
    display: block;
    position: absolute;
    right: 0;
    width: 10.75rem
}

.c-onsite__obj .c-hukidashi-default {
    font-size: 1rem;
    letter-spacing: 0;
    padding: 1.5625rem 3.125rem;
    position: absolute;
    top: 0
}

.c-onsite__obj .c-hukidashi-default:after {
    left: auto;
    right: 2.375rem;
    transform: translateY(-50%) scale(-1, 1.5)
}

.c-page-nav {
    display: grid;
    justify-content: center
}

.c-page-nav__item a {
    align-items: center;
    background-color: var(--color-pink);
    border-radius: .3125rem;
    color: #fff;
    display: flex;
    flex-direction: column;
    font-weight: 500;
    height: 3.125rem;
    justify-content: center;
    line-height: 1.5;
    padding-right: 1.125rem;
    position: relative;
    width: 100%
}

@media (width>=48rem) {
    .c-page-nav__item a {
        border-radius: .5625rem;
        flex-direction: row;
        gap: .625rem;
        height: 4.0625rem
    }
}

.c-page-nav__item a span {
    display: inline-block;
    font-size: .8125rem
}

@media (width>=48rem) {
    .c-page-nav__item a span {
        font-size: 1rem
    }
}

.c-page-nav__item a:after {
    aspect-ratio: 10/6;
    background-color: #fff;
    content: "";
    display: block;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.808' height='6.926' viewBox='0 0 10.808 6.926'%3E%3Cpath stroke='rgba(0,0,0,0)' stroke-miterlimit='10' d='M5.405 6.426a.92.92 0 0 1-.66-.275L.774 2.18A.935.935 0 0 1 2.096.858l3.311 3.309 3.3-3.309a.936.936 0 0 1 1.322 1.326L6.063 6.151a.93.93 0 0 1-.661.275Z'/%3E%3C/svg%3E") no-repeat center/100%;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.808' height='6.926' viewBox='0 0 10.808 6.926'%3E%3Cpath stroke='rgba(0,0,0,0)' stroke-miterlimit='10' d='M5.405 6.426a.92.92 0 0 1-.66-.275L.774 2.18A.935.935 0 0 1 2.096.858l3.311 3.309 3.3-3.309a.936.936 0 0 1 1.322 1.326L6.063 6.151a.93.93 0 0 1-.661.275Z'/%3E%3C/svg%3E") no-repeat center/100%;
    position: absolute;
    right: .875rem;
    top: 50%;
    transform: translateY(-50%);
    width: .625rem
}

@media (width>=48rem) {
    .c-page-nav__item a:after {
        right: .9375rem;
        width: .9375rem
    }
}

.c-page-nav__item:nth-child(2) a {
    background-color: var(--color-aqua)
}

.c-page-nav__item:nth-child(3) a {
    background-color: var(--color-blue)
}

.c-page-nav__item:nth-child(4) a {
    background-color: var(--color-green)
}

@media (hover) {
    .c-page-nav__item a {
        transition: transform var(--duration-fast) var(--ease-power3-out)
    }
    .c-page-nav__item:hover a {
        transform: translateY(-10%)
    }
}

.c-page-nav--fixed__list.c-page-nav {
    gap: .75rem;
    grid-template-columns: repeat(3, 1fr)
}

@media (width>=48rem) {
    .c-page-nav--fixed__list.c-page-nav {
        gap: 3.125rem
    }
}

@media (width < 48rem) {
    .c-page-nav--fixed__list .c-page-nav__item {
        line-height: 1.2
    }
    .c-page-nav--fixed__list .c-page-nav__item a {
        font-size: .8125rem;
        line-height: inherit;
        padding-left: .3125rem
    }
    .c-page-nav--fixed__list .c-page-nav__item a span {
        font-size: .8125rem
    }
}

@media (width>=48rem) {
    .c-page-nav--fixed__list .c-page-nav__item a {
        font-size: 1.5625rem;
        line-height: 1.5
    }
    .c-page-nav--fixed__list .c-page-nav__item a span {
        font-size: 1rem
    }
}

.c-page-nav--fixed__list .c-page-nav__item a:after {
    right: .5rem
}

@media (width>=48rem) {
    .c-page-nav--fixed__list .c-page-nav__item a:after {
        right: 1.875rem
    }
}

.c-page-nav--col4 {
    gap: .9375rem;
    grid-template-columns: 1fr 1fr
}

@media (width>=48rem) {
    .c-page-nav--col4 {
        gap: 1.125rem;
        grid-template-columns: 1fr 1fr 1fr 1fr
    }
}

.c-page-nav--col3 {
    gap: .9375rem;
    grid-template-columns: 1fr 1fr
}

@media (width>=48rem) {
    .c-page-nav--col3 {
        gap: 1.125rem;
        grid-template-columns: 1fr 1fr 1fr;
        margin-left: auto;
        margin-right: auto;
        max-width: 59.5rem
    }
}

.c-page-nav--col2 {
    gap: .9375rem;
    grid-template-columns: 1fr 1fr
}

@media (width>=48rem) {
    .c-page-nav--col2 {
        gap: 1.125rem;
        grid-template-columns: 1fr 1fr;
        margin-left: auto;
        margin-right: auto;
        max-width: 38.1875rem
    }
}

.c-pagination {
    align-items: center;
    display: flex;
    gap: 1.0625rem;
    justify-content: center;
    margin-top: 3.75rem
}

@media (width>=48rem) {
    .c-pagination {
        gap: 2.1875rem
    }
}

.c-pagination__nextprev:after {
    aspect-ratio: 1;
    background-color: var(--color-black);
    content: "";
    display: block;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18.338' height='15.279' viewBox='0 0 18.338 15.279'%3E%3Cpath fill='%2360a0f9' fill-rule='evenodd' d='M10.644.378A1.527 1.527 0 0 1 12.8.521l5.158 6.111a1.53 1.53 0 0 1 0 2.013L12.8 14.757a1.528 1.528 0 0 1-2.3-2.011l2.94-3.58H1.527a1.528 1.528 0 1 1 0-3.055H13.44L10.5 2.533a1.527 1.527 0 0 1 .143-2.155Z'/%3E%3C/svg%3E") no-repeat center/contain;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18.338' height='15.279' viewBox='0 0 18.338 15.279'%3E%3Cpath fill='%2360a0f9' fill-rule='evenodd' d='M10.644.378A1.527 1.527 0 0 1 12.8.521l5.158 6.111a1.53 1.53 0 0 1 0 2.013L12.8 14.757a1.528 1.528 0 0 1-2.3-2.011l2.94-3.58H1.527a1.528 1.528 0 1 1 0-3.055H13.44L10.5 2.533a1.527 1.527 0 0 1 .143-2.155Z'/%3E%3C/svg%3E") no-repeat center/contain;
    width: 1rem
}

.c-pagination__nextprev.is-disable {
    pointer-events: none
}

.c-pagination__nextprev.is-disable:after {
    background-color: var(--color-disable)
}

.c-pagination__nextprev--prev:after {
    transform: rotate(180deg)
}

.c-pagination_list {
    gap: .625rem
}

.c-pagination__link,
.c-pagination_list {
    align-items: center;
    display: flex;
    justify-content: center
}

.c-pagination__link {
    aspect-ratio: 1;
    background-color: var(--color-gray);
    border-radius: .25rem;
    font-family: var(--font-en);
    font-size: .9375rem;
    font-weight: 700;
    line-height: 2;
    width: 2.125rem
}

@media (width>=48rem) {
    .c-pagination__link {
        font-size: 1rem
    }
}

.c-pagination_list li.is-current .c-pagination__link {
    background-color: var(--color-black);
    color: #fff
}

.c-pagination__dot {
    aspect-ratio: 1;
    background-color: var(--color-black);
    display: block;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17' height='3' viewBox='0 0 17 3'%3E%3Cg fill='%2316191b' transform='translate(-485 -1923.441)'%3E%3Ccircle cx='1.5' cy='1.5' r='1.5' transform='translate(499 1923.441)'/%3E%3Ccircle cx='1.5' cy='1.5' r='1.5' transform='translate(492 1923.441)'/%3E%3Ccircle cx='1.5' cy='1.5' r='1.5' transform='translate(485 1923.441)'/%3E%3C/g%3E%3C/svg%3E") no-repeat center/contain;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17' height='3' viewBox='0 0 17 3'%3E%3Cg fill='%2316191b' transform='translate(-485 -1923.441)'%3E%3Ccircle cx='1.5' cy='1.5' r='1.5' transform='translate(499 1923.441)'/%3E%3Ccircle cx='1.5' cy='1.5' r='1.5' transform='translate(492 1923.441)'/%3E%3Ccircle cx='1.5' cy='1.5' r='1.5' transform='translate(485 1923.441)'/%3E%3C/g%3E%3C/svg%3E") no-repeat center/contain;
    width: 1.0625rem
}

@media (width>=48rem) {
    .c-points {
        display: flex;
        flex-wrap: wrap;
        justify-content: center
    }
}

.c-points__card {
    background: var(--dotted-line-bottom-pale);
    padding-bottom: 2.5rem;
    padding-top: 2.5rem;
    position: relative
}

@media (width>=48rem) {
    .c-points__card {
        background: none;
        padding: 2.5rem 2.1875rem 3.125rem;
        width: 33.3333%
    }
}

.c-points__card:before {
    background: var(--dotted-line-right-pale);
    bottom: .625rem;
    display: block;
    position: absolute;
    right: 0;
    top: .625rem;
    width: .625rem
}

@media (width>=48rem) {
    .c-points__card:before {
        content: ""
    }
}

@media (width < 48rem) {
    .c-points__card:first-child {
        padding-top: 0
    }
}

.c-points__card:nth-child(3n):before {
    content: none
}

.c-points__card:nth-child(3n):after {
    background: var(--dotted-line-bottom-pale);
    bottom: 0;
    display: block;
    height: .625rem;
    position: absolute;
    right: 0;
    width: 300%
}

@media (width>=48rem) {
    .c-points__card:nth-child(3n):after {
        content: ""
    }
}

.c-points__card:last-child {
    background: none;
    padding-bottom: 0
}

.c-points__card:last-child:after,
.c-points__card:last-child:before {
    content: none
}

.c-points__icon {
    display: block;
    margin: 0 auto 1.25rem;
    width: 8.75rem
}

.c-points__num {
    font-size: 1rem;
    font-weight: 700;
    text-align: center
}

@media (width>=48rem) {
    .c-points__num {
        font-size: 1.25rem;
        line-height: 1.2
    }
}

.c-points__title {
    font-size: 1.1875rem;
    font-weight: 700;
    margin-bottom: .625rem;
    text-align: center
}

@media (width>=48rem) {
    .c-points__title {
        font-size: 1.5rem;
        margin-bottom: .9375rem
    }
    .c-scrollbar {
        padding-right: 1.25rem
    }
}

.c-scrollbar::-webkit-scrollbar {
    border-right: 10px;
    width: .375rem
}

.c-scrollbar::-webkit-scrollbar-track {
    background-color: transparent
}

.c-scrollbar::-webkit-scrollbar-thumb {
    background-color: rgba(var(--color-black-rgb), .2);
    border-radius: 8px
}

.c-section-title {
    align-items: center;
    display: flex;
    font-family: var(--font-en);
    font-size: clamp(2.5rem, 2.079rem + 1.796vw, 3.875rem);
    font-weight: 700;
    gap: clamp(1rem, .809rem + .816vw, 1.625rem);
    line-height: 1.2
}

.c-section-title.--white {
    color: #fff
}

.c-section-title__ja {
    font-size: clamp(1rem, .923rem + .327vw, 1.25rem)
}

.c-section-lead {
    font-size: 1rem;
    letter-spacing: .02em;
    line-height: 1.7;
    margin-top: 1.25rem
}

@media (width>=48rem) {
    .c-section-lead {
        line-height: 2;
        margin-top: 1.875rem
    }
}

.c-section-lead.--white {
    color: #fff
}

.c-sidebar {
    order: 1
}

@media (width>=64rem) {
    .c-sidebar {
        order: 2
    }
}

.c-sidebar__back {
    margin-top: 3rem
}

.c-sidebar__back a {
    margin: 0 auto
}

.c-sidebar__title {
    background: var(--dotted-line-bottom);
    font-size: 1.5rem;
    font-weight: 700;
    letter-spacing: .03em;
    margin-bottom: 1.5625rem;
    padding-bottom: .5rem
}

@media (width>=64rem) {
    .c-sidebar__title {
        font-size: 2rem;
        margin-bottom: 2.1875rem;
        margin-top: -.75rem
    }
}

.c-sidebar-school {
    bottom: 0;
    display: none;
    left: 0;
    position: absolute;
    top: 0;
    width: min(18.75rem, 21.4285714286vw);
    z-index: 10
}

@media (width>=48rem) {
    .c-sidebar-school {
        display: block
    }
}

.c-sidebar-school__sticky {
    position: sticky;
    top: 15rem
}

.c-sidebar-school__inner {
    background-color: var(--color-gray);
    border-radius: 0 .6875rem .6875rem 0;
    margin-bottom: 1.25rem;
    max-height: calc(100vh - 18.75rem);
    overflow-y: auto;
    padding: 2.1875rem min(2.8125rem, 3.2142857143vw)
}

.c-sidebar-school__title {
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: .625rem
}

.c-sidebar-school__address {
    font-size: .875rem;
    margin-bottom: .3125rem
}

.c-sidebar-school__map {
    font-size: .875rem;
    margin-bottom: .9375rem
}

.c-sidebar-school__open {
    background: var(--dotted-line-topbottom-pale);
    font-size: .9375rem;
    line-height: 1.5625rem;
    margin-bottom: 1.25rem;
    padding: .9375rem 0
}

.c-sidebar-school__open p {
    font-size: .8125rem
}

.c-sidebar-school__cal {
    align-items: center;
    display: flex;
    font-size: .9375rem;
    font-weight: 700;
    gap: .4375rem;
    margin-bottom: .9375rem
}

.c-sidebar-school__cal:before {
    aspect-ratio: 18/20;
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17.475' height='19.417' viewBox='0 0 17.475 19.417'%3E%3Cg%3E%3Cpath fill='%23231815' d='M1.942 19.417a1.87 1.87 0 0 1-1.371-.57 1.87 1.87 0 0 1-.57-1.371V3.884a1.87 1.87 0 0 1 .57-1.371 1.87 1.87 0 0 1 1.371-.57h.971V.972A.94.94 0 0 1 3.192.28a.94.94 0 0 1 .692-.279.94.94 0 0 1 .692.279.94.94 0 0 1 .279.692v.971h7.767V.972a.94.94 0 0 1 .279-.692.94.94 0 0 1 .692-.279.94.94 0 0 1 .692.279.94.94 0 0 1 .279.692v.971h.971a1.87 1.87 0 0 1 1.371.57 1.87 1.87 0 0 1 .57 1.371v13.592a1.87 1.87 0 0 1-.57 1.371 1.87 1.87 0 0 1-1.371.57Zm0-1.942h13.592V7.767H1.942Z'/%3E%3Ccircle cx='1.927' cy='1.927' r='1.927' fill='%23ff83bc' transform='translate(3.743 9.525)'/%3E%3C/g%3E%3C/svg%3E") no-repeat 50%/contain;
    content: "";
    display: block;
    flex-shrink: 0;
    width: 1.125rem
}

.c-sidebar-school__calendar {
    display: grid;
    gap: .75rem
}

.c-sidebar-school__calendar .c-button {
    min-width: auto;
    padding: .375rem .9375rem .375rem min(3.75rem, 4.2857142857vw);
    width: 100%
}

.c-sidebar-school__calendar .c-button:after {
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32.67' height='15.169' viewBox='0 0 32.67 15.169'%3E%3Cpath fill='%23fff' d='M5 2h25v11H5z'/%3E%3Cpath fill='%23c30000' d='M29.669 15.169H2.998a3 3 0 0 1-3-3V3a3 3 0 0 1 3-3h26.671a3 3 0 0 1 3 3v9.168a3 3 0 0 1-3 3.001M22.298 3.6a.07.07 0 0 0-.063.069v7.95a.067.067 0 0 0 .067.068h1.837a.066.066 0 0 0 .066-.068V8.484a.067.067 0 0 1 .067-.066h2.332a.067.067 0 0 0 .066-.068v-1.4a.067.067 0 0 0-.066-.067h-2.328a.066.066 0 0 1-.067-.067V5.247a.067.067 0 0 1 .067-.066h3.161a.067.067 0 0 0 .066-.067V3.67a.07.07 0 0 0-.066-.069zm-16.24 0a.067.067 0 0 0-.06.07v7.95a.066.066 0 0 0 .066.068h1.834a.066.066 0 0 0 .066-.068V8.851a.067.067 0 0 1 .067-.067H9.31q.108.002.218-.008A2.7 2.7 0 0 0 12.145 6.5a2 2 0 0 0 .014-.3 2.7 2.7 0 0 0-.261-1.208 2.4 2.4 0 0 0-1.4-1.186A3.6 3.6 0 0 0 9.292 3.6H6.063Zm7.465 0a.07.07 0 0 0-.063.069v7.94a.067.067 0 0 0 .067.068h3.075a4.7 4.7 0 0 0 2.116-.5 3.6 3.6 0 0 0 1.481-1.434 4.2 4.2 0 0 0 .524-2.107 4.2 4.2 0 0 0-.524-2.113A3.6 3.6 0 0 0 18.724 4.1a4.7 4.7 0 0 0-2.111-.5h-3.085Zm2.985 6.385h-1.082v-4.7H16.5a2.34 2.34 0 0 1 1.6.629 2.36 2.36 0 0 1 .622 1.74A2.31 2.31 0 0 1 18.1 9.38a2.37 2.37 0 0 1-1.587.605ZM9.134 7.223H8.04a.067.067 0 0 1-.067-.067v-1.9a.067.067 0 0 1 .067-.066h1.1a1.18 1.18 0 0 1 .745.269.99.99 0 0 1 .276.748 1 1 0 0 1-.276.753 1.18 1.18 0 0 1-.751.263'/%3E%3C/svg%3E") 50%/2.0625rem no-repeat;
    -webkit-mask: none;
    mask: none;
    width: 2rem
}

.c-sidebar-school__back {
    text-align: center
}

@media (width < 64rem) {
    .c-sidebar--accordion {
        background-color: var(--color-beige);
        border-radius: .375rem;
        order: 2;
        padding: 0 1.25rem
    }
}

.c-sidebar--accordion .c-sidebar__title {
    display: none
}

@media (width>=64rem) {
    .c-sidebar--accordion .c-sidebar__title {
        display: block
    }
}

.c-sidebar--accordion .c-sidebar__inner {
    margin-top: 1.25rem;
    padding-bottom: 2.375rem
}

@media (width>=64rem) {
    .c-sidebar--accordion .c-sidebar__inner {
        margin-top: 0;
        padding-bottom: 0
    }
}

.c-accordion__label p:before {
    content: none
}

.c-sidebar__inner.c-accordion__content {
    max-height: auto;
    overflow: visible
}

@media (width < 48rem) {
    .c-sidebar--sp-back {
        grid-row: 2/3 !important
    }
    .c-sidebar--sp-back .c-accordion__label {
        display: none
    }
    .c-sidebar--sp-back .c-accordion__content {
        max-height: none
    }
    .c-sidebar--sp-back .c-sidebar__inner {
        margin: 0;
        padding: 0
    }
    .c-sidebar--sp-back .c-sidebar__inner>* {
        display: none
    }
    .c-sidebar--sp-back .c-sidebar__inner .c-sidebar__back {
        display: block;
        margin-top: 0
    }
}

.swiper-wrapper {
    transition-timing-function: var(--ease-power2-inout) !important
}

.c-slider {
    border-radius: .5rem;
    width: 100%
}

.c-slider,
.c-slider-block {
    overflow: hidden
}

.c-slider-single {
    border-radius: .5rem;
    overflow: hidden
}

.c-slider-wrapper {
    aspect-ratio: 870/500
}

.c-slider-item img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.c-slider-voice {
    grid-row: 3/4;
    margin-top: 3.75rem
}

@media (width>=48rem) {
    .c-slider-voice {
        grid-column: 1/3
    }
}

.c-slider-controller {
    align-items: center;
    display: flex;
    gap: 2.1875rem;
    justify-content: center;
    margin: clamp(1.625rem, 1.434rem + .816vw, 2.25rem) auto 0;
    width: min(18.75rem, 100%)
}

@media (width>=48rem) {
    .c-slider-controller {
        gap: 3.4375rem;
        width: min(510px, 31.875vw)
    }
}

.c-slider-progressbar {
    border-radius: 9999px;
    overflow: hidden;
    width: 100%
}

.c-slider-progressbar.swiper-pagination-progressbar.swiper-pagination-horizontal {
    background: #2318151a;
    height: .375rem;
    position: relative;
    width: 100%
}

.c-slider-progressbar.swiper-pagination-progressbar.swiper-pagination-horizontal .swiper-pagination-progressbar-fill {
    background: #231815;
    border-radius: 9999px
}

.c-slider-buttons {
    align-items: center;
    display: flex;
    gap: .75rem
}

.c-slider-buttons svg {
    width: 1rem
}

.c-slider-button {
    aspect-ratio: 1;
    border: 2px solid var(--color-black);
    border-radius: 50%;
    display: grid;
    place-items: center;
    width: 2.5rem
}

.c-slider-button.swiper-button-disabled {
    border: 2px solid var(--color-border)
}

.c-slider-button.swiper-button-disabled svg path {
    fill: var(--color-border)
}

.c-slider-button-prev {
    transform: rotate(180deg)
}

.c-slider-event-section {
    background-color: var(--color-gray);
    margin-top: 4.375rem;
    padding: 5rem 1.25rem
}

@media (width>=48rem) {
    .c-slider-event-section {
        margin-top: 7.5rem;
        padding: 5rem 1.25rem 6.25rem
    }
    .c-slider-event-section .c-slider-controller {
        margin-top: 4.6875rem
    }
}

.c-slider-event-section-inner {
    margin: 0 auto;
    max-width: 77.5rem;
    position: relative
}

.c-slider-event-image {
    align-items: flex-end;
    aspect-ratio: 380/125;
    bottom: 100%;
    display: flex;
    left: 0;
    position: relative;
    width: 100%
}

@media (width>=48rem) {
    .c-slider-event-image {
        width: min(23.75rem, 23.75vw)
    }
}

.c-slider-event-image img {
    left: 0;
    position: absolute
}

.c-event-fukidashi {
    opacity: 0;
    transform: translateY(60%)
}

.c-slider-event {
    margin: 0 auto;
    max-width: 77.5rem;
    overflow: hidden;
    position: relative
}

.c-supervision {
    background-color: #fff;
    padding: 5rem 0
}

@media (width>=48rem) {
    .c-supervision {
        padding: 8.125rem 0
    }
}

.c-supervision .c-heading-withsub {
    margin-bottom: 1.25rem
}

@media (width>=48rem) {
    .c-supervision .c-heading-withsub {
        text-align: left
    }
}

.c-supervision__row {
    display: grid;
    gap: 2.5rem
}

@media (width>=48rem) {
    .c-supervision__row {
        gap: 3.125rem;
        grid-template-columns: 1fr 1.5110132159fr
    }
}

@media (width>=64rem) {
    .c-supervision__row {
        gap: min(6.25rem, 7.1428571429vw);
        grid-template-columns: 1fr 1.5110132159fr
    }
}

.c-supervision__text {
    font-size: 1rem;
    line-height: 2.25
}

@media (width>=48rem) {
    .c-supervision__text {
        font-size: 1.125rem
    }
}

.c-supervision__buttons {
    display: grid;
    gap: 1.125rem;
    grid-template-columns: repeat(2, auto);
    justify-content: start;
    margin-top: 1.25rem
}

@media (width>=48rem) {
    .c-supervision__buttons {
        margin-top: 1.875rem
    }
}

.c-supervision__buttons .c-button {
    min-width: auto;
    padding-left: .8125rem;
    padding-right: .8125rem;
    width: -moz-max-content;
    width: max-content
}

.c-supervision__profile {
    margin-left: auto;
    margin-right: auto;
    max-width: 59.625rem
}

@media (width>=48rem) {
    .c-supervision__row .c-supervision__profile {
        margin-top: -1.875rem
    }
}

.c-supervision__profile-obj {
    align-items: center;
    display: flex;
    gap: .9375rem;
    margin-bottom: -2.5rem
}

@media (width>=48rem) {
    .c-supervision__profile-obj {
        margin-bottom: -4.375rem
    }
}

.c-supervision__profile-obj picture {
    display: block;
    width: 5.9375rem
}

@media (width>=48rem) {
    .c-supervision__profile-obj picture {
        width: 9.375rem
    }
}

.c-supervision__profile-obj .c-hukidashi-default,
.c-supervision__profile-obj .c-hukidashi-default:after {
    background-color: var(--color-green)
}

.c-supervision__profile-content {
    background-color: rgba(var(--color-green-rgb), .1);
    border-radius: .5rem;
    display: grid;
    gap: .625rem;
    gap: .9375rem .625rem;
    grid-template-areas: "null pic" "pos pic" "name pic" "text text";
    grid-template-columns: 1fr 5.625rem;
    padding: 2.1875rem 1.5625rem 1.5625rem
}

@media (width>=48rem) {
    .c-supervision__profile-content {
        gap: .9375rem min(1.875rem, 2.1428571429vw);
        grid-template-columns: 1fr 9.375rem;
        padding: 4.375rem min(4.375rem, 5vw) 3.125rem
    }
}

@media (width>=64rem) {
    .c-supervision__profile-content {
        border-radius: .75rem;
        grid-template-areas: "null pic" "pos pic" "name pic" "text pic";
        grid-template-columns: 1fr min(10.625rem, 12.1428571429vw)
    }
}

.c-supervision__profile-pos {
    color: var(--color-green);
    font-size: .8125rem;
    font-weight: 700;
    grid-area: pos;
    line-height: 1.4615384615
}

@media (width>=48rem) {
    .c-supervision__profile-pos {
        font-size: 1rem
    }
}

.c-supervision__profile-name {
    align-items: baseline;
    display: flex;
    flex-wrap: wrap;
    font-size: 1.375rem;
    font-weight: 700;
    gap: .5rem;
    grid-area: name;
    line-height: 1.3
}

@media (width>=48rem) {
    .c-supervision__profile-name {
        font-size: 1.875rem
    }
}

.c-supervision__profile-name small {
    font-size: 1.125rem
}

@media (width>=48rem) {
    .c-supervision__profile-name small {
        font-size: 1.4375rem
    }
}

.c-supervision__profile-pic {
    display: block;
    grid-area: pic
}

.c-supervision__profile-text {
    grid-area: text
}

.c-supervision__curriculum {
    display: grid;
    gap: 2.6875rem
}

@media (width>=48rem) {
    .c-supervision__curriculum {
        gap: 4.375rem
    }
}

.c-supervision__curriculum-card {
    border: 1px solid var(--color-border);
    border-radius: .5rem;
    display: grid;
    grid-template-areas: "title pic" "text text";
    grid-template-columns: 1fr 8.125rem;
    padding: 1.5625rem 1.25rem 1.25rem
}

@media (width>=48rem) {
    .c-supervision__curriculum-card {
        grid-template-columns: 1fr 18.25rem;
        padding: 2.1875rem 3.125rem 2.8125rem
    }
}

.c-supervision__curriculum-heading {
    font-weight: 700;
    grid-area: title;
    line-height: 1.5
}

@media (width>=48rem) {
    .c-supervision__curriculum-heading {
        display: flex;
        flex-direction: column;
        justify-content: center
    }
}

.c-supervision__curriculum-heading>* {
    display: block
}

.c-supervision__curriculum-heading small {
    font-size: .875rem
}

@media (width>=48rem) {
    .c-supervision__curriculum-heading small {
        font-size: 1.0625rem;
        margin-bottom: .1875rem
    }
}

.c-supervision__curriculum-heading span {
    font-size: 1.125rem
}

@media (width>=48rem) {
    .c-supervision__curriculum-heading span {
        font-size: 1.8125rem
    }
}

.c-supervision__curriculum-pic {
    display: block;
    grid-area: pic;
    margin-top: -2.5rem
}

@media (width>=48rem) {
    .c-supervision__curriculum-pic {
        margin-top: -3.4375rem
    }
}

.c-supervision__curriculum-pic img {
    max-width: none;
    width: 9.125rem
}

@media (width>=48rem) {
    .c-supervision__curriculum-pic img {
        width: 100%
    }
}

.c-supervision__curriculum-text {
    background: var(--dotted-line-top-pale);
    display: block;
    grid-area: text;
    margin-top: .625rem;
    padding-top: 1.0625rem
}

@media (width>=48rem) {
    .c-supervision__curriculum-text {
        padding-top: 1.5625rem
    }
}

.c-tab {
    margin-top: 2rem;
    width: 100%
}

@media (width>=48rem) {
    .c-tab {
        margin-top: 2.5rem
    }
}

.c-tab-buttons {
    align-items: flex-end;
    border-bottom: 2px solid var(--color-blue);
    display: grid;
    gap: .25rem;
    grid-template-columns: repeat(4, 1fr);
    list-style: none;
    padding: 0 1.25rem
}

@media (width>=48rem) {
    .c-tab-buttons {
        border-bottom: 3px solid var(--color-blue);
        gap: .75rem;
        padding: 0
    }
}

.c-tab-button {
    background-color: var(--color-gray);
    border-radius: .5625rem .5625rem 0 0;
    cursor: pointer;
    display: grid;
    font-size: .8125rem;
    height: 2.5rem;
    padding: .4375rem .3125rem .3125rem;
    place-items: center;
    text-align: center;
    transition: background-color .3s ease
}

@media (width>=48rem) {
    .c-tab-button {
        font-size: 1.125rem;
        height: 3.75rem
    }
}

.c-tab-button.is-active {
    background-color: var(--color-blue);
    color: #fff;
    font-size: 1rem;
    height: 2.5rem
}

@media (width>=48rem) {
    .c-tab-button.is-active {
        font-size: 1.375rem;
        height: 4.25rem
    }
}

.c-tab-content {
    display: none
}

.c-tab-content.is-active {
    background-color: rgba(var(--color-blue-rgb), .1);
    border-radius: 0;
    display: block;
    padding: 3.125rem 1.25rem
}

@media (width>=48rem) {
    .c-tab-content.is-active {
        border-radius: 0 0 .5rem .5rem;
        padding: 3.75rem min(4.75rem, 5.4285714286vw)
    }
}

.c-table {
    background-color: #fff;
    border-collapse: collapse;
    width: 42.1875rem
}

@media (width>=48rem) {
    .c-table {
        width: 100%
    }
}

.c-table td,
.c-table th {
    border-bottom: 1px solid var(--color-gray-light);
    font-size: .875rem;
    line-height: 1.625;
    padding: .625rem .3125rem;
    text-align: left;
    text-align: center
}

@media (width>=48rem) {
    .c-table td,
    .c-table th {
        font-size: 1rem
    }
}

.c-table th {
    border-right: 2px solid var(--color-beige);
    font-weight: 700
}

.c-table th:last-child {
    border-right: none
}

.c-table td {
    background-color: var(--color-white)
}

.c-table thead th {
    background-color: var(--color-black);
    color: #fff;
    font-size: 1rem;
    height: 3.75rem
}

.c-table tbody,
.c-table thead th {
    border-right: 2px solid var(--color-border)
}

.c-table tbody tr:last-of-type {
    border-bottom: 2px solid var(--color-border)
}

.c-table tbody tr:last-of-type th {
    background: none;
    background-color: var(--color-beige);
    width: 8.25rem
}

@media (width>=48rem) {
    .c-table tbody tr:last-of-type th {
        width: 16rem
    }
}

.c-table tbody tr:last-of-type td {
    background: radial-gradient(circle at center, var(--color-border) 2px, transparent 0), transparent;
    background-position: right -3px top;
    background-repeat: repeat-y;
    background-size: .625rem .625rem
}

.c-table tbody tr:last-of-type td:last-of-type {
    background: none
}

.c-table tbody th {
    background: radial-gradient(circle at center, var(--color-border) 2px, transparent 0), transparent;
    background-color: var(--color-beige);
    background-position: bottom;
    background-repeat: repeat-x;
    background-size: .625rem .625rem;
    border-left: 2px solid var(--color-border);
    border-right: 2px solid var(--color-border)
}

.c-table tbody th .--inline-block {
    display: inline-block
}

.c-table tbody td:not(:last-of-type) {
    background: radial-gradient(circle at center, var(--color-border) 2px, transparent 0), radial-gradient(circle at center, var(--color-border) 2px, transparent 0);
    background-position: bottom, right -3px top;
    background-repeat: repeat-x, repeat-y;
    background-size: .625rem .625rem, .625rem .625rem
}

.c-table tbody td:last-of-type {
    background: radial-gradient(circle at center, var(--color-border) 2px, transparent 0), transparent;
    background-position: bottom;
    background-repeat: repeat-x;
    background-size: .625rem .625rem
}

.c-table tbody span {
    display: block;
    font-weight: 700
}

.c-table tbody small {
    display: block;
    font-size: 1rem;
    font-weight: 500
}

.c-text {
    font-size: 1rem;
    line-height: 1.8
}

.c-text+.c-text {
    margin-top: 1.8em
}

.c-text.--no-start {
    margin-top: 1.5625rem
}

@media (width>=48rem) {
    .c-text.--no-start {
        margin-top: 2.8125rem
    }
}

.c-text a {
    color: var(--color-blue);
    text-decoration: underline
}

.c-text-lead {
    font-size: 1rem;
    line-height: 2
}

@media (width>=48rem) {
    .c-text-lead {
        font-size: 1.125rem
    }
}

.c-text-note {
    font-size: .9375rem;
    letter-spacing: .02em
}

.c-text-note__small,
.c-text-pin {
    font-size: .875rem
}

.c-text-pin {
    align-items: center;
    color: var(--color-blue);
    display: flex;
    font-weight: 700;
    gap: .1875rem;
    line-height: 1
}

.c-text-pin:before {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11.754' height='16.08' viewBox='0 0 11.754 16.08'%3E%3Cpath fill='%2360a0f9' d='M11.754 6.213A5.886 5.886 0 1 0 0 6.213c0 3.441 5.877 9.867 5.877 9.867s5.877-6.426 5.877-9.867M3.14 6.091a2.741 2.741 0 1 1 2.737 2.893A2.836 2.836 0 0 1 3.14 6.091'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: 1rem;
    width: .75rem
}

.c-text-pin--time:before {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16.992' height='16.992' viewBox='0 0 16.992 16.992'%3E%3Cpath fill='%2360a0f9' d='M8.5 16.992a8.25 8.25 0 0 1-3.314-.669 8.6 8.6 0 0 1-2.695-1.818A8.6 8.6 0 0 1 .673 11.81 8.25 8.25 0 0 1 0 8.5a8.25 8.25 0 0 1 .669-3.314 8.6 8.6 0 0 1 1.818-2.7A8.6 8.6 0 0 1 5.182.668 8.25 8.25 0 0 1 8.5 0a8.25 8.25 0 0 1 3.314.669 8.6 8.6 0 0 1 2.695 1.818 8.6 8.6 0 0 1 1.818 2.7 8.25 8.25 0 0 1 .669 3.314 8.25 8.25 0 0 1-.669 3.314A8.6 8.6 0 0 1 14.5 14.5a8.6 8.6 0 0 1-2.695 1.818 8.25 8.25 0 0 1-3.305.674m2.972-4.471 1.053-1.054L9.25 8.192V3.5h-1.5v5.3Z'/%3E%3C/svg%3E");
    height: 1.0625rem;
    width: 1.0625rem
}

.c-text-pin--aqua {
    color: var(--color-aqua)
}

.c-text-pin--aqua:before {
    background: var(--color-aqua);
    -webkit-mask-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11.754' height='16.08' viewBox='0 0 11.754 16.08'%3E%3Cpath fill='%2360a0f9' d='M11.754 6.213A5.886 5.886 0 1 0 0 6.213c0 3.441 5.877 9.867 5.877 9.867s5.877-6.426 5.877-9.867M3.14 6.091a2.741 2.741 0 1 1 2.737 2.893A2.836 2.836 0 0 1 3.14 6.091'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11.754' height='16.08' viewBox='0 0 11.754 16.08'%3E%3Cpath fill='%2360a0f9' d='M11.754 6.213A5.886 5.886 0 1 0 0 6.213c0 3.441 5.877 9.867 5.877 9.867s5.877-6.426 5.877-9.867M3.14 6.091a2.741 2.741 0 1 1 2.737 2.893A2.836 2.836 0 0 1 3.14 6.091'/%3E%3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain
}

@media (width < 48rem) {
    .c-theme .c-card-default__title {
        font-size: 1.125rem;
        margin-top: .9375rem
    }
}

@media (width>=48rem) {
    .c-theme .c-card-default__title {
        margin-bottom: .625rem
    }
}

.c-theme .c-card-default__text {
    display: -webkit-box;
    -webkit-line-clamp: none;
    overflow: visible;
    -webkit-box-orient: vertical
}

.c-card-theme {
    background-color: rgba(var(--color-aqua-rgb), .1);
    border-radius: .5rem;
    margin-top: 5rem;
    padding: 3.75rem 1.4375rem 2.5rem;
    position: relative
}

@media (width>=48rem) {
    .c-card-theme {
        border-radius: .75rem;
        margin-left: auto;
        margin-right: auto;
        margin-top: 11.875rem;
        padding: 5.625rem 5.3125rem 3.75rem;
        width: 59.625rem
    }
}

.c-card-theme .c-text-pin {
    font-size: 1rem;
    grid-area: .3125rem
}

@media (width>=48rem) {
    .c-card-theme .c-text-pin {
        grid-area: pin
    }
}

.c-card-theme .c-text-pin:before {
    height: 1.25rem;
    width: .9375rem
}

@media (width>=48rem) {
    .c-card-theme .c-text {
        grid-area: text
    }
}

.c-card-theme .c-button {
    margin: 0 auto
}

@media (width>=48rem) {
    .c-card-theme .c-button {
        grid-area: button;
        margin: 1.25rem 0 0
    }
}

.c-cta-application+.c-card-theme {
    margin-top: 7.5rem
}

.c-card-theme__obj {
    align-items: center;
    display: flex;
    left: .9375rem;
    position: absolute;
    top: 0;
    transform: translateY(-60%)
}

@media (width>=48rem) {
    .c-card-theme__obj {
        gap: .625rem;
        left: 2.5rem
    }
}

.c-card-theme__obj picture {
    display: block;
    width: 4.5rem
}

@media (width>=48rem) {
    .c-card-theme__obj picture {
        width: 6.25rem
    }
}

.c-card-theme__obj .c-hukidashi-default {
    padding-left: 2.1875rem;
    padding-right: 2.1875rem
}

@media (width>=48rem) {
    .c-card-theme__obj .c-hukidashi-default {
        padding: .9375rem 2.8125rem
    }
    .c-card-theme__row {
        display: grid;
        gap: 0 3.125rem;
        grid-template-areas: "pin pic" "title pic" "text pic" "button pic" "null pic";
        grid-template-columns: 1fr 19.3125rem
    }
}

.c-card-theme__heading {
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.6;
    margin-bottom: .9375rem;
    margin-top: .9375rem
}

@media (width>=48rem) {
    .c-card-theme__heading {
        grid-area: title;
        margin-bottom: 1.125rem;
        margin-top: 1.125rem
    }
}

.c-card-theme__heading2 {
    align-items: center;
    display: flex;
    font-size: .75rem;
    gap: .8125rem;
    margin-bottom: .3125rem
}

@media (width>=48rem) {
    .c-card-theme__heading2 {
        align-items: baseline;
        font-size: .9375rem;
        margin-bottom: 0
    }
}

.c-card-theme__heading2 .u-en {
    color: var(--color-aqua);
    font-size: 1.5rem;
    font-weight: 700
}

@media (width>=48rem) {
    .c-card-theme__heading2 .u-en {
        font-size: 2.5625rem;
        transform: translateY(4%)
    }
}

.c-card-theme__pic {
    display: block;
    margin-top: .9375rem
}

@media (width>=48rem) {
    .c-card-theme__pic {
        grid-area: pic
    }
}

.c-widget+.c-widget {
    margin-top: 2.1875rem
}

@media (width>=64rem) {
    .c-widget+.c-widget {
        margin-top: 3.75rem
    }
}

.c-widget__title {
    font-size: 1.125rem;
    font-weight: 700;
    margin-bottom: .3125rem
}

@media (width>=64rem) {
    .c-widget__title {
        font-size: 1.25rem;
        margin-bottom: .9375rem
    }
}

.c-widget__tags {
    -moz-column-gap: .5rem;
    column-gap: .5rem;
    display: flex;
    flex-wrap: wrap;
    margin-top: .9375rem;
    row-gap: .625rem
}

@media (width>=64rem) {
    .c-widget__tags {
        margin-top: 0
    }
}

.c-widget__tags-item a {
    background-color: #fff;
    border: 1px solid var(--color-border);
    border-radius: 9999px;
    font-size: .875rem;
    font-weight: 700;
    line-height: 1;
    padding: .375rem .75rem
}

.c-widget-accordion__label {
    cursor: pointer;
    padding: .625rem 1.1875rem;
    position: relative
}

@media (width>=64rem) {
    .c-widget-accordion__label {
        padding: .75rem 1.6875rem
    }
}

@media (width>=48rem) {
    .c-widget-accordion__label p {
        font-size: 1rem
    }
}

.c-widget-accordion__label p:before {
    content: none
}

.c-widget-prefectures {
    border: 2px solid var(--color-border);
    border-radius: .375rem;
    overflow: hidden
}

.c-widget-prefectures .c-accordion {
    border-radius: 0;
    margin-bottom: 0;
    padding: 0
}

.c-widget-prefectures .c-accordion:not(:last-of-type) {
    border-bottom: 2px solid var(--color-border)
}

.c-widget-prefectures .c-accordion__content {
    padding: 0 1.1875rem
}

.c-widget-prefectures .c-accordion__content ul {
    display: flex;
    flex-wrap: wrap;
    gap: .625rem;
    padding-bottom: 1.0625rem
}

.c-widget-prefectures .c-accordion__content a {
    align-items: center;
    background-color: var(--color-gray);
    border-radius: 100px;
    display: flex;
    gap: 1.25rem;
    line-height: 1;
    padding: .5rem 1.75rem .5rem 1rem;
    position: relative
}

@media (width>=48rem) {
    .c-widget-prefectures .c-accordion__content a {
        justify-content: center;
        min-width: 7.5rem
    }
}

.c-widget-prefectures .c-accordion__content a:after {
    aspect-ratio: 1;
    background-color: var(--color-blue);
    content: "";
    display: block;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6.74' height='10.519' viewBox='0 0 6.74 10.519'%3E%3Cpath d='M6.429 5.938a1 1 0 0 1-.219.158l-4.4 4.13a1.11 1.11 0 0 1-1.5 0 .957.957 0 0 1 .001-1.407l3.838-3.61-3.73-3.506a.956.956 0 0 1 0-1.411 1.11 1.11 0 0 1 1.5 0l4.51 4.235a.956.956 0 0 1 0 1.411'/%3E%3C/svg%3E") no-repeat center/contain;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6.74' height='10.519' viewBox='0 0 6.74 10.519'%3E%3Cpath d='M6.429 5.938a1 1 0 0 1-.219.158l-4.4 4.13a1.11 1.11 0 0 1-1.5 0 .957.957 0 0 1 .001-1.407l3.838-3.61-3.73-3.506a.956.956 0 0 1 0-1.411 1.11 1.11 0 0 1 1.5 0l4.51 4.235a.956.956 0 0 1 0 1.411'/%3E%3C/svg%3E") no-repeat center/contain;
    position: absolute;
    right: .625rem;
    top: 50%;
    transform: translateY(-50%);
    width: .625rem
}

.c-widget-accordion--orange .c-accordion__arrow,
.c-widget-accordion--orange .c-accordion__content a:after {
    background-color: var(--color-orange)
}

.c-widget-accordion--blue .c-accordion__arrow,
.c-widget-accordion--blue .c-accordion__content a:after {
    background-color: var(--color-blue)
}

.c-widget-accordion--aqua .c-accordion__arrow,
.c-widget-accordion--aqua .c-accordion__content a:after {
    background-color: var(--color-aqua)
}

.c-widget-accordion--yellow .c-accordion__arrow,
.c-widget-accordion--yellow .c-accordion__content a:after {
    background-color: var(--color-yellow)
}

.c-widget-accordion--pink .c-accordion__arrow,
.c-widget-accordion--pink .c-accordion__content a:after {
    background-color: var(--color-pink)
}

.c-widget-accordion--purple .c-accordion__arrow,
.c-widget-accordion--purple .c-accordion__content a:after {
    background-color: var(--color-purple)
}

@media (width>=48rem) {
    .p-home-cm__grid {
        align-items: flex-end;
        display: grid;
        gap: 0 2rem;
        grid-template-columns: 1fr 1fr
    }
}

.p-home-fv {
    padding-bottom: .625rem;
    padding-top: 6.25rem;
    position: relative
}

@media (width>=48rem) {
    .p-home-fv {
        display: grid;
        gap: 2.1875rem;
        grid-template-columns: 1fr 1fr;
        justify-content: center;
        padding-bottom: 1.875rem;
        padding-top: 0
    }
}

.p-home-fv__title {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    justify-content: center;
    margin: 0 auto;
    width: calc(100% - 2.5rem)
}

@media (width>=48rem) {
    .p-home-fv__title {
        gap: .5rem;
        grid-row: 2/3;
        margin: 0 0 0 auto;
        padding-left: 3.75rem;
        width: min(100%, 800px)
    }
}

.p-home-fv__lead {
    font-size: 1rem;
    font-weight: 700;
    line-height: 1
}

@media (width>=48rem) {
    .p-home-fv__lead {
        font-size: 1.25rem
    }
}

.p-home-fv__heading {
    width: 19.6875rem
}

@media (width>=48rem) {
    .p-home-fv__heading {
        width: min(36.625rem, 45.78125vw)
    }
}

.p-home-fv__heading img {
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    width: 100%
}

.p-home-fv__slider {
    aspect-ratio: 376/242;
    margin-top: 1.375rem;
    overflow: hidden
}

@media (width>=48rem) {
    .p-home-fv__slider {
        aspect-ratio: 1600/624;
        display: flex;
        grid-column: 1/3;
        margin-top: 0;
        width: 100%
    }
}

.p-home-fv__slider-col {
    height: 100%;
    position: relative
}

@media (width>=48rem) {
    .p-home-fv__slider-col {
        display: block;
        width: 100%
    }
}

@media (width < 48rem) {
    .p-home-fv__slider-col:last-child {
        display: none
    }
}

.p-home-fv__slider-pic {
    bottom: 0;
    display: block;
    left: 0;
    position: absolute;
    right: 0;
    top: 0
}

.p-home-fv__slider-pic img {
    display: block;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    width: 100%
}

@media (width < 48rem) {
    .p-home-fv__slider-pic img {
        height: 64.3617021277dvw
    }
}

.p-home-fv__slider-slide {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    position: absolute
}

.p-home-fv__slider-slide:first-child {
    background-color: var(--color-aqua)
}

.p-home-fv__slider-slide:nth-child(2) {
    background-color: var(--color-pink)
}

.p-home-fv__slider-slide:nth-child(3) {
    background-color: var(--color-yello)
}

.p-home-fv__slider-slide:nth-child(4) {
    background-color: var(--color-green)
}

.p-home-fv__video {
    display: block;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    width: 100%
}

.p-home-fv__award {
    margin-left: auto;
    margin-right: auto;
    margin-top: -1.375rem;
    position: relative;
    width: min(100% - 2.5rem);
    z-index: 1
}

@media (width>=48rem) {
    .p-home-fv__award {
        display: flex;
        justify-content: flex-end;
        margin: -.625rem auto 0 0;
        padding-right: 3.75rem;
        width: min(100%, 800px)
    }
    .p-home-fv__award picture {
        display: block;
        width: min(26.1875rem, 32.734375vw)
    }
}

.p-home-fv__contact {
    align-items: center;
    background-color: #fff;
    border: 1px solid var(--color-border);
    border-radius: .25rem;
    display: none;
    flex-direction: column;
    height: min(4.5rem, 4.5vw);
    justify-content: flex-start;
    line-height: 1;
    padding-top: .125rem;
    position: absolute;
    right: min(3.75rem, 3.75vw);
    top: 5.625rem;
    width: min(16.6875rem, 16.6875vw)
}

@media (width>=48rem) {
    .p-home-fv__contact {
        display: flex
    }
}

.p-home-fv__contact-tel {
    align-content: center;
    color: var(--color-green);
    display: flex;
    font-size: min(1.4375rem, 1.4375vw);
    font-weight: 900;
    justify-content: center;
    letter-spacing: .03em
}

.p-home-fv__contact-tel:before {
    aspect-ratio: 1;
    background-color: var(--color-green);
    border-radius: 50%;
    content: "";
    display: block;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22.609' height='22.609' viewBox='0 0 22.609 22.609'%3E%3Cpath d='M11.3 22.109a10.8 10.8 0 1 1 10.805-10.8 10.816 10.816 0 0 1-10.805 10.8M6.361 6.136a.637.637 0 0 0-.653.653 9.4 9.4 0 0 0 .847 3.84 11.5 11.5 0 0 0 2.4 3.451 11.5 11.5 0 0 0 3.451 2.4 9.4 9.4 0 0 0 3.841.847.64.64 0 0 0 .653-.653v-2.516a.55.55 0 0 0-.141-.365.7.7 0 0 0-.357-.226l-2.146-.436a1 1 0 0 0-.133-.009 1 1 0 0 0-.31.049.9.9 0 0 0-.365.209l-1.461 1.462a10 10 0 0 1-1.12-.754 11 11 0 0 1-1.01-.895 11 11 0 0 1-.941-1.033 7.6 7.6 0 0 1-.739-1.112l1.511-1.524a.65.65 0 0 0 .172-.3 1.1 1.1 0 0 0 .015-.42l-.4-2.176a.58.58 0 0 0-.2-.35.58.58 0 0 0-.389-.147Z'/%3E%3Cpath fill='rgba(0,0,0,0)' d='M11.3 22.609a11.3 11.3 0 1 1 11.305-11.3 11.317 11.317 0 0 1-11.305 11.3M11.3 1a10.3 10.3 0 1 0 10.309 10.305A10.316 10.316 0 0 0 11.3 1m4.945 16.829a9.9 9.9 0 0 1-4.044-.891 12 12 0 0 1-3.6-2.506 12 12 0 0 1-2.5-3.6 9.9 9.9 0 0 1-.891-4.044 1.137 1.137 0 0 1 1.151-1.152H8.88a1.11 1.11 0 0 1 1.084.912l.407 2.2a1.6 1.6 0 0 1-.029.615 1.14 1.14 0 0 1-.3.516L8.8 11.129a7 7 0 0 0 .506.72 10 10 0 0 0 .9.985l.007.006a10 10 0 0 0 .963.853q.352.274.736.517l1.188-1.183a1.36 1.36 0 0 1 .572-.334 1.5 1.5 0 0 1 .658-.057l.032.005 2.185.445a1.2 1.2 0 0 1 .6.383 1.05 1.05 0 0 1 .259.688v2.519a1.14 1.14 0 0 1-1.153 1.153ZM6.361 6.636a.14.14 0 0 0-.114.04.14.14 0 0 0-.039.113 8.9 8.9 0 0 0 .8 3.636 11 11 0 0 0 2.3 3.3 11 11 0 0 0 3.3 2.3 8.9 8.9 0 0 0 3.637.8.14.14 0 0 0 .153-.153v-2.514c0-.007 0-.016-.02-.039a.2.2 0 0 0-.1-.067l-2.1-.427a.5.5 0 0 0-.214.023.4.4 0 0 0-.161.086l-1.732 1.733-.333-.193a10.4 10.4 0 0 1-1.177-.792 11 11 0 0 1-1.054-.933 11 11 0 0 1-.981-1.078 8 8 0 0 1-.787-1.185l-.177-.326 1.774-1.791a.15.15 0 0 0 .041-.069.6.6 0 0 0 0-.213l-.4-2.176a.1.1 0 0 0-.037-.05.08.08 0 0 0-.06-.024Z'/%3E%3C/svg%3E") no-repeat center center;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22.609' height='22.609' viewBox='0 0 22.609 22.609'%3E%3Cpath d='M11.3 22.109a10.8 10.8 0 1 1 10.805-10.8 10.816 10.816 0 0 1-10.805 10.8M6.361 6.136a.637.637 0 0 0-.653.653 9.4 9.4 0 0 0 .847 3.84 11.5 11.5 0 0 0 2.4 3.451 11.5 11.5 0 0 0 3.451 2.4 9.4 9.4 0 0 0 3.841.847.64.64 0 0 0 .653-.653v-2.516a.55.55 0 0 0-.141-.365.7.7 0 0 0-.357-.226l-2.146-.436a1 1 0 0 0-.133-.009 1 1 0 0 0-.31.049.9.9 0 0 0-.365.209l-1.461 1.462a10 10 0 0 1-1.12-.754 11 11 0 0 1-1.01-.895 11 11 0 0 1-.941-1.033 7.6 7.6 0 0 1-.739-1.112l1.511-1.524a.65.65 0 0 0 .172-.3 1.1 1.1 0 0 0 .015-.42l-.4-2.176a.58.58 0 0 0-.2-.35.58.58 0 0 0-.389-.147Z'/%3E%3Cpath fill='rgba(0,0,0,0)' d='M11.3 22.609a11.3 11.3 0 1 1 11.305-11.3 11.317 11.317 0 0 1-11.305 11.3M11.3 1a10.3 10.3 0 1 0 10.309 10.305A10.316 10.316 0 0 0 11.3 1m4.945 16.829a9.9 9.9 0 0 1-4.044-.891 12 12 0 0 1-3.6-2.506 12 12 0 0 1-2.5-3.6 9.9 9.9 0 0 1-.891-4.044 1.137 1.137 0 0 1 1.151-1.152H8.88a1.11 1.11 0 0 1 1.084.912l.407 2.2a1.6 1.6 0 0 1-.029.615 1.14 1.14 0 0 1-.3.516L8.8 11.129a7 7 0 0 0 .506.72 10 10 0 0 0 .9.985l.007.006a10 10 0 0 0 .963.853q.352.274.736.517l1.188-1.183a1.36 1.36 0 0 1 .572-.334 1.5 1.5 0 0 1 .658-.057l.032.005 2.185.445a1.2 1.2 0 0 1 .6.383 1.05 1.05 0 0 1 .259.688v2.519a1.14 1.14 0 0 1-1.153 1.153ZM6.361 6.636a.14.14 0 0 0-.114.04.14.14 0 0 0-.039.113 8.9 8.9 0 0 0 .8 3.636 11 11 0 0 0 2.3 3.3 11 11 0 0 0 3.3 2.3 8.9 8.9 0 0 0 3.637.8.14.14 0 0 0 .153-.153v-2.514c0-.007 0-.016-.02-.039a.2.2 0 0 0-.1-.067l-2.1-.427a.5.5 0 0 0-.214.023.4.4 0 0 0-.161.086l-1.732 1.733-.333-.193a10.4 10.4 0 0 1-1.177-.792 11 11 0 0 1-1.054-.933 11 11 0 0 1-.981-1.078 8 8 0 0 1-.787-1.185l-.177-.326 1.774-1.791a.15.15 0 0 0 .041-.069.6.6 0 0 0 0-.213l-.4-2.176a.1.1 0 0 0-.037-.05.08.08 0 0 0-.06-.024Z'/%3E%3C/svg%3E") no-repeat center center;
    -webkit-mask-size: contain;
    mask-size: contain;
    width: min(1.375rem, 1.375vw)
}

.p-home-fv__contact-tel span {
    background-image: radial-gradient(var(--color-green) 25%, transparent 25%);
    background-position: 0 100%;
    background-repeat: repeat-x;
    background-size: min(.5rem, .5vw) min(.5rem, .5vw);
    display: block;
    padding: min(.5rem, .5vw) min(.375rem, .375vw)
}

.p-home-fv__contact-time {
    font-size: min(.8125rem, .8125vw);
    margin-top: min(.3125rem, .3125vw)
}

.p-home-about {
    background-color: var(--color-beige);
    overflow: hidden;
    padding-top: var(--space-md);
    position: relative
}

@media (width>=48rem) {
    .p-home-about {
        padding-top: var(--space-xl)
    }
}

.p-home-about__lead {
    align-items: center;
    display: flex;
    flex-direction: column;
    font-weight: 900;
    line-height: 1.6;
    margin-bottom: 1.25rem
}

@media (width>=48rem) {
    .p-home-about__lead {
        margin-bottom: 1.5625rem
    }
}

.p-home-about__lead small {
    font-size: 1.1875rem
}

@media (width>=48rem) {
    .p-home-about__lead small {
        font-size: 1.75rem
    }
}

.p-home-about__lead span {
    font-size: 1.375rem
}

@media (width>=48rem) {
    .p-home-about__lead span {
        font-size: 2.25rem
    }
}

.p-home-about__text {
    font-size: 1rem;
    line-height: 2;
    text-align: justify
}

@media (width>=48rem) {
    .p-home-about__text {
        font-size: 1.125rem;
        text-align: center
    }
}

.p-home-about__button {
    margin: 1.875rem auto 0;
    width: -moz-max-content;
    width: max-content
}

@media (width>=48rem) {
    .p-home-about__button {
        margin-top: 2.5rem
    }
}

.p-home-about__pic {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-top: 11.25rem;
    position: relative;
    z-index: 1
}

@media (width>=48rem) {
    .p-home-about__pic {
        margin-top: 4.0625rem;
        width: 74.125rem
    }
}

.p-home-about__ob {
    pointer-events: none;
    position: absolute
}

.p-home-about__ob--01 {
    bottom: 16.25rem;
    left: -.1875rem;
    width: 10.625rem
}

@media (width>=48rem) {
    .p-home-about__ob--01 {
        left: max(50% - 41.25rem, 50% - 55vw);
        top: 28.125rem;
        width: 18.75rem
    }
}

.p-home-about__ob--02 {
    bottom: 12.5rem;
    right: -.9375rem;
    width: 9.6875rem
}

@media (width>=48rem) {
    .p-home-about__ob--02 {
        left: min(50% + 25rem, 50% + 33.3333333333vw);
        top: 37.5rem;
        width: 16.9375rem
    }
}

.p-home-about__ob--03 {
    display: none
}

@media (width>=48rem) {
    .p-home-about__ob--03 {
        display: block;
        left: max(50% - 37.125rem, 50% - 49.5vw);
        top: 46.5625rem;
        width: 16.9375rem
    }
}

.p-home-about__ob--04 {
    display: none
}

@media (width>=48rem) {
    .p-home-about__ob--04 {
        display: block;
        left: min(50% + 21.8125rem, 50% + 29.0833333333vw);
        top: 2.1875rem;
        width: -moz-max-content;
        width: max-content
    }
}

.p-home-about__ob--05 {
    display: none
}

@media (width>=48rem) {
    .p-home-about__ob--05 {
        display: block;
        left: max(50% - 52.625rem, 50% - 64.7692307692vw);
        top: 57.125rem;
        width: 15.8125rem
    }
}

.p-home-search {
    background-color: var(--color-green);
    padding: 2.5rem 0 3.125rem
}

@media (width>=48rem) {
    .p-home-search {
        border-radius: 1rem;
        padding: 5.3125rem 0 6.25rem
    }
    .p-home-search .c-inner {
        align-items: start;
        display: grid;
        gap: 2.75rem .625rem;
        grid-template-columns: 1fr 1fr
    }
    .p-home-search__map {
        grid-row: 1/4
    }
}

.p-home-search__heading,
.p-home-search__text {
    color: #fff
}

@media (width>=48rem) {
    .p-home-search__text {
        margin-bottom: max(-5rem, -5vw);
        width: 23.9375rem
    }
}

.p-home-search__areas {
    display: grid;
    gap: 1rem .75rem;
    grid-template-columns: repeat(2, 1fr);
    margin-bottom: 1.8125rem;
    margin-top: .9375rem
}

@media (width>=48rem) {
    .p-home-search__areas {
        display: none
    }
}

.p-home-search__areas li:first-child .c-rbutton:after {
    background-color: var(--color-blue)
}

.p-home-search__areas li:nth-child(2) .c-rbutton:after {
    background-color: var(--color-aqua)
}

.p-home-search__areas li:nth-child(3) .c-rbutton:after {
    background-color: var(--color-yellow)
}

.p-home-search__areas li:nth-child(4) .c-rbutton:after {
    background-color: var(--color-orange)
}

.p-home-search__areas li:nth-child(5) .c-rbutton:after {
    background-color: var(--color-pink)
}

.p-home-search__areas li:nth-child(6) .c-rbutton:after {
    background-color: var(--color-purple)
}

.p-home-search__button {
    margin-left: auto;
    margin-right: auto
}

@media (width>=48rem) {
    .p-home-search__button {
        grid-column: 2/3
    }
}

.p-home-course {
    background-color: var(--color-beige);
    overflow: hidden;
    padding-bottom: var(--space-xl);
    padding-top: var(--space-xl)
}

@media (width>=48rem) {
    .p-home-course {
        padding-bottom: 8.125rem;
        padding-top: 8.125rem
    }
}

.p-home-course .c-hukidashi-text:after {
    left: auto;
    right: 25%;
    transform: translateY(-40%) scaleX(-1)
}

.p-home-course__intro {
    align-items: flex-end;
    display: flex;
    gap: 3.75rem;
    margin-bottom: 3.75rem
}

.p-home-course__list {
    display: grid;
    gap: 4.0625rem;
    margin-top: 4.6875rem
}

@media (width>=48rem) {
    .p-home-course__list {
        gap: min(2rem, 2.2857142857vw);
        grid-column: 1/3;
        grid-template-columns: repeat(3, 1fr);
        margin-left: auto;
        margin-right: auto;
        margin-top: 6.875rem;
        width: min(73.75rem, 100%)
    }
}

.p-home-course__list .c-hukidashi-text {
    gap: .375rem;
    height: 3.1875rem
}

@media (width>=48rem) {
    .p-home-course__list .c-hukidashi-text {
        font-size: min(1.0625rem, 1.2142857143vw)
    }
}

.p-home-course__list .c-hukidashi-text:before {
    width: .9375rem
}

.p-home-course__list .c-hukidashi-text .u-en {
    font-size: 1.4375rem
}

@media (width>=48rem) {
    .p-home-course__list .c-hukidashi-text .u-en {
        font-size: min(1.4375rem, 1.6428571429vw)
    }
}

@media (width < 48rem) {
    .p-home-course__list .c-card-course:nth-child(2) {
        margin-top: 1.875rem
    }
}

.p-home-course__button {
    margin-left: auto;
    margin-right: auto;
    margin-top: 2.5rem
}

@media (width>=48rem) {
    .p-home-course__button {
        grid-column: 2/3;
        grid-row: 1/2;
        margin-left: 0
    }
}

.p-home-loop01 {
    background-color: var(--color-beige)
}

.p-home-voice {
    overflow: hidden;
    padding: 5rem 0;
    position: relative
}

@media (width>=48rem) {
    .p-home-voice {
        padding: 8.125rem 0
    }
    .p-home-voice:after {
        background: url(../images/home-voice-pic.webp) no-repeat 50%/contain;
        bottom: 0;
        content: "";
        display: block;
        height: 37.0625rem;
        position: absolute;
        right: min(100% - 34.375rem, 100vw - (50vw - 35.625rem));
        width: 30.125rem
    }
    .p-home-voice .c-slider-controller {
        width: 24.5rem
    }
}

.p-home-voice__gear {
    position: absolute;
    right: min(100% - 25rem, 100vw - (50vw - 45rem));
    top: 14rem;
    width: 25.625rem
}

.p-home-voice__gear .c-gear-asset01 {
    height: 25rem;
    width: 24.125rem
}

.p-home-voice__gear svg:first-child {
    animation-delay: -.8s;
    width: 11.3125rem
}

.p-home-voice__gear svg:nth-child(2) {
    width: 17.75rem
}

.p-home-voice__gear path {
    stroke: var(--color-blue)
}

.p-home-voice__inner {
    margin-left: auto;
    margin-right: auto;
    width: 21rem
}

@media (width>=48rem) {
    .p-home-voice__inner {
        margin-right: 0;
        overflow: hidden;
        padding-right: 5vw;
        width: min(100% - 31.25rem, 100vw - (50vw - 38.75rem))
    }
    .p-home-voice__grid {
        grid-template-columns: 1.3fr 1fr;
        width: min(57.5vw, 77.5rem)
    }
    .p-home-voice__heading {
        grid-column: 1/3
    }
    .p-home-voice__text {
        width: min(37.6875rem, 100%)
    }
}

.p-home-voice__button {
    margin-left: auto;
    margin-right: auto;
    margin-top: 3.125rem
}

@media (width>=48rem) {
    .p-home-voice__button {
        margin-left: 0;
        margin-top: 0
    }
}

.p-home-voice__ob {
    display: none
}

@media (width>=48rem) {
    .p-home-voice__ob {
        display: block;
        position: absolute;
        right: min(100% - 23.125rem, 100vw - (50vw - 46.875rem));
        top: 8.75rem;
        width: -moz-max-content;
        width: max-content
    }
}

.p-home-voice__ob path {
    stroke: var(--color-blue)
}

.p-home-slider {
    background-color: var(--color-beige);
    padding: 5rem 0
}

@media (width>=48rem) {
    .p-home-slider {
        padding: 8.125rem 0
    }
}

.p-home-slider+.p-home-slider {
    padding-top: 0
}

@media (width>=48rem) {
    .p-home-slider .c-inner {
        align-items: flex-end;
        display: grid;
        grid-template-columns: 1.2fr 1fr
    }
}

.p-home-slider__slider {
    margin-top: 1.875rem
}

@media (width < 48rem) {
    .p-home-slider__slider .swiper-wrapper {
        flex-direction: column;
        gap: 3.75rem
    }
}

@media (width>=48rem) {
    .p-home-slider__slider {
        grid-column: 1/3;
        margin-top: 3.75rem
    }
}

@media (width < 48rem) {
    .p-home-slider__slider .c-card-default:nth-child(n+4) {
        display: none
    }
}

@media (width>=48rem) {
    .p-home-slider__heading {
        margin-bottom: 2.1875rem
    }
}

@media (width < 48rem) {
    .p-home-slider__controller {
        display: none
    }
}

@media (width>=48rem) {
    .p-home-slider__controller {
        margin-left: auto;
        margin-right: 0;
        width: 24.5rem
    }
}

.p-home-slider__button {
    margin-left: auto;
    margin-right: auto;
    margin-top: 2.75rem
}

@media (width>=48rem) {
    .p-home-slider__button {
        grid-column: 1/3;
        margin-top: 3.75rem;
        width: 16.25rem
    }
}

.p-home-business {
    padding: 5rem 0
}

@media (width>=48rem) {
    .p-home-business {
        padding: 8.125rem 0
    }
    .p-home-business__grid {
        display: grid;
        gap: 0 2.5rem;
        grid-template-columns: 1fr 1.5fr
    }
    .p-home-business__heading {
        margin-bottom: 0
    }
    .p-home-business__text {
        grid-column: 2/3;
        grid-row: 1/3;
        margin-top: 1.25rem
    }
}

.p-home-business__text .c-text+.c-text {
    margin-top: .625rem
}

.p-home-business__cards {
    display: grid;
    gap: 2.5rem;
    grid-template-columns: repeat(1, 1fr);
    margin-top: 3.75rem
}

@media (width>=48rem) {
    .p-home-business__cards {
        grid-column: 1/3;
        grid-row: 4/4;
        grid-template-columns: repeat(3, 1fr);
        margin-top: 5rem
    }
}

.p-home-business__button {
    margin-left: auto;
    margin-right: auto;
    margin-top: 2.75rem
}

@media (width>=48rem) {
    .p-home-business__button {
        margin-left: 0;
        margin-top: 1.875rem
    }
}

.p-home-news {
    overflow: hidden;
    padding-bottom: 5rem;
    position: relative
}

@media (width>=48rem) {
    .p-home-news {
        max-height: 42.5rem;
        padding-bottom: 0;
        padding-top: 10rem
    }
}

.p-home-news__inner {
    background-color: #fff;
    display: grid;
    grid-template-columns: 100%;
    position: relative;
    width: min(38.75rem, 100%);
    z-index: 1
}

@media (width>=48rem) {
    .p-home-news__inner {
        align-items: center;
        border-radius: .625rem .625rem 0 0;
        gap: 2.5rem 0;
        grid-template-columns: 1fr 1fr;
        padding: 2.5rem 3.75rem 2.8125rem
    }
}

.p-home-news__heading {
    margin-bottom: .9375rem
}

@media (width>=48rem) {
    .p-home-news__heading {
        grid-row: 1/2;
        margin-bottom: 0
    }
}

.p-home-news__list {
    align-items: start;
    display: grid;
    gap: .9375rem
}

@media (width>=48rem) {
    .p-home-news__list {
        gap: 1.25rem;
        grid-column: 1/3;
        grid-row: 2/3;
        height: 19.375rem;
        overflow-y: auto
    }
}

@media (width < 48rem) {
    .p-home-news__list .c-card-news:nth-child(n+4) {
        display: none
    }
}

.p-home-news__button {
    margin-left: auto;
    margin-right: auto;
    margin-top: 2.5rem
}

@media (width>=48rem) {
    .p-home-news__button {
        grid-row: 1/2;
        margin-right: 0;
        margin-top: 0
    }
}

.p-home-news__bg {
    bottom: 0;
    display: block;
    left: 0;
    position: absolute;
    right: 0;
    top: 0
}

.p-home-news__bg img {
    display: block;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.p-school {
    position: relative
}

@media (width < 48rem) {
    .p-school .c-block-radius {
        padding-bottom: 0
    }
}

.p-school-search .c-heading-dot {
    margin-bottom: 2.1875rem
}

.p-school-search__inputs {
    display: grid;
    gap: 1.25rem;
    margin-bottom: 2.5rem;
    max-width: 56.25rem
}

@media (width>=48rem) {
    .p-school-search__inputs {
        grid-template-columns: 15.25rem 1fr;
        margin-bottom: 2.8125rem
    }
}

.p-school-search__inputs input,
.p-school-search__inputs select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none
}

.p-school-search__inputs [type=text],
.p-school-search__inputs select {
    background-color: #fff;
    border: 1px solid var(--color-border);
    border-radius: .25rem;
    font-size: .875rem;
    height: 3.5rem;
    padding: 0 1.5625rem;
    width: 100%
}

@media (width>=48rem) {
    .p-school-search__inputs [type=text],
    .p-school-search__inputs select {
        font-size: 1rem;
        padding: 0 1.25rem
    }
}

.p-school-search__inputs select {
    font-weight: 700
}

.p-school-search__select {
    position: relative
}

@media (width < 48rem) {
    .p-school-search__select {
        order: 1
    }
}

.p-school-search__select:after {
    aspect-ratio: 13/8;
    background-color: var(--color-blue);
    content: "";
    display: block;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.808' height='6.926' viewBox='0 0 10.808 6.926'%3E%3Cpath stroke='rgba(0,0,0,0)' stroke-miterlimit='10' d='M5.405 6.426a.92.92 0 0 1-.66-.275L.774 2.18A.935.935 0 0 1 2.096.858l3.311 3.309 3.3-3.309a.936.936 0 0 1 1.322 1.326L6.063 6.151a.93.93 0 0 1-.661.275Z'/%3E%3C/svg%3E") no-repeat center;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.808' height='6.926' viewBox='0 0 10.808 6.926'%3E%3Cpath stroke='rgba(0,0,0,0)' stroke-miterlimit='10' d='M5.405 6.426a.92.92 0 0 1-.66-.275L.774 2.18A.935.935 0 0 1 2.096.858l3.311 3.309 3.3-3.309a.936.936 0 0 1 1.322 1.326L6.063 6.151a.93.93 0 0 1-.661.275Z'/%3E%3C/svg%3E") no-repeat center;
    pointer-events: none;
    position: absolute;
    right: 1.4375rem;
    top: 50%;
    transform: translateY(-50%);
    width: .8125rem
}

.p-school-search__keyword {
    position: relative
}

.p-school-search__keyword [type=submit] {
    aspect-ratio: 1;
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14.475' height='14.363' viewBox='0 0 14.475 14.363'%3E%3Cpath fill='%2360a0f9' d='M6.2 12.4a5.99 5.99 0 0 1-4.4-1.8A5.99 5.99 0 0 1 0 6.2a5.99 5.99 0 0 1 1.8-4.4A5.99 5.99 0 0 1 6.2 0a5.99 5.99 0 0 1 4.4 1.8 5.99 5.99 0 0 1 1.8 4.4 5.8 5.8 0 0 1-.334 1.979 5.7 5.7 0 0 1-.906 1.646l3.051 2.939a.9.9 0 0 1 .262.668.9.9 0 0 1-.262.668.9.9 0 0 1-.668.262.9.9 0 0 1-.668-.262l-3.051-2.939a5.7 5.7 0 0 1-1.646.906A5.8 5.8 0 0 1 6.2 12.4m0-1.908A4.14 4.14 0 0 0 9.241 9.24a4.14 4.14 0 0 0 1.252-3.041 4.14 4.14 0 0 0-1.252-3.041A4.14 4.14 0 0 0 6.2 1.906a4.14 4.14 0 0 0-3.041 1.252 4.14 4.14 0 0 0-1.252 3.041A4.14 4.14 0 0 0 3.159 9.24 4.14 4.14 0 0 0 6.2 10.494Z'/%3E%3C/svg%3E") no-repeat 50%;
    border: none;
    content: none;
    position: absolute;
    right: .3125rem;
    top: 50%;
    transform: translateY(-50%);
    width: 3.125rem
}

.p-school-search__city form {
    display: flex
}

.p-school-search__subtitle {
    font-size: 1.125rem;
    font-weight: 700;
    margin-bottom: .625rem
}

.p-school-search__city-list {
    display: flex;
    flex-wrap: wrap;
    gap: .625rem;
    margin-bottom: 1.25rem
}

@media (width>=48rem) {
    .p-school-search__city-list {
        gap: .875rem .75rem
    }
}

.p-school-search__city-label {
    cursor: pointer
}

.p-school-search__city-label input {
    display: none
}

.p-school-search__city-label span {
    border: 1px solid var(--color-border);
    border-radius: 100px;
    display: block;
    height: 2rem;
    padding: 0 .875rem;
    transition: color var(--duration-fast) var(--ease-power3-inout), border-color var(--duration-fast) var(--ease-power3-inout), background-color var(--duration-fast) var(--ease-power3-inout)
}

@media (hover) {
    .p-school-search__city-label span:hover {
        border-color: var(--color-blue)
    }
}

.p-school-search__city-label input:checked+span {
    background-color: var(--color-blue);
    color: #fff
}

.p-school-result {
    padding: 3.125rem 0 0
}

@media (width>=48rem) {
    .p-school-result {
        margin: 0 auto;
        padding: 3.875rem 0 0
    }
}

@media (width < 48rem) {
    .p-school-result {
        width: 100%
    }
    .p-school-result .c-tab {
        left: 50%;
        position: relative;
        transform: translate(-50%);
        width: 100vw
    }
}

.p-school-result__block .c-tab-content {
    padding-top: 2.1875rem
}

@media (width>=48rem) {
    .p-school-result__block .c-tab-content {
        padding-top: 3.125rem
    }
}

.p-school-result__block+.p-school-result__block {
    margin-top: 3.875rem
}

@media (width>=48rem) {
    .p-school-result__block+.p-school-result__block {
        margin-top: 5rem
    }
}

.p-school-area+.p-school-area {
    margin-top: 3rem
}

@media (width>=48rem) {
    .p-school-area+.p-school-area {
        margin-top: 3.5rem
    }
}

.p-school-area__lists {
    display: grid;
    gap: 1.5rem;
    margin-top: 1.25rem
}

@media (width>=48rem) {
    .p-school-area__lists {
        gap: min(2.5rem, 2.8571428571vw);
        grid-template-columns: repeat(2, 1fr);
        margin-top: 1.75rem
    }
}

@media (width>=80rem) {
    .p-school-area__lists {
        grid-template-columns: repeat(3, 1fr)
    }
}

.p-school-area__item {
    align-items: start;
    background-color: #fff;
    border-radius: .5rem;
    display: grid;
    gap: 1.5625rem;
    grid-template-columns: 1fr auto;
    height: 100%;
    padding: 1.125rem
}

.p-school-area__item--one {
    grid-template-columns: 1fr
}

.p-school-area__text {
    width: 100%
}

.p-school-area__school-name {
    font-weight: 700;
    line-height: 1.5;
    margin-bottom: .625rem
}

.p-school-area__school-address {
    font-size: .8125rem;
    line-height: 1.5
}

.p-school-area__school-note {
    color: rgba(var(--color-black-rgb), .6);
    font-size: .75rem;
    font-weight: 300;
    line-height: 1.4;
    margin-top: .625rem
}

.p-school-area__pic {
    aspect-ratio: 128/125;
    border-radius: .375rem;
    overflow: hidden;
    width: 8rem
}

.p-school-area__pic img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.p-school-result__block[data-area][data-area=北海道・東北エリア] .c-heading-lv3:before {
    background-color: var(--color-blue)
}

.p-school-result__block[data-area][data-area=北海道・東北エリア] .c-tab-buttons {
    border-bottom-color: var(--color-blue)
}

.p-school-result__block[data-area][data-area=北海道・東北エリア] .c-tab-button.is-active {
    background-color: var(--color-blue)
}

.p-school-result__block[data-area][data-area=北海道・東北エリア] .c-tab-content.is-active {
    background-color: rgba(var(--color-blue-rgb), .1)
}

.p-school-result__block[data-area][data-area=関東エリア] .c-heading-lv3:before {
    background-color: var(--color-aqua)
}

.p-school-result__block[data-area][data-area=関東エリア] .c-tab-buttons {
    border-bottom-color: var(--color-aqua)
}

.p-school-result__block[data-area][data-area=関東エリア] .c-tab-button.is-active {
    background-color: var(--color-aqua)
}

.p-school-result__block[data-area][data-area=関東エリア] .c-tab-content.is-active {
    background-color: rgba(var(--color-aqua-rgb), .1)
}

.p-school-result__block[data-area][data-area=東海エリア] .c-heading-lv3:before {
    background-color: var(--color-yellow)
}

.p-school-result__block[data-area][data-area=東海エリア] .c-tab-buttons {
    border-bottom-color: var(--color-yellow)
}

.p-school-result__block[data-area][data-area=東海エリア] .c-tab-button.is-active {
    background-color: var(--color-yellow)
}

.p-school-result__block[data-area][data-area=東海エリア] .c-tab-content.is-active {
    background-color: rgba(var(--color-yellow-rgb), .1)
}

.p-school-result__block[data-area][data-area=関西エリア] .c-heading-lv3:before {
    background-color: var(--color-orange)
}

.p-school-result__block[data-area][data-area=関西エリア] .c-tab-buttons {
    border-bottom-color: var(--color-orange)
}

.p-school-result__block[data-area][data-area=関西エリア] .c-tab-button.is-active {
    background-color: var(--color-orange)
}

.p-school-result__block[data-area][data-area=関西エリア] .c-tab-content.is-active {
    background-color: rgba(var(--color-orange-rgb), .1)
}

.p-school-result__block[data-area][data-area=中国・四国エリア] .c-heading-lv3:before {
    background-color: var(--color-pink)
}

.p-school-result__block[data-area][data-area=中国・四国エリア] .c-tab-buttons {
    border-bottom-color: var(--color-pink)
}

.p-school-result__block[data-area][data-area=中国・四国エリア] .c-tab-button.is-active {
    background-color: var(--color-pink)
}

.p-school-result__block[data-area][data-area=中国・四国エリア] .c-tab-content.is-active {
    background-color: rgba(var(--color-pink-rgb), .1)
}

.p-school-result__block[data-area][data-area=九州エリア] .c-heading-lv3:before {
    background-color: var(--color-purple)
}

.p-school-result__block[data-area][data-area=九州エリア] .c-tab-buttons {
    border-bottom-color: var(--color-purple)
}

.p-school-result__block[data-area][data-area=九州エリア] .c-tab-button.is-active {
    background-color: var(--color-purple)
}

.p-school-result__block[data-area][data-area=九州エリア] .c-tab-content.is-active {
    background-color: rgba(var(--color-purple-rgb), .1)
}

@media (hover) {
    .p-school-area__item .p-school-area__pic img {
        transition: transform var(--duration-fast) var(--ease-power3-inout)
    }
    .p-school-area__item:hover .p-school-area__pic img {
        transform: scale(1.1)
    }
}

.p-school-detail {
    margin-bottom: 4.375rem;
    overflow: hidden;
    padding-top: 10rem;
    position: relative
}

@media (width>=48rem) {
    .p-school-detail {
        margin-bottom: 7.875rem;
        padding-top: 10.3125rem
    }
    .p-school-detail .c-inner {
        padding-left: min(18.75rem, 21.4285714286vw);
        width: min(87.5rem, 100vw - 6.25rem)
    }
}

.p-school-detail__head-loop {
    color: rgba(var(--color-black-rgb), .1);
    font-size: 3.875rem;
    font-weight: 700;
    margin-bottom: .625rem;
    white-space: nowrap;
    width: 100%
}

@media (width>=48rem) {
    .p-school-detail__head-loop {
        font-size: min(8.5625rem, 8.5625vw);
        grid-area: loop;
        left: 0;
        margin-bottom: 0;
        position: absolute;
        top: min(21.875rem, 21.875vw);
        width: 100%
    }
}

.p-school-detail__head-loop span {
    animation: loopText 15s linear infinite;
    display: block;
    line-height: 1;
    width: -moz-max-content;
    width: max-content
}

.p-school-detail__head-loop span:before {
    content: attr(data-loop-text) " " attr(data-loop-text) " " attr(data-loop-text) " " attr(data-loop-text) " " attr(data-loop-text) " " attr(data-loop-text) " " attr(data-loop-text) " " attr(data-loop-text) " " attr(data-loop-text) " " attr(data-loop-text) " " attr(data-loop-text) " " attr(data-loop-text) " " attr(data-loop-text) " " attr(data-loop-text) " ";
    font-family: var(--font-en)
}

@keyframes loopText {
    0% {
        transform: translate(0)
    }
    to {
        transform: translate(-50%)
    }
}

.p-school-detail__head-pic {
    left: max(50%, 25rem);
    position: absolute;
    top: 20%;
    transform: translate(-50%, -50%);
    width: min(27.75rem, 31.7142857143vw)
}

.p-school-detail__head-pic picture {
    display: block;
    opacity: 0;
    visibility: hidden;
    width: 100%
}

.p-school-detail__head-pic .p-school-detail__head-pic2 {
    position: absolute;
    top: 0
}

.p-school-detail__head {
    margin-bottom: 4.6875rem
}

@media (width>=48rem) {
    .p-school-detail__head {
        align-items: flex-start;
        display: grid;
        gap: 0 2.5rem;
        grid-template-areas: "area image" "title image" "button image" "null image";
        grid-template-columns: min(40.125rem, 40.125vw) 1fr
    }
}

.p-school-detail__head-area {
    font-size: 1rem;
    font-weight: 700
}

@media (width>=48rem) {
    .p-school-detail__head-area {
        font-size: 1.25rem;
        grid-area: area;
        margin-top: min(21.375rem, 21.375vw)
    }
}

.p-school-detail__head-title {
    font-size: 1.75rem;
    line-height: 1.5714285714;
    margin: .3125rem 0 1.875rem
}

@media (width>=48rem) {
    .p-school-detail__head-title {
        font-size: min(3rem, 3vw);
        grid-area: title;
        margin-top: 0
    }
}

.p-school-detail__head-image {
    margin-left: -1.25rem;
    overflow: hidden;
    width: 100vw
}

@media (width>=48rem) {
    .p-school-detail__head-image {
        border-radius: 3.5rem 0 0;
        display: block !important;
        grid-area: image;
        height: min(46rem, 52.5714285714vw) !important;
        margin: 0;
        width: calc(100% + max(3.125rem, 50vw - 43.75rem))
    }
}

.p-school-detail__head-image picture {
    display: block;
    flex-shrink: 0;
    height: 14rem;
    width: 100vw
}

@media (width>=48rem) {
    .p-school-detail__head-image picture {
        height: auto;
        width: 100%
    }
}

.p-school-detail__head-image img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.p-school-detail__head-image-loop {
    animation: image-loop-scroll 10s linear infinite;
    display: flex;
    opacity: 0;
    width: -moz-max-content;
    width: max-content
}

@media (width>=48rem) {
    .p-school-detail__head-image-loop {
        animation: image-loop-scroll-vertical 10s linear infinite;
        flex-direction: column;
        width: 100%
    }
}

@keyframes image-loop-scroll-vertical {
    0% {
        transform: translateY(0)
    }
    to {
        transform: translateY(-50%)
    }
}

@keyframes image-loop-scroll {
    0% {
        transform: translate(0)
    }
    to {
        transform: translate(-50%)
    }
}

@media (width>=48rem) {
    .p-school-detail__head-button {
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
        grid-area: button
    }
    .p-school-detail__head-button .c-button {
        background-color: var(--color-blue);
        font-size: 1.375rem;
        height: 5rem;
        padding-right: 2.0625rem;
        width: min(28.125rem, 100%)
    }
    .p-school-detail__head-button .c-button:after {
        width: 1.125rem
    }
}

.p-school-detail__head-button .c-button span {
    display: block;
    text-align: center;
    width: 21.25rem
}

.p-school-detail__head-contact {
    align-items: center;
    border: 1px solid var(--color-border);
    border-radius: .5rem;
    display: flex;
    gap: 1.5rem;
    height: 5rem;
    justify-content: center;
    width: min(28.125rem, 100%)
}

.p-school-detail__head-tel {
    color: var(--color-green);
    font-size: 2rem;
    font-weight: 700
}

.p-school-detail__head-tel>span {
    display: flex;
    gap: .4375rem;
    margin-bottom: .5rem
}

.p-school-detail__head-tel>span:before {
    aspect-ratio: 1;
    background-color: var(--color-green);
    content: "";
    display: block;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22.609' height='22.609' viewBox='0 0 22.609 22.609'%3E%3Cpath d='M11.3 22.109a10.8 10.8 0 1 1 10.805-10.8 10.816 10.816 0 0 1-10.805 10.8M6.361 6.136a.637.637 0 0 0-.653.653 9.4 9.4 0 0 0 .847 3.84 11.5 11.5 0 0 0 2.4 3.451 11.5 11.5 0 0 0 3.451 2.4 9.4 9.4 0 0 0 3.841.847.64.64 0 0 0 .653-.653v-2.516a.55.55 0 0 0-.141-.365.7.7 0 0 0-.357-.226l-2.146-.436a1 1 0 0 0-.133-.009 1 1 0 0 0-.31.049.9.9 0 0 0-.365.209l-1.461 1.462a10 10 0 0 1-1.12-.754 11 11 0 0 1-1.01-.895 11 11 0 0 1-.941-1.033 7.6 7.6 0 0 1-.739-1.112l1.511-1.524a.65.65 0 0 0 .172-.3 1.1 1.1 0 0 0 .015-.42l-.4-2.176a.58.58 0 0 0-.2-.35.58.58 0 0 0-.389-.147Z'/%3E%3Cpath fill='rgba(0,0,0,0)' d='M11.3 22.609a11.3 11.3 0 1 1 11.305-11.3 11.317 11.317 0 0 1-11.305 11.3M11.3 1a10.3 10.3 0 1 0 10.309 10.305A10.316 10.316 0 0 0 11.3 1m4.945 16.829a9.9 9.9 0 0 1-4.044-.891 12 12 0 0 1-3.6-2.506 12 12 0 0 1-2.5-3.6 9.9 9.9 0 0 1-.891-4.044 1.137 1.137 0 0 1 1.151-1.152H8.88a1.11 1.11 0 0 1 1.084.912l.407 2.2a1.6 1.6 0 0 1-.029.615 1.14 1.14 0 0 1-.3.516L8.8 11.129a7 7 0 0 0 .506.72 10 10 0 0 0 .9.985l.007.006a10 10 0 0 0 .963.853q.352.274.736.517l1.188-1.183a1.36 1.36 0 0 1 .572-.334 1.5 1.5 0 0 1 .658-.057l.032.005 2.185.445a1.2 1.2 0 0 1 .6.383 1.05 1.05 0 0 1 .259.688v2.519a1.14 1.14 0 0 1-1.153 1.153ZM6.361 6.636a.14.14 0 0 0-.114.04.14.14 0 0 0-.039.113 8.9 8.9 0 0 0 .8 3.636 11 11 0 0 0 2.3 3.3 11 11 0 0 0 3.3 2.3 8.9 8.9 0 0 0 3.637.8.14.14 0 0 0 .153-.153v-2.514c0-.007 0-.016-.02-.039a.2.2 0 0 0-.1-.067l-2.1-.427a.5.5 0 0 0-.214.023.4.4 0 0 0-.161.086l-1.732 1.733-.333-.193a10.4 10.4 0 0 1-1.177-.792 11 11 0 0 1-1.054-.933 11 11 0 0 1-.981-1.078 8 8 0 0 1-.787-1.185l-.177-.326 1.774-1.791a.15.15 0 0 0 .041-.069.6.6 0 0 0 0-.213l-.4-2.176a.1.1 0 0 0-.037-.05.08.08 0 0 0-.06-.024Z'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22.609' height='22.609' viewBox='0 0 22.609 22.609'%3E%3Cpath d='M11.3 22.109a10.8 10.8 0 1 1 10.805-10.8 10.816 10.816 0 0 1-10.805 10.8M6.361 6.136a.637.637 0 0 0-.653.653 9.4 9.4 0 0 0 .847 3.84 11.5 11.5 0 0 0 2.4 3.451 11.5 11.5 0 0 0 3.451 2.4 9.4 9.4 0 0 0 3.841.847.64.64 0 0 0 .653-.653v-2.516a.55.55 0 0 0-.141-.365.7.7 0 0 0-.357-.226l-2.146-.436a1 1 0 0 0-.133-.009 1 1 0 0 0-.31.049.9.9 0 0 0-.365.209l-1.461 1.462a10 10 0 0 1-1.12-.754 11 11 0 0 1-1.01-.895 11 11 0 0 1-.941-1.033 7.6 7.6 0 0 1-.739-1.112l1.511-1.524a.65.65 0 0 0 .172-.3 1.1 1.1 0 0 0 .015-.42l-.4-2.176a.58.58 0 0 0-.2-.35.58.58 0 0 0-.389-.147Z'/%3E%3Cpath fill='rgba(0,0,0,0)' d='M11.3 22.609a11.3 11.3 0 1 1 11.305-11.3 11.317 11.317 0 0 1-11.305 11.3M11.3 1a10.3 10.3 0 1 0 10.309 10.305A10.316 10.316 0 0 0 11.3 1m4.945 16.829a9.9 9.9 0 0 1-4.044-.891 12 12 0 0 1-3.6-2.506 12 12 0 0 1-2.5-3.6 9.9 9.9 0 0 1-.891-4.044 1.137 1.137 0 0 1 1.151-1.152H8.88a1.11 1.11 0 0 1 1.084.912l.407 2.2a1.6 1.6 0 0 1-.029.615 1.14 1.14 0 0 1-.3.516L8.8 11.129a7 7 0 0 0 .506.72 10 10 0 0 0 .9.985l.007.006a10 10 0 0 0 .963.853q.352.274.736.517l1.188-1.183a1.36 1.36 0 0 1 .572-.334 1.5 1.5 0 0 1 .658-.057l.032.005 2.185.445a1.2 1.2 0 0 1 .6.383 1.05 1.05 0 0 1 .259.688v2.519a1.14 1.14 0 0 1-1.153 1.153ZM6.361 6.636a.14.14 0 0 0-.114.04.14.14 0 0 0-.039.113 8.9 8.9 0 0 0 .8 3.636 11 11 0 0 0 2.3 3.3 11 11 0 0 0 3.3 2.3 8.9 8.9 0 0 0 3.637.8.14.14 0 0 0 .153-.153v-2.514c0-.007 0-.016-.02-.039a.2.2 0 0 0-.1-.067l-2.1-.427a.5.5 0 0 0-.214.023.4.4 0 0 0-.161.086l-1.732 1.733-.333-.193a10.4 10.4 0 0 1-1.177-.792 11 11 0 0 1-1.054-.933 11 11 0 0 1-.981-1.078 8 8 0 0 1-.787-1.185l-.177-.326 1.774-1.791a.15.15 0 0 0 .041-.069.6.6 0 0 0 0-.213l-.4-2.176a.1.1 0 0 0-.037-.05.08.08 0 0 0-.06-.024Z'/%3E%3C/svg%3E") center/contain no-repeat;
    width: 1.6875rem
}

.p-school-detail__head-tel>span>span {
    background: radial-gradient(circle at .125rem calc(100% - .125rem), var(--color-green) .0625rem, transparent .125rem) 0/.5625rem repeat-x, transparent;
    line-height: 1;
    padding: .5rem 0
}

.p-school-detail__head-time {
    font-size: .875rem;
    line-height: 1.4285714286
}

.p-school-detail__head-time span {
    font-weight: 700
}

.p-school-detail__submenu {
    background-color: var(--color-gray);
    bottom: 0;
    display: flex;
    height: 4rem;
    left: 0;
    position: fixed;
    width: 100%;
    z-index: 10
}

.p-school-detail__submenu a,
.p-school-detail__submenu button {
    border: none;
    display: block;
    font-size: 0;
    line-height: 0;
    margin: 0;
    padding: 0
}

.p-school-detail__submenu img {
    display: inline-block;
    height: 4rem;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.p-school-detail__modal {
    align-items: center;
    background-color: rgba(var(--color-black-rgb), .82);
    bottom: 0;
    flex-direction: column;
    justify-content: center;
    left: 0;
    padding: 1.875rem;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 100
}

.p-school-detail__modal-inner {
    background-color: #fff;
    border-radius: .5rem;
    padding: 1.5625rem;
    width: 100%
}

.p-school-detail__modal-content {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    width: 100%
}

.p-school-detail__modal-content .c-button {
    height: 3.75rem;
    margin: 0 auto;
    padding-left: 5.5rem;
    width: 100%
}

.p-school-detail__modal-content .c-button:after {
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32.67' height='15.169' viewBox='0 0 32.67 15.169'%3E%3Cpath fill='%23fff' d='M5 2h25v11H5z'/%3E%3Cpath fill='%23c30000' d='M29.669 15.169H2.998a3 3 0 0 1-3-3V3a3 3 0 0 1 3-3h26.671a3 3 0 0 1 3 3v9.168a3 3 0 0 1-3 3.001M22.298 3.6a.07.07 0 0 0-.063.069v7.95a.067.067 0 0 0 .067.068h1.837a.066.066 0 0 0 .066-.068V8.484a.067.067 0 0 1 .067-.066h2.332a.067.067 0 0 0 .066-.068v-1.4a.067.067 0 0 0-.066-.067h-2.328a.066.066 0 0 1-.067-.067V5.247a.067.067 0 0 1 .067-.066h3.161a.067.067 0 0 0 .066-.067V3.67a.07.07 0 0 0-.066-.069zm-16.24 0a.067.067 0 0 0-.06.07v7.95a.066.066 0 0 0 .066.068h1.834a.066.066 0 0 0 .066-.068V8.851a.067.067 0 0 1 .067-.067H9.31q.108.002.218-.008A2.7 2.7 0 0 0 12.145 6.5a2 2 0 0 0 .014-.3 2.7 2.7 0 0 0-.261-1.208 2.4 2.4 0 0 0-1.4-1.186A3.6 3.6 0 0 0 9.292 3.6H6.063Zm7.465 0a.07.07 0 0 0-.063.069v7.94a.067.067 0 0 0 .067.068h3.075a4.7 4.7 0 0 0 2.116-.5 3.6 3.6 0 0 0 1.481-1.434 4.2 4.2 0 0 0 .524-2.107 4.2 4.2 0 0 0-.524-2.113A3.6 3.6 0 0 0 18.724 4.1a4.7 4.7 0 0 0-2.111-.5h-3.085Zm2.985 6.385h-1.082v-4.7H16.5a2.34 2.34 0 0 1 1.6.629 2.36 2.36 0 0 1 .622 1.74A2.31 2.31 0 0 1 18.1 9.38a2.37 2.37 0 0 1-1.587.605ZM9.134 7.223H8.04a.067.067 0 0 1-.067-.067v-1.9a.067.067 0 0 1 .067-.066h1.1a1.18 1.18 0 0 1 .745.269.99.99 0 0 1 .276.748 1 1 0 0 1-.276.753 1.18 1.18 0 0 1-.751.263'/%3E%3C/svg%3E") 50%/2.0625rem no-repeat;
    -webkit-mask: none;
    mask: none;
    width: 2rem
}

.p-school-detail__modal-close {
    align-items: center;
    border: none;
    color: #fff;
    display: flex;
    font-size: 1.125rem;
    font-weight: 700;
    gap: .75rem;
    margin-top: 1.5625rem
}

.p-school-detail__modal-close:after {
    aspect-ratio: 1;
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='37' height='37' viewBox='0 0 37 37'%3E%3Cg transform='translate(-352.109 -568)'%3E%3Ccircle cx='18.5' cy='18.5' r='18.5' fill='%23fff' transform='translate(352.109 568)'/%3E%3Cg fill='%23231815'%3E%3Cpath d='m376.847 582.382-10.465 10.466a1.5 1.5 0 0 1-2.122 0 1.5 1.5 0 0 1 0-2.122l10.465-10.465a1.5 1.5 0 0 1 2.122 0 1.5 1.5 0 0 1 0 2.121'/%3E%3Cpath d='m374.726 592.848-10.465-10.465a1.5 1.5 0 0 1 0-2.121 1.5 1.5 0 0 1 2.121 0l10.465 10.465a1.5 1.5 0 0 1 0 2.121 1.5 1.5 0 0 1-2.12 0'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") 50%/contain no-repeat;
    content: "";
    display: block;
    flex-shrink: 0;
    width: 2.3125rem
}

.p-school-detail__modal-title {
    align-items: center;
    display: flex;
    font-size: 1.125rem;
    font-weight: 700;
    gap: .5625rem;
    line-height: 1.5;
    margin-bottom: 1.25rem
}

.p-school-detail__modal-title:before {
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17.475' height='19.417' viewBox='0 0 17.475 19.417'%3E%3Cg%3E%3Cpath fill='%23231815' d='M1.942 19.417a1.87 1.87 0 0 1-1.371-.57 1.87 1.87 0 0 1-.57-1.371V3.884a1.87 1.87 0 0 1 .57-1.371 1.87 1.87 0 0 1 1.371-.57h.971V.972A.94.94 0 0 1 3.192.28a.94.94 0 0 1 .692-.279.94.94 0 0 1 .692.279.94.94 0 0 1 .279.692v.971h7.767V.972a.94.94 0 0 1 .279-.692.94.94 0 0 1 .692-.279.94.94 0 0 1 .692.279.94.94 0 0 1 .279.692v.971h.971a1.87 1.87 0 0 1 1.371.57 1.87 1.87 0 0 1 .57 1.371v13.592a1.87 1.87 0 0 1-.57 1.371 1.87 1.87 0 0 1-1.371.57Zm0-1.942h13.592V7.767H1.942Z'/%3E%3Ccircle cx='1.927' cy='1.927' r='1.927' fill='%23ff83bc' transform='translate(3.743 9.525)'/%3E%3C/g%3E%3C/svg%3E") 50%/contain no-repeat;
    content: "";
    display: block;
    height: 1.75rem;
    width: 1.5625rem
}

.p-school-detail__body-sec+.p-school-detail__body-sec {
    margin-top: 5.625rem
}

.p-school-detail__body-sec .c-heading-circle {
    margin-bottom: 1.5625rem
}

.p-school-detail__overview {
    margin-bottom: 5.625rem
}

@media (width>=64rem) {
    .p-school-detail__overview-content {
        display: flex;
        flex-direction: row-reverse;
        grid-template-columns: 1fr 1fr;
        justify-content: space-between;
        margin-top: 3.75rem
    }
}

.p-school-detail__overview-content .c-dl-line {
    margin-bottom: 3.3125rem
}

@media (width>=64rem) {
    .p-school-detail__overview-content .c-dl-line {
        margin-bottom: 0;
        margin-top: 0;
        width: 40%
    }
    .p-school-detail__overview-content .c-dl__item {
        grid-template-columns: 5em 1fr
    }
}

@media (width>=48rem) {
    .p-school-detail__overview-content .c-dl__item-title {
        min-width: 5em
    }
}

@media (width>=64rem) {
    .p-school-detail__overview-slider {
        width: 55%
    }
}

.p-school-detail__overview-slider .c-slider {
    border-radius: .5rem;
    overflow: hidden
}

.p-school-detail__overview-slider .c-button {
    margin: 2.5rem auto 0
}

@media (width>=48rem) {
    .p-school-detail__overview-slider .c-slider-controller {
        width: 24.5rem
    }
}

.p-school-detail__awards-head {
    align-items: center;
    display: flex;
    gap: 1.25rem;
    justify-content: space-between;
    margin-bottom: 1.25rem
}

@media (width>=48rem) {
    .p-school-detail__awards-head {
        margin-bottom: 1.4375rem
    }
}

.p-school-detail__awards-head .c-heading-circle {
    margin-bottom: 0
}

.p-school-detail__awards-tag {
    flex-shrink: 0;
    width: 6.875rem
}

@media (width>=48rem) {
    .p-school-detail__awards-tag {
        width: 11.9375rem
    }
}

.p-school-detail__awards-staff {
    display: grid;
    gap: 2.0625rem
}

@media (width>=48rem) {
    .p-school-detail__awards-staff {
        gap: 3.3125rem
    }
}

.p-school-detail__curriculum {
    display: grid;
    grid-auto-columns: 100%;
    position: relative
}

.p-school-detail__curriculum .c-button {
    grid-row: 4/5;
    margin: 2.5rem auto 0
}

@media (width>=48rem) {
    .p-school-detail__curriculum .c-button {
        grid-row: auto;
        margin: 0
    }
}

.p-school-detail__curriculum .c-tab-buttons {
    grid-template-columns: repeat(3, 1fr);
    line-height: 1.25
}

.p-school-detail__curriculum .c-heading-circle {
    margin-bottom: 0
}

@media (width>=48rem) {
    .p-school-detail__curriculum .c-heading-circle {
        max-width: 60%
    }
}

.p-school-detail__curriculum .c-tab-button {
    height: 3.25rem
}

@media (width>=48rem) {
    .p-school-detail__curriculum .c-tab-button {
        height: 4.1875rem
    }
    .p-school-detail__curriculum .c-tab-button br {
        display: none
    }
}

.p-school-detail__curriculum .c-tab {
    margin-left: -1.25rem;
    position: relative;
    width: 100vw
}

@media (width>=48rem) {
    .p-school-detail__curriculum .c-tab {
        margin-left: 0;
        margin-top: 3.125rem;
        width: 100%
    }
}

.p-school-detail__curriculum .c-card-courseguide {
    align-items: flex-start
}

.p-school-detail__curriculum .c-tab-content.is-active {
    padding-top: 2.4375rem
}

@media (width>=48rem) {
    .p-school-detail__curriculum .c-tab-content.is-active {
        padding: 3.75rem 3.125rem
    }
}

.p-school-detail__curriculum .c-tab-buttons {
    border-bottom: none
}

.p-school-detail__curriculum [data-tab=pink].is-active {
    background-color: var(--color-pink)
}

.p-school-detail__curriculum [data-tab=aqua].is-active {
    background-color: var(--color-aqua)
}

.p-school-detail__curriculum [data-tab=blue].is-active {
    background-color: var(--color-blue)
}

.p-school-detail__curriculum .c-tab-content#pink {
    background-color: rgba(var(--color-pink-rgb), .1);
    border-top: .1875rem solid var(--color-pink)
}

.p-school-detail__curriculum .c-tab-content#aqua {
    background-color: rgba(var(--color-aqua-rgb), .1);
    border-top: .1875rem solid var(--color-aqua)
}

.p-school-detail__curriculum .c-tab-content#aqua .c-hukidashi-text,
.p-school-detail__curriculum .c-tab-content#aqua .c-hukidashi-text:after {
    background-color: var(--color-aqua)
}

.p-school-detail__curriculum .c-tab-content#aqua h3 {
    color: var(--color-aqua)
}

.p-school-detail__curriculum .c-tab-content#blue {
    background-color: rgba(var(--color-blue-rgb), .1);
    border-top: .1875rem solid var(--color-blue)
}

.p-school-detail__curriculum .c-tab-content#blue .c-hukidashi-text,
.p-school-detail__curriculum .c-tab-content#blue .c-hukidashi-text:after {
    background-color: var(--color-blue)
}

.p-school-detail__curriculum .c-tab-content#blue h3 {
    color: var(--color-blue)
}

.p-school-detail__curriculum-text {
    margin-bottom: .625rem
}

@media (width>=48rem) {
    .p-school-detail__curriculum-text {
        margin-bottom: 1.5625rem;
        width: min(40.125rem, 50%)
    }
}

.p-school-detail__curriculum-hukidashi {
    position: absolute;
    right: 0;
    top: 0;
    transform: translateY(-100%);
    width: min(25rem, 45%)
}

.p-school-detail__voice {
    display: block;
    gap: 0;
    width: 100%
}

@media (width>=48rem) {
    .p-school-detail__voice {
        align-items: flex-end;
        display: grid;
        gap: 0 2.1875rem;
        grid-template-columns: 31.5rem 1fr
    }
    .p-school-detail__voice .c-heading-circle {
        grid-column: 1/3;
        margin-bottom: 0
    }
}

.p-school-detail__voice .c-button {
    grid-row: 5/6;
    margin: 2.5rem auto 0
}

@media (width>=48rem) {
    .p-school-detail__voice .c-button {
        grid-row: auto;
        margin: 0 0 .3125rem
    }
}

.p-school-detail__course-text {
    margin-bottom: .625rem
}

.p-school-detail__course-note {
    font-size: .8125rem
}

.p-school-detail__course-list {
    display: grid;
    gap: 1.25rem;
    margin-top: 4.0625rem
}

@media (width>=48rem) {
    .p-school-detail__course-list {
        flex-direction: row;
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (width>=80rem) {
    .p-school-detail__course-list {
        grid-template-columns: repeat(3, 1fr)
    }
}

.p-school-detail__columns {
    display: grid;
    gap: 2rem
}

@media (width>=48rem) {
    .p-school-detail__columns {
        gap: 1.8125rem;
        grid-template-columns: repeat(2, 1fr)
    }
}

.p-school-detail__columns .c-card-imglink picture {
    aspect-ratio: 536/295
}

.p-school-detail__columns .c-card-imglink picture img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    width: 100%
}

.p-school-detail__body-cta {
    padding-bottom: 1.875rem
}

.p-school-detail__body-list {
    background-color: var(--color-beige);
    border-radius: .5rem;
    margin-top: 2.8125rem;
    padding: 1.875rem 1.75rem
}

@media (width>=48rem) {
    .p-school-detail__body-list {
        padding: 1.875rem 2.8125rem
    }
}

.p-school-detail__body-list span {
    font-weight: 700
}

.p-school-detail__body-list-title {
    font-weight: 700;
    margin-bottom: .9375rem
}

.p-courseguide {
    overflow: hidden
}

.p-courseguide-lead {
    margin-bottom: 3.75rem
}

@media (width>=48rem) {
    .p-courseguide-lead {
        text-align: center
    }
}

.c-page-nav--fixed {
    background-color: #fff;
    bottom: 0;
    left: 0;
    padding: .5625rem 0;
    position: fixed;
    width: 100%;
    z-index: 10
}

@media (width>=48rem) {
    .c-page-nav--fixed {
        background-color: transparent;
        margin-bottom: 5.625rem;
        padding: 0;
        position: relative
    }
}

.p-courseguide-course {
    background-color: #fff2f8;
    border-radius: 1.25rem;
    margin: 0 auto
}

@media (width>=48rem) {
    .p-courseguide-course {
        overflow: hidden;
        width: min(1480px, 92.5vw)
    }
}

.p-courseguide-course+.p-courseguide-course {
    margin-top: 6.25rem
}

@media (width>=48rem) {
    .p-courseguide-course+.p-courseguide-course {
        margin-top: 7.5rem
    }
}

.p-courseguide-course__head {
    background-color: var(--color-pink);
    border-radius: 1.25rem 1.25rem 0 0;
    color: #fff;
    padding-bottom: 1.5625rem;
    padding-top: 2.5rem;
    position: relative
}

@media (width>=48rem) {
    .p-courseguide-course__head {
        overflow: hidden;
        padding-bottom: 3.75rem;
        padding-top: 3.75rem
    }
    .p-courseguide-course__head .c-inner {
        position: relative;
        width: min(36.25rem, 41.4285714286vw);
        z-index: 3
    }
}

.p-courseguide-course__head .c-text+.c-text {
    margin-top: .625rem
}

@media (width>=48rem) {
    .p-courseguide-course__head .c-text+.c-text {
        margin-top: .9375rem
    }
}

.p-courseguide-course__head--gear1,
.p-courseguide-course__head--gear2 {
    position: absolute
}

.p-courseguide-course__head--gear1 path,
.p-courseguide-course__head--gear2 path {
    stroke: #fff
}

.p-courseguide-course__head--gear1 {
    height: 24rem;
    left: -3.75rem;
    top: -5.625rem;
    width: 24rem
}

.p-courseguide-course__head--gear2 {
    bottom: -2.9375rem;
    height: 12.75rem;
    right: -1.0625rem;
    width: 12.75rem
}

.p-courseguide-course__head-image {
    position: absolute;
    z-index: 2
}

@media (width>=48rem) {
    .p-courseguide-course__head-image {
        left: 50%
    }
}

.p-courseguide-course__head-image.--kid {
    display: none
}

@media (width>=48rem) {
    .p-courseguide-course__head-image.--kid {
        bottom: 0;
        display: block
    }
    .p-courseguide-course__head-image.--new-kid {
        transform: translate(-194%);
        width: min(21.6875rem, 24.7857142857vw)
    }
}

.p-courseguide-course__head-image.--new-robot {
    right: .625rem;
    top: -4.375rem;
    width: 6.9375rem
}

@media (width>=48rem) {
    .p-courseguide-course__head-image.--new-robot {
        bottom: -2.5rem;
        top: inherit;
        transform: translate(130%);
        width: min(17.5rem, 20vw)
    }
    .p-courseguide-course__head-image.--autumn-kid {
        transform: translate(-235%);
        width: min(16.3125rem, 18.6428571429vw)
    }
}

.p-courseguide-course__head-image.--autumn-robot {
    right: 1.25rem;
    top: -5rem;
    width: 6.25rem
}

@media (width>=48rem) {
    .p-courseguide-course__head-image.--autumn-robot {
        bottom: -1.875rem;
        top: inherit;
        transform: translate(130%);
        width: min(16.625rem, 19vw)
    }
    .p-courseguide-course__head-image.--advanced-kid {
        transform: translate(-217%);
        width: min(17.125rem, 19.5714285714vw)
    }
}

.p-courseguide-course__head-image.--advanced-robot {
    right: .8125rem;
    top: -2.5rem;
    width: 8.125rem
}

@media (width>=48rem) {
    .p-courseguide-course__head-image.--advanced-robot {
        bottom: -1.75rem;
        top: inherit;
        transform: translate(85%);
        width: min(23.125rem, 26.1428571429vw)
    }
}

.p-courseguide-course__heading {
    font-size: 1.75rem;
    font-weight: 700;
    margin-bottom: .9375rem;
    text-align: center
}

@media (width>=48rem) {
    .p-courseguide-course__heading {
        font-size: 2.5rem;
        margin-bottom: .3125rem
    }
}

.p-courseguide-course__info {
    margin-bottom: 1.25rem
}

@media (width>=48rem) {
    .p-courseguide-course__info {
        align-items: center;
        display: flex;
        gap: .3125rem;
        justify-content: center;
        margin-bottom: 2.8125rem
    }
}

.p-courseguide-course__info p {
    margin-top: .3125rem;
    text-align: center
}

@media (width>=48rem) {
    .p-courseguide-course__info p {
        margin-top: 0
    }
}

.p-courseguide-course__start {
    align-items: center;
    display: flex;
    font-size: .9375rem;
    gap: .4375rem;
    justify-content: center;
    line-height: 1.5
}

.p-courseguide-course__start dt {
    background-color: #ffffff29;
    border-radius: .75rem;
    font-weight: 700;
    padding: 0 .5625rem
}

@media (width>=48rem) {
    .p-courseguide-course__start dt {
        padding: .125rem .625rem
    }
    .p-courseguide-course__start dd {
        font-size: 1rem;
        line-height: 1.6
    }
}

.c-card-course-pic {
    display: block;
    margin-top: .9375rem
}

@media (width>=48rem) {
    .c-card-course-pic {
        margin-top: 0
    }
}

.c-card-course-pic img {
    border-radius: .5625rem
}

.p-courseguide-course__body {
    padding: 3rem 0
}

@media (width>=48rem) {
    .p-courseguide-course__body {
        padding-bottom: 7.5rem;
        padding-top: 6.25rem
    }
}

.p-courseguide-course__list {
    display: flex;
    flex-direction: column;
    gap: 2rem
}

@media (width>=48rem) {
    .p-courseguide-course__list {
        gap: 2.3125rem
    }
}

.p-courseguide-course__price {
    margin-top: 3.125rem;
    width: 100%
}

@media (width>=48rem) {
    .p-courseguide-course__price {
        margin-top: 6.875rem
    }
}

.p-courseguide-course__price [data-scroll] {
    width: 22.25rem
}

@media (width>=48rem) {
    .p-courseguide-course__price [data-scroll] {
        width: 100%
    }
}

.p-courseguide-course__price .c-heading-lv3 {
    margin-bottom: 1.5625rem
}

@media (width>=48rem) {
    .p-courseguide-course__price .c-heading-lv3 {
        margin-bottom: 3.125rem
    }
}

.p-courseguide-course__price .c-table {
    width: 42.1875rem
}

@media (width>=48rem) {
    .p-courseguide-course__price .c-table {
        width: 100%
    }
}

.p-courseguide-course--aqua {
    background-color: rgba(var(--color-aqua-rgb), .16)
}

.p-courseguide-course--aqua .c-card-courseguide-hukidashi,
.p-courseguide-course--aqua .c-card-courseguide-hukidashi:after,
.p-courseguide-course--aqua .c-heading-lv3:before,
.p-courseguide-course--aqua .p-courseguide-course__head {
    background-color: var(--color-aqua)
}

.p-courseguide-course--aqua .c-card-courseguide-head h3 {
    color: var(--color-aqua)
}

.p-courseguide-course--blue {
    background-color: rgba(var(--color-blue-rgb), .16)
}

.p-courseguide-course--blue .c-card-courseguide-hukidashi,
.p-courseguide-course--blue .c-card-courseguide-hukidashi:after,
.p-courseguide-course--blue .c-heading-lv3:before,
.p-courseguide-course--blue .p-courseguide-course__head {
    background-color: var(--color-blue)
}

.p-courseguide-course--blue .c-card-courseguide-head h3 {
    color: var(--color-blue)
}

.p-courseguide-stepup {
    overflow: hidden;
    padding-top: 5rem
}

@media (width>=48rem) {
    .p-courseguide-stepup {
        padding-top: 7.5rem
    }
}

.p-courseguide-stepup__slider {
    margin-top: 1.875rem;
    width: 100%
}

@media (width < 48rem) {
    .p-courseguide-stepup__slider {
        left: 50%;
        overflow-x: auto;
        padding-left: 1.25rem;
        padding-right: 1.25rem;
        position: relative;
        transform: translate(-50%);
        width: 100vw
    }
}

@media (width>=48rem) {
    .p-courseguide-stepup__slider {
        margin-top: 3.125rem
    }
}

.p-courseguide-stepup__slider .swiper-wrapper {
    display: grid;
    grid-auto-flow: column
}

@media (width < 48rem) {
    .p-courseguide-stepup__slider .c-slider-controller {
        display: none
    }
}

.p-courseguide-stepup__slide {
    border-bottom: 1px solid var(--color-border);
    border-left: 1px solid var(--color-border);
    flex-shrink: 0;
    transform: none !important;
    width: 17rem !important;
    z-index: auto !important
}

@media (width>=48rem) {
    .p-courseguide-stepup__slide {
        width: 24.4375rem !important
    }
}

.p-courseguide-stepup__slide:last-child {
    border-right: 1px solid var(--color-border)
}

.p-courseguide-stepup__slide-head {
    align-items: center;
    background-color: var(--color-pink);
    color: #fff;
    display: flex;
    font-size: 1.25rem;
    font-weight: 700;
    height: 2.875rem;
    padding: 0 1.875rem;
    position: relative
}

@media (width>=48rem) {
    .p-courseguide-stepup__slide-head {
        font-size: 1.5rem;
        height: 4rem
    }
}

.p-courseguide-stepup__slide-head:after {
    background-color: var(--color-pink);
    clip-path: polygon(0 0, 3px 0, 100% 50%, 3px 100%, 0 100%);
    content: "";
    display: block;
    height: 100%;
    left: calc(100% - 1px);
    position: absolute;
    top: 0;
    width: 1.1875rem;
    z-index: 1
}

.p-courseguide-stepup__slide-body {
    padding: 1.5625rem 1.25rem;
    position: relative
}

@media (width>=48rem) {
    .p-courseguide-stepup__slide-body {
        padding: 1.875rem
    }
}

.p-courseguide-stepup__slide-pic {
    aspect-ratio: 1;
    display: block;
    margin: 0 auto 1rem;
    width: 7.5rem
}

@media (width>=48rem) {
    .p-courseguide-stepup__slide-pic {
        margin-bottom: .625rem;
        width: 8.75rem
    }
}

.p-courseguide-stepup__slide-pic img {
    display: block;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    width: 100%
}

.p-courseguide-stepup__slide-title {
    color: var(--color-pink);
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: .3125rem;
    text-align: center
}

@media (width>=48rem) {
    .p-courseguide-stepup__slide-title {
        font-size: 1.5rem
    }
}

.p-courseguide-stepup__slide-prog {
    display: grid;
    gap: .625rem;
    grid-template-columns: 3.125rem 1fr 3.125rem 1fr;
    margin: 0 auto .9375rem;
    width: -moz-max-content;
    width: max-content
}

@media (width>=48rem) {
    .p-courseguide-stepup__slide-prog {
        margin-bottom: 1.875rem
    }
}

.p-courseguide-stepup__slide-prog dt {
    background-color: var(--color-beige);
    border-radius: 1.625rem;
    font-size: .875rem;
    line-height: 1.7857142857;
    text-align: center
}

.p-courseguide-stepup__slide-prog dd {
    font-size: 1rem;
    line-height: 1.5625
}

.p-courseguide-stepup__slide-prog dd:first-of-type {
    grid-column: 2/5
}

.p-courseguide-stepup__slide-text {
    margin-bottom: 1.25rem
}

@media (width < 48rem) {
    .p-courseguide-stepup__slide-text {
        font-size: .9375rem
    }
}

@media (width>=48rem) {
    .p-courseguide-stepup__slide-text {
        margin-bottom: 1.875rem
    }
}

.p-courseguide-stepup__slide-list {
    background-color: #fef1f7;
    border-radius: .375rem;
    font-size: .9375rem;
    padding: .75rem
}

@media (width>=48rem) {
    .p-courseguide-stepup__slide-list {
        font-size: 1rem;
        padding: 1rem
    }
}

.p-courseguide-stepup__slide-list li {
    display: flex;
    gap: .4375rem;
    position: relative
}

.p-courseguide-stepup__slide-list li:before {
    background-color: var(--color-pink);
    border-radius: 50%;
    content: "";
    flex-shrink: 0;
    height: .5rem;
    position: relative;
    top: .9rem;
    transform: translateY(-50%);
    width: .5rem
}

.p-courseguide-stepup__slide:last-child .p-courseguide-stepup__slide-head:after {
    display: none
}

.p-courseguide-stepup__slide--aqua .c-heading-lv3:before,
.p-courseguide-stepup__slide--aqua .p-courseguide-stepup__slide-head,
.p-courseguide-stepup__slide--aqua .p-courseguide-stepup__slide-head:after {
    background-color: var(--color-aqua)
}

.p-courseguide-stepup__slide--aqua .p-courseguide-stepup__slide-title {
    color: var(--color-aqua)
}

.p-courseguide-stepup__slide--aqua .p-courseguide-stepup__slide-list {
    background-color: #e0f7f9
}

.p-courseguide-stepup__slide--aqua .p-courseguide-stepup__slide-list li:before {
    background-color: var(--color-aqua)
}

.p-courseguide-stepup__slide--blue .c-heading-lv3:before,
.p-courseguide-stepup__slide--blue .p-courseguide-stepup__slide-head,
.p-courseguide-stepup__slide--blue .p-courseguide-stepup__slide-head:after {
    background-color: var(--color-blue)
}

.p-courseguide-stepup__slide--blue .p-courseguide-stepup__slide-title {
    color: var(--color-blue)
}

.p-courseguide-stepup__slide--blue .p-courseguide-stepup__slide-list {
    background-color: #ddebff
}

.p-courseguide-stepup__slide--blue .p-courseguide-stepup__slide-list li:before {
    background-color: var(--color-blue)
}

.p-courseguide-education {
    padding: 3.125rem 0 6.25rem
}

@media (width>=48rem) {
    .p-courseguide-education {
        padding-bottom: 7.5rem;
        padding-top: 7.5rem
    }
}

.p-courseguide-education__slider {
    margin-top: 1.875rem;
    overflow: hidden;
    width: 100%
}

@media (width>=48rem) {
    .p-courseguide-education__slider {
        margin-top: 3.125rem
    }
}

.p-courseguide-education__slider .swiper-wrapper {
    display: grid;
    grid-auto-flow: column
}

.p-qa {
    padding-bottom: 4rem
}

@media (width>=48rem) {
    .p-qa {
        padding-bottom: 8.625rem
    }
    .p-qa-content {
        padding-top: 2.5rem
    }
}

.p-qa-menu {
    margin-bottom: 60px
}

@media (width>=48rem) {
    .p-qa-menu {
        margin-bottom: 100px
    }
}

.p-qa-menu .c-page-nav {
    gap: .9375rem;
    grid-template-columns: repeat(2, 1fr)
}

@media (width>=48rem) {
    .p-qa-menu .c-page-nav {
        gap: 1.125rem;
        grid-template-columns: repeat(4, 1fr)
    }
}

.p-qa-menu .c-page-nav__item a {
    font-size: .875rem
}

@media (width>=48rem) {
    .p-qa-menu .c-page-nav__item a {
        font-size: 1.0625rem
    }
}

.p-qa-menu .c-page-nav__item a:after {
    right: .875rem
}

@media (width>=48rem) {
    .p-qa-menu .c-page-nav__item a:after {
        right: .9375rem
    }
}

.p-qa-section+.p-qa-section {
    margin-top: 3.75rem
}

@media (width>=48rem) {
    .p-qa-section+.p-qa-section {
        margin-top: 6.25rem
    }
}

.p-qa-section .c-accordion+.c-accordion {
    margin-top: 1.25rem
}

@media (width>=48rem) {
    .p-qa-section .c-accordion+.c-accordion {
        margin-top: 1.5rem
    }
}

.p-qa-section .c-heading-lv3 {
    margin-bottom: 1.5rem
}

.p-qa-section .c-accordion__label p:before {
    content: "Q."
}

.p-qa-section.--course .c-heading-lv3:before {
    background-color: var(--color-pink)
}

.p-qa-section.--course .c-accordion__content div:before,
.p-qa-section.--course .c-accordion__content p:before,
.p-qa-section.--course .c-accordion__label div:before,
.p-qa-section.--course .c-accordion__label p:before {
    color: var(--color-pink)
}

.p-qa-section.--enter .c-heading-lv3:before {
    background-color: var(--color-aqua)
}

.p-qa-section.--enter .c-accordion__content div:before,
.p-qa-section.--enter .c-accordion__content p:before,
.p-qa-section.--enter .c-accordion__label div:before,
.p-qa-section.--enter .c-accordion__label p:before {
    color: var(--color-aqua)
}

.p-qa-section.--support .c-heading-lv3:before {
    background-color: var(--color-blue)
}

.p-qa-section.--support .c-accordion__content div:before,
.p-qa-section.--support .c-accordion__content p:before,
.p-qa-section.--support .c-accordion__label div:before,
.p-qa-section.--support .c-accordion__label p:before {
    color: var(--color-blue)
}

.p-qa-section.--trial .c-heading-lv3:before {
    background-color: var(--color-green)
}

.p-qa-section.--trial .c-accordion__content div:before,
.p-qa-section.--trial .c-accordion__content p:before,
.p-qa-section.--trial .c-accordion__label div:before,
.p-qa-section.--trial .c-accordion__label p:before {
    color: var(--color-green)
}

.p-qa-accordion_content {
    align-items: flex-start;
    background: var(--dotted-line-top-pale);
    display: flex;
    font-size: 1rem;
    gap: .4375rem;
    line-height: 2;
    padding: .75rem 0
}

@media (width>=48rem) {
    .p-qa-accordion_content {
        gap: .6875rem;
        line-height: 1.75;
        padding-bottom: 1.625rem;
        padding-top: 1.625rem
    }
}

.p-qa-accordion_content:before {
    content: "A.";
    display: inline-block;
    font-family: var(--font-en);
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.75;
    min-width: 1.25rem
}

@media (width>=48rem) {
    .p-qa-accordion_content:before {
        font-size: 1.5rem;
        line-height: 1.25;
        min-width: 1.5625rem
    }
}

.p-qa-accordion_content p {
    width: 90%
}

.p-qa-accordion_content a {
    color: var(--color-blue);
    display: block;
    text-decoration: underline;
    text-underline-offset: .1875rem
}

.p-recruit .l-title__hukidashi {
    top: 0
}

.p-recruit .c-block-radius {
    background-color: var(--color-beige);
    overflow: hidden;
    padding-bottom: 2.8125rem;
    padding-top: 0
}

@media (width>=48rem) {
    .p-recruit .c-block-radius {
        padding-bottom: 4.5rem
    }
}

.p-recruit .c-button {
    margin: 2.5rem auto 0
}

@media (width>=48rem) {
    .p-recruit .c-button {
        margin-top: 3.125rem
    }
    .p-recruit .c-page-nav--fixed {
        margin: 0 auto 4.9375rem
    }
}

.p-recruit .c-page-nav--fixed .c-inner {
    max-width: 50.625rem
}

.p-recruit .c-page-nav {
    -moz-column-gap: .9375rem;
    column-gap: .9375rem;
    grid-template-columns: repeat(2, 1fr)
}

@media (width>=48rem) {
    .p-recruit .c-page-nav {
        -moz-column-gap: 3.125rem;
        column-gap: 3.125rem
    }
}

.p-recruit .c-page-nav a:after {
    right: 1.875rem
}

.p-recruit-heading {
    margin: 3.75rem auto 2.5rem;
    max-width: 66.75rem;
    padding: 0 1.25rem
}

@media (width>=48rem) {
    .p-recruit-heading {
        margin-bottom: 3.4375rem;
        margin-top: 5.5rem
    }
}

.p-recruit-heading .c-heading-circle {
    text-align: center
}

.p-recruit-heading .c-heading-circle:before {
    left: 50%;
    transform: translate(calc(-50% - 16px))
}

.p-recruit-card {
    background-color: #fff;
    border-radius: .625rem;
    padding: 2.8125rem 1.25rem
}

@media (width>=48rem) {
    .p-recruit-card {
        border-radius: 1rem;
        padding: 3.75rem 6.625rem
    }
}

.p-recruit-card+.p-recruit-card {
    margin-top: 3.75rem
}

.p-recruit-card .c-text+.c-text {
    margin-top: 1em
}

.p-recruit-card__title {
    font-size: 1.25rem;
    font-weight: 700;
    margin-top: 1.5625rem
}

@media (width>=48rem) {
    .p-recruit-card__title {
        margin-top: 2.1875rem
    }
}

.p-recruit-card__title span {
    display: inline
}

@media (width>=48rem) {
    .p-recruit-card__title span {
        display: inline-block
    }
}

.p-recruit-card__place {
    display: flex;
    flex-direction: column;
    gap: .3125rem;
    margin-bottom: 1.5625rem;
    margin-top: 1.25rem
}

@media (width>=48rem) {
    .p-recruit-card__place {
        flex-direction: row;
        gap: 1.0625rem;
        margin-bottom: 2.5rem;
        margin-top: .5rem
    }
}

.p-recruit-card__place-pref {
    font-size: .875rem;
    font-weight: 700
}

.p-privacy-over {
    text-align: right
}

.p-privacy .l-title .l-title__ja {
    margin-top: .8125rem
}

@media (width>=48rem) {
    .p-privacy .l-title .l-title__ja {
        margin-top: 1.125rem
    }
}

.p-message-articles {
    margin-top: 1.25rem;
    padding-bottom: 3.75rem
}

@media (width>=48rem) {
    .p-message-articles {
        margin-top: 1.875rem;
        padding-bottom: 7.5rem
    }
}

.p-message-lists {
    display: grid;
    gap: 2rem
}

@media (width>=48rem) {
    .p-message-lists {
        gap: 3.25rem
    }
}

.p-message-item {
    align-items: flex-start;
    background-color: #fff;
    border-radius: .625rem;
    display: grid;
    gap: 1.75rem;
    grid-template-columns: 1fr;
    padding: 1.5rem 1rem 2.0625rem
}

@media (width>=48rem) {
    .p-message-item {
        border-radius: 1rem;
        gap: 3.875rem;
        grid-template-columns: .95fr 1fr;
        padding: 3.25rem
    }
}

.p-message-item--new .p-message-image:after {
    aspect-ratio: 1;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='63' height='63' viewBox='0 0 63 63'%3E%3Cpath fill='%23ff83bc' d='M10 0h53L0 63V10A10 10 0 0 1 10 0'/%3E%3Cpath fill='%23fff' d='m17.552 31.448-6.435-6.434 1.216-1.216 7.121 1.693-4.407-4.407 1.121-1.122 6.435 6.435-1.209 1.209-7.13-1.687 4.409 4.408Zm8.227-7.988a3 3 0 0 1-1.483.83 3.4 3.4 0 0 1-1.71-.046 3.45 3.45 0 0 1-1.525-.911 3.5 3.5 0 0 1-.763-1.117 3.5 3.5 0 0 1-.277-1.267 3.3 3.3 0 0 1 .211-1.255 3 3 0 0 1 .703-1.08 3.04 3.04 0 0 1 1.213-.758 3.2 3.2 0 0 1 1.384-.138 3.6 3.6 0 0 1 1.356.445 3.6 3.6 0 0 1 1.125.997l-3.36 3.36a1.9 1.9 0 0 0 .673.25 1.54 1.54 0 0 0 .7-.045 1.55 1.55 0 0 0 .636-.384 1.4 1.4 0 0 0 .394-.677 1.74 1.74 0 0 0 .01-.795l1.41-.878a3.45 3.45 0 0 1 .16 1.836 3 3 0 0 1-.857 1.633m-4.008-1.746 2.263-2.263a1.7 1.7 0 0 0-.711-.286 1.8 1.8 0 0 0-.756.048 1.5 1.5 0 0 0-.648.382 1.45 1.45 0 0 0-.38.642 1.75 1.75 0 0 0-.043.75 1.8 1.8 0 0 0 .275.727m9.05-3.536-1.108 1.109-6.131-3.061 1.098-1.098 3.971 1.977-1.984-3.964 1.107-1.108 3.964 1.985-1.97-3.979 1.1-1.098 3.06 6.132-1.112 1.111-3.985-1.99Z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    left: 0;
    position: absolute;
    top: 0;
    width: 3.9375rem
}

@media (width>=48rem) {
    .p-message-item--new .p-message-image:after {
        width: 5.625rem
    }
}

.p-message-image {
    border-radius: .5rem;
    overflow: hidden;
    position: relative
}

@media (width>=48rem) {
    .p-message-image {
        border-radius: .625rem
    }
}

.p-message-text .c-block-detail__head-date {
    font-size: 1rem;
    margin-top: .5rem
}

.p-message-text .c-text {
    margin-top: 1.25rem
}

@media (width>=48rem) {
    .p-message-text .c-text {
        margin-top: 1.125rem
    }
}

.p-message-text .c-button {
    margin-left: auto;
    margin-right: auto;
    margin-top: 1.5625rem
}

@media (width>=48rem) {
    .p-message-text .c-button {
        margin-left: 0;
        margin-top: 1.75rem
    }
}

.p-message-title {
    font-size: 1.1875rem;
    line-height: 1.7
}

@media (width>=48rem) {
    .p-message-title {
        font-size: 1.5rem
    }
}

.p-message-title span {
    display: inline-block
}

.p-message-detail {
    padding-bottom: 2.5rem
}

@media (width>=48rem) {
    .p-message-detail {
        padding-bottom: 5rem
    }
}

@media (width < 48rem) {
    .p-message-detail .c-inner {
        width: 100%
    }
}

@media (width>=48rem) {
    .p-message-detail .c-inner {
        padding-bottom: 4.375rem
    }
}

.p-message-detail__fv {
    padding: 0
}

@media (width>=48rem) {
    .p-message-detail__fv {
        padding: 0 1.875rem
    }
}

.p-message-detail__fv img {
    border-radius: .625rem;
    overflow: hidden
}

.p-message-detail__content {
    margin-top: 3.125rem;
    padding: 0
}

@media (width>=48rem) {
    .p-message-detail__content {
        margin-top: 5.625rem;
        padding: 0 3.125rem
    }
}

.p-message-detail__messenger-lists {
    display: grid;
    gap: 1.75rem;
    margin-top: 1.25rem
}

@media (width>=48rem) {
    .p-message-detail__messenger-lists {
        gap: 2.75rem;
        margin-bottom: 4.375rem;
        margin-top: 2rem
    }
}

.p-message-detail__messenger {
    border: 2px solid var(--color-border);
    border-radius: .75rem;
    padding: 1.75rem 1.25rem
}

@media (width>=48rem) {
    .p-message-detail__messenger {
        padding: 1.625rem 2.625rem
    }
}

.p-message-detail__messenger-top {
    align-items: flex-start;
    display: flex;
    gap: 1rem
}

@media (width>=48rem) {
    .p-message-detail__messenger-top {
        align-items: center;
        gap: 1.375rem
    }
}

.p-message-detail__messenger-image {
    width: 5rem
}

@media (width>=48rem) {
    .p-message-detail__messenger-image {
        width: 5.875rem
    }
}

.p-message-detail__messenger-name {
    background: var(--dotted-line-bottom-pale);
    display: flex;
    flex-direction: column;
    font-size: 1.125rem;
    font-weight: 700;
    gap: 0;
    padding-bottom: .9375rem
}

@media (width>=48rem) {
    .p-message-detail__messenger-name {
        align-items: center;
        flex-direction: row;
        font-size: 1.25rem;
        gap: .75rem;
        padding-bottom: .375rem
    }
}

.p-message-detail__messenger-name span {
    color: var(--color-gray3);
    font-family: var(--font-en);
    font-size: .75rem;
    font-weight: 400;
    line-height: 1
}

.p-message-detail__messenger-profile {
    width: 100%
}

.p-message-detail__messenger-affiliation {
    font-size: .875rem;
    font-weight: 700;
    line-height: 1.6;
    margin-top: .625rem
}

.p-message-detail__messenger-lead {
    font-size: .875rem;
    margin-top: .9375rem
}

@media (width>=48rem) {
    .p-message-detail__messenger-lead {
        margin-top: 1.5625rem
    }
}

.p-message-index {
    background-color: var(--color-beige);
    border-radius: .3125rem;
    margin-top: 3.25rem;
    padding: 1.5625rem 1.25rem
}

@media (width>=48rem) {
    .p-message-index {
        border-radius: .625rem;
        margin-bottom: 6.25rem;
        margin-top: 4.375rem;
        padding: 1.875rem 2.75rem 1.75rem
    }
}

.p-message-index__title {
    font-size: 1.0625rem;
    font-weight: 700;
    letter-spacing: .02em
}

@media (width>=48rem) {
    .p-message-index__title {
        font-size: 1.125rem
    }
}

.p-message-index__lists {
    margin-top: .9375rem
}

@media (width>=48rem) {
    .p-message-index__lists {
        margin-top: 1.25rem
    }
}

.p-message-index__lists li {
    background: var(--dotted-line-bottom-pale);
    margin-bottom: .75rem;
    padding-bottom: .75rem
}

@media (width>=48rem) {
    .p-message-index__lists li {
        margin-bottom: .625rem;
        padding-bottom: .625rem
    }
}

.p-message-index__lists li:last-child {
    margin-bottom: 0
}

.p-message-index__lists li a {
    display: block;
    font-size: .875rem;
    letter-spacing: .02em;
    line-height: 1.7;
    position: relative
}

.p-message-index__lists li a:after {
    aspect-ratio: 1;
    background-color: var(--color-blue);
    content: "";
    display: block;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.808' height='6.926' viewBox='0 0 10.808 6.926'%3E%3Cpath stroke='rgba(0,0,0,0)' stroke-miterlimit='10' d='M5.405 6.426a.92.92 0 0 1-.66-.275L.774 2.18A.935.935 0 0 1 2.096.858l3.311 3.309 3.3-3.309a.936.936 0 0 1 1.322 1.326L6.063 6.151a.93.93 0 0 1-.661.275Z'/%3E%3C/svg%3E") no-repeat center/100%;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.808' height='6.926' viewBox='0 0 10.808 6.926'%3E%3Cpath stroke='rgba(0,0,0,0)' stroke-miterlimit='10' d='M5.405 6.426a.92.92 0 0 1-.66-.275L.774 2.18A.935.935 0 0 1 2.096.858l3.311 3.309 3.3-3.309a.936.936 0 0 1 1.322 1.326L6.063 6.151a.93.93 0 0 1-.661.275Z'/%3E%3C/svg%3E") no-repeat center/100%;
    position: absolute;
    right: 1.25rem;
    top: 50%;
    transform: translateY(-50%);
    width: .625rem
}

.p-message-index__lists li p {
    padding-right: 2.5rem
}

@media (width>=48rem) {
    .p-message-index__lists li p {
        padding-right: 2.5rem
    }
}

.p-message-movie {
    border-radius: .5rem;
    margin-top: 3.125rem;
    overflow: hidden
}

@media (width>=48rem) {
    .p-message-movie {
        margin-top: 3.75rem
    }
}

.p-message-movie iframe {
    aspect-ratio: 16/9;
    width: 100%
}

.p-message-back {
    margin-top: 2.5rem
}

@media (width>=48rem) {
    .p-message-back {
        margin-top: 4rem
    }
}

.p-message-back a {
    margin: 0 auto
}

.p-customer .l-title__hukidashi {
    right: 11.25rem;
    z-index: 2
}

.p-customer .c-card-voice {
    width: 100% !important
}

@media (width>=48rem) {
    .p-customer-detail .c-inner {
        padding-bottom: 3.125rem
    }
    .p-customer-detail .c-block-detail__head {
        align-items: flex-start;
        display: grid;
        gap: 0 2.5rem;
        grid-template-columns: 1fr auto
    }
    .p-customer-detail .c-block-detail__head-category,
    .p-customer-detail .c-block-detail__head-date,
    .p-customer-detail .c-block-detail__head-fv,
    .p-customer-detail .c-block-detail__head-pin {
        grid-column: 1/-1
    }
}

@media (width < 48rem) {
    .p-customer-detail .c-card-interview__name {
        font-size: .625rem
    }
}

.p-customer-detail .swiper-wrapper {
    padding-top: 2.5rem
}

.p-customer-detail .c-slider-event-image {
    margin-bottom: -2.5rem
}

@media (width < 48rem) {
    .p-business .c-page-nav__item a {
        font-size: .875rem
    }
}

@media (width>=48rem) {
    .p-business .c-onsite {
        padding-top: 6.25rem
    }
    .p-about .c-intro__images {
        bottom: 22.25rem;
        width: min(106.875rem, 106.875%)
    }
    .p-about .c-intro__image--01,
    .p-about .c-intro__image--02 {
        width: min(22.8125rem, 50% - 21.875rem)
    }
    .p-about .c-intro__image--02 {
        top: 4.5rem
    }
    .p-about .c-intro .c-page-nav {
        margin-top: 13.4375rem
    }
}

.p-about .c-gallary {
    background: linear-gradient(to bottom, #fff 40%, var(--color-beige) 40%)
}

.p-about-feature {
    overflow: hidden;
    padding-bottom: 2.5rem
}

.p-about-feature__list {
    counter-reset: num;
    display: grid;
    gap: 2.1875rem;
    margin-bottom: 3.4375rem
}

@media (width>=48rem) {
    .p-about-feature__list {
        gap: 4.8125rem;
        margin-bottom: 8.4375rem
    }
}

.p-about-feature__card {
    background: var(--dotted-line-bottom-pale);
    display: grid;
    grid-template-areas: "num title" "pic pic" "text text" "button button";
    grid-template-columns: 2.8125rem 1fr;
    padding-bottom: 2.1875rem;
    position: relative
}

@media (width>=48rem) {
    .p-about-feature__card {
        align-items: center;
        background: none;
        gap: 0 min(5rem, 5.7142857143vw);
        grid-template-areas: "pic ." "pic num" "pic title" "pic text" "pic button" "pic ." "pic line";
        grid-template-columns: min(33.75rem, 38.5714285714vw) 1fr;
        padding-bottom: 0
    }
    .p-about-feature__card:after {
        background: var(--dotted-line-bottom-pale);
        content: "";
        display: block;
        grid-area: line;
        height: .625rem;
        margin-top: 1.25rem
    }
}

.p-about-feature__card-num {
    counter-increment: num;
    grid-area: num
}

@media (width>=48rem) {
    .p-about-feature__card-num {
        margin-bottom: .875rem
    }
}

.p-about-feature__card-num:after {
    color: var(--color-pink);
    content: "0" counter(num);
    font-family: var(--font-en);
    font-size: 2rem;
    font-weight: 900;
    line-height: 1
}

@media (width>=48rem) {
    .p-about-feature__card-num:after {
        font-size: 3.875rem
    }
}

.p-about-feature__card-heading {
    font-size: 1.1875rem;
    font-weight: 700;
    grid-area: title
}

@media (width>=48rem) {
    .p-about-feature__card-heading {
        font-size: 1.75rem;
        margin-bottom: 1.25rem
    }
}

.p-about-feature__card-pic {
    border-radius: .75rem;
    grid-area: pic;
    margin-bottom: 1.5625rem;
    margin-top: .9375rem;
    overflow: hidden
}

@media (width>=48rem) {
    .p-about-feature__card-pic {
        margin: 0
    }
}

.p-about-feature__card-award {
    grid-area: pic;
    margin: auto .3125rem 0 auto;
    width: 6rem
}

@media (width>=48rem) {
    .p-about-feature__card-award {
        grid-area: auto;
        margin: 0;
        position: absolute;
        right: 0;
        top: 1.5625rem;
        width: 9rem
    }
}

.p-about-feature__card-text {
    grid-area: text
}

.p-about-feature__card-buttons {
    display: flex;
    gap: 1.25rem;
    grid-area: button;
    margin-top: 1.25rem
}

@media (width < 48rem) {
    .p-about-feature__card-buttons {
        justify-content: center
    }
}

.p-about-feature__card-buttons .c-button {
    min-width: auto
}

@media (width>=48rem) {
    .p-about-feature__card-buttons .c-button {
        padding-left: 2.1875rem
    }
}

.p-about-vision {
    padding: 5rem 0 3.375rem
}

@media (width>=48rem) {
    .p-about-vision {
        padding: 8.125rem 0
    }
}

.p-about-vision__list {
    counter-reset: num;
    display: grid;
    gap: 1.875rem
}

@media (width>=48rem) {
    .p-about-vision__list {
        gap: 3.125rem;
        grid-template-columns: repeat(3, 1fr)
    }
}

.p-about-vision__card {
    background-color: #fff;
    border-radius: .5rem;
    overflow: hidden;
    padding: 1.875rem 2.1875rem;
    position: relative
}

@media (width>=48rem) {
    .p-about-vision__card {
        padding: 3.125rem 2.1875rem 2.5rem
    }
}

.p-about-vision__card-num {
    aspect-ratio: 78/78;
    background-color: var(--color-aqua);
    clip-path: polygon(0 0, 100% 0, 0 100%);
    counter-increment: num;
    left: 0;
    padding: .875rem;
    position: absolute;
    top: 0;
    width: 4.875rem
}

@media (width>=48rem) {
    .p-about-vision__card-num {
        padding: 1rem;
        width: 5.625rem
    }
}

.p-about-vision__card-num:after {
    color: #fff;
    content: "0" counter(num);
    display: block;
    font-family: var(--font-en);
    font-size: 1.1875rem;
    font-weight: 700;
    line-height: 1
}

@media (width>=48rem) {
    .p-about-vision__card-num:after {
        font-size: 1.4375rem
    }
}

.p-about-vision__card-heading {
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.75;
    margin-bottom: 1.875rem;
    text-align: center
}

@media (width>=48rem) {
    .p-about-vision__card-heading {
        font-size: 1.5rem
    }
}

.p-about-vision__card-heading span {
    background: linear-gradient(to bottom, transparent 10%, var(--color-aqua) 10%, var(--color-aqua) 90%, transparent 90%);
    color: #fff;
    display: inline-block;
    padding: 0 .5em
}

@media (width>=48rem) {
    .p-about-vision__card-heading span {
        background: linear-gradient(to bottom, transparent 15%, var(--color-aqua) 15%, var(--color-aqua) 85%, transparent 85%)
    }
}

.p-about-vision__card-pic {
    display: block;
    margin-bottom: 1.125rem
}

@media (width>=48rem) {
    .p-about-vision__card-pic {
        margin-left: auto;
        margin-right: auto;
        width: 86%
    }
}

.p-about-curriculum .c-supervision__row {
    gap: 6.25rem
}

@media (width < 48rem) {
    .p-about-curriculum .c-supervision__row {
        gap: 3.125rem
    }
}

.p-about-curriculum .c-supervision__profile {
    margin-top: 5rem
}

@media (width>=48rem) {
    .p-about-curriculum .c-supervision__profile {
        margin-top: 2.8125rem
    }
}

@media (width < 48rem) {
    .p-about-curriculum__card--02 {
        grid-template-columns: 1fr 6.25rem
    }
    .p-about-curriculum__card--02 .c-supervision__curriculum-pic img {
        width: 7.5rem
    }
}

.p-about-course {
    background-color: #fff;
    overflow: hidden
}

.p-about-course .c-inner {
    background-color: #f1f0ec;
    border-radius: 1.4375rem;
    padding: 3.125rem 1.25rem
}

@media (width < 48rem) {
    .p-about-course .c-inner {
        left: 50%;
        position: relative;
        transform: translate(-50%);
        width: 100vw
    }
}

@media (width>=48rem) {
    .p-about-course .c-inner {
        padding: 5rem min(7.5rem, 7.5vw) 6.25rem;
        width: min(92.5rem, 100%)
    }
}

.p-about-course .c-heading-circle:before {
    box-shadow: .625rem 0 0 0 var(--color-blue), 1.25rem 0 0 0 var(--color-aqua);
    left: 50%;
    transform: translate(-.8125rem);
    width: .375rem
}

.p-about-course__list {
    display: grid;
    gap: 1.875rem;
    margin-top: 2.5rem
}

@media (width>=48rem) {
    .p-about-course__list {
        gap: 2.8125rem 3.125rem;
        grid-template-columns: repeat(3, 1fr)
    }
}

.p-about-course__card {
    background-color: #fff;
    border-radius: .5rem;
    padding: 1.6875rem 1.875rem
}

.p-about-course__card-heading {
    font-size: 1.25rem;
    margin-bottom: .9375rem;
    padding-top: .9375rem;
    text-align: center
}

.p-about-course__card-pic {
    display: block;
    margin-bottom: .9375rem
}

.p-about-course__card-note {
    color: rgba(var(--color-black-rgb), .6);
    font-size: .875rem;
    margin-top: .625rem
}

.p-about-flow {
    background-color: #fff;
    overflow: hidden;
    padding-bottom: 5rem;
    padding-top: 5rem
}

@media (width>=48rem) {
    .p-about-flow {
        padding-bottom: 8.125rem;
        padding-top: 8.125rem
    }
    .p-about-flow .c-heading-withsub {
        text-align: left
    }
    .p-about-flow .c-card-theme {
        margin-top: 11.25rem;
        padding: 3.125rem 1.25rem 2.4375rem 4.1875rem
    }
    .p-about-flow .c-card-theme__row {
        gap: .625rem;
        grid-template-areas: "title pic" "text pic" "button pic" "null pic"
    }
}

.p-about-flow__contnet {
    position: relative
}

.p-about-flow__obj {
    position: absolute;
    right: 0;
    top: 0;
    transform: translateY(-100%)
}

.p-about-flow__obj picture {
    display: block;
    position: relative;
    width: 20.6875rem;
    z-index: 1
}

.p-about-flow__obj .c-hukidashi-default {
    font-size: 1rem;
    left: -1.375rem;
    padding: .9375rem 2rem;
    position: absolute;
    top: -3rem;
    z-index: 0
}

.p-about-flow__obj .c-hukidashi-default:after {
    left: 3.125rem;
    transform: translateY(-50%) scaleX(-1) rotate(-20deg)
}

.p-about-flow__list {
    background: linear-gradient(90deg, transparent calc(50% - .5rem), rgba(171, 214, 91, .3) calc(50% - .5rem), rgba(171, 214, 91, .3) calc(50% + .5rem), transparent calc(50% + .5rem));
    display: grid;
    gap: 5.625rem;
    margin-bottom: 4.375rem;
    margin-top: 4.375rem
}

@media (width>=48rem) {
    .p-about-flow__list {
        background: linear-gradient(180deg, transparent calc(50% - .8125rem), rgba(171, 214, 91, .3) calc(50% - .8125rem), rgba(171, 214, 91, .3) calc(50% + .5rem), transparent calc(50% + .5rem));
        gap: 3.125rem;
        grid-template-columns: repeat(3, 1fr);
        margin-bottom: 6.875rem;
        margin-top: 5.3125rem
    }
}

.p-about-flow__card {
    background-color: #fff;
    border: 2px solid var(--color-border);
    border-radius: .5rem;
    padding: 3.4375rem 2.125rem 1.5625rem;
    position: relative
}

.p-about-flow__card-num {
    align-items: center;
    aspect-ratio: 90/90;
    background-color: var(--color-aqua);
    border-radius: 50%;
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    left: 50%;
    position: absolute;
    top: 0;
    transform: translate(-50%, -50%);
    width: 5.625rem
}

.p-about-flow__card-num span {
    display: block;
    font-weight: 700;
    line-height: 1
}

.p-about-flow__card-num span:first-child {
    font-size: 1.0625rem
}

.p-about-flow__card-num span:last-child {
    font-size: 2.25rem
}

.p-about-flow__card-heading {
    font-size: 1.125rem;
    font-weight: 700;
    margin-bottom: .5rem;
    text-align: center
}

@media (width>=48rem) {
    .p-about-flow__card-heading {
        font-size: 1.5rem;
        margin-bottom: 1.5rem
    }
}

.p-about-flow__card-pic {
    border-radius: .5625rem;
    display: block;
    margin-bottom: .9375rem;
    overflow: hidden
}

@media (width>=48rem) {
    .p-about-flow__card-pic {
        margin-bottom: 1.25rem
    }
}

.p-about-flow__card--01 .p-about-flow__card-num {
    background-color: #bedf80
}

.p-about-flow__card--02 .p-about-flow__card-num {
    background-color: #afd862
}

.p-about-flow__card--03 {
    border: 3px solid var(--color-green)
}

.p-about-flow__card--03 .p-about-flow__card-num {
    background-color: var(--color-green)
}

.p-about-flow__card--03 .p-about-flow__card-heading {
    color: var(--color-green)
}

.p-about-operation {
    background-color: #fff;
    padding-bottom: 5rem;
    padding-top: 0
}

@media (width>=48rem) {
    .p-about-operation .c-heading-withsub {
        text-align: left
    }
    .p-about-operation .c-heading-withsub+.c-text {
        max-width: 26.125rem
    }
}

.p-about-operation .c-dl-line {
    margin-top: 0
}

@media (width>=48rem) {
    .p-about-operation__row {
        display: grid;
        gap: 0 min(5rem, 5vw);
        grid-template-columns: 26.125rem 1fr;
        justify-content: space-between
    }
}

.p-about-operation__logo {
    align-items: center;
    display: flex;
    justify-content: center;
    margin-bottom: 1.5625rem;
    margin-top: 1.25rem
}

@media (width>=48rem) {
    .p-about-operation__logo {
        gap: 2.5rem;
        justify-content: start;
        margin-top: 2.8125rem
    }
}

.p-about-operation__logo img {
    height: 4.625rem
}

@media (width>=48rem) {
    .p-about-operation__content .c-dl-line {
        margin-left: auto;
        margin-right: 0;
        max-width: 40rem
    }
    .p-about-operation__address {
        display: flex;
        gap: .625rem;
        justify-content: space-between
    }
}

.p-about-operation__address span {
    display: block
}

.p-about-operation__address picture {
    border-radius: .5625rem;
    display: block;
    margin-bottom: .625rem;
    margin-top: 1.25rem;
    overflow: hidden;
    width: 100%
}

@media (width>=48rem) {
    .p-about-operation__address picture {
        margin-top: .3125rem;
        width: 15rem
    }
}

.p-about-operation__address picture img {
    width: 100%
}

.p-about-partner {
    padding: 3.125rem 0
}

@media (width>=48rem) {
    .p-about-partner {
        padding: 5rem 0
    }
}

.p-about-partner__heading {
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 1.5;
    margin-bottom: 1.875rem;
    text-align: center
}

@media (width>=48rem) {
    .p-about-partner__heading {
        align-items: center;
        display: flex;
        font-size: 1.625rem;
        gap: .625rem;
        justify-content: center
    }
}

.p-about-partner__heading small {
    display: block;
    font-size: .875rem;
    font-weight: 400
}

.p-about-partner__list {
    display: grid;
    gap: .8125rem;
    grid-template-columns: repeat(2, 1fr)
}

@media (width>=48rem) {
    .p-about-partner__list {
        gap: 1.4375rem;
        grid-template-columns: repeat(4, 1fr)
    }
}

.p-about-partner__list li {
    display: grid;
    grid-template-rows: subgrid
}

.p-about-partner__list a,
.p-about-partner__list span {
    align-items: center;
    background-color: #fff;
    border-radius: .375rem;
    display: grid;
    grid-template-rows: subgrid;
    justify-content: center;
    padding: .625rem 0
}

@media (width>=48rem) {
    .p-about-partner__list a,
    .p-about-partner__list span {
        border-radius: .75rem;
        padding: 1.0625rem 0
    }
}

.p-about-partner__list img {
    display: block;
    margin: 0 auto;
    max-height: 3rem;
    max-width: 90%
}

@media (width>=48rem) {
    .p-about-partner__list img {
        max-height: 5.375rem
    }
}

@media (hover) {
    .p-about-partner__list a img {
        transition: transform var(--duration-fast) var(--ease-power3-out)
    }
    .p-about-partner__list a:hover img {
        transform: scale(1.1)
    }
}

@font-face {
    font-family: swiper-icons;
    font-style: normal;
    font-weight: 400;
    src: url(data:application/font-woff;charset=utf-8;base64,\ d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA)
}

:root {
    --swiper-theme-color: #007aff
}

:host {
    display: block;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    z-index: 1
}

.swiper {
    display: block;
    list-style: none;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
    padding: 0;
    position: relative;
    z-index: 1
}

.swiper-vertical>.swiper-wrapper {
    flex-direction: column
}

.swiper-wrapper {
    box-sizing: content-box;
    display: flex;
    height: 100%;
    position: relative;
    transition-property: transform;
    transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
    width: 100%;
    z-index: 1
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
    transform: translateZ(0)
}

.swiper-horizontal {
    touch-action: pan-y
}

.swiper-vertical {
    touch-action: pan-x
}

.swiper-slide {
    display: block;
    flex-shrink: 0;
    height: 100%;
    position: relative;
    transition-property: transform;
    width: 100%
}

.swiper-slide-invisible-blank {
    visibility: hidden
}

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
    height: auto
}

.swiper-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height
}

.swiper-backface-hidden .swiper-slide {
    backface-visibility: hidden;
    transform: translateZ(0)
}

.swiper-3d.swiper-css-mode .swiper-wrapper {
    perspective: 1200px
}

.swiper-3d .swiper-wrapper {
    transform-style: preserve-3d
}

.swiper-3d {
    perspective: 1200px
}

.swiper-3d .swiper-cube-shadow,
.swiper-3d .swiper-slide {
    transform-style: preserve-3d
}

.swiper-css-mode>.swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
    display: none
}

.swiper-css-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: start start
}

.swiper-css-mode.swiper-horizontal>.swiper-wrapper {
    scroll-snap-type: x mandatory
}

.swiper-css-mode.swiper-vertical>.swiper-wrapper {
    scroll-snap-type: y mandatory
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper {
    scroll-snap-type: none
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: none
}

.swiper-css-mode.swiper-centered>.swiper-wrapper:before {
    content: "";
    flex-shrink: 0;
    order: 9999
}

.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: center center;
    scroll-snap-stop: always
}

.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
    margin-inline-start: var(--swiper-centered-offset-before)
}

.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before {
    height: 100%;
    min-height: 1px;
    width: var(--swiper-centered-offset-after)
}

.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
    margin-block-start: var(--swiper-centered-offset-before)
}

.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before {
    height: var(--swiper-centered-offset-after);
    min-width: 1px;
    width: 100%
}

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top {
    height: 100%;
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 10
}

.swiper-3d .swiper-slide-shadow {
    background: #00000026
}

.swiper-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(270deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(90deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(0deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(180deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-lazy-preloader {
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-radius: 50%;
    border-top: 4px solid transparent;
    box-sizing: border-box;
    height: 42px;
    left: 50%;
    margin-left: -21px;
    margin-top: -21px;
    position: absolute;
    top: 50%;
    transform-origin: 50%;
    width: 42px;
    z-index: 10
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,
.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
    animation: swiper-preloader-spin 1s linear infinite
}

.swiper-lazy-preloader-white {
    --swiper-preloader-color: #fff
}

.swiper-lazy-preloader-black {
    --swiper-preloader-color: #000
}

@keyframes swiper-preloader-spin {
    0% {
        transform: rotate(0)
    }
    to {
        transform: rotate(1turn)
    }
}

.swiper-virtual .swiper-slide {
    -webkit-backface-visibility: hidden;
    transform: translateZ(0)
}

.swiper-virtual.swiper-css-mode .swiper-wrapper:after {
    content: "";
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper:after {
    height: 1px;
    width: var(--swiper-virtual-size)
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper:after {
    height: var(--swiper-virtual-size);
    width: 1px
}

:root {
    --swiper-navigation-size: 44px
}

.swiper-button-next,
.swiper-button-prev {
    align-items: center;
    color: var(--swiper-navigation-color, var(--swiper-theme-color));
    cursor: pointer;
    display: flex;
    height: var(--swiper-navigation-size);
    justify-content: center;
    margin-top: calc(0px - var(--swiper-navigation-size)/2);
    position: absolute;
    top: var(--swiper-navigation-top-offset, 50%);
    width: calc(var(--swiper-navigation-size)/44*27);
    z-index: 10
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
    cursor: auto;
    opacity: .35;
    pointer-events: none
}

.swiper-button-next.swiper-button-hidden,
.swiper-button-prev.swiper-button-hidden {
    cursor: auto;
    opacity: 0;
    pointer-events: none
}

.swiper-navigation-disabled .swiper-button-next,
.swiper-navigation-disabled .swiper-button-prev {
    display: none !important
}

.swiper-button-next svg,
.swiper-button-prev svg {
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    transform-origin: center;
    width: 100%
}

.swiper-rtl .swiper-button-next svg,
.swiper-rtl .swiper-button-prev svg {
    transform: rotate(180deg)
}

.swiper-button-prev,
.swiper-rtl .swiper-button-next {
    left: var(--swiper-navigation-sides-offset, 10px);
    right: auto
}

.swiper-button-lock {
    display: none
}

.swiper-button-next:after,
.swiper-button-prev:after {
    font-family: swiper-icons;
    font-size: var(--swiper-navigation-size);
    font-variant: normal;
    letter-spacing: 0;
    line-height: 1;
    text-transform: none !important
}

.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
    content: "prev"
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
    left: auto;
    right: var(--swiper-navigation-sides-offset, 10px)
}

.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
    content: "next"
}

.swiper-pagination {
    position: absolute;
    text-align: center;
    transform: translateZ(0);
    transition: opacity .3s;
    z-index: 10
}

.swiper-pagination.swiper-pagination-hidden {
    opacity: 0
}

.swiper-pagination-disabled>.swiper-pagination,
.swiper-pagination.swiper-pagination-disabled {
    display: none !important
}

.swiper-horizontal>.swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
    bottom: var(--swiper-pagination-bottom, 8px);
    left: 0;
    top: var(--swiper-pagination-top, auto);
    width: 100%
}

.swiper-pagination-bullets-dynamic {
    font-size: 0;
    overflow: hidden
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    position: relative;
    transform: scale(.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    transform: scale(.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    transform: scale(.33)
}

.swiper-pagination-bullet {
    background: var(--swiper-pagination-bullet-inactive-color, #000);
    border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
    display: inline-block;
    height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
    opacity: var(--swiper-pagination-bullet-inactive-opacity, .2);
    width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px))
}

button.swiper-pagination-bullet {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    box-shadow: none;
    margin: 0;
    padding: 0
}

.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer
}

.swiper-pagination-bullet:only-child {
    display: none !important
}

.swiper-pagination-bullet-active {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    opacity: var(--swiper-pagination-bullet-opacity, 1)
}

.swiper-pagination-vertical.swiper-pagination-bullets,
.swiper-vertical>.swiper-pagination-bullets {
    left: var(--swiper-pagination-left, auto);
    right: var(--swiper-pagination-right, 8px);
    top: 50%;
    transform: translate3d(0, -50%, 0)
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
    display: block;
    margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    transition: transform .2s, top .2s
}

.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px)
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translate(-50%);
    white-space: nowrap
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: transform .2s, left .2s
}

.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: transform .2s, right .2s
}

.swiper-pagination-fraction {
    color: var(--swiper-pagination-fraction-color, inherit)
}

.swiper-pagination-progressbar {
    background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, .25));
    position: absolute
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    transform: scale(0);
    transform-origin: left top;
    width: 100%
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: right top
}

.swiper-horizontal>.swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,
.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    height: var(--swiper-pagination-progressbar-size, 4px);
    left: 0;
    top: 0;
    width: 100%
}

.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-vertical>.swiper-pagination-progressbar {
    height: 100%;
    left: 0;
    top: 0;
    width: var(--swiper-pagination-progressbar-size, 4px)
}

.swiper-pagination-lock {
    display: none
}

.swiper-scrollbar {
    background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, .1));
    border-radius: var(--swiper-scrollbar-border-radius, 10px);
    position: relative;
    touch-action: none
}

.swiper-scrollbar-disabled>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-disabled {
    display: none !important
}

.swiper-horizontal>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
    bottom: var(--swiper-scrollbar-bottom, 4px);
    height: var(--swiper-scrollbar-size, 4px);
    left: var(--swiper-scrollbar-sides-offset, 1%);
    position: absolute;
    top: var(--swiper-scrollbar-top, auto);
    width: calc(100% - var(--swiper-scrollbar-sides-offset, 1%)*2);
    z-index: 50
}

.swiper-scrollbar.swiper-scrollbar-vertical,
.swiper-vertical>.swiper-scrollbar {
    height: calc(100% - var(--swiper-scrollbar-sides-offset, 1%)*2);
    left: var(--swiper-scrollbar-left, auto);
    position: absolute;
    right: var(--swiper-scrollbar-right, 4px);
    top: var(--swiper-scrollbar-sides-offset, 1%);
    width: var(--swiper-scrollbar-size, 4px);
    z-index: 50
}

.swiper-scrollbar-drag {
    background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, .5));
    border-radius: var(--swiper-scrollbar-border-radius, 10px);
    height: 100%;
    left: 0;
    position: relative;
    top: 0;
    width: 100%
}

.swiper-scrollbar-cursor-drag {
    cursor: move
}

.swiper-scrollbar-lock {
    display: none
}

.swiper-zoom-container {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: center;
    text-align: center;
    width: 100%
}

.swiper-zoom-container>canvas,
.swiper-zoom-container>img,
.swiper-zoom-container>svg {
    max-height: 100%;
    max-width: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

.swiper-slide-zoomed {
    cursor: move;
    touch-action: none
}

.swiper .swiper-notification {
    left: 0;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    z-index: -1000
}

.swiper-free-mode>.swiper-wrapper {
    margin: 0 auto;
    transition-timing-function: ease-out
}

.swiper-grid>.swiper-wrapper {
    flex-wrap: wrap
}

.swiper-grid-column>.swiper-wrapper {
    flex-direction: column;
    flex-wrap: wrap
}

.swiper-fade.swiper-free-mode .swiper-slide {
    transition-timing-function: ease-out
}

.swiper-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity
}

.swiper-fade .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-fade .swiper-slide-active,
.swiper-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper.swiper-cube {
    overflow: visible
}

.swiper-cube .swiper-slide {
    backface-visibility: hidden;
    height: 100%;
    pointer-events: none;
    transform-origin: 0 0;
    visibility: hidden;
    width: 100%;
    z-index: 1
}

.swiper-cube .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-cube.swiper-rtl .swiper-slide {
    transform-origin: 100% 0
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-next,
.swiper-cube .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible
}

.swiper-cube .swiper-cube-shadow {
    bottom: 0;
    height: 100%;
    left: 0;
    opacity: .6;
    position: absolute;
    width: 100%;
    z-index: 0
}

.swiper-cube .swiper-cube-shadow:before {
    background: #000;
    bottom: 0;
    content: "";
    filter: blur(50px);
    left: 0;
    position: absolute;
    right: 0;
    top: 0
}

.swiper-cube .swiper-slide-next+.swiper-slide {
    pointer-events: auto;
    visibility: visible
}

.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top {
    backface-visibility: hidden;
    z-index: 0
}

.swiper.swiper-flip {
    overflow: visible
}

.swiper-flip .swiper-slide {
    backface-visibility: hidden;
    pointer-events: none;
    z-index: 1
}

.swiper-flip .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-flip .swiper-slide-active,
.swiper-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top {
    backface-visibility: hidden;
    z-index: 0
}

.swiper-creative .swiper-slide {
    backface-visibility: hidden;
    overflow: hidden;
    transition-property: transform, opacity, height
}

.swiper.swiper-cards {
    overflow: visible
}

.swiper-cards .swiper-slide {
    backface-visibility: hidden;
    overflow: hidden;
    transform-origin: center bottom
}