@charset "UTF-8";
/*
Template: arkhe
Theme Name: Arkhe Child
Theme URI: https://arkhe-theme.com/ja/
Description: Arkhe用子テーマ
Version: 1.0.0
Text Domain: arkhe
License: GNU General Public License
License URI: http://www.gnu.org/licenses/gpl.html
*/
:root {
  --ark-color--main:#da6bc4 !important;
  --amal-bg: #fff8f2;
  --amal-bg-soft: #fff1f4;
  --amal-cream: #fffaf6;
  --amal-rose: #a64663;
  --amal-rose-dark: #6f2d45;
  --amal-wine: #4a2434;
  --amal-gold: #c8a35c;
  --amal-brown: #4c3834;
  --amal-border: rgba(166, 70, 99, 0.2);
  --amal-shadow: 0 18px 45px rgba(93, 42, 58, 0.13);
}
body {
  color: var(--amal-brown);
  background-color: var(--amal-bg);
  background-image:
    radial-gradient(circle at 15% 0%, rgba(255, 202, 216, 0.5), transparent 32%),
    radial-gradient(circle at 90% 20%, rgba(200, 163, 92, 0.22), transparent 28%),
    linear-gradient(180deg, #fff8f2 0%, #fffdf9 48%, #fff4f6 100%);
  background-attachment: fixed;
  font-feature-settings: "palt";
}
h1,h2{
	font-family: "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", serif;
}
.c-headLogo {
	font-family: "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", serif;
}
.has-text > .c-headLogo {
	display: inline-flex;
	align-items: center;
	gap: .45em;
}
.c-headLogo__icon {
	width: 1.35em;
	height: 1.35em;
	flex: 0 0 auto;
	object-fit: cover;
}
.c-headLogo__body {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	min-width: 0;
	line-height: 1.1;
}
.c-headLogo__subtext {
	display: block;
	font-size: 12px;
	line-height: 1.2;
	white-space: nowrap;
}
.c-headLogo__text {
	display: block;
	white-space: nowrap;
}
.c-headLogo__kana {
	font-size: .72em;
}
@media (max-width: 781px) {
	#header .l-header__body {
		min-height: 64px;
	}
	.l-header__logo.has-text {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		max-width: calc(100vw - 96px);
		margin-inline: 0;
		z-index: 1;
	}
	.has-text > .c-headLogo {
		width: 100%;
		min-width: 0;
		max-width: 100%;
	}
	.has-text > .c-headLogo,
	.has-image.has-text > .c-headLogo {
		height: auto !important;
	}
	.c-headLogo__text {
		font-size: clamp(18px, 5vw, 22px);
		line-height: 1.2;
		white-space: normal;
	}
	.c-headLogo__kana {
		display: block;
	}
}
.p-topArea__title .c-pageTitle__main{
    color: rgb(255, 255, 255);
    text-shadow: rgb(114, 114, 114) 2px 3px 4px;
	font-family: "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", serif;
}
.c-pageTitle__main{
    color: #7f4a57;
}
.lesson-cover a {
    color: #fff;
    text-decoration:none;
}
#sk-topbar {
  position: sticky; /* スクロールに追随させないなら static に */
  top: 0;
  z-index: 9999;
  font-size: 14px;
}
#sk-topbar .sk-topbar__in {
  max-width: min(1200px, 92vw);
  margin: 0 auto;
  padding: .35rem .5rem;
  display: flex;
  gap: .5rem;
  justify-content: flex-end;
  align-items: center;
}
#sk-topbar .sk-topbar__tel { white-space: nowrap; }
#sk-topbar .sk-topbar__btn {
  display: inline-block;
  padding: .35rem .8rem;
  border-radius: .5rem;
  font-weight: 600;
}

@media (max-width: 768px) {
  #sk-topbar .sk-topbar__in { justify-content: space-between; }
  #content h2 {
	font-size: clamp(1.375rem, 4.8vw, 1.5rem);
  }
  #content h3 {
	font-size: clamp(1.125rem, 4vw, 1.3125rem);
  }
}

