@charset "UTF-8";
html {
  scroll-behavior: smooth; }

a {
  cursor: pointer;
  color: blue; }

/*aタグ*/
header a {
  color: #010101; }

#page_top2 {
  color: #010101; }

.top_news a {
  color: #010101; }

.align-right a {
  color: #fff; }

.slug-sitemap main a {
  color: #010101; }

/*aタグ*/
.hover_border::after {
  position: absolute;
  left: 0;
  content: '';
  width: 100%;
  height: 1.25px;
  background: #000000;
  bottom: -2px;
  transform: scale(0, 1);
  transform-origin: right top;
  /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の右端*/
  transition: transform 0.3s;
  /*変形の時間*/ }

.hover_box:hover .hover_border::after {
  transform: scale(1, 1);
  transform-origin: left top;
  /*ホバー後、x軸方向に1（相対値）伸長*/ }

.header_absolute .header_box {
  position: absolute;
  top: 0;
  left: 0;
  right: 0; }

h1, h2, h3, h4, h5 {
  margin: 0; }

ul {
  padding: 0; }

ul li {
  list-style: none; }

body {
  font-family: Helvetica, Arial, "Noto Sans JP", Meiryo, sans-serif;
  margin: 0;
  width: 100%;
  color: #101010;
  font-size: 20px; }

ul {
  margin: 0; }

div {
  display: block; }

img {
  width: 100%;
  height: 100%; }

/*リンク*/
header a {
  text-decoration: none; }

footer a {
  text-decoration: none; }

/*セクション*/
.top section {
  margin-bottom: 4vh; }

/**/
/*ボタン*/
.button_radius {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: #E7281F;
  color: #fff;
  padding: 8px 16px 8px 16px;
  border-radius: 9999px;
  font-size: 18px;
  font-weight: bold;
  min-width: 172px;
  margin-top: 1.7em;
  border: 2px solid #E7281F; }

.button_radius:hover {
  background-color: #fff;
  color: #E7281F; }

.header_box {
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 10001; }

.header_upper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 0.3em; }

.header_upper > div a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-size: 0.7em;
  width: 96px; }

.header_upper > div a:hover {
  background-color: #BFBFBF; }

/*マテリアルアイコン*/
.material-symbols-outlined {
  line-height: 0;
  font-size: 36px;
  color: #585757;
  font-variation-settings: 'FILL' 0, 'wght' 100, 'GRAD' 0, 'opsz' 24;
  width: 100%;
  white-space: pre-wrap; }

.material-symbols {
  font-variation-settings: "FILL" 1, "wght" 1000, "GRAD" 0, "opsz" 24; }

/*ヘッダー*/
header nav {
  background-color: #E53438;
  display: flex;
  justify-content: center; }

header nav ul {
  display: flex;
  align-items: center; }

header nav ul li a {
  color: #fff;
  font-weight: bold;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 180px;
  background-color: #E53438;
  transition: 0.1s;
  height: 100%; }

header nav ul {
  justify-content: space-between; }

.header_upper > div {
  display: flex;
  align-items: center; }

header .material-symbols-outlined {
  font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
  line-height: 1;
  display: flex;
  justify-content: center; }

header nav .material-symbols-outlined {
  color: #fff;
  font-size: 2.2em; }

header nav ul li a:hover .material-symbols-outlined {
  color: #E53438; }

header nav ul li a:hover {
  color: #E53438; }

.green_manner header nav ul li a:hover .material-symbols-outlined {
  color: #14A043; }

.green_manner header nav ul li a:hover {
  color: #14A043; }

/**/
.question_mask_box {
  width: 400px;
  position: absolute;
  right: 28%;
  top: 50%;
  transform: rotate(15deg) translateY(-50%);
  z-index: -1; }

.question_mask {
  height: 100%;
  width: 100%;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center; }

.question_mask > img {
  height: 102%;
  width: 104%;
  object-fit: cover;
  position: absolute;
  z-index: 3; }

.visual {
  position: absolute;
  width: 100%;
  height: 100%;
  overflow: hidden; }

.slick-slide {
  overflow: hidden;
  width: 100%;
  height: 100%; }

.slick-list {
  width: 100%;
  height: 100%; }

.slick-track {
  width: 100%;
  height: 100%; }

.slick-slide img {
  object-fit: cover; }

/*アニメーション*/
#trial_junior .notice_bg {
  animation: bound-anim2 1.45s infinite; }

.arrow_round {
  animation: bound-anim 1.45s infinite; }

@keyframes bound-anim {
  0%,100% {
    top: -10%;
    transform: scale(1); }
  30% {
    top: -48%;
    transform: scale(0.96, 1.04); }
  60% {
    transform: scale(1); }
  90% {
    top: -10%;
    transform: scale(1.15, 0.9); } }
@keyframes bound-anim2 {
  0%,100% {
    transform: scale(1); }
  30% {
    transform: scale(0.96, 1.04); }
  60% {
    transform: scale(1); }
  90% {
    transform: scale(1.15, 0.9); } }
@keyframes op1 {
  100% {
    opacity: 1; } }
@keyframes byon {
  0% {
    transform: translateY(0); }
  51% {
    transform: translateY(-12px); }
  100% {
    transform: translateY(0); } }
@keyframes infiniteRotate {
  0% {
    transform: rotate(0); }
  100% {
    transform: rotate(360deg); } }
.btn_qa {
  position: relative;
  width: 18px;
  height: 18px;
  margin: 0 0 0 auto; }

.btn_qa:before,
.btn_qa:after {
  content: "";
  background-color: #fff;
  border-radius: 10px;
  width: 18px;
  height: 4px;
  position: absolute;
  top: 7px;
  left: 0;
  transform-origin: center center; }

.btn_qa:before {
  width: 4px;
  height: 18px;
  top: 0;
  left: 7px; }

.btn_qa.is-active .btn_qa {
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg); }

.btn_qa.is-active:before {
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg); }

.btn_qa.is-active:before {
  content: none; }

/*検索バー*/
.s-icon2 {
  cursor: pointer; }

.s-icon3 {
  cursor: pointer;
  width: 22px;
  height: 22px; }

input {
  border-width: 0; }

/**/
.icn {
  color: #fff;
  width: 120px;
  background-color: #000;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 16px;
  font-weight: bold;
  border-radius: 9999px;
  padding-top: 4px;
  padding-bottom: 4px;
  height: 24px;
  flex-shrink: 0; }

.icn_taiken {
  background-color: #E53438; }

.icn_special {
  background-color: dodgerblue; }

.arrow_detail {
  display: inline-flex;
  justify-content: flex-end;
  align-items: center;
  color: #101010;
  font-size: 16px;
  position: relative;
  margin: 0 0 0 auto; }

.arrow_red {
  width: 18px;
  height: 18px;
  margin-right: 4px;
  flex-shrink: 0;
  line-height: 1;
  display: flex;
  justify-content: center;
  align-items: center; }

.arrow_call {
  width: 20px;
  margin-right: 4px;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center; }

.arrow_detail div {
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center; }

.arrow_radius {
  display: inline-flex;
  align-items: center;
  background-color: #4D4D4D;
  color: #fff;
  padding: 8px 16px 8px 16px;
  border-radius: 9999px;
  margin: 28px 0 0 auto;
  font-size: 18px;
  font-weight: bold;
  min-width: 172px; }

.align-right {
  text-align: right; }

.align-center {
  text-align: center; }

.container {
  width: 60%;
  margin: 0 auto; }

.container_2 {
  max-width: 88%;
  margin: 0 auto; }

.container_64 {
  width: 64%;
  margin: 0 auto; }

.container_70 {
  width: 70%;
  margin: 0 auto; }

.container_88 {
  width: 88%;
  margin: 0 auto; }

.container_48 {
  width: 48%;
  margin: 0 auto; }

.container_56 {
  width: 56%;
  margin: 0 auto; }

.container_72 {
  width: 72%;
  margin: 0 auto; }

.container_400 {
  max-width: 400px;
  margin: 0 auto;
  text-align: justify;
  margin-bottom: 48px; }

/*特別講座*/
.single_s_trial h4 {
  color: #E53438; }

.single_s_trial h4 {
  color: #5DB765; }

/*ヘッダー*/
.logo_title {
  display: flex;
  flex-direction: column; }

.logo_title p {
  font-size: 2em; }

#top_hero {
  display: flex;
  width: 100%;
  height: 100vh;
  background-image: radial-gradient(#E53438 1px, #fff 1px);
  background-size: 28px 28px; }

#top_hero > div {
  width: 50%; }

#top_hero > h1 {
  width: 50%;
  display: flex;
  align-items: center;
  margin-left: 12%;
  font-weight: 700;
  font-size: 2.6rem;
  line-height: 140%;
  letter-spacing: .1em; }

header {
  position: relative;
  z-index: 100;
  width: 100%;
  box-sizing: border-box; }

header .glo-nav {
  display: flex; }

/*タイトル*/
h2 {
  display: flex;
  flex-direction: column;
  margin-bottom: 1em;
  font-size: 1.4em; }

.top h2 {
  text-align: center; }

h2 small {
  color: #ccc;
  line-height: 1; }

h3 {
  font-size: 1.2em; }

/*ヘッダー*/
/*トップ*/
/*ニュース*/
.top_news ul li > div {
  display: flex;
  align-items: center; }

.top_news ul li a {
  display: flex;
  padding: 12px 0 12px 0;
  border-bottom: 1px solid #ccc;
  align-items: center; }

.top_news ul li a:hover {
  background-color: #F4F4F4; }

.top_news ul li .icn {
  margin-right: 32px;
  margin-left: 32px; }

.top_news ul li a div {
  display: flex;
  align-items: center; }

.top_news ul li .material-symbols-outlined {
  margin: 0 0 0 auto;
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center; }

.date {
  color: #6A6A6A;
  font-size: 16px; }

.icn {
  margin-right: 16px; }

.icn.kids {
  background-color: #14A043; }

.icn.senior {
  background-color: #E7281F; }

.icn.news {
  background-color: #3FA9F5; }

/*ニュース*/
/*コース案内*/
#top_course ul li a {
  display: flex;
  height: 200px; }

#top_course ul li ul li {
  margin-left: 40px;
  list-style-type: disc;
  font-size: 16px; }

#top_course ul > li > a > div {
  width: 50%;
  box-sizing: border-box;
  display: flex;
  flex-direction: column; }

#top_course ul > li > a > .h3_box {
  width: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-weight: bold;
  position: relative; }

.top_senior img {
  object-fit: cover; }

.top_junior img {
  object-fit: cover; }

#top_course .top_senior .h3_box {
  background: #E53438;
  font-size: 2em; }

#top_course .top_junior .h3_box {
  background: #5DB765;
  font-size: 2em; }

.top_senior h4::before,
.top_junior h4::before {
  content: '■';
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 32px;
  height: 32px; }

.top_senior h4::before {
  color: #E53438; }

.top_junior h4::before {
  color: #5DB765; }

.top_senior h4,
.top_junior h4 {
  position: relative;
  padding-left: 22px;
  font-size: 20px;
  margin-top: 10px;
  margin-bottom: 10px; }

.top.header_absolute .logo {
  filter: none; }

.logo img {
  margin-bottom: 8px;
  object-fit: contain; }

#top_course ul li .top_course_image {
  overflow: hidden; }

#top_course ul li a .top_course_image img {
  transition: 0.2s; }

#top_course ul li a:hover .top_course_image img {
  transform: scale(1.2); }

.top_senior {
  margin-bottom: 32px; }

/*マップ*/
.map {
  width: 100%;
  height: 400px; }

.map iframe {
  width: 100%;
  height: 100%; }

/*サービス*/
#top_services ul {
  display: flex;
  max-width: 88%;
  margin: 0 auto;
  gap: 5%;
  flex-flow: row wrap;
  align-items: center;
  justify-content: center;
  flex-flow: row wrap; }

#top_services ul li {
  width: 30%;
  aspect-ratio: 1/1;
  margin-bottom: 5%;
  border: 2px solid #E53438;
  display: flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box; }

#top_services ul li a {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 100%;
  height: 100%;
  padding: 6%;
  box-sizing: border-box;
  text-decoration: none; }

#top_services ul li a div {
  width: 40%;
  aspect-ratio: 1/1; }

#top_services ul li a:hover {
  background-color: #E53438; }

#top_services ul li a:hover h3 {
  color: #fff; }

/*アクセス*/
#access .container {
  margin-top: 40px;
  display: flex;
  flex-direction: column; }

#access p {
  padding-left: 32px;
  position: relative; }

#access p::before {
  content: "";
  position: absolute;
  color: #000;
  border-style: solid;
  border-width: 0 3px 3px 0;
  height: 100%;
  top: 0;
  left: 0; }

/*フッター*/
footer {
  background: #E53438;
  padding: 0px 8% 8px 8%; }

footer .footer_bg {
  background-color: #fff;
  padding: 16px;
  border-radius: 24px;
  display: flex;
  justify-content: space-between; }

