@charset "utf-8";

/*//////////////////////////////////////////////////////////

Copyright (C) apricot-design All Rights Reserved.
------------------------------------------------------------
CSS information
 file name  :  layout.css
 style info :  レイアウトファイル
 admin info :  apricot-design
 
//////////////////////////////////////////////////////////*/

/*
0:Base
------------------------------------------------------------
*/
body {
	font-family: 'Noto Sans Japanese', "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ",Meiryo,"ＭＳ Ｐゴシック",Arial,Verdana,sans-serif;
	color: #333;
	font-size: 13px;
	line-height: 1.6em;
	text-align: left;
	letter-spacing: 0.05em;
	-webkit-text-size-adjust: 100%;
}
.win body {
	font-family: 'Noto Sans Japanese', "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ",Meiryo,"ＭＳ Ｐゴシック",Arial,Verdana,sans-serif;
}
a, a:link, a:active, a:visited {
	text-decoration: none;
	color: #333;
	transition: .5s;
	-webkit-transition: .5s;
	-o-transition: .5s;
	-ms-transition: .5s;
}
a:hover {
	color: #feb54c;
}
a:focus {
	outline: none;
}
a:hover, a:active {
	outline: 0;
}
.opacity:hover{
	-moz-opacity: .7;
	-ms-opacity: .7;
	-webkit-opacity: .7;
	opacity: .7;
}
img{
    vertical-align: top;
}
.sp, .ssp{
	display: none;
}
.pc, .pctb{
	display: block;
}

/*
1:Base
------------------------------------------------------------
*/
#containerWrap{
    background: url(../images/bg.jpg) repeat-y top;
    background-size: 100%;
	overflow: hidden;
}
/*#container {
    overflow: hidden;
    clear: both;
    width: 100%;
    margin: 0 auto;
    padding: 0;
}*/
#contentTop {
    width: 1000px;
    margin: 0 auto 140px;
}
#content {
	position: relative;
    width: 1000px;
    margin: 0 auto 70px;
}
#content:after {
	content: '';
	display: block;
	clear: both;
}
.mainImg {
	width: 100%;
}
#main {
	float: right;
	width: 65%;
    font-size: 1.1em;
    line-height: 1.8em;
}
#sub {
	float: left;
	width: 28%;
    font-size: 1.1em;
}
#breadcrumbList {
	margin-bottom: 10px;
    font-size: 1.1em;
}
.wp-pagenavi {
	text-align: center;
    font-size: .9em;
}
span.current {
    margin-right: 1%;
    border: 1px solid #000;
    padding: 3px 8px;
    background: #fff57f;
}
a.page.larger, a.previouspostslink, a.page.smaller, span.extend, span.extend, a.nextpostslink, a.first {
    margin-right: 1%;
    border: 1px solid #000;
    padding: 3px 8px;
}
.section {
    overflow: hidden;
    background: #fff;
    border-radius: 20px;
    padding: 3% 5% 5%;
}
.section_02 {
   margin-bottom: 80px;
}
ul.pagenation {
    margin: 5% 0;
    letter-spacing: -.5em;
}
ul.pagenation li {
    display: inline-block;
    width: 20%;
    vertical-align: top;
    letter-spacing: normal;
}
ul.pagenation li:nth-child(2){
    width: 60%;
    text-align: center;
}
ul.pagenation li:last-child{
    text-align: right;
}

.sectionC {
	margin-bottom: 2em;
	clear: both;
	overflow: hidden;
	text-align:center;
}
.leftCol {
	float:left;
	padding: 10px;
	width: 265px;
}
.rightCol {
	float:right;
	padding: 10px;
	width: 380px;
}
.leftBox {
	float: left;
}
.rightBox {
	float: right;
}
.ate {
	padding:15px;
	border: 1px dotted #1d1d1d;
}
.box {
	padding: 15px;
	background: #F7F7F7;
}
article {
	background-color: #fff;
	padding-bottom: 2em;
}
/*
2:h_tag
------------------------------------------------------------
*/
h2.topTi {
    text-align: center;
    background: url(../images/makiTop.png) no-repeat top;
    padding: 20px 0 50px;
    background-size: 100%, 100%;
}
h2.mainTi {
    font-size: 1.6em;
    text-align: right;
    color: #fff;
    padding: 43px 4%;
    margin-bottom: 3%;
}
h2.title {
    font-size: 1.5em;
    border-bottom: 1px solid #e51a15;
    background: url(../images/flower4.svg) no-repeat left;
	background-size: 35px 35px;
    padding-left: 40px;
    padding-bottom: 10px;
    margin-bottom: 10px;
}
h2.Ti {
    border-bottom: 1px solid #e62821;
    font-size: 1.45em;
    padding: 0 0 10px;
    margin-bottom: 3%;
}
h3.topTi {
    margin-bottom: 30px;
}
h3.mainTi {
    font-size: 1.2em;
    color: #fff;
    font-weight: bold;
    padding: 10px;
    letter-spacing: .1em;
    margin-bottom: 15px;
}
h3.subTi {
    background: #e2b766;
    border-radius: 30px;
    padding: 1em 1em 1em 90px;
    margin-bottom: 6%;
    position: relative;
}
h3.subTi:before{
    content: url(../images/flower2.svg);
    width: 55px;
	height: 42px;
    position: absolute;
    left: 2%;
    bottom: 0;
}
h3.subTi img{
	height: 30px;
}
h3.title {
    border-bottom: 1px solid #e62821;
    font-size: 1.45em;
    padding: 0 0 10px 50px;
    position: relative;
    margin-bottom: 3%;
}
h3.title:before{
	content: '';
	width: 40px;
	position: absolute;
	left: 0;
	bottom: 0;
	height: 36px;
	background: url(../images/flower3.png) no-repeat left;
	background-size: 100%;
}
h3.Ti {
    font-size: 1.3em;
    font-weight: bold;
    margin-bottom: 1em;
}
h3.Ti span{
    font-size: .8em;
    display: block;
    margin-top: 5px;
}
h4.mainTi {
    color: #ff9331;
    font-size: 1.3em;
    font-weight: bold;
    margin-bottom: 5%;
    border-bottom: 1px dashed #ff9331;
    padding: 0 0 10px 50px;
    position: relative;
}
h4.mainTi:before{
    content: url(../images/flower.svg);
    width: 35px;
	height: 35px;
    position: absolute;
    left: 0;
}
h4.subTi {
	font-weight: bold;
	font-size: 116%;
}
.youtubeTi {
    max-width: 520px;
    margin: 0 auto 30px;
}
.youtubeTi img {
    max-width: 100%;
}
/*
3:Common style
------------------------------------------------------------
*/
.more {
    margin-top: 5px;
    position: relative;
    padding-right: 5px;
    width: 90px;
}
.more:after{
    position: absolute;
    content: '';
    top: 40%;
    right: 0;
    width: 5px;
    height: 5px;
    border: 0px;
    border-top: solid 1px #ed6051;
    border-right: solid 1px #ed6051;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.more a:hover{
    color: #ed6051;
}
.day {
	font-size: .9em;
    font-weight: bold;
    letter-spacing: .1em;
}
.btn {
	text-align: center;
    background: #ff7f00;
    width: 250px;
    margin: 0 auto;
    font-size: 1.2em;
}
.btn a{
    color: #fff;
    padding: 12px;
    display: block;
    position: relative;
}
.btn a:before{
    position: absolute;
    content: '';
    top: 45%;
    left: 5%;
    width: 5px;
    height: 5px;
    border: 0px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg); 
    transition: .5s;
	-webkit-transition: .5s;
	-o-transition: .5s;
	-ms-transition: .5s;
}
.btn a:hover::before{
    left: 90%;
}
.tel {
	font-size: 1.35em;
    font-weight: bold;
    margin-bottom: 10px;
}
.photoL {
	float: left;
}
.photoR {
	float: right;
}
.bold {
	font-weight: bold;
}
.name {
    font-size: 1.1em;
    padding-left: 45px;
    position: relative;
    margin-bottom: 5px;
    line-height: 1.7em;
}
.name:before {
    content: url(../images/flower2.svg);
    position: absolute;
    width: 40px;
    left: 0;
	height: 33px;
}
.name span{
    font-size: 1.1em;
	margin-right: 2em;
}
p.date {
    font-size: 1.2em;
    text-align: right;
    margin-bottom: 1em;
}