[data-btns=rr-rl] .l-header__body {
    grid-template-areas: "left center right search menu";
    grid-template-columns: 5% 74% auto var(--ark-searchW) var(--ark-drawerW);
}
@media not all and (min-width: 1000px) {
    .l-header__body {
        padding-left: 1vw;
        padding-right: 1vw;
    }
}
#content h2 {
	color: #7f4a57;
	position: relative;
	padding: 0.45em 1em 0.65em 1.15em;
	box-sizing: border-box;
	background: linear-gradient(90deg, rgba(242, 188, 231, 0.24), rgba(255, 248, 242, 0.72), rgba(242, 188, 231, 0.24));
	line-height: 1.5;
	border-bottom: none;
	letter-spacing: .02em;
	font-family: "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", serif;
	border-radius: 0;
	box-shadow: inset 0 -1px 0 rgba(200, 163, 92, 0.18);
}
#content h2::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 4px;
	background: linear-gradient(to bottom, #c8a35c, #da6bc4, #f7d4f0);
}
#content h2::after {
	display: none;
}
#main_content .p-postList h2 {
	border: none;
	background: none;
	padding: 0;
}
#main_content .p-postList h2::before,
#main_content .p-postList h2::after {
	display: none;
}

#content h3 {
	position: relative;
	display: block;
	padding: .2em 0 .35em .9em;
	color: #7f4a57;
	background: none;
	letter-spacing: .03em;
	font-family: "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", serif;
	border: 0;
	border-radius: 0;
	box-shadow: none;
}
#content h3::before {
	position: absolute;
	content: '';
	left: 0;
	top: 0.15em;
	bottom: 0.15em;
	width: 3px;
	background: linear-gradient(180deg, #c8a35c, #da6bc4);
	border-radius: 2px;
	display: block;
}
#content h4{
	border-bottom: 2px solid #ffcdf5;	
	padding-bottom:5px;
}
#content h5{
	color:#ffcdf5;	
}
.p-topArea.c-filterLayer::before {
	background-color: transparent;
}
#top_title_area{
	background: linear-gradient(-43deg, #cd4db3 0%, #f2bce7 100%);
	position: relative;
	z-index: 1;
	overflow: hidden;
	padding-bottom: 60px;
}
#header {
	background-image: linear-gradient(90deg, #c99b3a 0%, #f5e29a 50%, #c99b3a 100%);
	background-position: bottom center;
	background-repeat: no-repeat;
	background-size: 100% 3px;
}
.p-drawer {
	--ark-color--border: rgba(245, 226, 154, 0.22);
	color: #fff7ef;
	background:
		radial-gradient(circle at 20% 18%, rgba(242, 188, 231, 0.2), transparent 32%),
		radial-gradient(circle at 82% 12%, rgba(201, 155, 58, 0.12), transparent 26%),
		linear-gradient(160deg, rgba(53, 19, 33, 0.9) 0%, rgba(103, 37, 66, 0.88) 48%, rgba(66, 23, 44, 0.92) 100%);
}
.p-drawer a,
.p-drawer .c-modalClose,
.p-drawer .c-drawerNav__a {
	color: #fff7ef;
}
.p-drawer .c-drawerNav__a,
.p-drawer .menu-item > a {
	transition: background-color .25s ease, color .25s ease, box-shadow .25s ease;
}
.p-drawer .c-drawerNav__a:hover,
.p-drawer .menu-item > a:hover,
.p-drawer .c-modalClose:hover {
	background: linear-gradient(90deg, rgba(245, 226, 154, 0.12), rgba(242, 188, 231, 0.18));
	box-shadow: inset 3px 0 0 rgba(201, 155, 58, 0.7);
	color: #fffdf8;
}
.p-drawer .__subText {
	color: rgba(255, 247, 239, 0.78);
}
#top_title_area::before,
#top_title_area::after {
	content: '';
	position: absolute;
	top: auto;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 60px;
	background-repeat: repeat-x;
	background-position: 0 center;
	background-size: 600px 60px;
	z-index: 3;
}
#top_title_area::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 60'%3E%3Cpath d='M0,30 C100,5 200,5 300,30 C400,55 500,55 600,30' fill='none' stroke='%23ffcdf5' stroke-width='3'/%3E%3C/svg%3E");
	animation: wave-a 9s linear infinite;
}
#top_title_area::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 60'%3E%3Cpath d='M0,30 C100,55 200,55 300,30 C400,5 500,5 600,30' fill='none' stroke='%23e87fd8' stroke-width='2'/%3E%3C/svg%3E");
	animation: wave-b 12s linear infinite;
}
@keyframes wave-a {
	from { background-position: 0 center; }
	to   { background-position: 600px center; }
}
@keyframes wave-b {
	from { background-position: 600px center; }
	to   { background-position: 0 center; }
}
@media (prefers-reduced-motion: reduce) {
	#top_title_area::before,
	#top_title_area::after { animation: none; }
}
.p-topArea{
	min-height: 20vh;
}
.p-topArea__body{
	color:var(--ark-color--link);
}
.c-gnav__li {
	position: relative;
	transition: color .25s ease, background-color .25s ease, box-shadow .25s ease;
}
.c-gnav__a {
	font-family: "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", serif;
}
.c-gnav__li.-current, .c-gnav__li.focus,{
    color: #f2bce7
	text-decoration:border;
}
.c-gnav__li:hover {
	color:#8f2f74;
	background: linear-gradient(180deg, rgba(255, 248, 252, .96), rgba(242, 188, 231, .34));
	box-shadow: inset 0 -4px 0 #da6bc4, inset 0 1px 0 rgba(200, 163, 92, .45);
}
.c-gnav__li>.c-gnav__a:hover{
	background: transparent;
}
/* lesson-cover */
.lesson-cover.wp-block-cover {
	min-height: 0;
	aspect-ratio: 3 / 2;
	position: relative;
	cursor: pointer;
}
.lesson-cover .wp-block-cover__inner-container {
	position: absolute !important;
	inset: 0;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-weight: bold;
	text-shadow: 0 1px 4px rgba(0,0,0,.5);
	pointer-events: none;
}
.lesson-cover .wp-block-cover__inner-container a {
	color: #fff;
	text-decoration: none;
	pointer-events: auto;
	font-family: "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", serif;
}
.lesson-cover span {
	border-radius: 18px;
}