footer a {
  color: #101010; }

footer ul li > div {
  display: flex; }

footer ul li a {
  display: flex;
  line-height: 1.7;
  font-size: 0.8em;
  align-items: center; }

footer ul li ul li a {
  line-height: 1.7;
  font-size: 16px;
  display: flex;
  align-items: center; }

.drop_menu span {
  display: flex;
  cursor: pointer;
  font-size: 0.8em; }

.footer_col_1 > a:nth-of-type(1) {
  width: 118px; }

.footer_col_1 > a:nth-of-type(2) {
  width: 96px; }

.footer_col_1 {
  display: flex;
  align-items: center;
  flex-direction: column; }

footer .footer_col_2 {
  display: flex; }

footer .footer_col_2 ul:nth-of-type(1) {
  margin-right: 56px;
  margin-top: 8px;
  margin-bottom: 8px; }

footer .footer_col_2 ul li ul {
  margin-left: 1em; }

.footer_col_3 .pmark {
  display: block;
  width: 64px;
  height: 64px; }

.add_red {
  width: 18px;
  height: 18px; }

.footer_contact {
  display: flex;
  justify-content: center;
  padding-top: 1em;
  padding-bottom: 1em; }

.footer_contact .arrow_red {
  margin-left: 4px; }

.footer_contact .arrow_radius {
  background-color: #fff;
  color: #E53438;
  margin: 0; }

.footer_contact {
  color: #fff;
  line-height: 1; }

.footer_contact > p {
  width: 50%;
  font-size: 32px;
  margin-bottom: 16px;
  font-weight: bold;
  display: flex;
  justify-content: center;
  align-items: center; }

.footer_contact > div {
  width: 50%; }

.footer_contact .call {
  display: flex;
  align-items: center;
  font-size: 30px;
  line-height: 1.4; }

footer .footer_bg ul li a:hover {
  background-color: #FFD3D4; }

.green_manner footer .footer_bg ul li a:hover {
  background-color: #E3FFD0; }

/*キッズ*/
.archive_kids nav,
.archive_kids footer {
  background-color: #009944; }

.archive_kids header nav ul li a {
  background-color: #009944; }

.archive_kids header nav ul li:hover a {
  background-color: #fff;
  color: #009944; }

.archive_kids header nav ul li:hover a .material-symbols-outlined {
  color: #009944; }

.archive_kids .arrow_radius {
  color: #009944; }

#junior_concept {
  margin: 0;
  padding-top: 48px;
  position: relative;
  z-index: 2; }

#junior_concept::after {
  content: '';
  width: 100%;
  height: 120px;
  position: absolute;
  background-image: url(../img/fait_section_end.svg);
  background-repeat: no-repeat;
  filter: drop-shadow(0px 5px 4px #FBC73B);
  background-position: bottom;
  z-index: -1;
  transform: translateY(-32px);
  display: none; }

#junior_concept h2 {
  margin-bottom: 18px; }

#junior_concept .container_2 {
  padding: 0 5% 8vh 5%;
  box-sizing: border-box;
  position: relative; }

#junior_concept .container_48 h3 {
  text-align: center;
  margin-top: 16px;
  margin-bottom: 16px; }

#junior_concept .container_2::before {
  content: '';
  display: block;
  position: absolute;
  left: 28px;
  top: 0;
  width: 180px;
  height: 560px;
  background-image: url("../img/fait_left.svg");
  background-repeat: no-repeat;
  z-index: 3;
  transform: rotate(6deg);
  transform-origin: 50vw 50vw;
  transition-timing-function: ease-in;
  opacity: 0;
  transition: 1s; }

#junior_concept .is-active.container_2::before {
  transform: rotate(0deg);
  opacity: 1; }

#junior_concept .container_2::after {
  content: '';
  display: block;
  position: absolute;
  right: 28px;
  top: 0;
  width: 180px;
  height: 560px;
  background-image: url("../img/fait_right.svg");
  background-repeat: no-repeat;
  z-index: 3;
  transform: rotate(6deg);
  transition-timing-function: ease-in;
  transform-origin: -50vw 50vw;
  opacity: 0;
  transition: 1s; }

#junior_concept .is-active.container_2::after {
  transform: rotate(0deg);
  opacity: 1;
  transition-delay: 0.15s; }

#junior_concept .button_radius {
  display: flex;
  background-color: #fff;
  color: #009944;
  border: 4px solid #009944;
  font-weight: bold; }

.fait_comment {
  width: 220px;
  margin: 0% 0 0 auto;
  margin-bottom: -16px;
  display: block; }

#junior_concept .arrow_radius {
  display: flex;
  font-size: 20px;
  margin-top: 40px; }

#junior_concept .container_640 {
  position: relative; }

#junior_concept p {
  font-size: 1em;
  margin-bottom: 20px; }

.hero {
  width: 100%;
  position: relative; }

.hero > div img {
  object-fit: cover; }

#junior_concept .button_radius.bg_black {
  background-color: #1A1A1A; }

.j_card_container article {
  width: 24%;
  padding: 1.4%;
  box-sizing: border-box;
  aspect-ratio: 1 / 1.373;
  text-align: center;
  margin-bottom: 1.33%;
  opacity: 0;
  transition: 0.3s;
  transform-origin: center;
  transform: scale(0.8);
  margin-right: 1.33%; }

.j_card_container article.is-active {
  opacity: 1;
  transform: scale(1); }

.transform_y {
  opacity: 0;
  transform: translateY(40px);
  transition: transform 0.6s; }

.transform_y.is-active {
  opacity: 1;
  transform: translateY(0); }

.j_card_container article > p {
  font-size: 1vw; }

.j_card_container article.scratch {
  aspect-ratio: 1/1.373; }

.j_card_container article.text-program {
  aspect-ratio: 1/1.373; }

.j_card_container article.ai {
  aspect-ratio: 1/1.373; }

.j_card_container article.text-program a {
  color: #fff; }

#junior_course .j_card_container:nth-last-of-type(1) {
  margin-bottom: 0; }

.j_card_container {
  display: flex;
  flex-flow: row wrap; }

.j_card_container article h3 {
  font-size: 22px;
  padding: 0; }

.j_card_container article h3::before {
  display: none; }

.j_card_container article p:nth-of-type(2) {
  margin: auto 0 20% 0;
  font-size: 1.1vw;
  font-weight: bold;
  padding-bottom: 4px;
  position: relative; }

article p:nth-of-type(2)::after {
  position: absolute;
  left: 0;
  content: '';
  width: 100%;
  height: 4px;
  bottom: -2px;
  border-radius: 9999px; }

.j_card_container article.scratch p:nth-of-type(2)::after {
  background-color: #fff; }

.j_card_container article.text-program p:nth-of-type(2)::after {
  background-color: yellow; }

.j_card_container article .j_card_image {
  overflow: hidden;
  margin: 4% auto 4%;
  flex-shrink: 0; }

.j_card_container article .j_card_image > img {
  object-fit: cover;
  width: auto;
  height: 88px; }

.j_card_container article.text-program .j_card_image > img {
  width: auto;
  height: 88px; }

article .flex {
  justify-content: center; }

article .flex span {
  height: 1em;
  width: auto;
  display: flex;
  justify-content: center;
  align-items: center; }

#junior_course {
  background-image: url(../img/fait_icon_only.png);
  background-repeat: no-repeat;
  background-position: bottom 0 right -120px;
  background-size: contain;
  background-color: rgba(255, 255, 255, 0.9);
  background-blend-mode: lighten; }

/*体験会*/
#trial_junior {
  width: 100%;
  height: 356px;
  position: relative;
  background-color: #5DB765;
  background-position: 0 0;
  background-size: 19px 19px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 0;
  margin: 0; }

.trial .arrow_radius {
  background-color: #fff;
  margin: 0; }

#trial_junior .arrow_radius {
  color: #52A056; }

#trial_junior .arrow_radius:nth-of-type(1) {
  margin-right: 16px; }

.trial h2 {
  font-size: 52px;
  color: #fff;
  text-shadow: 1px 1px 3px green; }

.trial h2 > span {
  font-size: 20px;
  font-weight: bold;
  line-height: 0.8; }

.trial_inner {
  display: inline-block;
  position: relative;
  z-index: 3; }

.trial_notice {
  width: 200px;
  height: 200px;
  position: absolute;
  right: 15%;
  text-align: center;
  font-weight: bold; }

.trial_notice > span {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center; }

.trial_notice .notice_bg {
  border-radius: 50%;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: -1; }

#trial_junior .trial_notice .notice_bg {
  background: #FCEE21; }

.j_month {
  display: inline; }

.arrow_round {
  position: absolute;
  width: 88px; }

.trial_notice > span > div {
  display: flex;
  flex-direction: column; }

/*Q&A*/
#qa {
  position: relative;
  z-index: 2;
  margin-top: -40px;
  padding-top: 20px; }

#qa h2 {
  flex-direction: row;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: -22px; }

#qa h2 p {
  position: relative;
  padding-bottom: 14px;
  margin-left: 32px;
  margin-right: 24px; }

#qa h2 p::after {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  content: '';
  width: 100%;
  height: 10px;
  border-radius: 9999px;
  background: #F9D319; }

#qa h2 > div {
  object-fit: cover; }

#qa h2 > div:nth-of-type(1) {
  width: 8%; }

#qa h2 > div:nth-of-type(2) {
  width: 10%;
  transform: translateY(-15%); }

#qa h2 img {
  height: auto; }

#qa_hero > div:nth-of-type(1) {
  width: 440px;
  top: 32%;
  left: 13%;
  position: absolute; }

.drop_menu_2 > div {
  display: flex;
  padding: 12px 24px 12px 24px;
  font-weight: bold;
  align-items: center; }

.drop_menu_2 > div p:nth-of-type(1),
.drop_menu_2 > div span {
  font-size: 28px; }

.drop_menu_2 > div p:nth-of-type(1) {
  font-size: 18px;
  margin-left: 40px; }

.drop_menu_2 > div span:nth-of-type(2) {
  margin: 0 0 0 auto; }

.drop_menu_2 > div:nth-of-type(1) {
  background-color: #5DB765;
  border-radius: 9999px;
  color: #fff;
  cursor: pointer;
  margin-bottom: 22px; }

.drop_menu_2 .drop_list {
  padding-top: 0;
  padding-bottom: 22px; }

.drop_list span {
  color: #E53438; }

/*プログラミング×サッカー*/
#program_succer {
  padding-bottom: 4vh; }

#program_succer .container_72 {
  position: relative; }

#program_succer .arrow_detail {
  display: flex; }

/*シニア*/
.single .hover_box {
  text-align: right; }

.hover_border::after {
  background: #101010; }

.single .hover_border::after {
  background: #E53438; }

.single .arrow_detail {
  color: #E53438;
  font-weight: bold; }

#senior_personal .arrow_detail .material-symbols-outlined {
  color: #E53438; }

#senior_support .arrow_detail .material-symbols-outlined {
  color: #E53438; }

#senior_hero > div {
  width: 100%;
  height: 100%; }

#senior_hero > div img {
  object-fit: cover; }

#senior_hero h1 {
  min-width: 400px;
  justify-content: center;
  display: flex;
  background-color: rgba(0, 0, 0, 0.7);
  color: #fff;
  position: absolute;
  left: 0;
  bottom: 6%;
  padding: 10px 32px 10px 16px;
  border-radius: 0 9999px 9999px 0;
  font-size: 24px; }

#senior_index {
  padding-top: 20px;
  padding-bottom: 20px;
  background-color: #E53438; }

#senior_index .arrow_radius {
  justify-content: center;
  position: relative;
  padding: 8px 40px 8px 24px;
  margin-top: 0;
  background-color: #fff;
  color: #101010;
  font-size: 20px; }

#senior_index .arrow_red {
  position: absolute;
  right: 14px;
  margin-right: 0; }

#senior_index ul {
  display: flex;
  justify-content: center;
  flex-flow: row wrap;
  align-items: center;
  max-width: 800px;
  margin: 0 auto; }

#senior_index ul li {
  margin-right: 14px; }

#senior_index ul li:nth-of-type(1) {
  margin-bottom: 14px; }

#senior_index ul li:nth-of-type(2) {
  margin-bottom: 14px; }

#senior_index ul li:nth-of-type(3) {
  margin-bottom: 14px; }

#senior_support {
  padding-bottom: 4vh; }

#senior_pc ol {
  padding-left: 0;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  margin: 0;
  padding-top: 80px;
  padding-bottom: 80px; }

#senior_pc ol li {
  padding: 2%;
  position: relative;
  list-style: none;
  width: 80px;
  display: flex; }

#senior_pc ol li::after {
  background-image: url(../img/arrow_index.svg);
  background-repeat: no-repeat;
  position: absolute;
  right: -6px;
  content: '';
  width: 12px;
  height: 12px;
  top: 50%;
  transform: translateY(-50%) rotate(-90deg);
  z-index: 1; }

#senior_pc ol li:nth-of-type(7):after {
  display: none; }

.ol_box {
  position: relative;
  background-color: #f3f3f3; }

.single ol li a {
  position: relative; }

.single ol li a > span {
  position: absolute;
  left: 50%;
  content: '';
  width: 20px;
  height: 100%;
  bottom: 50%;
  z-index: 0;
  border-left: 2.5px dotted #E53438; }

.single ol li:nth-of-type(1) a > span,
.single ol li:nth-of-type(3) a > span {
  top: 50%; }

.single ol li:nth-of-type(2) a > span {
  bottom: 50%; }

.single ol li a img {
  position: relative;
  z-index: 1; }

#senior_pc .ol_box > span {
  position: absolute;
  left: 0;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: '';
  width: calc(560px + 8%);
  height: 8px;
  background: #E53438;
  bottom: 50%;
  z-index: -1; }

.single ol li .arrow_radius {
  position: absolute;
  background: #fff;
  border: 4px solid #E53438;
  color: #101010;
  font-size: 0.9em;
  padding: 2px 8px 2px 8px;
  margin-top: 0;
  min-width: 200px;
  z-index: 1; }

#senior_sp ol li:nth-of-type(1) .arrow_radius {
  bottom: -64px;
  left: 50%;
  transform: translate(-50%); }