.alignleft {
	float: left;
	padding: 0 15px 15px 0;
}
.alignright {
	float: right;
	padding: 0 0 15px 15px;
}
.aligncenter {
	display: block;
	margin:0 auto;
}
.map {
	padding-bottom: 15px;
}
.disc {
	padding-bottom: 0px;
	font-size: 93%;
	line-height: 1.6em;
}
.hr {
	clear: both;
	height: 1px;
	margin: 1em 0;
	border-top: #999 1px dotted;
}
.priceMini {
	font-size: 77%;
	text-align:right;
}
.imgTi {
	margin-bottom: 15px;
}
.imgTi0 {
	margin-bottom: 0px;
}
.imgTi5 {
	padding-bottom: 5px;
}
.imgTi10 {
	padding-bottom: 10px;
}
.imgTi15 {
	padding-bottom: 15px;
}
.imgTi20 {
	padding-bottom: 20px;
}

/*
4:Header
------------------------------------------------------------
*/
header {
    overflow: hidden;
    clear: both;
    margin: 0 auto;
    width: 100%;
	z-index: 2;
}
.headerBox {
    width: 1000px;
    padding: 0;
    /*margin: 100px auto 120px;*/
    margin: 100px auto 44px;
    position: relative;
}
h1.top {
    text-align: center;
    position: relative;
    height: 715px;
    width: 525px;
    margin: 0 auto;
}
h1.top:after {
    content: url(../images/hello.png);
    width: 142px;
    height: 80px;
    display: inline-block;
    position: absolute;
    bottom: 210px;
    left: 0;
    opacity: 0;
    transition: all .2s; 
}
h1.top:hover::after{
    opacity: 1;
}
h1.top a {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.logo{
    
}
#gnavi {
    margin: 0px auto;
    clear: both;
    text-align: center;
}
#gnavi li {
    display: inline-block;
    padding: 0;
}
#gnavi li a{
    display: block;
    -moz-transition: -moz-transform 0.5s linear;
    -webkit-transition: -webkit-transform 0.5s linear;
    -o-transition: -o-transform 0.5s linear;
    -ms-transition: -ms-transform 0.5s linear;
    transition: transform 0.5s linear;
    height: 180px;
    width: 190px;
}
#gnavi li:nth-child(4) a, #gnavi li:nth-child(3) a {
    height: 195px;
}
#gnavi li:nth-child(5) a {
    height: 185px;
}
#gnavi li a:hover{
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -o-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
}
#nav01 {
    position: absolute;
    top: 20px;
    left: 80px;
    /* background: url(../images/classes_off.png) no-repeat 20% bottom; */
    background: url(../images/classes_on.png) no-repeat 20% bottom;
}
#nav01:hover{
    /* background: url(../images/classes_on.png) no-repeat 20% bottom; */
    background: url(../images/classes_off.png) no-repeat 20% bottom;
}
#nav02 {
    position: absolute;
    top: 250px;
    left: 0;
    /* background: url(../images/aboutus_off.png) no-repeat 20% bottom; */
    background: url(../images/aboutus_on.png) no-repeat 20% bottom;
}
#nav02:hover{
    /* background: url(../images/aboutus_on.png) no-repeat 20% bottom; */
    background: url(../images/aboutus_off.png) no-repeat 20% bottom;
}
#nav03 {
    position: absolute;
    bottom: 70px;
    left: 40px;
    /* background: url(../images/testimonials_off.png) no-repeat 20% bottom; */
    background: url(../images/testimonials_on.png) no-repeat 20% bottom;
}
#nav03:hover{
    /* background: url(../images/testimonials_on.png) no-repeat 20% bottom; */
    background: url(../images/testimonials_off.png) no-repeat 20% bottom;
}
#nav04 {
    position: absolute;
    top: 10px;
    right: 70px;
    /* background: url(../images/enquiries_off.png) no-repeat 20% bottom; */
    background: url(../images/enquiries_on.png) no-repeat 20% bottom;
}
#nav04:hover{
    /* background: url(../images/enquiries_on.png) no-repeat 20% bottom; */
    background: url(../images/enquiries_off.png) no-repeat 20% bottom;
}
#nav05 {
    position: absolute;
    right: 0;
    top: 250px;
    /* background: url(../images/blog_off.png) no-repeat 20% bottom; */
    background: url(../images/blog_on.png) no-repeat 20% bottom;
}
#nav05:hover{
    /* background: url(../images/blog_on.png) no-repeat 20% bottom; */
    background: url(../images/blog_off.png) no-repeat 20% bottom;
}
#nav06 {
    position: absolute;
    bottom: 70px;
    right: 30px;
    /* background: url(../images/access_off.png) no-repeat 20% bottom; */
    background: url(../images/access_on.png) no-repeat 20% bottom;
}
#nav06:hover{
    /* background: url(../images/access_on.png) no-repeat 20% bottom; */
    background: url(../images/access_off.png) no-repeat 20% bottom;
}
.egg:hover {
    animation: egg 2.5s linear 0s 1;
}
@keyframes egg {
  0%   { transform: translate(0%, 0%); }
  5%   { transform: translate(10%, 0%) rotate(10deg); }
  25%  { transform: translate(20%, 0%) rotate(20deg); }
  30%  { transform: translate(-10%, 0%) rotate(-10deg); }
  35%  { transform: translate(-15%, 0%) rotate(-15deg); }
  45%  { transform: translate(10%, 0%) rotate(10deg); }
  50%  { transform: translate(15%, 0%) rotate(15deg); }
  60%  { transform: translate(-5%, 0%) rotate(-5deg); }
  65%  { transform: translate(-7%, 0%) rotate(-7deg); }
  75%  { transform: translate(0%, 0%) rotate(0deg); }
  100% { transform: translate(0%, 0%) rotate(0deg); }
}

