/*
Theme Name: dance-child
Version: 1.6
Template: twentytwentyfive
*/
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700&subset=japanese');
@import url('https://fonts.googleapis.com/css2?family=Anton&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');
html {
	font-size: 62.5%;
}
html,body {
	overflow-x: hidden;
}
body {
	font-family: 'Noto Sans JP', "Hiragino Kaku Gothic ProN", sans-serif;
	letter-spacing: 0.1em;
	line-height: 2.8rem;
	font-size: 1.6rem;
}
ul {
  list-style: none;
}
a span {
	color: #fff;
	font-size: 1.6rem;
}
a, .lessons .tab-item, input.wpcf7-submit, input.wpcf7-previous {
	cursor: pointer;
	text-decoration: none !important;
	outline: none;
}
a:hover,
.lessons .tab-item:hover,
input.wpcf7-submit:hover,
input.wpcf7-previous:hover {
	opacity: 0.7;
}
.lessons .tab-item.active:hover {
	opacity: 1;
}
small {
	font-size: 70%;
}

main,
main > .wp-block-group {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

header {
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 999;
	background-color: transparent;
	transition: all 0.5s;
}
header .wp-block-site-logo {
	padding-left: 2rem;
}
header.bg-color {
	background-color: rgba(22, 22, 19, 0.8) !important;
}
header .wp-block-navigation__container {
	align-items: end;
}
header .wp-block-navigation-item,
header .wp-block-navigation-item__content,
header .wp-block-navigation__responsive-container-open {
	outline: none;
	border: none;
}
header .wp-block-navigation-item__label {
	font-family: "Inter", sans-serif;
}
header .wp-block-navigation__container .wp-block-navigation-item:nth-last-child(3) a {
	background: #615EF6;
	color: #fff;
	border-radius: 30px;
	padding: 1.2rem 3rem !important;
}
h1.wp-block-post-title {
	display: none;
}
.kv {
	position: relative;
	max-width: none;
	height: 100vh;
}
.kv .kv-img img,
.kv video {
	max-width: none;
	height: 100vh;
	object-fit: cover;
}
.kv h1 {
	font-family: "Anton", sans-serif;
	font-size: 11rem;
	position: absolute;
	bottom: 10%;
	left: 7%;
	max-width: 1240px;
	color: #fff;
}
.kv .banner {
	position: absolute;
	bottom: 0;
	width: 100%;
}

h1, h2 {
	font-size: 8rem;
	font-family: "Anton", sans-serif;
}
h1 small,
h2 small {
	font-size: 2rem;
	display: block;
	margin-top: 1rem;
}

.concept h2,
.instructors h2,
.schedule h2,
.price h2,
.contact h2,
.privacy-policy h2 {
	color: #BFEF30;
}
.company h2 {
	color: #615EF6;
}
.concept h2 small,
.instructors h2 small,
.schedule h2 small,
.price h2 small,
.contact h2 small,
.privacy-policy h2 small {
	color: #fff;
}
.privacy-policy h2 small {
	margin-top: 4vw;
}
.company h2 small {
	color: #1e1e1e;
}
.concept {
	box-sizing: unset;
	padding: 0 2rem;
}
.concept h2 small {
	margin-top: 2rem;
}
.concept > .wp-block-columns {
	padding-top: clamp(150px, 24vw, 342px) !important;
	padding-bottom: clamp(150px, 26vw, 374px) !important;
}
.concept .img {
	position: relative;
}
.concept .img .wp-block-image:first-of-type {
	position: absolute;
	top: -10vw;
	left: 0;
}
.concept .img .wp-block-image:last-child {
	position: absolute;
	bottom: -12vw;
	right: 0;
}

.lessons {
	background-image: linear-gradient(320deg, #393790, #8583ff);
	/* max-width: none; */
	border-radius: 15px;
	/* padding-top: clamp(50px, 8vw, 105px) !important; */
	/* padding-bottom: clamp(50px, 7vw, 98px) !important; */
}
.lessons h2,
.lessons h2 small {
	color: #fff;
}
.lessons h2 small {
	margin-top: 1.5rem;
}
.lessons .tabs {
  display: flex;
  position: relative;
  align-items: flex-start;
}
.lessons .tab-list {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 35%;
  gap: 0 2.5rem;
  position: absolute;
  top: 0;
  margin-right: 5%;
  max-width: 325px;
  padding: 5rem 0 0 0;
}
.lessons .tab-list.is-fixed {
	position: fixed;
	top: 10rem;
}
.lessons .tab-list h2 {
	font-size: 5rem;
}
.lessons .tab-list h2 span {
	font-size: 2rem;
	display: block;
	margin-top: 1rem;
}

.lessons .tab-item {
  width: 45%;
  margin-bottom: 2rem;
  max-width: 150px;
}
.lessons .tab-item a {
  border-radius: 30px;
  background-color: transparent;
  border: solid 1px #fff;
  color: #fff;
  padding: 0.5em;
  cursor: pointer;
  width: 100%;
  text-align: center;
  font-family: "Inter", sans-serif;
  display: block;
  box-sizing: border-box;
}
.lessons .tab-panel {
  /* display: none; */
  padding: 10rem 0;
  border-bottom: 1px solid #fff;
}
.lessons .tab-panel:last-child {
	border: none;
}
.lessons .tab-panel img {
	width: 100%;
	margin-bottom: 7rem;
}
.lessons .tab-panel p {
	color: #fff;
}
.lessons .tab-panel strong {
	font-size: 3.8rem;
	margin-right: 5rem;
	margin-bottom: 5rem;
	display: block;
	font-family: "Anton", sans-serif;
}
.lessons .tab-item.active a {
  background-color: #fff;
  color: #393790;
  outline-style: none;
}
.lessons .tab-panel.active {
  display: block;
  animation: panel-show .5s ease-in-out forwards;
}
.lessons .tab-content {
	width: 60%;
	margin-left: auto;
}
/* パネル切り替えのアニメーション */
@keyframes panel-show {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* .instructors {
	display: none;
}
.instructors .wp-block-column > .wp-block-group {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.instructors .wp-block-column > .wp-block-group > .wp-block-group {
	margin: 0 4% 0 0 !important;
	text-align: center;
}
.instructors .wp-block-column > .wp-block-group > .wp-block-group:last-child {
	margin-right: 0 !important;
}
.instructors .wp-block-group .wp-block-image {
	max-width: 280px;
} */

.schedule {
	padding-top: clamp(50px, 19vw, 275px) !important;
	padding-bottom: clamp(50px, 11vw, 155px) !important;
	box-sizing: unset;
}
.schedule h2 small {
	margin-top: 1.5rem;
}
.schedule h3 {
	font-size: 8.4rem;
	color: #BFEF30;
	font-family: "Anton", sans-serif;
}
.schedule h3 small {
	font-size: 6rem;
}
.sutp1-w-flex {
	display: flex;
	width: 100%;
	justify-content: space-between;
	border: 2px solid #BFEF30;
	margin-top: -12px;
}
.sup-title {
	width: 100%;
	background: #BFEF30;
	text-align: center;
	margin-bottom: 2rem;
	padding: 1rem;
	box-sizing: border-box;
}
.sutp1-wf-item {
	width: 25%;
	background: #fff;
	box-sizing: border-box;
	border-right: 2px solid #BFEF30;
}
.sutp1-wf-item:last-child {
	border: none;
}
.sup-item-special01,
.sup-item-special02 {
	width: 100%;
	height: 270px;
	border-radius: 20px;
	position: relative;
	margin-bottom: 20px;
}
.sup-item-special01 a,
.sup-item-special02 a {
	height: 100%;
	width: 100%;
	display: block;
}
.sup-item-special01 a:hover,
.sup-item-special02 a:hover {
	opacity: 1;
}
.ins-img1 {
	background: url(/wp-content/uploads/2025/12/schedule_1_n.png) no-repeat;
	background-size: cover;
	background-position: center center;
}
.ins-img2 {
	background: url(/wp-content/uploads/2025/08/schedule_2.png) no-repeat;
	background-size: cover;
	background-position: center center;
}
.ins-img3 {
	background: url(/wp-content/uploads/2025/08/schedule_3-1.png) no-repeat;
	background-size: cover;
	background-position: center center;
}
.ins-img4 {
	background: url(/wp-content/uploads/2025/12/schedule_4_n.png) no-repeat;
	background-size: cover;
	background-position: center center;
}
.ins-img5 {
	background: url(/wp-content/uploads/2025/08/schedule_5.png) no-repeat;
	background-size: cover;
	background-position: center center;
}
.ins-img6 {
	background: url(/wp-content/uploads/2025/08/schedule_6.png) no-repeat;
	background-size: cover;
	background-position: center center;
}
.ins-img7 {
	background: url(/wp-content/uploads/2025/08/schedule_7.png) no-repeat;
	background-size: cover;
	background-position: center center;
}
.ins-img8 {
	background: url(/wp-content/uploads/2025/08/schedule_8.png) no-repeat;
	background-size: cover;
	background-position: center center;
}
.ins-img8 .supis1-under,
.ins-img15 .supis1-under,
.ins-img17 .supis1-under{
	display: flex;
	justify-content: center;
	align-items: center;
}
.ins-img8 .supis1-u-p02,
.ins-img15 .supis1-u-p02,
.ins-img17 .supis1-u-p02{
	font-size: 2rem;
}
.ins-img9 {
	background: url(/wp-content/uploads/2025/08/schedule_9.png) no-repeat;
	background-size: cover;
	background-position: center center;
}
.ins-img10 {
	background: url(/wp-content/uploads/2025/08/schedule_10.png) no-repeat;
	background-size: cover;
	background-position: center center;
}
.ins-img11 {
	background: url(/wp-content/uploads/2025/08/schedule_11.png) no-repeat;
	background-size: cover;
	background-position: center center;
}
.ins-img12 {
	background: url(/wp-content/uploads/2025/08/schedule_12.png) no-repeat;
	background-size: cover;
	background-position: center center;
}
.ins-img13 {
	background: url(/wp-content/uploads/2025/11/Mask-group-1.png) no-repeat;
	background-size: cover;
	background-position: center center;
}
.ins-img14 {
	background: url(/wp-content/uploads/2025/09/schedule_14.png) no-repeat;
	background-size: cover;
	background-position: center center;
}
.ins-img15 {
	background: url(/wp-content/uploads/2025/09/schedule_13.png) no-repeat;
	background-size: cover;
	background-position: center center;
}
.ins-img16 {
	background: url(/wp-content/uploads/2026/02/schedule_15.png) no-repeat;
	background-size: cover;
	background-position: center center;
}
.ins-img17 {
	background: url(/wp-content/uploads/2025/12/schedule_16.png) no-repeat;
	background-size: cover;
	background-position: center center;
}
.supis1-title {
	width: 100%;
	border-radius: 20px 20px 0 0;
	background: rgba(0,0,0,0.8);
	text-align: center;
	padding: 0.5rem 0;
	color: #fff;
	font-weight: bold;
}
.supis1-under {
	width: 100%;
	border-radius: 0 0 20px 20px;
	background: rgba(0,0,0,0.8);
	text-align: center;
	padding: 0;
	color: #fff;
	font-weight: bold;
	position: absolute;
	bottom: 0;
	line-height: 1.5;
	padding: 0.5rem 0;
	min-height: 42px;
}
.supis1-u-p01 {
	color: #BFEF30;
	padding: 0;
	margin: 0;
	font-size: 1.4rem;
	font-weight: bold;
}
.supis1-u-p02 {
	padding: 0;
	margin: 0;
	font-size: 1.4rem;
	font-weight: bold;
}
.schedule .tab-list {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  justify-content: space-between;
}
.schedule .tab-item {
  border-radius: 10px;
  background-color: #BFEF30;
  padding: 0.5em;
  cursor: pointer;
  width: 26%;
  text-align: center;
  margin-bottom: 2rem;
  height: 45px;
}
/* .schedule .tab-item:last-child {
	background-color: transparent;
	pointer-events: none;
} */
.schedule .tab-panel {
  display: none;
}
.schedule .tab-content {
	background: #D8F191;
	margin: 0 -500%;
	padding: 0 500% 2rem;
}
.schedule .tab-panel > div {
	border-bottom: 1px solid #000;
	padding: 2rem 0 0.5rem;
}
.schedule .tab-panel > div img {
	height: 45px;
	width: 100%;
	max-width: 183px;
}
.schedule .tab-panel ul {
	padding: 0;
}
.schedule .tab-panel li a {
	display: flex;
	align-items: center;
	background: #161613;
	padding: 1rem;
    box-sizing: border-box;
}
.schedule .tab-panel li:nth-child(2n) a {
	background: #5A5A5A;
}
.schedule .tab-panel li  img {
	width: 100%;
	max-width: 120px;
	padding-right: 2rem;
}
.schedule .tab-panel p {
	color: #fff;
	margin: 1rem 0;
}
.schedule .tab-panel p.schedule_title {
	font-size: 1.8rem;
}
.schedule .tab-panel p.schedule_name {
	color: #BFEF30;
}
.schedule .tab-panel strong {
	font-size: 3.8rem;
	margin-right: 5rem;
	font-family: "Anton", sans-serif;
}
.schedule .tab-item.active {
  background-color: #e4e4e4;
}
.schedule .tab-panel.active {
  display: block;
}

.price {
	border: 1px solid #BFEF30;
	border-radius: 15px;
}
.price h2 small {
	margin-top: 1.5rem;
}
.price h3 {
	font-size: 2.2rem;
}
.price h3::before {
	display: inline-block;
	content: "●";
	color: #BFEF30;
	margin-right: 1rem;
	font-size: 1.6rem;
}
.price td {
	padding: 4.5rem 2rem;
	text-align: center;
	font-size: 2rem;
}
.price td:first-child {
	width: 35%;
}
.price h4 {
	font-size: 2.4rem;
}
.price h4 span {
	font-size: 2.2rem;
	background: #CBFF34;
	color: #000;
	padding: 0.5rem 2rem;
	margin-right: 2rem;
	margin-bottom: 1rem;
	display: inline-block;
}
.price td strong {
	color: #BFEF30;
	font-size: 3rem;
	font-weight: bold;
}
.price .arrow {
  position: relative;
  display: inline-block;
  width: 45px;
  height: 62px;
}
.price .arrow::before,
.price .arrow::after {
  content: "";
  position: absolute;
  top: calc(50% - 6px);
  left: 0;
  width: 31px;
  height: 1px;
  background-color: #fff;
  transform-origin: 0;
}
.price .arrow::before {
  transform: rotate(0deg);
  top: calc(50% - -25px);
}
.price .arrow::after {
  transform: rotate(90deg);
}
.price .wp-block-column:last-child p strong {
	font-size: 3rem;
	color: #BFEF30;
	font-weight: bold;
}
.price .wp-block-column:last-child small {
	transform: scale(0.5, 1);
	display: inline-block;
	vertical-align: text-top;
}

.lesson_taiken a::after {
	background: url(/wp-content/uploads/2025/08/lesson_arrow.png) no-repeat;
	background-size: contain;
	background-position: center;
	content: "";
	display: inline-block;
	width: 40px;
	height: 17px;
	margin: 0.3rem 1.5rem;
	vertical-align: middle;
}

.image {
	max-width: none;
}

.access {
	background: #fff;
	max-width: none;
	text-align: center;
	padding-top: clamp(50px, 8vw, 110px) !important;
	padding-bottom: clamp(50px, 7vw, 90px) !important;
}
.access h2,
.access h2 small {
	color: #161413;
	text-align: left;
}
.access h2 small {
	margin-top: 1.5rem;
}
.access iframe {
	width: 100%;
	filter: grayscale(1);
}
.access table {
	color: #000;
	text-align: left;
}
.access td {
	border: none;
	padding: 0;
	vertical-align: text-top;
}
.access td:first-child {
	width: 10%;
}
.access tr:first-child td {
	padding: 1rem 0;
}

.contact {
	padding-top: clamp(50px, 9vw, 120px) !important;
	padding-bottom: clamp(50px, 12vw, 170px) !important;
	box-sizing: unset;
}
.contact h2 small {
	margin-top: 1.5rem;
}
.contact dl {
	margin: 4rem 0;
}
.contact dd {
	margin: 0;
}
.contact dt p {
	font-size: 1.4rem;
}
.contact input.wpcf7-text,
.contact textarea {
	width: 100%;
	border: none;
	border-bottom: 1px solid #d9d9d9;
	background: none;
	color: #d9d9d9;
}
.contact input.wpcf7-submit {
	background: #575757;
	color: #BFEF30;
	width: 25%;
	max-width: 180px;
	border-radius: 50px;
	border: none;
	padding: 1.5rem;
	margin-top: 7rem;
}

.company {
	background: url(/wp-content/uploads/2025/08/company_back-scaled.png) no-repeat;
	background-size: cover;
	max-width: none;
	padding-top: clamp(50px, 8vw, 112px) !important;
	padding-bottom: clamp(50px, 8vw, 114px) !important;
}
.company h2 small {
	margin-top: 1.5rem;
}
.company .wp-block-column:first-child {
	width: 30%;
}
.company .wp-block-column:last-child {
	width: 70%;
}
.company table {
	border-spacing: 0 1.5rem;
	border-collapse: separate;
}
.company tr {
	background: #f1f1f1;
	color: #1e1e1e;
	margin-bottom: 1rem;
}
.company td {
	border: none;
	padding: 2rem 5rem;
}
.company td:first-child {
	width: 12%;
}

footer {
	background-image: linear-gradient(320deg, #393790, #8583ff);
}
footer > .wp-block-group {
	max-width: 1240px;
	margin: auto;
	box-sizing: unset;
}
footer p,
footer table {
	color: #fff;
	font-size: 1.4rem;
	font-family: "Inter", sans-serif;
	line-height: 1.5;
}
footer a span {
	color: #fff;
	font-size: 1.6rem;
	font-family: "Inter", sans-serif;
}
.wp-social-link {
	background-color: transparent;
}
.privacy-policy-content {
	padding-left: 4vw;
}
.privacy-policy-content .wp-block-column:last-of-type {
	padding-top: 10vw;
}
.pc, body .is-layout-flex.pc {
	display: block;
}
.sp, body .is-layout-flex.sp, .wp-block-navigation-item.nav_trial.sp {
	display: none;
}

/* front */
.fix_link {
	position: fixed;
	top: 20rem;
	right: 0;
	z-index: 998;
}
.fix_link p {
	padding: 0;
}
.fix_link p.reservation_link a {
	writing-mode: vertical-rl;
	background: #CBFF34;
	display: block;
	padding: 3rem 1.5rem 2rem;
	color: #000;
	border-radius: 1rem 0 0 1rem;
	font-size: 2.4rem;
	font-weight: bold;
	letter-spacing: 0.5rem;
	margin-bottom: 1.5rem;
	transition: all 0.2s;
}
.fix_link p.reservation_link a:hover {
	opacity: 1;
	background: #464646;
	color: #fff;
}
.fix_link .pagetop_link {
	background: #d9d9d9;
	display: block;
	padding: 1.5rem 1.5rem 1rem;
	color: #000;
	border-radius: 1rem 0 0 1rem;
	text-align: center;
	font-size: 1.6rem;
	cursor: pointer;
	border: none;
	transition: all 0.2s;
	outline: none;
}
.fix_link .pagetop_link:hover {
	background: #464646;
	color: #fff;
}
.fix_link .pagetop_link:hover .pagetop__arrow {
  border-color: #fff;
}
.pagetop__arrow {
  display: block;
  height: 15px;
  width: 15px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  transform: translateY(20%) rotate(-45deg);
  margin: 0 auto 0.5rem;
}

.lessons_link {
	background-image:url(/wp-content/uploads/2025/11/lesson_back.png),url(/wp-content/uploads/2025/11/lesson_back_hov.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size:cover,0 0;
	position: relative;
	overflow: hidden;
	border-radius: 20px;
	background-color: #535252;
}
.schedule_link {
	background-image:url(/wp-content/uploads/2025/11/lesson_back.png),url(/wp-content/uploads/2025/11/schedule_back_hov.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size:cover,0 0;
	position: relative;
	overflow: hidden;
	border-radius: 20px;
	background-color: #535252;
}
.lessons_link:hover {
	background-size:0 0,cover;
}
.schedule_link:hover {
	background-size:0 0,cover;
}
.lessons_link h2, .schedule_link h2 {
	position: absolute;
	top: 5rem;
	left: 8rem;
	color: #fff;
}
.lessons_link img, .schedule_link img {
  transition: transform .6s ease; /* ゆっくり変化させる */
}
.lessons_link:hover img, .schedule_link:hover img {
  transform: scale(1.1); /* 拡大 */
}
.lessons_link a:hover, .schedule_link a:hover {
	opacity: 1;
}

@keyframes infinity-scroll-left {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-112%);
	}
}
@keyframes infinity-scroll-right {
	from {
		transform: translateX(-112%);
	}
	to {
		transform: translateX(0);
	}
}
.instructor {
	display: block;
}
.instructor:hover {
	opacity: 1;
}
.instructor .scroll-infinity__wrap {
  display: flex;
  overflow: hidden;
}
.instructor .scroll-infinity__list {
  display: flex;
  list-style: none;
  padding: 0;
  margin: 0;
}
.instructor .scroll-infinity__list--left {
  animation: infinity-scroll-left 40s infinite linear 1s both;
}
.instructor .scroll-infinity__list--right {
  animation: infinity-scroll-right 40s infinite linear 1s both;
}
.instructor .scroll-infinity__item {
  width: calc(100vw / 7);
  margin-right: 3rem;
  display: flex;
}
.instructor .scroll-infinity__item > img {
  width: 100%;
}
.instructor:hover .scroll-infinity__list--left,
.instructor:hover .scroll-infinity__list--right {
  animation-play-state: paused;
}
.instructor h2 small {
	color: #000;
}

.news {
	position: relative;
	overflow: hidden;
}
.news h2 {
	position: absolute;
	top: 15rem;
	left: 15rem;
	z-index: 1;
}
.news img {
  transition: transform .6s ease; /* ゆっくり変化させる */
}
.news:hover img {
  transform: scale(1.1); /* 拡大 */
}
.news a:hover {
	opacity: 1;
}

.link h2 a {
	display: block;
	padding: var(--wp--preset--spacing--50) var(--wp--preset--spacing--60);
	transition: all 0.2s;
}
.link h2 a:hover {
	color: #000;
	background: #fff;
	opacity: 1;
}

/* about */
.page-head {
	position: relative;
	z-index: 1;
}
.page-head h1.wp-block-heading {
	position: absolute;
	bottom: -5rem;
	left: 9rem;
}
.gallery {
	color: #fff;
}
.gallery .slick .wp-block-column {
	padding: 0 2rem;
}
.gallery .slick-prev {
	z-index: 998;
	left: 50px;
}
.gallery .slick-next {
	z-index: 998;
	right: 50px;
}
.gallery .slick-arrow::before {
	font-size: 3.2rem;
}
.trial h3 {
	font-size: 5rem;
	font-weight: bold;
	line-height: 7rem;
}
.trial h3 small {
	font-size: 3.6rem;
	font-weight: normal;
	display: block;
	font-family: "Anton", sans-serif;
}
a.trial {
	display: block;
	transition: all 0.2s;
}
a.trial:hover {
	background: #464646 !important;
	opacity: 1;
}
a.trial:hover h3 {
	color: #fff !important;
}
a.trial:hover .wp-block-buttons {
	background: #CBFF34;
	color: #464646;
}
a.trial:hover .arrow-bg {
	background: #464646;
}
a.trial:hover .arrow,
a.trial:hover .arrow::before,
a.trial:hover .arrow::after {
	background-color: #fff;
}
.trial .wp-block-buttons {
	background: #464646;
	color: #fff;
	border-radius: 50px;
	text-align: center;
	padding: 1.5rem;
	max-width: 252px;
	margin: auto;
}
.trial .wp-block-buttons p {
	width: 100%;
	font-size: 2.4rem;
	display: flex;
	justify-content: center;
	align-items: center;
}
.trial .arrow-bg {
	background: #fff;
	border-radius: 50px;
	padding: 3px 10px 8px 10px;
	vertical-align: top;
	margin-left: 2rem;
}
.trial .arrow {
  position: relative;
  display: inline-block;
  width: 15px;
  height: 3px;
  border-radius: 9999px;
  background-color: #464646;
  vertical-align: middle;
}
.trial .arrow::before,
.trial .arrow::after {
  content: "";
  position: absolute;
  top: calc(50% - 1.5px);
  right: 0;
  width: 12px;
  height: 3px;
  border-radius: 9999px;
  background-color: #464646;
  transform-origin: calc(100% - 1px) 50%;
}
.trial .arrow::before {
  transform: rotate(45deg);
}
.trial .arrow::after {
  transform: rotate(-45deg);
}

/* instructors */
.instructors-page header {
	background: #161613;
}
.instructors-page .page-head h1.wp-block-heading {
	position: static;
}
.instructors-page .page-head h1.wp-block-heading small {
	color: #1b1b1b;
}
.instructors-list p a {
	display: block;
	padding: 1rem 2rem 3rem;
	position: relative;
}
.instructors-list .wp-block-column .wp-block-image {
	overflow: hidden;
}
.instructors-list .wp-block-column:hover a {
	background: #000;
	color: #fff;
	opacity: 1;
}
.instructors-list .wp-block-column:hover a img {
	transition: transform .6s ease;
}
.instructors-list .wp-block-column:hover a img {
	transform: scale(1.1);
}
.instructors-list a small {
	display: block;
	font-size: 1.4rem;
}
.instructors-list a .arrow {
  position: absolute;
  display: inline-block;
  width: 25px;
  height: 2px;
  border-radius: 9999px;
  background-color: #000;
  right: 2rem;
  bottom: 4rem;
}
.instructors-list a .arrow::before,
.instructors-list a .arrow::after {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  right: -2px;
  width: 10px;
  height: 2px;
  border-radius: 9999px;
  background-color: #000;
  transform-origin: calc(100% - 1px) 50%;
}
.instructors-list a .arrow::before {
  transform: rotate(45deg);
}
.instructors-list a .arrow::after {
  transform: rotate(-45deg);
}
.instructors-list .wp-block-column:hover a .arrow,
.instructors-list .wp-block-column:hover a .arrow::before,
.instructors-list .wp-block-column:hover a .arrow::after {
	background-color: #fff;
}
.instructors-contents h2 strong {
	font-size: 2.6rem;
	color: #3a3a3a;
	display: block;
	border-bottom: 1px solid;
	font-weight: normal;
	padding: 2rem;
	margin-bottom: 2rem;
	max-width: 298px;
	width: 100%;
	box-sizing: border-box;
}
.instructors-contents h2 small {
	display: inline;
	color: #000;
	font-weight: normal;
	font-family: 'Noto Sans JP', "Hiragino Kaku Gothic ProN", sans-serif;
	margin-left: 2rem;
}
.instructors-contents ul {
	list-style: disc;
	padding-left: 2rem;
}

/* schedule&price */
.schedule-page main > .wp-block-group,
.schedule-page .schedule {
	padding-bottom: 0 !important;
}
.price .price-course {
	border-bottom: 1px solid #CBFF34;
}
.price .price-course td {
	width: 50%;
}
.price .price-course h3 {
	font-size: 3rem;
}
.price .price-course h3::before {
	content: "";
}
.flow {
	margin-left: -500% !important;
	margin-right: -500% !important;
	padding-left: 500%;
	padding-right: 500%;
	color: #161613;
}
.flow h2 small {
	color: #1e1e1e;
}
.flow_design09 {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 755px;
  margin: auto;
}
.flow09 {
  padding-left: 0;
}
.flow09 > li {
  list-style-type: none;
  display: flex;
  padding: 20px 0;
}
.flow09 > li dl dt {
  font-size: 4rem;
  line-height: 2;
  font-weight: bold;
  margin-bottom: 3rem;
}
.flow09 > li .icon09 {
  line-height: 1;
  font-size: 2rem;
  font-weight: normal;
  color: #fff;
  text-align: center;
  width: 8rem;
  position: relative;
  margin-top: 0;
  margin-right: 5rem;
  font-family: "Anton", sans-serif;
}
.flow09 > li .icon09::before {
  content: 'STEP';
  font-size: 1.4rem;
  display: block;
  margin-bottom: 0.3rem;
  letter-spacing: 1px;
  position: relative;
  z-index: 1;
  margin-top: 1.2rem;
  width: 8rem;
}
.flow09 > li .icon09::after {
  content: "";
  display: block;
  width: 1px;
  height: calc(100% - 70px);
  background-color: #000;
  position: absolute;
  left: 0;
  right: 0;
  top: 10rem;
  margin: auto;
}
.flow09 > li .icon09 span {
	background: #615EF6;
	border-radius: 50px;
	width: 8rem;
	height: 8rem;
	display: block;
	box-sizing: border-box;
	line-height: 10rem;
	position: absolute;
	top: 0;
	font-size: 4rem;
}
.flow09 > li dl dd {
  margin: 0 0 5rem 0;
}
.flow09 > li dl dd p {
  color: #615EF6;
  border: 1px solid;
  border-radius: 10px;
  padding: 3rem 3rem 2rem;
  position: relative;
  font-weight: 500;
}
.flow09 > li dl dd p strong {
  position: absolute;
  top: -1.5rem;
  font-size: 2rem;
  background: #e1e1e1;
  padding: 0 1rem;
}
.flow09 > li dl {
  width: calc(100% - 225px);
  margin-right: 3rem;
}
.flow09 > li div {
	max-width: 145px;
	padding-top: 6rem;
}
.flow09 > li div img {
	width: 100%;
}
.flow-lesson {
	max-width: 755px;
	background: #615EF6;
	margin: auto;
	border-radius: 20px;
	color: #fff;
	padding: 4rem 6rem;
	position: relative;
}
.flow-lesson h3 {
	font-size: 4rem;
	color: #fff;
	font-weight: bold;
	margin-top: 0;
}
.flow-lesson .img {
	position: absolute;
	right: 5rem;
	top: -12rem;
	max-width: 254px;
}
.flow-lesson .img img {
	width: 100%;
}

/* お問い合わせ */
.contact-page .cf-area {
	margin-bottom: 3rem;
}
.contact-page dd {
	margin: 0;
}
.contact-page .wpcf7-form-control-wrap {
	display: block;
	width: 100%;
}
.contact-page .wpcf7-text,
.contact-page .wpcf7-textarea {
	width: 100%;
	background: transparent;
	border-top: none;
	border-left: none;
	border-right: none;
	color: #fff;
}
.contact-page .cf-send {
	margin-top: 10rem;
}
.confirm-page .wpcf7-previous {
	background: transparent;
	color: #fff;
	border: 1px solid #fff;
	max-width: 180px;
	width: 100%;
	padding: 1.5rem;
	border-radius: 30px;
	margin-right: 5rem;
}
.contact-page .wpcf7-submit,
.confirm-page .wpcf7-submit {
	background: #575757;
	color: #CBFF34;
	max-width: 180px;
	width: 100%;
	border: none;
	padding: 1.5rem;
	border-radius: 30px;
}
.confirm-page table {
	text-align: left;
	margin-bottom: 10rem;
}
.confirm-page table tr {
	margin-bottom: 3rem;
	display: block;
}
.confirm-page table tr > * {
	display: block;
	width: 100%;
}
.confirm-page table p {
	font-size: 2rem;
	margin: 0.5rem 0;
}
.confirm-page table p span {
	font-size: 1.4rem;
	font-weight: normal;
}
.wpcf7-spinner {
	display: none;
}

/* news */
.category-list {
	max-width: 1240px;
	margin: auto;
	padding: 10rem 2rem 0;
	display: flex;
	align-items: center;
	box-sizing: border-box;
}
.category-list h3 {
	color: #fff;
	font-family: "Anton", sans-serif;
	font-size: 3rem;
}
.category-list ul {
	display: flex;
	flex-wrap: wrap;
	gap: 2rem 1rem;
}
.category-list ul li a {
	color: #615EF6;
	background: #fff;
	padding: 0.5rem 2rem;
	border-radius: 30px;
}
.category-list ul li.active a {
	color: #615EF6;
	background: #dcdcdc;
}
.blog .wp-block-query,
.archive .wp-block-query {
	background-image: linear-gradient(320deg, #393790, #8583ff);
	margin-bottom: 10rem;
}
.blog .wp-block-post-template,
.archive .wp-block-post-template {
	display: flex;
	max-width: 1240px;
	padding: 0 2rem;
	margin: auto;
	flex-wrap: wrap;
	gap: 4rem;
}
.blog .wp-block-post-template .wp-block-post,
.archive .wp-block-post-template .wp-block-post {
	width: 31%;
	position: relative;
	z-index: 1;
}
.blog .wp-block-post-template .wp-block-post *,
.archive .wp-block-post-template .wp-block-post * {
	position: relative;
	z-index: 1;
}
.blog .wp-block-post-template .wp-block-post > .wp-block-group::after,
.archive .wp-block-post-template .wp-block-post > .wp-block-group::after {
	background: rgba(255,255,255,0.2);
	content: "";
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
	border-radius: 2rem;
}
.blog .wp-block-post-template .wp-block-post .wp-post-image,
.archive .wp-block-post-template .wp-block-post .wp-post-image {
	border-radius: 2rem 2rem 0 0;
}
.blog .wp-block-post-template .wp-block-post .wp-block-post-title,
.archive .wp-block-post-template .wp-block-post .wp-block-post-title {
	color: #fff;
	font-family: 'Noto Sans JP', "Hiragino Kaku Gothic ProN", sans-serif;
	font-size: 1.6rem !important;
}
.blog .wp-block-post-template .wp-block-post .wp-block-post-title a,
.archive .wp-block-post-template .wp-block-post .wp-block-post-title a {
	width: 100%;
	padding: 0.5rem 2rem 2rem;
	box-sizing: border-box;
}
.blog .wp-block-post-template .wp-block-post .wp-block-post-date time {
	width: 100%;
	display: block;
}
.blog .wp-block-post-template .wp-block-post .wp-block-post-date a {
	width: 100%;
	padding: 0.5rem 2rem;
	display: block;
	box-sizing: border-box;
}
.blog .wp-block-post-template .wp-block-post .post-tag,
.archive .wp-block-post-template .wp-block-post .wp-block-post-date,
.archive .wp-block-post-template .wp-block-post .post-tag {
	padding: 0.5rem 2rem;
}
.blog .wp-block-post-template .wp-block-post .wp-block-post-date a,
.archive .wp-block-post-template .wp-block-post .wp-block-post-date a {
	color: #fff;
	font-size: 1.6rem;
}
.blog .wp-block-post-template .wp-block-post .post-tag a,
.archive .wp-block-post-template .wp-block-post .post-tag a {
	color: #615EF6;
	background: #fff;
	padding: 0 1rem;
	border-radius: 30px;
	font-size: 1.4rem;
}
.single .post-contents {
	background-image: linear-gradient(320deg, #393790, #8583ff);
	padding: 15rem 2rem 10rem !important;
	margin-bottom: 10rem;
}
.single .post-info {
	max-width: 1000px;
	width: 100%;
	margin: 0 auto 5rem;
}
.single .post-info .post-category {
	display: inline-block;
}
.single .post-info .post-category a {
	background: #fff;
	color: #615EF6;
	padding: 0 2rem;
	font-size: 1.8rem;
	border-radius: 30px;
	margin-right: 2rem;
}
.single .post-info .wp-block-post-date {
	display: inline-block;
	color: #fff;
	font-size: 1.6rem;
}
.single .post-info h1.wp-block-post-title {
	display: block;
	font-size: 2.2rem;
	color: #fff;
	font-family: 'Noto Sans JP', "Hiragino Kaku Gothic ProN", sans-serif;
	margin: 2rem 0;
}
.single .post-content {
	background: #fff;
	color: #000;
	padding: 10rem 2rem;
	margin: auto;
	max-width: 1240px;
	width: 100%;
	border-radius: 20px;
	box-sizing: border-box;
}
.single .post-content .wp-block-post-featured-image {
	margin-bottom: 5rem;
	max-width: 720px;
	width: 100%;
	margin: 0 auto 5rem;
}
.single .post-content > * {
	max-width: 1000px;
	width: 100%;
	margin: auto;
}
.single nav {
	border: none;
	justify-content: center;
}
.single nav a {
	color: #fff;
	font-size: 2rem;
}
.single nav > a {
	margin: 0 10rem;
}
.single nav .is-arrow-arrow {
	background: #fff;
	color: #615EF6;
	padding: 0.4rem 0.8rem 0.6rem;
	border-radius: 3rem;
	font-size: 2rem;
}


@media (max-width: 1020px) and (min-width: 768px) {
	header > .wp-block-group > .is-layout-constrained > .is-content-justification-space-between {
		display: block;
	}

	.lessons .tab-list {
		width: 32%;
		gap: 0 1.5rem;
	}
}

@media (max-width: 768px) {
	.wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: block;
	}
	.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
		position: absolute;
	}
	.pc, body .is-layout-flex.pc {
		display: none;
	}
	.sp {
		display: block;
	}
	body .is-layout-flex.sp {
		display: flex;
	}

	body {
		font-size: 1.4rem;
		line-height: 2.4rem;
	}

	header .wp-block-group-is-layout-flex.alignwide {
		padding: 1rem 2rem !important;
	}
	header .wp-block-site-logo {
		max-width: 173px;
		padding: 0;
	}
	header .wp-block-navigation__responsive-container-open {
		z-index: 999;
	}
	header .wp-block-navigation__responsive-container-close {
		right: 2rem;
		top: 2rem;
	}
	header .wp-block-navigation__responsive-container.has-base-background-color {
		background-color: rgba(22,22,19,0.9) !important;
		animation: none;
	}
	header .wp-block-navigation__responsive-container.is-menu-open {
		transform: translateY(0);
		opacity: 1;
	}
	header .wp-block-navigation__responsive-container {
		display: flex;
		transform: translateY(-100vh);
		transition: all .5s ease;
		opacity: 0;
	}
	header .has-modal-open .admin-bar .is-menu-open .wp-block-navigation__responsive-dialog{
		padding-top: 46px;
		margin-top: 0;
	}
	header .wp-block-navigation__container {
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		align-items: flex-start;
	}
	header .wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content {
		padding: calc(2rem + 24px);
	}
	header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
		align-items: flex-start;
	}
	header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container {
		justify-content: flex-start;
		align-items: flex-start;
	}
	header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item:nth-last-child(2) .wp-block-navigation-item__content {
		padding: 0.5rem 3rem;
		margin: 2rem 0;
	}
	header .wp-block-navigation-item:nth-child(1) .wp-block-navigation-item__content::after {
		display: inline-block;
		margin-left: 1.5rem;
		content: "私たちについて";
		color: #b2b2b2;
	}
	header .wp-block-navigation-item:nth-child(2) .wp-block-navigation-item__content::after {
		display: inline-block;
		margin-left: 1.5rem;
		content: "レッスン";
		color: #b2b2b2;
	}
	header .wp-block-navigation-item:nth-child(3) .wp-block-navigation-item__content::after {
		display: inline-block;
		margin-left: 1.5rem;
		content: "インストラクター";
		color: #b2b2b2;
	}
	header .wp-block-navigation-item:nth-child(4) .wp-block-navigation-item__content::after {
		display: inline-block;
		margin-left: 1.5rem;
		content: "スケジュール & 料金表";
		color: #b2b2b2;
	}
	header .wp-block-navigation-item:nth-child(5) .wp-block-navigation-item__content::after {
		display: inline-block;
		margin-left: 1.5rem;
		content: "最新情報";
		color: #b2b2b2;
	}
	header .wp-block-navigation__container {
		width: 100%;
	}
	header .wp-block-navigation__container .wp-block-navigation-item.nav_trial {
		display: block;
		width: 100%;
		height: 171px;
		background-image: url(/wp-content/uploads/2025/11/体験レッスン.png) !important;
		background-repeat: no-repeat !important;
		background-size: contain !important;
		background-position: center center !important;
	}
	header .wp-block-navigation__container .wp-block-navigation-item.nav_trial .wp-block-navigation-item__content {
		width: 100%;
		height: 100%;
		display: block;
	}
	header .wp-block-navigation__container .wp-block-navigation-item.nav_trial .wp-block-navigation-item__label {
		display: none;
	}
	
	main, main > .wp-block-group {
		/* margin-top: -80px !important; */
	}
	main > .wp-block-group {
		padding-bottom: 5rem !important;
	}
	.kv .kv-img img {
		object-position: bottom;
	}
	.kv h1 {
		font-size: 7rem;
		left: 0;
		bottom: 20%;
	}
	.kv .banner figure {
		margin: 0;
	}
	.kv .banner figure img {
		max-width: 121px;
		width: 100%;
	}
	.kv .banner p {
		font-size: 4rem;
	}
	.kv .banner span {
		font-size: 2.6rem;
		display: block;
		margin: 0.5rem 0;
	}

	h2 {
		font-size: 4.8rem;
	}
	h2 small {
		font-size: 1.2rem;
	}

	.concept {
		padding: 0;
	}
	.concept h2 {
		padding: 0 2rem;
	}
	.concept > .wp-block-columns {
		padding-bottom: clamp(50px, 5vw, 342px) !important;
	}
	.concept > .wp-block-columns > .wp-block-column:first-child {
		padding: 40vw 2rem 0;
		order: 2;
	}
	.concept .img .wp-block-image.sp {
		left: auto;
		right: 0;
		width: 80%;
	}
	.concept .img .wp-block-image:last-child {
		bottom: -40vw;
		width: 80%;
		text-align: right;
	}

	.lessons {
		padding: 2rem 2rem 5rem !important;
		margin-top: 10rem !important;
	}
	.lessons .tabs {
		display: block;
	}
	.lessons .tab-panel {
		padding: 3rem 0 7rem;
	}
	.lessons .tab-content {
		width: 100%;
	}
	.lessons .tab-panel img {
		width: 100%;
		margin-bottom: 1rem;
	}
	.lessons .tab-list {
		width: 100%;
		position: static !important;
		padding: 0;
		gap: 0;
		margin: 0;
	}

	.lessons .tab-list h2 {
		opacity: 1 !important;
		transform: translateY(0px) !important;
		font-size: 4.8rem;
	}
	.lessons .tab-list h2 span {
		font-size: 1.2rem;
	}
	.lessons .tab-item {
		max-width: none;
		font-size: 1.6rem;
	}
	.lessons .tab-panel strong {
		display: block;
		margin-bottom: 2rem;
		font-size: 2.8rem;
	}

	.schedule {
		padding-top: clamp(100px, 27vw, 275px) !important;
	}
	.schedule h3 {
		font-size: 4rem;
		margin-bottom: 2rem;
	}
	.schedule h3 small {
		font-size: 2.6rem;
	}
	    .schedule .tab-panel p {
        font-size: 1.6rem;
    }
	.schedule .tab-panel p.schedule_name {
		font-weight: bold;
	}

	.price {
		padding-left: 1rem !important;
		padding-right: 1rem !important;
		margin-left: 1rem !important;
		margin-right: 1rem !important;
	}
	.price > .wp-block-columns:first-child {
		margin-bottom: 3rem !important;
	}
	.price td {
		padding: 1rem 2rem;
		font-size: 1.6rem;
	}
	.price .price-course td {
		width: 40%;
	}
	.price .price-course td:first-child {
		width: 60%;
		padding: 1rem;
		letter-spacing: initial;
	}
	.price td strong {
		font-size: 2.4rem;
	}
	.price .wp-block-column:last-child p {
		font-size: 1.6rem;
	}
	.price .arrow {
		width: 25px;
		height: 40px;
	}
	.price .arrow::before,
	.price .arrow::after {
		width: 20px;
	}
	.price .arrow::before {
		top: calc(50% - -13px);
	}
	.price .wp-block-column:last-child p strong {
		font-size: 2rem;
	}

	.lesson_taiken {
		background-color: #fff;
		border-radius: 20px;
		text-align: center;
		padding: 2rem 0 !important;
	}
	.lesson_taiken img {
		width: 95%;
		margin-bottom: 2rem;
	}
	.lesson_taiken .wp-block-buttons > .wp-block-button.has-custom-width .wp-block-button__link {
		border-radius: 50px !important;
		width: 80%;
		padding: 1rem !important;
		position: relative;
	}
	.lesson_taiken .wp-block-buttons > .wp-block-button.has-custom-width .wp-block-button__link:after {
		position: absolute;
		top: calc(50% - 10px);
	}
	.lesson_taiken a::after {
		background: url(/wp-content/uploads/2025/09/lesson_arrow_sp.png) no-repeat;
		background-size: contain;
		width: 16px;
		height: 16px;
		right: 0;
	}

	.access iframe {
		height: 85vw;
	}
	.access td:first-child {
		width: 28%;
	}
	
	.contact input.wpcf7-text, .contact textarea {
		border-radius: 0;
		-webkit-appearance: none;
	}
	.contact .cf-send {
		text-align: center;
	}
	.contact input.wpcf7-submit {
		width: 100%;
	}
	.contact .wpcf7-spinner {
		display: none;
	}

	.company {
		margin-bottom: 5rem !important;
	}
	.company td {
		padding: 1rem;
	}
	.company td:first-child {
		width: 23%;
	}

	
	footer .alignfull.is-content-justification-space-between.is-layout-flex > div {
		width: 100%;
	}
	footer .wp-block-site-logo {
		width: 100%;
		max-width: 211px;
	}
	footer .wp-block-group nav.wp-block-navigation {
		display: none;
	}
	footer .wp-block-spacer {
		height: clamp(25px, 7vw, 90px) !important;
	}
	footer .wp-block-image a:hover {
		opacity: 1;
	}
	.fix_link {
		top: auto;
		bottom: 1rem;
	}
	.fix_link .pagetop_link {
		border-radius: 50px;
		padding: 1.8rem 1.7rem 1.3rem;
	}
    .fix_link .pagetop_link:hover .pagetop__arrow {
		border-right: 8px solid transparent;
		border-left: 8px solid transparent;
		border-bottom: 14px solid #ffffff;
		border-top: 0;
	}
	.pagetop__arrow {
		width: 0;
		height: 0;
		border-style: solid;
		border-right: 8px solid transparent;
		border-left: 8px solid transparent;
		border-bottom: 14px solid #ffffff;
		border-top: 0;
		transform: none;
	}

	.privacy-policy-content {
		padding-left: 0;
	}
	.privacy-policy-content .wp-block-column:last-of-type {
		padding-top: 5vw;
	}

	/* front */
	.links {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	.lessons_link {
		background-image: url(/wp-content/uploads/2025/11/lesson_back_hov.png);
		background-size: cover;
		max-width: 344px;
		max-height: 239px;
		border-radius: 0 20px 20px 0;
	}
	.schedule_link {
		background-image: url(/wp-content/uploads/2025/11/schedule_back_hov.png);
		background-size: cover;
		max-width: 344px;
		max-height: 239px;
		margin-left: auto !important;
		border-radius: 20px 0 0 20px;
	}
	.lessons_link h2, .schedule_link h2 {
		top: 3rem;
		left: 3rem;
	}
	.instructor > .wp-block-columns {
		padding: 2rem !important;
	}
	.instructor .scroll-infinity__item {
		width: calc(100vw / 2);
	}
	.instructor h2 small {
		display: inline-block;
		margin-left: 1rem;
	}
	.instructor .scroll-infinity__list--left:last-child {
		display: none;
	}
	.instructor .scroll-infinity__list--right:first-child {
		display: none;
	}
	@keyframes infinity-scroll-left_sp {
		from {
			transform: translateX(0);
		}
		to {
			transform: translateX(-75%);
		}
	}
	@keyframes infinity-scroll-right_sp {
		from {
			transform: translateX(-75%);
		}
		to {
			transform: translateX(0);
		}
	}
	.instructor .scroll-infinity__list--left {
	  animation: infinity-scroll-left_sp 40s infinite linear 1s both;
	}
	.instructor .scroll-infinity__list--right {
	  animation: infinity-scroll-right_sp 40s infinite linear 1s both;
	}
	.trial {
		padding: 1rem 2rem 2rem !important;
		border-radius: 20px !important;
		width: 90%;
	}
	.trial > .wp-block-columns {
		gap: 2rem;
	}
	.trial h3 {
		font-size: 2.8rem;
	}
	.trial h3 small {
		font-size: 1.8rem;
		line-height: 1rem;
	}
	.trial .wp-block-buttons {
		max-width: 164px;
		padding: 1rem 0.5rem;
	}
	.trial .arrow-bg {
		margin-left: 1rem;
		padding: 0px 8px 3px 8px;
	}
	.trial .arrow {
		width: 10px;
	}
	.trial .arrow::before, .trial .arrow::after {
		width: 9px;
	}
	.trial .wp-block-buttons p {
		font-size: 1.6rem;
	}
	.news h2 {
		top: 3rem;
		left: 3rem;
	}
	.link h2 a {
		padding: var(--wp--preset--spacing--50) var(--wp--preset--spacing--30);
	}
	.page-head h1.wp-block-heading {
		font-size: 4.8rem;
		left: 2rem;
	}
	.page-head h1.wp-block-heading small {
		font-size: 1.2rem;
	}

	/* about */
	.gallery .slick .wp-block-column {
		padding: 0 1rem;
	}

	/* instructor */
	.instructors-list {
		padding-top: 3rem !important;
	}
	.instructors-list > .wp-block-columns {
		gap: 0 2rem;
	}
	.instructors-list > .wp-block-columns > .wp-block-column {
		flex-basis: 40% !important;
		padding-bottom: 2rem !important;
	}
	.instructors-list p a {
		padding: 0.5rem 1rem 1rem;
	}
	.instructors-list a small {
		font-size: 1.2rem;
	}
	.instructors-list a .arrow {
		width: 17px;
		right: 1rem;
		bottom: 2rem;
	}
	.instructors-list a .arrow::before,
	.instructors-list a .arrow::after {
		width: 8px;
	}
	.instructors-contents {
		margin-top: 0 !important;
	}
	.instructors-contents .instructor_intro .wp-block-column {
		padding: 0 2rem 1rem !important;
	}
	.instructors-contents h2 strong {
		padding: 1rem 0;
		font-size: 2rem;
        max-width: none;
	}
	.instructors-contents h2 small {
		font-size: 1.6rem;
	}
	.instructors-contents .instructor_info {
		padding: 0 2rem;
	}
	.instructors-contents .instructor_info h3 {
		font-size: 1.8rem;
		padding: 0.5rem 2rem !important;
		margin-bottom: 2rem !important;
	}
	.instructors-contents ul {
		margin-bottom: 5rem !important;
	}
	.price h4, .price h4 span {
		font-size: 1.6rem;
		margin-bottom: 1rem !important;
	}
	.price h4 span {
		padding: 0.5rem 1rem;
	}
	.price .wp-block-table {
		margin-bottom: 3rem;
	}
	.price-course > .wp-block-columns {
		margin-bottom: 3rem !important;
	}
	.price-course > .wp-block-columns > .wp-block-column > .wp-block-columns {
		margin-bottom: 1rem !important;
	}
	.price-course > .wp-block-columns > .wp-block-column.is-vertically-aligned-center:first-child {
		flex-basis: 10% !important;
	}
	.price .price-course h3 {
		font-size: 2rem;
	}
	.price .price-benefits td:first-child {
		width: 28%;
	}
	.flow {
		margin: auto !important;
		padding: 5rem 2rem !important;
	}
	.flow09 {
		width: 100%;
	}
	.flow09 > li .icon09 {
		width: 5.6rem;
		margin-right: 1rem;
	}
	.flow09 > li dl dt {
		font-size: 2.2rem;
		margin-left: 1.5rem;
	}
	.flow09 > li .icon09 span {
		font-size: 2.6rem;
		width: 5.6rem;
		height: 5.6rem;
		line-height: 7.5rem;
	}
	.flow09 > li .icon09::before {
		font-size: 1.2rem;
		width: 5.6rem;
		margin-top: 1rem;
	}
	.flow09 > li .icon09::after {
		height: calc(100% - 56px);
		top: 8rem;
	}
	.flow09 > li dl {
		width: calc(100% - 76px);
		margin: 0;
		position: relative;
		padding-bottom: 5rem;
	}
	.flow09 > li dl dd {
		margin-bottom: 3rem;
	}
	.flow09 > li:first-child dl dd {
		margin-bottom: 5rem;
	}
	.flow09 > li dl dd.sp {
		text-align: right;
		margin: 0;
		position: absolute;
		bottom: 0;
		right: 0;
	}
    .flow09 > li:not(:first-child) dl dd.sp {
		bottom: 2.5rem;
	}
	.flow09 > li dl dd img {
		max-width: 100px;
		width: 100%;
	}
	.flow09 > li dl dd p strong {
		font-size: 1.4rem;
	}
	.flow09 > li dl dd p {
		padding: 1rem;
	}
	.flow-lesson {
		padding: 3rem 2rem 2rem;
		margin-top: 8rem;
	}
	.flow-lesson h3 {
		font-size: 2.6rem;
	}
	.flow-lesson .img {
		right: -5rem;
		max-width: 155px;
	}
	.contact-page .cf-send {
		text-align: center;
	}

	/* news */
	.category-list {
		display: block;
		padding-top: 8rem;
	}
	.category-list h3 {
		font-size: 1.8rem;
	}
	.category-list ul {
		justify-content: center;
		padding: 0;
	}
	.blog .wp-block-query,
	.archive .wp-block-query {
		margin-bottom: 5rem;
	}
	.archive .wp-block-post-template,
	.blog .wp-block-post-template {
		gap: 1rem;
		padding: 3rem 2rem;
	}
	.archive .wp-block-post-template .wp-block-post,
	.blog .wp-block-post-template .wp-block-post {
		width: 48%;
	}
	.archive .wp-block-post-template .wp-block-post > .wp-block-group,
	.blog .wp-block-post-template .wp-block-post > .wp-block-group {
		margin-top: 1rem !important;
	}
	.archive .wp-block-post-template .wp-block-post .wp-post-image,
	.blog .wp-block-post-template .wp-block-post .wp-post-image {
		border-radius: 1rem 1rem 0 0;
	}
	.archive .wp-block-post-template .wp-block-post > .wp-block-group::after,
	.blog .wp-block-post-template .wp-block-post > .wp-block-group::after {
		border-radius: 1rem;
	}
	.archive .wp-block-post-template .wp-block-post .wp-block-post-date a,
	.archive .wp-block-post-template .wp-block-post .post-tag a,
	.blog .wp-block-post-template .wp-block-post .wp-block-post-date a,
	.blog .wp-block-post-template .wp-block-post .post-tag a {
		font-size: 1rem;
	}
	.archive .wp-block-post-template .wp-block-post .post-tag a,
	.blog .wp-block-post-template .wp-block-post .post-tag a {
		letter-spacing: 0;
		padding: 0 0.5rem;
	}
	.archive .wp-block-post-template .wp-block-post h2.wp-block-post-title a,
	.blog .wp-block-post-template .wp-block-post h2.wp-block-post-title a {
		font-size: 1.4rem;
		color: #fff;
		padding: 1rem 1rem 2rem;
	}
	.archive .wp-block-post-template .wp-block-post .wp-block-post-date a, 
	.archive .wp-block-post-template .wp-block-post .post-tag,
	.blog .wp-block-post-template .wp-block-post .wp-block-post-date a, 
	.blog .wp-block-post-template .wp-block-post .post-tag {
		padding: 0 1rem;
	}
	.single .post-content {
		border-radius: 0;
		padding: 5rem 3rem;
	}
	.single .post-info {
		margin-bottom: 3rem;
	}
	.single .post-info .post-category a {
		padding: 0 1rem;
		margin-right: 1rem;
	}
	.single .post-info h1.wp-block-post-title {
		margin: 1rem 0;
	}
	.single .post-info .post-category a,
	.single .post-info .wp-block-post-date,
	.single .post-info h1.wp-block-post-title {
		font-size: 1.4rem;
	}
	.single .post-contents {
		padding-top: 10rem !important;
		margin-bottom: 5rem;
	}
	.single nav a {
		font-size: 1.6rem;
	}
	.single nav > a {
		margin: 0 3rem;
	}
	.single nav .is-arrow-arrow {
		padding: 0 0.5rem 0.2rem;
		font-size: 1.5rem;
	}
}