#senior_pc ol li:nth-of-type(1) .arrow_radius {
  bottom: -40px;
  left: 50%;
  transform: translate(-50%); }

#senior_pc ol li:nth-of-type(2) .arrow_radius {
  top: -40px;
  left: 50%;
  transform: translate(-50%); }

#senior_pc ol li:nth-of-type(3) .arrow_radius {
  bottom: -40px;
  left: 50%;
  transform: translate(-50%); }

#senior_pc ol li:nth-of-type(1):hover,
#senior_pc ol li:nth-of-type(2):hover,
#senior_pc ol li:nth-of-type(3):hover,
#senior_sp ol li:nth-of-type(1):hover {
  opacity: 0.5; }

.align-right {
  text-align: right; }

#senior_sp ol li:nth-of-type(1):hover {
  opacity: 0.5; }

#senior_sp h3,
#senior_pc h3 {
  color: #585757; }

.s_pc_no {
  /* position: absolute; */
  left: 0;
  top: 0;
  bottom: 0;
  /* background-color: #E53438; */
  height: 63px;
  /* width: 63px; */
  color: #E53438;
  display: flex;
  flex-direction: column;
  line-height: 1;
  justify-content: center;
  font-size: 16px;
  font-weight: bold; }

.s_pc_no span {
  font-size: 40px; }

#senior_sp ol {
  padding-top: 64px;
  padding-bottom: 80px;
  padding-left: 0;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  margin: 0;
  background-color: #f3f3f3; }

#senior_sp ol li {
  list-style: none;
  position: relative;
  height: 100%;
  width: 18%; }

.icn_senior {
  width: 56px;
  height: auto;
  margin: 0 auto; }

.point_personal {
  display: flex;
  text-align: left;
  border: 1px solid #E53438;
  padding: 24px;
  margin-top: 1em; }

.point_personal p {
  width: 36%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  font-size: 22px; }

.point_personal ul {
  padding-left: 1em; }

.point_personal ul li {
  line-height: 1.6; }

.point_personal ul li:first-line {
  display: flex;
  align-items: center; }

.point_personal ul li:before {
  content: '';
  display: inline-block;
  background-image: url(../img/check_red.svg);
  background-repeat: no-repeat;
  width: 18px;
  height: 18px;
  padding-left: 0.5em; }

.icn_pc {
  width: 64px;
  margin: 0 auto;
  display: flex;
  margin-bottom: 0.5em; }

.icn_sp {
  width: 35px;
  margin: 0 auto;
  display: flex;
  margin-bottom: 0.5em; }

.icn_bag {
  width: 64px;
  margin: 0 auto;
  display: flex;
  margin-bottom: 0.5em; }

.icn_person {
  width: 68px;
  margin: 0 auto;
  display: flex;
  margin-bottom: 0.5em; }

#trial_senior {
  width: 100%;
  height: 356px;
  position: relative;
  background-color: #E53438;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 0;
  border-bottom: 6px solid #fff; }

.trial > span {
  z-index: 1;
  width: 100%;
  height: 100%;
  position: absolute;
  background-image: url("../img/cross_bg_2.png");
  background-position: 0 0; }

#trial_senior.trial h2 {
  font-size: 52px;
  color: #fff;
  text-shadow: 1px 1px 3px #E53438; }

#trial_senior .arrow_radius {
  color: #E53438; }

#trial_senior .arrow_radius:nth-of-type(1) {
  margin-right: 16px; }

#trial_senior .trial_notice .notice_bg {
  background: #FCEE21; }

.header_absolute .logo {
  filter: drop-shadow(1px 1px 3px #000); }

/*ニュース一覧*/
#news_lists {
  margin-top: 80px;
  margin-bottom: 44px; }

#news_lists ul li {
  display: flex;
  align-items: center;
  padding: 16px 0 16px 0;
  border-bottom: 1px solid #ccc; }

#news_lists ul li .icn {
  margin-right: 56px;
  margin-left: 56px; }

#news_lists ul li a {
  margin: 0 0 0 auto;
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center; }

.top_news_text {
  line-height: 1; }

.logo_box {
  display: flex;
  align-items: center; }

.logo_box p {
  color: #232323;
  font-size: 1.48em;
  font-weight: bold;
  line-height: 1; }

.logo_box small {
  line-height: 1.1;
  font-size: 1em; }

.logo {
  height: 72px;
  max-width: 97.39px;
  display: flex;
  justify-content: center;
  align-items: center; }

/*ニュース詳細*/
.single .title_h2 {
  text-align: left;
  line-height: 1.4;
  margin-bottom: 28px; }

.single_special .title_h2 {
  flex-direction: column; }

.single .title_h2 .flex {
  margin-bottom: 44px;
  align-items: center; }

.single .title_h2 span {
  line-height: 1;
  font-weight: bold; }

.img_full {
  width: 100%;
  overflow: hidden;
  height: 280px;
  margin-top: 24px;
  margin-bottom: 24px; }

.img_full img {
  object-fit: cover; }

.single_scratch h2 {
  display: block;
  color: #209E00;
  border-bottom: 2px solid #209E00; }

.single_text_program h2 {
  border-bottom: 2px solid #6A70D9; }

.single_scratch h2,
.single_text_program h2 {
  display: flex;
  justify-content: space-between;
  flex-direction: row;
  align-items: flex-end;
  padding-bottom: 0.25em; }

.single_scratch h2 small {
  font-size: 0.7em;
  color: #209E00; }

.j_course_hour,
.j_course_number {
  display: inline; }

/*特別講座*/
#special_lists {
  margin-top: 56px;
  margin-bottom: 64px; }

#special_lists ul li a {
  display: flex;
  text-align: left;
  padding: 24px; }

#special_lists ul li a > div p {
  line-height: 1.4;
  color: #6A6A6A;
  font-size: 18px; }

#special_lists ul li {
  position: relative; }

#special_lists ul li .date {
  color: #878787;
  line-height: 1; }

#special_lists ul li div:nth-of-type(2) > div {
  margin: 0 0 0 auto;
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  margin-left: 28px; }

#special_lists ul li a > div:nth-of-type(1) {
  width: 40%;
  margin-right: 5%; }

#special_lists ul li a > div:nth-of-type(2) {
  display: flex;
  width: 60%;
  align-items: center; }

#special_lists ul li:nth-of-type(odd) {
  background-color: #FFF3F2; }

#news_lists ul li > div {
  display: flex;
  align-items: center; }

.reservation {
  color: #fff;
  background-color: #E53438;
  padding: 4px 16px 4px 16px;
  font-size: 15px;
  display: inline;
  border-radius: 4px;
  margin-left: 8px; }

.single_date span {
  color: #fff;
  background-color: #4D4D4D;
  padding: 4px 16px 4px 16px;
  font-size: 15px;
  font-weight: bold;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 4px;
  margin-right: 16px;
  min-width: 64px;
  max-height: 28px; }

.single_date {
  margin-top: 8px;
  margin-bottom: 8px; }

.flex {
  display: flex; }

.mgt32 {
  margin-top: 32px; }

.single .flex p,
.single_special .flex p {
  margin: 0; }