@-moz-keyframes egg {
  0%   { transform: translate(0%, 0%); }
  5%   { transform: translate(10%, 0%) rotate(10deg); }
  25%  { transform: translate(20%, 0%) rotate(20deg); }
  30%  { transform: translate(-10%, 0%) rotate(-10deg); }
  35%  { transform: translate(-15%, 0%) rotate(-15deg); }
  45%  { transform: translate(10%, 0%) rotate(10deg); }
  50%  { transform: translate(15%, 0%) rotate(15deg); }
  60%  { transform: translate(-5%, 0%) rotate(-5deg); }
  65%  { transform: translate(-7%, 0%) rotate(-7deg); }
  75%  { transform: translate(0%, 0%) rotate(0deg); }
  100% { transform: translate(0%, 0%) rotate(0deg); }

}
@-webkit-keyframes egg {
  0%   { transform: translate(0%, 0%); }
  5%   { transform: translate(10%, 0%) rotate(10deg); }
  25%  { transform: translate(20%, 0%) rotate(20deg); }
  30%  { transform: translate(-10%, 0%) rotate(-10deg); }
  35%  { transform: translate(-15%, 0%) rotate(-15deg); }
  45%  { transform: translate(10%, 0%) rotate(10deg); }
  50%  { transform: translate(15%, 0%) rotate(15deg); }
  60%  { transform: translate(-5%, 0%) rotate(-5deg); }
  65%  { transform: translate(-7%, 0%) rotate(-7deg); }
  75%  { transform: translate(0%, 0%) rotate(0deg); }
  100% { transform: translate(0%, 0%) rotate(0deg); }

}    
@-o-keyframes egg {
  0%   { transform: translate(0%, 0%); }
  5%   { transform: translate(10%, 0%) rotate(10deg); }
  25%  { transform: translate(20%, 0%) rotate(20deg); }
  30%  { transform: translate(-10%, 0%) rotate(-10deg); }
  35%  { transform: translate(-15%, 0%) rotate(-15deg); }
  45%  { transform: translate(10%, 0%) rotate(10deg); }
  50%  { transform: translate(15%, 0%) rotate(15deg); }
  60%  { transform: translate(-5%, 0%) rotate(-5deg); }
  65%  { transform: translate(-7%, 0%) rotate(-7deg); }
  75%  { transform: translate(0%, 0%) rotate(0deg); }
  100% { transform: translate(0%, 0%) rotate(0deg); }

}
@-ms-keyframes egg {
  0%   { transform: translate(0%, 0%); }
  5%   { transform: translate(10%, 0%) rotate(10deg); }
  25%  { transform: translate(20%, 0%) rotate(20deg); }
  30%  { transform: translate(-10%, 0%) rotate(-10deg); }
  35%  { transform: translate(-15%, 0%) rotate(-15deg); }
  45%  { transform: translate(10%, 0%) rotate(10deg); }
  50%  { transform: translate(15%, 0%) rotate(15deg); }
  60%  { transform: translate(-5%, 0%) rotate(-5deg); }
  65%  { transform: translate(-7%, 0%) rotate(-7deg); }
  75%  { transform: translate(0%, 0%) rotate(0deg); }
  100% { transform: translate(0%, 0%) rotate(0deg); }

}
@keyframes egg {
  0%   { transform: translate(0%, 0%); }
  5%   { transform: translate(10%, 0%) rotate(10deg); }
  25%  { transform: translate(20%, 0%) rotate(20deg); }
  30%  { transform: translate(-10%, 0%) rotate(-10deg); }
  35%  { transform: translate(-15%, 0%) rotate(-15deg); }
  45%  { transform: translate(10%, 0%) rotate(10deg); }
  50%  { transform: translate(15%, 0%) rotate(15deg); }
  60%  { transform: translate(-5%, 0%) rotate(-5deg); }
  65%  { transform: translate(-7%, 0%) rotate(-7deg); }
  75%  { transform: translate(0%, 0%) rotate(0deg); }
  100% { transform: translate(0%, 0%) rotate(0deg); }

}
#headerWrap {
    background: #fff57f;
    border-top: 3px solid #e94328;
    border-bottom: 3px solid #e94328;
    margin: 70px 0 40px;
}
.headerBox2 {
    width: 1000px;
    margin: 0 auto;
    position: relative;
}
h1.secound {
    width: 130px;
    position: absolute;
    top: -45px;
}
#gnavi2{
    overflow: hidden;
}
#gnavi2 ul {
    width: 850px;
    float: right;
    letter-spacing: -.5em;
    margin: 10px 0;
}
#gnavi2 li {
    letter-spacing: normal;
    vertical-align: top;
    background: #fff;
    border-radius: 8px;
    display: inline-block;
    width: 115px;
    text-align: center;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    margin-right: 25px;
    position: relative;
}
#gnavi2 li:after {
    position: absolute;
    content: url(../images/line.png);
    right: -14px;
    top: -10px;
}
#gnavi2 li img{
    margin-top: -10px;
}
#gnavi2 li a{
    display: block;
    padding-bottom: 10px;
}
/*
5:Common table
------------------------------------------------------------
*/
.basicTable  {
	width: 100%;
    font-size: 1.25em;
}
.basicTable tr{
    border-bottom: 1px dashed #ff97a9;
    display: table;
    margin-bottom: 10px;
    width: 100%;
}
.basicTable th {
    width: 50%;
    font-weight: bold;
    text-align: left;
    position: relative;
    font-size: 1.1em;
    padding: 5px 0 10px 50px;
}
.basicTable th:before{
    content: url(../images/flower.svg);
    position: absolute;
    left: 0;
    width: 35px;
    top: 0;
}
.basicTable th span {
    font-size: .75em;
    margin-left: 1em;
    font-weight: normal;
}
.basicTable td {
    width: 50%;
    text-align: right;
    padding-bottom: 10px;
    padding: 5px 0 10px 0;
    white-space: nowrap;
}
.basicTable2 {
    width: 100%;
    font-size: 1.1em;
    border-top: 1px dashed #ffb900;
}
.basicTable2 tr {
    border-bottom: 1px dashed #ffb900;
    width: 100%;
	display: table;
}
.basicTable2 th {
    width: 10%;
    text-align: left;
    font-weight: normal;
    vertical-align: top;
    padding: 3px 0;
}
.basicTable2 td {
    width: 90%;
    text-align: left;
    vertical-align: top;
    padding: 3px 0;
}
.inner2 {
    width: 90%;
    margin: 0 auto;
}
a.youtube_btn {
    display: block;
    margin: 0 auto 70px;
    max-width: 270px;
}
a.youtube_btn img {
	width: 100%;
}