/* gnPostList03 */
.arkp-gnPostList03.-catBdr .p-postList__category {
  border: 1px solid var(--ark-color_border);
  padding: 0.1em 0.5em;
  font-size: .625rem;
}
/* scFeatureList04 */
.arkp-scFeatureList04 {
    --arkp--icon--width: 128px;
    --arkp--icon--fz: 64px;
    --arkp--icon--bgc: #111;
}
.arkp-scFeatureList04 .ark-block-heading__main {
    font-size: 3rem;
}
.arkp-scFeatureList04 .arkp-scFeatureList04__itemIcon {
    display: flex;
    justify-content: center;
}
.arkp-scFeatureList04 .arkp-scFeatureList04__itemIcon .arkb-inline-icon {
    display: flex;
    align-items: center;
    background: var(--arkp--icon--bgc);
    width: var(--arkp--icon--width);
    height: var(--arkp--icon--width);
    font-size: var(--arkp--icon--fz);
    color: #fff;
    margin: 0 auto;
    border-radius: 50%;
}
.arkp-scFeatureList04 .arkp-scFeatureList04__itemIcon .arkb-inline-icon::after {
    inset: 0;
    margin: auto;
}
.arkp-scFeatureList04 .arkp-scFeatureList04__itemHead {
    font-size: 1.5rem;
    font-weight: bold;
}
.arkp-scFeatureList04 .arkp-scFeatureList04__itemTxt {
    font-size: .875rem;
}

/* gnRichClmn11 */
.arkp-gnRichClmn11 {
    --arkp--clmn-even--shift--y: 6rem;
    padding-bottom: var(--arkp--clmn-even--shift--y);
}
.arkp-gnRichClmn11 .ark-block-column:nth-of-type(2n) {
    transform: translateY(var(--arkp--clmn-even--shift--y));
}
.arkp-gnRichClmn11 .ark-block-column .wp-block-image {
    border-radius: 1rem;
    overflow: hidden;
}
.arkp-gnRichClmn11 .ark-block-column .wp-block-image img {
    width: 100%;
}
.arkp-gnRichClmn11 .arkp-gnRichClmn11__colHeading {
    font-size: 1.25rem;
    font-weight: bold;
}