/*キッズ体験会詳細*/
.single_j_trial {
  background-color: #FFFBE9; }

.single_j_trial section {
  padding: 0;
  margin-bottom: 72px; }

.single_j_trial main ul li::before {
  background-color: #209E00; }

.j_card_outer {
  display: flex; }

.single_j_trial .j_card_outer article:nth-of-type(3) {
  margin-right: 0; }

.single_j_trial article {
  width: 20vw; }

.single_j_trial .j_card_container article h3 {
  font-size: 1.3vw; }

.single_j_trial h4 {
  color: #209E00;
  margin-top: 22px;
  margin-bottom: 22px;
  display: flex;
  align-items: center; }

.single_j_trial h4::before {
  content: '';
  display: block;
  width: 28px;
  height: 28px;
  margin-right: 4px;
  background-image: url("../img/tag_green.svg");
  background-repeat: no-repeat;
  background-position: center; }

.single_j_trial main ul li {
  margin-bottom: 12px; }

.single_j_trial .j_card_container article.scratch .j_card_image > img {
  width: 76px;
  height: 80px; }

.single_j_trial .j_card_container article.text-program .j_card_image > img {
  height: 78px;
  width: 114px; }

.single_j_trial ol {
  margin-top: 0; }

/*キッズコース*/
.archive_kids .hero > svg {
  height: 150%;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%); }

.line-wh {
  height: 150%;
  width: 100%;
  object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 99; }

.bg-center {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 360px;
  transform: translate(-46%, -77%) rotate(-3deg);
  z-index: 100; }

.hero_img {
  display: flex;
  flex-direction: column;
  position: absolute;
  align-items: center;
  transform: translate(-50%, -98%);
  top: 50%;
  left: 50%;
  z-index: 102; }

.hero_bg {
  display: flex;
  flex-flow: row wrap;
  height: 100%;
  width: 100%; }

.hero_bg > div {
  width: 50%;
  height: 50%;
  position: absolute; }

.hero_bg .bg_1 {
  right: 50%;
  bottom: 50%; }

.hero_bg .bg_2 {
  left: 50%;
  bottom: 50%; }

.hero_bg .bg_3 {
  bottom: 0;
  left: 0; }

.hero_bg .bg_4 {
  bottom: 0;
  right: 0; }

.hero_bg_image_1 {
  left: 2%;
  width: 10%;
  aspect-ratio: 1/1;
  bottom: 59%;
  z-index: 3;
  position: absolute;
  animation: op1 0.3s 1.2s linear both; }

.hero_bg_image_2 {
  left: 5.2%;
  height: 15%;
  bottom: 50%;
  z-index: 2;
  position: absolute; }

.hero_bg_image_3 {
  left: 12%;
  width: 18%;
  bottom: 52%;
  z-index: 3;
  position: absolute; }

.hero_bg_image_4 {
  left: 16.7%;
  bottom: 48%;
  height: 25%;
  z-index: 2;
  position: absolute; }

.hero_bg_image_5 {
  position: absolute;
  right: 18%;
  top: 8%;
  width: 200px;
  animation: shake .1s linear infinite, op1 0.3s 1.5s linear both; }

.hero_bg_image_6 {
  position: absolute;
  right: 12%;
  bottom: -12%;
  height: 72%; }

.hero_bg_image_box {
  display: flex;
  width: 20%;
  position: absolute;
  left: 0;
  bottom: 0; }

.hero_bg_image_box > div {
  width: 3%;
  height: auto; }

.hero_bg_image_15 {
  width: 58px;
  left: 50%;
  top: 51%;
  position: absolute;
  transform: translateX(192px) rotate(-50deg);
  animation: textshadow 1s linear infinite; }

.hero_bg_image_16 {
  width: 58px;
  left: 48%;
  top: 69%;
  position: absolute;
  transform: translateX(220px) rotate(-90deg);
  animation: textshadow 1s 0.5s linear infinite; }

.hero_bg_image_17 {
  width: 58px;
  right: 34%;
  top: 76%;
  position: absolute;
  transform: translateX(232px) rotate(120deg); }

@keyframes shake {
  0% {
    transform: translateX(0); }
  40% {
    transform: translateX(-3%); }
  80% {
    transform: translateX(3%); }
  100% {
    transform: translateX(0); } }
@keyframes flash {
  0%,
	100% {
    opacity: 1; }
  50% {
    opacity: 0; } }
@keyframes op1 {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@keyframes textshadow {
  0% {
    filter: drop-shadow(0px 0px 0 #fff);
    opacity: 0; }
  20% {
    filter: drop-shadow(0px 0px 1000px #fff);
    opacity: 1; }
  40% {
    filter: drop-shadow(0px 0px 0 #fff);
    opacity: 0; }
  80% {
    filter: drop-shadow(0px 0px 1000px #fff);
    opacity: 1; }
  100% {
    filter: drop-shadow(0px 0px 0 #fff);
    opacity: 0; } }
.hero_bg_image_1 {
  animation: infiniteRotate 7s 1s linear infinite both, op1 0.3s 1.2s linear both;
  transform-origin: center; }

.hero_bg_image_3 {
  animation: infiniteRotate 7s linear infinite both, op1 0.3s 1.2s linear both;
  transform-origin: center; }

.hero_img div {
  width: 100px;
  animation: byon 0.3s 2 linear both; }

#j_trial_course {
  margin-bottom: 0; }

#j_trial_course article h3 {
  margin: 0; }

.title_h2 {
  display: flex; }

.single_j_trial .title_h2 {
  flex-direction: row;
  align-items: center;
  margin-bottom: 44px; }

.single_j_trial .title_h2 > div:nth-of-type(1) {
  height: 76px;
  margin-right: 16px; }

.single_j_trial .container_64 {
  padding: 40px;
  background-color: #fff;
  border-radius: 32px;
  border: 4px solid #FBC73B; }

.single_scratch,
.single_text_program {
  background-image: url(../img/fait_icon_only.png);
  background-color: rgba(255, 255, 255, 0.88);
  background-repeat: no-repeat;
  background-blend-mode: lighten;
  background-position: right bottom 460px;
  background-size: 720px; }

.single_scratch .container_64, .single_text_program .container_64 {
  padding: 40px;
  border-radius: 32px;
  border: 4px solid #209E00;
  box-sizing: border-box; }

.single_j_course section {
  margin-top: 40px; }

.single_j_course h4 {
  margin-top: 14px;
  margin-bottom: 14px; }

.single_text_program .container_64 {
  border-color: #6A70D9; }

.single_text_program h2 {
  color: #6A70D9;
  border-color: #6A70D9; }

.single_text_program h2 small {
  color: #6A70D9; }

.single_text_program h3::before {
  background-color: #6A70D9; }

.single_scratch .container_64 {
  border-color: #209E00; }

.single_scratch h2 {
  color: #209E00;
  border-color: #209E00; }

.single_scratch h2 small {
  color: #209E00; }

.single_scratch h3::before {
  background-color: #209E00; }

/*single*/
/*貸教室*/
.main_block table {
  float: left;
  border: 1px solid #CCC;
  border-collapse: collapse; }

.rental .container_64 {
  margin-top: 48px; }

.single_j_trial main h3::before {
  background-color: #209E00; }

.single_j_trial main ul li::before {
  background-color: #209E00; }

.rental table {
  border-collapse: collapse;
  border-collapse: separate;
  border-spacing: 5px; }

/*single_pc*/
.single_pc .container_64 {
  margin-top: 160px;
  margin-bottom: 120px; }

.single_pc main {
  font-size: 20px; }

.single_pc h2 small {
  font-size: 18px; }

.single_pc_sp {
  line-height: 1.7; }

.single_pc_sp .title_h2 div:nth-of-type(1) {
  width: auto;
  height: 52px;
  margin-right: 16px; }

.single_pc_sp h2 small {
  font-size: 18px; }

.single_pc_sp h2 small {
  font-size: 16px;
  line-height: 0.75em; }

.single_pc_sp strong {
  margin-top: 20px;
  margin-bottom: 20px;
  line-height: 3.2; }

.special_courses h3 {
  margin-top: 0; }

.h3_box > div:nth-of-type(1) {
  position: absolute;
  top: 8px;
  left: 8px;
  height: 64px;
  width: auto;
  opacity: 0.6; }

.top_senior .h3_box > div:nth-of-type(1) {
  opacity: 0.4; }

.top_senior .h3_box > div:nth-of-type(2) {
  position: absolute;
  right: -15%;
  bottom: -50%;
  opacity: 0.15; }

#qa .button_radius {
  background-color: #fff;
  color: #5DB765;
  border: 4px solid #5DB765;
  font-weight: bold; }

#senior_index {
  margin: 0; }

/*qa一覧*/
#qa_hero {
  position: relative;
  width: 100%;
  margin-bottom: 0px;
  height: 560px; }

.archive_qa .title_h2 {
  display: inline-flex;
  position: relative;
  padding-bottom: 8px;
  margin-bottom: 28px;
  align-items: center; }

.archive_qa .title_h2 > div:nth-of-type(1) {
  height: 72px; }

.archive_qa .title_h2::before {
  content: '';
  display: block;
  width: calc(100% + 14vw);
  background-color: #5DB765;
  height: 3px;
  position: absolute;
  bottom: 0;
  right: 0; }

.title_q {
  background-color: #5DB765;
  border-radius: 9999px;
  color: #fff;
  cursor: pointer; }

.title_q {
  display: flex;
  padding: 12px 24px 12px 24px;
  font-weight: bold;
  align-items: center;
  margin-bottom: 28px; }

.title_q p {
  font-size: 22px;
  margin-left: 40px; }

.title_q span:nth-of-type(1) {
  font-size: 28px; }

.a_box span:nth-of-type(1) {
  font-size: 28px;
  display: flex;
  font-weight: bold;
  align-items: center;
  color: #E53438; }

.a_box h3 {
  display: flex;
  padding: 12px 24px 12px 24px;
  font-weight: bold;
  align-items: center;
  border-bottom: 1px solid #ccc; }

.a_box h3 p {
  font-size: 22px;
  margin-left: 40px; }

.a_box {
  padding: 28px;
  border: 1px solid #ccc; }

.a_box {
  padding: 0 20px 20px 20px;
  border: 1px solid #ccc;
  border-radius: 30px;
  margin-bottom: 28px; }

.archive_qa h4 {
  color: #E53438;
  margin-top: 22px;
  margin-bottom: 22px;
  display: flex;
  align-items: center; }

.archive_qa h4::before {
  content: '';
  display: block;
  width: 28px;
  height: 28px;
  margin-right: 4px;
  background-image: url("../img/tag_red.svg");
  background-repeat: no-repeat;
  background-position: center; }

.archive_qa .container_72 {
  margin-bottom: 120px; }

.archive_qa h2 {
  margin-bottom: 0; }

/**/
.j_card_container article:nth-of-type(2) {
  transition-delay: 0.06s; }

.j_card_container article:nth-of-type(3) {
  transition-delay: 0.09s; }

.j_card_container article:nth-of-type(4) {
  transition-delay: 0.12s;
  margin-right: 0; }

/*アクセス*/
/*page top*/
#page_top {
  width: 60px;
  height: 86.55px;
  position: fixed;
  z-index: 10;
  right: 4px;
  bottom: 0;
  transform: translateY(100%);
  transition: 0.6s; }

#page_top.active {
  transform: translateY(0); }

#page_top2 {
  position: fixed;
  z-index: 10;
  right: 4px;
  bottom: 4px;
  transition: 0.6s;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  display: none; }

#page_top2 p {
  font-size: 0.8em;
  font-weight: bold; }

#page_top2 > div {
  width: 64px;
  height: 64px;
  background-color: #fff;
  border: 5px solid #E7281F;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center; }

#page_top2 > div > img {
  width: 1.4em; }

#page_top2.active {
  transform: translateY(0); }

/**/
#openBtn1 {
  position: relative;
  cursor: pointer;
  width: 44px;
  height: 44px;
  display: none;
  z-index: 1000; }

#openBtn1 span {
  display: inline-block;
  transition: all .4s;
  position: absolute;
  left: 8px;
  height: 3px;
  border-radius: 2px;
  background: #4D4D4D;
  width: 70%; }

#openBtn1 span:nth-of-type(1) {
  top: 15px; }

#openBtn1 span:nth-of-type(2) {
  top: 23px; }

#openBtn1 span:nth-of-type(3) {
  top: 31px; }

#openBtn1.active span:nth-of-type(1) {
  top: 18px;
  transform: translateY(6px) rotate(-45deg);
  background: #585757; }

#openBtn1.active span:nth-of-type(2) {
  opacity: 0; }

#openBtn1.active span:nth-of-type(3) {
  top: 30px;
  transform: translateY(-6px) rotate(45deg);
  background: #585757; }

.active#Menu-Group {
  opacity: 1;
  height: 100vh;
  visibility: visible; }

#Menu-Group {
  width: 100%;
  height: 0;
  background-color: #E53438;
  position: fixed;
  z-index: 103;
  right: 0;
  top: 0;
  left: 0;
  opacity: 0;
  transition: all 0.5s;
  visibility: hidden;
  line-height: 1.5;
  font-size: 16px;
  box-sizing: border-box;
  padding: 92px 0 0; }

#Menu-Group li {
  height: calc((100vh - 72px) / 12);
  display: flex;
  align-items: center; }

#Menu-Group li:hover {
  background-color: #fff; }

#Menu-Group li:hover a {
  color: #E7281F; }

#Menu-Group li a {
  color: #fff;
  line-height: 1;
  font-size: 3.2vh; }

#Menu-Group li a {
  color: #fff;
  line-height: 1;
  font-size: 3.2vh;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  padding-left: 16px;
  cursor: pointer; }

.qr {
  width: 100px;
  height: 100px;
  margin-top: 24px;
  margin-bottom: 24px; }

.single_special section section h3::before {
  content: '';
  display: inline-block;
  background-image: url("../img/pen.svg");
  background-repeat: no-repeat;
  width: 28px;
  height: 28px;
  background-color: transparent; }

.single_special section section h3 {
  padding-left: 32px;
  color: #E53438;
  position: relative;
  border-bottom: 4px solid pink; }

/**/
#corporate_course > ul {
  display: flex;
  flex-flow: row wrap; }

#corporate_course > ul > li {
  margin-bottom: 12px;
  box-shadow: 1px 1px 4px #ccc; }

#corporate_course > ul > li:before {
  content: none; }

#corporate_course > ul > div {
  width: 50%; }

#corporate_course > ul > div > li:nth-of-type(1) {
  width: 100%;
  height: 100px;
  border: 1px solid #ccc;
  margin-bottom: 8px; }

#corporate_course > ul > div > li:nth-of-type(1):before {
  content: none; }

#corporate_course > ul > div > li:nth-of-type(2) {
  width: 100%;
  height: 100px;
  border: 1px solid #ccc;
  margin-bottom: 8px; }

#corporate_course > ul > div > li:nth-of-type(2):before {
  content: none; }

.dx {
  display: flex;
  width: 48%;
  flex-direction: column;
  margin-right: 2%; }

#corporate_course .drop_list {
  padding: 16px; }

/**/
.arrow_return {
  margin: 0 auto;
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  transform: rotate(180deg);
  padding-bottom: 24px; }

/*メディアクエリ*/
@media screen and (max-width: 1400px) {
  .container {
    margin-left: 88px;
    margin-right: 88px; }

  .j_card_container article h3 {
    font-size: 1em; }

  #top_hero > h1 {
    font-size: 2.6vw; } }
@media screen and (max-width: 1200px) {
  .single ol li:nth-of-type(3) a > span {
    height: 120px; }

  #senior_pc ol li:nth-of-type(3) .arrow_radius {
    bottom: -96px;
    left: -20%;
    transform: none; }

  #senior_pc ol li:nth-of-type(1) .arrow_radius {
    left: 0;
    transform: none; }

  .single ol li:nth-of-type(3) a > span {
    top: 50%; }

  #senior_pc ol {
    padding-bottom: 120px; }

  #qa_hero > div:nth-of-type(1) {
    left: 6%;
    top: 44%; } }
@media screen and (max-width: 1000px) {
  #junior_concept .container_2::after {
    display: none; }

  #junior_concept .container_2::before {
    display: none; }

  #senior_pc ol li {
    width: 10%; }

  #senior_pc ol li {
    padding: 2%; }

  .question_mask_box {
    opacity: 0.6; } }
@media screen and (max-width: 800px) {
  #senior_index .arrow_radius {
    font-size: 16px;
    padding-right: 0;
    padding-left: 0;
    width: 90%;
    min-width: 0; }

  .container {
    width: calc(100% - 16%);
    margin-left: 8%;
    margin-right: 8%; }

  .container_72 {
    width: 88%; }

  .container_2 {
    width: 88%;
    padding: 0; }

  #junior_concept .container_2 {
    width: 88%;
    padding: 0; }

  #openBtn1 {
    display: block; }

  header .glo-nav ul {
    display: none; }

  .mail {
    margin-right: 8px; }

  footer .footer_bg {
    flex-direction: column; }

  .footer_col_1 {
    flex-direction: row;
    justify-content: center; }

  .footer_contact {
    flex-direction: column;
    align-items: center; }

  .footer_contact > div {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center; }

  .j_card_container article > p {
    font-size: 14px; }

  .j_card_container article p:nth-of-type(2) {
    font-size: 0.8em; }

  .j_card_container article h3 {
    font-size: 0.6em; }

  .top_news ul li {
    gap: 0; }

  .top_news ul li > .flex {
    flex-direction: column;
    align-items: flex-start; }

  .top_news ul li {
    padding-bottom: 22px; }

  .icn {
    padding-top: 0px;
    padding-bottom: 0px; }

  .h3_box > div:nth-of-type(1) {
    display: none; }

  .top_senior h4, .top_junior h4 {
    margin-top: 4px;
    margin-bottom: 4px; }

  h2 {
    font-size: 1.2em; }

  .single h3 {
    font-size: 1.05em;
    line-height: 1.4; }

  #top_hero {
    flex-direction: column-reverse;
    height: calc(100vh - 62px); }

  #top_hero > h1 {
    width: 90%;
    margin: 5% 5% 12% 5%;
    font-size: 1.3rem; }

  #top_hero > div {
    width: 90%;
    margin-right: 5%;
    margin-left: 5%;
    flex-grow: 1; }

  #special_lists ul li h3 {
    font-size: 18px; }

  #special_lists ul li a {
    flex-direction: column; }

  #senior_index .arrow_red {
    display: none; }

  #senior_index ul li {
    margin-right: 2%;
    width: 30%; }

  #news_lists ul li .icn {
    margin-right: 24px;
    margin-left: 0px; }

  .top_news ul li .icn {
    margin-right: 24px;
    margin-left: 0px; }

  #special_lists ul li a > div:nth-of-type(1) {
    width: 100%;
    margin-bottom: 16px; }

  #special_lists ul li a > div:nth-of-type(2) {
    width: 100%;
    flex-direction: column;
    align-items: flex-end; }

  .point_personal {
    flex-direction: column; }

  #senior_sp ol li {
    width: 33.333%; }

  #senior_sp ol {
    padding-right: 3%;
    padding-left: 3%; }

  .single_j_trial .container_64 {
    box-sizing: border-box; }

  .single_scratch h2, .single_text_program h2 {
    flex-direction: column;
    align-items: flex-start; } }