.basicTable3  {
	margin-bottom: 2em;
	width: 100%;
	border: 1px #E3E3E3 solid;
}
.basicTable3 th {
	padding: 3%;
	width: 19%;
    border-bottom: 3px #E3E3E3 solid;
    font-weight: bold;
    text-align: left;
}
.basicTable3 td {
	padding: 3%;
	width: 34%;
    border-bottom: 1px #E3E3E3 solid;
    text-align: left;
	vertical-align: top;
}
table.menuTable {
	margin-bottom:2em;
}
table.menuTable th {
	padding: 3%;
	width: 24%
}
table.menuTable td {
	padding: 3%;
	width: 14%;
}

/*
6:Common UL
------------------------------------------------------------
*/
ul.bnrList {
	margin-bottom: 2em;
	margin-right:-20px;
	overflow:hidden;
}
ul.bnrList li {
	padding-bottom: 10px;
	float:left;
	margin-right:20px;
}
ul.menu {
}
ul.menu li a {
	width: 215px;
	padding: 8px 15px 8px 20px;
	display: block;
	border-bottom: 1px dotted #604c3f;
	margin-top: -1px;
	font-size: 100%;
}
ul.menu li a:hover {
	text-decoration: none;
	background: #111;
	color: #FFF;
}
ul.infoList li {
	padding-bottom: 8px;
	padding-left: 15px;
	margin-bottom: 8px;
	border-bottom: 1px dotted #604c3f;
}
ul.basicList {
	margin-bottom: 2em;
}
ul.basicList li {
	padding: 0 0 5px 20px;
	background: url(migi3.png) no-repeat 0 3px;
	margin-bottom: 5px;
}
ul.photo {
    letter-spacing: -.5em;
    margin-bottom: 3%;
}
ul.photo li {
    letter-spacing: normal;
    vertical-align: top;
    display: inline-block;
    width: 32%;
    margin: 0 2% 2% 0;
}
ul.photo li:nth-child(3n){
    margin-right: 0;
}
ul.photo li img {
	width: 100%;
}

/*
7:Common DL
------------------------------------------------------------
*/
dl.basicList {
	margin-bottom:2em;
	width: 100%;
}
dl.basicList dt {
	clear: left;
 	float: left;
	margin: 0 0 0.8em;
	width: 12.5em;
	border-left: solid 2px #CCC;
 	padding-left: 5px;
 	overflow: hidden;
 	color: #000;
}
dl.basicList dd {
	margin-bottom: 0.8em;
	margin-left: 12.5em;
	overflow: hidden;
}
dl.menuList {
	width: 265px;
	height: 240px;
}
dl.menuList dt {
	width: 265px;
	padding-bottom: 5px;
}
dl.menuList dd {
	width: 265px;
	padding-bottom: 15px;
	text-align: left;
	line-height: 1.6em;
}

/*
8:top
------------------------------------------------------------
*/
.moreBg{
    background: url(../images/makiBtm.png) no-repeat top;
    width: 100%;
    text-align: center;
    background-size: 100%, 100%;
}
.btn-more {
    cursor: pointer;
    position: relative;
    padding: 40px 0 5px;
    width: 128px;
    margin: 0 auto;
    opacity: 0;
}
.btn-more::before {
    position: absolute;
    content: url(../images/open.png);
    content: url(../images/open_jp.png);
    display:inline-block;
    left: 0;
    right: 0;
    bottom: 30%;
    margin: auto;
    width: 67px;
    height: 30px;
}
.btn-more:hover::before {
	content: url(../images/open_jp.png);
    content: url(../images/open.png);
	width: 40px;
    height: 27px;
}
.btn-more.close::before {
    position: absolute;
    content: url(../images/close.png);
    display:inline-block;
    left: 0;
    right: 0;
    bottom: 30%;
    margin: auto;
    width: 71px;
    height: 32px;
}
.btn-more.close:hover::before {
	content: url(../images/close.png);
	width: 71px;
    height: 32px;
}
.dropdown {
    background: url(../images/maki.png) repeat-y;
    overflow: hidden;
    background-size: 100%;
    padding: 30px 0;
}
.inner{
    width: 84%;
    margin: 0 auto;
}
p.topP {
    /* font-size: 1.15em; */
    font-size: 1.25em;
    font-weight: 700;
    line-height: 1.8em;
    margin-bottom: 60px;
    text-align: center;
}
ul.blogList {
    letter-spacing: -.5em;
    margin-bottom: 30px;
}
ul.blogList li {
	letter-spacing: normal;
    vertical-align: top;
    display: inline-block;
    width: 30%;
    margin-right: 5%;
}
ul.blogList li:nth-child(3n){
    margin-right: 0;
}
ul.blogList li a{
    color: #333;
}
ul.blogList li dt {
    margin-bottom: 15px;
    /*max-height: 155px;*/
    overflow: hidden;
    position: relative;
}
ul.blogList li dt::before {
    display: block;
    content: '';
    padding-top: 123%;
}
ul.blogList li dt img{
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    object-fit: cover;
    top: 0;
}
ul.blogList li dd{
    
}
ul.blogList li .Ti{
    font-size: 1.15em;
    border-bottom: 1px solid #ed6051;
    margin-bottom: 5px;
    padding-bottom: 5px;
}
.calender img {
	width: 100%;
}
.calender {
	padding: 1em 0;
}
/*
9:side
------------------------------------------------------------
*/
p.sideTi {
    font-size: 1.3em;
    border-bottom: 1px solid #e51a15;
    background: url(../images/flower4.svg) no-repeat left;
    padding-left: 40px;
    padding-bottom: 15px;
    margin-bottom: 15px;
	background-size: 35px 35px;
}
ul.sideList {
    margin-bottom: 10%;
}
ul.sideList li {
    padding-left: 1em;
    position: relative;
    margin-bottom: 1em;
}
ul.sideList li:before{
    position: absolute;
    content: '';
    top: 20%;
    left: 0;
    width: 5px;
    height: 5px;
    border: 0px;
    border-top: solid 1px #ff0000;
    border-right: solid 1px #ff0000;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
ul.sideList2 li {
    margin-bottom: 3%;
}

/*
10:Footer
------------------------------------------------------------
*/
#footerWrap {
    width: 100%;
    overflow: hidden;
    background: #fff;
    border: 1px solid #000;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    padding: 35px 0;
    font-size: 1.1em;
}
#footer {
    width: 1000px;
    margin: 0 auto;
}
.footerLeft {
	float: left;
	width: 40%;
}
.footerLeft dt{
    float: left;
    width: 30%;
}
.footerLeft dd {
    float: right;
    width: 70%;
    margin-top: 35px;
}
img.fLogo {
    width: 96px;
}
.footerRight {
    float: right;
    width: 50%;
    margin-top: 70px;
}
.copy {
	text-align: right;
}

