@charset "utf-8";
/* ===========================================================
 *
 * オフィスごっこ スタイルシート
 * Last UpDate : 2025/10/08
 *
=========================================================== */

/* ----------------------------------------------------------
	style.css
---------------------------------------------------------- */

/* noto-sans-jp-regular - japanese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 400;
  src: url('noto-sans-jp-v54-japanese-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* noto-sans-jp-700 - japanese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 700;
  src: url('noto-sans-jp-v54-japanese-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* noto-sans-jp-900 - japanese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 900;
  src: url('noto-sans-jp-v54-japanese-900.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ----------------------------------------------------------
 common
---------------------------------------------------------- */

html{ font-size: 62.5%; scroll-behavior: smooth; scroll-padding-top: 100px; }
body {
	color: #333;
	background-color: /* #f4f9f7 */ #fff;
	font-family: 'Noto Sans JP',"Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	font-weight: 400;
	font-style: normal;
	letter-spacing: 1px;
	font-feature-settings: "palt";
	font-size: 16px;
	font-size: 1.6rem;
	margin: 0;
	padding-top: 50px;
}

/*
@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, .h2Wrap{ line-height: 1.7 !important; }

}
*/


.mb0{ margin-bottom: 0 !important; }
.mt40{ margin-top: 40px !important; }

/* a.anker{ display: block; padding-top: 100px; margin-top: -100px; } */

:root{
	--main-color: #bf1920;
	--dark-color: #b51e23;
	--school-color: #32bdeb;
	--pro-color: #e6298a;
	--event-color: #e83d19;
	--movie-color: #1a923b;
}

strong{ font-weight: bold !important; }


/* 非表示用 */
.noneSP		{ display: none !important; }
/* ----------------------------------------------------------
 link
---------------------------------------------------------- */
a:link		{ color: #333; text-decoration: none; }
a:visited	{ color: #333; text-decoration: none; }
a:hover		{ color: var(--main-color); text-decoration: none; }
a:active	{ color: var(--main-color); text-decoration: none; }

a { -ms-filter: "alpha( opacity=60 )"; -webkit-transition: 0.5s ease-in-out; -moz-transition: 0.5s ease-in-out; -o-transition: 0.5s ease-in-out; transition: 0.5s ease-in-out; }

/* ----------------------------------------------------------
 header
---------------------------------------------------------- */
header{ position: fixed; top: 0; width: 100%; height: 50px; z-index: 100; background-color: #f4f9f7; /* box-shadow: 0px 8px 16px -6px rgba(0,0,0,0.1); */ }

.header_wrap{ display: flex; justify-content: space-between; align-items: center; }

.header_logo{ flex-basis: 40%; margin-left: 2%; }
.header_logo img{ width: 100%; height: auto; max-width: 161px; max-height: 29px; }
.header_logo a:hover{ opacity: .6; }

.header_logo_sec{ margin-top: 10px; }
.header_logo_sec a{ display: flex; }
.header_logo_sec a svg{ margin-right: 10px; }




.gnavi{ flex-basis: 43%; margin-left: 15%; }
.gnavi a{ font-size: 1.6rem; text-align: center; letter-spacing: 1px; }
.gnavi a:hover{ background-color: #eee; }


.header_sns{ position: absolute; right: 60px; top: 8px; }
.header_sns_list{ display: flex; align-items: center; }
.header_sns_item{}
.header_sns_item a{ display: block; margin-right: 10px; font-size: 2.5rem; }
.header_sns_item_youtube a{ font-size: 2.8rem; }
.header_sns_item_instagram a{}
.header_sns_item_x a{ font-size: 2rem; }

#menu {}

#menu-btn {
  display: none;
}

#menu-content {
	width: 100%;
  margin: 0;
  list-style-type: none;
	position: relative;
}

#menu-content > li {
float: left;
width: 16%;
  transition: all 0.2s;
}

#menu-content > li > a {
  display: block;
  line-height: 80px;
  font-size: 1.6rem;
  text-decoration: none;
}

#menu-content > li > a > .blogicon-chevron-down {
  margin-right: 5px;
}

#menu-content > li > ul.second-content {
  visibility: hidden;
  opacity: 0;
  position: absolute;
  padding-left: 0;
  list-style-type: none;
	width: 16%;
          box-shadow: 1px 1px 7px #bbb;
}

#menu-content > li:hover > ul.second-content {
  visibility: visible;
  opacity: 1;
  transition: opacity 0.2s, visibility 0.2s;
	background-color: #fff;
}

#menu-content > li > ul.second-content > li {
	border-bottom: 1px solid #ccc;
}

#menu-content > li > ul.second-content > li > a {
	position: relative;
  display: block;
  line-height: 40px;
  font-size: 1.6rem;
  text-decoration: none;
	padding: 10px;
}




#menu-content > li > ul.second-content > li > a:hover {
  background: #eee;
  transition: all 0.2s;
}

#menu-content > li > ul.second-content > li:hover > a,
#menu-content > li > ul.second-content > li > a.current{ background: #eee; }

@media screen and (max-width: 1200px) {
#menu nav {
    position: fixed;
    top: 0;
    left: -1000px;
    bottom: 0;
    width: 80%;
    background: #fff;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    z-index: 3;
    opacity: 0;
  }
 #menu .open nav {
    left: 0;
    opacity: 1;
	 z-index: 99;
  }
 #menu  nav .inner {
    padding: 25px;
  }
#menu nav .inner ul {
    list-style: none;
    margin: 0;
    padding: 0;
	  flex-wrap: wrap;
  }
 #menu nav .inner ul li {
    position: relative;
    margin: 0;
  }
 #menu nav .inner ul li a {
    display: block;
    color: #333;
    font-size: 1.8rem;
	 font-weight: 700;
    text-decoration: none;
    -webkit-transition-duration: 0.2s;
            transition-duration: 0.2s;
	  flex-wrap: wrap;
  }
 #menu nav .inner ul li ul li a {
    display: block;
    color: #333;
    font-size: 1.4rem;
	 font-weight: 700;
    text-decoration: none;
    -webkit-transition-duration: 0.2s;
            transition-duration: 0.2s;
	  flex-wrap: wrap;
	 padding: 10px;
  }
  .toggle_btn {
    display: block;
    position: fixed;
    top: 10px;
    right: 15px;
    width: 30px;
    height: 30px;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    cursor: pointer;
    z-index: 3;
  }
  .toggle_btn span {
    position: absolute;
    left: 0;
    width: 30px;
    height: 1px;
    background-color: #333;
    border-radius: 4px;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .toggle_btn span:nth-child(1) {
    top: 4px;
  }
  .toggle_btn span:nth-child(2) {
    top: 14px;
  }
  .toggle_btn span:nth-child(3) {
    /* bottom: 4px; */ opacity: 0;
  }
  .open .toggle_btn span {
    background-color: #fff;
  }
  .open .toggle_btn span:nth-child(1) {
    -webkit-transform: translateY(10px) rotate(-315deg);
    transform: translateY(10px) rotate(-45deg);
  }
  .open .toggle_btn span:nth-child(2) {
    opacity: 0;
  }
  .open .toggle_btn span:nth-child(3) {
    -webkit-transform: translateY(-10px) rotate(315deg);
    transform: translateY(-10px) rotate(45deg);
	  opacity: 1;
	  bottom: 4px;
  }
	
.toggle_btn p{ position: absolute; bottom: -5px; font-size: 1rem; }
.open .toggle_btn p{ display: none; }

  #mask {
    display: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .open #mask {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0.5;
    z-index: 2;
    cursor: pointer;
  }
  #menu-content > li {
    width: 100%;
    margin-bottom: 15px;
  }
  #menu-content > li:hover {
    background: none;
  }
  #menu-content > li > a {
  /*  height: 100%; */
    padding: 15px 10px;
	  font-weight: 700;
    font-size: 1.6rem;
    border-bottom: 1px solid #999;
	  line-height: normal !important;
	  text-align: left;
  }
  #menu-content > li > ul.second-content {
    visibility: visible;
    opacity: 1;
    width: 100%;
    position: relative;
    box-shadow: none;
	  margin-top: 10px;
	 margin-left: 20px;
  }
  #menu-content > li > ul.second-content > li > ul {
    visibility: visible;
    opacity: 1;
    width: 100%;
    position: relative;
    box-shadow: none;
	 margin-left: 20px;
  }
.open #menu-content > li > ul.second-content{
    position: relative;
	}
  #menu-content > li > ul.second-content > li {
    width: 100%;
    text-align-last: left;
  }
  #menu-content > li > ul.second-content > li > a {
    padding-left: 15px;
	  font-size: 1.4rem;
	  line-height: 1.3;
	  position: relative;
	  text-align: left;
  }
  #menu-content > li > ul.second-content > li > ul > li > a {
    padding-left: 30px;
	  font-size: 1.4rem;
	  line-height: 1.3;
	  position: relative;
	  text-align: left;
  }
  #menu-content > li > ul.second-content > li > a:hover {
    background: none;
  }

	#menu-content > li > ul.second-content > li > a:before{
	  content: '';
	  width: 4px;
	  height: 4px;
	  border-top: solid 1px var(--main-color);
	  border-right: solid 1px var(--main-color);
	  position: absolute;
	  left: 0px;
	  top: 16px;
	transform: rotate(45deg);
	}
	#menu-content > li > ul.second-content > li > ul > li > a:before{
	  content: '';
	  width: 4px;
	  height: 4px;
	  border-top: solid 1px var(--main-color);
	  position: absolute;
	  left: 15px;
	  top: 20px;
	}
	#menu nav .inner .header_sns_item a{ font-size: 2rem; }
  #menu nav .inner ul .header_contact{ margin: 20px 0; align-items: baseline;}
}

#menu nav .header_contact{font-size: 1.8rem; display: flex; flex-direction: column; align-items: end;}
.header_contact_number{display: block; font-size: 2.2rem; font-weight: 600;}
.header_contact i{margin-right: 5px;}
.header_contact_time{display: block; font-size: 1.3rem;}



/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */

.footer_top{
--mask:
radial-gradient(33.6px at 50% 47px, #000 99%, #0000 101%) calc(50% - 40px) 0/80px 51% repeat-x,
radial-gradient(33.6px at 50% -27px, #0000 99%, #000 101%) 50% 20px/80px calc(51% - 20px) repeat-x,
linear-gradient(to bottom, #000 0%, #000 100%) 0 100%/100% 49% no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
	background-color: rgb(244,240,235);
	padding: 60px 0 80px 0;
	margin-top: 60px;
}

.footer_logo{ width: 40%; margin: 0 auto 20px auto; text-align: center; }
.footer_logo img{ max-width: 300px; }
.footer_add{ font-size: 1.3rem; text-align: center; margin-bottom: 10px; }
.footer_tel{font-size: 1.3rem; text-align: center; margin-bottom: 20px;}
.footer_btn{ width: 200px; margin: 0 auto 40px auto; }
.footer_btn a{ display: block; background-color: #fff; color: var(--main-color); font-size: 1.4rem; text-align: center; padding: 5px; border-radius: 40px; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; }
.footer_btn a:hover{ background-color: var(--main-color); color: #fff; }

.footer_works_list{ width: 90%; max-width: 500px; margin: 0 auto 40px auto; display: flex; justify-content: space-between; flex-wrap: wrap; }
.footer_works_item{ flex-basis: 48%; margin-bottom: 10px; }
.footer_works_item a{ display: block; background-color: #fff; padding: 20px 10px; text-align: center; border-radius: 10px; }
.footer_works_item a img{ width: 80%; height: auto; }
.footer_works_item_pro a img{ width: 60%; height: auto; }

.footer_copyright{ text-align: center; font-size: 1.1rem; }

.footer_sitemap{ display: none; }

/* ページ下部 固定メニュー */
.btm_menu{ position: fixed; bottom: -50px; left: 0; width: 100%; border-top: 1px solid #aaa; z-index: 99; }
.btm_menu_list{ width: 100%; display: flex; }
.btm_menu_item{ flex-basis: 50%; width: 50%; }
.btm_menu_item a{ display: block; height: 50px; text-align: center; font-size: 1.6rem; font-weight: 700; padding: 15px 5px 5px; background-color: var(--dark-color); color: #fff; }
.btm_menu_item a i{ font-size: 2rem; margin-right: 10px; }
.btm_menu_item:first-child a { border-right: 1px solid #aaa; }



/* ----------------------------------------------------------
 hx
---------------------------------------------------------- */
.h1_wrap{ padding-bottom: 20px; }
h1{ color: var(--main-color); text-align: center; font-size: 3rem; margin-bottom: 10px; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; }
h2{ color: var(--main-color); font-size: 3rem; text-align: center; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; display: flex; align-items: baseline; justify-content: center; margin-bottom: 10px; }
h2 img{ width: 13%; height: auto; margin-right: 5px; }

h3{ width: 80%; border-top: 2px solid var(--main-color); border-bottom: 2px solid var(--main-color); font-size: 2.3rem; text-align: center; padding: 5px; margin: 0 auto 20px auto; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; }

h3.h3_01{ width: 100%; border-top: 0; border-bottom: 0; background-color: #999; color: #fff; font-size: 2.3rem; text-align: center; padding: 5px; margin: 0 auto 20px auto; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; }
h3.h3_02{ width: 100%; border-top: 0; border-bottom: 0; font-size: 2.3rem; text-align: center; padding: 5px; margin: 0 auto 20px auto; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; }


/* ぱんくず */
 
.breadcrumbs_sec{ letter-spacing: 2px; text-align: center; } 
.breadcrumbs_sec > span{ display: inline-block; position: relative; color: #666; font-size: 1.2rem; }
.breadcrumbs_sec > span span{ margin-left: 15px; }
.breadcrumbs_sec > span a span{ margin-left: 0; }
.breadcrumbs_sec > span:first-child span{ margin-left: 0; }
.breadcrumbs_sec > span br{ display: none; }
.breadcrumbs_sec > span:before{ content: "/"; display: block; position: absolute; top: 0; left: 5px; color: #666; font-size: 12px; }
.breadcrumbs_sec span:first-child:before{ content: ""; margin-left: 0; }
.breadcrumbs_sec > span a{ color: #666; font-size: 1.2rem; margin: 0 0 0 20px; }
.breadcrumbs_sec > span:first-child a{ margin: 0 0 0 0; }
.breadcrumbs_sec span a:hover{ opacity: 0.6; }

/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */
.wrapper{ background-color: #f4f9f7; padding-top: 0px; overflow: hidden; }

.top_img_wrap{ /* margin-top: 50px; */ position: relative; }
.top_img{}
.top_img img{ width: 100%; height: auto; }
.top_catch{ position: relative; z-index: 2; top: -20px; text-align: center; font-size: 2rem; letter-spacing: 2px; font-weight: 700; }
.top_catch_bg01{ position: absolute; z-index: 1; bottom: 60px; left: 0; right: 0; width: 0 auto; }
.top_catch_bg01 img{ width: 100%; }


.top_service{ margin-bottom: 60px; }
.top_h2_bottom_txt01{ font-size: 1.3rem; text-align: center; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; margin-bottom: 20px; }

.top_service_list{}
.top_service_item{}
.top_service_img{}
.top_service_img img{ border-radius: 10px 10px 0 0; width: 100%; height: auto; }
.top_service_txt{ background-color: var(--dark-color); color: #fff; text-align: center; padding: 15px; border-radius: 0 0 10px 10px; }
.top_service_tit01{ font-size: 2rem; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; }
.top_service_txt01{ font-size: 1.3rem; min-height: 50px; }

.top_service_list{ margin-inline: auto; max-width: 1100px; width: 100%; }
.top_service_item{ margin: 0 10px; }


.top_news{}
.top_instagram{ width: 80%; margin: 0 auto; }


.top_bnr{ margin-bottom: 60px; }
.top_bnr_list{ width: 90%; margin: 0 auto; }
.top_bnr_item{ text-align: center; margin-bottom: 10px; }
.top_bnr_item img{ width: 100%; height: auto; }


.main{ width: 100%; margin: 0 auto; }
.main_sec{ width: 90%; margin: 0 auto; }
.main h2{ color: #000; font-size: 2.5rem; background: linear-gradient(transparent 64%, #ff0 0%); margin-bottom: 30px; }
.about_sec_txt h2{ color: #000; font-size: 2.5rem; background: transparent; margin-bottom: 0; }
.main h2.h2_02{ display: block; color: #000; font-size: 2.5rem; background: none; margin-bottom: 30px; }
.main h2.h2_02 span{ display: block; text-align: center; font-size: 1.2rem; }
.seminar h2{ font-size: 2.3rem; }

.main p{ width: 94%; font-size: 1.7rem; letter-spacing: 1px; line-height: 1.8; margin: 0 auto 20px auto; }

.curved {
  position: relative;
  background: #fff;
	width: 100%;
  min-height: 50vh;
  border-top-left-radius: 800px 200px;
  border-top-right-radius: 800px 200px;
	/*
  margin-left: -100px;
  margin-right: -100px;
  padding-left: 100px;
  padding-right: 100px;
  padding-bottom: 200px;
	*/
}

.page_sec{ padding-top: 40px; padding-bottom: 40px; }


.about_sec_txt{ width: 90%; font-size: 1.7rem; letter-spacing: 1px; line-height: 1.8; background: #f9e8e9 url("/info/wp-content/uploads/bg_about01.png") bottom center no-repeat; padding: 20px; border-radius: 10px; margin: 0 auto 60px auto; }
.about_sec_txt p{ margin: 0 auto 20px auto; }

.about_profile_sec{}
.about_profile_sec .wp-block-media-text__media{ text-align: center; margin-bottom: 20px !important; }
.about_profile_sec .wp-block-media-text__media img{ width: 260px; margin: 0 auto; }
.about_profile_sec .wp-block-media-text__content{ padding: 0 !important; }

.about_profile_sec h4{ color: var(--main-color); font-weight: 700; padding-bottom: 5px; border-bottom: 2px solid var(--main-color); margin-bottom: 5px; }
.about_profile_sec p{ width: 100% !important; font-size: 1.8rem !important; line-height: 1.6 !important; }

.wp-block-button__link {
	color: var(--main-color) !important;
	background-color: #eee !important;
	border-radius: 9999px;
	box-shadow: none;
	text-decoration: none;
	padding: 10px 20px !important;
	font-size: 1.6rem !important;
	border: 1px solid var(--main-color);
	font-weight: 700;
}
.wp-block-button__link:hover{ background-color: var(--main-color) !important; color: #fff !important; }

.map_sec{ position: relative; width: 100%; padding-top: 100%; height: 0; }
.map_sec iframe{ position: absolute; top: 0; left: 0; width: 100%; height: 100%; }


.page_top_img{ width: 200px; height: auto; margin: 0px auto 30px auto; }
.page_top_img img{ margin-top: 0px; }

.pro .page_top_img,
.single-talent .page_top_img{ width: 150px; }
.kids .page_top_img{ display: none; } 

.main_nav{ width: 88%; margin: 0 auto 30px auto; }
.main_nav ul{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.nav_item{ flex-basis: 48%; margin-bottom: 10px; }
.nav_item a{ display: block; background-color: #eee; padding: 7px; border-radius: 40px; text-align: center; font-size: 1.3rem; font-weight: 700; letter-spacing: 2px; }
.nav_item a:hover{ background-color: var(--main-color); color: #fff; }


.school_sec_bg01{ position: relative; background: url("/info/wp-content/uploads/bg_school01_sp.png") no-repeat center top; width: auto; min-height: 460px; z-index: 2; }
.school_sec_bg01 > p{ font-size: 2.5rem; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; line-height: 1.3; padding-top: 40px; text-align: center; }

.school_sec_txt01{ margin-top: 390px; font-family: 'Noto Sans JP',"Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif; }

.school_sec_img01{ position: absolute; top: 120px; right: 0; left: 0; margin: 0 auto; width: 350px; z-index: 1; }
.school_sec_img01 img{ width: 100%; height: auto; border-radius: 100% !important; }

.table_price01{ width: 90%; margin: 0 auto 40px auto; }
.table_price01 table{ width: 100%; border-collapse: collapse; border: 1px solid #ccc; }
.table_price01 table th{ padding: 15px 10px; border: 1px solid #ccc; background-color: #4d4d4d; color: #fff; font-size: 1.2rem; vertical-align: middle; }
.table_price01 table th span{ display: block; }
.table_price01 table td{ padding: 10px 5px; border: 1px solid #ccc; font-size: 1.8rem; font-weight: 900; text-align: center; }
.table_price01 table td:nth-child(1){ font-size: 1.6rem; font-weight: normal; }
.table_price01 table td span{ font-size: 1.3rem; font-weight: normal; }

.feature_img01 img{ width: 100%; height: auto; }

.page_sec img{ border-radius: 10px; }

.features_list{ width: 90%; margin: 0 auto 40px auto; }
.features_item{ margin-bottom: 20px; }
.features_num{ color: var(--school-color); margin: 0 auto 10px auto; text-align: center; font-size: 2.8rem; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; }
.features_tit{ font-size: 2rem; text-align: center; margin-bottom: 10px; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal;  }
.features_txt{ font-size: 1.7rem; letter-spacing: 1px; line-height: 1.8; margin-bottom: 10px; }

.features_img_sp{ margin-bottom: 10px; }
.features_img_pc{ display: none; }


.lesson_flow_list{ width: 90%; margin: 0 auto; }
.lesson_flow_item{ background-color: #e0f9ff; padding: 20px; border-radius: 10px; margin-bottom: 20px; }
.lesson_flow_tit{ display: flex; justify-content: center; margin-bottom: 10px; }
.lesson_flow_tit01_num01{ width: 30px; height: 30px; line-height: 30px; border-radius: 100%; background-color: #fff;  text-align: center; color: #0081a1; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; margin-right: 10px; }
.lesson_flow_tit01_tit01{ font-size: 2.2rem; color: #0081a1; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal;  }
.lesson_flow_txt{ font-size: 1.4rem; line-height: 1.4; margin-bottom: 10px; }
.lesson_flow_img{}
.lesson_flow_img img{ border-radius: 10px; }


.instructor_sec{ width: 90%; margin: 0 auto 40px auto; }
.instructor_list{ }
.instructor_item{ position: relative; background-color: #ccf5ff; padding: 80px 20px 20px 20px; border-radius: 10px; margin-top: 130px; }
.instructor_img{ position: absolute; left: 0; right: 0; top: -100px; margin: 0 auto; text-align: center; z-index: 1; }
.instructor_img img{ width: 150px; height: auto; }
.instructor_sec01{ position: relative; background-color: #fff; padding: 20px; border-radius: 10px; z-index: 3; }
.instructor_name{ text-align: center; margin-bottom: 10px; }
.instructor_name01{ font-size: 2.2rem; font-weight: 700;  }
.instructor_name02{ font-size: 1rem; color: #999; }
.instructor_katagaki{ font-size: 1.8rem; text-align: center; font-weight: 700; margin-bottom: 10px; }
.instructor_txt{ font-size: 1.6rem; line-height: 1.5; letter-spacing: 1px; }

.column_works01{  }

.works_name01{ font-size: 2rem !important; font-weight: 700; width: auto !important; margin: 0 !important; padding-top: 40px; }
.works_name02{ font-size: 1rem !important; font-weight: 700; color: #999; width: auto !important; margin: 0 !important; }
.works_tit01{ width: auto !important; display: inline-block; background-color: #5f9aa8; color: #fff; padding: 3px 15px 5px 15px; border-radius: 40px; margin-bottom: 10px !important; line-height: 1 !important; }
.works_list01{ margin-left: 30px; margin-bottom: 20px; }
.works_list01 > li{ list-style-type: disc; }


.voice_list{ width: 90%; margin: 0 auto 40px auto; }
.voice_item{ position: relative; margin-top: 50px; }
.voice_tit{ position: absolute; top: -20px; left: 10px; display: flex; background-color: #6a9acc; color: #fff; font-size: 1.8rem; border-radius: 40px; padding: 4px 15px; }
.voice_ico01{ margin-right: 5px; }
.voice_name01{ margin-right: 5px; }
.voice_info01{ font-size: 1.7rem; }
.voice_sec01{ background-color: #f5f5f5; padding: 30px 20px 20px 20px; }
.voice_tit01{ font-size: 1.8rem; font-weight: 700; margin-bottom: 10px; }
.voice_txt01{ font-size: 1.5rem; line-height: 1.7; }


.faq_sec{ width: 90%; margin: 0 auto; }
.faq_list{}
.faq_item{ margin-bottom: 10px; }
.faq_Sec01{}
.faq_sec01_q01{}
.faq_sec01_a01{}
.faq_sec01_a01 .faq_btn{ width: 300px; margin-top: 10px; }
.faq_sec01_a01 .faq_btn a{ display: block; color: #fff; background-color: var(--school-color); border: 2px solid var(--school-color); text-align: center; padding: 10px; border-radius: 40px; }
.faq_sec01_a01 .faq_btn a:hover{ background-color: #fff; color: var(--school-color); }
.faq_txt{}


/* 開閉 */

/*アコーディオン全体*/
.accordion-area{
    list-style: none;
    width: 100%;
    max-width: 960px;
    margin:0 auto;
}
.accordion-area_support{ margin-bottom: 60px; }

.accordion-area li{
    margin: 10px 0;
}

.accordion-area section {
	padding: 0;
}


.accordion-content .faq_txt{ background: #f5f5f5; margin-bottom: 0; }
.accordion-content .faq_txt p{ font-size: 1.6rem; }



.accordion-title{
cursor: pointer;
padding: 15px 40px 15px 15px;
transition: all .5s ease;
background-color: #eee;
font-size: 1.6rem;
font-weight: 700;
}

.faq .accordion-title{
cursor: pointer;
padding: 0;
transition: all .5s ease;
background-color: #eee;
color: var(--faq-color);
font-size: 2rem;
font-weight: 700;
}

.accordion-title:hover,
.accordion-title.open{ background-color: #ddd; }

.faq .accordion-title:hover,
.faq .accordion-title.open{ background-color: #eee; }


.accordion-content{ display: none;/*はじめは非表示*/ background: #f5f5f5; padding: 20px; }
.accordion-content p {
  font-size: 13px;
  line-height: 1.5;
}

/*アイコンの＋と×*/

.accordion-title{ position: relative; }

.accordion-title::before,
.accordion-title::after{
    position: absolute;
    content:'';
    width: 15px;
    height: 2px;
    background-color: var(--school-color);
    
}
.accordion-title::before{ top:48%; right: 10px; transform: rotate(0deg); }
.accordion-title::after{ top:48%; right: 10px; transform: rotate(90deg); }
/*　closeというクラスがついたら形状変化　*/
.accordion-title.open::before{ transform: rotate(45deg); }
.accordion-title.open::after{ transform: rotate(-45deg); }


.contact_att01{ font-size: 2.2rem !important; text-align: center; color: #bf1920; font-weight: 700;  }
.contact_att02{ font-size: 1.8rem !important; text-align: center; color: #bf1920; font-weight: 700;  }


/* フォーム */
.contact_sec{ width: 90%; margin: 0 auto; }
.contact_item{ display: flex; flex-wrap: wrap; width: 100%; padding: 20px 0; border-bottom: 1px solid #ccc; max-width: 1100px; margin: 0 auto;}
.contact_tit{ flex-basis: 100%; font-weight: 700!important; position: relative; padding-left: 60px; text-align: left!important; margin-bottom: 5px; }

.contact_tit span{ position: absolute;  background-color: #ffe7e7; color: var(--main-color); margin-right: 15px; border: 1px solid var(--main-color); padding: 2px 8px; left: 0; top: 3px; border-radius: 30px; font-size: 1.3rem; line-height: 1.2; }
.contact_tit .optional{background-color: #999; border: 1px solid #999;}
.contact_txt,
.contact_adress,
.contact_txtarea{ flex-basis: 100%; }
.contact_txt input{ font-size: 2rem; background: #fff; height: 35px; padding: 8px; border: 1px solid #ccc; width: 100%; }
.contact_txtarea textarea{font-size: 2rem; padding: 8px; background: #fff; border: 1px solid #ccc; width: 100%; }
.contact_txt select{font-size: 1.8rem; background: #fff; padding: 8px; border: 1px solid #ccc; width: 100%;}
.contact_adress_sub p{padding: 15px 0;}
.contact_adress input{background: #fff; border: 1px solid #ccc; height: 35px; margin-left: 15px; font-size: 2rem; padding: 8px; }
.contact_submit{border-bottom: none;}
.contact_submit_btn{ text-align: center; margin-top: 30px; }
.contact_submit_btn input{ background-color: var(--main-color); color: #fff; font-size: 1.6rem; font-weight: 700; font-family: 'Noto Sans JP',"Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif; letter-spacing: 1px; padding: 10px 30px; cursor: pointer; -webkit-appearance: none; border-radius: 0; border: none; transition: .5s all; border-radius: 10px; }

.contact_tit p,
.contact_txt p,
.contact_txtarea p{ width: auto !important; margin: 0 !important; }

.contact_submit_btn input:hover{opacity: 0.7;}

.contact_txt input[type="checkbox"]{ width: 20px; margin-right: 5px; }
.contact_check{display: flex;}
.contact_submit .contact_tit{width: 30%;}
.wpcf7-spinner{display: block;}

.contact_adress_sub p span{margin-left: 10px;}

::placeholder{ color: #999; }
.wpcf7-spinner {
	display: block !important;
	margin: 0 auto !important;
}



.kids_sec_bg01{ 
background-image:
	url("/info/wp-content/uploads/bg_left_kids01.png"),
	url("/info/wp-content/uploads/bg_right_kids01.png");
background-repeat: no-repeat, no-repeat;
background-position: left top, right top;
background-size: auto, auto;
	padding: 0 77px;
}
.kids_sec_bg01 p{ font-size: 1.4rem; font-weight: 700; }


.taiken_ol{ width: 90%; margin: 0 auto 30px auto; }
.taiken_ol ol{ counter-reset: number; }
.taiken_ol ol li{ position: relative; margin-bottom: 10px; font-size: 1.8rem; padding: 0 0 0 1.8em; }
.taiken_ol ol li:before{ counter-increment: number;
content: counter(number);
position: absolute;
top: 3px;
left: 0;
width: 25px;
height: 25px;
background-color: var(--school-color);
color: #fff;
border-radius: 50%;
font-size: 18px;
font-weight: 700;
text-align: center;
line-height: 1.2;
}

.taiken_img{ width: 90%; margin: 0 auto 30px auto; }
.taiken_message{ max-width: 1200px; margin: 0 auto 30px;}

.pro_sec_bg01{ width: 310px; height: 390px; margin: 0 auto 40px auto; background: url("/info/wp-content/uploads/bg_pro01_sp.png") no-repeat center top; background-size: contain; }
.pro_sec_bg01 p{ width: 100% !important; margin: 0 auto; font-size: 1.4rem !important; line-height: 2 !important; text-align: center; padding-top: 20px; }
.kids_sec_img01{}
.kids_sec_img02{ display: none; }

.talentlist01_sec{ width: 90%; margin: 0 auto; padding-bottom: 40px; }
.talentlist_list{ display: flex; justify-content: flex-start; flex-wrap: wrap; }
.talentlist_item{ flex-basis: 43%; text-align: center; margin: 0 3% 30px 3%; }
.talentlist_img01{ margin-bottom: 10px; }
.talentlist_img01 img{ width: 140px; height: 140px; border-radius: 100%; object-fit: cover; object-position: top; }
.talentlist_name01{ font-size: 1.6rem; font-weight: 700; margin-bottom: 10px; }
.talentlist_works01{ background-color: #eee; border-radius: 10px; padding: 10px; font-size: 1.2rem; font-weight: 700; line-height: 1.2; min-height: 50px; display: flex; align-items: center; align-content: center; justify-content: center; }


.talent_img_list{ width: 65%; margin: 30px auto 40px auto; }
.talent_img_item{ margin: 0 auto; }
.talent_img_item img{ width: 100%; height: auto; }

.talentimg_sec{}

.talent_name_list{}
.talent_name_item{}
.talent_name01{ font-size: 2.4rem; text-align: center; font-weight: 700; margin-bottom: 10px; }
.talent_name02{ font-size: 1.6rem; color: #aaa; text-align: center; font-weight: 700; }

.voicesample_sec{ width: 90%; margin: 0 auto; }


.event_fukidashi{}
.event_fukidashi .vk_balloon_content p{ font-size: 1.4rem !important; }
.event_fukidashi .vk_balloon_icon img{ width: 100%; height: auto; }

.event_sec_bg01{ width: 90%; margin: 0 auto; background: url("/info/wp-content/uploads/bg_event01.png") center center no-repeat; }

.movie_sec_bg01{ width: 90%; margin: 0 auto; background: url("/info/wp-content/uploads/bg_movie01.png") center center no-repeat; font-weight: 700; }
.movie_sec_bg01 p{ text-align: center; }



.sitemap_sec{ width: 90%; margin: 0 auto 60px auto; }
.sitemap_sec ul{  }
.sitemap_sec ul li{ margin-bottom: 10px; }
.sitemap_sec > ul > li{  }
.sitemap_sec ul li a{ font-size: 2rem; font-weight: 700; }
.sitemap_sec ul li ul{ margin-left: 30px; margin-top: 10px; }
.sitemap_sec > ul > li > ul > li{ position: relative; padding-left: 30px; }
.sitemap_sec > ul > li > ul > li:before{
content: "";
position: absolute;
top: 15px;
left: 0;
transform: translateY(-50%);
border: 5px solid transparent;
border-left: 8px solid var(--main-color);
}
.sitemap_sec ul li ul li a{ font-size: 2rem; font-weight: normal; }
.sitemap_sec ul li ul li ul{ margin-left: 60px; margin-top: 10px; }
.sitemap_sec ul li ul li ul li{ list-style-type: circle; }
.sitemap_sec ul li ul li ul li a{ font-size: 2rem;  font-weight: normal; }

.sitemap_talent_list{ padding-left: 120px;  }
.sitemap_talent_item{ list-style-type: circle; padding-left: 0 !important; }
.sitemap_talent_item:before{ display: none; }
.sitemap_talent_item a{ font-size: 2rem; font-weight: normal !important; }




.acd-check{	display: none; }
.acd-label{ position: relative;	background: var(--main-color); color: #fff; display: block; margin-bottom: 1px; padding: 10px; font-size: 1.5rem; }
.acd-label::before{
position: absolute;
top:calc( 50% - 3px );
right: 20px;
content:"";
width: 6px;
height: 6px;
border-top: 2px solid #fff;
border-right: 2px solid #fff;
-webkit-transform: rotate(45deg);
transform: rotate(135deg);
}
.acd-content{ border: 1px solid var(--main-color); height: 0; opacity: 0; padding: 0 10px; transition: .5s; visibility: hidden; display: none; }
.acd-check:checked + .acd-label + .acd-content{ min-height: 40px; height: auto; opacity: 1; padding: 10px 20px; visibility: visible; display: block; }
.acd-check:checked + .acd-label::before{ transform: rotate(-45deg) !important; }

.acd-content p{ margin: 0 auto 10px auto !important; }

.acd-content ul{ margin-bottom: 20px; }
.acd-content ul li{ position: relative; padding-left: 15px; font-size: 1.8rem; line-height: 1.8; }
.acd-content ul li:before{ position: absolute; display: block; content: ""; left: 0; top: 14px; width: 6px; height: 6px; border-radius: 100%; background-color: var(--main-color); }

/* セミナー講師 */
.seminar_course_btn a{background-color: var(--main-color)!important; min-width: 270px;}
.seminar_course_time .js-scrollable{overflow: initial!important;}
.seminar_course_time table{width: 100%;}
.seminar_course_time td{border: 1px solid #222; padding: 10px 0; width: 25%; font-size: 1.8rem; font-weight: 700;}
.seminar_course_flex{gap: 20px;}

.seminar_course_contents{text-align: center;}
.seminar_course_list{display: inline-block; text-align: left; list-style: disc;}
.seminar_achievements{background-color: #006837; color: #fff; position: relative; padding: 20px; border: 8px solid #C59C6C; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; border-radius: 8px;}
.seminar_achievements p{width: 100%; margin-bottom: 15px;}
.seminar_achievements ul{list-style: disc; padding-left: 20px;}
.seminar_achievements_fish{position: absolute; width: 30%; right: 0; bottom: -30px;}


.seminar_tit01{ font-size: 2rem !important; color: var(--main-color); font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; line-height: 1.2 !important; }
.seminar_tit01 span{ display: block; font-size: 1.4rem !important; }

.seminar_list01{ width: 80%; margin: 0 auto; display: flex; justify-content: space-between; flex-wrap: wrap; }
.seminar_list01 li{ flex-basis: 48%; color: #fff; font-size: 2rem; background-color: #f2666b; border-radius: 40px; padding: 5px; text-align: center; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; margin-bottom: 10px; }

.seminar h4{ width: 90%; margin: 0 auto 20px auto; background-color: #999; font-size: 1.6rem; color: #fff; padding: 10px; border-radius: 10px; text-align: center; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; }

.seminar_curriculum_list{ width: 90%; margin: 0 auto; display: flex; justify-content: space-between; flex-wrap: wrap; }
.seminar_curriculum_item{ flex-basis: 47%; margin-bottom: 40px; }
.seminar_curriculum_tit01{ font-size: 1.6rem; text-align: center; margin-bottom: 5px; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal;  }
.seminar_curriculum_img01{ margin-bottom: 10px; }
.seminar_curriculum_img01 img{ width: 100%; height: auto; border-radius: 10px; }
.seminar_curriculum_cat_list{ display: flex; justify-content: space-between; margin-bottom: 10px; }
.seminar_curriculum_cat_item{ flex-basis: 49%; color: #fff; font-size: 1.3rem; padding: 5px; text-align: center; background-color: #17ae5b; border-radius: 10px; }
.seminar_curriculum_cat_item_off{ opacity: .5; }
.seminar_curriculum_txt01{ font-size: 1.5rem; }

.seminar_works{ width: 90%; margin: 0 auto 80px auto; }

.seminar_works_list{}
.seminar_works_item{ margin-bottom: 20px; }

.seminar_works h3{ width: 100%; position: relative; font-size: 1.8rem; background-color: #eee; padding: 10px 10px 10px 40px;; border-radius: 10px; margin-bottom: 10px; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; border-top: 0; border-bottom: 0; text-align: left; }
.seminar_works h3:before{ display: block; content: ""; position: absolute; left: 15px; top: 19px; width: 10px; height: 10px; border-radius: 100%; background-color: var(--main-color); }

.seminar_works_tit01{ display: flex; align-items: center; font-size: 1.5rem; font-weight: 700; margin-bottom: 10px; }
.seminar_works_tit01 span{ background-color: var(--main-color); font-size: 1.3rem; color: #fff; padding: 3px 10px; border-radius: 5px; margin-right: 10px; }





/* ----------------------------------------------------------
 TAB CSS
---------------------------------------------------------- */
@media screen and (min-width: 521px){
/* 521px以上に適用されるTAB用 */
img,video {
  max-width: 100%;
  height: auto;
}

/* フォントサイズ10px=62.5% */
html{ font-size: 50%; }

/* 基本のフォントサイズ */
body{ font-size: 1.8rem; padding-top: 0; }

/* 非表示用 */
.noneTAB		{ display: none !important; }

/* ----------------------------------------------------------
 header
---------------------------------------------------------- */
.wrapper{ margin-top: 50px; }



/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */
/* ページ下部 固定メニュー */
.btm_menu{ display: none; }

.footer_top{
	padding: 60px 0 20px 0;
	margin-top: 60px;
}
	
/* ----------------------------------------------------------
 hx
---------------------------------------------------------- */



/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */

.top_catch{ top: -70px; }


.school_sec_txt01{ margin-top: 420px; }

.lesson_flow_txt{ font-size: 1.4rem; line-height: 1.4; margin-bottom: 10px; text-align: center; }
.lesson_flow_img{ text-align: center; margin: 0 auto; }


.pro_sec_bg01{ padding-top: 30px; padding-left: 0px; text-align: center; }
.pro_sec_bg01 p{ width: 100% !important; margin: 0 auto; font-size: 1.6rem !important; line-height: 2 !important; }


.event_sec_bg01{ padding-top: 40px; min-height: 250px; }
.event_sec_bg01 p{ width: 80%; margin: 0 auto; font-size: 2rem; line-height: 2; }
.event_sec_bg01 p br{ display: none; }


.movie_sec_bg01{ min-height: 330px; }
.movie_sec_bg01 p{ width: 55% !important; margin: 0 auto 40px auto !important; padding: 40px 0 0 10px; text-align: center; }


}
/* ----------------------------------------------------------
TAB CSS END
---------------------------------------------------------- */

/* ----------------------------------------------------------
 PC WIDE CSS
---------------------------------------------------------- */
@media screen and (min-width: 1200px){
/* 1600px以上に適用されるPCWIDE用 */
/* フォントサイズ10px */
html{ font-size: 62.5%; height: 100%; }

/* 基本のフォントサイズ */
body{ font-size: 16px; font-size: 1.8rem; height: 100%; }

/* 非表示用 */
.nonePCWIDE		{ display: none !important; }

/* ----------------------------------------------------------
 header
---------------------------------------------------------- */
header{ position: fixed; top: 0; width: 100%; height: 100px; z-index: 100; background-color: #f4f9f7; /* box-shadow: 0px 8px 16px -6px rgba(0,0,0,0.1); */ }

.header_wrap{ display: flex; justify-content: space-between; align-items: center; height: 100px; }

.header_logo{ flex-basis: 20%; margin-left: 2%; }
.header_logo img{ width: 100%; height: auto; max-width: 300px; max-height: 54px; }
.header_logo a:hover{ opacity: .6; }

.header_logo_sec{ margin-top: 0px; }
.header_logo_sec a{ display: flex; }
.header_logo_sec a svg{ margin-right: 10px; }




.gnavi{ flex-basis: 60%; margin-left: 0; margin-right: 15%; }
.gnavi a{ font-size: 1.6rem; text-align: center; letter-spacing: 1px; }
.gnavi a:hover{ background-color: #eee; }


.header_sns{ position: absolute; right: 20px; top: 30px; }
.header_sns_list{ display: flex; align-items: center; }
.header_sns_item{}
.header_sns_item a{ display: block; margin-right: 20px; font-size: 2.5rem; line-height: 1; }
.header_sns_item_youtube a{ font-size: 3.8rem; }
.header_sns_item_instagram a{}
.header_sns_item_x a{ font-size: 2.8rem; }

#menu {}

#menu-btn {
  display: none;
}

#menu-content {
	width: 100%;
  margin: 0;
  list-style-type: none;
	position: relative;
}

#menu-content > li {
float: left;
width: 16%;
  transition: all 0.2s;
}

#menu-content > li > a {
  display: block;
  line-height: 80px;
  font-size: 1.6rem;
  text-decoration: none;
}

#menu-content > li > a > .blogicon-chevron-down {
  margin-right: 5px;
}

#menu-content > li > ul.second-content {
  visibility: hidden;
  opacity: 0;
  position: absolute;
  padding-left: 0;
  list-style-type: none;
	width: 16%;
          box-shadow: 1px 1px 7px #bbb;
}

#menu-content > li:hover > ul.second-content {
  visibility: visible;
  opacity: 1;
  transition: opacity 0.2s, visibility 0.2s;
	background-color: #fff;
}

#menu-content > li > ul.second-content > li {
	border-bottom: 1px solid #ccc;
}

#menu-content > li > ul.second-content > li > a {
	position: relative;
  display: block;
  line-height: 40px;
  font-size: 1.6rem;
  text-decoration: none;
	padding: 10px;
}




#menu-content > li > ul.second-content > li > a:hover {
  background: #eee;
  transition: all 0.2s;
}

#menu-content > li > ul.second-content > li:hover > a,
#menu-content > li > ul.second-content > li > a.current{ background: #eee; }

/*
@media screen and (max-width: 1150px) {
*/
#menu nav {
    position: relative;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    background: transparent;
    overflow-x: visible;
    overflow-y: visible;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    z-index: 3;
    opacity: 100;
  }
 #menu .open nav {
    left: 0;
    opacity: 1;
	 z-index: 99;
  }
 #menu  nav .inner {
    padding: 0;
  }
#menu nav .inner ul {
    list-style: none;
    margin: 0;
    padding: 0;
	  flex-wrap: wrap;
	display: flex;
  }
 #menu nav .inner ul li {
    position: relative;
    margin: 0;
  }
 #menu nav .inner ul li a {
    display: block;
    color: #333;
    font-size: 1.8rem;
	 font-weight: 700;
    text-decoration: none;
    -webkit-transition-duration: 0.2s;
            transition-duration: 0.2s;
	  flex-wrap: wrap;
	 text-align: center;
  }
 #menu nav .inner ul li ul li a {
    display: block;
    color: #333;
    font-size: 1.6rem;
	 font-weight: 700;
    text-decoration: none;
    -webkit-transition-duration: 0.2s;
            transition-duration: 0.2s;
	  flex-wrap: wrap;
	 padding: 10px;
	 text-align: center;
	 display: flex;
  }
  .toggle_btn {
    display: none;
  }


  #mask {
    display: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .open #mask {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0.5;
    z-index: 2;
    cursor: pointer;
  }
  #menu-content > li {
    width: auto;
    margin-bottom: 0;
	  flex: 1 0 auto;
  }
  #menu-content > li:hover {
    background: none;
  }
  #menu-content > li > a {
  /*  height: 100%; */
    padding: 15px 10px;
	  font-weight: 700;
    font-size: 1.6rem;
    border-bottom: 0px solid #999;
	  line-height: normal !important;
	  text-align: left;
  }
  #menu-content > li > ul.second-content {
    visibility: hidden;
    opacity: 1;
   width: 100%;
    /* position: relative; */
    box-shadow: none;
	/*  margin-top: 10px;
	 margin-left: 20px; */
  }
  #menu-content > li > ul.second-content > li > ul {
    visibility: hidden;
	display: none;
  }
.open #menu-content > li > ul.second-content{
    position: relative;
	}
  #menu-content > li > ul.second-content > li {
    width: 100%;
    text-align-last: left;
  }
  #menu-content > li > ul.second-content > li > a {
    padding-left: 15px;
	  font-size: 1.4rem;
	  line-height: 1.3;
	  position: relative;
	  text-align: left;
  }
  #menu-content > li > ul.second-content > li > ul > li > a {
    padding-left: 30px;
	  font-size: 1.4rem;
	  line-height: 1.3;
	  position: relative;
	  text-align: left;
  }
  #menu-content > li > ul.second-content > li > a:hover {
    background: none;
  }

	#menu-content > li > ul.second-content > li > a:before{
		display: none;
		/*
	  content: '';
	  width: 4px;
	  height: 4px;
	  border-top: solid 0px var(--main-color);
	  border-right: solid 0px var(--main-color);
	  position: absolute;
	  left: 0px;
	  top: 16px;
	transform: rotate(45deg);
		*/
	}
	#menu-content > li > ul.second-content > li > ul > li > a:before{
	  content: '';
	  width: 4px;
	  height: 4px;
	  border-top: solid 1px var(--main-color);
	  position: absolute;
	  left: 15px;
	  top: 20px;
	}
.link .drop_down{
	display: none;
	transition: .3s all;
}
.link:hover .drop_down,
.link:focus-within .drop_down {
	display: block;
	visibility: visible;
}
.drop_down{
position: absolute;
bottom: 0;
display: none;
padding: 10px;
background-color: transparent;
box-shadow: 0px 3px 8px -2px #777;
color: initial;
transform: translate(0, 100%);
}
.drop_down_item{}
.drop_down_item a{ text-align: center !important; margin: 0 auto; justify-content: center; align-items: center; }
.drop_down_item a:hover{ background-color: var(--main-color) !important; color: #fff !important; }
/*
}
*/

#menu nav .header_contact{margin: 0;}

	
/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */


.footer_top{
--mask:
radial-gradient(33.6px at 50% 47px, #000 99%, #0000 101%) calc(50% - 40px) 0/80px 51% repeat-x,
radial-gradient(33.6px at 50% -27px, #0000 99%, #000 101%) 50% 20px/80px calc(51% - 20px) repeat-x,
linear-gradient(to bottom, #000 0%, #000 100%) 0 100%/100% 49% no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
	background-color: rgb(244,240,235);
	padding: 60px 0 40px 0;
	margin-top: 60px;
}

.footer_sec{ width: 100%; display: flex; flex-wrap: wrap; justify-content: center; }
.footer_sec01{ margin-right: 40px; }

.footer_logo{ width: 200px; margin: 0 auto 20px auto; }
.footer_add{ font-size: 1.6rem; text-align: center; margin-bottom: 10px; }
.footer_tel{font-size: 1.6rem; text-align: center; margin-bottom: 20px;}
.footer_btn{ width: 200px; margin: 0 auto 40px auto; }
.footer_btn a{ display: block; background-color: #fff; color: var(--main-color); font-size: 1.6rem; text-align: center; padding: 5px; border-radius: 40px; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; }
.footer_btn a:hover{ background-color: var(--main-color); color: #fff; }


.footer_works_list_wrap{ flex-basis: 100%; }
.footer_works_list{ max-width: 60%; margin: 0 auto 40px auto; display: flex; justify-content: space-between; flex-wrap: wrap; }
.footer_works_item{ flex-basis: 23%; margin-bottom: 10px; }
.footer_works_item a{ display: block; background-color: #fff; padding: 20px 10px; text-align: center; border-radius: 10px; }
.footer_works_item a:hover{ background-color: #f4f0eb; }
.footer_works_item a img{ width: 80%; height: auto; }
.footer_works_item_pro a img{ width: 60%; height: auto; }

.footer_copyright{ flex-basis: 100%; text-align: center; font-size: 1.1rem; }

.footer_sitemap{ display: flex; justify-content: space-between; flex-wrap: wrap; margin-bottom: 40px; }
.footer_sitemap_list{  }
.footer_sitemap_list li{ margin-right: 20px; }
.footer_sitemap_list li a{ display: block; font-size: 1.8rem; padding: 10px; font-weight: 700; }
.footer_sitemap_list li ul{ margin-left: 10px; }
.footer_sitemap_list li ul li{ position: relative; padding-left: 10px; }
.footer_sitemap_list > li ul li:before{ content: ""; display: block; position: absolute; top: 15px; left: 0; width: 5px; height: 5px; background-color: var(--main-color); border-radius: 100%; }
.footer_sitemap_list li ul li a{ padding: 5px; font-size: 1.6rem; font-weight: 400; }
.footer_sitemap_list li ul li a i{ margin-right: 10px; }
.footer_sitemap_list li ul li ul li{ position: relative; padding-left: 10px; }
.footer_sitemap_list li ul li ul li a{  font-size: 1.4rem; font-weight: 400; }
.footer_sitemap_list > li ul li ul li:before{ content: ""; display: block; position: absolute; top: 17px; left: 0; width: 6px; height: 1px; background-color: var(--main-color); border-radius: 100%; }
.footer_sns_list li{ padding-left: 0 !important; }
.footer_sns_list li:before{ display: none !important; }
	
.footer_sns_list{ margin-left: 0 !important; }
.footer_sns_item{}
.footer_sns_item a{ font-weight: 700 !important; font-size: 1.8rem !important; }
.footer_sns_item_youtube{}
.footer_sns_item_instagram{}
.footer_sns_item_x{}

/* ページ下部 固定メニュー */
.btm_menu{ display: none; }



/* ----------------------------------------------------------
 hx
---------------------------------------------------------- */
.h1_wrap{ padding-bottom: 20px; }
h1{ color: var(--main-color); text-align: center; font-size: 5rem; margin-bottom: 10px; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; }
h2{ color: var(--main-color); font-size: 5rem; text-align: center; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; display: flex; align-items: baseline; justify-content: center; margin-bottom: 10px; }
h2 img{ width: 13%; max-width: 100px; height: auto; margin-right: 20px; }

h3{ width: 80%; border-top: 2px solid var(--main-color); border-bottom: 2px solid var(--main-color); font-size: 3.5rem; text-align: center; padding: 5px; margin: 0 auto 20px auto; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; }

h3.h3_01{ width: 100%; border-top: 0; border-bottom: 0; background-color: #999; color: #fff; font-size: 3.2rem; text-align: center; padding: 5px; margin: 0 auto 20px auto; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; }
h3.h3_02{ width: 100%; border-top: 0; border-bottom: 0; font-size: 3.5rem; text-align: center; padding: 5px; margin: 0 auto 20px auto; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; }


/* ぱんくず */
 
.breadcrumbs_sec{ letter-spacing: 2px; text-align: center; } 
.breadcrumbs_sec > span{ display: inline-block; position: relative; color: #666; font-size: 1.2rem; }
.breadcrumbs_sec > span span{ margin-left: 15px; }
.breadcrumbs_sec > span a span{ margin-left: 0; }
.breadcrumbs_sec > span:first-child span{ margin-left: 0; }
.breadcrumbs_sec > span br{ display: none; }
.breadcrumbs_sec > span:before{ content: "/"; display: block; position: absolute; top: 0; left: 5px; color: #666; font-size: 12px; }
.breadcrumbs_sec span:first-child:before{ content: ""; margin-left: 0; }
.breadcrumbs_sec > span a{ color: #666; font-size: 1.2rem; margin: 0 0 0 20px; }
.breadcrumbs_sec > span:first-child a{ margin: 0 0 0 0; }
.breadcrumbs_sec span a:hover{ opacity: 0.6; }


/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */
.wrapper{ background-color: #f4f9f7; padding-top: 100px; overflow: hidden; }
.page_sec{ padding-bottom: 60px; }

.top_img_wrap{ /* margin-top: 50px; */ position: relative; margin-bottom: 60px; }
.top_img img{ width: 100%; height: auto;
--mask:
radial-gradient(33.6px at 50% 47px, #000 99%, #0000 101%) calc(50% - 40px) 0/80px 51% repeat-x,
radial-gradient(33.6px at 50% -27px, #0000 99%, #000 101%) 50% 20px/80px calc(51% - 20px) repeat-x,
radial-gradient(33.6px at 50% calc(100% - 47px), #000 99%, #0000 101%) calc(50% - 40px) 100%/80px 51% repeat-x,
radial-gradient(33.6px at 50% calc(100% + 27px), #0000 99%, #000 101%) 50% calc(100% - 20px)/80px calc(51% - 20px) repeat-x;
-webkit-mask: var(--mask);
mask: var(--mask);
}
.top_catch{ position: absolute; right: 80px; bottom: 80px; background: url("/info/wp-content/uploads/bg_top01.png") no-repeat; width: 354px; height: 359px; z-index: 2; top: auto; text-align: center; font-size: 2.5rem; letter-spacing: 2px; font-weight: 700; display: flex; justify-content: center; align-items: center; align-content: center; }
.top_catch_bg01{ display: none; position: absolute; z-index: 1; bottom: 60px; }
.top_catch_bg01 img{ width: 100%; }


.top_service{ margin-bottom: 60px; }
.top_h2_bottom_txt01{ font-size: 2.2rem; text-align: center; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; margin-bottom: 20px; }

.top_service_list{}
.top_service_item{}
.top_service_img{}
.top_service_img img{ border-radius: 10px 10px 0 0; width: 100%; height: auto; }
.top_service_txt{ background-color: var(--dark-color); color: #fff; text-align: center; padding: 15px; border-radius: 0 0 10px 10px; }
.top_service_tit01{ font-size: 2.6rem; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; }
.top_service_txt01{ font-size: 1.8rem; }

.top_service_list{ margin-inline: auto; max-width: 100vw; width: 100%; }
.top_service_item{ margin: 0 10px; }
.top_service_item a:hover{ opacity: .6; }

.top_news{ padding-bottom: 60px; background: linear-gradient(180deg,rgba(244, 249, 247, 1) 0%, rgba(255, 255, 255, 1) 90%); }
.top_instagram{ width: 60%; margin: 0 auto; }

.top_bnr{ margin-top: 60px; margin-bottom: 60px; }
.top_bnr_list{ width: 50%; margin: 0 auto; display: flex; justify-content: space-between; }
.top_bnr_item{ flex-basis: 48%; text-align: center; margin-bottom: 10px; }
.top_bnr_item img{ width: 100%; height: auto; }
.top_bnr_item a:hover{ opacity: .6; }


.main{ width: 100%; margin: 0 auto; }
.main_sec{ width: 90%; margin: 0 auto; }
.main h2{ color: #000; font-size: 4rem; background: linear-gradient(transparent 64%, #ff0 0%); margin-bottom: 50px; }
.about_sec_txt h2{ color: #000; font-size: 4rem; background: transparent; margin-bottom: 0; }
.main h2.h2_02{ display: block; color: #000; font-size: 4rem; background: none; margin-bottom: 30px; }
.main h2.h2_02 span{ display: block; text-align: center; font-size: 1.8rem; }

.main p{ width: 90%; font-size: 2rem; letter-spacing: 1px; line-height: 2; margin: 0 auto 40px auto; }

.curved {
  position: relative;
  background: #fff;
	width: 100%;
  min-height: 50vh;
  border-top-left-radius: 0 0;
  border-top-right-radius: 0 0;
	/*
  margin-left: -100px;
  margin-right: -100px;
  padding-left: 100px;
  padding-right: 100px;
  padding-bottom: 200px;
	*/
}




.about_sec_txt{ width: 900px; font-size: 1.7rem; letter-spacing: 1px; line-height: 1.8; background: #f9e8e9 url("/info/wp-content/uploads/bg_about01.png") bottom right no-repeat; padding: 20px; border-radius: 10px; margin: 0 auto 100px auto; }
.about_sec_txt p{ width: 96%; margin: 0 auto 20px auto; }


.about_profile_sec{ width: 1100px; margin: 0 auto; }
.about_profile_sec .wp-block-media-text__media{ text-align: center; margin-bottom: 20px !important; }
.about_profile_sec .wp-block-media-text__media img{ width: 50%; margin: 0 auto; }
.about_profile_sec .wp-block-media-text__content{ padding: 0 !important; }
.about_profile_sec .wp-block-media-text__content p{ width: 100% !important; }

	
.column02{ max-width: 1100px; margin: 0 auto; }
.column02 .wp-block-column{ flex-basis: 46%; }
.column02 .wp-block-image img{ width: 300px !important; }
.column02 .wp-block-image.pro img{ width: 200px !important; }
.column02 h3{ width: 100%; }
.column02 .wp-block-column p{ min-height: 160px; }

.wp-block-button__link {
	color: var(--main-color) !important;
	background-color: #eee !important;
	border-radius: 9999px;
	box-shadow: none;
	text-decoration: none;
	padding: 15px 20px !important;
	font-size: 2rem !important;
	border: 1px solid var(--main-color);
	font-weight: 700;
}
.wp-block-button__link:hover{ background-color: var(--main-color) !important; color: #fff !important; }

.map_sec{ position: relative; width: 60%; padding-top: 30%; height: 0; margin: 0 auto; }
.map_sec iframe{ position: absolute; top: 0; left: 0; width: 100%; height: 100%; }


.page_top_img{ width: 300px; height: auto; margin: 0px auto 30px auto; }
.page_top_img img{ margin-top: 0px; }

.pro .page_top_img,
.single-talent .page_top_img{ width: 200px; }


.main_nav{ width: 60%; margin: 0 auto 30px auto; }
.main_nav ul{ display: flex; justify-content: center; flex-wrap: wrap; }
.nav_item{ flex-basis: 31%; margin: 0 1% 20px 1%; }
.nav_item a{ display: block; background-color: #eee; padding: 10px; border-radius: 40px; text-align: center; font-size: 1.8rem; font-weight: 700; letter-spacing: 2px; }
.nav_item a:hover{ background-color: var(--main-color); color: #fff; }


.school_sec_bg01{ position: relative; width: 1100px; margin: 0 auto; background: url("/info/wp-content/uploads/bg_school01.png") no-repeat left; min-height: 485px; padding-left: 40px; }
.school_sec_bg01 > p{ width: 50%; font-size: 3.5rem; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; line-height: 1.3; padding-top: 40px; text-align: center; margin: 0 auto 0 0; }
.school_sec_txt01{ margin: 20px auto 0 20px; width: 47%; }
.school_sec_txt01 p{ width: 100%; font-size: 1.8rem; text-align: left; font-family: 'Noto Sans JP',"Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif; }

.school_sec_img01{ position: absolute; top: 0; right: 0; width: 450px; margin: auto; left: auto; }
.school_sec_img01 img{ border-radius: 10px !important; }


.column02_02{ max-width: 1100px; margin: 0 auto; }
.column02_02 .wp-block-column:nth-child(1){}
.column02_02 .wp-block-column:nth-child(2){}
.column02_02 .wp-block-column{}
.column02_02{}


.table_price01{ width: 90%; margin: 0 auto 40px auto; }
.table_price01 table{ width: 100%; border-collapse: collapse; border: 1px solid #ccc; }
.table_price01 table th{ padding: 15px 10px; border: 1px solid #ccc; background-color: #4d4d4d; color: #fff; font-size: 2rem; vertical-align: middle; }
.table_price01 table th span{ display: block; }
.table_price01 table td{ padding: 10px 5px; border: 1px solid #ccc; font-size: 2.8rem; font-weight: 900; text-align: center; }
.table_price01 table td:nth-child(1){ font-size: 2.2rem; font-weight: normal; }
.table_price01 table td span{ font-size: 1.6rem; font-weight: normal; }


.page_sec img{ border-radius: 10px; }

.features_list{ width: 1100px; margin: 0 auto 40px auto; display: flex; justify-content: space-between; flex-wrap: wrap; }
.features_item{ flex-basis: 48%; margin-bottom: 20px; }
.feature_sec01{ display: flex; flex-wrap: wrap; align-items: center; }
.features_num{ flex-basis: 8%; text-align: left; }
.features_tit{ flex-basis: 90%; font-size: 2.3rem; text-align: left; margin-bottom: 10px; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal;  }
.features_txt{ flex-basis: 100%; font-size: 1.8rem; letter-spacing: 1px; line-height: 1.8; margin-bottom: 10px; min-height: 200px; }
.features_img01{ text-align: center; }
.features_img_sp{ display: none; }
.features_img_pc{ display: block; margin-bottom: 10px; }
.features_img_pc img{ width: 100%; height: auto; }


.lesson_flow_list{ width: 1100px; margin: 0 auto; display: flex; justify-content: center; flex-wrap: wrap; }
.lesson_flow_item{ flex-basis: 31%; background-color: #e0f9ff; padding: 20px; border-radius: 10px; margin: 0 1% 40px 1%; }
.lesson_flow_item:nth-child(4),
.lesson_flow_item:nth-child(5){ flex-basis: 40%; background-color: #e0f9ff; padding: 20px; border-radius: 10px; margin: 0 1% 40px 1%; }
.lesson_flow_tit{ display: flex; justify-content: center; margin-bottom: 10px; }
.lesson_flow_tit01_num01{ width: 40px; height: 40px; line-height: 40px; font-size: 3rem; border-radius: 100%; background-color: #fff;  text-align: center; color: #0081a1; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; margin-right: 10px; }
.lesson_flow_tit01_tit01{ font-size: 3.2rem; color: #0081a1; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal;  }
.lesson_flow_txt{ font-size: 1.8rem; line-height: 1.4; margin-bottom: 20px; min-height: 100px; }
.lesson_flow_img{ text-align: center; }
.lesson_flow_img img{ border-radius: 10px; }


.instructor_sec{ width: 1100px; margin: 0 auto 40px auto; }
.instructor_list{ display: block; }
.instructor_item{ display: flex; position: relative; background-color: #ccf5ff; padding: 40px 40px 40px 40px; border-radius: 10px; margin-top: 220px; }
.instructor_img{ flex-basis: 35%; position: initial; left: 0; bottom: 0; margin: 0; text-align: left; z-index: 1; }
.instructor_img img{ width: 380px; position: absolute; left: 20px; bottom: 0; border-radius: 0; }
.instructor_sec01{ flex-basis: 65%; position: relative; background-color: #fff; padding: 20px; border-radius: 10px; z-index: 3; }
.instructor_name{ text-align: left; margin-bottom: 10px; }
.instructor_name01{ font-size: 3rem; font-weight: 700;  }
.instructor_name02{ font-size: 1.8rem; color: #999; }
.instructor_katagaki{ font-size: 2.2rem; text-align: left; font-weight: 700; margin-bottom: 10px; }
.instructor_txt{ font-size: 1.6rem; line-height: 1.8; letter-spacing: 1px; }

.column_works01{ width: 400px; margin: 0 auto; }
.column_works01 .wp-block-column{  }
.column_works01 .wp-block-image{  }

.works_name01{ font-size: 3rem !important; font-weight: 700; width: auto !important; margin: 0 !important; padding-top: 40px; }
.works_name02{ font-size: 2rem !important; font-weight: 700; color: #999; width: auto !important; margin: 0 !important; }
.works_tit01{ width: auto !important; display: inline-block; background-color: #5f9aa8; color: #fff; padding: 5px 15px 8px 15px; border-radius: 40px; margin-bottom: 10px !important; line-height: 1 !important; font-size: 2rem; }
.works_list01{ margin-left: 30px; margin-bottom: 20px; }
.works_list01 > li{ list-style-type: disc; font-size: 2rem; }

.works_sec01{ width: 1100px; margin: 0 auto 60px auto; display: flex; justify-content: space-between; }
.works_sec_sample01{ flex-basis: 60%; }


.voice_list{ width: 1100px; display: flex; justify-content: space-between; flex-wrap: wrap; align-items: flex-start; margin: 0 auto 40px auto; }
.voice_item{ flex-basis: 32%; position: relative; margin-top: 50px; }
.voice_tit{ position: absolute; top: -20px; left: 10px; display: flex; align-items: center; background-color: #6a9acc; color: #fff; font-size: 2.3rem; border-radius: 40px; padding: 4px 15px; }
.voice_ico01{ margin-right: 5px; }
.voice_name01{ margin-right: 5px; }
.voice_info01{ font-size: 1.8rem; }
.voice_sec01{ background-color: #f5f5f5; padding: 50px 30px 30px 30px; }
.voice_tit01{ font-size: 2.5rem; font-weight: 700; margin-bottom: 10px; }
.voice_txt01{ font-size: 1.8rem; line-height: 1.7; }


.faq_sec{ width: 900px; margin: 0 auto; }
.faq_list{}
.faq_item{ margin-bottom: 20px; }
.faq_Sec01{}
.faq_sec01_q01{}
.faq_sec01_a01{}
.faq_txt{}


/* 開閉 */

/*アコーディオン全体*/
.accordion-area{
    list-style: none;
    width: 100%;
    max-width: 960px;
    margin:0 auto;
}

.accordion-area_support{ margin-bottom: 60px; }

.accordion-area li{
    margin: 10px 0;
}

.accordion-area section {
	padding: 0;
}


.accordion-content .faq_txt{ background: #f5f5f5; margin-bottom: 0; font-size: 2rem; }
.accordion-content .faq_txt p{ font-size: 2rem; }



.accordion-title{
cursor: pointer;
padding: 15px 40px 15px 15px;
transition: all .5s ease;
background-color: #eee;
font-size: 2.2rem;
font-weight: 700;
}

.faq .accordion-title{
cursor: pointer;
padding: 0;
transition: all .5s ease;
background-color: #eee;
color: var(--faq-color);
font-size: 2rem;
font-weight: 700;
}

.accordion-title:hover,
.accordion-title.open{ background-color: #ddd; }

.faq .accordion-title:hover,
.faq .accordion-title.open{ background-color: #eee; }


.accordion-content{ display: none;/*はじめは非表示*/ background: #f5f5f5; padding: 20px; }
.accordion-content p {
  font-size: 13px;
  line-height: 1.5;
}

/*アイコンの＋と×*/

.accordion-title{ position: relative; }

.accordion-title::before,
.accordion-title::after{
    position: absolute;
    content:'';
    width: 15px;
    height: 2px;
    background-color: var(--school-color);
    
}
.accordion-title::before{ top:48%; right: 10px; transform: rotate(0deg); }
.accordion-title::after{ top:48%; right: 10px; transform: rotate(90deg); }
/*　closeというクラスがついたら形状変化　*/
.accordion-title.open::before{ transform: rotate(45deg); }
.accordion-title.open::after{ transform: rotate(-45deg); }



.contact_att01{ font-size: 2.2rem !important; text-align: center; color: #bf1920; font-weight: 700;  }
.contact_att02{ font-size: 2.4rem !important; text-align: center; color: #bf1920; font-weight: 700;  }

/* フォーム */
.contact_sec{ width: 900px; margin: 0 auto; }
.contact_item{ display: flex; flex-wrap: wrap; width: 100%; padding: 20px 0; border-bottom: 1px solid #ccc; max-width: 900px; margin: 0 auto;}
.contact_tit{ flex-basis: 30%; font-weight: 700!important; position: relative; padding-left: 60px; text-align: left!important; margin-bottom: 5px; }

.contact_tit span{ position: absolute; background-color: #ffe7e7; color: var(--main-color); margin-right: 15px; border: 1px solid var(--main-color); padding: 2px 8px; left: 0; top: 10px; border-radius: 30px; font-size: 1.3rem; line-height: 1.2; }
.contact_tit .optional{background-color: #999; border: 1px solid #999;}
.contact_txt,
.contact_adress,
.contact_txtarea{ flex-basis: 60%; }
.contact_txt input{font-size: 2rem; background: #fff; height: 35px; padding: 8px; border: 1px solid #ccc; width: 100%; }
.contact_txtarea textarea{font-size: 2rem; padding: 8px; background: #fff; border: 1px solid #ccc; width: 100%; }
.contact_adress_sub p{padding: 15px 0;}
.contact_adress input{background: #fff; border: 1px solid #ccc; height: 35px; margin-left: 15px; font-size: 2rem; padding: 8px; }
.contact_submit{border-bottom: none;}
.contact_submit_btn{ text-align: center; margin-top: 30px; }
.contact_submit_btn input{ background-color: var(--main-color); color: #fff; font-size: 2rem; font-weight: 700; font-family: 'Noto Sans JP',"Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif; letter-spacing: 1px; padding: 15px 30px; cursor: pointer; -webkit-appearance: none; border-radius: 0; border: none; transition: .5s all; border-radius: 10px; border: 1px solid var(--main-color); transition: .5s all; }
.contact_submit_btn:hover input{ background-color: #fff; color: var(--main-color); }
.contact_submit_btn p{ margin: 0 auto !important; }

.contact_tit p,
.contact_txt p,
.contact_txtarea p{ width: auto !important; margin: 0 !important; }

.contact_submit_btn input:hover{opacity: 0.7;}

input[type="checkbox"]{float: left;}
.contact_check{display: flex;}
.contact_submit .contact_tit{width: 30%;}
.wpcf7-spinner{display: block;}

.contact_adress_sub p span{margin-left: 10px;}

::placeholder{ color: #999; }
.wpcf7-spinner {
	display: block !important;
	margin: 0 auto !important;
}



.kids_sec_bg01{ 
	width: 900px;  margin: 0 auto;
background-image:
	url("/info/wp-content/uploads/bg_left_kids02.png"),
	url("/info/wp-content/uploads/bg_right_kids02.png");
background-repeat: no-repeat, no-repeat;
background-position: left top, right top;
background-size: contain, contain;
	padding: 0 130px;
	text-align: center;
}
.kids_sec_bg01 p{ font-size: 2.4rem; font-weight: 700; }
.kids_sec_img01{ display: none; }
.kids_sec_img02{ display: block; width: 900px; margin: 0 auto; }
.kids_sec_img02 img{ width: 100%; height: auto; }

.kids_sec_img{ width: 1100px; margin: 0 auto; }


.taiken_sec{ width: 1100px; margin: 0 auto 30px auto; display: flex; justify-content: space-between; }
.taiken_ol{ flex-basis: 50%; }
.taiken_ol ol{ counter-reset: number; }
.taiken_ol ol li{ position: relative; margin-bottom: 10px; font-size: 2rem; padding: 0 0 0 1.8em; }
.taiken_ol ol li:before{ counter-increment: number;
content: counter(number);
position: absolute;
top: 3px;
left: 0;
width: 25px;
height: 25px;
background-color: var(--school-color);
color: #fff;
border-radius: 50%;
font-size: 18px;
font-weight: 700;
text-align: center;
line-height: 1.2;
}

.taiken_img{ flex-basis: 60%; width: 100%; margin: 0 auto 30px auto; }



.pro_sec_bg01{ width: 1100px; height: 459px; margin: 0 auto 40px auto; background: url("/info/wp-content/uploads/bg_pro01.png") no-repeat center top; background-size: contain; }
.pro_sec_bg01 p{ width: 450px !important; margin: 0; padding: 60px 0 0 0; font-size: 2rem !important; line-height: 2 !important; font-weight: 700; text-align: center; }


.talent_sec{  }
.talent_sec01{ width: 1100px; margin: 0 auto 40px auto; display: flex; justify-content: flex-start; flex-wrap: wrap; }
.talentlist01_sec{  }
.talentlist_list{ width: 900px; margin: 0 auto; }
.talentlist_item{ flex-basis: 30%; text-align: center; margin: 0 1.5% 30px 1.5%; }
.talentlist_img01{ margin-bottom: 10px; }
.talentlist_img01 img{ width: 200px; height: 200px; border-radius: 100%; object-fit: cover; object-position: top; }
.talentlist_name01{ font-size: 2.3rem; font-weight: 700; margin-bottom: 10px; }
.talentlist_works01{ background-color: #eee; border-radius: 10px; padding: 10px; font-size: 1.6rem; font-weight: 700; line-height: 1.2; min-height: 50px; display: flex; align-items: center; align-content: center; justify-content: center; }


.talentimg_sec{ flex-basis: 45%; width: 45%; margin: 0; }
.talent_sec01 .main_sec{ flex-basis: 50%; }

.talent_img_list{ width: 80%; margin: 30px auto 40px auto; }
.talent_img_item{ margin: 0 auto; }
.talent_img_item img{ width: 100%; height: auto; }

.talent_sec02{ flex-basis: 100%; margin-top: 60px; }
.talent_sec02.main_sec{ width: 100%; flex-basis: 100%; margin: 60px auto 0 auto; }

.talent_name_list{ width: 1100px; margin: 0 auto 40px auto; display: flex; justify-content: center; align-content: center; }
.talent_name_item{ display: flex; align-items: center; }
.talent_name01{ font-size: 3rem; text-align: left; font-weight: 700; margin-bottom: 0px; margin-right: 20px; }
.talent_name02{ font-size: 2rem; color: #aaa; text-align: left; font-weight: 700; }

.voicesample_sec{ width: 90%; margin: 0 auto; }

.event_fukidashi{ width: 900px; }
.event_fukidashi .vk_balloon_content p{ font-size: 2rem !important; }
.event_fukidashi .vk_balloon_content p br{ display: none; }
.event_fukidashi .vk_balloon_icon img{ width: 100%; height: auto; }

.event_sec_bg01{ width: 800px; padding-top: 40px; font-weight: 700; text-align: center; margin: 0 auto; min-height: 250px; background: url("/info/wp-content/uploads/bg_event01.png") center center no-repeat; }

.event_sec{ width: 1100px; margin: 0 auto; }
.event_sec01{ display: flex; flex-wrap: wrap; margin-bottom: 60px; }
.event_sec01 h3{ flex-basis: 100%; }
.event_sec01 .main_sec{ flex-basis: 100%; width: 100%; display: flex; }

.event_sec01_txt{ flex-basis: 45%; margin-right: 5%; }
.event_sec01_txt p{ margin: 0; font-size: 1.8rem; width: 100%; }
.event_sec01_img{ flex-basis: 55%; }


.movie_sec_bg01{ width: 1100px; margin: 40px auto 80px auto;
font-weight: 700; text-align: center; min-height: 465px; padding: 0 0 0 0;
background:
url("/info/wp-content/uploads/bg_movie02.png") left center / auto no-repeat,
url("/info/wp-content/uploads/bg_movie03.png") 85% center / auto no-repeat
}

.movie_sec01{ width: 900px; margin: 0 auto 80px auto; }


.privacy_sec{ width: 1100px; margin: 0 auto; }


.sitemap_sec{ width: 600px; margin: 0 auto; padding-bottom: 60px; }
.sitemap_sec ul{  }
.sitemap_sec ul li{ margin-bottom: 10px; }
.sitemap_sec > ul > li{  }
.sitemap_sec ul li a{ font-size: 2rem; font-weight: 700; }
.sitemap_sec ul li ul{ margin-left: 30px; margin-top: 10px; }
.sitemap_sec > ul > li > ul > li{ position: relative; padding-left: 30px; }
.sitemap_sec > ul > li > ul > li:before{
content: "";
position: absolute;
top: 15px;
left: 0;
transform: translateY(-50%);
border: 5px solid transparent;
border-left: 8px solid var(--main-color);
}
.sitemap_sec ul li ul li a{ font-size: 2rem; font-weight: normal; }
.sitemap_sec ul li ul li ul{ margin-left: 60px; margin-top: 10px; }
.sitemap_sec ul li ul li ul li{ list-style-type: circle; }
.sitemap_sec ul li ul li ul li a{ font-size: 2rem;  font-weight: normal; }

.sitemap_talent_list{ padding-left: 120px;  }
.sitemap_talent_item{ list-style-type: circle; padding-left: 0 !important; }
.sitemap_talent_item:before{ display: none; }
.sitemap_talent_item a{ font-size: 2rem; font-weight: normal !important; }

	
.acd-check{	display: none; }
.acd-label{ position: relative;	background: var(--main-color); color: #fff; display: block; margin-bottom: 1px; padding: 10px; font-size: 1.5rem; display: none; }
.acd-label::before{	display: none; }
.acd-content{ border: 0px solid var(--main-color); height: auto !important; opacity: 1 !important; padding: 0 10px; transition: .5s; visibility: visible; display: block; }
.acd-check:checked + .acd-label + .acd-content{ min-height: 40px; height: auto; opacity: 1; padding: 10px; visibility: visible; display: block; }
.acd-check:checked + .acd-label::before{ transform: rotate(-45deg) !important; }

/* セミナー講師 */
.seminar_course_flex_wrapper{width: 90%; margin: 0 auto;}
.seminar_course_flex{gap: 40px; width: 70%;}
.seminar_course_flex .wp-block-column{flex-grow: initial!important; flex-basis: initial!important; width: 100%;}
.seminar_course_flex .wp-block-buttons>.wp-block-button{width: 100%;}
.seminar_course_time{width: 90%; margin: 0 auto;}
.seminar_course_time table{width: 70%; }
.seminar_course_btn a{font-size: 2.8rem;}
.seminar_course_time td{font-size: 2.8rem;}
.seminar_course_list{font-size: 2rem;}
.seminar_achievements{width: 70%; min-width: 380px;}
.seminar_achievements_fish{width: 55%; right: -190px;}


	
.seminar_houhou01{ width: 50%; margin: 0 auto; }
.seminar_houhou01 .wp-block-column{}
.seminar_houhou01 .wp-block-column img{ width: 250px; height: 250px; }

.seminar_tit01{ font-size: 2.5rem !important; color: var(--main-color); font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; line-height: 1.2 !important; }
.seminar_tit01 span{ display: block; font-size: 1.8rem !important; }

.seminar p{ width: 80%; max-width: 1100px; margin: 0 auto 20px auto; }

.seminar_list01{ width: 50%; margin: 0 auto; display: flex; justify-content: space-between; flex-wrap: no-wrap; }
.seminar_list01 li{ flex-basis: 24%; color: #fff; font-size: 2rem; background-color: #f2666b; border-radius: 40px; padding: 5px; text-align: center; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; margin-bottom: 10px; }

.seminar h4{ width: 80%; max-width: 1100px; margin: 0 auto 20px auto; background-color: #999; font-size: 2.2rem; color: #fff; padding: 10px; border-radius: 10px; text-align: center; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; }

.seminar_curriculum_list{ width: 90%; max-width: 1100px; margin: 0 auto; display: flex; justify-content: flex-start; flex-wrap: wrap; }
.seminar_curriculum_item{ flex-basis: 31%; margin: 0 1% 40px 1%; }
.seminar_curriculum_tit01{ font-size: 2.4rem; text-align: center; margin-bottom: 5px; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal;  }
.seminar_curriculum_img01{ margin-bottom: 10px; }
.seminar_curriculum_img01 img{ width: 100%; height: auto; border-radius: 10px; }
.seminar_curriculum_cat_list{ display: flex; justify-content: space-between; margin-bottom: 10px; }
.seminar_curriculum_cat_item{ flex-basis: 49%; color: #fff; font-size: 1.5rem; padding: 5px; text-align: center; background-color: #17ae5b; border-radius: 10px; }
.seminar_curriculum_cat_item_off{ opacity: .5; }
.seminar_curriculum_txt01{ font-size: 1.6rem; }

.seminar_works{ width: 90%; max-width: 1100px; margin: 0 auto 80px auto; }

.seminar_works_list{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.seminar_works_item{ flex-basis: 48%; margin-bottom: 20px; }

.seminar_works h3{ width: 100%; position: relative; font-size: 1.8rem; background-color: #eee; padding: 10px 10px 10px 40px;; border-radius: 10px; margin-bottom: 10px; font-family: fot-chiaro-std, sans-serif; font-weight: 700; font-style: normal; border-top: 0; border-bottom: 0; text-align: left; }
.seminar_works h3:before{ display: block; content: ""; position: absolute; left: 15px; top: 19px; width: 10px; height: 10px; border-radius: 100%; background-color: var(--main-color); }
.seminar_works h3 br{ display: none; }

.seminar_works_tit01{ display: flex; align-items: center; font-size: 2rem; font-weight: 700; margin-bottom: 10px; }
.seminar_works_tit01 span{ background-color: var(--main-color); font-size: 1.6rem; color: #fff; padding: 3px 10px; border-radius: 5px; margin-right: 10px; }
.seminar_works_item p{ width: 100%; font-size: 1.8rem; }



@media screen and (min-width: 1200px) and (max-width:1350px){
#menu nav .header_contact{display: none;}
}

}
/* ----------------------------------------------------------
 PCWIDE CSS END
---------------------------------------------------------- */