.subnav__list{
	padding:0;
	margin:0;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: row;
	gap: 20px;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: center;
}
@media (max-width: 781px) {
	.subnav__list{
		justify-content: flex-start;
		}
}
.subnav__item{
	list-style:none;
	padding:0;
	margin:0;
	display: inline-block;
	width: fit-content;
}
.subnav__link{
	    padding: .5em 1em;
	    background: #fff;
	    text-decoration: none;
	    border: 2px solid #a2c8ea;
	    box-sizing: border-box;
	    color: var(--ark-color--link);
	    width: fit-content;
}
.subnav__link:hover{
	background: #edf6ff;
	color: var(--ark-color--link);
}


.footer-nav{
	display:flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	padding-top: 40px;
	position:relative;
	z-index: 0;
}
.footer-nav > * {
  position: relative;
  z-index: 1;
}
.l-footer {
	background: none;
}
#footer{
	position:relative;
	padding-bottom:70px;
}
.footer-nav__list{
    list-style: none;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    align-content: flex-start;
    width: 100%;
}
.footer-nav__item{
}
.footer-nav__sub-list{
	display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    align-content: flex-start;	
	list-style: none;
    padding: 0;
    margin: 0 0 0 1em;
}
.footer-nav__link{
	padding: 5px 10px;
	display: block;
	font-size:14px;
}
@media (max-width: 781px) {
	body{
	background-size: 200%;
	}
	.alignfull{
		width:100%;
		left:0;
	}
	
	.footer-nav__list{
		display: block;
		width: 100vw;
		margin: 0 -1em;
		padding: 0;
		box-sizing: border-box;
	}
	.footer-nav__item{
	margin: 0;
	}
	.footer-nav__sub-list{
		display: block;
		width: 100%;
		padding: 0;
		margin: 0;
	}
	.footer-nav__link{
		padding: 15px 2em;
		text-decoration: none;
		border-bottom: 1px solid #e2e2e2;
	}
	.footer-nav__sub-list .footer-nav__link{
		padding-left: 3em;
	}
}

.footer-cta{
    background: linear-gradient(135deg, #b84b8e 0%, #8f4965 100%);
    color:#fff;
    position: fixed;
    bottom: 0;
    width: 100%;
    height: 70px;
    padding: 10px 0;
    box-sizing: border-box;
    z-index: 100;
    box-shadow: 0 -10px 30px rgba(93, 42, 58, 0.16);
}
.footer-cta a{
    color: inherit;
    text-decoration: none;
}
.footer-cta__wrapper{
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    width: fit-content;
    margin: 0 auto;
}
.footer-cta__title{
}
.footer-cta__title-text{
    font-size: clamp(18px, 2.2vw, 26px);
    font-weight: bold;
    padding-right: 1em;
    letter-spacing: .04em;
    line-height: 1.2;
}
.footer-cta__title-text a{
	font-family: "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", serif;
	display: inline-flex;
	align-items: center;
	gap: .4em;
}
.footer-cta__title-text a::before{
	content: '';
	display: inline-block;
	width: 1em;
	height: 1em;
	background: url("img/ic-mail.svg") no-repeat center / contain;
	flex: 0 0 auto;
}
.footer-cta__contact{

}
.footer-cta__tel-text{
    font-size: 32px;
    font-weight: bold;
    text-decoration: none;
    line-height: 1;
}
.footer-cta__tel{
    text-decoration: none;
    position: relative;
    padding-left: 30px;
    margin-bottom: 5px;
    display: block;
    pointer-events: none; 
    cursor: default;      

}
.footer-cta__tel::before{
    content:"";
    background: url(img/ic-tel.svg) no-repeat center / contain;
    width: 26px;
    height: 100%;
    display: block;
    position: absolute;
    top: 6px;
    left: 0;
}
.footer-cta__text--s{
    font-size: 14px;
}
@media (max-width: 781px) {
    .footer-cta{
        display: flex;
        align-items: center;
    }
    .footer-cta__wrapper{
        align-items: center;
    }
    .footer-cta__title-text{
        font-size: clamp(15px, 4.8vw, 18px);
        padding-right: 1em;
    }
    .footer-cta__contact{

    }
    .footer-cta__tel-text{
        font-size: 20px;
        font-weight: bold;
    }
    .footer-cta__tel{
        text-decoration: none;
        position: relative;
        padding-left: 20px;
        margin-bottom: 5px;
        display: block;
    }

    .footer-cta__tel::before{
        content:"";
        background: url(img/ic-tel.svg) no-repeat center / contain;
        width: 16px;
        height: 100%;
        display: block;
        position: absolute;
        top: 3px;
        left: 0;
    }
    .footer-cta__text--s{
        font-size: 14px;
    }
}

#content table,
.wp-block-table table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	border: 1px solid rgba(166, 70, 99, 0.18);
	border-radius: 18px;
	overflow: hidden;
	box-shadow: 0 10px 28px rgba(93, 42, 58, 0.06);
	background: rgba(255, 250, 252, 0.9);
}