/*
11:option/contactform
------------------------------------------------------------
*/
table.contactform  {
    margin-bottom: 2em;
    width: 100%;
    border-top: 1px #b9b194 solid;
    border-left: 1px #b9b194 solid;
    border-right: 1px #b9b194 solid;
}
table.contactform th {
    width: 25%;
    border-bottom: 1px #b9b194 solid;
    border-width: 0 0 1px 1px;
    background: #fff57f;
    font-weight: bold;
    font-size: 1.1em;
    text-align: center;
    padding: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}
table.contactform th span {
    color: #fff;
    background: #ff5c68;
    text-align: center;
    font-size: .85em;
    padding: 1px 8px;
    font-weight: normal;
    border-radius: 3px;
    margin-right: .5em;
	float: left;
}
table.contactform td {
    width: 75%;
    border-bottom: 1px #b9b194 solid;
    border-width: 0 0 1px 1px;
    text-align: left;
    vertical-align: top;
    padding: 10px;
    background: #fff;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}
table.contactform td div label {
	width: auto;
	margin-right: 1em;
}
.keiken_txt textarea {
	margin-top: .5em;
	height: 50px
}
table.contactform td span.yubin {
    color: #868686;
    font-size: .9em;
    margin-left: 1em;
    margin-bottom: 10px;
    display: inline-block;
    display: block;
}
table.contactform td p {
	margin-top: .5em;
	position: relative;
	padding-left: 1em;
}
table.contactform td p:before {
	position: absolute;
	content: '※';
	left: 0;
	top: 0;
	font-size: 1em;
}
table.contactform td .check_camp .mwform-checkbox-field:nth-child(4) span.mwform-checkbox-field-text {
    background: #FFC7DE;
}
.orangeFont {
	color: #ff7f00;
    line-height: 1.3em;
}
input[type="text"] {
    padding: 5px;
    border-radius: 4px;
    border: 1px solid #aaa28d;
    width: 80%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}
span.mwform-tel-field input{
    width: 25%!important;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}
input#zip, input#zip1 {
    border-radius: 3px;
    border: 1px solid #aaa28d;
    width: 15%;
    padding: 5px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}
.mwform-checkbox-field label {
    width: 100%;
    display: inline-block;
}
.mw_wp_form .horizontal-item + .horizontal-item {
    margin-left: 0!important;
}
textarea {
    width: 100%;
    padding: 5px;
    border-radius: 4px;
    border: 1px solid #aaa28d;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    height: 200px;
}
p.contactBtn input {
    text-align: center;
    background: #ff7f00 url(../images/right.svg) no-repeat 93%;
    width: 220px;
    margin: 0 auto;
    font-size: 1.2em;
    border: none;
    color: #fff;
    padding: 7px;
    display: block;
    background-size: 5px 10px;
    margin-bottom: 10px;
}
.mw_wp_form .error {
    font-size: .9em!important;
    color: #ff0000!important;
}



/*
12:option/wordpress
------------------------------------------------------------
*/
.classesBox h2.mainTi {
    background: url(../images/classesTi.png) no-repeat top left;
	background-size: 100%;
}
.accordionlist>dt{
    display:block;
    border-bottom: 1px solid #d3d3d3;
	cursor: pointer;
    width: 100%;
    padding-bottom: 30px;
}
.accordionlist dt .title img{
    float: left;
    width: 100px;
}
.accordionlist dt .title .Ti {
    font-size: 2em;
    font-weight: bold;
    float: left;
    margin: 5% 5% 0;
}
.accordionlist dt .title .Ti span{
    font-size: .6em;
    color: #000;
    margin-bottom: 10px;
    display: block;
}
.accordionlist>dd{
    display:none;
	margin-top: 30px;
    font-size: 1.15em;
    line-height: 1.6em;
}
.accordion_icon,
.accordion_icon span {
	display: inline-block;
	transition: all .5s;
	box-sizing: border-box;
}
.accordion_icon {
	position: relative;
	width: 10px;
	height: 10px;
	float: right;
    margin-top: 10%;
}
.accordion_icon span {
    position: absolute;
    right: 0;
    width: 13px;
    height: 2px;
    background-color: #666;
}
.accordion_icon span:nth-of-type(1) {
    top: 9px;
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
}
.accordion_icon span:nth-of-type(2) {
    top: 9px;
    left: -11px;
    transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
    -moz-transform: rotate(-135deg);
    -ms-transform: rotate(-135deg);
    -o-transform: rotate(-135deg);
}
.accordion_icon.active span:nth-of-type(1) {
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
}
.accordion_icon.active span:nth-of-type(2) {
    transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    -o-transform: rotate(135deg);
}
ul#accordion {
    width: 90%;
    margin: 0 auto;
}
ul#accordion>li{
    overflow: hidden;
    margin-bottom: 5%;
}
ul#accordion li:first-child .accordionlist dt .title .Ti{
    color: #ff556a;
}
ul#accordion li:nth-child(2) .accordionlist dt .title .Ti{
    color: #2ebfff;
}
ul#accordion li:nth-child(2) .basicTable th{
    color: #2ebfff;
}
ul#accordion li:nth-child(3) .accordionlist dt .title .Ti{
    color: #90c400;
}
ul#accordion li:nth-child(3) .basicTable th{
    color: #90c400;
}
/* ul#accordion li:last-child .accordionlist dt .title .Ti{
    color: #ff9331;
} */
ul#accordion li:last-child{
    margin-bottom: 0;
}
.accordionlist dd dl {
    overflow: hidden;
    margin-bottom: 30px;
}
.accordionlist dd dl:last-child {
    margin-bottom: 0;
}
.accordionlist dd dl dt{
    float: left;
    width: 46%;
}
.accordionlist dd dl dt img{
    width: 100%;
}
.accordionlist dd dl dt img.photoL, .accordionlist dd dl dt img.photoR {
    width: 49%;
    margin-bottom: 0;
}
.accordionlist dd dl dd{
    float: right;
    width: 50%;
    display: block;
}
.pinkBg {
    background: #ff97a9;
}
.pinkFont th{
    color: #ff97a9;
}
.greenBg{
	background: #b2cc56;
}
.greenBg tr{
    background: #b2cc56;
}
.greenFont tr{
    border-color: #b2cc56;
}
.greenFont th{
    color: #b2cc56;
}
.blueBg {
    background: #a6c1e8;
}
.blueFont tr{
    border-color: #a6c1e8;
}
.blueFont th{
    color: #a6c1e8;
}
.small {
    font-size: .9em;
}
.redFont {
    color: #ff0000;
}
.aboutBox h2.mainTi {
    background: url(../images/aboutTi.svg) no-repeat top left;
}
dl.aboutBox {
    font-size: 2em;
    color: #eb643e;
    font-weight: bold;
    line-height: 1.8em;
    overflow: hidden;
    margin-bottom: 5%;
}
dl.aboutBox dt{
    float: left;
    width: 65%;
}
dl.aboutBox dd {
    float: right;
    width: 32%;
    margin-top: 4%;
}
dl.aboutBox dd img{
	width: 100%;
}
p.subP {
    font-size: 1.15em;
    line-height: 1.6em;
    margin-bottom: 5%;
}
dl.aboutImg {
    overflow: hidden;
    margin-bottom: 5%;
}
dl.aboutImg dt{
    float: left;
    width: 67%;
}
dl.aboutImg dd{
    float: right;
    width: 31.5%;
}
dl.aboutImg img{
    width: 100%;
}
dl.staff{
    overflow: hidden;
    margin-bottom: 4%;
}
dl.staff dt{
    float: left;
    width: 40%;
}
dl.staff dt img{
	width: 100%;
}
dl.staff dd{
    float: right;
    width: 58%;
}
p.subP2 {
    font-size: 1.1em;
    line-height: 1.6em;
}
.m8p{
    margin-bottom: 8%;
}
.aboutBox {
    margin-bottom: 3%;
}
.photoBox h2.mainTi {
    background: url(../images/photoTi.svg) no-repeat top left;
}
.enquiriesBox h2.mainTi {
    background: url(../images/enquiriesTi.svg) no-repeat top left;
}
.enquiriesBox .inner2 {
    background: #f9f3d9;
    border-radius: 10px;
    padding: 7% 7% 3%;
        -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}
