@charset "UTF-8";
/*
  Josh's Custom CSS Reset
  https://www.joshwcomeau.com/css/custom-css-reset/
*/
*,
*::before,
*::after {
  box-sizing: border-box;
}

* {
  margin: 0;
}

html,
body {
  height: 100%;
}

body {
  -webkit-font-smoothing: antialiased;
  line-height: 1.5;
}

img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
}

input,
button,
textarea,
select {
  font: inherit;
}

p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
}

#root,
#__next {
  isolation: isolate;
}

html {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 62.5%;
  scroll-behavior: smooth;
}

/*! デザイン幅以下スマホ用 */
@media (max-width: 360px) {
  html {
    font-size: 55.95%;
  }
}
body {
  background-color: var(--color-main-background);
}

ul {
  list-style-type: none;
  padding: 0;
}

a {
  text-decoration: none;
}

.has-visited:visited * {
  color: var(--color-gray);
}

button {
  appearance: none;
  background-color: transparent;
  border: none;
  cursor: pointer;
  padding: 0;
}

img {
  border: none;
  line-height: 0;
}

:root {
  --header-height: 85px;
  --sp-space-padding: 2rem;
  --post-icon-area: 6.8rem;
  --icon-area: 6.8rem;
  /* z-index */
  --z-index-mobile-menu: 100;
  /* color */
  --color-black: #2e2e2e;
  --color-black-02: #000000;
  --color-white: #fff;
  --color-gray: #736f6f;
  --color-brown: #a2736e;
  --color-tab: #ca2420;
  --color-tab-border: #d1cfcc;
  --color-note-border: #d1cfcc;
  --color-link-border-01: #d1cfcc;
  --color-link-disabled-01: #d1cfcc;
  --color-gray-lighter: #e3e1df;
  --color-blue-primary: #284989;
  --color-blue-lighter: #1a77e3;
  --color-pink-lighter: #fcebe4;
  --color-pink-darker: #fad6c5;
  --color-light-red-lighter: #f8aca2;
  --color-red: #d4392d;
  --color-orange: #de8012;
  --color-orange-02: #fad6c5;
  --color-green: #0dbc86;
  --color-green-02: #137870;
  --color-blue: #1271de;
  --color-main-background: #faf6f4;
  --color-text-background-blue: #5378cb;
  --color-text-background-contrast-blue: #5173c4;
  --color-background-light-blue: #97b8f8;
  --color-background-light-red: #df7b78;
  --color-background-light-pink: #faebdb;
  --color-background-light-pink-02: #f5ede9;
  --color-footer-border: #ff8686;
  --color-background-nav-belt: #fff4e8;
  --color-main: #ca2420;
  --color-base-background: #faebdb;
  --color-accent1: #5378cb;
  --color-accent2: #cb621e;
  --color-text-link-01: #a85118;
  --color-text-link-02: #bd5b1c;
  --color-underline-01: #f4fc94;
  --color-link-text-background-01: #faebdb;
  --color-link-text-background-02: #555252;
  /* font-size */
  --font-size-12: 1.2rem;
  --font-size-13: 1.3rem;
  --font-size-14: 1.4rem;
  --font-size-15: 1.5rem;
  --font-size-16: 1.6rem;
  --font-size-17: 1.7rem;
  --font-size-18: 1.8rem;
  --font-size-19: 1.9rem;
  --font-size-20: 2rem;
  --font-size-22: 2.2rem;
  --font-size-23: 2.3rem;
  --font-size-24: 2.4rem;
  --font-size-26: 2.6rem;
  --font-size-30: 3rem;
  --font-size-32: 3.2rem;
  --font-size-36: 3.6rem;
  --font-size-38: 3.8rem;
  --border-radius: 2rem;
  --border-radius-12: 1.2rem;
  --border-radius-24: 2.4rem;
  --max-width-container: 1200px;
}

@media (min-width: 1200px) {
  :root {
    --sp-space-padding: 0;
  }
}
@media (min-width: 640px) {
  .no_radius_pc {
    border-radius: unset;
  }
}
.wrapper {
  overflow: hidden;
}

@media (min-width: 1000px) {
  body.classroom-basic .wrapper {
    overflow: visible;
  }
}
.wrapper {
  background-color: var(--color-base-background);
}

body.classroom-basic .wrapper {
  background-color: var(--color-base-background);
}

@media (min-width: 640px) {
  /* hover */
  button[aria-selected=true]:hover {
    cursor: unset;
  }
  /* trantion */
  a,
  button,
  .hover__up,
  .hover__up > *,
  .hover__right,
  .hover__right-up > *,
  .hover__small-up,
  .hover__reversal__03[aria-selected=false],
  .hover__reversal_underline_blue {
    transition: all 0.3s 0.15s;
  }
  .hover__zoom-up,
  .accordion__panel#more-article-list[aria-hidden=false] .hover__zoom-up {
    transition: all 1s 0.05s;
  }
  .hover__zoom-up-02 {
    transition: all 1s 0.05s;
  }
  .hover__up {
    transition: all 0.15s 0.1s;
  }
  .hover__underline,
  .hover__add-border,
  .hover__font-weight__bold,
  .hover__reversal_underline_blue {
    transform-origin: right top;
    transition: all 0.3s 0.15s;
  }
  /* 右上に動く */
  .icon-button:hover .hover__right-up {
    transform: translate(1px, -3px);
  }
  /* 上に動く */
  .hover__up:not([aria-selected=true]),
  a .hover__up,
  button .hover__up {
    transition: transform 0.3s 0.15s;
  }
  .hover__up:not([aria-selected=true]):hover,
  a:hover .hover__up,
  button:hover .hover__up {
    transform: translateY(-5px);
  }
  a:hover .hover__small-up,
  button:hover .hover__small-up {
    transform: translateY(-3px);
  }
  /* 右に動く */
  a:hover .hover__right,
  button:hover .hover__right {
    transform: translateX(3px);
  }
  /* 下線 */
  .hover__underline:hover,
  a:hover .hover__underline,
  button:hover .hover__underline {
    text-decoration: underline;
  }
  /* 反転 */
  .hover__reversal__01 > .content__header {
    transition: background-color 0.3s 0.15s;
  }
  .hover__reversal__01:hover > .content__header {
    background-color: var(--color-main);
  }
  .hover__reversal__01 > .content__header > * {
    transition: color 0.3s 0.15s;
  }
  .hover__reversal__01:hover > .content__header > * {
    color: var(--color-white);
  }
  /* カルーセルカードの中のボタンの反転 */
  a .hover__reversal__02 {
    transition: 0.5s 0.2s;
  }
  a:hover .hover__reversal__02 {
    background: var(--color-white);
    border: 2px solid var(--color-text-background-blue);
    color: var(--color-text-background-blue);
  }
  a:hover .hover__reversal__02 > .content__header > * {
    color: var(--color-white);
  }
  /* カルーセルバレッドの反転 */
  a .carousel-card__button::after {
    transition: opacity 0.5s 0.2s;
  }
  a:hover .carousel-card__button::after {
    opacity: 1;
  }
  /* タブの反転 */
  .hover__reversal__03 {
    transition: all 0.12s 0.15s;
  }
  .hover__reversal__03[aria-selected=false]:hover {
    background: var(--color-main-background);
    border: 2px solid var(--color-tab-border);
    border-bottom: none;
    color: var(--color-tab);
  }
  .hover__reversal__04 {
    transition: background-color 0.12s 0.15s;
  }
  .hover__reversal__04:hover {
    background-color: var(--color-link-text-background-02);
  }
  /* bottom-borderの反転 */
  .hover__reversal_underline__blue:hover,
  .hover__reversal_underline__blue:hover .hover__reversal_underline__blue::after {
    border-bottom: 1px solid var(--color-text-background-blue);
  }
  /* 画像の切り替え */
  .hover__image-home:hover::after {
    opacity: 1;
  }
  /* 大きくする */
  .hover__zoom-up:hover,
  a:hover .hover__zoom-up {
    transform: scale(1.05);
  }
  .hover__zoom-up-02::before,
  .hover__zoom-up-02::after {
    transition: all 0.3s 0.15s;
  }
  .hover__zoom-up-02:hover::before,
  .hover__zoom-up-02:hover::after {
    transform: scale(1.142);
  }
  .hover__zoom-up-03 {
    transition: all 0.3s 0.15s;
  }
  a:hover .hover__zoom-up-03,
  button:hover .hover__zoom-up-03 {
    transform: scale(1.142);
  }
  /* カルーセルカードのホバー */
  a .hover__zoom-up-04 {
    transition: transform 0.5s 0.2s;
  }
  a:hover .hover__zoom-up-04 {
    transform: scale(1.015);
  }
  .hover__arrow__zoom-up {
    position: relative;
    transition-duration: 0.3s;
  }
  a:hover .hover__arrow__zoom-up::before,
  button:hover .hover__arrow__zoom-up::before {
    transform: scale(1.2);
  }
  a .hover__arrow__zoom-up::before,
  button .hover__arrow__zoom-up::before {
    background-color: var(--color-text-background-blue);
    border-radius: 50%;
    content: "";
    display: block;
    height: 100%;
    inset: 0;
    position: absolute;
    transition-duration: 0.3s;
    width: 100%;
  }
  .hover__arrow__zoom-up img {
    position: relative;
  }
  /* タブにボーダーをつける */
  .hover__add-border:hover {
    border: 2px solid var(--color-tab);
    border-bottom: none;
  }
  /* 文字の太さを太くする */
  .hover__font-weight__bold:hover {
    font-weight: bold;
  }
}
.accordion > * + * {
  margin-top: 8px;
}

.accordion__button {
  color: var(--color-black);
  display: block;
  width: 100%;
}

.accordion__button[aria-selected=true] {
  background-color: transparent;
  border: none;
  color: var(--color-black);
}

.accordion__button :last-child {
  margin-left: auto;
  margin-right: 2px;
  flex-shrink: 0;
}

.accordion__arrow-mark {
  background-image: url(/shared/images/top/icon/icon_triangle_arrow_bottom_blue_01.svg);
  content: "";
  height: 24px;
  width: 24px;
}

/* 漫画aside menu */
.accordion__button[aria-pressed=true] .accordion__mark::before {
  transform: translate(50%, -50%) rotate(-45deg);
  content: "";
  height: 8px;
  left: 18%;
  position: absolute;
  top: 57%;
}

.accordion__panel[aria-hidden=true] {
  /* max-height: 0; */
  overflow: hidden;
  margin-block: 0;
}

.accordion__panel[aria-hidden=true] * {
  line-height: 0;
  height: 0;
  margin-block: 0;
  opacity: 0;
  padding-block: 0;
  visibility: hidden;
}

.accordion__panel[aria-hidden=false] {
  overflow: auto;
  /* max-height: 100vh; */
}

/* transition: max-height 2s linear; */
@media (max-width: 999px) {
  .accordion__panel * {
    transition: opacity 0.1s linear 0.01s, padding-block 0.12s ease-out, margin-block 0.12s ease-out, line-height 0.01s ease-out, visibility 0.01s linear;
  }
}
.accordion__panel#more-article-list * {
  transition: opacity 0.1s linear 0.01s, padding-block 0.12s ease-out, margin-block 0.12s ease-out, line-height 0.01s ease-out, visibility 0.01s linear;
}

.accordion__panel::-webkit-scrollbar {
  display: none;
}

.accordion__button {
  background-color: transparent;
  border: none;
  display: flex;
  font-size: var(--font-size-16);
  padding: 0;
}

.accordion__button > * + * {
  margin-left: 8px;
}

.global-footer {
  background-color: var(--color-main);
  border-top-left-radius: 20px;
  padding-inline: 20px;
}

.global-footer__inner {
  padding-top: 40px;
}

@media (min-width: 1000px) {
  .global-footer {
    border-top-left-radius: 80px;
    padding-inline: 60px;
  }
  .global-footer__inner {
    padding-top: 64px;
  }
}
.global-footer__banner__wrapper {
  background: var(--color-white);
  border-radius: var(--border-radius-12);
  margin-bottom: 45px;
  padding-inline: 20px;
}

.global-footer__banner__wrapper > * + * {
  border-top: 1px solid var(--color-gray-lighter);
}

@media (min-width: 640px) {
  .global-footer__banner__wrapper > * + * {
    width: calc(100% - 40px);
  }
}
.global-footer__banner {
  display: flex;
  justify-content: center;
  margin-inline: auto;
  padding: 24px 0 27px;
}

@media (min-width: 640px) {
  .global-footer__banner__wrapper {
    display: flex;
    padding: 40px 0;
  }
  .global-footer__banner {
    flex: 1;
    padding: 0 40px;
    max-width: 50%;
    margin-left: inherit;
  }
  .flex_footer-banner__center {
    align-items: center;
    display: flex;
  }
  .global-footer__banner__wrapper > * + * {
    border-left: 1px solid var(--color-gray-lighter);
    border-top: none;
  }
}
@media (min-width: 1000px) {
  .global-footer__inner {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin: 0 auto;
    max-width: var(--max-width-container);
  }
}
.global-footer__logo {
  display: flex;
  justify-content: center;
  margin-bottom: 38px;
}

@media (min-width: 1000px) {
  .global-footer__content {
    width: 65%;
  }
  .flex__large-frame {
    display: flex;
  }
  body.top .flex__large-frame {
    padding-top: 40px;
  }
  .global-footer__logo {
    justify-content: left;
    width: 35%;
  }
  .flex__medium-frame {
    align-items: center;
    border-bottom: 1px solid var(--color-footer-border);
    display: flex;
    justify-content: space-between;
    padding: 0 0 40px 15px;
  }
}
@media (min-width: 1000px) {
  .global-footer__logo img {
    height: 100px;
    width: 266px;
  }
}
.global-footer__description {
  color: var(--color-white);
  font-size: var(--font-size-13);
  font-weight: 500;
  margin-bottom: 35px;
  text-align: center;
}

@media (min-width: 1000px) {
  .global-footer__description {
    font-size: var(--font-size-16);
    padding-left: 15px;
    text-align: left;
  }
}
.global-footer__list {
  display: flex;
  flex-direction: column;
  gap: 16px;
  text-align: center;
}

@media (min-width: 640px) {
  .global-footer__list {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    row-gap: 20px;
  }
}
@media (min-width: 1000px) {
  .global-footer__list {
    column-gap: 40px;
    justify-content: start;
  }
}
.global-footer__item {
  font-size: var(--font-size-14);
  font-weight: 500;
}

.global-footer__link {
  color: var(--color-white);
}

@media (min-width: 640px) {
  .global-footer__link {
    align-items: center;
    display: flex;
    flex-wrap: nowrap;
    white-space: nowrap;
  }
}
.global-footer__navigation {
  padding-bottom: 40px;
  padding-top: 40px;
}

@media (min-width: 1000px) {
  .global-footer__navigation {
    padding-left: 15px;
  }
}
/* background調整 */
body.somosomo .footer-background,
body.qa .footer-background {
  background-color: var(--color-background-light-pink);
}

.experience + .footer-background {
  overflow: hidden;
  position: relative;
}

.experience + .footer-background::before {
  background: var(--color-background-light-red);
  clip-path: ellipse(600px 594px at center);
  content: "";
  height: 1194px;
  margin: auto;
  position: absolute;
  top: 0;
  top: -322px;
  width: 100%;
}

.experience + .footer-background .global-footer {
  position: relative;
}

/* margin-top */
.mt-xs {
  margin-top: 16px;
}

.mt-s {
  margin-top: 16px;
}

.mt-m {
  margin-top: 24px;
}

.mt-l {
  margin-top: 40px;
}

.mt-xl {
  margin-top: 48px;
}

.mt-xxl {
  margin-top: 64px;
}

@media (min-width: 640px) {
  .mt-xs {
    margin-top: 24px;
  }
  .mt-s {
    margin-top: 32px;
  }
  .mt-m {
    margin-top: 40px;
  }
  .mt-l {
    margin-top: 64px;
  }
  .mt-xl {
    margin-top: 64px;
  }
  .mt-xxl {
    margin-top: 100px;
  }
}
/* margin-bottom */
.mb-xs {
  margin-bottom: 16px;
}

.mb-s {
  margin-bottom: 16px;
}

.mb-m {
  margin-bottom: 24px;
}

.mb-l {
  margin-bottom: 40px;
}

.mb-xl {
  margin-bottom: 48px;
}

.mb-xxl {
  margin-bottom: 64px;
}

@media (min-width: 640px) {
  .mb-xs {
    margin-bottom: 24px;
  }
  .mb-s {
    margin-bottom: 32px;
  }
  .mb-m {
    margin-bottom: 40px;
  }
  .mb-l {
    margin-bottom: 64px;
  }
  .mb-xl {
    margin-bottom: 64px;
  }
  .mb-xxl {
    margin-bottom: 100px;
  }
}
/* padding-bottom */
.pt-xs {
  padding-top: 16px;
}

.pt-s {
  padding-top: 16px;
}

.pt-m {
  padding-top: 24px;
}

.pt-l {
  padding-top: 40px;
}

.pt-xl {
  padding-top: 48px;
}

.pt-xxl {
  padding-top: 64px;
}

@media (min-width: 640px) {
  .pt-xs {
    padding-top: 24px;
  }
  .pt-s {
    padding-top: 32px;
  }
  .pt-m {
    padding-top: 40px;
  }
  .pt-l {
    padding-top: 64px;
  }
  .pt-xl {
    padding-top: 64px;
  }
  .pt-xxl {
    padding-top: 100px;
  }
}
/* padding-botton */
.pb-xs {
  padding-bottom: 16px;
}

.pb-s {
  padding-bottom: 16px;
}

.pb-m {
  padding-bottom: 24px;
}

.pb-l {
  padding-bottom: 40px;
}

.pb-xl {
  padding-bottom: 48px;
}

.pb-xxl {
  padding-bottom: 64px;
}

@media (min-width: 640px) {
  .pb-xs {
    padding-bottom: 24px;
  }
  .pb-s {
    padding-bottom: 32px;
  }
  .pb-m {
    padding-bottom: 40px;
  }
  .pb-l {
    padding-bottom: 64px;
  }
  .pb-xl {
    padding-bottom: 64px;
  }
  .pb-xxl {
    padding-bottom: 100px;
  }
}
/* 個別 */
.pb-50 {
  padding-bottom: 50px;
}

@media (min-width: 640px) {
  .mr-20 {
    margin-right: 20px;
  }
}
/* デザインが8の倍数で幅を取るためmtの後の数値に8をかけた後がmargin-topの数となる */
.mt-1 {
  margin-top: 8px;
}

.mt-2 {
  margin-top: 16px;
}

.mt-3 {
  margin-top: 24px;
}

.mt-4 {
  margin-top: 32px;
}

.mt-5 {
  margin-top: 40px;
}

.mt-6 {
  margin-top: 48px;
}

.mt-7 {
  margin-top: 56px;
}

.mt-8 {
  margin-top: 64px;
}

.copy-right {
  color: var(--color-white);
  padding-bottom: 24px;
  text-align: center;
}

.copy-right small {
  font-size: 11px;
  font-weight: 500;
}

@media (min-width: 1000px) {
  .copy-right br {
    display: none;
  }
}
.navigation-list {
  display: flex;
  flex-wrap: wrap;
  gap: 15px 25px;
}

@media (min-width: 1000px) {
  .navigation-list {
    gap: 20px 40px;
  }
}
.navigation-list__items {
  font-size: var(--font-size-14);
  font-weight: 500;
}

.navigation-list__link {
  align-items: center;
  color: var(--color-white);
  display: flex;
}

.navigation-list__link > .arrow {
  margin-right: 9px;
}

/* search / 検索フォーム */
.search {
  background-color: var(--color-main);
  opacity: 0.8;
  -ms-overflow-style: none;
  scrollbar-width: none;
  transition: max-height 0.2s linear;
}

.search::-webkit-scrollbar {
  display: none;
}

.search[aria-hidden=true] {
  max-height: 0;
  overflow: hidden;
}

.search[aria-hidden=false] {
  max-height: 112px;
  overflow: auto;
}

@media (min-width: 1000px) {
  .search[aria-hidden=false] {
    max-height: 120px;
  }
}
.search__inner {
  padding: 31px 20px 40px;
}

.search__form {
  border-bottom: 1px solid var(--color-white);
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  margin: 0 auto;
  max-width: 1280px;
}

.search__input {
  background-color: transparent;
  border: none;
  color: var(--color-white);
  margin-left: 1em;
  text-align: left;
  width: calc(100% - 50px);
}

@media (min-width: 640px) {
  .search__input {
    font-size: var(--font-size-24);
    height: 50px;
  }
}
@media (max-width: 639px) {
  .search__input {
    font-size: var(--font-size-16);
    height: 40px;
  }
}
.search__input::placeholder {
  color: var(--color-white);
  opacity: 0.7;
}

.search__button {
  align-items: center;
  background-color: transparent;
  border: none;
  display: flex;
  justify-content: center;
  padding: 0;
}

@media (min-width: 640px) {
  .search__button {
    height: 50px;
  }
}
@media (max-width: 639px) {
  .search__button {
    height: 40px;
  }
}
.social-meia-list {
  display: flex;
  gap: 40px;
  justify-content: center;
}

.social-meia-list__items {
  padding: 14px 14px;
  border-radius: 5px;
  background-color: var(--color-white);
}

@media (max-width: 999px) {
  .social-meia-list {
    border-bottom: 1px solid var(--color-footer-border);
    padding: 45px 0 36px;
  }
}
@media (min-width: 1000px) {
  .social-meia-list {
    margin: 0 20px;
    gap: 12px;
  }
  .social-meia-list__items {
    flex-shrink: 0;
  }
  .social-meia-list__items img {
    height: 28px;
    width: 28px;
  }
}
.icon_new-windw {
  display: inline-block;
  height: 14px;
  align-items: center;
  margin-left: 8px;
  width: 14px;
}

.article-breadcrumbs {
  display: flex;
  align-items: center;
  background-color: transparent;
  color: var(--color-gray);
}

.breadcrumbs-wrapper .article-breadcrumbs {
  padding-top: 17px;
  padding-left: 40px;
  max-width: 1360px;
  margin-inline: auto;
}

@media (min-width: 640px) {
  .breadcrumbs-wrapper .article-breadcrumbs {
    padding-top: 17px;
    padding-left: 80px;
    max-width: 1360px;
    margin-inline: auto;
  }
}