#content table th,
#content table td,
.wp-block-table table th,
.wp-block-table table td {
	border-color: rgba(166, 70, 99, 0.16);
	padding: .8em 1em;
}

#content table th,
.wp-block-table table th {
	background: linear-gradient(180deg, #ffe8f1 0%, #fff6fa 100%);
	color: #8f4965;
	font-weight: 700;
}

#content table tr:last-child td,
#content table tr:last-child th,
.wp-block-table table tr:last-child td,
.wp-block-table table tr:last-child th {
	border-bottom: 0;
}
.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
	background-color: #f7f7f7;
}
.ark-block-faq__item {
	--arkb-qa_color: var(--ark-color--link);
}
.school-link-list {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 1.5rem 0;
	padding: 0;
	list-style: none;
}
.school-link-list--lesson-room {
	justify-content: center;
}
.school-link-list--faq-headline {
	justify-content: center;
}
.school-link-list__item {
	margin: 0;
}
.school-link-list__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: .7em 1.35em;
	border: 1px solid rgba(200, 163, 92, 0.38);
	border-radius: 4px;
	background: linear-gradient(180deg, #f3d6e1 0%, #eab9cc 100%);
	box-shadow: 0 10px 22px rgba(166, 70, 99, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.56);
	color: #6f2d45;
	font-family: "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", serif;
	font-size: .95rem;
	line-height: 1.4;
	text-decoration: none;
	transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease, color .2s ease;
}
.school-link-list__link:hover {
	background: linear-gradient(180deg, #efcade 0%, #e1a8be 100%);
	box-shadow: 0 14px 26px rgba(166, 70, 99, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.66);
	color: #62253b;
	transform: translateY(-1px);
}
@media (max-width: 600px) {
	.school-link-list {
		gap: 10px;
	}
	.school-link-list__item {
		flex: 1 1 calc(50% - 5px);
	}
	.school-link-list__link {
		width: 100%;
		padding-left: 1em;
		padding-right: 1em;
	}
	#content .wp-block-table.lesson-table,
	#content .lesson-table.wp-block-table {
		display: block;
		max-width: 100%;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		padding-bottom: .35rem;
	}
	#content .wp-block-table.lesson-table > table,
	#content table.lesson-table {
		width: max-content;
		min-width: 100%;
	}
	#content .wp-block-table.lesson-table th,
	#content .wp-block-table.lesson-table td,
	#content table.lesson-table th,
	#content table.lesson-table td {
		white-space: nowrap;
	}
}

#content figure,
.wp-block-image {
	border-radius: 18px;
	overflow: hidden;
}

#content img,
.wp-block-image img {
	box-shadow: 0 14px 30px rgba(93, 42, 58, 0.10);
}
#content .wp-block-columns .wp-block-image img {
	display: block;
	border-bottom-left-radius: 18px;
	border-bottom-right-radius: 18px;
}

.smf-form .smf-item__label{
	margin-top: 1em;
}
.smf-form mark{
	font-size:small;
}
.l-main__body>.c-postContent{
	margin-top: 2rem;
}
.c-copyright,
.l-footer__nav{
	font-family: "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", serif;
}