/*20250715*/
@media screen and (max-width: 1280px) {
  .logo_box p {
    font-size: 1em; } }
@media screen and (max-width: 960px) {
  #openBtn1 {
    display: block; }

  .header_upper > div {
    display: none; }

  .sp_flex {
    display: flex;
    align-items: center;
    padding-left: 4%;
    padding-right: 4%; }

  .header_upper {
    padding-top: 0;
    padding-bottom: 0;
    justify-content: flex-start; } }
@media screen and (max-width: 748px) {
  header nav ul li a {
    width: 90px; }

  header nav ul {
    justify-content: space-between; }

  .header_upper {
    padding-top: 0;
    padding-bottom: 0; } }
@media screen and (max-width: 600px) {
  .logo_box p:nth-of-type(1) {
    font-size: 0.8em; }

  .logo_box small {
    font-size: 0.6em;
    font-weight: bold; } }
@media screen and (max-width: 500px) {
  .logo {
    height: auto;
    width: 80px; }

  .breadcrumb {
    margin-left: 12px;
    top: 72px; }

  .search {
    margin-right: 4px; }

  .mail {
    margin-right: 4px; }

  #senior_index .arrow_radius {
    font-size: 3.6vw; }

  #qa_hero > div:nth-of-type(1) {
    width: 90%; } }
#senior_index ul li:nth-of-type(3) {
  margin-right: 0; }

#senior_index ul li:nth-of-type(5) {
  margin-right: 0; }

.archive-news ul li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 0 12px 0;
  border-bottom: 1px solid #ccc; }

.archive-news ul li a {
  display: flex;
  justify-content: center;
  margin: 0 0 0 auto; }

#special_lists ul li a > div:nth-of-type(2) {
  display: flex;
  width: 60%;
  align-items: center;
  justify-content: space-between;
  font-size: 16px; }

/*ページネーション*/
ul.pageNav01 {
  margin: 0 0 10px;
  padding: 32px 10px 5px;
  text-align: center; }

ul.pageNav01 li {
  display: inline;
  margin: 0 2px;
  padding: 0; }

ul.pageNav01 li span.current {
  background-color: #585757;
  color: #fff;
  border-radius: 50%; }

ul.pageNav01 li span, ul.pageNav01 li a {
  display: inline-block;
  margin: 0px 0px 5px !important;
  width: 32px;
  height: 32px;
  text-decoration: none;
  vertical-align: middle;
  color: #000; }

.archive-news ul li > div {
  display: flex; }

ul.pageNav01 li a.next {
  background-image: url(../img/arrow.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover; }

.swiper-scrollbar {
  display: none; }

.car_outer {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 40vh;
  /* 高さを画面の半分に */
  width: 50%; }

#car-container {
  position: relative;
  height: 100%;
  /* 高さを画面の半分に */
  width: 100%;
  overflow: hidden; }

.car {
  position: absolute;
  bottom: 0;
  width: 1.2vw;
  /* 画面幅の2% */
  height: auto; }

.sp_flex {
  position: relative;
  z-index: 200;
  background-color: #fff;
  justify-content: space-between; }

#car-container {
  animation: op1 0.3s 2.1s linear both; }

/*シニア*/
.blocks a, .blocks > div {
  width: 23%; }

.pink_block {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  background-color: #FAD5D0;
  width: 100%;
  border-radius: 16px;
  aspect-ratio: 1 / 1;
  margin-bottom: 0.7em; }

.pink_block_img {
  height: 40%;
  margin-bottom: 1.2vw; }

.blocks {
  display: flex;
  justify-content: space-between;
  flex-flow: row wrap; }

.blocks > div .pink_block {
  background-color: transparent;
  opacity: 0.6; }

.blocks > div .pink_block_img {
  height: 72%; }

#senior_pc .blocks > div {
  opacity: 0.6; }

#senior_sp .blocks > div {
  width: 74%;
  opacity: 0.6; }

#senior_sp .blocks > div .pink_block {
  aspect-ratio: 3.5/1; }

.blocks a:hover .pink_block_img {
  transform: scale(1.4); }

.blocks a:hover .pink_block {
  background-color: #E53438; }

header nav ul li {
  height: 100%; }

.single .hero > div {
  height: 100%; }

#senior_support ul li a {
  height: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #fff; }

#senior_support ul li a:hover {
  background-color: #E53438;
  color: #fff; }

#senior_support .col {
  background-color: #FAD5D0;
  padding: 4%;
  padding-bottom: 72px;
  position: relative; }

#senior_personal .col {
  background-color: #FAD5D0;
  padding: 4%;
  padding-bottom: 72px;
  position: relative; }

.side_btn {
  position: absolute;
  right: 0;
  bottom: 0;
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  margin-right: -1px; }

.side_btn p {
  margin-bottom: 12px;
  font-weight: bold; }

.side_btn div {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  width: 80px;
  height: 80px;
  margin-right: -1px;
  margin-bottom: -4px; }

.list_check li {
  position: relative;
  padding-left: 32px;
  display: flex;
  align-items: center; }

.list_check li::before {
  content: '';
  position: absolute;
  left: 0;
  background-image: url("../img/check_mark.svg");
  background-repeat: no-repeat;
  width: 22px;
  height: 22px; }

.side_btn:hover p {
  color: #E53438; }

@media screen and (max-width: 960px) {
  .blocks a, .blocks > div {
    width: 48%; }

  #senior_sp .blocks > div {
    width: 48%; }

  #senior_sp .blocks > div .pink_block {
    aspect-ratio: 1/1; } }
.blocks div h3 {
  text-align: center; }

#senior_pc .col .col {
  display: flex;
  border: 2px solid #E53438;
  padding: 3%; }

#senior_pc .col .col div div {
  opacity: 0.5;
  width: 30%; }

#senior_pc .col .col > div {
  width: 40%;
  display: flex;
  justify-content: center;
  align-items: center; }

#senior_pc .col h3 {
  display: flex;
  background-color: #E53438;
  color: #fff;
  padding: 12px; }

#senior_sp .col .col {
  display: flex;
  border: 2px solid #E53438;
  padding: 3%; }

#senior_sp .col .col div div {
  opacity: 0.5;
  width: 16%; }

#senior_sp .col .col > div {
  width: 40%;
  display: flex;
  justify-content: center;
  align-items: center; }

#senior_pc .col h3 {
  display: flex;
  background-color: #E53438;
  color: #fff;
  padding: 12px; }

#senior_sp .col h3 {
  display: flex;
  background-color: #E53438;
  color: #fff;
  padding: 12px; }

#senior_pc .blocks,
#senior_sp .blocks {
  margin-bottom: 6%; }

#senior_pc .list_check,
#senior_sp .list_check {
  margin-right: 2em; }

/*20250812*/
.copy_right {
  text-align: center;
  color: #fff;
  font-size: 0.7em;
  margin-top: 8px; }

.archive .container {
  min-height: calc(100vh - 372px); }

.single .container {
  min-height: calc(100vh - 372px); }

.page .container {
  min-height: calc(100vh - 372px); }

.search_result .container {
  min-height: calc(100vh - 372px); }

.nav-links {
  list-style: none;
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 4vh; }

.nav-links > *:not(.dots) {
  width: 45px;
  border-radius: 50%;
  color: #4D4D4D;
  background: #efefef;
  transition: color 0.3s ease, background 0.3s ease;
  font-weight: bold; }

.nav-links > * {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  height: 45px; }

.nav-links .current, .nav-links a:hover {
  color: #ffffff;
  background: #4D4D4D; }

.breadcrumbs ul {
  display: flex;
  align-items: center;
  line-height: 1.2; }

.breadcrumbs ul li {
  text-indent: 0;
  padding-left: 0; }

.breadcrumbs ul li {
  font-size: 15px;
  margin-left: 0; }

.breadcrumbs ul li a {
  color: #0044CC;
  text-decoration: underline; }

#top_slider {
  height: 317.5px;
  overflow: hidden; }

#top_slider .swiper-slide a {
  height: 100%; }

#top_slider .swiper-slide a img {
  object-fit: cover; }

.return_button {
  margin-top: 80px;
  margin-bottom: 80px;
  white-space: wrap;
  text-align: center; }

/*20250818*/
.single h1,
.page h1 {
  font-size: 1.56em;
  padding: 16px;
  padding-left: 40px;
  background-color: #FFD3D3;
  border-radius: 16px;
  flex-direction: column;
  display: flex;
  line-height: 1.2;
  position: relative; }

.single h1::before,
.page h1::before {
  height: 72%;
  position: absolute;
  top: 50%;
  left: 20px;
  content: '';
  transform: translateY(-50%);
  background-color: #fff;
  width: 6px;
  border-radius: 9999px; }

.single h2,
.page h2 {
  margin-bottom: 0.75em;
  color: #E53438;
  position: relative;
  padding-bottom: 0.32em;
  padding-left: 0;
  position: relative;
  display: inline-block; }

.single h2::before,
.page h2::before {
  width: 60vw;
  height: 5px;
  content: '';
  position: absolute;
  left: 0;
  background-color: #FFD3D3;
  bottom: 0;
  border-radius: 9999px; }

.single h2::after,
.page h2::after {
  width: 100%;
  height: 5px;
  content: '';
  position: absolute;
  left: 0;
  background-color: #E7281F;
  bottom: 0;
  border-radius: 9999px; }

.single main ul,
.page main ul {
  margin-bottom: 0.75em; }

.slug-kids-top.page h2 {
  color: #010101;
  display: flex; }

.slug-senior-top.page h2 {
  display: flex; }

.slug-kids-top.page h2::before {
  content: none; }

.slug-kids-top.page h2::after {
  content: none; }

.single h3,
.page h3 {
  position: relative;
  padding-left: 2em; }

.single h3:before,
.page h3:before {
  content: '';
  position: absolute;
  background-image: url("../img/tag_red_1.svg");
  height: 1.2em;
  width: 2.6em;
  background-repeat: no-repeat;
  left: 0;
  top: 5px; }