@media (max-width: 999px) {
  .article-breadcrumbs {
    padding-top: 20px;
    padding-left: 20px;
    overflow-x: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
}
@media (min-width: 1000px) {
  .article-breadcrumbs {
    padding-top: 50px;
    padding-left: 0px;
  }
}
body.article-list .article-breadcrumbs,
body.sl .article-breadcrumbs,
body.others .article-breadcrumbs {
  padding-top: 17px;
  padding-left: 40px;
  max-width: 1360px;
  margin-inline: auto;
}

@media (min-width: 640px) {
  body.article-list .article-breadcrumbs,
  body.sl .article-breadcrumbs,
  body.others .article-breadcrumbs {
    padding-left: 80px;
  }
}
@media (min-width: 640px) {
  body.sl-manga .article-breadcrumbs {
    padding-top: 45px;
  }
}
@media (min-width: 640px) and (max-width: 1199px) {
  body.sl-manga .article-breadcrumbs {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  body.sl-manga .article-breadcrumbs {
    padding-left: 120px;
    max-width: 1480px;
  }
}
.article-breadcrumbs a {
  color: var(--color-text-link-01);
  font-size: var(--font-size-13);
  width: max-content;
}

.article-breadcrumbs span {
  font-size: var(--font-size-13);
  font-weight: 500;
  width: max-content;
}

@media (max-width: 999px) {
  .article-breadcrumbs::-webkit-scrollbar {
    display: none;
  }
}
.article-breadcrumb-item {
  display: inline-flex;
}

.article-breadcrumb-item::after {
  content: "";
  background-image: url("/shared/images/icon/icon_arrow_right_gray_01.svg");
  width: 6px;
  height: 11.14px;
  margin: 5px 8px auto;
}

.article-breadcrumb-item.-home {
  top: 3px;
}

.article-breadcrumb-item.-home::after {
  margin: 2px 8px auto;
}

.article-breadcrumb-item:last-child::after {
  background-image: none;
}

.article-breadcrumbs .hover__image-home {
  position: relative;
  width: 16px;
  height: 14.4px;
  display: inline-block;
}

.hover__image-home::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 14.4px;
  background-image: url("/shared/images/icon/icon_home_orange_01.svg");
  position: absolute;
}

.hover__image-home::after {
  content: "";
  display: inline-block;
  width: 16px;
  height: 14.4px;
  background-image: url("/shared/images/icon/icon_home_red_01.svg");
  position: absolute;
  opacity: 0;
  transition: all 0.15s 0.15s;
}

.show-more-button {
  background-color: var(--color-link-text-background-01);
  border-radius: 500px;
  display: flex;
  width: -moz-fit-content;
  width: fit-content;
  color: var(--color-main);
  font-size: var(--font-size-16);
  font-weight: bold;
  padding-block: 13px;
  width: 300px;
  justify-content: center;
  position: relative;
  margin-inline: auto;
}

@media (max-width: 639px) {
  .show-more-button {
    margin-top: 24px;
  }
}
@media (min-width: 640px) {
  .show-more-button {
    margin-top: 32px;
  }
}
.show-more-button::after {
  content: "";
  width: 28px;
  height: 28px;
  display: block;
  inset-block: auto;
  position: absolute;
  right: 10px;
  background-image: url(/shared/images/icon/icon_plus_blue_01.svg);
}

.show-more-button[data-visible=hidden] {
  height: 0;
  padding-block: 0;
  margin-block: 0;
  content: none;
  line-height: 0;
  font-size: 0;
}

.show-more-button[data-visible=hidden]::after {
  content: none;
}

/* 金融そもそも講座・いま聞きたいQ&Aの記事詳細のcontent内のblankとsearch_result.htmlに使用 */
.blank {
  margin-right: 24px;
  position: relative;
}

h2 > .blank {
  color: var(--color-main);
  margin-right: 8px;
}

.blank::after {
  content: url("/shared/images/icon/icon_new_window_dark_orange_01.svg");
  height: 14px;
  margin-left: 4px;
  position: absolute;
  width: 14px;
}

@media (max-width: 639px) {
  .blank::after {
    bottom: 13px;
  }
}
@media (min-width: 640px) {
  .blank::after {
    bottom: 16px;
  }
}
h2 > .blank::after {
  contain: content;
  position: unset;
}

@media (max-width: 360px) {
  body.privacypolicy .blank::after {
    bottom: 9px;
  }
}
@media (min-width: 361px) and (max-width: 639px) {
  body.privacypolicy .blank::after {
    bottom: 13px;
  }
}
/* 記事の更新ページに使用 */
.blank-02 {
  margin-right: 24px;
  position: relative;
}

.blank-02::after {
  content: url("/shared/images/icon/icon_new_window_dark_orange_01.svg");
  height: 14px;
  margin-left: 4px;
  position: absolute;
  width: 14px;
}

@media (max-width: 639px) {
  .blank-02::after {
    bottom: 7px;
  }
}
@media (min-width: 640px) {
  .blank-02::after {
    bottom: 10px;
  }
}
.arrow::before {
  content: "";
  background-image: url(/shared/images/top/icon/icon_arrow_red__01.svg);
  background-repeat: no-repeat;
  margin-right: 8.6px;
  display: inline-flex;
  width: 11.41px;
  background-size: 11.41px 9.5px;
  flex-shrink: 0;
}

@media (max-width: 639px) {
  .arrow::before {
    height: 9.5px;
  }
}
@media (min-width: 640px) {
  .arrow::before {
    height: 11.41px;
  }
}
.link__text__orange-01 {
  color: var(--color-text-link-02);
}

@media (max-width: 639px) {
  .link__text__orange-01 {
    font-size: var(--font-size-14);
  }
}
@media (min-width: 640px) {
  .link__text__orange-01 {
    font-size: var(--font-size-16);
  }
}
.link__text__black-01 {
  color: var(--color-black);
  font-weight: 500;
}

@media (max-width: 639px) {
  .link__text__black-01 {
    font-size: var(--font-size-14);
  }
}
@media (min-width: 640px) {
  .link__text__black-01 {
    font-size: var(--font-size-16);
  }
}
.text__bold {
  font-weight: bold;
}

@media (max-width: 639px) {
  .container-wrapper {
    margin-top: 16px;
  }
}
@media (min-width: 640px) {
  .container-wrapper {
    margin-top: 40px;
  }
}
.wrapper:has(.keyword-value) .container-wrapper {
  margin-top: 10px;
}
@media (min-width: 1000px) {
  .wrapper:has(.keyword-value) .container-wrapper {
    margin-top: 0px;
  } 
}
.container {
  background-color: var(--color-main-background);
}

.-transparent .container {
  background-color: transparent;
}

.container.-two-color {
  background-color: var(--color-base-background);
  max-width: 100%;
  overflow: hidden;
  position: relative;
}

.container.-two-color::before {
  background: var(--color-background-light-red);
  bottom: 0;
  clip-path: circle(75% at 50% 122%);
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  width: 100%;
}

@media (min-width: 1000px) {
  .container {
    margin-inline: auto;
    max-width: var(--max-width-container);
  }
  body.top .container {
    max-width: 1280px;
  }
  body.top .container.-two-color {
    max-width: unset;
  }
}
@media (min-width: 640px) {
  .container.-two-color {
    display: flex;
    justify-content: center;
  }
  .container.-two-color::before {
    bottom: 0;
    /* clip-path: circle(54% at 50% 100%); */
    clip-path: ellipse(600px 594px at center);
    height: 1194px;
    margin: auto;
    top: 200%;
    /* width: 1200px; */
    width: 100%;
  }
}
.container--accent {
  background-color: var(--color-base-background);
}

@media (min-width: 1000px) {
  .container--max-width {
    margin: 0 auto;
    max-width: var(--max-width-container);
  }
}
.container--border-round {
  background-color: var(--color-white);
  border: solid 2px var(--color-main);
  border-radius: 20px;
  padding: 20px;
}

@media (min-width: 640px) {
  .container--border-round {
    padding: 48px 54px;
  }
}
@media (max-width: 639px) {
  .container__inner {
    padding-inline: var(--sp-space-padding);
  }
}
@media (min-width: 640px) {
  .container__inner {
    padding-inline: 40px;
  }
}
.container__inner--colum {
  display: flex;
  flex-direction: column;
  gap: 28px;
}

@media (min-width: 640px) {
  .container__inner--colum {
    align-items: center;
    column-gap: 180px;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    row-gap: 50px;
  }
}
@media (min-width: 1000px) {
  .container__main-side__wrapper {
    display: flex;
    flex-wrap: wrap;
  }
  .container__side {
    flex-shrink: 0;
    width: 200px;
  }
  .container__main {
    width: 100%;
  }
}
@media (min-width: 1200px) {
  .container__main-side__wrapper {
    flex-wrap: nowrap;
  }
}
@media (min-width: 1280px) {
  .container__main-side__wrapper {
    gap: 82px;
  }
}
.container--left-radius {
  background-color: var(--color-main-background);
  border-top-left-radius: 40px;
  padding-left: var(--sp-space-padding);
}

@media (min-width: 640px) {
  body.top .container--left-radius {
    padding-left: 40px;
  }
}
.container--left-radius.-transparent {
  background-color: var(--color-white);
}

@media (max-width: 639px) {
  body.somosomo .container--left-radius,
  body.qa .container--left-radius {
    padding-inline: var(--sp-space-padding);
  }
}
@media (min-width: 640px) {
  body.somosomo .container--left-radius,
  body.qa .container--left-radius {
    padding-inline: 80px;
  }
}
@media (max-width: 999px) {
  body.somosomo .container--left-radius,
  body.qa .container--left-radius {
    padding-bottom: 48px;
  }
}
@media (min-width: 1000px) {
  body.somosomo .container--left-radius,
  body.qa .container--left-radius {
    padding-bottom: 100px;
  }
}
@media (min-width: 640px) {
  body.article-list .container--left-radius {
    padding-inline: 0px;
  }
}
@media (min-width: 640px) {
  .container--left-radius {
    background-color: var(--color-main-background);
    border-top-left-radius: 80px;
  }
}
/* 記事一覧ページに使用 */
.container--left-radius-02 {
  background-color: var(--color-white);
}

@media (max-width: 639px) {
  .container--left-radius-02 {
    border-top-left-radius: 40px;
  }
}
@media (min-width: 640px) {
  .container--left-radius-02 {
    border-top-left-radius: 80px;
  }
}
.container__description {
  color: var(--color-black);
  font-size: var(--font-size-14);
}

@media (min-width: 640px) {
  .container__description {
    font-size: var(--font-size-18);
    padding-bottom: 8px;
    text-align: center;
  }
}
.container--no-right-padding {
  padding-right: 0;
}

body.top .box {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  align-items: center;
}

@media (min-width: 1000px) {
  .box__balloon__wrapper {
    margin-bottom: 40px;
  }
  .box__balloon {
    margin-top: 50px;
  }
}
body.top .box > * + * {
  margin-top: 6px;
}

body.top .box > .balloon + * {
  margin-top: 18px;
  min-width: 420px;
}

.box__bottom-icon {
  margin-top: 18px;
}

@media (min-width: 640px) {
  .box__bottom-icon img {
    height: 76px;
    width: 76px;
  }
}
.box__experience {
  text-align: center;
}

.box__experience::before {
  background-image: url("/shared/images/top/icon/icon_decoration__01.svg");
  background-repeat: no-repeat;
  content: "";
  display: block;
  height: 22px;
  margin: 0 auto 10px;
  width: 57px;
}

.text--featured {
  font-size: var(--font-size-16);
  font-weight: bold;
  letter-spacing: 0.12em;
  position: relative;
  color: var(--color-black);
}

@media (min-width: 640px) {
  .text--featured {
    padding-top: 15px;
  }
  .box__anchor-link .text--featured {
    padding-top: 0;
  }
}
.text--featured::before {
  background-color: var(--color-accent1);
  border-radius: 100px;
  bottom: 2px;
  content: "";
  height: 13px;
  left: -16px;
  position: absolute;
  transform: skewX(30deg);
  width: 2.5px;
}

.text--featured::after {
  background-color: var(--color-accent1);
  border-radius: 100px;
  bottom: 2px;
  content: "";
  height: 13px;
  position: absolute;
  right: -10px;
  transform: skewX(-30deg);
  width: 2.5px;
}

.tag {
  background-color: var(--color-white);
  border: solid 1px var(--color-gray-lighter);
  border-radius: 4px;
  font-feature-settings: "palt";
  font-size: var(--font-size-12);
  font-weight: bold;
  padding: 2px 6px;
  width: -moz-fit-content;
  width: fit-content;
  line-height: 1.3;
}

@media (max-width: 375px) {
  .tag {
    padding-inline: 2px;
  }
}
@media (max-width: 999px) {
  .tag {
    margin-inline: auto;
    margin-top: 4px;
  }
}
.tag--red {
  color: var(--color-red);
}

.tag--blue-01 {
  color: var(--color-blue);
}

.tag--blue-02 {
  color: var(--color-blue-lighter);
}

.tag--green {
  color: var(--color-green);
}

.tag--orange {
  color: var(--color-orange);
}

.tag--undefined {
  display: none;
}

.heading--main-color {
  color: var(--color-main);
  font-size: var(--font-size-22);
}

@media (min-width: 640px) {
  .heading--main-color {
    font-size: var(--font-size-32);
  }
}
.post {
  background-color: var(--color-white);
  border: solid 2px var(--color-main);
  border-radius: var(--border-radius);
  height: 100%;
}

.post__header {
  position: relative;
}

.post__tag-list {
  left: 20px;
  position: absolute;
  top: 10px;
}

.post__icon {
  border: solid 2px var(--color-main);
  border-radius: 50%;
  bottom: 20px;
  overflow: hidden;
  position: absolute;
  right: 16px;
}

.post__icon img {
  background: var(--color-white);
  height: var(--post-icon-area);
  padding: 12px;
  width: var(--post-icon-area);
}

.post__figure {
  border-bottom: solid 2px var(--color-main);
}

@media (min-width: 640px) {
  .post__figure {
    border-radius: 1.8rem 1.8rem 0 0;
    max-height: 180px;
    overflow: hidden;
  }
}
.post__figure-image {
  border-radius: 1.8rem 1.8rem 0 0;
  max-height: 142px;
  object-fit: cover;
  width: 100%;
}

@media (min-width: 640px) {
  .post__figure-image {
    max-height: 180px;
  }
}
.post__body {
  background: var(--color-white);
  border-radius: 0 0 1.8rem 1.8rem;
  padding: 0 2rem 1.6rem;
}

.experience .post__body {
  padding-bottom: 2.4rem;
}

.post__body > * + * {
  margin-top: 1.1rem;
}

.post__title {
  color: var(--color-black);
  font-size: var(--font-size-18);
  padding: 1.6rem 2rem 0.9rem;
}

.post__description {
  font-size: var(--font-size-14);
  font-weight: 500;
  color: var(--color-black);
}

.post__link-items {
  padding-bottom: 0.8rem;
  padding-top: 0.8rem;
}

.post__link {
  color: var(--color-black);
  display: flex;
  font-size: var(--font-size-14);
}

.post__link > * + * {
  margin-left: 6px;
}

.post-list {
  display: flex;
  flex-direction: column;
  gap: 24px;
  position: relative;
}

.post-list__link {
  display: block;
  height: 100%;
}

@media (min-width: 640px) {
  .post-list {
    flex-direction: row;
    justify-content: center;
  }
  .post-list > * + * {
    margin-left: 20px;
  }
}
@media (min-width: 1000px) {
  .post-list {
    gap: 28px;
  }
}
@media (min-width: 640px) {
  .post-list__items {
    flex: 1;
    max-width: 446px;
  }
}
.area-category-description-01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 16px;
  max-width: 1360px;
  margin-inline: auto;
}

@media (max-width: 639px) {
  .area-category-description-01 {
    margin-top: 8px;
    margin-bottom: 24px;
    padding-inline: 20px;
  }
  body.sl .area-category-description-01 {
    margin-bottom: 23px;
  }
  body.others .area-category-description-01 {
    margin-top: 16px;
    margin-bottom: 23px;
  }
  body.sl-manga .area-category-description-01 {
    margin-bottom: 4px;
  }
}
@media (min-width: 640px) {
  .area-category-description-01 {
    margin-top: 22px;
    margin-bottom: 30px;
    padding-inline: 46px;
  }
  body.sl .area-category-description-01 {
    margin-bottom: 24px;
  }
  body.others .area-category-description-01 {
    margin-bottom: 31px;
    padding-inline: 80px;
  }
  body.sl-manga .area-category-description-01 {
    margin-top: 0;
    padding-inline: 0;
    margin-bottom: 8px;
  }
}
.link-rounded-corners-01-wrapper {
  text-align: center;
}

@media (max-width: 639px) {
  .link-rounded-corners-01-wrapper {
    margin-top: 16px;
  }
}
@media (min-width: 640px) {
  .link-rounded-corners-01-wrapper {
    margin-top: 32px;
  }
}
.link-rounded-corners-01 {
  border-radius: 500px;
  font-weight: bold;
  display: inline-flex;
  justify-content: center;
  align-items: center;
}

.link-rounded-corners-01.-white {
  background-color: var(--color-white);
  border: 2px solid var(--color-link-border-01);
  font-size: var(--font-size-16);
  color: var(--color-black);
  width: 100%;
  height: 48px;
}

.link-rounded-corners-01.-light-orange {
  background-color: var(--color-base-background);
  font-size: var(--font-size-16);
  color: var(--color-main);
  width: 300px;
  height: 48px;
}

.link-rounded-corners-01 {
  position: relative;
}

/* iconの設定 */
.link-rounded-corners-01::after {
  content: "";
  width: 28px;
  height: 28px;
  display: block;
  inset-block: auto;
  position: absolute;
  right: 10px;
  background-repeat: no-repeat;
}

.link-rounded-corners-01.-arrow-right-upper-red::after {
  background-image: url(/shared/images/icon/icon_arrow_right_upper_red_01.svg);
}

.link-rounded-corners-01.-arrow-right-upper-blue::after {
  background-image: url(/shared/images/icon/icon_arrow_right_upper_blue_01.svg);
}

.link-rounded-corners-01.-new-window::after {
  background-image: url(/shared/images/icon/icon_new_window_white_circle_red.svg);
}