.enquiriesBox dl{
    overflow: hidden;
    margin-bottom: 5%;
}
.enquiriesBox dt{
	float: left;
    font-size: 2.5em;
    font-weight: 700;
    width: 50%;
    line-height: 1.5em;
}
.enquiriesBox dt a{
    color: #ff7f00;
}
.enquiriesBox dt img {
    width: 35px;
    margin-right: 3%;
}
.enquiriesBox dd{
    float: right;
    font-size: 1.15em;
    width: 50%;
    line-height: 1.7em;
}
.blogBox ul.blogList li{
    margin-bottom: 5%;
}
.blogBox h2.mainTi{
    background: url(../images/blogTi2.png) no-repeat top;
    background-size: 100%;
}
p.catTi {
    text-align: center;
    margin: 5% 0 2%;
}
ul.catList {
    letter-spacing: -.5em;
    text-align: center;
    font-size: 1.15em;
}
ul.catList li {
    display: inline-block;
    vertical-align: top;
    margin-right: 5%;
    position: relative;
    padding-left: 1em;
    letter-spacing: normal;
    margin-bottom: 5%;
}
ul.catList li:before{
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 6px;
    height: 6px;
    border: 0px;
    border-top: solid 1px #e51a15;
    border-right: solid 1px #e51a15;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    bottom: 0;
    margin: auto;
}
.accessBox h2.mainTi{
    background: url(../images/accessTi.svg) no-repeat top left;
}
dl.accessBox {
    overflow: hidden;
}
dl.accessBox>dt{
    float: left;
    width: 57%;
}
dl.accessBox>dt img{
    width: 100%;
}
dl.accessBox>dd{
    float: right;
    width: 35%;
    font-size: 1.1em;
}
dl.accessBox>dd dl{
    margin-bottom: 7%;
    overflow: hidden;
}
dl.accessBox>dd dl dt {
    width: 100%;
    font-size: 1.1em;
    padding-left: 10%;
    position: relative;
}
dl.accessBox>dd dl dt:before{
    content: url(../images/flower5.svg);
    width: 22px;
    position: absolute;
    left: 0;
}
dl.accessBox>dd dl dd{
    width: 90%;
    float: right;
}
.accordionlist dt .title .Ti {
    line-height: 1.5em;
}
.accordionlist dt .title .Ti span {
    line-height: 1em;
    margin-bottom: 1%;
}
.txtBox img {
	width: 100%;
	height: auto;
}


/*
13:option/tab
------------------------------------------------------------
*/
ul.tabs {
    list-style:none;
    width:100%;
}
ul.tabs li:first-child {
    border-left:1px solid #ccc;
}
ul.tabs li {
    float:left; 
    border-right:1px solid #ccc; 
    border-top:1px solid #ccc;
    background-color:#eee;
}
ul.tabs li.active {
    border-bottom:1px solid #fff;
    background-color:#fff;
    margin-bottom:-1px;
}
ul.tabs li a {
    display:block;
    padding:5px 10px;
    color:#777;
    letter-spacing:-1px;
    outline:none;
    text-decoration:none;
    font-family:"Lucida Sans Unicode", "Lucida Grande", sans-serif;
}
ul.tabs li.active a {
    font-weight:600;
    color:#000;
}
div.tabs_content {
    width:718px;
    border:1px solid #ccc;
}
div.tabs_content > div {
    padding:20px;
}
.clear {
    clear:both;
}
.bnr {
    margin-bottom: 90px;
}
.bnr img {
    width: 100%;
}


/*
14:original
------------------------------------------------------------
*/
ul.list_contact {
    letter-spacing: -.5em;
    max-width: 810px;
    margin: 0 auto 4%;
    width: 100%;
	display: -webkit-flex;
    display: flex;
    text-align: center;
    font-weight: bold;
	line-height: 1.5em;
}
ul.list_contact li {
	letter-spacing: normal;
    vertical-align: top;
    display: inline-block;
    background: #fbf6ca;
    border-radius: 10px;
    width: 23%;
    margin-right: 2.66%;
    position: relative;
    height: 260px;
}
ul.list_contact li:last-child{
	margin-right: 0;
}
ul.list_contact li:after {
    position: absolute;
    content: '';
    background: url(../images/right.png) no-repeat center/cover;
    width: 28px;
    height: 48px;
    right: -28px;
    z-index: 1;
    top: 35%;
}
ul.list_contact li:last-child::after {
	background: none;
}
p.step_img {
    margin: -25px 0 15px;
}
.img_contact_bird {
    position: absolute;
	display: block;
}
.img_step1{
	bottom: 0;
    right: 0;
}
.img_step2 {
    bottom: 0;
    left: 10%;
}
.img_step3 {
    bottom: 3%;
    left: 15%;
}
.img_step4 {
    bottom: 5%;
    left: 30%;
}