.green_manner header nav {
  background-color: #14A043; }

.green_manner header nav ul li a {
  background-color: #14A043; }

header nav ul li:hover a {
  background-color: #fff; }

.green_manner footer {
  background-color: #14A043; }

.green_manner .footer_contact .arrow_radius {
  color: #14A043; }

footer .arrow_red span {
  font-size: 24px;
  font-weight: bold;
  color: #E53438; }

footer .arrow_red .material-symbols-outlined {
  font-variation-settings: "FILL" 0, "wght" 700, "GRAD" 0, "opsz" 24; }

.green_manner .arrow_red span {
  color: #14A043; }

.breadcrumbs ul a {
  color: blue;
  text-decoration: underline; }

.single.page_404 h1 {
  background-color: transparent;
  margin-bottom: 0;
  padding-left: 0;
  padding-right: 0; }

.single.page_404 h1:before {
  content: none; }

.img_nf {
  width: 80px; }

/*問い合わせフォーム*/
#your-name .wpcf7-form-control-wrap input {
  border: 1px solid #989898;
  display: block;
  min-height: 48px;
  border-radius: 8px;
  margin-top: 6px;
  width: 100%;
  padding: 8px;
  box-sizing: border-box; }

#your-title .wpcf7-form-control-wrap input {
  border: 1px solid #989898;
  display: block;
  min-height: 48px;
  border-radius: 8px;
  margin-top: 6px;
  width: 100%;
  padding: 8px;
  box-sizing: border-box; }

#your-mail .wpcf7-form-control-wrap input {
  border: 1px solid #989898;
  display: block;
  min-height: 48px;
  border-radius: 8px;
  margin-top: 6px;
  width: 100%;
  padding: 8px;
  box-sizing: border-box; }

#your-message textarea {
  border: 1px solid #989898;
  display: block;
  min-height: 48px;
  width: 100%;
  border-radius: 8px;
  margin-top: 6px;
  padding: 8px;
  box-sizing: border-box; }

.wpcf7-submit {
  display: block;
  align-items: center;
  background-color: #E53438;
  color: #fff;
  padding: 8px 16px 8px 16px;
  border-radius: 9999px;
  font-size: 18px;
  font-weight: bold;
  min-width: 172px;
  margin-top: 1.7em;
  border: 2px solid #E53438;
  margin-top: 0;
  margin: 0 auto;
  cursor: pointer; }

.wpcf7-submit:hover {
  background-color: #fff;
  color: #E53438; }

.wpcf7-submit:disabled {
  display: block;
  align-items: center;
  background-color: #4d4d4d;
  color: #fff;
  border: 2px solid #4d4d4d; }

.must {
  background-color: #E7281F;
  color: #fff;
  padding: 4px;
  border-radius: 4px;
  font-size: 0.88em;
  font-weight: bold;
  margin-right: 8px; }

.opt {
  background-color: #666666;
  color: #fff;
  padding: 4px;
  border-radius: 4px;
  font-size: 0.88em;
  font-weight: bold;
  margin-right: 8px; }

.wpcf7-form {
  margin-top: 32px; }

/*問い合わせ確認*/
#your-name-check span:nth-of-type(2) {
  display: flex;
  min-height: 48px;
  border-radius: 8px;
  margin-bottom: 32px;
  margin-top: 6px;
  width: 100%;
  padding: 8px;
  box-sizing: border-box;
  background-color: #FFF1F0;
  align-items: center; }

#your-title-check span:nth-of-type(2) {
  display: flex;
  min-height: 48px;
  border-radius: 8px;
  margin-bottom: 32px;
  margin-top: 6px;
  width: 100%;
  padding: 8px;
  box-sizing: border-box;
  background-color: #FFF1F0;
  align-items: center; }

#your-mail-check span:nth-of-type(2) {
  display: flex;
  min-height: 48px;
  border-radius: 8px;
  margin-bottom: 32px;
  margin-top: 6px;
  width: 100%;
  padding: 8px;
  box-sizing: border-box;
  background-color: #FFF1F0;
  align-items: center; }

#your-message-check span:nth-of-type(2) {
  display: flex;
  min-height: 48px;
  width: 100%;
  border-radius: 8px;
  margin-bottom: 32px;
  margin-top: 6px;
  padding: 8px;
  box-sizing: border-box;
  background-color: #FFF1F0;
  align-items: center; }

.wpcf7-previous {
  display: block;
  align-items: center;
  background-color: #fff;
  color: #4D4D4D;
  padding: 8px 16px 8px 16px;
  border-radius: 9999px;
  font-size: 18px;
  font-weight: bold;
  min-width: 172px;
  margin-top: 1.7em;
  border: 2px solid #4D4D4D;
  margin-top: 0;
  cursor: pointer; }

.contact-flex p {
  display: flex;
  justify-content: center;
  gap: 32px; }

.slug-contact-confirm .wpcf7-submit {
  margin: 0; }

.privacy-check {
  overflow: scroll;
  max-height: 300px;
  background-color: #ECECEC;
  padding: 4%;
  width: 72%;
  margin: 0 auto; }

.privacy-check h2:before, .privacy-check h2:after {
  content: none; }

.privacy-check h3:before {
  content: none; }

.privacy-check h3 {
  padding: 0;
  font-size: 1em;
  margin-top: 0.9em;
  margin-bottom: 0.9em; }

.privacy-check p {
  font-size: 0.9em;
  margin-bottom: 0.64em; }

.wpcf7-form-control-wrap {
  position: relative;
  display: block;
  text-align: center;
  padding-top: 16px;
  margin-bottom: 32px; }

.wpcf7-list-item input {
  width: 26px;
  height: 26px;
  margin-right: 10px; }

.wpcf7-list-item label {
  display: flex;
  align-items: center; }

.wpcf7-not-valid-tip {
  text-align: left; }

.search_result_number {
  padding-bottom: 28px; }

.submit-label {
  color: #fff;
  position: relative;
  z-index: 3; }

.breadcrumbs {
  padding-top: 16px; }

h4 {
  margin-top: 20px;
  margin-bottom: 20px; }

h3 {
  margin-top: 0.75em;
  margin-bottom: 0.75em; }

/*タイトル*/
.slug-privacy h3:before {
  content: none; }

.slug-privacy h3 {
  padding-left: 0; }

/*トップニュース*/
.top_news ul li a {
  text-decoration: none; }

.hover_box {
  text-decoration: none; }

.button_radius {
  text-decoration: none; }

.nav-links a {
  text-decoration: none; }

/**/
@media screen and (max-width: 800px) {
  .top_news a > div {
    flex-direction: column; }

  .top_news ul li a div {
    align-items: flex-start; }

  .top_news a > div > div:nth-of-type(1) {
    margin-bottom: 10px; }

  .top_news .date {
    margin-right: 14px; } }
.icn {
  display: flex;
  justify-content: center;
  align-items: center; }

.single .hs-top h1,
.page .hs-top h1 {
  padding-top: 1em;
  background-color: transparent;
  border-radius: 0;
  display: flex;
  line-height: 1;
  position: relative;
  margin-bottom: 0; }

.single .hs-top h1:before,
.page .hs-top h1:before {
  content: none; }

.single .ms-top h2:before,
.single .ms-top h2:after,
.page .ms-top h2:before,
.page .ms-top h2:after {
  content: none; }

/*シニアページ*/
.flex-quatre {
  display: flex;
  flex-flow: row wrap;
  gap: 8%; }

.flex-quatre section {
  width: 46%; }

.scourse_list li {
  margin-bottom: 16px; }

.scourse_list li a {
  display: flex;
  justify-content: space-between;
  border: 1px solid #E53438;
  padding: 0.5em;
  min-height: 112px;
  text-decoration: none; }

.scourse_list li a div {
  width: 88%; }

.scourse_list .arrow_red {
  margin: 0 0 0 auto;
  width: 32px;
  height: 32px;
  align-self: center;
  display: inline-flex;
  align-items: center; }

.scourse_list h3 {
  margin-top: 0;
  margin-bottom: 0.12em; }

.scourse_list p {
  color: #6E6E6E; }

.container-80 {
  width: 80%;
  margin: 0 auto; }

.scourse_list .arrow_red .material-symbols-outlined {
  font-variation-settings: "FILL" 0, "wght" 700, "GRAD" 0, "opsz" 24;
  color: #E53438; }

.link-red {
  border: 1px solid #E53438;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border: 1px solid #E53438;
  padding: 0.5em;
  min-height: 112px;
  text-decoration: none; }

.link-red .arrow_red {
  margin: 0 0 0 auto;
  width: 32px;
  height: 32px;
  align-self: center;
  display: inline-flex;
  align-items: center; }

.link-red .arrow_red .material-symbols-outlined {
  font-variation-settings: "FILL" 0, "wght" 700, "GRAD" 0, "opsz" 24;
  color: #E53438; }

#senior_support h3 {
  margin-top: 0;
  margin-bottom: 0.12em;
  color: #E53438; }

.link-red li div {
  width: 20px;
  height: 20px; }

.link-red li {
  display: flex;
  align-items: center; }

.link-red ul {
  margin-bottom: 0; }

#senior_support .link-red ul {
  margin-top: 8px; }

#senior_support .link-red,
#senior_personal .link-red {
  min-height: 172px;
  padding: 1em; }

.icn_sp, .icn_pc, .icn_person, .icn_bag {
  background-color: #E53438;
  width: 80px;
  height: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%; }

.icn_sp div, .icn_pc div, .icn_person div, .icn_bag div {
  height: 50%; }

.hero {
  height: 27vh; }

.slug-senior-top .hero {
  background-color: #F9D4D4; }

.slug-senior-top main {
  margin-top: 0; }

.slug-senior-top .hero > div {
  width: 300px;
  height: 300px;
  background-color: #fff;
  border-radius: 50%;
  position: absolute;
  bottom: -150px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column; }

.slug-senior-top .hero > div > div {
  transform: translateY(-32px); }

.hero .material-symbols-outlined {
  font-size: 100px;
  display: flex;
  justify-content: center;
  align-items: center; }

.slug-senior-top .hero .material-symbols-outlined {
  font-variation-settings: "FILL" 0, "wght" 300, "GRAD" 0, "opsz" 24;
  color: #E53438;
  line-height: 0.7; }

.slug-senior-top h1 {
  font-size: 1.7em; }

.slug-senior-top h2 {
  align-items: center;
  margin-top: 1em; }

.link-red:hover {
  background-color: #F9D4D4; }

.scourse_list li a:hover {
  background-color: #F9D4D4; }

.slug-senior-top h3,
.slug-kids-top h3 {
  padding-left: 0; }

.slug-senior-top .breadcrumbs {
  position: absolute;
  z-index: 10; }

.slug-senior-top h2::before {
  content: '';
  width: 100%;
  height: 6px;
  background-color: #E7281F;
  position: absolute;
  bottom: 0;
  border-radius: 9999px; }

@media screen and (max-width: 1280px) {
  .flex-quatre {
    gap: 3%; }

  .flex-quatre section {
    width: 100%; } }
@media screen and (max-width: 600px) {
  .link-red {
    flex-direction: column; }

  .link-red .arrow_red {
    flex-direction: column;
    margin: 0 auto; }

  #senior_support .link-red ul {
    margin-bottom: 12px; }

  #senior_personal .link-red ul {
    margin-bottom: 12px; } }
#senior_personal .link-red ul li {
  position: relative;
  padding-left: 1.4em; }

#senior_personal .link-red ul li:before {
  content: '';
  position: absolute;
  width: 20px;
  height: 20px;
  top: 6px;
  left: 0;
  background-image: url("../img/icn_bulb.svg");
  background-repeat: no-repeat;
  background-position: cover;
  margin: 0; }

.slug-kids-top .hero {
  background-color: #9CE1B3; }

.slug-kids-top main {
  margin-top: 0; }

.slug-kids-top .hero > div {
  width: 300px;
  height: 300px;
  background-color: #fff;
  border-radius: 50%;
  position: absolute;
  bottom: -150px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column; }

.slug-kids-top .hero > div > div {
  transform: translateY(-32px); }

.hero .material-symbols-outlined {
  font-size: 100px;
  display: flex;
  justify-content: center;
  align-items: center; }

.slug-kids-top .hero .material-symbols-outlined {
  font-variation-settings: "FILL" 0, "wght" 300, "GRAD" 0, "opsz" 24;
  color: #14A043;
  line-height: 0.7; }

.slug-kids-top h1 {
  font-size: 1.7em; }

.slug-kids-top h2 {
  align-items: center; }

.slug-senior-top h3,
.slug-kids-top h3 {
  padding-left: 0; }

.slug-kids-top .breadcrumbs {
  position: absolute;
  z-index: 10; }

.container_500 {
  max-width: 500px;
  margin: 0 auto; }

/*キッズ*/
.j_card_container article h3 {
  justify-content: center;
  margin-top: 0;
  margin-bottom: 0; }

.j_card_container article {
  text-decoration: none; }

/**/
.j_card_container article h3 {
  flex-direction: column; }

.j_card_container article h3 span {
  font-size: 1.32vw;
  line-height: 1.32; }

.j_card_container article h3 span.sub {
  font-size: 0.9vw;
  line-height: 1; }

#junior_course .button_radius {
  background-color: #1E1E1E;
  border-color: #1E1E1E; }

#junior_course .button_radius:hover {
  background-color: #fff;
  color: #1E1E1E; }

.j_card_container article.ai .j_card_image > img {
  object-fit: cover;
  width: 98px;
  height: 102px; }

@media screen and (max-width: 960px) {
  .container_64 {
    width: calc(100% - 16%);
    margin-left: 8%;
    margin-right: 8%; } }
@media screen and (max-width: 1000px) {
  #junior_concept .container_48 {
    width: 100%; } }
#program_succer a {
  position: relative; }

#program_succer .container_312 {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding-top: 12%;
  padding-left: 23%;
  padding-right: 15%;
  padding-bottom: 10%; }

#program_succer .container_312 .arrow_detail {
  font-size: 1em; }

@media screen and (max-width: 748px) {
  #program_succer .container_312 p {
    font-size: 0.8em; }

  #program_succer .container_312 .arrow_detail {
    font-size: 0.8em; }

  .j_card_container article h3 span {
    font-size: 3vw; }

  .j_card_container article h3 span.sub {
    font-size: 2vw; } }
@media screen and (max-width: 600px) {
  #program_succer .container_312 {
    padding-top: 25%;
    padding-right: 17%;
    padding-bottom: 12%; } }
@media screen and (max-width: 560px) {
  #program_succer .container_312 {
    padding-top: 25%;
    padding-right: 17%;
    padding-bottom: 12%; }

  #program_succer .container_312 .arrow_detail {
    font-size: 1.2em; } }
.slug-kids-top h2 {
  margin-top: 0;
  padding-bottom: 0; }

#junior_course {
  margin-bottom: 4vh; }

/*トップページ250826*/
#top_services h3 {
  display: flex;
  flex-direction: column;
  align-items: center; }

#top_services h3 p {
  font-size: 1.4em; }

#top_services h3 div {
  height: 40px;
  width: auto; }