.list-arrow-02 {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.list-arrow-02__link {
  color: var(--color-black);
  font-weight: 500;
}

@media (max-width: 639px) {
  .list-arrow-02__link {
    font-size: var(--font-size-14);
  }
}
@media (min-width: 640px) {
  .list-arrow-02__link {
    font-size: var(--font-size-16);
  }
}
.heading-2-01 {
  color: var(--color-main);
  font-weight: bold;
  text-align: center;
}

@media (max-width: 639px) {
  .heading-2-01 {
    font-size: var(--font-size-24);
    padding-top: 16px;
  }
}
@media (min-width: 640px) {
  .heading-2-01 {
    font-size: var(--font-size-32);
    padding-top: 64px;
  }
}
.heading-2-02 {
  color: var(--color-main);
  font-weight: bold;
  text-align: center;
  padding-top: 24px;
}

@media (max-width: 639px) {
  .heading-2-02 {
    font-size: var(--font-size-20);
  }
}
@media (min-width: 640px) {
  .heading-2-02 {
    font-size: var(--font-size-23);
  }
}
.heading-2-03 {
  color: var(--color-main);
  font-weight: bold;
  text-align: center;
}

@media (max-width: 639px) {
  .heading-2-03 {
    font-size: var(--font-size-24);
  }
}
@media (min-width: 640px) {
  .heading-2-03 {
    font-size: var(--font-size-32);
  }
}
/* Q&Aの更新一覧 */
.heading-2-04 {
  color: var(--color-main);
  font-weight: bold;
  text-align: center;
}

@media (max-width: 639px) {
  .heading-2-04 {
    font-size: var(--font-size-24);
    padding-top: 23px;
  }
}
@media (min-width: 640px) {
  .heading-2-04 {
    font-size: var(--font-size-32);
    padding-top: 73px;
  }
}
/* aboutページの最初のsectionのh2 */
.heading-2-05 {
  color: var(--color-black);
  font-weight: bold;
}

@media (max-width: 639px) {
  .heading-2-05 {
    font-size: var(--font-size-20);
    line-height: 1.6;
  }
}
@media (min-width: 640px) {
  .heading-2-05 {
    font-size: var(--font-size-22);
    line-height: 1.636;
  }
}
/* aboutページの2つ目以降のsectionのh2 */
.heading-2-06 {
  color: var(--color-main);
  font-weight: bold;
  border-bottom: solid 1px var(--color-main);
  padding-bottom: 12px;
}

@media (max-width: 639px) {
  .heading-2-06 {
    font-size: var(--font-size-24);
    line-height: 1.5;
  }
}
@media (min-width: 640px) {
  .heading-2-06 {
    font-size: var(--font-size-32);
    line-height: 1.468;
  }
}
.heading-3-04 {
  color: var(--color-main);
  font-weight: bold;
  text-align: center;
  font-size: var(--font-size-23);
}

@media (max-width: 639px) {
  .heading-3-04 {
    padding-top: 24px;
    padding-inline: 16px;
  }
}
@media (min-width: 640px) {
  .heading-3-04 {
    padding-top: 32px;
    padding-inline: 24px;
  }
}
/* sitemapページのサブタイトル */
.heading-3-05 {
  color: var(--color-gray);
  font-weight: bold;
}

@media (max-width: 639px) {
  .heading-3-05 {
    font-size: var(--font-size-14);
  }
}
@media (min-width: 640px) {
  .heading-3-05 {
    font-size: var(--font-size-16);
  }
}
.heading-3-05__link {
  color: var(--color-black);
  font-weight: bold;
  display: flex;
  align-items: baseline;
}

@media (max-width: 639px) {
  .heading-3-05__link {
    font-size: var(--font-size-14);
  }
}
@media (min-width: 640px) {
  .heading-3-05__link {
    font-size: var(--font-size-16);
  }
}
.content-others-01 {
  background-color: var(--color-main-white);
  background-image: linear-gradient(to right, var(--color-brown) 6px, transparent 6px);
  background-size: 12px 2px;
  background-repeat: repeat-x;
}

@media (max-width: 639px) {
  .content-others-01 {
    padding-inline: 20px;
    padding-bottom: 64px;
  }
}
@media (min-width: 640px) {
  .content-others-01 {
    padding-inline: 80px;
    padding-bottom: 100px;
  }
}
/* othersページ */
.category-name-01 {
  font-size: var(--font-size-16);
  color: var(--color-main);
  font-weight: bold;
  display: block;
}

.category-title-03 {
  color: var(--color-main);
  font-weight: bold;
}

@media (max-width: 639px) {
  .category-title-03 {
    font-size: var(--font-size-26);
  }
}
@media (min-width: 640px) {
  .category-title-03 {
    font-size: var(--font-size-38);
  }
}
.text-404 {
  max-width: 1000px;
  margin-inline: auto;
  width: 100%;
}

@media (max-width: 639px) {
  .text-404 {
    padding-top: 24px;
  }
}
@media (min-width: 640px) {
  .text-404 {
    padding-top: 64px;
  }
}
.text-404__paragraph {
  color: var(--color-black);
  line-height: 2;
}

@media (max-width: 639px) {
  .text-404__paragraph {
    font-size: var(--font-size-16);
  }
}
@media (min-width: 640px) {
  .text-404__paragraph {
    font-size: var(--font-size-18);
  }
}
@media (max-width: 639px) {
  .text-404__paragraph:nth-child(n+2) {
    margin-top: 2em;
  }
}
@media (min-width: 640px) {
  .text-404__paragraph:nth-child(n+2) {
    margin-top: 2em;
  }
}
.text-404 .text-404__link-wrapper {
  display: flex;
  justify-content: center;
  margin-top: 6em;
}

.section-primary {
  max-width: 1000px;
  margin-inline: auto;
  width: 100%;
}

@media (max-width: 639px) {
  .section-primary {
    padding-top: 24px;
  }
}
@media (min-width: 640px) {
  .section-primary {
    padding-top: 64px;
  }
}
.section-primary__heading {
  color: var(--color-main);
  font-weight: bold;
  border-bottom: solid 1px var(--color-main);
  padding-bottom: 12px;
}

@media (max-width: 639px) {
  .section-primary__heading {
    font-size: var(--font-size-24);
    line-height: 1.5;
  }
}
@media (min-width: 640px) {
  .section-primary__heading {
    font-size: var(--font-size-32);
    line-height: 1.468;
  }
}
.section-primary__text {
  margin-top: 24px;
}

.section-primary__paragraph {
  color: var(--color-black);
  line-height: 2;
  word-break: break-all;
}

@media (max-width: 639px) {
  .section-primary__paragraph {
    font-size: var(--font-size-16);
  }
}
@media (min-width: 640px) {
  .section-primary__paragraph {
    font-size: var(--font-size-18);
  }
}
.section-primary__link {
  color: var(--color-text-link-02);
}

.section-primary__paragraph + .section-primary__list,
.section-primary__list + .section-primary__paragraph {
  margin-top: 2em;
}

.section-primary__list .list-with-decimal > li::marker {
  font-weight: bold;
}

.section-primary__list .list-with-decimal .list-with-decimal-round-brackets {
  gap: 1.2em;
}

.section-primary__list .list-with-decimal .list-with-decimal-round-brackets .list-with-marker {
  gap: 0.2em;
}

.section-primary__list {
  line-height: 2;
  overflow-wrap: break-word;
}

@media (max-width: 639px) {
  .section-primary__list {
    font-size: var(--font-size-16);
  }
}
@media (min-width: 640px) {
  .section-primary__list {
    font-size: var(--font-size-18);
  }
}
.section-primary__list-heading {
  font-weight: bold;
  text-decoration: underline;
}

@media (max-width: 639px) {
  .text-about-01 {
    margin-top: 16px;
  }
}
@media (min-width: 640px) {
  .text-about-01 {
    margin-top: 23px;
  }
}
.text-about-01__paragraph {
  color: var(--color-black);
  line-height: 2;
}

@media (max-width: 639px) {
  .text-about-01__paragraph {
    font-size: var(--font-size-16);
  }
}
@media (min-width: 640px) {
  .text-about-01__paragraph {
    font-size: var(--font-size-18);
  }
}
.text-about-01__paragraph:nth-child(n+2) {
  margin-top: 2em;
}

.section-about-01 {
  max-width: 1000px;
  width: 100%;
  margin-inline: auto;
}

@media (max-width: 639px) {
  .section-about-01 {
    padding-top: 24px;
  }
}
@media (min-width: 640px) {
  .section-about-01 {
    padding-top: 64px;
  }
}
.section-about-02 {
  max-width: 1000px;
  width: 100%;
  margin-inline: auto;
}

@media (max-width: 639px) {
  .section-about-02 {
    padding-top: 40px;
  }
}
@media (min-width: 640px) {
  .section-about-02 {
    padding-top: 64px;
  }
}
.section-about-03 {
  max-width: 1000px;
  width: 100%;
  margin-inline: auto;
}

@media (max-width: 639px) {
  .section-about-03 {
    padding-top: 48px;
  }
}
@media (min-width: 640px) {
  .section-about-03 {
    padding-top: 64px;
  }
}
.definition-with-colon-01__list {
  color: var(--color-black);
  line-height: 2;
  display: flex;
  flex-wrap: wrap;
}

@media (max-width: 639px) {
  .definition-with-colon-01__list {
    font-size: var(--font-size-16);
  }
}
@media (min-width: 640px) {
  .definition-with-colon-01__list {
    font-size: var(--font-size-18);
  }
}
.definition-with-colon-01__term {
  flex-shrink: 0;
  width: 4.3em;
  margin-right: 30px;
}

.definition-with-colon-01__term::after {
  content: ":";
  display: inline-block;
}

.box-about-01 {
  margin-top: 24px;
  display: flex;
}

@media (max-width: 639px) {
  .box-about-01 {
    flex-direction: column;
    gap: 24px;
  }
}
@media (min-width: 640px) {
  .box-about-01 {
    gap: 40px;
  }
}
.box-about-01__image-wrapper {
  flex-shrink: 0;
}

.box-about-01__image {
  margin-inline: auto;
}

.box-about-02 {
  margin-top: 24px;
}

.box-about-02__paragraph {
  color: var(--color-black);
  line-height: 2;
}

@media (max-width: 639px) {
  .box-about-02__paragraph {
    font-size: var(--font-size-14);
  }
}
@media (min-width: 640px) {
  .box-about-02__paragraph {
    font-size: var(--font-size-16);
  }
}
@media (max-width: 639px) {
  .box-about-03__title {
    font-size: var(--font-size-14);
  }
}
@media (min-width: 640px) {
  .box-about-03__title {
    font-size: var(--font-size-16);
  }
}
.box-about-03__title {
  color: var(--color-gray);
  font-weight: bold;
  margin-bottom: 16px;
}

@media (max-width: 639px) {
  .box-about-03__title {
    font-size: var(--font-size-14);
  }
}
@media (min-width: 640px) {
  .box-about-03__title {
    font-size: var(--font-size-16);
  }
}
.list-with-black-circle-01-wrapper {
  margin-top: 24px;
}

.list-with-black-circle-01 {
  display: flex;
  flex-direction: column;
}

@media (max-width: 639px) {
  .list-with-black-circle-01 {
    gap: 1.8em;
  }
}
@media (min-width: 640px) {
  .list-with-black-circle-01 {
    gap: 2.2em;
  }
}
.list-with-black-circle-01__item {
  color: var(--color-black);
  text-indent: -16px;
  padding-left: 16px;
}

@media (max-width: 639px) {
  .list-with-black-circle-01__item {
    font-size: var(--font-size-14);
    line-height: 1.714;
  }
}
@media (min-width: 640px) {
  .list-with-black-circle-01__item {
    font-size: var(--font-size-16);
    line-height: 1.625;
  }
}
.list-with-black-circle-01__item::before {
  content: "";
  width: 8px;
  height: 8px;
  display: inline-block;
  background-color: var(--color-gray);
  border-radius: 50%;
  margin-right: 8px;
}

.list-with-marker {
  display: flex;
  flex-direction: column;
  gap: 2.2em 0;
  width: 100%;
}

@media (max-width: 639px) {
  .list-with-marker {
    padding-inline-start: 2em;
  }
}
.list-with-marker > li {
  list-style-type: none;
  position: relative;
}

.list-with-marker > li > .marker {
  display: inline-block;
  position: absolute;
  top: 0;
  left: -2em;
  width: 1.25em;
}

.list-with-decimal {
  display: flex;
  flex-direction: column;
  gap: 2.2em 0;
  width: 100%;
}

@media (max-width: 639px) {
  .list-with-decimal {
    padding-inline-start: 20px;
  }
}
.list-with-decimal > li {
  list-style-type: decimal;
}

.list-with-decimal-round-brackets {
  display: flex;
  flex-direction: column;
  gap: 2.2em 0;
  width: 100%;
}

@media (max-width: 639px) {
  .list-with-decimal-round-brackets {
    padding-inline-start: 1.8em;
  }
}
.list-with-decimal-round-brackets > li {
  list-style-type: none;
  counter-increment: cnt;
  position: relative;
}

.list-with-decimal-round-brackets > li::before {
  display: marker;
  content: "(" counter(cnt) ") ";
  position: absolute;
  top: 0;
  left: -1.8em;
}

.list-arrow-wrapper-01 {
  margin-top: 24px;
}

@media (max-width: 639px) {
  .list-arrow-wrapper-01 .blank::after {
    bottom: 4px;
  }
}
@media (min-width: 640px) {
  .list-arrow-wrapper-01 .blank::after {
    bottom: 9px;
  }
}
.list-arrow-wrapper-02 {
  margin-top: 16px;
}

@media (max-width: 639px) {
  .list-arrow-wrapper-02 .blank::after {
    bottom: 4px;
  }
}
@media (min-width: 640px) {
  .list-arrow-wrapper-02 .blank::after {
    bottom: 9px;
  }
}
.section-sitemap-01 {
  max-width: 1000px;
  width: 100%;
  margin-inline: auto;
}

@media (max-width: 639px) {
  .section-sitemap-01 {
    padding-top: 24px;
  }
}
@media (min-width: 640px) {
  .section-sitemap-01 {
    padding-top: 64px;
  }
}
.section-list-arrow-01-wrapper {
  display: flex;
  flex-wrap: wrap;
}

@media (max-width: 639px) {
  .section-list-arrow-01-wrapper {
    gap: 32px;
    margin-top: 27px;
  }
}
@media (min-width: 640px) {
  .section-list-arrow-01-wrapper {
    gap: 48px 50px;
    margin-top: 24px;
  }
}
@media (max-width: 639px) {
  .section-list-arrow-01 {
    max-width: 300px;
    width: 100%;
  }
}
@media (min-width: 640px) and (max-width: 1199px) {
  .section-list-arrow-01 {
    width: calc(50% - 50px);
    min-width: 300px;
  }
}
@media (min-width: 1200px) {
  .section-list-arrow-01 {
    max-width: 300px;
    width: 100%;
  }
}
.section-list-arrow-03-wrapper {
  display: flex;
  flex-wrap: wrap;
}

@media (max-width: 639px) {
  .section-list-arrow-03-wrapper {
    gap: 16px;
    margin-top: 27px;
  }
}
@media (min-width: 640px) {
  .section-list-arrow-03-wrapper {
    gap: 16px 50px;
    margin-top: 24px;
  }
}
.section-list-arrow-03 {
  max-width: 300px;
  width: 100%;
}

.list-arrow-03 {
  display: flex;
  gap: 16px 50px;
  flex-wrap: wrap;
}

.list-arrow-03__item {
  display: flex;
  align-items: baseline;
}

@media (min-width: 640px) and (max-width: 999px) {
  .list-arrow-03__item {
    width: 100%;
    min-width: 300px;
  }
}
@media (min-width: 1000px) {
  .list-arrow-03__item {
    width: calc(50% - 50px);
    min-width: 300px;
  }
}
.list-arrow-03__link {
  color: var(--color-black);
  font-weight: 500;
}

@media (max-width: 639px) {
  .list-arrow-03__link {
    font-size: var(--font-size-14);
  }
}
@media (min-width: 640px) {
  .list-arrow-03__link {
    font-size: var(--font-size-16);
  }
}
.list-arrow-03__link.blank {
  word-break: break-all;
}

.box-sitemap-01 {
  max-width: 1000px;
  width: 100%;
  margin-inline: auto;
  border-top: solid 1px var(--color-main);
  margin-top: 48px;
  padding-top: 16px;
}

/* 一番最後 */
@media (max-width: 999px) {
  .only-pc {
    display: none;
  }
}
@media (min-width: 1000px) {
  .only-sp-tablet {
    display: none;
  }
}
/**
* stockmovie.html renewal 23/02
*/
.stockmovie__movie-list {
  margin-bottom: 4rem;
}

.stockmovie__top img {
  margin: 0 auto;
}

.stockmovie__movie-list li {
  display: flex;
  align-items: flex-start;
  margin-bottom: 4rem;
}

.stockmovie__movie-list a {
  transform-origin: right top;
  transition: all 0.3s 0.15s;
}

.stockmovie__movie-list a:hover {
  text-decoration: underline;
}

.stockmovie__movie-list span {
  color: var(--color-black);
  font-size: var(--font-size-16);
  font-weight: bold;
  overflow: hidden;
}

.stockmovie__movie-list p {
  color: var(--color-gray);
  font-size: var(--font-size-14);
  font-weight: 500;
}

.stockmovie__movie-list img {
  width: 100%;
}

.stockmovie__movie-list div:first-child {
  margin-right: 0.8rem;
  max-width: 32%;
}

.stockmovie__movie-list div:last-child {
  flex: 1;
  padding-left: 3rem;
}

.stockmovie__movie-list div:last-child p {
  display: none;
  margin-bottom: 0;
}

.stockmovie__box {
  margin-top: 2rem;
}

.stockmovie__box dt {
  font-size: 1.1rem;
  padding: 0.5rem 0 0.8rem 0;
  text-align: center;
}

.stockmovie__box dd {
  line-height: 1.6;
}

@media screen and (min-width: 1000px) {
  .stockmovie__top {
    margin: 100px 0 50px;
  }
  .stockmovie__movie-list {
    margin-bottom: 100px;
  }
  .stockmovie__movie-list div:first-child {
    width: 200px;
  }
  .stockmovie__movie-list div:last-child a {
    display: inline-block;
    margin-bottom: 14px;
  }
  .stockmovie__movie-list div:last-child p {
    display: block;
  }
  .stockmovie__box {
    margin-top: 0;
  }
  .stockmovie__box dt {
    font-size: 20px;
    padding: 0.5rem 0 0.8rem 0;
    text-align: center;
  }
}
/**
* manekame.html renewal 24/06
*/
body.manekame picture img {
  margin-inline: auto;
}

@media (min-width: 640px) {
  body.manekame .category-title-03 {
    font-size: var(--font-size-36);
  }
}
.pager {
  font-weight: bold;
  font-size: 0;
  text-align: center;
  padding-left: 0;
}

.pager li {
  display: inline-block;
  line-height: 30px;
  line-height: 2.143rem;
  font-size: 14px;
  font-size: 1rem;
  width: 30px;
  width: 2.143rem;
  margin: 0 5px;
  margin: 0 0.3571rem;
}

.pager a {
  color: var(--color-main) !important;
  display: block;
  border-radius: 0.1429rem;
  -webkit-transition: color 0.2s, background-color 0.2s;
  transition: color 0.2s, background-color 0.2s;
}

.pager a:hover {
  color: #fff!important;
  background-color: var(--color-main);
}

.pager__current {
  color: #fff;
  background-color: var(--color-main);
  border-radius: 0.1429rem;
}

.pager__prev a:hover, .pager__next a:hover {
  background-color: #fff;
}

.pager__prev span, .pager__next span {
  font-size: 0;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: 0.6429rem;
  text-indent: -9999px;
  vertical-align: middle;
  width: 9px;
  width: 0.6429rem;
  height: 14px;
  height: 1rem;
  content: "";
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}

.pager__prev span:hover, .pager__next span:hover {
  opacity: 0.8;
}

.pager__prev span {
  background-image: url(../../images/common/ico-prev-red.png);
}

.pager__next span {
  background-image: url(../../images/common/ico-next-red.png);
}

.pager li {
  line-height: 40px;
  font-size: 20px;
  width: 40px;
  margin: 0 5px;
  border-radius: 3px;
}

.pager__current {
  border-radius: 3px;
}

.pager__prev span, .pager__next span {
  background-size: 12px;
  width: 12px;
  height: 19px;
}

/**
 * modal
 */
.modal__movie-yt {
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0;
  top: 0;
  text-align: center;
  z-index: 10000;
  display: none;
  opacity: 0;
  transition: all 0.5s linear;
}

.modal__movie-yt:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.modal__movie-yt .bg__movie-yt {
  width: 100%;
  height: 100%;
  opacity: 0.7;
  position: absolute;
  left: 0;
  top: 0;
  background: #000;
}

.modal__movie-yt .container__movie-yt {
  width: 100%;
  max-width: 900px;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  box-sizing: border-box;
  position: relative;
}

.modal__movie-yt .btn__close-movie-yt {
  width: 24px;
  height: 24px;
  background: #000;
  border: solid 2px #fff;
  border-radius: 50%;
  cursor: pointer;
  position: absolute;
  top: -34px;
  right: 0;
}

.modal__movie-yt .btn__close-movie-yt:before {
  content: "";
  width: 20px;
  height: 0;
  border-top: solid 1px #fff;
  border-bottom: solid 1px #fff;
  transform: rotate(45deg);
  position: absolute;
  left: 0;
  top: 9px;
}

.modal__movie-yt .btn__close-movie-yt:after {
  content: "";
  width: 20px;
  height: 0;
  border-top: solid 1px #fff;
  border-bottom: solid 1px #fff;
  transform: rotate(-45deg);
  position: absolute;
  left: 0;
  top: 9px;
}

.modal__movie-yt .player__movie-yt {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%;
  background: #000;
  position: relative;
}

.modal__movie-yt iframe, video {
  width: 100%;
  height: 100%;
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  background: #000;
}

.modal__movie-yt.is-active {
  opacity: 1;
  display: block;
  animation: show-modal__movie-yt 0.5s linear 0s;
}

@keyframes show-modal__movie-yt {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
body.kidsevent2023 :where(main) .container {
  background-color: #fff;
  max-width: none;
}

body.kidsevent2023 :where(main) .container .container__inner {
  margin-inline: auto;
  max-width: var(--max-width-container);
}

body.kidsevent2023 :where(main) .container:last-child {
  padding-bottom: 40px;
}

@media (min-width: 640px) {
  body.kidsevent2023 :where(main) .container:last-child {
    padding-bottom: 60px;
  }
}
body.kidsevent2023 .head__kidsevent2023 {
  background-image: url(/shared/images/event/image_kidsevent2023_head__bg.png);
  background-position: 50% 0;
  background-repeat: repeat-x;
  background-size: 200%;
}

@media (min-width: 640px) {
  body.kidsevent2023 .head__kidsevent2023 {
    background-size: min(100%, 1000px);
  }
}
body.kidsevent2023 .head__kidsevent2023 .container__inner {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 50px 10px;
  padding-block: 10px 40px;
}

@media (min-width: 640px) {
  body.kidsevent2023 .head__kidsevent2023 .container__inner {
    flex-direction: row;
    justify-content: space-between;
    margin-inline: auto;
    max-width: 1080px;
    padding-block: 25px 47px;
  }
}
body.kidsevent2023 .heading__text {
  padding-inline: 20px;
}

@media (min-width: 640px) {
  body.kidsevent2023 .heading__text {
    padding-inline: 0;
  }
}
body.kidsevent2023 .heading__image {
  order: -1;
}

@media (min-width: 640px) {
  body.kidsevent2023 .heading__image {
    order: 0;
    position: relative;
    padding-top: 27.1296296296%;
    width: 49.6296296296%;
    min-width: 50%;
    height: 0;
  }
  body.kidsevent2023 .heading__image > img {
    position: absolute;
    top: 0;
    right: 0;
    max-width: unset;
    height: 100%;
  }
}
body.kidsevent2023 .small-heading {
  color: var(--color-main);
  font-size: var(--font-size-24);
  line-height: 1.7;
  margin-top: 40px;
}

@media (min-width: 640px) {
  body.kidsevent2023 .small-heading {
    font-size: var(--font-size-32);
    margin-top: 64px;
  }
}
body.kidsevent2023 .box__lead + .section-event,
body.kidsevent2023 .section-event + .section-event {
  margin-top: 40px;
}

body.kidsevent2023 .section-event p {
  font-size: var(--font-size-16);
  font-weight: bold;
  line-height: 1.5;
}

body.kidsevent2023 .section-event p + .lst__image {
  margin-top: 16px;
}

@media (min-width: 640px) {
  body.kidsevent2023 .section-event p + .lst__image {
    margin-top: 24px;
  }
}
body.kidsevent2023 .heading__lv2,
body.kidsevent2023 .heading__lv3 {
  font-weight: bold;
  line-height: 1.5;
}

body.kidsevent2023 .heading__lv2 + p,
body.kidsevent2023 .heading__lv3 + p {
  margin-top: 16px;
}

@media (min-width: 640px) {
  body.kidsevent2023 .heading__lv2 + p,
  body.kidsevent2023 .heading__lv3 + p {
    margin-top: 26px;
  }
}
body.kidsevent2023 .heading__lv2 {
  color: var(--color-main);
  font-size: var(--font-size-24);
}

@media (min-width: 640px) {
  body.kidsevent2023 .heading__lv2 {
    font-size: var(--font-size-32);
  }
}
body.kidsevent2023 .heading__lv2 + .heading__lv3 {
  margin-top: 16px;
}

@media (min-width: 640px) {
  body.kidsevent2023 .heading__lv2 + .heading__lv3 {
    margin-top: 26px;
  }
}
body.kidsevent2023 .heading__lv3 {
  font-size: var(--font-size-16);
}

@media (min-width: 640px) {
  body.kidsevent2023 .heading__lv3 {
    font-size: var(--font-size-20);
  }
}
body.kidsevent2023 .lst__image {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

@media (max-width: 639px) {
  body.kidsevent2023 .lst__image {
    border-radius: 10px;
    overflow: hidden;
  }
}
@media (min-width: 640px) {
  body.kidsevent2023 .lst__image {
    gap: 10px 15px;
  }
}
body.kidsevent2023 .lst__image > li {
  background-color: #eee;
  display: flex;
  align-items: center;
  flex-basis: calc((100% - 45px) / 4);
}

@media (max-width: 639px) {
  body.kidsevent2023 .lst__image > li {
    flex-basis: calc(50% - 5px);
  }
}
@media (min-width: 640px) {
  body.kidsevent2023 .lst__image > li {
    border-radius: 10px;
    overflow: hidden;
  }
}
body.kidsevent2023 .lst__image + .box__notice {
  margin-top: 16px;
}

@media (min-width: 640px) {
  body.kidsevent2023 .lst__image + .box__notice {
    margin-top: 24px;
  }
}
body.kidsevent2023 .lst__note {
  font-size: var(--font-size-14);
  line-height: 1.5;
}

body.kidsevent2023 .lst__note + .lst__venue {
  margin-top: 16px;
}

@media (min-width: 640px) {
  body.kidsevent2023 .lst__note + .lst__venue {
    margin-top: 26px;
  }
}
body.kidsevent2023 .heading__lv2 + .lst__venue,
body.kidsevent2023 .lst__venue + .lst__venue {
  margin-top: 16px;
}

@media (min-width: 640px) {
  body.kidsevent2023 .heading__lv2 + .lst__venue,
  body.kidsevent2023 .lst__venue + .lst__venue {
    margin-top: 26px;
  }
}
@media (min-width: 640px) {
  body.kidsevent2023 .lst__venue:where(dl) {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 0 20px;
  }
}
body.kidsevent2023 .lst__venue:where(dl) > div > dt + dd, body.kidsevent2023 .lst__venue:where(dl) > div > dd + dd {
  margin-top: 16px;
}

@media (min-width: 640px) {
  body.kidsevent2023 .lst__venue:where(dl) > div {
    flex-basis: calc(50% - 10px);
    max-width: 468px;
  }
}
body.kidsevent2023 .lst__venue:where(dl) > div > dt {
  font-size: var(--font-size-16);
  font-weight: bold;
  line-height: 1.5;
}

@media (min-width: 640px) {
  body.kidsevent2023 .lst__venue:where(dl) > div > dt {
    font-size: var(--font-size-20);
  }
}
body.kidsevent2023 .lst__venue:where(dl) > div > dd > a, body.kidsevent2023 .lst__venue:where(dl) > div > dd > span {
  color: var(--color-text-link-02);
  display: inline-block;
  font-size: var(--font-size-16);
  font-weight: bold;
  line-height: 1.5;
}

@media (min-width: 640px) {
  body.kidsevent2023 .lst__venue:where(dl) > div > dd > a, body.kidsevent2023 .lst__venue:where(dl) > div > dd > span {
    font-size: var(--font-size-18);
  }
}
body.kidsevent2023 .lst__venue:where(dl) > div > dd > span, body.kidsevent2023 .lst__venue:where(dl) > div > dd > div, body.kidsevent2023 .lst__venue:where(dl) > div > dd > p {
  padding-left: 20px;
}

body.kidsevent2023 .lst__venue:where(dl) > div > dd > a {
  display: inline-block;
  transition: none;
}

body.kidsevent2023 .lst__venue:where(dl) > div > dd > a.blank::after {
  position: static;
}

body.kidsevent2023 .lst__venue:where(dl) > div > dd > div:not(.__logo) {
  display: flex;
  align-items: center;
  gap: 0 16px;
  font-size: var(--font-size-14);
  line-height: 1.5;
}

body.kidsevent2023 .lst__venue:where(dl) > div > dd > div:not(.__logo) + p {
  margin-top: 20px;
}

body.kidsevent2023 .lst__venue:where(dl) > div > dd > p {
  font-size: var(--font-size-14);
  font-weight: 400;
}

@media (min-width: 640px) {
  body.kidsevent2023 .lst__venue:where(dl) > div > dd > p {
    font-size: var(--font-size-16);
  }
}
body.kidsevent2023 .lst__venue:where(dl) > div > dd > p + .__logo {
  margin-top: 30px;
}

@media (min-width: 640px) {
  body.kidsevent2023 .lst__venue:where(dl) > div > dd > p + .__logo {
    margin-top: 50px;
  }
}
body.kidsevent2023 .lst__venue:where(dl) > div > dd > .__logo > img {
  width: 180px;
}

body.kidsevent2023 .lst__venue:where(dl) > div > dd + dt {
  margin-top: 16px;
}

@media (min-width: 640px) {
  body.kidsevent2023 .lst__venue:where(dl) > div > dd + dt {
    margin-top: 26px;
  }
}
@media (max-width: 639px) {
  body.kidsevent2023 .lst__venue:where(dl) > div + div {
    margin-top: 16px;
  }
}
body.kidsevent2023 .lst__venue:where(dl) .__datetime {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0 16px;
}

body.kidsevent2023 .lst__venue:where(dl) .__capacity {
  flex-shrink: 0;
}

body.kidsevent2023 .box__lead {
  background-color: #fffad0;
  border-radius: 20px;
  font-size: var(--font-size-18);
  font-weight: bold;
  padding: 20px;
}

@media (min-width: 640px) {
  body.kidsevent2023 .box__lead {
    padding: 20px 40px;
  }
}
body.kidsevent2023 .box__notice {
  background-color: #eee;
  border-radius: 20px;
  padding: 20px;
}

@media (min-width: 640px) {
  body.kidsevent2023 .box__notice {
    padding: 20px 40px;
  }
}
body.kidsevent2023 .box__notice:where(dl) > dt {
  font-size: var(--font-size-16);
  font-weight: bold;
  line-height: 1.5;
}

@media (min-width: 640px) {
  body.kidsevent2023 .box__notice:where(dl) > dt {
    font-size: var(--font-size-20);
  }
}
body.kidsevent2023 .box__notice:where(dl) > dt + dd {
  margin-top: 10px;
}

body.kidsevent2023 .box__notice:where(dl) > dd p + .lst__note {
  margin-top: 10px;
}

@media (max-width: 639px) {
  body.manekame .list-rounded-corners-01__item {
    max-width: 338px;
    margin-inline: auto;
  }
}
@media (min-width: 640px) {
  body.manekame .list-rounded-corners-01__item {
    max-width: 338px;
    margin-inline: auto;
  }
}
.list-rounded-corners-01__link {
  border-radius: 500px;
  font-weight: bold;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  position: relative;
}

@media (max-width: 360px) {
  .list-rounded-corners-01__link.-blue {
    font-size: var(--font-size-14);
  }
}
.list-rounded-corners-01__link.-blue {
  background-color: var(--color-text-background-blue);
  font-size: var(--font-size-17);
  color: var(--color-white);
  width: 100%;
  height: 48px;
}

/* iconの設定 */
.list-rounded-corners-01__link::after {
  content: "";
  width: 28px;
  height: 28px;
  display: block;
  inset-block: auto;
  position: absolute;
  right: 10px;
  background-repeat: no-repeat;
}
.list-rounded-corners-01__link.-new-window-blue::after {
  background-image: url(/shared/images/icon/icon_new_window_blue_circle_white.svg);
}
.list-rounded-corners-01__link.-new-window-blue[href*='mailto:'] {
  min-height: 100px;
  padding: 20px 122px 20px 87px;
  line-height: 1;
}
.list-rounded-corners-01__link.-new-window-blue[href*='mailto:']::after {
  background-image: url(/shared/images/icon/icon_mail_blue_circle_white.svg);
}
.list-rounded-corners-01__link.-new-window-blue[href*='mailto:'] blockquote {
  font-size: var(--font-size-24);
}
@media (max-width: 639px) {
  .list-rounded-corners-01__link.-new-window-blue[href*='mailto:'] {
      font-size: var(--font-size-17);
      color: var(--color-white);
      width: 100%;
      height: 48px;
      padding: 15px 50px 15px 37px
  }
  .list-rounded-corners-01__link.-new-window-blue[href*='mailto:']::after {
    width: 28px;
    height: 28px;
    right: 10px;
  }
  .list-rounded-corners-01__link.-new-window-blue[href*='mailto:'] blockquote {
    font-size: var(--font-size-19);
  }
}
.section-column-01-wrapper {
  max-width: 1200px;
  width: 100%;
  margin-inline: auto;
}

@media (max-width: 639px) {
  .section-column-01-wrapper {
    margin-top: 50px;
    margin-bottom: 4rem;
  }
}
@media (min-width: 640px) {
  .section-column-01-wrapper {
    margin-top: 50px;
    margin-bottom: 50px;
  }
}
.section-column-01 {
  background-color: var(--color-main-background);
  border-radius: var(--border-radius-24);
}

@media (max-width: 639px) {
  .section-column-01 {
    padding: 24px 16px;
  }
}
@media (min-width: 640px) {
  .section-column-01 {
    padding: 40px;
  }
}
.section-column-01__title {
  color: var(--color-black);
  font-weight: bold;
  text-align: center;
}

@media (max-width: 639px) {
  .section-column-01__title {
    font-size: var(--font-size-16);
  }
}
/* kidsevent */
/* kidsevent2024 */
@media (min-width: 640px) {
  .section-column-01__title {
    font-size: var(--font-size-18);
  }
}
.section-column-01__paragraph {
  color: var(--color-black);
}

@media (max-width: 639px) {
  .section-column-01__paragraph {
    font-size: var(--font-size-15);
    line-height: 1.866;
    margin-top: 16px;
  }
}
@media (min-width: 640px) {
  .section-column-01__paragraph {
    font-size: var(--font-size-17);
    line-height: 1.882;
    margin-top: 24px;
  }
}
.global-header {
  background-color: var(--color-base-background);
  height: var(--header-height);
  height: 100%;
  padding-top: 16px;
}

@media (min-width: 1000px) {
  .global-header {
    padding: 0;
  }
}
.global-header__credit {
  background-color: var(--color-main);
  display: grid;
  place-content: center;
  margin-block: -16px 16px;
  padding: 10px;
}
@media (min-width: 1000px) {
  .global-header__credit {
    margin-block: 0;
  }
}

.global-header__inner {
  align-items: center;
  display: flex;
  justify-content: center;
  margin: 0 auto;
  max-width: 1440px;
  padding: 0 var(--sp-space-padding);
  position: relative;
}

.wrapper:has(.keyword-value) .global-header__inner { 
  padding: 0 var(--sp-space-padding) 15px;
}

@media (min-width: 1000px) {
  .global-header__inner,
  .wrapper:has(.keyword-value) .global-header__inner {
    padding: 16px 40px 24px;
  }
}
.global-header__menu-button {
  background-color: transparent;
  border: none;
  height: 36px;
  left: 20px;
  position: absolute;
  top: 16%;
  width: 36px;
}

@media (min-width: 1000px) {
  .global-header__menu-button {
    top: 32px;
    visibility: hidden;
  }
  .global-header__menu-button img {
    visibility: hidden;
  }
}
@media (max-width: 639px) {
  .global-header__logo {
    margin: auto;
  }
}
@media (max-width: 639px) {
  .global-header__logo img {
    height: 54px;
    width: 140px;
  }
}
@media (min-width: 1000px) {
  .global-header__logo img {
    height: 72px;
  }
}
.global-header__search-button {
  background-color: transparent;
  border: none;
  position: absolute;
  right: 20px;
  top: 28%;
  width: -moz-fit-content;
  width: fit-content;
}

.global-header__search-button[aria-pressed=true] {
  opacity: 0.5;
}

.global-header__search-button img {
  height: 100%;
  width: 100%;
}

.global-header__mobile-navigation {
  background-color: var(--color-base-background);
  height: 100vh;
  left: 0;
  -ms-overflow-style: none;
  overflow-y: scroll;
  padding-bottom: 48px;
  padding-top: 16px;
  position: fixed;
  scrollbar-width: none;
  top: 0;
  transition: all 0.3s linear;
  width: 100vw;
  z-index: var(--z-index-mobile-menu);
}

.global-header__mobile-navigation::-webkit-scrollbar {
  display: none;
}

.global-header__mobile-navigation[aria-hidden=false] {
  opacity: 1;
  visibility: visible;
}

@media (min-width: 1000px) {
  .global-header__mobile-navigation[aria-hidden=false] {
    display: none;
  }
}
.global-header__mobile-navigation[aria-hidden=true] {
  opacity: 0;
  visibility: hidden;
}

@media (min-width: 1000px) {
  .global-header__mobile-navigation {
    visibility: hidden;
  }
}
.global-header__navigation {
  display: none;
}

@media (min-width: 1000px) {
  .global-header__navigation {
    background: var(--color-background-nav-belt);
    display: block;
    height: 60px;
    position: relative;
  }
  /*　top.jsエラー回避のため非表示で設置　*/
  .navigation__left-button,
  .navigation__right-button {
    display: none;
  }
  .global-header__navigation-list {
    display: flex;
    -moz-column-gap: 1rem;
    column-gap: 1rem;
    margin-inline: auto;
    overflow-x: auto;
    overflow-y: hidden;
    padding-inline: 19px;
    white-space: nowrap;
    max-width: 1280px;
  }
  .global-header__navigation-list {
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .global-header__navigation-list::-webkit-scrollbar {
    display: none;
  }
  .global-header__navigation-button,
  .global-header__navigation-link {
    align-items: center;
    background-color: transparent;
    border: none;
    color: var(--color-black);
    display: flex;
    font-size: var(--font-size-14);
    font-weight: bold;
    gap: 7px;
    padding-inline: 1rem;
  }
}
@media (min-width: 1000px) and (min-width: 640px) {
  .global-header__navigation-button,
  .global-header__navigation-link {
    font-size: var(--font-size-15);
  }
}
@media (min-width: 1000px) {
  .global-header__navigation-item:last-child .global-header__navigation-link {
    padding-right: 0;
  }
  .global-header__navigation-item {
    flex-basis: 20%;
    overflow-x: auto;
    overflow-y: hidden;
    padding-block: 13.5px;
  }
  .global-header__navigation-item[aria-current=true] {
    position: relative;
    overflow-x: hidden;
  }
  .global-header__navigation-item[aria-current=true] .global-header__navigation-link {
    color: var(--color-main);
  }
  .global-header__navigation-item[aria-current=true]::before {
    background-image: url(/shared/images/icon/icon_triangle_bottom_orange_01.svg);
    background-position-x: center;
    background-repeat: no-repeat;
    content: "";
    display: inline-flex;
    height: 8px;
    left: 20px;
    position: absolute;
    top: 0;
    width: 100%;
  }
}
.global-header__navigation-item:hover .sub-navigation__inner {
  display: block;
}

.global-header__navigation-item:hover .global-header__navigation-button {
  color: var(--color-main);
}

.global-header__navigation-item:hover .global-header__navigation-link {
  color: var(--color-main);
}

:root {
  --max-height-sub-navigation: 0;
  --opacity-sub-navigation: 0;
  --visibility-sub-navigation: hidden;
}

.sub-navigation {
  max-height: var(--max-height-sub-navigation);
  opacity: var(--opacity-sub-navigation);
  overflow: hidden;
  position: absolute;
  top: 60px;
  transition: opacity 0.2s linear, visibility 0.2s linear;
  visibility: var(--opacity-sub-navigation);
  white-space: normal;
  z-index: 10;
}

.sub-navigation[aria-hidden=true] {
  padding-top: 19px;
  top: 42px;
}

.sub-navigation[aria-hidden=false] {
  --opacity-sub-navigation: 1;
  --visibility-sub-navigation: visible;
  --max-height-sub-navigation: fit-content;
}

@media (min-width: 1000px) {
  .sub-navigation[aria-hidden=false] {
    z-index: 2;
  }
}
.sub-navigation__inner {
  background-color: #f9f9f9;
  border-bottom-left-radius: 20px;
  border-bottom-right-radius: 20px;
  /* min-width: 200px; */
  overflow: hidden;
}

.sub-navigation__item {
  position: relative;
}

.sub-navigation__item:last-of-type:has(.sub-sub-navigation__link)::after {
  top: calc(50% - 8px);
}

.sub-navigation__item:last-of-type:has(.sub-sub-navigation__link) .sub-sub-navigation__link {
  padding-block-end: 16px;
}

.sub-navigation__item::after {
  border-right: solid 1px var(--color-accent2);
  border-top: solid 1px var(--color-accent2);
  content: "";
  height: 8px;
  position: absolute;
  right: 20px;
  top: calc(50% - 4px);
  transform: rotate(45deg);
  width: 8px;
}

.sub-navigation__link {
  color: var(--color-black);
  display: block;
  font-size: var(--font-size-14);
  font-weight: bold;
  padding: 12px 16px;
  padding-right: 34px;
  z-index: 1;
}

.sub-navigation__link:hover {
  background-color: #f1f1f1;
}

.sub-sub-navigation__link {
  color: var(--color-black);
  display: block;
  font-size: var(--font-size-14);
  padding: 4px 34px 8px 26px;
}

.sub-sub-navigation__link:hover {
  background-color: #f1f1f1;
}

/* kidsevent */
body.kidsevent .box__lead + .blk__button,
body.kidsevent .box__lead + .lst__image {
  margin-top: 40px;
}

body.kidsevent .lst__image + .blk__button,
body.kidsevent .blk__button + .section-event {
  margin-top: 50px;
}

body.kidsevent .box__lead {
  background-color: #fffad0;
  border-radius: 20px;
  font-size: var(--font-size-18);
  font-weight: bold;
  padding: 20px;
}

@media (min-width: 640px) {
  body.kidsevent .box__lead {
    padding: 20px 40px;
  }
}
body.kidsevent .blk__button {
  display: flex;
  justify-content: center;
}

body.kidsevent .blk__button .icon-button {
  background-color: #eb6d80;
  border-radius: 100px;
  color: #fff;
  display: flex;
  align-items: center;
  -moz-column-gap: 10px;
  column-gap: 10px;
  font-size: 2rem;
  font-weight: bold;
  padding: 20px 30px;
}

@media (min-width: 640px) {
  body.kidsevent .blk__button .icon-button {
    font-size: 2.5rem;
    padding: 20px 50px 20px 70px;
  }
}
body.kidsevent .blk__button .icon-button span {
  flex-shrink: 0;
}

body.kidsevent .section-event + .section-event {
  margin-top: 40px;
}

body.kidsevent .section-event p {
  font-size: var(--font-size-16);
  font-weight: bold;
  line-height: 1.5;
}

body.kidsevent .section-event p + .lst__image {
  margin-top: 16px;
}

@media (min-width: 640px) {
  body.kidsevent .section-event p + .lst__image {
    margin-top: 24px;
  }
}
body.kidsevent .section-event p + .heading__lv4 {
  margin-block-start: 16px;
}

body.kidsevent .section-event p .blank::after {
  inset-block-end: 10px;
}

body.kidsevent .heading__lv2, body.kidsevent .heading__lv3, body.kidsevent .heading__lv4 {
  font-weight: bold;
  line-height: 1.5;
}

body.kidsevent .heading__lv2 + p, body.kidsevent .heading__lv3 + p {
  margin-top: 16px;
}

@media (min-width: 640px) {
  body.kidsevent .heading__lv2 + p, body.kidsevent .heading__lv3 + p {
    margin-top: 26px;
  }
}
body.kidsevent .heading__lv2 {
  color: var(--color-main);
  font-size: var(--font-size-24);
}

@media (min-width: 640px) {
  body.kidsevent .heading__lv2 {
    font-size: var(--font-size-32);
  }
}
body.kidsevent .heading__lv2 + .heading__lv3 {
  margin-top: 16px;
}

@media (min-width: 640px) {
  body.kidsevent .heading__lv2 + .heading__lv3 {
    margin-top: 26px;
  }
}
body.kidsevent .heading__lv3 {
  font-size: var(--font-size-16);
}

@media (min-width: 640px) {
  body.kidsevent .heading__lv3 {
    font-size: var(--font-size-20);
  }
}
body.kidsevent .heading__lv4 {
  font-size: var(--font-size-16);
}

body.kidsevent .lst__image {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

@media (max-width: 639px) {
  body.kidsevent .lst__image {
    border-radius: 10px;
    overflow: hidden;
  }
}
@media (min-width: 640px) {
  body.kidsevent .lst__image {
    gap: 10px 15px;
  }
}
body.kidsevent .lst__image > li {
  background-color: #eee;
  display: flex;
  align-items: center;
  flex-basis: calc((100% - 45px) / 4);
}

@media (max-width: 639px) {
  body.kidsevent .lst__image > li {
    flex-basis: calc(50% - 5px);
  }
}
@media (min-width: 640px) {
  body.kidsevent .lst__image > li {
    border-radius: 10px;
    overflow: hidden;
  }
}
body.kidsevent .lst__image + .box__notice {
  margin-top: 16px;
}

@media (min-width: 640px) {
  body.kidsevent .lst__image + .box__notice {
    margin-top: 24px;
  }
}
body.kidsevent .lst__note {
  font-size: var(--font-size-14);
  line-height: 1.5;
}

body.kidsevent .lst__note + .lst__venue {
  margin-top: 16px;
}

@media (min-width: 640px) {
  body.kidsevent .lst__note + .lst__venue {
    margin-top: 26px;
  }
}
body.kidsevent .heading__lv2 + .lst__venue,
body.kidsevent .lst__venue + .lst__venue {
  margin-top: 16px;
}

@media (min-width: 640px) {
  body.kidsevent .heading__lv2 + .lst__venue,
  body.kidsevent .lst__venue + .lst__venue {
    margin-top: 40px;
  }
}
@media (min-width: 640px) {
  body.kidsevent .lst__venue:where(dl) {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 0 20px;
  }
}
@media (min-width: 640px) {
  body.kidsevent .lst__venue:where(dl) > div {
    flex-basis: calc(50% - 10px);
    max-width: 468px;
  }
}
body.kidsevent .lst__venue:where(dl) > div > dt + dd,
body.kidsevent .lst__venue:where(dl) > div > dd + dd {
  margin-top: 16px;
}

body.kidsevent .lst__venue:where(dl) > div > dt {
  font-size: var(--font-size-16);
  font-weight: bold;
  line-height: 1.5;
}

@media (min-width: 640px) {
  body.kidsevent .lst__venue:where(dl) > div > dt {
    font-size: var(--font-size-20);
  }
}
@media (min-width: 640px) {
  body.kidsevent .lst__venue:where(dl) > div > dd:first-child {
    margin-block-start: 46px;
  }
}
body.kidsevent .lst__venue:where(dl) > div > dd > a,
body.kidsevent .lst__venue:where(dl) > div > dd > span {
  color: var(--color-text-link-02);
  display: inline-block;
  font-size: var(--font-size-16);
  font-weight: bold;
  line-height: 1.5;
  padding-left: 20px;
}

body.kidsevent .lst__venue:where(dl) > div > dd > span > small {
  display: inline-block;
}

@media (min-width: 640px) {
  body.kidsevent .lst__venue:where(dl) > div > dd > a,
  body.kidsevent .lst__venue:where(dl) > div > dd > span {
    font-size: var(--font-size-18);
  }
}
body.kidsevent .lst__venue:where(dl) > div > dd > div,
body.kidsevent .lst__venue:where(dl) > div > dd > p {
  padding-left: 20px;
}

body.kidsevent .lst__venue:where(dl) > div > dd > a {
  display: inline-block;
  transition: none;
  text-indent: -20px;
}

body.kidsevent .lst__venue:where(dl) > div > dd > a.blank::after {
  position: static;
}

body.kidsevent .lst__venue:where(dl) > div > dd > div:not(.__logo) {
  display: flex;
  align-items: center;
  gap: 0 16px;
  font-size: var(--font-size-14);
  line-height: 1.5;
}

body.kidsevent .lst__venue:where(dl) > div > dd > div:not(.__logo) + p {
  margin-top: 20px;
}

body.kidsevent .lst__venue:where(dl) > div > dd > p {
  font-size: var(--font-size-14);
  font-weight: 400;
}

@media (min-width: 640px) {
  body.kidsevent .lst__venue:where(dl) > div > dd > p {
    font-size: var(--font-size-16);
  }
}
body.kidsevent .lst__venue:where(dl) > div > dd > .__address {
  margin-block-start: 4px;
}
body.kidsevent .lst__venue:where(dl) > div > dd > .__address:not(:last-child) {
  margin-block-end: 8px;
}

body.kidsevent .lst__venue:where(dl) > div > dd > p + .__logo {
  margin-top: 30px;
}

@media (min-width: 640px) {
  body.kidsevent .lst__venue:where(dl) > div > dd > p + .__logo {
    margin-top: 50px;
  }
}
body.kidsevent .lst__venue:where(dl) > div > dd > .__logo > img {
  width: 180px;
}

body.kidsevent .lst__venue:where(dl) > div > dd + dt {
  margin-top: 16px;
}

@media (min-width: 640px) {
  body.kidsevent .lst__venue:where(dl) > div > dd + dt {
    margin-top: 26px;
  }
}
@media (max-width: 639px) {
  body.kidsevent .lst__venue:where(dl) > div + div {
    margin-top: 16px;
  }
}
body.kidsevent .lst__venue:where(dl) .__datetime {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0 16px;
}

body.kidsevent .lst__venue:where(dl) .__capacity {
  flex-shrink: 0;
}

body.kidsevent .box__notice {
  background-color: #eee;
  border-radius: 20px;
  padding: 20px;
}

@media (min-width: 640px) {
  body.kidsevent .box__notice {
    padding: 20px 40px;
  }
}
body.kidsevent .box__notice:where(dl) > dt {
  font-size: var(--font-size-16);
  font-weight: bold;
  line-height: 1.5;
}

@media (min-width: 640px) {
  body.kidsevent .box__notice:where(dl) > dt {
    font-size: var(--font-size-20);
  }
}
body.kidsevent .box__notice:where(dl) > dt + dd {
  margin-top: 10px;
}

body.kidsevent .box__notice:where(dl) > dd p + .lst__note {
  margin-top: 10px;
}

body {
  /* kidsevent2024 */
  /* kidsevent2025 */
  /* kidsevent2026 */
}
body.kidsevent2024 :where(main) .container, body.kidsevent2025 :where(main) .container, body.kidsevent2026 :where(main) .container {
  background-color: #fff;
  max-width: unset;
}
body.kidsevent2024 :where(main) .container .container__inner, body.kidsevent2025 :where(main) .container .container__inner, body.kidsevent2026 :where(main) .container .container__inner {
  margin-inline: auto;
  max-width: var(--max-width-container);
}
body.kidsevent2024 :where(main) .container.card-list__background, body.kidsevent2025 :where(main) .container.card-list__background, body.kidsevent2026 :where(main) .container.card-list__background {
  background-color: var(--color-main-background);
}
body.kidsevent2024 :where(main) .block-venue, body.kidsevent2025 :where(main) .block-venue, body.kidsevent2026 :where(main) .block-venue {
  display: flex;
  gap: 16px 32px;
  margin-block-start: 16px;
}
@media (min-width: 640px) {
  body.kidsevent2024 :where(main) .block-venue, body.kidsevent2025 :where(main) .block-venue, body.kidsevent2026 :where(main) .block-venue {
    margin-block-start: 26px;
  }
}
@media (max-width: 999px) {
  body.kidsevent2024 :where(main) .block-venue, body.kidsevent2025 :where(main) .block-venue, body.kidsevent2026 :where(main) .block-venue {
    flex-direction: column;
  }
}
body.kidsevent2024 :where(main) .block-venue .table-venue,
body.kidsevent2024 :where(main) .block-venue .__location, body.kidsevent2025 :where(main) .block-venue .table-venue,
body.kidsevent2025 :where(main) .block-venue .__location, body.kidsevent2026 :where(main) .block-venue .table-venue,
body.kidsevent2026 :where(main) .block-venue .__location {
  flex: 1;
}
body.kidsevent2024 :where(main) .block-venue .table-venue, body.kidsevent2025 :where(main) .block-venue .table-venue, body.kidsevent2026 :where(main) .block-venue .table-venue {
  border-block: 1px solid var(--color-gray-lighter);
  font-size: var(--font-size-14);
}
@media (min-width: 640px) {
  body.kidsevent2024 :where(main) .block-venue .table-venue, body.kidsevent2025 :where(main) .block-venue .table-venue, body.kidsevent2026 :where(main) .block-venue .table-venue {
    font-size: var(--font-size-16);
  }
}
@media (min-width: 640px) {
  body.kidsevent2024 :where(main) .block-venue .table-venue:has(+ .__location) > tbody > tr > th, body.kidsevent2025 :where(main) .block-venue .table-venue:has(+ .__location) > tbody > tr > th, body.kidsevent2026 :where(main) .block-venue .table-venue:has(+ .__location) > tbody > tr > th {
    width: 7em;
  }
}
body.kidsevent2024 :where(main) .block-venue .table-venue > tbody > tr > th,
body.kidsevent2024 :where(main) .block-venue .table-venue > tbody > tr > td, body.kidsevent2025 :where(main) .block-venue .table-venue > tbody > tr > th,
body.kidsevent2025 :where(main) .block-venue .table-venue > tbody > tr > td, body.kidsevent2026 :where(main) .block-venue .table-venue > tbody > tr > th,
body.kidsevent2026 :where(main) .block-venue .table-venue > tbody > tr > td {
  padding: 8px;
}
body.kidsevent2024 :where(main) .block-venue .table-venue > tbody > tr > th, body.kidsevent2025 :where(main) .block-venue .table-venue > tbody > tr > th, body.kidsevent2026 :where(main) .block-venue .table-venue > tbody > tr > th {
  font-weight: normal;
  text-align: left;
}
body.kidsevent2024 :where(main) .block-venue .table-venue > tbody > tr + tr > th,
body.kidsevent2024 :where(main) .block-venue .table-venue > tbody > tr + tr > td, body.kidsevent2025 :where(main) .block-venue .table-venue > tbody > tr + tr > th,
body.kidsevent2025 :where(main) .block-venue .table-venue > tbody > tr + tr > td, body.kidsevent2026 :where(main) .block-venue .table-venue > tbody > tr + tr > th,
body.kidsevent2026 :where(main) .block-venue .table-venue > tbody > tr + tr > td {
  border-block-start: 1px solid var(--color-gray-lighter);
}
@media (max-width: 999px) {
  body.kidsevent2024 :where(main) .block-venue .__location, body.kidsevent2025 :where(main) .block-venue .__location, body.kidsevent2026 :where(main) .block-venue .__location {
    align-self: center;
  }
}
body.kidsevent2024 :where(main) .block-venue + .blk__button, body.kidsevent2025 :where(main) .block-venue + .blk__button, body.kidsevent2026 :where(main) .block-venue + .blk__button {
  margin-block-start: 32px;
}
body.kidsevent2024 :where(main) .block-venue + .blk__button .icon-button, body.kidsevent2025 :where(main) .block-venue + .blk__button .icon-button, body.kidsevent2026 :where(main) .block-venue + .blk__button .icon-button {
  font-size: var(--font-size-18);
  padding: 10px 40px 10px 20px;
}
body.kidsevent2024 :where(main) .box__in-preparation, body.kidsevent2025 :where(main) .box__in-preparation, body.kidsevent2026 :where(main) .box__in-preparation {
  display: flex;
  align-items: center;
  flex-direction: column;
  row-gap: 5rem;
  padding-block: 7.5rem;
}
body.kidsevent2024 :where(main) .box__in-preparation dt, body.kidsevent2025 :where(main) .box__in-preparation dt, body.kidsevent2026 :where(main) .box__in-preparation dt {
  font-size: 3.5rem;
  color: var(--color-main);
  font-weight: bold;
}
body.kidsevent2024 :where(main) .box__in-preparation dd, body.kidsevent2025 :where(main) .box__in-preparation dd, body.kidsevent2026 :where(main) .box__in-preparation dd {
  font-size: 2rem;
}
@media (min-width: 640px) {
  body.kidsevent2024 :where(main) .box__in-preparation, body.kidsevent2025 :where(main) .box__in-preparation, body.kidsevent2026 :where(main) .box__in-preparation {
    row-gap: 10rem;
    padding-inline: 5rem;
    height: 640px;
  }
}
@media (min-width: 1000px) {
  body.kidsevent2024 :where(main) .box__in-preparation, body.kidsevent2025 :where(main) .box__in-preparation, body.kidsevent2026 :where(main) .box__in-preparation {
    height: 1000px;
  }
  body.kidsevent2024 :where(main) .box__in-preparation dt, body.kidsevent2025 :where(main) .box__in-preparation dt, body.kidsevent2026 :where(main) .box__in-preparation dt {
    font-size: 4rem;
  }
  body.kidsevent2024 :where(main) .box__in-preparation dd, body.kidsevent2025 :where(main) .box__in-preparation dd, body.kidsevent2026 :where(main) .box__in-preparation dd {
    font-size: 2.5rem;
  }
}
body.kidsevent2024 :where(main) .head__kidsevent2024 {
  background-color: #fff67f;
}
body.kidsevent2025 :where(main) .head__kidsevent2025 {
  background-color: #e3eb98;
}
body.kidsevent2025 :where(main) .blk__button .icon-button {
  background-color: #ec6c1f;
}
body.kidsevent2026 :where(main) .head__kidsevent2026 {
  background-color: #FECE84;
}
@media (max-width: 999px) {
  body.kidsevent2024 :where(main) .head__kidsevent2024, body.kidsevent2025 :where(main) .head__kidsevent2025, body.kidsevent2026 :where(main) .head__kidsevent2026 {
    margin-block-start: 40px;
  }
}
@media (max-width: 639px) {
  body.kidsevent2024 :where(main) .head__kidsevent2024, body.kidsevent2025 :where(main) .head__kidsevent2025, body.kidsevent2026 :where(main) .head__kidsevent2026 {
    margin-block-start: 16px;
  }
}
body.kidsevent2024 :where(main) .head__kidsevent2024 .container__inner, body.kidsevent2025 :where(main) .head__kidsevent2025 .container__inner, body.kidsevent2026 :where(main) .head__kidsevent2026 .container__inner {
  display: flex;
  justify-content: center;
  flex-direction: column;
  row-gap: 20px;
}
@media (min-width: 640px) {
  body.kidsevent2024 :where(main) .head__kidsevent2024 .container__inner, body.kidsevent2025 :where(main) .head__kidsevent2025 .container__inner, body.kidsevent2026 :where(main) .head__kidsevent2026 .container__inner {
    align-items: center;
    flex-direction: row;
  }
}
body.kidsevent2024 :where(main) .head__kidsevent2024 .heading__text, body.kidsevent2025 :where(main) .head__kidsevent2025 .heading__text, body.kidsevent2026 :where(main) .head__kidsevent2026 .heading__text {
  display: flex;
  justify-content: center;
}
@media (min-width: 640px) {
  body.kidsevent2024 :where(main) .head__kidsevent2024 .heading__text, body.kidsevent2025 :where(main) .head__kidsevent2025 .heading__text, body.kidsevent2026 :where(main) .head__kidsevent2026 .heading__text {
    flex-basis: 42%;
    padding-inline-start: 2%;
  }
}
body.kidsevent2024 :where(main) .head__kidsevent2024 .heading__text img, body.kidsevent2025 :where(main) .head__kidsevent2025 .heading__text img, body.kidsevent2026 :where(main) .head__kidsevent2026 .heading__text img {
  width: 90%;
}
@media (max-width: 639px) {
  body.kidsevent2024 :where(main) .head__kidsevent2024 .heading__text img, body.kidsevent2025 :where(main) .head__kidsevent2025 .heading__text img, body.kidsevent2026 :where(main) .head__kidsevent2026 .heading__text img {
    width: 100%;
    max-width: 278px;
  }
}
@media (min-width: 640px) {
  body.kidsevent2024 :where(main) .head__kidsevent2024 .heading__image, body.kidsevent2025 :where(main) .head__kidsevent2025 .heading__image, body.kidsevent2026 :where(main) .head__kidsevent2026 .heading__image {
    flex-basis: 58%;
  }
}
body.kidsevent2024 :where(main) .head__kidsevent2024 .heading__image img, body.kidsevent2025 :where(main) .head__kidsevent2025 .heading__image img, body.kidsevent2026 :where(main) .head__kidsevent2026 .heading__image img {
  width: 100%;
}
body {
  /* Kidsevent2025 CSS */
}
body.kidsevent2025 .heading--center {
  text-align: center;
  margin-bottom: 26px;
}
body.kidsevent2025 :where(main) .section-event {
  /* // Mosaic image */
}
body.kidsevent2025 :where(main) .section-event .heading-img {
  margin: 0 auto;
  width: 800px;
}
body.kidsevent2025 :where(main) .section-event .link-color-primary {
  color: #bd5b1c;
}
body.kidsevent2025 :where(main) .section-event {
  /* // Table design */
}
body.kidsevent2025 :where(main) .section-event .table-style-2025 {
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: auto;
  margin-block: 1.6em;
  width: 100%;
  font-size: var(--font-size-16);
}
@media (max-width: 999px) {
  body.kidsevent2025 :where(main) .section-event .table-style-2025 {
    table-layout: fixed;
    font-size: var(--font-size-14);
  }
}
body.kidsevent2025 :where(main) .section-event .table-style-2025 thead {
  background-color: var(--color-base-background);
}
body.kidsevent2025 :where(main) .section-event .table-style-2025 th, body.kidsevent2025 :where(main) .section-event .table-style-2025 td {
  border: 1px solid #e4e3e2;
  padding: 0.5em 1em;
  text-align: left;
}
@media (max-width: 639px) {
  body.kidsevent2025 :where(main) .section-event .table-style-2025 th, body.kidsevent2025 :where(main) .section-event .table-style-2025 td {
    padding: 0.5em;
  }
}
body.kidsevent2025 :where(main) .section-event .table-style-2025 th {
  width: 14%;
  word-break: keep-all;
  white-space: normal;
  background-color: #fff3e7;
  font-weight: normal;
}
@media (max-width: 999px) {
  body.kidsevent2025 :where(main) .section-event .table-style-2025 th {
    width: 28%;
    overflow-wrap: break-word;
  }
}
body.kidsevent2025 :where(main) .section-event .table-style-2025 td {
  width: 86%;
  word-break: keep-all;
  white-space: normal;
}
@media (max-width: 999px) {
  body.kidsevent2025 :where(main) .section-event .table-style-2025 td {
    width: 72%;
    overflow-wrap: break-word;
  }
}
body.kidsevent2025 :where(main) .section-event .table-style-2025 span + table, body.kidsevent2025 :where(main) .section-event .table-style-2025 caption + table {
  margin-top: 0;
}
body.kidsevent2025 :where(main) .section-event {
  /* Definition list (dl) styles */
}
body.kidsevent2025 :where(main) .section-event .definition-with-colon-01 {
  margin-top: 26px;
}
body.kidsevent2025 :where(main) .section-event .definition-with-colon-01 .definition-with-colon-01__term {
  width: 6em;
  font-weight: bold;
}
body.kidsevent2025 :where(main) .section-event .definition-with-colon-01 .definition-with-colon-01__list {
  flex-wrap: nowrap;
  font-size: var(--font-size-16);
}
@media (max-width: 639px) {
  body.kidsevent2025 :where(main) .section-event .definition-with-colon-01 .definition-with-colon-01__term {
    width: 5.5em;
  }
  body.kidsevent2025 :where(main) .section-event .definition-with-colon-01 .definition-with-colon-01__term {
    margin-right: 0;
  }
}
body.kidsevent2025 :where(main) .section-event {
  /* // Text styles */
}
body.kidsevent2025 :where(main) .section-event .text--body-16 {
  font-weight: 400;
  font-size: var(--font-size-16);
}
body.kidsevent2025 :where(main) .section-event .text-about-01__paragraph {
  line-height: 1.714;
}
body.kidsevent2025 :where(main) .section-event .text-about-01__paragraph-style {
  margin-top: 5px;
  padding-left: 1em;
  text-indent: -1em;
}
body.kidsevent2025 :where(main) .section-event {
  /* // Gallery */
}
body.kidsevent2025 :where(main) .section-event .gallery--grid {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
body.kidsevent2025 :where(main) .section-event .gallery--grid > figure {
  align-items: center;
  flex-basis: calc((100% - 45px) / 3);
}
body.kidsevent2025 :where(main) .section-event .img--radius {
  border-radius: 10px;
  overflow: hidden;
}
@media (max-width: 639px) {
  body.kidsevent2025 :where(main) .section-event .gallery--grid {
    border-radius: 10px;
  }
  body.kidsevent2025 :where(main) .section-event .gallery--grid > figure {
    margin: 0 auto;
    flex-basis: calc((100% - 20px) / 1);
  }
}
@media (min-width: 640px) {
  body.kidsevent2025 :where(main) .section-event .gallery--grid > figure {
    border-radius: 10px;
  }
  body.kidsevent2025 :where(main) .section-event .gallery--grid {
    gap: 10px 15px;
  }
}
body.kidsevent2025 :where(main) .section-event .text-about-figcaption {
  font-weight: 400;
  font-size: var(--font-size-14);
}
body.kidsevent2025 :where(main) .section-event {
  /* // Graph images list */
}
body.kidsevent2025 :where(main) .section-event .lst__image {
  margin: 0 auto;
  padding-top: 50px;
  gap: 50px 15px;
  display: flex;
  flex-wrap: wrap;
}
body.kidsevent2025 :where(main) .section-event .lst__image > li {
  margin: 0 auto;
  background-color: transparent;
  display: flex;
  flex-basis: calc((100% - 45px) / 2);
}
body.kidsevent2025 :where(main) .section-event .lst__image img {
  margin: 0 auto;
  max-width: 100%;
  width: 350px;
}
@media (max-width: 639px) {
  body.kidsevent2025 :where(main) .section-event .lst__image > li {
    flex-basis: 100%;
  }
}
body.kidsevent2025 :where(main) .section-event {
  /* // Program list gap (default 0 so avoid duplicate media queries) */
}
body.kidsevent2025 :where(main) .section-event .list-with-black-circle-01-program {
  gap: 0;
}
body {
  /* card-list */
}
@media (min-width: 640px) {
  body .card-list {
    display: flex;
    flex-wrap: wrap;
    gap: 32px 24px;
  }
}
@media (min-width: 1200px) {
  body .card-list {
    margin-inline: auto;
    max-width: 834px;
  }
}
@media (max-width: 639px) {
  body .card-list > li {
    border-block-end: solid 1px var(--color-gray-lighter);
    padding-block-end: 24px;
  }
}
@media (min-width: 640px) {
  body .card-list > li {
    flex-basis: calc((100% - 48px) / 3);
  }
}
body .card-list > li > a {
  display: flex;
  flex-direction: column;
}
@media (min-width: 640px) {
  body .card-list > li > a {
    background-color: var(--color-white);
    border-radius: var(--border-radius-12);
    height: 100%;
    padding: 16px;
    row-gap: 16px;
  }
}
@media (min-width: 640px) {
  body .card-list > li figure:has(figcaption) {
    position: relative;
  }
  body .card-list > li figure:has(figcaption)::before {
    background-color: #fff;
    clip-path: ellipse(50% 50% at 50% 125%);
    content: "";
    display: block;
    height: 175px;
    inset: auto 0 0;
    position: absolute;
    width: 100%;
    z-index: 1;
  }
}
@media (max-width: 639px) {
  body .card-list > li figure + p {
    margin-block-start: 4px;
  }
}
body .card-list > li figcaption {
  color: var(--color-gray);
  font-size: var(--font-size-14);
  font-weight: 500;
}
@media (max-width: 639px) {
  body .card-list > li figcaption {
    margin-block-start: 16px;
  }
  body .card-list > li figcaption br {
    display: none;
  }
}
@media (min-width: 640px) {
  body .card-list > li figcaption {
    margin-block-start: -20px;
    text-align: center;
    position: relative;
    z-index: 1;
  }
}
body .card-list > li img {
  width: 100%;
  height: auto;
}
@media (max-width: 639px) {
  body .card-list > li img {
    border-radius: var(--border-radius-12);
  }
}
body .card-list > li p {
  color: var(--color-black);
  font-size: var(--font-size-16);
  font-weight: bold;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
@media (min-width: 640px) {
  body .card-list > li p {
    padding-inline: 8px;
  }
}
@media (max-width: 639px) {
  body .card-list > li + li {
    padding-block-start: 16px;
  }
}
body .card-list.__banner {
  justify-content: center;
}
@media (min-width: 640px) {
  body .card-list.__banner > li {
    flex-basis: calc((100% - 24px) / 2);
  }
}
body .card-list.__banner > li > a {
  background-color: transparent;
  padding: 0;
}
body .card-list.__banner > li > a.blank {
  margin-inline-end: 0;
}
body .card-list.__banner > li > a.blank::after {
  content: none;
}
@media (max-width: 639px) {
  body .card-list.__banner > li img + div {
    margin-block-start: 4px;
  }
}
body .card-list.__banner > li p.__title::after {
  content: url("/shared/images/icon/icon_new_window_dark_orange_01.svg");
  height: 14px;
  margin-left: 4px;
  position: absolute;
  width: 14px;
}
body .card-list.__banner > li p.__lead {
  font-weight: 400;
}

/* classroom */
.content-classroom {
  background-color: #FAF6F4;
  background-image: linear-gradient(to right, var(--color-brown) 6px, transparent 6px);
  background-size: 12px 2px;
  background-repeat: repeat-x;
}

@media (max-width: 639px) {
  .content-classroom {
    padding-inline: 20px;
    padding-bottom: 64px;
  }
}
@media (min-width: 640px) {
  .content-classroom {
    padding-inline: 80px;
    padding-bottom: 100px;
  }
}
.mv-classroom {
  max-width: 1200px;
  margin-inline: auto;
  padding: 50px 0 0;
}
.mv-classroom .section-contact-01-wrapper {
  max-width: 1200px;
  width: 100%;
  margin-inline: auto;
}
.mv-classroom .section-contact-01-wrapper .section-contact-01 {
  background-color: #F2EEEC;
  border-radius: var(--border-radius-24);
}
.mv-classroom .section-contact-01-wrapper .section-contact-01 .section-contact-01__paragraph {
  padding: 30px;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}
@media (max-width: 639px) {
  .mv-classroom .section-contact-01-wrapper .section-contact-01 .section-contact-01__paragraph {
    padding: 20px;
    font-size: var(--font-size-16);
  }
}
.mv-classroom .mv-columns {
  padding-block-start: 30px;
  display: grid;
  grid-template-columns: 1fr 42% 1fr;
  gap: 7px;
}
@media (max-width: 999px) {
  .mv-classroom .mv-columns {
    display: flex;
    flex-direction: column;
  }
}
.mv-classroom .mv-columns .column-figure {
  display: flex;
  align-items: flex-end;
}
.mv-classroom .mv-columns .column-figure:first-of-type {
  justify-content: flex-end;
}
@media (max-width: 999px) {
  .mv-classroom .mv-columns .column-figure {
    justify-content: center;
  }
}
.mv-classroom .mv-columns .column-figure img {
  height: auto;
}
.mv-classroom .mv-columns .movie-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.mv-classroom .mv-columns .movie-box .movie-box__paragraph {
  padding-block-start: 18px;
  font-size: var(--font-size-18);
  line-height: 2;
  text-align: center;
}
@media (max-width: 639px) {
  .mv-classroom .mv-columns .movie-box .movie-box__paragraph {
    font-size: var(--font-size-16);
  }
}

.box-category-description-02 {
  display: grid;
}

@media (max-width: 639px) {
  .box-category-description-02 {
    grid-template-columns: 64px 1fr;
    grid-template-rows: auto auto;
    column-gap: 16px;
    padding-bottom: 22px;
  }
}
@media (min-width: 640px) {
  .box-category-description-02 {
    column-gap: 20px;
    grid-template-columns: 100px 1fr;
    grid-template-rows: auto auto;
  }
}
.box-category-image-02 {
  display: inline-block;
}

@media (max-width: 639px) {
  .box-category-image-02 {
    width: 64px;
    height: 64px;
    grid-column: 1/1;
    grid-row: 1/3;
  }
}
@media (min-width: 640px) {
  .box-category-image-02 {
    width: 81px;
    height: 81px;
    grid-column: 1/1;
    grid-row: 1/3;
  }
}
.category-name-02 {
  color: var(--color-main);
  font-weight: bold;
}

@media (max-width: 639px) {
  .category-name-02 {
    font-size: var(--font-size-14);
    grid-row: 1/1;
    grid-column: 2/2;
    line-height: 1.285;
  }
}
@media (min-width: 640px) {
  .category-name-02 {
    font-size: var(--font-size-16);
    grid-row: 1/1;
    grid-column: 2/2;
    padding-top: 16px;
  }
}
.category-title-02 {
  color: var(--color-main);
  font-weight: bold;
}

@media (max-width: 639px) {
  .category-title-02 {
    font-size: var(--font-size-26);
    grid-row: 2/2;
    grid-column: 2/2;
  }
}
@media (min-width: 640px) {
  .category-title-02 {
    font-size: var(--font-size-38);
    grid-row: 2/2;
    grid-column: 2/2;
    line-height: 0;
    display: contents;
  }
}
.area-category-description-01 {
  position: relative;
}

.area-category-description-01 .icon-nomura {
  position: absolute;
  right: 10px;
  bottom: 0;
}
@media (max-width: 639px) {
  .area-category-description-01 .icon-nomura {
    width: 90px;
    right: 18px;
    bottom: -16px;
  }
}

.section-classroom-01 {
  max-width: 1200px;
  width: 100%;
  margin-inline: auto;
}
@media (min-width: 640px) {
  .section-classroom-01 {
    margin-top: 100px;
  }
}
@media (max-width: 639px) {
  .section-classroom-01 {
    margin-top: 60px;
  }
}
.section-classroom-01 .section-classroom-01__inner {
  margin-top: 32px;
}
.section-classroom-01 .section-classroom-01__inner .list__column2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto auto auto;
  padding-top: 30px;
  gap: 24px;
  max-width: 1200px;
  margin-inline: auto;
}
.section-classroom-01 .section-classroom-01__inner .list-classroom-01-wrapper {
  max-width: 1200px;
  width: 100%;
  margin-inline: auto;
}
@media (min-width: 640px) {
  .section-classroom-01 .section-classroom-01__inner .list-classroom-01-wrapper {
    padding: 24px 48px 40px;
  }
}

.box-rounded-corders-white {
  border-radius: var(--border-radius-12);
  background-color: var(--color-white);
  height: 100%;
}

@media (min-width: 640px) {
  .list-information-01-wrapper {
    padding: 24px 48px 40px;
  }
}
@media (max-width: 639px) {
  .list-information-01-wrapper {
    padding: 17px 16px 24px;
  }
}

.list-information-01 {
  display: flex;
  gap: 16px;
  flex-direction: column;
}

.list-information-01__item {
  display: flex;
}
@media (min-width: 640px) {
  .list-information-01__item {
    gap: 24px;
  }
}
@media (max-width: 639px) {
  .list-information-01__item {
    flex-direction: column;
    gap: 4px;
  }
}

.list-information-01__date {
  font-weight: 500;
  color: var(--color-gray);
}
@media (min-width: 640px) {
  .list-information-01__date {
    display: inline-block;
    font-size: var(--font-size-16);
  }
}
@media (max-width: 639px) {
  .list-information-01__date {
    font-size: var(--font-size-14);
  }
}

@media (min-width: 640px) {
  .list-information-01__title {
    display: inline-block;
  }
}
.list-information-01__link {
  font-weight: 500;
  color: var(--color-black);
}

.list-information-01__link.-pdf {
  position: relative;
}

.list-information-01__link.blank:after {
  bottom: unset;
}

@media (min-width: 640px) {
  .list-information-01__link,
  .list-information-01__text {
    font-size: var(--font-size-18);
    line-height: 1.555;
  }
}
@media (max-width: 639px) {
  .list-information-01__link,
  .list-information-01__text {
    font-size: var(--font-size-16);
    line-height: 1.555;
  }
}

.list-information-01__link,
.list-information-01__text {
  font-weight: 500;
  color: var(--color-black);
}

@media (max-width: 639px) {
  .section-classroom-01__inner {
    margin-top: 24px;
    display: flex;
    flex-direction: column;
    gap: 24px;
  }
}
@media (min-width: 640px) and (max-width: 1199px) {
  .section-classroom-01__inner {
    margin-top: 32px;
    display: flex;
    flex-direction: column;
    gap: 24px;
  }
}
@media (min-width: 1200px) {
  .section-classroom-01__inner {
    margin-top: 32px;
    display: grid;
    gap: 24px;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: auto 1fr;
  }
}
@media (min-width: 640px) {
  .section-information-01 {
    grid-row: 1/1;
    grid-column: 1/4;
  }
}
.section-information-01__header {
  display: flex;
  align-items: center;
}
@media (min-width: 640px) {
  .section-information-01__header {
    padding-top: 40px;
    padding-inline: 48px;
    position: relative;
    justify-content: center;
  }
}
@media (max-width: 6390px) {
  .section-information-01__header {
    padding: 17px 16px 0;
  }
}

.section-information-01__heading-3 {
  color: var(--color-main);
  font-weight: bold;
  display: inline-flex;
}

@media (max-width: 639px) {
  .section-information-01__heading-3 {
    font-size: var(--font-size-20);
  }
}
@media (min-width: 640px) {
  .section-information-01__heading-3 {
    font-size: var(--font-size-23);
  }
}
.section-information-01__header-link {
  color: var(--color-text-link-02);
  font-size: var(--font-size-16);
  font-weight: 500;
}

@media (min-width: 640px) {
  .section-information-01__header-link {
    position: absolute;
    right: 48px;
  }
}
.section-information-02__list-wrapper {
  padding-top: 24px;
}

@media (max-width: 639px) {
  .section-information-02__list-wrapper {
    padding-inline: 16px;
    padding-bottom: 24px;
  }
}
@media (min-width: 640px) {
  .section-information-02__list-wrapper {
    padding-bottom: 32px;
    padding-inline: 24px;
  }
}
.section-classroom-01__inner:has(.section-actual-results-02) {
  margin-top: 32px;
  display: grid;
  gap: 24px;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto 1fr;
}
@media (max-width: 639px) {
  .section-classroom-01__inner:has(.section-actual-results-02) {
    gap: 16px;
  }
}
.section-classroom-01__inner .section-actual-results-02__wrapper {
  padding: 24px 48px 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: 12px;
}
@media (max-width: 639px) {
  .section-classroom-01__inner .section-actual-results-02__wrapper {
    padding: 17px 16px 24px;
  }
}
.section-classroom-01__inner .section-actual-results-02__wrapper .title {
  font-size: var(--font-size-24);
  font-weight: 700;
  line-height: 1.5;
}
@media (max-width: 639px) {
  .section-classroom-01__inner .section-actual-results-02__wrapper .title {
    font-size: var(--font-size-18);
  }
}
.section-classroom-01__inner .section-actual-results-02__wrapper .paragraph {
  font-size: var(--font-size-18);
  font-weight: 700;
  line-height: 1.5;
}
@media (max-width: 639px) {
  .section-classroom-01__inner .section-actual-results-02__wrapper .paragraph {
    font-size: var(--font-size-15);
  }
}
.section-classroom-01__inner .section-actual-results-02__wrapper .paragraph span {
  font-size: var(--font-size-24);
  color: var(--color-main);
}

@media (max-width: 639px) {
  .section-classroom-01__inner .section-actual-results-02__wrapper .paragraph span {
    font-size: var(--font-size-17);
  }
}

.section-contact-01__note {
  font-size: var(--font-size-18);
  font-weight: 400;
  line-height: 1.5;
}
@media (max-width: 639px) {
  .section-contact-01__note {
    font-size: var(--font-size-16);
  }
}

.section-ranking-01 .box-rounded-corders-white {
  max-width: 722px;
  margin: 40px auto 0;
}
.section-ranking-01 .box-rounded-corders-white .section-ranking-01__inner {
  max-width: 522px;
  margin: 0 auto;
  padding: 40px 10px;
  display: flex;
  flex-direction: column;
  row-gap: 24px;
}
.section-ranking-01 .box-rounded-corders-white .section-ranking-01__inner .title {
  padding: 14px;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.6;
  display: flex;
  align-items: center;
  gap: 10px;
  background-color: #F2EEEC;
  border-radius: 500px;
}
@media (max-width: 639px) {
  .section-ranking-01 .box-rounded-corders-white .section-ranking-01__inner .title {
    padding: 14px 24px;
  }
}
.section-ranking-01 .box-rounded-corders-white .section-ranking-01__inner .title:before {
  content: "";
  width: 28px;
  height: 28px;
  background: url(/shared/images/classroom/ico-q.svg) no-repeat;
  background-size: contain;
  flex-shrink: 0;
}
.section-ranking-01 .box-rounded-corders-white .section-ranking-01__inner .section-ranking-01__list-wrapper .list-ranking-01 {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.section-ranking-01 .box-rounded-corders-white .section-ranking-01__inner .section-ranking-01__list-wrapper .list-ranking-01 dt {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.6;
  color: var(--color-main);
  text-align: center;
}
.section-ranking-01 .box-rounded-corders-white .section-ranking-01__inner .section-ranking-01__list-wrapper .list-ranking-01 dd {
  display: flex;
  align-items: center;
  column-gap: 5px;
  font-size: var(--font-size-18);
  font-weight: 400;
  line-height: 1.6;
}
@media (max-width: 639px) {
  .section-ranking-01 .box-rounded-corders-white .section-ranking-01__inner .section-ranking-01__list-wrapper .list-ranking-01 dd {
    font-size: var(--font-size-16);
  }
}
.section-ranking-01 .box-rounded-corders-white .section-ranking-01__inner .section-ranking-01__list-wrapper .list-ranking-01 dd:nth-of-type(1) {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.6;
}
@media (max-width: 639px) {
  .section-ranking-01 .box-rounded-corders-white .section-ranking-01__inner .section-ranking-01__list-wrapper .list-ranking-01 dd:nth-of-type(1) {
    font-size: var(--font-size-16);
  }
}
.section-ranking-01 .box-rounded-corders-white .section-ranking-01__inner .section-ranking-01__list-wrapper .list-ranking-01 dd:nth-of-type(1):before {
  content: "";
  width: 33px;
  height: 27px;
  background: url(/shared/images/classroom/ico-rank__01.svg) no-repeat;
  background-size: contain;
}
.section-ranking-01 .box-rounded-corders-white .section-ranking-01__inner .section-ranking-01__list-wrapper .list-ranking-01 dd:nth-of-type(2):before {
  content: "";
  width: 33px;
  height: 27px;
  background: url(/shared/images/classroom/ico-rank__02.svg) no-repeat;
  background-size: contain;
}
.section-ranking-01 .box-rounded-corders-white .section-ranking-01__inner .section-ranking-01__list-wrapper .list-ranking-01 dd:nth-of-type(3):before {
  content: "";
  width: 33px;
  height: 27px;
  background: url(/shared/images/classroom/ico-rank__03.svg) no-repeat;
  background-size: contain;
}
.section-ranking-01 .box-rounded-corders-white .section-ranking-01__inner .section-ranking-01__list-wrapper .list-ranking-01 dd:last-of-type {
  padding-inline-start: 37px;
}
.section-ranking-01 .box-rounded-corders-white .section-ranking-01__inner .section-ranking-01__note {
  font-size: var(--font-size-14);
  text-align: right;
}
@media (max-width: 639px) {
  .section-ranking-01 .box-rounded-corders-white .section-ranking-01__inner .section-ranking-01__note {
    text-align: left;
  }
}


.page-link-list-01 {
  margin-block-start: 60px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px 45px;
}
@media (max-width: 639px) {
  .page-link-list-01 {
    margin-block-start: 30px;
    gap: 5px 20px;
  }
}
.page-link-list-01 .page-link-list-01__item {
  font-size: var(--font-size-18);
  color: var(--color-main);
  line-height: 1.6;
  display: flex;
  align-items: center;
  column-gap: 9px;
}
@media (max-width: 639px) {
  .page-link-list-01 .page-link-list-01__item {
    font-size: var(--font-size-16);
  }
}
.page-link-list-01 .page-link-list-01__item:before {
  content: "";
  width: 18px;
  height: 32px;
  display: block;
  background: url(/shared/images/icon/icon_bottom_red.svg) center center no-repeat;
  background-size: contain;
}
.page-link-list-01 .page-link-list-01__item a {
  color: var(--color-text-link-02);
}
.page-link-list-01 .page-link-list-01__item a:hover {
  text-decoration: underline;
}

.heading-program-01 {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 16px;
}
.heading-program-01:before {
  content: "";
  width: 60px;
  height: 60px;
  display: block;
  background: url(/shared/images/classroom/icon_program__01.svg) center center no-repeat;
  background-size: contain;
}

.heading-program-02 {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 16px;
}
.heading-program-02:before {
  content: "";
  width: 60px;
  height: 60px;
  display: block;
  background: url(/shared/images/classroom/icon_program__02.svg) center center no-repeat;
  background-size: contain;
}

.heading-program-03 {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 16px;
}
.heading-program-03:before {
  content: "";
  width: 60px;
  height: 60px;
  display: block;
  background: url(/shared/images/classroom/icon_program__03.svg) center center no-repeat;
  background-size: contain;
}

.heading-program-04 {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 16px;
}
.heading-program-04:before {
  content: "";
  width: 60px;
  height: 60px;
  display: block;
  background: url(/shared/images/classroom/icon_program__04.svg) center center no-repeat;
  background-size: contain;
}

.heading-program-05 {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 16px;
}
.heading-program-05:before {
  content: "";
  width: 60px;
  height: 60px;
  display: block;
  background: url(/shared/images/classroom/icon_program__05.svg) center center no-repeat;
  background-size: contain;
}

.heading-program-06 {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 16px;
}
.heading-program-06:before {
  content: "";
  width: 60px;
  height: 60px;
  display: block;
  background: url(/shared/images/classroom/icon_program__06.svg) center center no-repeat;
  background-size: contain;
}

.heading-program-07 {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 16px;
}
.heading-program-07:before {
  content: "";
  width: 60px;
  height: 60px;
  display: block;
  background: url(/shared/images/classroom/icon_program__07.svg) center center no-repeat;
  background-size: contain;
}

.heading-program-08 {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 16px;
}
.heading-program-08:before {
  content: "";
  width: 60px;
  height: 60px;
  display: block;
  background: url(/shared/images/classroom/icon_program__08.svg) center center no-repeat;
  background-size: contain;
}

.section-classroom-01__lead {
  padding-top: 24px;
  font-size: var(--font-size-16);
  line-height: 1.5;
  text-align: center;
}
@media (max-width: 639px) {
  .section-classroom-01__lead {
    padding-top: 16px;
    font-size: var(--font-size-14);
  }
}

@media (min-width: 1200px) {
  .article-list-01 {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    padding-top: 30px;
    gap: 24px;
    max-width: 1200px;
    margin-inline: auto;
  }
}
@media (min-width: 640px) and (max-width: 1199px) {
  .article-list-01 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding-top: 30px;
    gap: 24px;
    margin-inline: auto;
  }
}
@media (max-width: 639px) {
  .article-list-01 {
    margin-top: 16px;
  }
}
.article-list-01 .article-list-01__item {
  border-bottom: 1px solid var(--color-gray-lighter);
}
@media (min-width: 640px) {
  .article-list-01 .article-list-01__item {
    background-color: var(--color-white);
    border-radius: var(--border-radius-12);
  }
}
@media (max-width: 639px) {
  .article-list-01 .article-list-01__item {
    border-radius: 0;
    padding: 16px 16px 16px 100px;
    min-height: 122px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
  }
}
@media (max-width: 639px) {
  .article-list-01 .article-list-01__item:first-child {
    border-top: 1px solid var(--color-gray-lighter);
  }
}
.article-list-01 .article-list-01__item .article-list-01__link,
.article-list-01 .article-list-01__item .article-list-01__detail {
  display: block;
  display: grid;
}
@media (min-width: 640px) {
  .article-list-01 .article-list-01__item .article-list-01__link,
  .article-list-01 .article-list-01__item .article-list-01__detail {
    padding-bottom: 24px;
  }
}
.article-list-01 .article-list-01__item .article-list-01__link:visited *,
.article-list-01 .article-list-01__item .article-list-01__detail:visited * {
  color: var(--color-gray);
}
.article-list-01 .article-list-01__item .article-list-01__link:visited .article-list-01__more-read,
.article-list-01 .article-list-01__item .article-list-01__detail:visited .article-list-01__more-read {
  color: var(--color-gray);
}
.article-list-01 .article-list-01__item .article-list-01__link:has(+ .article-list-01__text-link),
.article-list-01 .article-list-01__item .article-list-01__detail:has(+ .article-list-01__text-link) {
  padding-bottom: 0;
}
@media (min-width: 640px) {
  .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading,
  .article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading {
    display: flex;
    flex-direction: column;
  }
}
.article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__label,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__label {
  margin-top: 16px;
  margin-inline: 16px;
  display: flex;
  flex-wrap: wrap;
  column-gap: 10px;
  row-gap: 4px;
}
@media (max-width: 639px) {
  .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__label,
  .article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__label {
    margin-top: 0;
    margin-inline-start: 0;
  }
}
.article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__label .label, .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__label .label-blank, .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__label .label-purple, .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__label .label-green, .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__label .label-blue, .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__label .label-lightgreen, .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__label .label-brown,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__label .label,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__label .label-blank,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__label .label-purple,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__label .label-green,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__label .label-blue,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__label .label-lightgreen,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__label .label-brown {
  height: 25px;
  padding-inline: 8px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  border: solid 1px #E3E1DF;
  border-radius: 4px;
}
.article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__label .label-brown,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__label .label-brown {
  color: #DF8012;
}
.article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__label .label-lightgreen,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__label .label-lightgreen {
  color: #0DBC86;
}
.article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__label .label-blue,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__label .label-blue {
  color: #3A7BE3;
}
.article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__label .label-green,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__label .label-green {
  color: #137870;
}
.article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__label .label-purple,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__label .label-purple {
  color: #905EEC;
}
.article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__label .label-blank,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__label .label-blank {
  border: solid 1px transparent;
}
.article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__label .label-blank:before,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__label .label-blank:before {
  content: " ";
}
.article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__note,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__note {
  padding-inline: 24px;
  margin-top: 5px;
  color: var(--color-gray);
  font-weight: 500;
  font-size: var(--font-size-14);
}
@media (max-width: 639px) {
  .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__note,
  .article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__note {
    padding-inline: 0;
  }
}
@media (min-width: 640px) {
  .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__title-numbers,
  .article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__title-numbers {
    order: 2;
  }
}
@media (max-width: 639px) {
  .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__title-numbers,
  .article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__title-numbers {
    order: 1;
  }
}
.article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__title-numbers .article-list-01__title,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__title-numbers .article-list-01__title {
  color: var(--color-black);
  font-weight: bold;
  position: relative;
  display: flex;
  align-items: center;
}
@media (min-width: 640px) {
  .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__title-numbers .article-list-01__title,
  .article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__title-numbers .article-list-01__title {
    font-size: var(--font-size-18);
    padding-inline: 24px;
    margin-top: 5px;
    display: block;
    align-items: center;
  }
}
@media (max-width: 639px) {
  .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__title-numbers .article-list-01__title,
  .article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__title-numbers .article-list-01__title {
    font-size: var(--font-size-14);
  }
}
@media (min-width: 640px) {
  .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__title-numbers .article-list-01__title.icon__arrow-right,
  .article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__title-numbers .article-list-01__title.icon__arrow-right {
    padding-left: 49px;
  }
}
@media (max-width: 639px) {
  .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__title-numbers .article-list-01__title.icon__arrow-right,
  .article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__title-numbers .article-list-01__title.icon__arrow-right {
    align-items: center;
    padding-left: 18px;
    display: block;
  }
}
.article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__title-numbers .article-list-01__title.icon__arrow-right:before,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__title-numbers .article-list-01__title.icon__arrow-right:before {
  content: "";
  width: 16px;
  height: 27px;
  background: url(/shared/images/icon/icon_arrow_red_01.svg) center center no-repeat;
  background-size: contain;
  flex-shrink: 0;
  position: absolute;
}
@media (min-width: 640px) {
  .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__title-numbers .article-list-01__title.icon__arrow-right:before,
  .article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__title-numbers .article-list-01__title.icon__arrow-right:before {
    left: 24px;
    top: 0;
  }
}
@media (max-width: 639px) {
  .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__title-numbers .article-list-01__title.icon__arrow-right:before,
  .article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__title-numbers .article-list-01__title.icon__arrow-right:before {
    height: 21px;
    left: 0;
  }
}
.article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__title-numbers .article-list-01__title.blank:after,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__title-numbers .article-list-01__title.blank:after {
  content: url("/shared/images/icon/icon_new_window_dark_orange_01.svg");
  height: 14px;
  margin-left: 4px;
  position: static;
  bottom: unset;
  width: 14px;
}
@media (min-width: 640px) {
  .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__title-numbers .article-list-01__title.blank:after,
  .article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__title-numbers .article-list-01__title.blank:after {
    bottom: unset;
  }
}
@media (min-width: 640px) {
  .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__image-wrapper,
  .article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__image-wrapper {
    margin-top: 16px;
    margin-inline: 16px;
    order: 1;
    overflow: hidden;
    border-radius: var(--border-radius-12);
  }
}
@media (max-width: 639px) {
  .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__image-wrapper,
  .article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__image-wrapper {
    height: 90px;
    margin: auto;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
  }
}
@media (min-width: 640px) {
  .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__image-wrapper.book,
  .article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__image-wrapper.book {
    height: 0;
    padding-block-start: 63.2398753894%;
    position: relative;
  }
}
@media (min-width: 640px) {
  .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__image-wrapper.book .article-list-01__image.-thumb,
  .article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__image-wrapper.book .article-list-01__image.-thumb {
    width: auto;
    height: 100%;
    margin-inline: auto;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
  }
}
.article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__image-wrapper .article-list-01__image,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__image-wrapper .article-list-01__image {
  width: 100%;
  object-fit: contain;
  height: auto;
  border-radius: var(--border-radius-12);
}
@media (max-width: 639px) {
  .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__image-wrapper .article-list-01__image,
  .article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__image-wrapper .article-list-01__image {
    width: 90px;
    height: 90px;
    object-fit: cover;
  }
}
@media (max-width: 639px) {
  .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__image-wrapper .article-list-01__image.-thumb,
  .article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__image-wrapper .article-list-01__image.-thumb {
    display: none;
  }
}
@media (min-width: 640px) {
  .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__heading .article-list-01__image-wrapper .article-list-01__image.-thumb-small,
  .article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__heading .article-list-01__image-wrapper .article-list-01__image.-thumb-small {
    display: none;
  }
}
.article-list-01 .article-list-01__item .article-list-01__link .article-list-01__paragraph,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__paragraph {
  color: var(--color-black);
  margin-top: 5px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
}
@media (max-width: 639px) {
  .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__paragraph,
  .article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__paragraph {
    font-size: var(--font-size-14);
    line-height: 1.714;
    -webkit-line-clamp: 3;
  }
}
@media (min-width: 640px) {
  .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__paragraph,
  .article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__paragraph {
    font-size: var(--font-size-15);
    padding-inline: 24px;
    line-height: 1.867;
    -webkit-line-clamp: 5;
  }
}
@media (min-width: 640px) {
  .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__numbers,
  .article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__numbers {
    padding-inline: 24px;
    margin-top: 4px;
  }
}
.article-list-01 .article-list-01__item .article-list-01__link .article-list-01__numbers .article-list-01__date,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__numbers .article-list-01__date {
  color: var(--color-gray);
  font-weight: 500;
  font-size: var(--font-size-14);
}
.article-list-01 .article-list-01__item .article-list-01__link .article-list-01__numbers .article-list-01__times,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__numbers .article-list-01__times {
  color: var(--color-gray);
  font-weight: 500;
  font-size: var(--font-size-14);
}
.article-list-01 .article-list-01__item .article-list-01__link .article-list-01__numbers .article-list-01__times:before,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__numbers .article-list-01__times:before {
  content: "（";
}
.article-list-01 .article-list-01__item .article-list-01__link .article-list-01__numbers .article-list-01__times:after,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__numbers .article-list-01__times:after {
  content: "）";
}
.article-list-01 .article-list-01__item .article-list-01__link .article-list-01__more-read,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__more-read {
  color: var(--color-text-link-02);
  font-weight: 500;
  font-size: var(--font-size-14);
  display: block;
  text-align: right;
}
.article-list-01 .article-list-01__item .article-list-01__link .article-list-01__more-read:before,
.article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__more-read:before {
  content: url(/shared/images/icon/icon_arrow_red_01.svg);
  width: 11.41px;
  height: 9.5px;
  align-items: center;
  margin-right: 8.6px;
}
@media (min-width: 640px) {
  .article-list-01 .article-list-01__item .article-list-01__link .article-list-01__more-read,
  .article-list-01 .article-list-01__item .article-list-01__detail .article-list-01__more-read {
    padding-inline: 24px;
    margin-top: 16px;
  }
}
@media (min-width: 640px) {
  .article-list-01 .article-list-01__item .article-list-01__link .hover__underline, .article-list-01 .article-list-01__item .article-list-01__link .hover__add-border, .article-list-01 .article-list-01__item .article-list-01__link .hover__font-weight__bold, .article-list-01 .article-list-01__item .article-list-01__link .hover__reversal_underline_blue,
  .article-list-01 .article-list-01__item .article-list-01__detail .hover__underline,
  .article-list-01 .article-list-01__item .article-list-01__detail .hover__add-border,
  .article-list-01 .article-list-01__item .article-list-01__detail .hover__font-weight__bold,
  .article-list-01 .article-list-01__item .article-list-01__detail .hover__reversal_underline_blue {
    transform-origin: right top;
    transition: all 0.3s 0.15s;
  }
}
.article-list-01 .article-list-01__item .article-list-01__text-link {
  margin-top: 5px;
  color: var(--color-black);
  font-weight: 500;
  font-size: var(--font-size-14);
  display: block;
}
@media (min-width: 640px) {
  .article-list-01 .article-list-01__item .article-list-01__text-link {
    padding-inline: 24px;
    margin-top: 5px;
  }
}
@media (max-width: 639px) {
  .article-list-01 .article-list-01__item .article-list-01__text-link {
    margin-top: 0;
  }
}
.article-list-01 .article-list-01__item .article-list-01__text-link:last-child {
  margin-bottom: 24px;
}
@media (max-width: 639px) {
  .article-list-01 .article-list-01__item .article-list-01__text-link:last-child {
    margin-bottom: 0;
  }
}
.article-list-01 .article-list-01__item .article-list-01__text-link:visited {
  color: var(--color-gray);
}
.article-list-01 .article-list-01__item .article-list-01__text-link.blank:after {
  bottom: unset;
}
.article-list-01 .article-list-01__item .article-list-01__text-link.pdf:after {
  content: "";
  contain: content;
  width: 21.6px;
  height: 24px;
  display: inline-block;
  inset-block: auto;
  vertical-align: -6px;
  background-repeat: no-repeat;
  background-image: url("/shared/images/icon/icon_pdf_01.svg");
}

.list-rounded-corners-01 {
  padding-top: 60px;
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  justify-content: center;
}

.list-arrow-01 {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.list-arrow-01__link {
  color: var(--color-black);
  font-weight: 500;
  font-size: var(--font-size-16);
}
.list-arrow-01__link.blank:after {
  bottom: unset;
}

.list-rounded-corners-01__item {
  width: auto;
  max-width: unset;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 779px) {
  .list-rounded-corners-01__item {
    width: 100%;
  }
}

.list-rounded-corners-01__link {
  border-radius: 500px;
  font-weight: bold;
  display: inline-flex;
  justify-content: center;
  align-items: center;
}
.list-rounded-corners-01__link span {
  font-size: var(--font-size-16);
}

.list-rounded-corners-01__link.-white {
  background-color: var(--color-white);
  border: 2px solid var(--color-link-border-01);
  font-size: var(--font-size-16);
  color: var(--color-black);
  width: 100%;
  height: 48px;
}

@media (max-width: 360px) {
  .list-rounded-corners-01__link.-blue {
    font-size: var(--font-size-14);
  }
}
.list-rounded-corners-01__link.-blue {
  background-color: var(--color-text-background-blue);
  font-size: var(--font-size-24);
  color: var(--color-white);
  width: 100%;
  min-height: 111px;
  height: auto;
  padding: 20px 92px 20px 57px;
}
@media (max-width: 639px) {
  .list-rounded-corners-01__link.-blue {
    min-height: 61px;
    font-size: var(--font-size-14);
    padding: 15px 92px 15px 37px;
  }
}
.list-rounded-corners-01__link.-blue > div {
  text-align: center;
}
.list-rounded-corners-01__link.-blue > div > div {
  display: flex;
  align-items: center;
}
@media (max-width: 1000px) {
  .list-rounded-corners-01__link.-blue > div > div {
    flex-direction: column;
  }
}
@media (max-width: 639px) {
  .list-rounded-corners-01__link.-blue > div > div span {
    font-size: var(--font-size-14);
  }
}

.list-rounded-corners-01__link.-blue:not([href]) {
  background-color: var(--color-link-disabled-01);
}

.list-rounded-corners-01__link.-blue:not([href]):hover::after {
  transform: scale(1);
}

.list-rounded-corners-01__link.-blue:not([href])::after {
  background-image: url(/shared/images/icon/icon_arrow_right_upper_white_01.svg);
}

@media (min-width: 1360px) {
  .list-rounded-corners-01__link.-pd-left {
    justify-content: flex-start;
    padding-left: 26px;
  }
}
.list-rounded-corners-01__link {
  position: relative;
}

/* iconの設定 */
.list-rounded-corners-01__link::after {
  content: "";
  width: 46px;
  height: 46px;
  display: block;
  inset-block: auto;
  position: absolute;
  right: 38px;
  background-repeat: no-repeat;
  background-size: contain;
}
.list-rounded-corners-01__link.-arrow-right-upper-red::after {
  background-image: url(/shared/images/icon/icon_arrow_right_upper_red_01.svg);
}

.list-rounded-corners-01__link.-arrow-right-upper-blue::after {
  background-image: url(/shared/images/icon/icon_arrow_right_upper_white_02.svg);
}

.list-rounded-corners-01__link.-new-window-red::after {
  background-image: url(/shared/images/icon/icon_new_window_white_circle_red.svg);
}

.list-rounded-corners-01__link.-new-window-blue::after {
  background-image: url(/shared/images/icon/icon_new_window_blue_circle_white.svg);
}

@media (max-width: 360px) {
  .list-rounded-corners-01__label-small {
    font-size: 80%;
  }
}
.list-rounded-corners-01__label-small {
  color: var(--color-white);
  font-size: var(--font-size-15);
  font-weight: bold;
  padding-top: 3px;
}

.list-rounded-corners-01__lead {
  margin-bottom: 24px;
  padding-top: 60px;
  font-size: var(--font-size-18);
  font-weight: 400;
  line-height: 1.5;
  text-align: center;
}
@media (max-width: 639px) {
  .list-rounded-corners-01__lead {
    margin-bottom: 16px;
    font-size: var(--font-size-14);
  }
}
.list-rounded-corners-01__lead:has(+ .list-rounded-corners-01) + .list-rounded-corners-01 {
  padding-top: 0;
}

/* margin-top */
.mt-xs {
  margin-top: 16px;
}

.mt-s {
  margin-top: 16px;
}

.mt-m {
  margin-top: 24px;
}

.mt-l {
  margin-top: 40px;
}

.mt-xl {
  margin-top: 48px;
}

.mt-xxl {
  margin-top: 64px;
}

@media (min-width: 640px) {
  .mt-xs {
    margin-top: 24px;
  }
  .mt-s {
    margin-top: 32px;
  }
  .mt-m {
    margin-top: 40px;
  }
  .mt-l {
    margin-top: 64px;
  }
  .mt-xl {
    margin-top: 64px;
  }
  .mt-xxl {
    margin-top: 100px;
  }
}
/* margin-bottom */
.mb-xs {
  margin-bottom: 16px;
}

.mb-s {
  margin-bottom: 16px;
}

.mb-m {
  margin-bottom: 24px;
}

.mb-l {
  margin-bottom: 40px;
}

.mb-xl {
  margin-bottom: 48px;
}

.mb-xxl {
  margin-bottom: 64px;
}

@media (min-width: 640px) {
  .mb-xs {
    margin-bottom: 24px;
  }
  .mb-s {
    margin-bottom: 32px;
  }
  .mb-m {
    margin-bottom: 40px;
  }
  .mb-l {
    margin-bottom: 64px;
  }
  .mb-xl {
    margin-bottom: 64px;
  }
  .mb-xxl {
    margin-bottom: 100px;
  }
}
/* padding-bottom */
.pt-xs {
  padding-top: 16px;
}

.pt-s {
  padding-top: 16px;
}

.pt-m {
  padding-top: 24px;
}

.pt-l {
  padding-top: 40px;
}

.pt-xl {
  padding-top: 48px;
}

.pt-xxl {
  padding-top: 64px;
}

@media (min-width: 640px) {
  .pt-xs {
    padding-top: 24px;
  }
  .pt-s {
    padding-top: 32px;
  }
  .pt-m {
    padding-top: 40px;
  }
  .pt-l {
    padding-top: 64px;
  }
  .pt-xl {
    padding-top: 64px;
  }
  .pt-xxl {
    padding-top: 100px;
  }
}
/* padding-botton */
.pb-xs {
  padding-bottom: 16px;
}

.pb-s {
  padding-bottom: 16px;
}

.pb-m {
  padding-bottom: 24px;
}

.pb-l {
  padding-bottom: 40px;
}

.pb-xl {
  padding-bottom: 48px;
}

.pb-xxl {
  padding-bottom: 64px;
}

@media (min-width: 640px) {
  .pb-xs {
    padding-bottom: 24px;
  }
  .pb-s {
    padding-bottom: 32px;
  }
  .pb-m {
    padding-bottom: 40px;
  }
  .pb-l {
    padding-bottom: 64px;
  }
  .pb-xl {
    padding-bottom: 64px;
  }
  .pb-xxl {
    padding-bottom: 100px;
  }
}
/* 個別 */
.pb-50 {
  padding-bottom: 50px;
}

@media (min-width: 640px) {
  .mr-20 {
    margin-right: 20px;
  }
}
/* デザインが8の倍数で幅を取るためmtの後の数値に8をかけた後がmargin-topの数となる */
.mt-1 {
  margin-top: 8px;
}

.mt-2 {
  margin-top: 16px;
}

.mt-3 {
  margin-top: 24px;
}

.mt-4 {
  margin-top: 32px;
}

.mt-5 {
  margin-top: 40px;
}

.mt-6 {
  margin-top: 48px;
}

.mt-7 {
  margin-top: 56px;
}

.mt-8 {
  margin-top: 64px;
}

.ta-c {
  text-align: center;
}

@media (min-width: 640px) {
  .only-sp {
    display: none;
  }
}
@media (max-width: 639px) {
  .only-sp {
    display: inherit;
  }
}

/* ------------------

下層ページ新デザイン

------------------ */

/* アウトライン 他ページ共通パーツ */
body.classroom-basic .container--left-radius {
  background-color: var(--color-main-background);
  border-top-left-radius: 40px;
  padding-left: var(--sp-space-padding);
}
body.classroom-basic .container--left-radius.-transparent {
    background-color: var(--color-white);
  }
@media (max-width: 639px) {
  body.classroom-basic .container--left-radius {
      padding-inline: var(--sp-space-padding)
  }
    }
@media (min-width: 640px) {
  body.classroom-basic .container--left-radius {
      padding-inline: 80px
  }
    }
@media (max-width: 999px) {

  body.classroom-basic .container--left-radius {
      padding-bottom: 48px
  }
    }
@media (min-width: 1000px) {
  body.classroom-basic .container--left-radius {
      padding-bottom: 100px
  }
    }
@media (min-width: 640px) {
  .container--left-radius {
    background-color: var(--color-main-background);
    border-top-left-radius: 80px;
  }
}
body.classroom-basic main {
  color: var(--color-black);
}
@media (max-width: 639px) {
  body.classroom-basic main {
    font-size: var(--font-size-16);
  }
}
@media (min-width: 640px) {
  body.classroom-basic main {
    font-size: var(--font-size-18);
  }
}
@media (min-width: 1000px) {
  body.classroom-basic .article-details-wrapper {
    display: flex;
    gap: 80px;
    align-items: flex-end;

    main:only-child {
      width: 100%;
      max-width: 800px;
      margin-inline: auto;
    }
  }
}
@media (max-width: 639px) {
  body.classroom-basic .container-wrapper {
    margin-top: 16px
  }
}
@media (min-width: 640px) {
  body.classroom-basic .container-wrapper {
    margin-top: 40px
  }
}
body.classroom-basic .category-title {
  color: var(--color-main);
  font-weight: bold;
  display: flex;
  align-items: center;
}
body.classroom .category-title::before {
  content: "";
  background: url(/shared/images/icon/icon_classroom_01.svg) no-repeat center;
}
body.classroom-basic .category-title::before {
  height: 40px;
  display: inline-block;
  margin-right: 16px;
  margin-left: 2px;
  width: 30px;
}
@media (max-width: 639px) {
  body.classroom-basic .category-title {
    margin-top: 10px;
    font-size: var(--font-size-16)
  }
}
@media (min-width: 640px) {
  body.classroom-basic .category-title {
    margin-top: 18px;
    font-size: var(--font-size-18)
  }
}
body.classroom-basic .heading-1 {
  color: var(--color-black);
  line-height: 1.5;
  span {
    display: block;
    font-size: 50%;
    opacity: 0.7;
  }
}
@media (max-width: 639px) {
  body.classroom-basic .heading-1 {
    font-size: var(--font-size-26);
    margin-block: 4px 10px
  }
}
@media (min-width: 640px) {
  body.classroom-basic .heading-1 {
    font-size: var(--font-size-36);
    margin-block: 6px 10px
  }
}
body.classroom-basic .heading-1 {
  margin-bottom: 40px;
}
@media (max-width: 639px) {
  body.classroom-basic .heading-1 {
    margin-bottom: 24px;
  }
}
@media (max-width: 639px) {
  body.sl-manga-detail .share-article {
      margin-top: 40px
  }
    }
@media (min-width: 640px) {
  body.sl-manga-detail .share-article {
    margin-top: 64px
  }
}
.share-article-text {
  text-align: center;
  color: var(--color-black);
  font-size: var(--font-size-16);
  font-weight: bold;
  margin-inline: auto;
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
}
.share-article-text::before {
  background-color: var(--color-main);
  border-radius: 100px;
  bottom: 2px;
  content: "";
  height: 13px;
  left: -14px;
  position: absolute;
  transform: skewX(30deg);
  width: 2.5px;
}
.share-article-text::after {
  background-color: var(--color-main);
  border-radius: 100px;
  bottom: 2px;
  content: "";
  height: 13px;
  position: absolute;
  right: -14px;
  transform: skewX(-30deg);
  width: 2.5px;
}
.share-article-list {
  display: flex;
  justify-content: center;
  gap: 40px;
  margin-top: 19px;
}
.share-article-sns {
  display: inline-flex;
}

@media (min-width: 640px) {
.aside-article-detail-01 {
    margin-top: 10px
}
  }
@media (min-width: 1000px) {
.aside-article-detail-01 {
    position: sticky;
    bottom: 30px;
    width: 320px;
    flex-shrink: 0
}
  }

.section-side-list-01 {
  margin-bottom: 70px;
  h3:not(:first-child) {
    margin-top: 40px;
  }
}
@media (max-width: 999px) {
.section-side-list-01 {
    margin-top: 68px
}
  }
.heading-3 {
  color: var(--color-main);
  font-size: var(--font-size-20);
}
.side-list-01 {
  margin-top: 12px;
}
.side-list-item-01 {
  padding-block: 16px;
  border-bottom: 1px solid var(--color-gray-lighter);
}
.side-list-link-01 {
  display: flex;
  gap: 16px;
  color: var(--color-black);
  font-size: var(--font-size-16);
  font-weight: bold;
}
@media (max-width: 999px) {
    }
@media (min-width: 1000px) {
.side-list-item-01:first-child .side-list-link-01 {
      flex-direction: column
  }
      body.classroom-basic .update .side-list-item-01:first-child .side-list-link-01 {
        flex-direction: row;
      }
    }
/* section-side-list-02 */
.section-side-list-02 {
  margin-bottom: 70px;
}
@media (max-width: 999px) {
.section-side-list-02 {
    margin-top: 68px
}
  }
.section-side-list-02:last-child {
    margin-bottom: 0;
  }
.heading-3-02 {
  color: var(--color-green-02);
  font-size: var(--font-size-20);
}
.side-list-02 {
  margin-top: 12px;
}
.side-list-item-02 {
  padding-block: 16px;
  border-bottom: 1px solid var(--color-gray-lighter);
}
.side-list-link-02 {
  display: flex;
  gap: 16px;
  position: relative;
}
.side-list-item-02 .side-list-link-02::before {
    content: "";
    background-repeat: no-repeat;
    display: inline-block;
    width: 36px;
    flex-shrink: 0;
  }
.side-list-item-02:nth-child(1) .side-list-link-02::before {
    background-image: url("/shared/images/icon/icon_rank_circle_01.svg");
    height: 78.95px;
  }
.side-list-item-02:nth-child(2) .side-list-link-02::before {
    background-image: url("/shared/images/icon/icon_rank_circle_02.svg");
  }
.side-list-item-02:nth-child(3) .side-list-link-02::before {
    background-image: url("/shared/images/icon/icon_rank_circle_03.svg");
  }
.side-list-item-02:nth-child(4) .side-list-link-02::before {
    background-image: url("/shared/images/icon/icon_rank_circle_04.svg");
  }
.side-list-item-02:nth-child(5) .side-list-link-02::before {
    background-image: url("/shared/images/icon/icon_rank_circle_05.svg");
  }
.side-list-item-02:nth-of-type(-n + 3) .side-list-link-02::before {
    height: 78.95px;
  }
.side-list-item-02:nth-of-type(n + 4) .side-list-link-02::before {
    height: 68px;
  }
.side-list-item-02 .side-list-link-02::after {
    content: "";
    background-repeat: no-repeat;
    background-size: 20px;
    display: inline-block;
    width: 36px;
    height: 20px;
    flex-shrink: 0;
    position: absolute;
    background-position-x: center;
    background-size: contain;
  }
.side-list-item-02.-up .side-list-link-02::after {
    background-image: url("/shared/images/icon/icon_arrow_top_orange_01.svg");
  }
.side-list-item-02.-maintaining .side-list-link-02::after {
    background-image: url("/shared/images/icon/icon_arrow_right_gray_02.svg");
  }
.side-list-item-02.-down .side-list-link-02::after {
    background-image: url("/shared/images/icon/icon_arrow_bottom_blue_01.svg");
  }
.side-list-item-02:nth-of-type(-n + 3) .side-list-link-02::after {
    top: 58.95px;
  }
.side-list-item-02:nth-of-type(n + 4) .side-list-link-02::after {
    top: 48px;
  }
/* .link-table-of-contents */
.link-table-of-contents-wrapper {
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
}

@media (max-width: 639px) {
  .link-table-of-contents-wrapper {
    gap: 40px;
    align-items: center;
  }
}

@media (max-width: 999px) {
  .link-table-of-contents-wrapper {
    margin-inline: auto;
    margin-top: 48px;
  }
}

@media (min-width: 1000px) {
  .link-table-of-contents-wrapper {
    margin-inline: auto;
    margin-top: 64px;
  }
}

.link-table-of-contents-choices {
  display: flex;
  flex-direction: column;
  row-gap: 16px;
  @media (max-width: 639px) {
    row-gap: 8px;
  }
}

.link-table-of-contents {
  background-color: var(--color-link-text-background-01);
  border-radius: 500px;
  width: -moz-fit-content;
  width: fit-content;
  color: var(--color-main);
  font-size: var(--font-size-16);
  font-weight: bold;
  padding: 12px 110px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  min-width: 300px;
}

.link-table-of-contents.-back-number {
  padding: 12px 34px 12px 54.48px;
}

.link-table-of-contents::before {
  content: "";
  width: 28px;
  height: 28px;
  display: block;
  inset-block: auto;
  position: absolute;
  left: 10px;
  background-image: url(/shared/images/icon/icon_arrow_left_blue_01.svg);
}

.link-table-of-contents {
  background-color: var(--color-link-text-background-01);
  border-radius: 500px;
  width: -moz-fit-content;
  width: fit-content;
  color: var(--color-main);
  font-size: var(--font-size-16);
  font-weight: bold;
  padding: 12px 110px;
  display: inline-flex;
  align-items: center;
  position: relative;
  min-width: 300px;

  @media (max-width: 639px) {
    padding-inline: 50px;
  }
}

.link-table-of-contents.-back-number {
  padding: 12px 34px 12px 54.48px;
}

.link-table-of-contents::before {
  content: "";
  width: 28px;
  height: 28px;
  display: block;
  inset-block: auto;
  position: absolute;
  left: 10px;
  background-image: url(/shared/images/icon/icon_arrow_left_blue_01.svg);
}

.link-table-of-contents-next {
  background-color: var(--color-link-text-background-01);
  border-radius: 500px;
  width: -moz-fit-content;
  width: fit-content;
  color: var(--color-main);
  font-size: var(--font-size-16);
  font-weight: bold;
  padding: 12px 110px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  min-width: 300px;

  @media (max-width: 639px) {
    padding-inline: 50px;
  }
}

.link-table-of-contents-next::before {
  content: "";
  width: 28px;
  height: 28px;
  display: block;
  inset-block: auto;
  position: absolute;
  right: 10px;
  background-image: url(/shared/images/icon/icon_arrow_right_blue_01.svg);
}

.link-table-of-contents-wrapper ol {
  width: 100%;
}

/* コンテンツ領域 */
body.classroom-basic main {
  color: var(--color-black);
  flex-grow: 1;
}
@media (max-width: 639px) {
  body.classroom-basic .article-details-wrapper {
    font-size: var(--font-size-16);
  }
}
@media (min-width: 640px) {
  body.classroom-basic .article-details-wrapper {
    font-size: var(--font-size-18);
  }
}
body.classroom-basic .heading-1 {
  margin-bottom: 40px;
}
@media (max-width: 639px) {
  body.classroom-basic .heading-1 {
    margin-bottom: 24px;
  }
}
body.classroom-basic {
  section:not([class]):not(:first-child) {
    margin-top: 50px;
  }
  .small-heading {
    color: var(--color-main);
    line-height: 1.7;
    font-size: var(--font-size-32);
    small, span:not([class]) {
      font-size: 60%;
    }

    + p {
      margin-block-start: 20px;
    }
  }
  .x-small-heading {
    line-height: 1.5;
    font-size: var(--font-size-23);
    margin-block: 40px 16px;
  }
  .small-heading + .content {
    margin-top: 1.2rem;
  }
  .content p:not([class]):not(:first-child),
  .content ul:not([class]):not(:first-child) {
    margin-top: 1.2em;
  }
  .content p:not([class]) {
    line-height: 1.67;
  }
}
@media (max-width: 639px) {
  body.classroom-basic {
    .small-heading {
      font-size: var(--font-size-24);
    }
    .x-small-heading {
      font-size: var(--font-size-20);
    }
  }
}
body.classroom-basic {
  .content a,
  main .box a,
  .arrow,
  .arrow a,
  .pdf a {
    color: var(--color-black);
  }
  .container main .list-rounded-corners-01__link {
    color: #fff;
  }
  .orange {
    color: #f98c04;
  }
  .blank::after {
    bottom: 0.75em;
  }

  /* リンク */
  :is(.arrow, .blank, .pdf, .word, .excel, .powerpoint) a,
  a:is(.arrow, .blank, .pdf, .word, .excel, .powerpoint) {
    text-decoration: none !important;
    word-break: break-all;
  }
  @media (any-hover: hover) {
    :is(.arrow, .blank, .pdf, .word, .excel, .powerpoint) a:hover,
    a:is(.arrow, .blank, .pdf, .word, .excel, .powerpoint):hover {
      text-decoration: underline !important;
    }
  }
  .link-text {
    color: var(--color-text-link-01) !important;
    text-decoration: none !important;
  }
  @media (any-hover: hover) {
    .link-text:hover {
      text-decoration: underline !important;
    }
  }
}
body.classroom-basic {
  .content p:not([class]) a:not([class]) {
    text-decoration: underline;
  }
  .content .arrow {
    font-size: var(--font-size-16);
  }
  .arrow.arrow--prev::before {
    transform: scaleX(-1);
  }
  .pdf::before,
  .word::before,
  .excel::before,
  .powerpoint::before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 18px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 20px auto;
    margin-right: 6px;
    vertical-align: -0.2em;
  }
  .pdf::before {
    background-image: url(/images/classroom/ico-pdf.png) ;
  }
  .word::before {
    background-image: url(/images/sl/ico-word.png) ;
  }
  .excel::before {
    background-image: url(/images/sl/ico-excel.png) ;
  }
  .powerpoint::before {
    background-image: url(/images/sl/ico-powerpoint.png) ;
  }
}
@media screen and (min-width: 1000px) {
  body.classroom-basic .pdf::before,
  body.classroom-basic .word::before,
  body.classroom-basic .excel::before,
  body.classroom-basic .powerpoint::before {
    width: 26px;
    height: 24px;
    margin-right: 10px;
    background-size: 26px auto;
  }
}
body.classroom-basic {
  main .box {
    border-radius: 15px;
    margin-top: 36px;
    padding: 30px 20px;
    background-color: #faf6f4;
  }
  .table {
    font: inherit;
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    border-top: 1px solid #d9d9d9;
    border-left: 1px solid #d9d9d9;
    background-color: #fff;
  }
  .table:not(:first-child) {
    margin-top: 20px;
  }
  .table:not(:last-child) {
    margin-bottom: 20px;
  }
}
body.classroom-basic .table th,
body.classroom-basic .table td {
  font-size: 18px;
  text-align: left;
  padding: 16px;
  border-right: 1px solid #d9d9d9;
  border-bottom: 1px solid #d9d9d9;
}
body.classroom-basic .table.table--sl.schedule-table th {
  width: 125px;
}
@media (max-width: 639px) {
  body.classroom-basic .table th,
  body.classroom-basic .table td {
    font-size: 16px;
    padding: 8px;
  }
}
body.classroom-basic {
  .table th {
    font-weight: 700;
    background-color: #fff4e8;
  }
}

body.classroom-basic .warning {
  color: var(--color-main);
}

body.classroom-basic .image-box {
  display: flex;
  justify-content: center;
  gap: 1.5em;
  flex-wrap: wrap;
  margin-block: 32px;
  >div:not([class]) {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1em;
  }
  p {
    font-size: 80%;
    text-align: center;
    width: 100%;
    margin-top: 0!important;
  }
  +.image-box {
    margin-top: 48px;
  }
}
@media (max-width: 639px) {
  body.classroom-basic .image-box {
    flex-direction: column;
    align-items: center;
  }
}
@media (min-width: 640px) {
  body.classroom-basic .image-box .sp {
    display: none;
  }
}
@media (max-width: 639px) {
  body.classroom-basic .image-box .pc {
    display: none;
  }
}
body.classroom-basic .image-box.image-box--center img {
  margin-inline: auto;
}
body.classroom-basic .image-box.image-box--center img:not(.w-auto) {
  max-width: 280px;
}
body.classroom-basic .image-box.image-box--flex img {
  max-width: 280px;
}

body.classroom-basic .list-rounded-corners-01 {
  padding-top: 0;
}
body.classroom-basic .box-column {
  display: flex;
  gap: 1.25em;
}
body.classroom-basic .box-column img.w-auto {
  width: auto;
  margin-inline: auto;
}
@media (min-width: 640px) {
  body.classroom-basic .box-column {
    justify-content: space-between;
  }
  body.classroom-basic .box-column.box-column--pc-rev {
    flex-direction: row-reverse;
  }
  body.classroom-basic .box-column .w-200 {
    flex: 0 0 200px;
  }
  body.classroom-basic .box-column img:not(.w-auto) {
    margin-left: auto;
  }
}
@media (max-width: 639px) {
  body.classroom-basic .box-column {
    flex-direction: column;
    img {
      margin-inline: auto;
    }
  }
}
body.classroom-basic .box-page {
  background-color: #fff;
  width: fit-content;
  margin-inline: auto;
  padding: 16px 20px;
  >p {
    font-weight: 600;
  }
  dl {
    display: flex;
    justify-content: space-between;
    gap: 16px;
  }
}
body.classroom-basic .movie-box {
  text-align: center;
  margin-top: 60px;
  >p:first-child {
    color: var(--color-main);
    font-size: 20px;
    font-weight: 700;
  }
  .movie-box-col {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
    margin-top: 20px;
    a {
      display: block;
      +a {
        margin-top: 16px;
      }
    }
    p {
      font-size: 90%;
    }
  }
}
@media (max-width: 639px) {
  body.classroom-basic .movie-box {
    .movie-box-col {
      grid-template-columns: 1fr;
    }
  }
}
body.classroom-basic {
  .box-line {
    border-radius: 10px;
    border: 1px solid #8a8787;
    padding: 16px;
    * {
      margin-top: 0 !important;
    }
  }
  .box-line-label {
    color: var(--color-main);
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 8px;
  }

  .prog-list {
    text-align: center;
    &.prog-list--3col {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px;
    }
    a, img {
      display: block;
      width: fit-content;
      margin-inline: auto;
    }
    a {
      margin-block: 16px;
    }
    p {
      font-size: 80%;
    }
  }
}
@media (max-width: 639px) {
  body.classroom-basic {
    .prog-list.prog-list--3col {
      grid-template-columns: 1fr;
      gap: 40px;
    }
  }
}
/*! fancyBox v2.1.5 fancyapps.com | fancyapps.com/fancybox/#license */
.fancybox-wrap, .fancybox-skin, .fancybox-outer, .fancybox-inner, .fancybox-image, .fancybox-wrap iframe, .fancybox-wrap object, .fancybox-nav, .fancybox-nav span, .fancybox-tmp {
  padding: 0;
  margin: 0;
  border: 0;
  outline: none;
  vertical-align: top; }

.fancybox-wrap {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 8020; }

.fancybox-skin {
  position: relative;
  background-color: #fff;
  text-shadow: none;
  border-radius: 4px; }

.fancybox-opened {
  z-index: 8030; }

.fancybox-outer, .fancybox-inner {
  position: relative; }

.fancybox-inner {
  overflow: hidden; }

.fancybox-type-iframe .fancybox-inner {
  -webkit-overflow-scrolling: touch; }

.fancybox-error {
  margin: 0;
  padding: 15px;
  white-space: nowrap; }

.fancybox-image, .fancybox-iframe {
  display: block;
  width: 100%;
  height: 100%; }

.fancybox-image {
  max-width: 100%;
  max-height: 100%; }

#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
  background-image: url(/images/fancybox/fancybox_sprite.png); }

#fancybox-loading {
  position: fixed;
  top: 50%;
  left: 50%;
  margin-top: -22px;
  margin-left: -22px;
  background-position: 0 -108px;
  opacity: 0.8;
  cursor: pointer;
  z-index: 8060; }

#fancybox-loading div {
  width: 44px;
  height: 44px;
  background: url(/images/fancybox/fancybox_loading.gif) center center no-repeat; }

.fancybox-close {
  position: absolute;
  top: -18px;
  right: -18px;
  width: 36px;
  height: 36px;
  cursor: pointer;
  z-index: 8040; }

.fancybox-nav {
  position: absolute;
  top: 0;
  width: 40%;
  height: 100%;
  cursor: pointer;
  text-decoration: none;
  background: transparent url(blank.gif);
  /* helps IE */
  -webkit-tap-highlight-color: transparent;
  z-index: 8040; }

.fancybox-prev {
  left: 0; }

.fancybox-next {
  right: 0; }

.fancybox-nav span {
  position: absolute;
  top: 50%;
  width: 36px;
  height: 34px;
  margin-top: -18px;
  cursor: pointer;
  z-index: 8040;
  visibility: hidden; }

.fancybox-prev span {
  left: 10px;
  background-position: 0 -36px; }

.fancybox-next span {
  right: 10px;
  background-position: 0 -72px; }

.fancybox-nav:hover span {
  visibility: visible; }

.fancybox-tmp {
  position: absolute;
  top: -99999px;
  left: -99999px;
  max-width: 99999px;
  max-height: 99999px;
  overflow: visible !important; }

/* Overlay helper */
.fancybox-lock {
  overflow: visible !important;
  width: auto; }

.fancybox-lock body {
  overflow: hidden !important; }

.fancybox-lock-test {
  overflow-y: hidden !important; }

.fancybox-overlay {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  display: none;
  z-index: 8010;
  background-color: rgba(51, 51, 51, 0.5); }

.fancybox-overlay-fixed {
  position: fixed;
  bottom: 0;
  right: 0; }

.fancybox-lock .fancybox-overlay {
  overflow: auto;
  overflow-y: scroll; }

/* Title helper */
.fancybox-title {
  visibility: hidden;
  font: normal 13px/20px "Helvetica Neue", Helvetica, Arial, sans-serif;
  position: relative;
  text-shadow: none;
  z-index: 8050; }

.fancybox-opened .fancybox-title {
  visibility: visible; }

.fancybox-title-float-wrap {
  position: absolute;
  bottom: 0;
  right: 50%;
  margin-bottom: -35px;
  z-index: 8050;
  text-align: center; }

.fancybox-title-float-wrap .child {
  display: inline-block;
  margin-right: -100%;
  padding: 2px 20px;
  background: transparent;
  /* Fallback for web browsers that doesn't support RGBa */
  background: rgba(0, 0, 0, 0.8);
  border-radius: 15px;
  text-shadow: 0 1px 2px #222;
  color: #FFF;
  font-weight: bold;
  line-height: 24px;
  white-space: nowrap; }

.fancybox-title-outside-wrap {
  position: relative;
  margin-top: 10px;
  color: #fff; }

.fancybox-title-inside-wrap {
  padding-top: 10px; }

.fancybox-title-over-wrap {
  position: absolute;
  bottom: 0;
  left: 0;
  color: #fff;
  padding: 10px;
  background: #000;
  background: rgba(0, 0, 0, 0.8); }

/**
 * STOCK league modal youtube movie 18/6/27
 */

.modal__movie-yt,
.modal__image-popup {
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0;
  top: 0;
  text-align: center;
  z-index: 10000;
  display: none;
  opacity: 0;
  transition: all 0.5s linear; }
  .modal__movie-yt:before {
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle; }
  .modal__movie-yt .bg__movie-yt,
  .modal__image-popup .bg__image-popup {
    width: 100%;
    height: 100%;
    opacity: 0.7;
    position: absolute;
    left: 0;
    top: 0;
    background: #000; }
    .modal__movie-yt .container__movie-yt {
      width: 100%;
      max-width: 900px;
      display: inline-block;
      vertical-align: middle;
      margin: 0 auto;
      box-sizing: border-box;
      position: relative; }
    .modal__movie-yt .btn__close-movie-yt,
    .modal__image-popup .btn__close-image-popup {
      width: 24px;
      height: 24px;
      background: #000;
      border: solid 2px #fff;
      border-radius: 50%;
      cursor: pointer;
      position: absolute;
      top: -34px;
      right: 0;
      box-sizing: content-box;
    }
    .modal__movie-yt .btn__close-movie-yt:before,
    .modal__image-popup .btn__close-image-popup:before {
      content: '';
      width: 20px;
      height: 0;
      border-top: solid 1px #fff;
      border-bottom: solid 1px #fff;
      transform: rotate(45deg);
      position: absolute;
      left: 2px;
      top: 11px; }
    .modal__movie-yt .btn__close-movie-yt:after,
    .modal__image-popup .btn__close-image-popup:after {
      content: '';
      width: 20px;
      height: 0;
      border-top: solid 1px #fff;
      border-bottom: solid 1px #fff;
      transform: rotate(-45deg);
      position: absolute;
      left: 2px;
      top: 11px; }
    .modal__movie-yt .player__movie-yt {
      width: 100%;
      height: 0;
      overflow: hidden;
      padding-top: 56.25%;
      background: #000;
      position: relative; }
      .modal__movie-yt iframe, video {
        width: 100%;
        height: 100%;
        position: absolute;
        display: block;
        top: 0;
        left: 0;
        background: #000; }
    .modal__movie-yt.is-active,
    .modal__image-popup.is-active {
      opacity: 1;
      display: block;
      animation: show-modal__movie-yt 0.5s linear 0s; }
    @keyframes show-modal__movie-yt{
      from{
          opacity: 0; }
      to{
          opacity: 1; }
    }

  @media screen and (max-width: 979px){
    .modal__movie-yt .container__movie-yt {
      padding: 0 3.125%; }
    .modal__movie-yt .btn__close-movie-yt {
      right: 3.125% }
  }

/**
 * STOCK league modal youtube movie 18/6/27
 */

.modal__movie-yt,
.modal__image-popup {
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0;
  top: 0;
  text-align: center;
  z-index: 10000;
  display: none;
  opacity: 0;
  transition: all 0.5s linear; }
  .modal__movie-yt:before {
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle; }
  .modal__movie-yt .bg__movie-yt,
  .modal__image-popup .bg__image-popup {
    width: 100%;
    height: 100%;
    opacity: 0.7;
    position: absolute;
    left: 0;
    top: 0;
    background: #000; }
    .modal__movie-yt .container__movie-yt {
      width: 100%;
      max-width: 900px;
      display: inline-block;
      vertical-align: middle;
      margin: 0 auto;
      box-sizing: border-box;
      position: relative; }
    .modal__movie-yt .btn__close-movie-yt,
    .modal__image-popup .btn__close-image-popup {
      width: 24px;
      height: 24px;
      background: #000;
      border: solid 2px #fff;
      border-radius: 50%;
      cursor: pointer;
      position: absolute;
      top: -34px;
      right: 0; }
    .modal__movie-yt .btn__close-movie-yt:before,
    .modal__image-popup .btn__close-image-popup:before {
      content: '';
      width: 20px;
      height: 0;
      border-top: solid 1px #fff;
      border-bottom: solid 1px #fff;
      transform: rotate(45deg);
      position: absolute;
      left: 2px;
      top: 11px; }
    .modal__movie-yt .btn__close-movie-yt:after,
    .modal__image-popup .btn__close-image-popup:after {
      content: '';
      width: 20px;
      height: 0;
      border-top: solid 1px #fff;
      border-bottom: solid 1px #fff;
      transform: rotate(-45deg);
      position: absolute;
      left: 2px;
      top: 11px; }
    .modal__movie-yt .player__movie-yt {
      width: 100%;
      height: 0;
      overflow: hidden;
      padding-top: 56.25%;
      background: #000;
      position: relative; }
      .modal__movie-yt iframe, video {
        width: 100%;
        height: 100%;
        position: absolute;
        display: block;
        top: 0;
        left: 0;
        background: #000; }
    .modal__movie-yt.is-active,
    .modal__image-popup.is-active {
      opacity: 1;
      display: block;
      animation: show-modal__movie-yt 0.5s linear 0s; }
    @keyframes show-modal__movie-yt{
      from{
          opacity: 0; }
      to{
          opacity: 1; }
    }

  @media screen and (max-width: 979px){
    .modal__movie-yt .container__movie-yt {
      padding: 0 3.125%; }
    .modal__movie-yt .btn__close-movie-yt {
      right: 3.125% }
  }
/* Image Modal */
.content__image-popup {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 80%;
}
.content__image-popup img {
  width: 100%;
}
.caption__image-popup {
  color: #ffffff;
  font-size: 1.5rem;
  position: absolute;
  text-align: left;
}
@media screen and (min-width: 640px){
  .content__image-popup {
    width: auto;
  }
}

/* 202606 mobilenavi改修 */
.mobile-navigation__header {
  align-items: center;
  display: flex;
  justify-content: center;
  position: relative;
}

.mobile-navigation__close-button {
  background-color: transparent;
  border: none;
  left: 20px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.mobile-navigation__logo {
  height: 54px;
  width: 140px;
}

@media (min-width: 640px) {
  .mobile-navigation__logo {
    height: 70px;
    width: 180px;
  }
}

.mobile-navigation__search {
  background-color: #fff4e8;
  margin-block: 13px 20px;
  .search__inner {
    padding: 10px 40px;
  }
  .search__form {
    background-color: #fff;
    border-radius: 8px;
    align-items: center;
  }
  .search__input {
    color: var(--color-black);
    flex-grow: 1;
    font-size: 16px;
    line-height: 1;
    margin-inline-start: 0;
    padding: 13px 8px;
    width: auto;
    height: 42px;
    max-width: calc(100% - 42px);
    &::placeholder {
      color: #949494;
      opacity: 1;
    }
  }
  .search__button {
    aspect-ratio: 1;
    flex-shrink: 0;
    height: 42px;
  }
}


.mobile-navigation__list {
  padding-inline: 40px;
  & + & {
    padding-block-start: 0;
    .mobile-navigation__label {
      border-block-start: 1px solid #e3e1df;
      margin-block-start: 16px;
      padding-block-start: 16px;
    }
  }
}

dl.mobile-navigation__list {
  display: flex;
  flex-direction: column;
  row-gap: 16px;
}

.mobile-navigation__list li + li {
  margin-top: 24px;
}

.mobile-navigation__item {
  .accordion__header {
    margin-block: 0;
  }
}

.mobile-navigation__link {
  align-items: center;
  display: flex;
  position: relative;
}

.mobile-navigation__link::after {
  border-right: solid 2px var(--color-accent2);
  border-top: solid 2px var(--color-accent2);
  content: "";
  height: 10px;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  width: 10px;
}

.mobile-navigation__link > * + * {
  margin-left: 8px;
}

.mobile-navigation__text {
  color: var(--color-black);
  font-size: var(--font-size-16);
  font-weight: bold;
}

.mobile-sub-navigation__list {
  background-color: var(--color-white);
  border-radius: var(--border-radius-12);
  padding: 16px;
}
.mobile-sub-navigation__list .accordion__button {
  font-size: var(--font-size-14);
}
.mobile-sub-navigation__list .accordion__button .accordion__arrow-mark {
  margin-inline-end: -8px;
}
.mobile-sub-navigation__list .accordion__panel {
  margin-inline: -16px;
}
.mobile-sub-navigation__list .accordion__panel .mobile-sub-navigation__list {
  border-block-end: 1px solid #d9d9d9;
  border-radius: 0;
  padding-inline-start: 24px;
}

.mobile-sub-navigation__list > li + li {
  margin-top: 19px;
}

.mobile-sub-navigation__item {
  &:has(.mobile-sub-navigation__label) {
    display: flex;
    flex-direction: column;
    row-gap: 8px;
  }
}

.mobile-sub-navigation__link {
  color: var(--color-black);
  display: block;
  font-size: var(--font-size-14);
  font-weight: 500;
  position: relative;
}

.mobile-sub-navigation__link::after {
  border-right: solid 1px var(--color-accent2);
  border-top: solid 1px var(--color-accent2);
  content: "";
  height: 7px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  width: 7px;
}

.accordion__button[aria-pressed=true] .accordion__arrow-mark {
  transform: rotate(180deg);
}

.keyword-area {
  width: 100%;
  min-height: 40px;
  background-color: #FFF4E8;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 16px;
  padding: 7px 0;
  .keyword-value {
    height: 26px;
    display: flex;
    align-items: center;
    border-radius: 16px;
    color: var(--color-white);
    font-size: var(--font-size-12);
    font-weight: bold;
    padding: 6px 14px 8px 12px;
    background-color: #736F6F;
    transition: background-color 0.12s 0.15s;
  }
  .keyword-value:hover {
    cursor: pointer;
    background-color: var(--color-link-text-background-02);
  }
  .keyword-value::before {
    background-image: url(/shared/images/icon/icon_search_white_01.svg);
    background-repeat: no-repeat;
    content: '';
    display: inline-flex;
    width: 12px;
    height: 12px;
    margin-right: 8px;
    background-size: 12px 12px;
  }
}
.keyword-area:not(:has(*)) {
  display: none;
}

@media (min-width: 1000px) {
  .keyword-area {
    min-height: 60px;
    background-color: var(--color-base-background);
    padding: 14px 0;
    .keyword-value {
      font-size: var(--font-size-16);
      height: 32px;
    }
    .keyword-value::before {
      background-image: url(/shared/images/icon/icon_search_white_01.svg);
      background-repeat: no-repeat;
      content: '';
      display: inline-flex;
      width: 16px;
      height: 16px;
      margin-right: 8px;
      background-size: 16px 16px;
    }
  }
}

/* utilityなので最後に */
@media (max-width: 999px) {
  .only-pc {
    display: none;
  }
}
@media (min-width: 1000px) {
  .only-sp-tablet {
    display: none;
  }
}