/* 生徒様の声 */
img.img_voice {
    margin: 5% auto 13%;
    display: block;
}
img.img_voice2 {
    float: right;
	margin-bottom: -70px;
    display: block;
}
.list_voice {
    position: relative;
    z-index: 1;
	margin-bottom: 5%;
}
.list_voice li {
    width: 70%;
    background: #FFFBF3;
    box-shadow: 1px 1px 3px #777;
    border-radius: 30px;
    padding: 5%;
	margin: 80px 0 10%;
	position: relative;
}
.list_voice li::before {
	position: absolute;
	content: '';
	top: -80px;
	z-index: -1;
}
.list_voice li::after {
	position: absolute;
	content: '';
	z-index: -1;
	top: 0;
}
.list_voice li:first-child::before {
	background: url(../images/preschooler.svg) no-repeat;
	width: 185px;
	height: 159px;
	left: 20px;
}
.list_voice li:first-child::after {
	background: url(../images/egg_voice_01.png) no-repeat;
	width: 246px;
	height: 435px;
	right: -43%;
	top: 30px;
}
.list_voice li:nth-child(2)::before {
	background: url(../images/grade.svg) no-repeat;
	width: 191px;
	height: 148px;
	right: 20px;
}
.list_voice li:nth-child(2)::after {
	background: url(../images/egg_voice_02.png) no-repeat;
	width: 180px;
	height: 317px;
	left: -43%;
}
.list_voice li:nth-child(3)::before {
	background: url(../images/junior.svg) no-repeat;
	width: 160px;
	height: 153px;
	left: 20px;
	top: -100px;
}
.list_voice li:nth-child(3)::after {
	background: url(../images/egg_voice_03.png) no-repeat;
	width: 194px;
	height: 145px;
	right: -43%;
}
.list_voice li:nth-child(4)::before {
	background: url(../images/adult.svg) no-repeat;
	width: 199px;
	height: 166px;
	right: 10px;
	top: -100px;
}
.list_voice li:nth-child(4)::after {
	background: url(../images/egg_voice_04.png) no-repeat;
	width: 229px;
	height: 373px;
	left: -43%;
}
.list_voice li:nth-child(2n) {
	margin-left: 30%;
}
.list_voice li:last-child {
	margin-bottom: 0;
}
.list_voice li h3 {
	font-size: 1.85em;
	color: #E75450;
	margin-bottom: 1em;
	font-weight: bold;
}
.list_voice li dl {
	margin-bottom: 5%;
}
.list_voice li dl.open dd {
	height: 100%;
}
.list_voice li dl:last-child {
	margin-bottom: 0;
}
.list_voice li dl dt {
	color: #E75450;
	border-bottom: 2px solid #E75450;
	width: 100%;
	font-size: 1.2em;
	padding-bottom: .5em;
	margin-bottom: .5em;
	font-weight: bold;
}
.switch {
	position: relative;
}
.switch.open .accordion_content {
	height: 100%;
}
.accordion_content {
	height: 4.5em;
	overflow: hidden;
	transition: .3s;
}
.switch .more_p {
	position: relative;
	color: #E75450;
	font-weight: bold;
	cursor: pointer;
	z-index: 1;
    height: 2em;
}
.switch .more_p::before {
    position: absolute;
	content: 'more...';
    bottom: 0;
	right: 0;
}
.switch.open .more_p::before {
    content: 'less...';
}

/*
15:マージン・パディング
------------------------------------------------------------
*/
.m0 {
	margin-bottom: 0;
}
.m05 {
	margin-bottom: 5px;
}
.m10 {
	margin-bottom: 10px;
}
.m15 {
	margin-bottom: 15px;
}
.m20 {
	margin-bottom: 20px;
}
.m30 {
	margin-bottom: 30px;
}
.m40 {
	margin-bottom: 40px;
}
.m50 {
	margin-bottom: 50px;
}

/* 2024 04 01 */
.gallery_col3 {
    display: flex;
    gap: 2%;
    margin-bottom: 5%;
}
.gallery_col3 li {
    width: 100%;
    aspect-ratio: 4/3;
}
.gallery_col3 li img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* 2024 04 01 */
.content_wrap {
    margin-bottom: 30px;
}
.basic_dlist{
    display: flex;
    font-size: 1.25em;
    gap: 1em;
    margin-bottom: 1em !important;
}

.basic_dlist.w_red {
    margin-bottom: 0.25em !important;
}
.basic_dlist + .red {
    color: red;
    margin-bottom: 1.25em;
    text-align: right;
}
.basic_dlist .group {
    display: flex;
    border-bottom: 1px dashed #ff97a9;
    /* margin-bottom: 10px; */
    width: 100%;
}
.basic_dlist .group dt {
    color: #ff97a9;
}
.basic_dlist.green .group {
    border-color: #b2cc56;
}
.basic_dlist.green .group dt {
    color: #b2cc56;
}
.basic_dlist.blue .group {
    border-color: #a6c1e8;
}
.basic_dlist.blue .group dt {
    color: #a6c1e8;
}
.basic_dlist.skyblue .group {
    border-color: #2ebfff;
}
.basic_dlist.skyblue .group dt {
    color: #2ebfff;
}

.basic_dlist .group:nth-of-type(1) {
    width: 80%;
}
.basic_dlist .group:nth-of-type(3) {
    width: 50%;
}

.basic_dlist .group dt {
    font-weight: bold;
    text-align: left;
    /* position: relative; */
    font-size: 1.1em;
    padding: 5px 0 10px;
    display: flex;
    align-items: center;
    gap: 5px;
    flex-shrink: 0;
    width: 9em;
}
.basic_dlist .group:nth-of-type(3) dt {
    width: 6em;
}
.basic_dlist .group:nth-of-type(3) dt {
    width: 4em;
}
.basic_dlist .group dt:before {
    content: url(../images/flower.svg);
    width: 25px;
}
.basic_dlist .group dd {
    text-align: right;
    padding-bottom: 10px;
    padding: 5px 0 10px 0;
    white-space: nowrap;
    flex-grow: 1;
}

.splide {
    margin-bottom: .5em;
}
.splide__slide a {
    /* aspect-ratio: 3/2; */
    display: block;
    position: relative;
}
 .splide__slide a:before {
    content: "";
    display: block;
    width: 100%;
    padding-top: 67%;
 }
.splide__slide a img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
}

.page-id-9 .splide__slide {
    display: block;
    position: relative;
}
.page-id-9 .splide__slide:before {
    content: "";
    display: block;
    width: 100%;
    padding-top: 67%;
}
.page-id-9 .splide__slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
}


#splide01_thumb,
#splide02_thumb,
#splide03_thumb,
#splide04_thumb,
#splide05_thumb,
#splide06_thumb {
    margin-bottom: 1em;
}
#splide01_thumb .splide__list {
    transform: none !important;
    flex-wrap: wrap;
}

/* 2024 04 22 */
.acc_btn {
    display: block;
    width: fit-content;
    margin: 0 0 3em auto;
    border: none;
    background: none;
    position: relative;
    color: #E75450;
    font-weight: bold;
    cursor: pointer;
    z-index: 1;
    height: 2em;
    /* transform: translateY(-100%); */
}
/* .acc_btn.is-active {
    transform: translateY(0);
} */

.acc_content {
    height: 3.2em;
    overflow: hidden;
    position: relative;
}
.acc_content:after {
    content: "";
    display: block;
    width: 100%;
    height: 3.2em;
    background: linear-gradient(180deg, rgba(255,255,255,0) 0%,rgba(255,255,255,0) 50%, rgba(255,255,255,1) 85%, rgba(255,255,255,1) 100%);
    position: absolute;
    bottom: 0;
    left: 0;
}

