@charset "UTF-8";

pre {
    font-size:inherit;
    font-family:monospace,monospace
}
address {
    font-style:inherit
}
a {
    background-color:transparent;
    color:inherit;
    text-decoration:none;
    transition:.3s;
}
a:hover {
    color:inherit;
    text-decoration:none
}
abbr[title] {
    border-bottom:none;
    text-decoration:underline;
    -webkit-text-decoration:underline dotted;
    text-decoration:underline dotted
}
b,strong {
    font-weight:bolder
}
code,kbd,samp {
    font-size:inherit;
    font-family:monospace,monospace
}
small {
    font-size:80%
}
sub,sup {
    position:relative;
    font-size:75%;
    line-height:0;
    vertical-align:baseline
}
sub {
    bottom:-.25em
}
sup {
    top:-.5em
}
img {
    border-style:none;
    vertical-align:bottom
}
embed,object,iframe {
    border:0;
    vertical-align:bottom
}
button,input,optgroup,textarea {
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
    margin:0;
    padding:0;
    border:0;
    border-radius:0;
    outline:0;
    background:transparent;
    color:inherit;
    font:inherit;
    text-align:inherit;
    vertical-align:middle
}
[type=checkbox] {
    -webkit-appearance:checkbox;
    -moz-appearance:checkbox;
    appearance:checkbox
}
[type=radio] {
    -webkit-appearance:radio;
    -moz-appearance:radio;
    appearance:radio
}
button,input {
    overflow:visible
}
button,select {
    text-transform:none
}
button,[type=button],[type=reset],[type=submit] {
    cursor:pointer;
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none
}
button[disabled],[type=button][disabled],[type=reset][disabled],[type=submit][disabled] {
    cursor:default
}
button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner {
    padding:0;
    border-style:none
}
button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring {
    outline:1px dotted ButtonText
}
option {
    padding:0
}
fieldset {
    min-width:0;
    margin:0;
    padding:0;
    border:0
}
legend {
    display:table;
    max-width:100%;
    padding:0;
    color:inherit;
    white-space:normal
}
progress {
    vertical-align:baseline
}
textarea {
    overflow:auto
}
[type=checkbox],[type=radio] {
    padding:0
}
[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button {
    height:auto
}
[type=search] {
    outline-offset:-2px
}
[type=search]::-webkit-search-decoration {
    -webkit-appearance:none
}
::-webkit-file-upload-button {
    -webkit-appearance:button;
    font:inherit
}
label[for] {
    cursor:pointer
}
details {
    display:block
}
summary {
    display:list-item
}
table {
    border-collapse:collapse;
    border-spacing:0
}
caption {
    text-align:left
}
td,th {
    padding:0;
    vertical-align:top
}
th {
    font-weight:700;
    text-align:left
}
template {
    display:none
}
[hidden] {
    display:none
}
:root {
    --white: #fff;
    --black: #333;
    --border-gray: #b7b7b7;
    --green: #14aaa0;
    --green-light: #72c9c2;
    --font-mincho: "Zen Old Mincho", serif;
    --font-marcellus: "Marcellus", serif;
    --leading-trim: calc((1em - 1lh)/2)
}
@supports not (top: 1lh) {
    :root {
        --leading-trim: 0px
    }
}
img {
    max-width:100%;
    height:auto
}
body {
    background-color:#d5eaf0;
    color:var(--black);
    font-size:14px;
    font-family:Helvetica Neue,Arial,Hiragino Kaku Gothic ProN,Hiragino Sans,Noto Sans,Meiryo,sans-serif;
    font-optical-sizing:auto;
    letter-spacing:.08em;
    -webkit-text-size-adjust:100%;
    -moz-text-size-adjust:100%;
    text-size-adjust:100%
}
.c-heading {
    display:grid;
    gap:.25rem
}
.c-heading[data-type=primary] .en {
    gap:.75rem
}
.c-heading[data-type=primary] .en:before {
    display:inline-block;
    width:28px;
    height:1px;
    background-color:var(--green);
    content:""
}
.c-heading[data-type=primary] .ja {
    font-size:1.375rem
}
.c-heading[data-type=secondary] {
    text-align:center
}
.c-heading[data-type=secondary] .en {
    justify-content:center;
    gap:1.25rem
}
.c-heading[data-type=secondary] .en:before,.c-heading[data-type=secondary] .en:after {
    display:inline-block;
    width:28px;
    height:1px;
    background-color:var(--green);
    content:""
}
.c-heading[data-type=secondary] .ja {
    font-size:1.625rem
}
.c-heading .en {
    display:inline-flex;
    align-items:center;
    color:var(--green);
    font-size:1rem;
    font-size:1.25rem;
    line-height:1.25;
    font-family:var(--font-marcellus);
    letter-spacing:.1em;
    text-transform:uppercase
}
.c-heading .ja {
    font-weight:700;
    line-height:1.40625;
    font-family:var(--font-mincho)
}
.c-heading-line {
    position:relative;
    font-weight:700;
    font-size:1.25rem;
    line-height:1.5;
    font-family:var(--font-mincho)
}
.c-heading-line.--with-icon {
    display:grid;
    grid-template-columns:auto 1fr;
    align-items:center;
    gap:.5rem
}
.c-heading-line[data-line-position=bottom] {
    padding-bottom:.5rem
}
.c-heading-line[data-line-position=bottom]:after {
    display:block;
    position:absolute;
    bottom:0;
    width:100%;
    height:1px;
    background-color:var(--border-gray);
    content:""
}
.c-menu {
    max-width:1400px;
    margin-inline:auto
}
.c-menu .c-menu__list {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:.375rem;
    border-bottom:1px solid var(--green);
    text-align:center
}
.c-menu li {
    display:grid;
    grid-template-columns:1fr
}
.c-menu a {
    display:grid;
    z-index:0;
    position:relative;
    place-content:center;
    padding:1rem .625rem;
    background:linear-gradient(var(--white) 0%,rgba(255,255,255,0) 100%);
    font-weight:700;
    font-family:var(--font-mincho);
    transition:color .3s
}
.c-menu a:before {
    z-index:-1;
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
    background:linear-gradient(var(--white) 100%,var(--white) 100%);
    content:"";
    opacity:0;
    transition:opacity .3s
}
.c-menu a.is-active {
    border-top:1px solid var(--green);
    border-right:1px solid var(--green);
    border-left:1px solid var(--green);
    background:var(--white);
    color:var(--green)
}
.c-menu a.is-active:after {
    z-index:1;
    position:absolute;
    bottom:-1px;
    width:100%;
    height:1px;
    background:var(--white);
    content:""
}
.c-section.--bg-white {
    padding:1.75rem;
    border:1px solid var(--green);
    background:linear-gradient(var(--white) 0%,rgba(255,255,255,.61) 100%)
}
.c-section .c-section__heading {
    margin-bottom:1.375rem
}
.c-list {
    display:inline-grid;
    gap:.75rem
}
.c-list.flex{
  display:grid;
}
.c-list.flex li{
  width: 100%;
}
.c-list li {
    display:grid;
    grid-template-columns:10px auto;
    align-items:baseline;
    gap:.5rem;
    line-height:2
}
.c-list li:before {
    display:inline-block;
    width:10px;
    height:10px;
    border-radius:50%;
    background:var(--green-light);
    content:""
}
.c-list a {
    width:-moz-fit-content;
    width:fit-content;
    color:var(--green);
    line-height:2;
    text-decoration:underline;
}
.c-list .c-list__text {
    padding:.5rem 0 0 1.5rem;
    font-size:.75rem
}
.u-text {
    line-height:2
}
.u-heading-bg {
    width:16.25rem;
    width:-moz-fit-content;
    width:fit-content;
    margin-inline:auto;
    padding:1rem 1.25rem;
    background:#41a5d029;
    font-weight:700
}
.u-hidden-md {
    display:block
}
.l-container {
    max-width:1140px;
    margin-inline:auto;
    padding-inline:5.3333333333vw
}
.l-main {
    padding-top:3.75rem;
    background:url(../../img/bg.png) no-repeat left top/100% 100%
}
.l-page {
    max-width:1400px;
    margin-inline:auto;
    padding:2.5rem 0 3.125rem;
    border-right:1px solid var(--green);
    border-bottom:1px solid var(--green);
    border-left:1px solid var(--green);
    background:var(--white)
}
.l-page .l-page-content {
    display:grid;
    margin-top:3.75rem;
    gap:3.75rem
}
.l-page .l-page__heading {
    margin-bottom:1.75rem
}
.fv {
    margin-bottom:2.5rem
}
.fv .fv__content {
    position:relative;
    margin-bottom:3.75rem;
    padding-top:4.375rem;
    padding-bottom:2.5rem;
    padding-inline:1.25rem;
    background:url(../../img/bg_fv.png) no-repeat center/cover;
    text-align:center
}
.fv .fv__content:after {
    position:absolute;
    top:50%;
    left:0;
    width:100%;
    translate:0 -60%;
    content:"School animal";
    color:var(--green);
    font-size:clamp(2.25rem,10.1333333333vw,5rem);
    font-family:var(--font-marcellus);
    letter-spacing:.08em;
    text-transform:uppercase;
    opacity:.13
}
.fv .fv__title {
    margin-bottom:2.25rem;
    font-weight:700;
    font-size:1.625rem;
    font-family:var(--font-mincho)
}
.fv .fv__intro {
    line-height:2
}
.home-main {
    display:grid;
    grid-template-rows:1fr auto;
    margin-bottom:3.75rem;
    gap:1.75rem
}
.home-sub {
    display:grid;
    grid-template-rows:repeat(2,auto);
    margin-bottom:2.5rem;
    gap:2.5rem
}
.c-note {
    display:grid;
    margin-top:2.5rem;
    gap:1.75rem
}
.c-section__subtitle {
    margin-bottom:1rem;
    font-size:1.125rem
}
.c-video-list {
    display:grid;
    gap:1.25rem
}
.c-video-list li {
    text-align:center
}
.c-video-list .title {
    margin-bottom:1rem
}
.c-video-list .iframe-wrap {
    aspect-ratio:16/9;
    width:100%;
    margin-bottom:.25rem
}
.c-video-list .iframe-wrap iframe {
    width:100%;
    height:100%
}
.c-image-wrap {
    display:flex;
    flex-wrap:wrap;
    align-items:end;
    gap:1.25rem
}
.c-image-wrap .c-image {
    width:calc(50% - 10px)
}
.c-image-wrap .c-image img {
    width:100%
}
.kenan-group-wrap {
    display:grid;
    margin-top:1.5rem;
    gap:2.5rem
}
.kenan-group-wrap .kenan-group .kenan-group__title {
    margin-bottom:1rem;
    font-weight:700;
    font-size:1.25rem;
    font-family:var(--font-mincho)
}
.kenan-group-wrap .kenan-group .kenan-group__list {
    padding-left:1rem
}
@media screen and (min-width: 768px) {
    body {
        font-size:16px
    }
    .c-heading[data-type=secondary] .en {
        gap:4.5rem
    }
    .c-heading .en {
        font-size:1.5rem
    }
    .c-heading .ja {
        font-size:2rem
    }
    .c-heading-line {
        font-size:1.5rem
    }
    .c-menu a {
        padding:1.25rem .625rem;
        font-size:1.5rem;
        line-height:1.875
    }
    .c-section.--bg-white {
        padding:2.5rem clamp(2.5rem,15%,5rem)
    }
    .c-list .c-list__text {
        font-size:.875rem
    }
    .u-hidden-md {
        display:none
    }
    .l-container {
        max-width:1180px;
        padding-inline:2.5rem
    }
    .l-main {
        padding-top:5rem
    }
    .l-page {
        padding:5rem 0 5.625rem
    }
    .l-page .l-page-content {
        gap:5rem
    }
    .fv {
        margin-bottom:4rem
    }
    .fv .fv__content {
        margin-bottom:5.625rem;
        padding-top:5.75rem;
        padding-bottom:4rem
    }
    .fv .fv__content:after {
        translate:0 -58%;
        font-size:clamp(3.75rem,10 * (1vw + 1vh) / 2,6.8125rem)
    }
    .fv .fv__title {
        font-size:2.5rem
    }
    .home-main {
        grid-template-rows:auto 1fr;
        grid-template-columns:1fr 1fr;
        gap:2.5rem
    }
    .home-main .home-main__primary {
        grid-row:1/2;
        grid-column:1/3
    }
    .home-main .home-main__secondary {
        grid-row:2/3;
        grid-column:1/2
    }
    .home-main .home-main__tertiary {
        grid-row:2/3;
        grid-column:2/3
    }
    .home-sub {
        margin-bottom:4rem;
        gap:4rem
    }
    .c-note {
        margin-top:4rem
    }
    .c-section__subtitle {
        font-size:1.25rem
    }
    .c-video-list {
        grid-template-columns:repeat(2,1fr);
        gap:2.5rem
    }
    .c-image-wrap {
        flex-wrap:nowrap
    }
    .c-image-wrap .c-image {
        width:auto
    }
    .c-list.flex{
      display:flex;
      flex-wrap: wrap;
      justify-content: flex-start;
    }
    .c-list.flex li{
      width: 32%;
    }
}
@media (any-hover: hover) {
    .c-menu a:hover {
        color:var(--green)
    }
    .c-menu a:hover:before {
        opacity:1
    }
    .c-list a:hover {
        text-decoration:none
    }
}

/* [ ショップカート ]
 * -------------------------------------------- */
.member_shopbox{
display: block;
width: 100%;
overflow-x: scroll;
white-space: nowrap;
-webkit-overflow-scrolling: touch;
}
.member_shopbox td{
  padding: 10px;
}
@media screen and (min-width: 768px) {
    .member_shopbox{
    display: table;
    max-width: none;
    }
}
@media screen and (max-width: 767px) {
    #frameless.tinner{
    width: 100%;
    }
    .tbox{
    width: 100%;
    overflow-x: scroll;
}
}

span.awase{display:inline-block; margin-left: 69px; width: auto; white-space: nowrap;}
@media screen and (max-width: 767px) {
	span.awase{margin-left: 59px;}
}