.top_corporate h3 {
  color: #1D2C5D; }

.top_school h3 {
  color: #EA5514; }

.top_indivisual h3 {
  color: #A40B5D; }

#top_course {
  margin-bottom: 6vh; }

.card_service {
  width: 48.4%;
  margin-bottom: 32px; }

.card_service_image {
  height: 200px; }

.card_service_image img {
  object-fit: cover; }

.card_service p {
  display: flex;
  justify-content: center;
  padding: 0.4em;
  font-size: 1.2em;
  font-weight: bold; }

.card_service p {
  display: flex;
  flex-direction: column; }

.top_school .card_service p {
  background-color: #EA5514;
  color: #fff; }

.top_indivisual .card_service p {
  background-color: #A40B5D;
  color: #fff; }

.top_corporate .card_service p {
  background-color: #1D2C5D;
  color: #fff; }

.card_service_wrap {
  display: flex;
  gap: 3.2%;
  flex-flow: wrap; }

.mgb_none {
  margin-bottom: 0; }

@media screen and (max-width: 960px) {
  .card_service {
    width: 100%; }

  .card_service p {
    padding: 0.4em;
    font-size: 1em;
    font-weight: bold; }

  .card_service_image {
    height: 160px; }

  #top_course li a {
    flex-direction: column-reverse; }

  #top_course > ul > li > a > .h3_box {
    width: 100%; }

  #top_course ul > li > a > div {
    width: 100%; }

  #top_course ul > li > a > div {
    width: 100%; }

  #top_services ul li a {
    flex-direction: column;
    height: auto;
    padding: 4%; }

  #top_services ul li a > div {
    width: 100%; }

  #top_course ul > li > a > div {
    border-left: 1px solid #ccc; }

  #top_course > ul > li > a > div {
    border-left: 1px solid #ccc; }

  #top_course ul li .h3_box {
    padding: 0.4em; }

  #top_course .top_senior .h3_box {
    font-size: 1em;
    align-items: flex-start; }

  #top_course .top_junior .h3_box {
    font-size: 1em;
    align-items: flex-start; }

  #top_course ul li .h3_box h3 {
    margin: 0; }

  .h3_box > div:nth-of-type(1) {
    display: none; }

  #top_course ul li .top_course_image {
    overflow: hidden;
    height: 160px; }

  #top_course ul li a {
    height: auto; } }
.card_service .card_service_image {
  overflow: hidden; }

.card_service:hover .card_service_image img {
  transform: scale(1.1); }

.card_service .card_service_image img {
  transition: 0.2s; }

.green_manner h1 {
  background-color: #9CE1B3; }

.slug-kids-top h3:before {
  content: none; }

.slug-senior-top h3:before {
  content: none; }

.slug-senior-top h1,
.slug-kids-top h1 {
  font-size: 1.56em;
  padding: 0;
  background-color: transparent;
  border-radius: 16px;
  margin-bottom: 0;
  line-height: 1.7; }

.slug-kids-top h1:before,
.slug-senior-top h1:before {
  content: none; }

.page .container,
.single .container {
  margin-top: 2vh;
  margin-bottom: 8vh; }

.search .container {
  margin-top: 2vh;
  margin-bottom: 8vh; }

.archive .container {
  margin-top: 2vh;
  margin-bottom: 8vh; }

.single main ul li::before,
.page main ul li::before {
  content: '';
  width: 10px;
  height: 10px;
  margin-right: 8px;
  margin-left: 8px;
  display: inline-block;
  border-radius: 50%; }

.single main ul li::before,
.page main ul li::before {
  background-color: #E53438; }

.slug-senior-top main ul li::before,
.slug-kids-top main ul li::before {
  content: none; }

.single main p,
.page main p {
  margin-bottom: 1em; }

#page_top2 {
  text-decoration: none; }

.text-program {
  color: #fff; }

.card_service {
  text-decoration: none; }

@media screen and (max-width: 1400px) and (min-width: 800px) {
  .container {
    width: calc(100% - 176px);
    margin-right: 88px;
    margin-right: 88px; }

  .single h2::before, .page h2::before {
    width: calc(100vw - 176px); } }
@media screen and (max-width: 1400px) and (min-width: 800px) {
  .container {
    width: calc(100% - 176px);
    margin-right: 88px;
    margin-right: 88px; }

  .single h2::before, .page h2::before {
    width: calc(100vw - 176px); } }
@media screen and (max-width: 800px) {
  .single h2::before, .page h2::before {
    width: 84vw; } }
iframe {
  height: 400px; }

.single h4,
.page h4 {
  color: #E7281F;
  position: relative;
  padding-left: 1.4em;
  display: flex;
  align-items: center; }

.single h4::before,
.page h4::before {
  background-color: #E7281F;
  content: '';
  position: absolute;
  left: 0;
  top: 6px;
  width: 20px;
  height: 20px;
  background-repeat: no-repeat; }

.green_manner h4::before {
  background-color: #14A043;
  padding-left: 0; }

.green_manner h4::before {
  content: none; }

/*旧エディタ画像*/
.point_fait {
  width: 25%; }

.sc_address {
  background-color: #E7E7E7;
  padding: 2.8%;
  font-style: normal; }

.single main .sc_address p {
  margin: 0; }

.sc_address span {
  font-weight: bold; }

.single main a,
.page main a {
  margin-top: 0.7em;
  margin-bottom: 0.7em; }

.img_mid {
  width: 320px; }

#page_top2 > div {
  margin-bottom: 0.2em; }

@media screen and (max-width: 800px) {
  #page_top2 > div {
    width: 32px;
    height: 32px; }

  #page_top2 p {
    font-size: 0.5em; }

  #page_top2 > div > img {
    width: 1em; }

  .container-80 {
    width: 88%;
    margin: 0 auto; } }
.slug-sitemap main p,
.slug-sitemap main ul {
  margin-top: 0.7em;
  margin-bottom: 0.7em; }

.privacy-check h2 {
  text-align: left;
  padding: 0;
  margin-top: 0;
  margin: 0;
  color: #010101; }

@media screen and (max-width: 800px) {
  .privacy-check {
    width: 84%; } }
#senior_personal .link-red ul li:before {
  background-color: transparent; }

.slug-senior-top h2::before {
  content: '';
  width: 100%;
  height: 6px;
  background-color: #E7281F;
  position: absolute;
  bottom: 0;
  border-radius: 9999px; }

#senior_support .link-red ul li {
  position: relative;
  padding-left: 1.32em; }

#senior_support .link-red ul li span {
  width: 20px;
  height: 20px;
  background-color: #E53438;
  flex-shrink: 0;
  position: absolute;
  top: 6px;
  left: 0;
  margin: 0; }

@media screen and (max-width: 1640px) {
  .j_card_container article {
    width: 31.8%;
    margin-right: 2.3%; }

  .j_card_container article:nth-of-type(4) {
    margin-right: 2.3%; }

  .j_card_container article:nth-of-type(3n) {
    margin-right: 0; }

  .j_card_container article {
    margin-bottom: 2.3%; }

  .j_card_container article > p {
    font-size: 0.8em; }

  .j_card_container article p:nth-of-type(2) {
    font-size: 1.6vw; }

  .j_card_container article h3 span {
    font-size: 2vw; }

  .j_card_container article h3 span.sub {
    font-size: 0.8em; } }
@media screen and (max-width: 1131px) {
  #qa {
    margin-top: 0; }

  #qa h2 {
    margin-bottom: 16px; }

  #qa h2 > div:nth-of-type(2) {
    width: 16%;
    transform: translateY(0); }

  #qa h2 > div:nth-of-type(1) {
    width: 20%; }

  #trial_junior {
    flex-direction: column; }

  .trial_notice {
    position: static;
    width: 440px;
    height: 44px;
    margin-top: 20px; }

  .arrow_round {
    display: none; }

  #trial_junior .notice_bg {
    border-radius: 0;
    animation: none; }

  #trial_senior .notice_bg {
    border-radius: 0; }

  .trial_notice > span > div {
    flex-direction: row; }

  #senior_support ul li {
    width: 100%; }

  #trial_senior {
    flex-direction: column; } }
@media screen and (max-width: 1000px) {
  .j_card_container article > p {
    margin-bottom: auto; } }
@media screen and (max-width: 960px) {
  .j_card_container article {
    width: 48%;
    margin-right: 4%; }

  .j_card_container article:nth-of-type(2n) {
    transition-delay: 0.06s; }

  .j_card_container article:nth-of-type(3) {
    transition-delay: 0; }

  .j_card_container article:nth-of-type(2n) {
    margin-right: 0; }

  .j_card_container article:nth-of-type(3) {
    margin-right: 4%; }

  .j_card_container article h3 span {
    font-size: 1.4em; }

  .j_card_container article p:nth-of-type(2) {
    font-size: 2.6vw; } }
@media screen and (max-width: 800px) {
  .j_card_container article h3 {
    font-size: 1em; } }
@media screen and (max-width: 748px) {
  .j_card_container article {
    width: 47.2%;
    margin-right: 2.8%;
    padding: 2%; }

  .j_card_container article > p {
    font-size: 0.8em; } }
@media screen and (max-width: 748px) {
  .j_card_container article {
    width: 100%; }

  .j_card_container article {
    margin-right: 0; }

  footer .footer_col_2 {
    flex-direction: column; }

  footer .footer_col_2 ul:nth-of-type(1) {
    margin-top: 0;
    margin-bottom: 0; }

  .j_card_container article h3 {
    font-size: 1em; }

  .j_card_container article p:nth-of-type(2) {
    font-size: 1em; }

  .j_card_container article > p {
    font-size: 1em; }

  .j_card_container article h3 span {
    font-size: 1.6em; }

  .j_card_container article h3 span.sub {
    font-size: 1em; }

  .trial_notice {
    width: 88%; }

  .trial_inner > div {
    display: flex;
    flex-direction: column; }

  #trial_junior .arrow_radius:nth-of-type(1) {
    margin-right: 0;
    margin-bottom: 12px; }

  #qa h2 p {
    font-size: 4.4vw; }

  #qa h2 p {
    margin-left: 2%;
    margin-right: 2%; }

  #junior_concept .button_radius {
    font-size: 3.6vw; }

  .drop_menu_2 > div p:nth-of-type(1) {
    font-size: 3.2vw;
    margin-left: 4%; }

  #program_succer .container_312 {
    font-size: 3vw; }

  #program_succer .arrow_detail {
    margin-top: 8px; }

  #program_succer .container_312 .arrow_detail {
    font-size: 1em; }

  .footer_contact > div span {
    font-size: 4vw; }

  .footer_contact .call {
    font-size: 7.2vw; }

  .footer_contact .arrow_radius {
    font-size: 3.6vw; }

  #page_top {
    width: 48px;
    height: 72px; }

  #senior_index ul li {
    width: 40%;
    margin-right: 0;
    margin-bottom: 14px; }

  #news_lists ul li > div {
    flex-direction: column; }

  #news_lists ul li .icn {
    margin-right: auto; }

  .top_news ul li > div {
    flex-direction: column; }

  .top_news ul li .icn {
    margin-right: auto; }

  #senior_pc ol {
    width: 100%; }

  .single ol li .arrow_radius {
    font-size: 0.8em; }

  #senior_sp ol li:nth-of-type(1) .arrow_radius {
    left: 0%;
    transform: none; }

  #senior_pc ol li:nth-of-type(2) .arrow_radius {
    left: -100%;
    transform: none; }

  #corporate_course > ul {
    flex-direction: column; }

  .dx {
    width: 100%; }

  #corporate_course > ul > div {
    width: 100%; }

  .j_card_container article p:nth-of-type(2) {
    font-size: 5vw; } }
@media screen and (max-width: 1400px) and (min-width: 800px) {
  .container_70 {
    width: calc(100% - 176px);
    margin-right: 88px;
    margin-right: 88px; } }
@media screen and (max-width: 800px) {
  .container_70 {
    width: 88%; } }
.j_card_container article {
  display: flex;
  flex-direction: column; }

@media screen and (max-width: 500px) {
  .j_card_container article {
    width: 100%;
    margin-right: 0;
    padding: 6%; }

  .j_card_container article:nth-of-type(3n) {
    margin-right: 0; }

  .j_card_container article h3 span.sub {
    font-size: 0.8em; }

  .j_card_container article h3 span {
    font-size: 7.2vw; }

  article .flex span {
    height: 1.2em; }

  .j_card_container article > p {
    font-size: 0.9em; }

  .j_card_container article {
    width: 100%;
    margin-right: 0; } }
#program_succer p {
  margin-bottom: 0; }

.j_card_container article > p {
  margin-bottom: 0; }

@media screen and (max-width: 500px) {
  #Menu-Group {
    padding: 64px 0 0; }

  #Menu-Group li {
    height: calc((100vh - 64px) / 12); } }
#Menu-Group li a {
  cursor: pointer; }

.hero_top {
  height: 500px;
  overflow: hidden;
  margin-bottom: 4vh;
  width: 100%;
  position: relative; }

.hero_top img {
  object-fit: cover; }

.hero_top h1 {
  color: #fff;
  position: absolute;
  top: 50%;
  left: 10%;
  transform: translateY(-50%);
  text-shadow: 0px 0px 10px #000;
  z-index: 10; }

.hero_top h1 span {
  display: block; }

.home .breadcrumbs {
  display: none; }

@keyframes clip-path {
  0% {
    clip-path: inset(0 100% 0 0); }
  50% {
    clip-path: inset(0 0 0 0); }
  100% {
    clip-path: inset(0 0 0 100%); } }
.swiper-wrapper {
  transition-timing-function: cubic-bezier(0.25, 1, 0.5, 1); }

.container_trial {
  width: 40%;
  margin: 0 auto; }

@media screen and (max-width: 1000px) {
  .container_trial {
    width: 88%; } }
.top_comment h2 {
  font-size: 1em;
  line-height: 1.4;
  color: #2B2B2B;
  font-weight: normal;
  padding: 0;
  margin-bottom: 1em; }

.slug-senior-top .top_comment h2::before {
  content: none; }

.top_description {
  background-color: #F0F0F0;
  display: flex;
  z-index: 3;
  position: relative;
  border-radius: 30px; }

.top_description ul li::before {
  content: '';
  width: 10px;
  height: 10px;
  margin-right: 8px;
  margin-left: 8px;
  display: inline-block;
  border-radius: 50%; }