/* 2024 09 19 TOPページにyoutube動画のスライド設置*/
.sec_movies {
    padding: 2.5em 0 7.5em;
}
.youtube_slider .splide__arrow {
    width: 50px;
    height: 50px;
}
.youtube_slider .splide__arrow svg {
    width: 60%;
    height: 60%;
}
.youtube_slider .splide__arrow--prev {
    left: -25px;
}
.youtube_slider .splide__arrow--next {
    right: -25px;
}
.js-modal-video {
    display: block;
    position: relative;
}
.js-modal-video:after {
    content: "";
    display: block;
    width: 80px;
    aspect-ratio: 1/1;
    background: url(../images/ico_play.png?ver=20240925) no-repeat center / contain;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
@media screen and (max-width: 767px){
    .sec_movies {
        padding: 1.25em 0 3.75em;
    }
    .youtube_slider .splide__arrow {
        width: 40px;
        height: 40px;
    }
    .youtube_slider .splide__arrow svg {
        width: 60%;
        height: 60%;
    }
    .youtube_slider .splide__arrow--prev {
        left: -10px;
    }
    .youtube_slider .splide__arrow--next {
        right: -10px;
    }
}

/* 2024 11 29　トップページ増強 */
#accordion.sec_top_classes {
    margin: 0 auto 7.5em;
}
ul#accordion.sec_top_classes>li:not(:last-child) {
    margin-bottom: 5em;
}
.top_list_lesson .group:not(:last-child){
    margin-bottom: 3.75em;
}
.layout_flex_01 {
    display: flex;
    /* align-items: flex-start; */
    gap: 2%;
}
.layout_flex_01 .box_image {
    width: 46%;
    flex-shrink: 0;
    aspect-ratio: 3/2;
}
.layout_flex_01 .box_image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.layout_flex_01 .box_text {
    width: 52%;
    /* border-top: 2px solid #000;
    border-bottom: 2px solid #000; */
    padding: 2%;
    background-color: #fff;
	display:flex;
	flex-direction: column;
	justify-content:center;
}
@media screen and (max-width: 767px){
    .layout_flex_01 {
        flex-direction: column;
        align-items: stretch;
        gap: 1.5em;
    }
    .layout_flex_01 .box_image {
        width: 100%;
    }
    .layout_flex_01 .box_text {
        width: 100%;
    }
}



.top_classes_btns {
    display: flex;
    gap: 2%;
    margin-top: 1.25em;
}

.top_classes_btn_01 {
    display: block;
    width: 46%;
    flex-shrink: 0;
    text-align: center;
    padding: .5em;
    font-weight: 700;
    border: 1px solid #ff9331;
    background-color: #ff9331;;
    color: #fff !important;
    font-size: 1.125em;
    border-radius: 100px;
}
.top_classes_btn_02 {
    display: block;
    width: 100%;
    text-align: center;
    padding: .5em;
    font-weight: 700;
    border: 1px solid #ff9331;
    background-color: #ff9331;;
    color: #fff !important;
    font-size: 1.125em;
    border-radius: 100px;
}
.top_classes_btn_01:hover,
.top_classes_btn_02:hover {
    background-color: #fff;
    color: #ff9331 !important;
}

.top_classes_btn_01.pink,
.top_classes_btn_02.pink {
    border-color: #ff97a9;
    background-color: #ff97a9;
}
.top_classes_btn_01.pink:hover,
.top_classes_btn_02.pink:hover {
    background-color: #fff;
    color: #ff97a9 !important;
}
.layout_flex_01 .box_text.bc_pink {
    border-color: #ff97a9;
}

.top_classes_btn_01.green,
.top_classes_btn_02.green {
    border-color: #b2cc56;
    background-color: #b2cc56;
}
.top_classes_btn_01.green:hover,
.top_classes_btn_02.green:hover {
    background-color: #fff;
    color: #b2cc56 !important;
}
.layout_flex_01 .box_text.bc_green {
    border-color: #b2cc56;
}

.top_classes_btn_01.blue,
.top_classes_btn_02.blue {
    border-color: #a6c1e8;
    background-color: #a6c1e8;
}
.top_classes_btn_01.blue:hover,
.top_classes_btn_02.blue:hover {
    background-color: #fff;
    color: #a6c1e8 !important;
}
.layout_flex_01 .box_text.bc_blue {
    border-color: #a6c1e8;
}

.top_classes_btn_01.br_blue,
.top_classes_btn_02.br_blue {
    border-color: #2ebfff;
    background-color: #2ebfff;
}
.top_classes_btn_01.br_blue:hover,
.top_classes_btn_02.br_blue:hover {
    background-color: #fff;
    color: #2ebfff !important;
}
.layout_flex_01 .box_text.bc_br_blue {
    border-color: #2ebfff;
}

.top_classes_btn_01.br_green,
.top_classes_btn_02.br_green {
    border-color: #90c400;
    background-color: #90c400;
}
.top_classes_btn_01.br_green:hover,
.top_classes_btn_02.br_green:hover {
    background-color: #fff;
    color: #90c400 !important;
}
.layout_flex_01 .box_text.bc_br_green {
    border-color: #90c400;
}

@media screen and (max-width: 767px){
    .top_classes_btns {
        flex-direction: column;
        gap: 1em;
        margin-top: 1.25em;
    }
    .top_classes_btn_01,
    .top_classes_btn_02 {
        width: 100%;
    }
}


h3.top_classes_mainTi.c_pink{
    color: #ff97a9;
    border-left: 10px solid #ff97a9;
    border-bottom: 1px solid #ff97a9;
    font-size: 1.5em;
}
h3.top_classes_mainTi.c_green{
    color: #b2cc56;
    border-left: 10px solid #b2cc56;
    border-bottom: 1px solid #b2cc56;
    font-size: 1.5em;
}
h3.top_classes_mainTi.c_blue{
    color: #a6c1e8;
    border-left: 10px solid #a6c1e8;
    border-bottom: 1px solid #a6c1e8;
    font-size: 1.5em;
}

.list_top_about_btns {
    display: flex;
    gap: 3.5%;
    margin: 0 0 2.5em;
}
.list_top_about_btns li {
    width: 100%;
}
.list_top_about_btns li a {
    display: block;
    text-align: center;
    padding: .5em;
    font-weight: 700;
    border: 1px solid #ff9331;
    background-color: #ff9331;;
    color: #fff !important;
    font-size: 1.125em;
    border-radius: 100px;
}
.list_top_about_btns li a:hover {
    background-color: #fff;
    color: #ff9331 !important;
}

.class_subttl {
    display: block;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.5;
    padding: 0 0 1rem;
	text-align: center;
}
.c_pink {
    color: #ff97a9;
}
.c_green {
    color: #b2cc56;
}
.c_blue {
    color: #a6c1e8;
}
.c_br_blue {
    color: #2ebfff;
}
.c_br_green {
    color: #90c400;
}

/* 2026 02 09　紹介動画追加 */
.introduction {
    width: 100%;
    max-width: 800px;
    margin: 5em auto;
}
.introduction a {
    display: block;
}
.introduction a img {
    display: block;
    width: 100%;
}