.top_description ul li::before {
  background-color: #E53438; }

.top_comment h2::after {
  content: none; }

.top_description {
  font-size: 0.9em;
  position: relative; }

.top_description > div {
  width: 50%; }

.top_description > div:nth-of-type(2) {
  background-image: url("../img/human.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: left;
  position: relative; }

.top_description > div:nth-of-type(1) {
  padding: 3%;
  box-sizing: border-box; }

.top_description h3 {
  margin-top: 0;
  margin-bottom: 0.7em; }

.top_description ul li {
  display: flex;
  align-items: center;
  position: relative;
  padding-left: 1.4em; }

.top_description ul li::before {
  content: '';
  position: absolute;
  width: 20px;
  height: 20px;
  top: 6px;
  left: 0;
  background-image: url(../img/icn_bulb.svg);
  background-repeat: no-repeat;
  background-position: cover;
  margin: 0; }

.s_trial_btn {
  background-color: #fff;
  color: #E7281F;
  border: 2px solid #E7281F;
  width: 72%;
  height: 72%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0;
  font-size: 2em;
  text-decoration: none;
  font-weight: bold;
  flex-direction: column;
  line-height: 1.4; }

.s_trial_btn:hover {
  background-color: #E7281F;
  color: #fff; }

.s_trial_btn small {
  font-size: 0.5em; }

.page main .top_description ul li::before {
  content: '';
  width: 10px;
  height: 10px;
  margin-right: 8px;
  margin-left: 8px;
  display: inline-block;
  border-radius: 50%;
  background-color: #E7281F; }

@media screen and (max-width: 960px) {
  .top_description {
    flex-direction: column-reverse; }

  .top_description > div {
    width: 100%; }

  .top_description > div:nth-of-type(1) {
    padding: 5%; }

  .s_trial_btn {
    width: 88%;
    height: 90%; } }
.mySwiper2 {
  margin-bottom: 4vh;
  position: relative; }

.mySwiper2 .swiper-slide img {
  object-fit: contain; }

.mySwiper3 {
  width: 88%; }

.swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
  bottom: 0; }

.slug-kids-top .top_comment h2 {
  margin-top: 32px; }

.swiper-button-prev:after,
.swiper-button-next:after {
  content: ""; }

.main-outer img {
  width: auto;
  height: auto;
  object-fit: contain; }

@media screen and (max-width: 640px) {
  .main-outer img {
    max-width: 100%; } }
.mySwiper1 {
  height: 100%; }

.mySwiper1 .swiper {
  height: 100%; }

.mySwiper3 {
  position: relative; }

header nav ul li a p {
  line-height: 1;
  font-size: 1em; }

header nav ul li {
  padding-top: 0.1em;
  padding-bottom: 0.1em; }

.slug-kids-top .hero > div > div {
  transform: translateY(-32px); }

.slug-senior-top .top_comment h2 {
  margin-top: 32px; }

.breadcrumbs ul span + span:before {
  content: " >";
  padding: 0 8px; }

@media screen and (max-width: 748px) {
  .breadcrumbs ul span {
    font-size: 3vw; } }
@media screen and (max-width: 600px) {
  .breadcrumbs ul span {
    font-size: 3vw; }

  .hero_top h1 span {
    font-size: 8vw; }

  .hero_top h1 {
    left: 4%; }

  .hero_top {
    height: 300px; } }
/* 検索フォーム全体のスタイル */
/* 検索フォーム全体 */
.search_container {
  display: flex;
  align-items: center;
  width: 312px;
  /* 全体を固定幅300pxに */
  margin: 0 auto;
  border: 1px solid #9B9B9B;
  border-radius: 25px;
  overflow: hidden;
  background-color: #fff;
  margin-right: 8px; }

/* 入力欄 */
.search_container input[type="text"] {
  flex: 1;
  padding: 10px 15px;
  border: none;
  font-size: 16px;
  outline: none;
  min-width: 0;
  /* 強制的に縮むのを許可 */ }

/* 実際のsubmitボタンは非表示 */
.search_container input[type="submit"] {
  display: none; }

/* ラベルによる送信ボタン */
.submit-label {
  width: 48px;
  height: 48px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #5C5C5C;
  cursor: pointer;
  transition: background-color 0.3s;
  flex-shrink: 0; }

.submit-label:hover {
  background-color: #e0e0e0; }

/* アイコン */
.submit-label .material-symbols-outlined {
  font-size: 24px;
  color: #fff; }

.align-center {
  text-align: center; }

@media screen and (max-width: 748px) {
  .home .align-right {
    text-align: center; } }
#junior_course .align-center {
  margin-top: 1em;
  margin-bottom: 1em; }

.breadcrumbs ul span {
  display: inline; }

.sc_address p {
  display: block; }

.swiper-slide {
  aspect-ratio: 2/1; }

.swiper-slide img {
  object-fit: cover; }

.top_description > div:nth-of-type(2) {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 2%;
  padding-bottom: 2%; }

@media screen and (max-width: 960px) {
  .mySwiper3 {
    width: 94%;
    box-sizing: border-box; } }
.mySwiper4 {
  z-index: 10;
  position: relative; }

.swiper-slide {
  overflow: hidden; }

.single.green_manner main ul li::before, .page.green_manner.page main ul li::before {
  background-color: #14A043; }

/*旧エディタ*/
.sb-c {
  margin-bottom: 0.75em; }

.single main .container section section {
  margin-bottom: 1.4em; }

.breadcrumbs ul span {
  display: flex; }

.breadcrumbs ul a {
  white-space: nowrap; }

.breadcrumbs ul {
  display: flex;
  margin-left: 1em;
  margin-right: 1em; }

.breadcrumbs ul span + span:before {
  display: flex;
  justify-content: center;
  align-items: center; }

.slug-senior-top .top_comment h2 {
  margin-right: 8%;
  margin-left: 8%; }

.slug-kids-top .top_comment h2 {
  margin-right: 8%;
  margin-left: 8%; }

/*エディタスタイル*/
.img15 {
  width: 15%; }

.img20 {
  width: 20%; }

.img25 {
  width: 25%; }

.img50 {
  width: 50%; }

.img75 {
  width: 75%; }

.img100 {
  width: 100%; }

.img20 {
  width: 20%; }

.img40 {
  width: 40%; }

.img60 {
  width: 60%; }

.img80 {
  width: 80%; }

@media screen and (max-width: 748px) {
  .img15 {
    width: 30%; }

  .img20 {
    width: 35%; }

  .img25 {
    width: 50%; }

  .img50 {
    width: 100%; }

  .img75 {
    width: 75%; }

  .img100 {
    width: 100%; }

  .img20 {
    width: 40%; }

  .img40 {
    width: 50%; }

  .img60 {
    width: 100%; }

  .img80 {
    width: 100%; } }
@media screen and (max-width: 450px) {
  .logo_box p:nth-of-type(1) {
    font-size: 3.5vw; } }
.mySwiper4 .swiper-slide img {
  object-fit: contain; }

.mySwiper3 .swiper-slide img {
  object-fit: contain; }

.mySwiper2 .swiper-slide img {
  object-fit: contain; }

/*20250905*/
#top_services h3 {
  color: #E7281F;
  font-size: 1.1vw; }

@media screen and (max-width: 1400px) {
  #top_services h3 {
    font-size: 1.4vw; } }
@media screen and (max-width: 960px) {
  #top_services ul li a div {
    width: 60%; }

  #top_services h3 {
    font-size: 1.5vw; } }
@media screen and (max-width: 800px) {
  #top_services ul {
    gap: 4%;
    max-width: 100%; }

  #top_services ul li {
    width: 48%;
    margin-bottom: 4%; }

  #top_services h3 {
    font-size: 2.6vw; } }
@media screen and (max-width: 600px) {
  #top_services h3 {
    font-size: 3vw; } }
@media screen and (max-width: 500px) {
  #top_services h3 {
    font-size: 6vw; }

  #top_services ul li {
    width: 100%; } }
.mail_footer {
  font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
  line-height: 1;
  display: flex;
  color: #E7281F;
  justify-content: center;
  font-size: 36px;
  width: 24%; }

.j_card_container article.scratch {
  border-radius: 12px; }

.j_card_container article.text-program {
  border-radius: 12px; }

.p-mark {
  width: 64px;
  height: 64px; }

.j_card_container article a {
  text-decoration: none;
  margin-top: 0;
  margin-bottom: 0;
  display: flex;
  flex-direction: column;
  height: 100%; }

/*修正*/
.swiper-pagination-bullet {
  width: 14px;
  height: 14px; }

#program_succer .button_radius {
  background-color: #323232;
  border-color: #323232; }

#program_succer .button_radius:hover {
  background-color: #fff;
  color: #323232; }

.after-white:after {
  background-color: #fff; }

.after-yellow:after {
  background-color: yellow; }

.j_card_container article {
  border-radius: 16px; }

.search_result .top_news ul li a .date {
  margin-right: 32px; }

.date_single {
  text-align: right;
  color: #575757;
  margin-bottom: 0.6em; }

.ended-message {
  color: red;
  font-weight: bold;
  font-size: 1.32em; }

.single-scourse h1 {
  margin-bottom: 1em; }

.page h1 {
  margin-bottom: 1em; }

/*テーブル*/
.tbl-r05 td:first-child {
  background: #fbf5f5; }

@media screen and (max-width: 748px) {
  .tbl-r05 {
    width: 100%; }

  .tbl-r05 .thead {
    display: none; }

  .tbl-r05 tr {
    width: 100%; }

  .tbl-r05 td {
    display: block;
    text-align: right;
    width: 100%; }

  .tbl-r05 td:first-child {
    background: #e9727e;
    color: #fff;
    font-weight: bold;
    text-align: center; }

  .tbl-r05 td:before {
    content: "[ " attr(data-label) " ]";
    float: left;
    font-weight: bold;
    margin-right: 10px; }

  .tbl-r05 tr td:nth-of-type(1):before {
    content: none; } }
/*テーブル*/
.tbl-tuition {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 2em;
  border: 1px solid #000; }
  .tbl-tuition tr {
    border-bottom: 1px solid #000; }
  .tbl-tuition th {
    background-color: #FFF3F2;
    text-align: center;
    padding: 8px;
    font-weight: bold;
    border: 1px solid #000; }
  .tbl-tuition td {
    padding: 8px;
    border: 1px solid #000;
    width: 33%; }
  @media screen and (max-width: 640px) {
    .tbl-tuition tr:first-child {
      display: none; }
    .tbl-tuition th,
    .tbl-tuition td {
      display: block;
      width: 100% !important;
      box-sizing: border-box; }
    .tbl-tuition th {
      background-color: transparent;
      border: none;
      padding-top: 16px; }
    .tbl-tuition td {
      border: none;
      padding-top: 8px;
      position: relative;
      padding-left: 45%;
      border-bottom: 1px solid #000;
      text-align: left; }
      .tbl-tuition td:last-child {
        border-bottom: none; }
      .tbl-tuition td:first-child {
        background-color: #FFF3F2; }
    .tbl-tuition td[data-label="時間"] {
      text-align: left; }
    .tbl-tuition td[data-label="料金"] {
      text-align: left; }
    .tbl-tuition td[data-label="有効期限"] {
      text-align: left; }
    .tbl-tuition td::before {
      content: attr(data-label);
      position: absolute;
      left: 0;
      top: 50%;
      transform: translateY(-50%);
      width: 30%;
      padding-left: 8px;
      font-weight: bold;
      white-space: nowrap; } }

.wp-block-table tbody tr:nth-of-type(1) {
  background-color: #FFF3F2; }

@media screen and (max-width: 748px) {
  .wp-block-table tr:nth-of-type(1) {
    display: none; } }
@media screen and (max-width: 748px) {
  .wp-block-table tr, .wp-block-table td {
    display: block;
    width: 100%;
    position: relative;
    box-sizing: border-box;
    border-right: 1px solid #000; } }
@media screen and (max-width: 748px) {
  .wp-block-table tr td:nth-of-type(1) {
    background-color: #FFF3F2; } }
#senior_personal a {
  color: #010101; }

#senior_support a {
  color: #010101; }

.single-special .container img {
  width: auto;
  height: auto; }

.page .container img {
  width: auto;
  height: auto; }

.single .container img {
  width: auto;
  height: auto; }

.single main ul li,
.page main ul li {
  text-indent: -1em;
  padding-left: 1em; }

.slug-senior-top main ul li,
.slug-kids-top main ul li,
.home main ul li {
  text-indent: 0;
  padding-left: 0; }

.slug-senior-top .top_description ul li {
  padding-left: 1.4em; }

.single-kcourse h1 {
  margin-bottom: 1em; }

@media screen and (max-width: 600px) {
  #program_succer .container_312 p {
    font-size: 1.5em; } }
.slug-privacy h4 {
  padding-left: 0;
  color: #0D0D0D; }

.slug-privacy h4:before {
  content: none; }

.logo_title small {
  display: flex; }

.call {
  font-size: 20px; }

#access p span {
  display: block; }

#access p span {
  display: flex; }

#access .material-symbols-outlined {
  display: flex;
  font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
  line-height: 1;
  display: flex;
  justify-content: center; }

.mail {
  width: 24px;
  height: 24px;
  padding: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0; }

.material-symbols-outlined.mail {
  font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
  color: #E7281F; }
