/* CSS Document */

@media screen and (min-width: 768px){

/* ---------------
    font 
	 ---------------*/

body{
	font-size:1.0em ;
	font-family: 'M PLUS 1', sans-serif;
/*	*font-size: small;
	*font: x-small;*/
	letter-spacing: 1px;
	line-height:1.6em;
	color:#606060;
	text-align:center;
	background:#FFFFFF;
}

/* ---------------
    title  text
	 ---------------*/
.cap,h2.cap {
	font-family: 'M PLUS 1', sans-serif;
    transform: rotate(0.05deg);
	color:#666666;
    font-size: 1.6em;
    font-weight: bold;
	letter-spacing: 1.6px;
	line-height:1.8em;
	margin:0;
    padding:80px 0 40px 0;
	text-align:center;
}

.cap-txt,h2.cap-txt{
	font-family: 'M PLUS 1', sans-serif;
    transform: rotate(0.05deg);
	color:#666666;
    font-size: 1.6em;
    font-weight: bold;
	letter-spacing: 1.6px;
	line-height:1.8em;
	margin:0;
    padding:2em 0 2em 0;
	text-align:center;
    text-decoration: solid underline  #feb417 15px;
    text-underline-offset: -0.5rem;
}

.cap-txt-w,h2.cap-txt-w{
	font-family: 'M PLUS 1', sans-serif;
    transform: rotate(0.05deg);
	color:#666666;
    font-size: 1.6em;
    font-weight: bold;
	letter-spacing: 1.6px;
	line-height:1.8em;
	margin:0;
    padding:2em 0 2em 0;
	text-align:center;
    text-decoration: solid underline  #fff 15px;
    text-underline-offset: -0.5rem;
}


.ulOr{
    text-decoration: solid underline  #feb417 15px;
    text-underline-offset: -0.5rem;
}


.ul-or,.ul-wh{
position: relative;
width: 100%;
}

.ul-or::before,.ul-wh::before{
	display: block;
	content: "";
	width: 107%;
	height: 15px;/* 任意 */
	background-color: #feb417;/* 任意の色 */
	position:absolute;
	bottom: 2px;/* 任意 */
	left: -3%;
	border-radius: 15px;/* heightと同値 */
	z-index: -1;

}
.ul-wh::before {
	background-color: #ffffff;/* 任意の色 */
}

.cap-s {
	font-family: 'M PLUS 1', sans-serif;
    transform: rotate(0.05deg);
    font-weight: bold;
	color:#666666;
    font-size: 1.3em;
	letter-spacing: 1px;
	line-height:1.8em;
	margin:0;
    padding:40px 0 0 0;
	text-align:center;
}

.cap-s .ul-or::before,.cap-s.ul-wh::before{
	display: block;
	content: "";
	width: 103%;
	height: 10px;/* 任意 */
	background-color: #feb417;/* 任意の色 */
	position:absolute;
	bottom: 2px;/* 任意 */
	left: -1%;
	border-radius: 10px;/* heightと同値 */
	z-index: -1;
}


.emphasis {
	font-family: 'M PLUS 1', sans-serif;
    transform: rotate(0.05deg);
    font-weight: bold;
	color:#666666;
    font-size: 1.2em;
	letter-spacing: 1px;
	line-height: 1.6em;
	margin:0 auto 20px auto;
}

/* ---------------
     bg box
	 ---------------*/	

.bgbox-or {
	margin:0 auto 50px auto;
	background:url(../images/bg_orange_box.png) no-repeat center top;
	width:1000px;
	position: relative;
}

.bgbox-gr-pt {
	margin:0 auto 50px auto;
	background:url(../images/bg_gray_box_pt.png) no-repeat center top;
	width:1000px;
	position: relative;
}
    

.bgbox-gr-pt-s {
	margin:0 auto 50px auto;
	background:url(../images/bg_gray_box_pt_s.png) no-repeat center top;
	width:727px;
	position: relative;
}
    
/*.bgbox-btm {
	margin:0 auto;
    padding: 0 0 30px 0 ;
	background:url(../images/bg_foot.png) no-repeat center bottom;
    background-size: 100%;
	text-align: left;
	width:1000px;
}*/
.bgbox-btm-s {
	margin:0 auto;
    padding: 30px 0 30px 0 ;
	background:url(../images/bg_foot.png) no-repeat center bottom;
    background-size: 100%;
	text-align: center;
	width:727px;
}

.bg-gr {
	margin:0 auto;
    padding: 0 0 20px 0;
	background:url(../images/bg_gray.jpg) repeat center top;
	width: 100%;
	text-align: center;
	position: relative;
}
    
    
.bg-gr-l {
	margin:0 auto;
    padding: 0 0 20px 0;
	background:url(../images/bg_gray_02.jpg) repeat center top;
	width: 100%;
	text-align: center;
	position: relative;
}
    
    
    
    
/* ---------------
     btn
	 ---------------*/	   
	
.btn{
    margin: 0 auto;
    padding:40px 0;
    text-align:center;
	font-family: "新丸ゴ M";
	letter-spacing: 2px;
}

.btn a {
    justify-content: space-between;
    align-items: center;
    margin: 0 10px;
    padding: 10px 20px;
    background-color: #223138;
    transition: 0.3s;
    text-decoration: none;
    border-radius:10px;
    color: #fff;
}
.btn a:hover,.btn a:visited  {
  text-decoration: none;
  background-color: #000;
  color: #fff;
}


/* ---------------
 ボタン右サイド固定
	 ---------------*/

#fixed-menu {
  position: fixed;
  top: 10vh;
	right:0;
	z-index:9999;
  font-size:0; /* 親要素でフォントサイズを０にする */  
}

#fixed-menu li a{
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
   font-size: 1rem;
  /* 以下、装飾 */
	padding:20px 20px 20px 20px;
  color:#fff;
  border-top-left-radius: 15px;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 15px;

}
#fixed-menu li a.or{
	background:url(../images/bg_orange.jpg) repeat center top;

}
#fixed-menu li a.gr{
	background:url(../images/bg_dgray.jpg) repeat center top;

}

/*safari*/
_::-webkit-full-page-media, _:future, :root  body #fixed-menu li a {
	margin-right:20px;
}

#fixed-menu li a:hover  {
  text-decoration: none;
filter: brightness(1.10); /* 明るくする */
}



/* ---------------
    head
	 ---------------*/
.head {
    margin: 0 auto;
    padding: 1em 0 1em 0;
    max-height: 60px;
} 

.head .logo{
	text-align: left;
    float: left;
    margin: 0 1em 1em 1.5em ;
} 
.head .catch{
	text-align: left;
    float: left;
    margin: 1.2em 0 0 0;
    font-size: 0.8em;
    line-height: 1.8em;
    font-weight: bold;
} 

.head .catch a {
  text-decoration: none;
	color:#666666;
}
.head .catch a:hover,.head .catch a:visited  {
  text-decoration: none;
	color:#666666;
}
.head .logo img{
	width:80px;
} 

.head .logoTxt{
	font-size: 1.4em;
} 
	
/* ---------------
    nav
	 ---------------*/
	
/*	
.nav{
    margin: 0 auto;	
    padding: 0;	
	position: relative;
	text-align: center;
} 

.nav .menu{
    margin: 1em 0.5em 1em 0;	
	text-align: center;
} 

.nav .menu ul{
    padding: 0px; 	
    margin: 0px;
} 


.nav .menu ul li {
    color: #606060;
    display: inline; 
    margin: 0.4em;
} 

.nav a,
.nav a:visited,
.nav .menu ul li a,
.nav .menu ul li .nav a:visited{
    text-decoration: none;
    color: #606060;
} 
.nav a:hover,
.nav .menu ul li a:hover,
.nav a:active,
.nav .menu ul li a:active{
	color:#feb417;
    text-decoration: none;
}
 */
    
/* ---------------
    nav ハンバーガーメニュー
	 ---------------*/

.nav{
    background-color:none;	
    padding: 0;	
	position: relative;
    z-index: 999999; /* 他の要素の下に隠れないように前面配置させます */
} 
	
.nav .menu{
	float: left;
    padding: 10px;	
	text-align: left;
} 

.nav .menu{
    margin: 0;	
	text-align: center;
} 

    
/* メニューのデザイン*/
#globalMenuSp {	
	position: fixed;
    z-index: 4;
    top: 0;
    left: 0;
    color: #606060;
    text-align: center;
    transform: translateY(-100%);
    transition: all 0.6s;
    width: 100%;
	padding-top:-100px;
    background:rgba(255,255,255,0.8);
    min-height: 100%;
}

#globalMenuSp ul {
    background-color: #feb417;	
	background:url(../images/bg_orange.jpg) repeat center top;
	width:1000px;
	position: relative;
    
    
    
　　margin: 0 auto;
    padding: 80px 0 120px 0;
    width: 100%;
	display:inherit;
}

#globalMenuSp ul li {
    font-size: 0.95em;
    font-weight: bold;
    list-style-type: none;
    padding: 0;
    width: 100%;
    border-bottom: 1px solid #feb417;
}

/* 最後はラインを描かない */

#globalMenuSp ul li:last-child {
    padding-bottom: 0;
    border-bottom: none;
}

#globalMenuSp ul li a {
    display: block;
    color: #606060;
    padding: 0.5em 0;
    text-decoration: none;
}
#globalMenuSp ul li.btn a {
    justify-content: space-between;
    align-items: center;
    margin: -20px 70px 0 70px;
    padding: 0.5em 0;
    color: #FFF;
    font-weight: bold;
    transition: 0.3s;
    background-color: #606060;
  text-decoration: none;
    display: block;
}


/* このクラスを、jQueryで付与・削除する */

#globalMenuSp.active {
    transform: translateY(0%);
}

/*ハンバーガー用CSS*/

.navToggle {
    display: block;
    position: fixed;    /* bodyに対しての絶対位置指定 */
    right: 13px;
    top: 30px;
    width: 42px;
    height: 51px;
    cursor: pointer;
    z-index: 5;
    text-align: center;
}

.navToggle span {
    display: block;
    position: absolute;    /* .navToggleに対して */
    width: 30px;
    border-bottom: solid 3px #606060;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
    left: 6px;
}

.navToggle span:nth-child(1) {
    top: 9px;
}
.navToggle span:nth-child(2) {
    top: 18px;
}
.navToggle span:nth-child(3) {
    top: 27px;
}
.navToggle span:nth-child(4) {

    border: none;
    color: #eee;
    font-size: 9px;
    font-weight: bold;
    top: 34px;
}


/*ハンバーガーメニュータップ後CSS*/
/* 最初のspanをマイナス45度に */

.navToggle.active span:nth-child(1) {
    top: 18px;
    left: 6px;
    border-bottom: solid 3px #606060;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

/* 2番目と3番目のspanを45度に */

.navToggle.active span:nth-child(2),
.navToggle.active span:nth-child(3) {
    top: 18px;
    border-bottom: solid 3px #606060;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);

}

    

/* ---------------
    top main 
	 ---------------*/

/*.imgMain{
	background:url(../images/top_mvisual.jpg) no-repeat center 5%;
    background-size: 100%;
    height: 660px;
    padding-top: 20px;
	position: relative;
	}
    
.imgMain img{
    height:auto;
	}
*/


.container{
    background-size: 100%;
    height: 660px;
    padding-top: 20px;
  position: relative;
}


.container img{
    height:auto;
    position: relative;
	}
    
.imageMainAni {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  opacity: 0;
  background-size: cover;
  background-position: center center;
  animation: image-switch-animation 25s infinite;
}


.src1 {
  background-image: url(../images/top_mvisual_01.jpg);
}
.src2 {
  background-image: url(../images/top_mvisual_02.jpg);
}
.src3 {
  background-image: url(../images/top_mvisual_03.jpg);
}
.src4 {
  background-image: url(../images/top_mvisual_05.jpg);
}
.src5 {
  background-image: url(../images/top_mvisual_04.jpg);
}

    
    
    
.imageMainAni:nth-of-type(1) {
  animation-delay: 0s;
}
.imageMainAni:nth-of-type(2) {
  animation-delay: 5s;
}
.imageMainAni:nth-of-type(3) {
  animation-delay: 10s;
}
.imageMainAni:nth-of-type(4) {
  animation-delay: 15s;
}
.imageMainAni:nth-of-type(5) {
  animation-delay: 20s;
}


@keyframes image-switch-animation {
  0%{ opacity: 0;}
  5%{ opacity: 1;}
  25%{ opacity: 1;}
  30%{ opacity: 0;}
 100%{ opacity: 0;}
}

    
.copy{
    visibility: hidden;
    font-size: 0.1em;
    height: 0;
	}

.mainbg-btm{
	margin:4em auto 0 auto;
    padding: 10px 0 0 0;
	width: 100%;
    height: 20px;
	background:url(../images/common_bgline_02.png) no-repeat center bottom;
    position: absolute;
    bottom: 0;
}
.mainbgGray-btm{
	margin:4em auto 0 auto;
    padding: 10px 0 0 0;
	width: 100%;
    height: 20px;
	background:url(../images/common_bgline_03.png) no-repeat center bottom;
    position: absolute;
    bottom: 0;
}
    

    
    
    

/* ---------------
    index
	 ---------------*/

.bg-or {
	margin:0 auto;
    padding: 0;
	background:url(../images/bg_orange.jpg) repeat center top;
	width: 100%;
	text-align: center;
	position: relative;
}

.bg-top{
	margin:4em auto 0 auto;
    padding: 0 0 10px 0;
	width: 100%;
    height: 20px;
	background:url(../images/common_bgline_01.png) no-repeat center top;
}

.bg-btm{
	margin:4em auto 0 auto;
    padding: 10px 0 0 0;
	width: 100%;
    height: 20px;
	background:url(../images/common_bgline_02.png) no-repeat center bottom;
    bottom: 0;
}


/* ---------------
    info
	 ---------------*/

div .bgGrayTop{
	margin:0 auto 0 auto;
    padding: 10px 0 0 0;
	text-align: center;
	width: 100%;
	background:url(../images/common_bgline_01.png) #f2f2f2 no-repeat center top;
}
    

.info {
    width: 90%;
	max-width:1000px;
	margin:3em auto 1em auto;
    text-align: left;
}
.info p {
    margin-bottom: 5px;
}
.info span {
    margin: 3px;
	background:#fff;
}
.info a{
    color: #606060;
    text-decoration: none;
    padding: 2px 2px 2px 6px;
}

.info a:hover {
    color: #f9a621;
    text-decoration: none;
}



/* ---------------
    slider banner
	 ---------------*/

.pc-banner {
	width:100%;
	max-width:1600px;
    margin: 5em auto;
    text-align: center;
}
    
.pc-banner img{
	max-width:316px;
	width:90%;
    margin: 1em auto;
}

    
    
    
    

.bnBox {
	margin:50px auto 80px auto;
	width:1000px;
	text-align: center;
}

    
.bnBox a {  
  transition-property: opacity;
  transition-duration: 0.5s;
}
.bnBox a:hover,.bnBox a:visited  {
  opacity: 0.7; 
}



  
.titleBox{
	margin:0 auto 0 auto;
    padding: 0;
	text-align: center;
	max-width: 1000px;
}

.featureBox{
	margin:0 auto 0 auto;
    padding: 0 0 20px 0;
	text-align: center;
	max-width: 1000px;
}
    
.featureBox .lead{
	margin-bottom:35px;
} 


.instaBox{
	margin:3em auto 8em auto;
    padding: 0;
	text-align: center;
	max-width: 1000px;
}
.instaBox p{
	margin:0 auto 3em auto;
}


.messageBox {
	margin:0 auto 0 auto;
    padding: 0 0 0 0;
	text-align: center;
	width: 1000px;
}

.messageBox img{
	margin:30px auto;
}
.messageBox p {
	text-align: left;
	margin-bottom: 50px;
}

.btnBox-or {
	margin:80px auto 80px auto;
	background:url(../images/bg_orange.jpg) no-repeat center top;
	width:1000px;
    border-radius:60px;
	position: relative;
}


/* ---------------
     content box02
	 ---------------*/

.box02 {
	margin:0 auto 0 auto;
    padding: 0;
	text-align: center;
	width: 1000px;
}
.box02 img{
	width: 356px;
	height: 356px;
}

.box02 .lef-photo,
.box02 .rig-photo{
	float: left;
	margin:30px 0 60px 0;
	width: 430px;
	text-align: left;
}
.box02 .rig-txt,
.box02 .lef-txt{
	float: left;
	margin:30px 0 60px 0;
	padding: 5px 0 0 0;
	width: 570px;
	text-align: left;
}

.box02 .rig-photo{
	text-align: right;
}

    
/* ---------------
     content box03
	 ---------------*/

.box03{
	margin:0 auto 0 auto;
    padding: 0;
	text-align: center;
	max-width: 1050px;
}
    
.box03 .lead{
	margin-bottom:35px;
} 
    
.box03 .utext{
    width: 1000px;
	margin:35px auto 0;
    text-align: left;
}

.box03 img{
	margin:12px;
    padding: 0;
}


.btn-box-2col {
	margin:0 auto;
    padding: 0 0 80px 0;
	text-align: center;
    display: flex;
    justify-content: center;
	width: 1000px;
}

.btn-box-2col div {
	margin:0;
    padding: 0;
}



/* ---------------
     content box04
	 ---------------*/

.box04 {
	margin:0 auto 0 auto;
    padding: 0 0 60px 0;
	text-align: center;
	width: 1000px;
}

.box04 img{
	margin:30px auto;
}
.box04 p {
	text-align: left;
	margin-bottom: 50px;
}
.box04 p.p2 {
	padding-bottom: 30px;
}
.box04 .inner{
    width: 86%;
    margin: 0 auto 20px auto;
    text-align: left;
}


/* ---------------
     content box05
	 ---------------*/

.imgSub{
	margin:0 auto;
	width: 100%;
	text-align:center;
	background:url(../images/top_svisual_01.jpg) no-repeat center 5%;
    background-size: cover;
    height: 453px;
	position: relative;
	}
    
.imgSub .copy{
	padding:190px 0 0 0;
	font-family: 'M PLUS 1', sans-serif;
    transform: rotate(0.05deg);
    font-weight: bold;
	color:#fff;
    font-size: 1.6em;
	letter-spacing: 12px;
	line-height: 1.9em;
	}

.box05 {
	background:url(../images/bg_top_text.png) no-repeat center 5%;
	margin:0 auto 0 auto;
    padding: 0 0 90px 0;
	text-align: center;
	width: 100%;
}

.box05 .copy {
	text-align: center;
    margin: 0 auto;
    padding: 90px 0 60px 0;
}

    

/* ---------------
    foot
	 ---------------*/

	
.f1{
	margin:0 auto;
	background:url(../images/bg_gray.jpg) repeat center top;
	padding: 0;
	width: 100%;
	text-align:center;
	position: relative;
	}
.f1 .snsbox{
	margin:0 auto;
    display: flex;
	padding:60px 0;
	width: 360px;
	position: relative;
	}
.f1 .snsbox .blog{
    width:150px;
	}
.f1 .snsbox .ico{
    width:210px;
	}
.f1 .snsbox .ico img{
    margin: 10px 3px;
	}
.f2{
	background-color: #F2F2F2;
	padding: 40px 0;
	width: 100%;
	position: relative;
    min-height: 180px;
    font-size: 0.9em;
	letter-spacing: 0.5px;
} 
.f2 .box{
	margin:0 auto 0 auto;
	padding: 0;
	max-width: 1000px;
	text-align:left;
	position: relative;
    display: inline-block;
} 
.f2 .box div.menu{
    float: left;
    width: 250px;
} 
.f3{
    margin: 40px auto 60px;
	font-size:0.8em;
    color: #6f6f6f;
} 
.f2 a, .f2 a:visited,.f3 a, .f3 a:visited{
    text-decoration: none;
    color: #6f6f6f;
    margin: 0 10px 0 0;
} 
.f2 a:hover, .f2 a:active,.f3 a:hover, .f3 a:active{
	color:#feb417;
    text-decoration: underline;
}

	

/* ---------------
    2nd dir
	 ---------------*/

/* image */

.imgAbout{
	background:url(../images/about_mv.jpg) no-repeat center 5%;
	margin:0 auto; padding: 0;width: 100%; text-align:center; background-size: cover; height: 320px; position: relative;
	}
.imgAftersc{
	background:url(../images/aftersc_mv.jpg) no-repeat center 5%;
	margin:0 auto; padding: 0;width: 100%; text-align:center; background-size: cover; height: 320px; position: relative;
	}
.imgLesson{
	background:url(../images/lesson_mv.jpg) no-repeat center 5%;
	margin:0 auto; padding: 0;width: 100%; text-align:center; background-size: cover; height: 320px; position: relative;
	}
.imgPrice{
	background:url(../images/price_mv.jpg) no-repeat center 5%;
	margin:0 auto; padding: 0;width: 100%; text-align:center; background-size: cover; height: 320px; position: relative;
	}
.imgEnter{
	background:url(../images/enter_mv.jpg) no-repeat center 5%;
	margin:0 auto; padding: 0;width: 100%; text-align:center; background-size: cover; height: 320px; position: relative;
	}
.imgNotice{
	background:url(../images/notice_mv.jpg) no-repeat center 5%;
	margin:0 auto; padding: 0;width: 100%; text-align:center; background-size: cover; height: 320px; position: relative;
	}
.imgblog{
	background:url(../images/price_mv.jpg) no-repeat center 5%;
	margin:0 auto; padding: 0;width: 100%; text-align:center; background-size: cover; height: 320px; position: relative;
	}
.imgDonation{
	background:url(../images/donation_mv.jpg) no-repeat center 5%;
	margin:0 auto; padding: 0;width: 100%; text-align:center; background-size: cover; height: 320px; position: relative;
	}
.imgWorkshop{
	background:url(../images/workshop_mv.jpg) no-repeat center 5%;
	margin:0 auto; padding: 0;width: 100%; text-align:center; background-size: cover; height: 320px; position: relative;
	}
.imgWorkshop-{
	background:url(../images/workshop_mv.jpg) no-repeat center 5%;
	margin:0 auto; padding: 0;width: 100%; text-align:center; background-size: cover; height: 320px; position: relative;
	}
.imgContact{
	background:url(../images/contact_mv.jpg) no-repeat center 5%;
	margin:0 auto; padding: 0;width: 100%; text-align:center; background-size: cover; height: 320px; position: relative;
	}
.imgChicaro{
	background:url(../images/chicaro_mv.jpg) no-repeat center 5%;
	margin:0 auto; padding: 0;width: 100%; text-align:center; background-size: cover; height: 320px; position: relative;
	}
.imgTable{
	background:url(../images/table_mv.jpg) no-repeat center 5%;
	margin:0 auto; padding: 0;width: 100%; text-align:center; background-size: cover; height: 320px; position: relative;
	}
.imgAccess{
	background:url(../images/access_mv.jpg) no-repeat center 5%;
	margin:0 auto; padding: 0;width: 100%; text-align:center; background-size: cover; height: 320px; position: relative;
	}



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

.pTitle {
    font-family: 'M PLUS 1p', sans-serif;
    transform: rotate(0.05deg);
    font-weight: bold;
	color:#ffffff;
    font-size: 1.8em;
	letter-spacing: 1.6px;
	line-height: 1.9em;
	margin:0;
    padding:140px 0 0 0;
	text-align:center; 
    position: relative;
}

.pLead {    
    font-family: 'M PLUS 1', sans-serif;
    transform: rotate(0.05deg);
    font-weight: bold;
	color:#666666;
    font-size: 1.15em;
	letter-spacing: 1px;
	line-height: 1.6em;
	margin:0 auto 40px auto;
    text-align: center;
}

.sLead {    
    font-family: 'M PLUS 1', sans-serif;
    transform: rotate(0.05deg);
	color:#666666;
    font-size: 1.1em;
	letter-spacing: 1px;
	line-height: 1.6em;
	margin:0 auto 40px auto;
    text-align: left;
}

div .leadBox{
	margin:0 auto 0 auto;
    padding: 80px 0 20px;
	text-align: center;
	max-width: 1000px;
}

    

div .leadBoxCap{
	margin:0 auto 0 auto;
    padding: 50px 0 40px;
	text-align: center;
	max-width: 1000px;
}
    
.leadBoxCap img{
	margin:0 auto 15px auto;
}


div .bgGray{
	margin:0 auto 0 auto;
    padding: 60px 0 0 0;
	text-align: center;
	width: 100%;
	background:url(../images/common_bgline_01.png) #f2f2f2 no-repeat center top;
}

    
div .bgGray-btm{
	margin:4em auto 0 auto;
    padding: 10px 0 0 0;
	width: 100%;
    height: 20px;
	background:url(../images/common_bgline_02.png) #f2f2f2 no-repeat center bottom;
}


div .bgWhite{
	margin:0 auto 0 auto;
    padding: 30px 0 0;
	text-align: center;
	width: 100%;
}

    
.Inner{
    max-width: 1000px;
    margin: 1em auto 5em auto;
    text-align: left;
}

.Inner .lef-photo{
	float: left;
	margin:30px 70px 0 0;
	width: 310px;
	text-align: left;
}
.Inner .rig-photo{
	float: left;
	margin:30px 0 0 70px;
	width: 310px;
	text-align: left;
}
    
.Inner .rig-txt,
.Inner .lef-txt{
	float: left;
	margin:7% 0 0 0;
	padding: 0;
	width: 620px;
	text-align: left;
}

.Inner .rig-txt-index,
.Inner .lef-txt-index{
	float: left;
	margin:3% 0 0 0;
	padding: 0;
	width: 620px;
	text-align: left;
}


.Inner .lef-prof{
	float: left;
	margin:30px 50px 40px 0;
	width: 182px;
	text-align: left;
}
    
.Inner .rig-prof{
	float: left;
	margin:50px 0 40px 0;
	padding: 0;
	width: 760px;
	text-align: left;
}


ul.arrowOr {
    margin: 0 auto;
    list-style-position:inside;
    width: 98%;
}
ul.arrowOr li{
    background: url(../images/arrow_or.png) no-repeat;
    padding-left: 2em;
    margin: 0.7em 0;
}

ul.arrowOr li a {
    color: #666;
    font-weight: bold;
}
ul.arrowOr li a:hover {
  text-decoration: none;
  color: #feb417;
}





/* ---------------
    About
	 ---------------*/
.boxAbout {
	margin:0 auto 0 auto;
    padding: 0 0 60px 0;
	text-align: center;
	width: 1000px;
    position: relative;
}
p.m1{
	margin:50px auto 50px auto;
    text-align: center;
}



.boxAbout .inner{
	margin:0 auto 40px auto;
    width: 100%;
    text-align: left;
    position: relative;
}
.boxAbout .inner .sns img{
    margin: 0 20px;
}



.boxAbout .lef-prof{
	float: left;
	margin:30px 0 0 0;
	width: 25%;
	text-align: left;
}
    
.boxAbout .rig-prof{
	float: left;
	margin:30px 0 0 0;
	padding: 0;
	width: 75%;
	text-align: left;
}


.boxAbout .name{
    text-align: left;
    font-weight: bold;
    font-size: 1.2em;
    line-height: 1.6em;
	margin:0 auto 30px auto;
}

.boxAbout .stitle{
    text-align: left;
	margin:0 auto 20px auto;
    font-weight: bold;
}


.boxAbout .prof{
    text-align: left;
    font-weight: bold;
	margin:30px auto 10px auto;
}

.boxAbout ul {
    margin: 0 0 0 1em;
  list-style:disc;
    text-align: left;
    padding-bottom: 1em;
    font-size: 0.99em;
}
.boxAbout li {
  position: relative;
  padding-left: 8px;
    margin-bottom: 2px;
}



p.history{
	margin: 0 auto;
    padding: 50px 0 0 0;
	text-align: left;
}
.history img{
	width: 100%;
}
    
    
/* ---------------
    Service
	 ---------------*/



.boxService {
	margin:0 auto 0 auto;
    padding: 0 0 20px 0;
	text-align: center;
	width: 1000px;
}


.boxService .pLead {    
    font-family: 'M PLUS 1', sans-serif;
    transform: rotate(0.05deg);
    font-weight: bold;
	color:#666666;
    font-size: 1.15em;
	letter-spacing: 1px;
	line-height: 1.6em;
	padding:0px 0 30px;
    text-align: center;
}
    
.bgGray .ServiceInner{
    max-width: 1000px;
    margin: 1em auto 1em auto;
    text-align: left;
}
    
     
.boxService div.bgCap {
  position: relative;
	text-align: left;
	padding: 1em 0;
    margin: 3em 0 1.2em 0;
	background:url(../images/bg_gray_02.jpg) repeat center top;
    font-weight: bold;
    border-radius: 15px;
} 



.boxService div.bgCap:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 5%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #EDEDED;
}



.boxService div.bgCap h3 {
	margin-left: 1em;
    font-size: 1.2em;
    font-weight: bold;
}   
    
      
.boxService div.body {
	text-align: left;
	margin-bottom: 1.3em;
    padding-top: 1em;
}  


.boxService .sLead{
	padding-top: 2em;
}
    
.boxService .detail{
    text-align: left;
    margin-bottom: 1.1em;
	}


.boxService .detail .scap{
    text-align: left;
    font-weight: bold;
    margin-bottom: 0.5em;
	}
.boxService .detail .bold{
    font-weight: bold;
	}
 
    
.boxService .photo{
	margin-bottom: 3em;
	}
    

.boxService .bgbox-gr {
    margin-bottom: 4em;
    padding: 0;
	background:#f2f2f2 repeat center 50px;
	width:1000px;
    max-width: 1000px;
    border-radius:45px;
	position: relative;
}
.boxService .bgbox-gr .sinner{
    margin: 0 auto;
    padding: 40px 0;
	width:90%;
    max-width: 980px;
}
.boxService .bgbox-gr .sinner p{
    margin: 0;
}

.boxService .bgbox-gr .sinner img{
    width: 94%;
    margin: 20px auto;
}


.boxService .lef-prof{
	float: left;
	margin:30px 0 0 0;
	width: 25%;
	text-align: left;
}
    
.boxService .rig-prof{
	float: left;
	margin:30px 0 0 0;
	padding: 0;
	width: 75%;
	text-align: left;
}

.boxService .prof{
    text-align: left;
    font-weight: bold;
	margin:30px auto 10px auto;
}

.boxService .btn{
    margin-bottom: 2em;
}



.boxServiceBn {
	margin:0 auto 0 auto;
    padding: 60px 0 20px 0;
	text-align: center;
	width: 1000px;
}
.boxServiceBn p{
    font-size: 1.1em;
    font-weight: bold;
    line-height: 1.6em;
    padding: 0 0 20px 0;
}

.boxServiceBn .lef-bn,
.boxServiceBn .rig-bn {
	float: left;
	margin:30px 0 0 0;
	width: 50%;
	text-align: left;
}

    
.boxServiceBn .lef-bn img,
.boxServiceBn .rig-bn img{
    width: 90%;
    max-width: 480px;
}


/* ---------------
    Schedule
	 ---------------*/

.bgGray .ScheduleInner{
    max-width: 1050px;
    margin: 1em auto 1em auto;
}

.bgGray .ScheduleInner .lead{
	margin-bottom:35px;
    text-align: center;
} 
    
.bgGray .ScheduleInner .calender{
	margin-bottom:35px;
	max-width: 1400px;
    width: 90%;
} 
    
.boxSchedule {
	margin:0 auto 0 auto;
    padding: 0 0 60px 0;
	text-align: center;
	max-width: 1000px;
    width: 90%;
    position: relative;
}

.boxSchedule .Target{
	text-align: center;
	margin:0 auto 90px auto;
	width: 724px;
}
.boxSchedule p.text{
	margin:0 auto 0 auto;
    padding: 0 0 60px 0;
	text-align: left;
}


    
    
    
    
    
/* ---------------
    Afterschool
	 ---------------*/

.boxAftersc {
	margin:0 auto 0 auto;
    padding: 0 0 20px 0;
	text-align: center;
	max-width: 1000px;
    width: 90%;
}
.boxAftersc p {
	text-align: left;
	margin-bottom: 30px;
}

.boxAftersc .pLead {    
    font-family: 'M PLUS 1', sans-serif;
    transform: rotate(0.05deg);
    font-weight: bold;
	color:#666666;
    font-size: 1.15em;
	letter-spacing: 1px;
	line-height: 1.6em;
	padding:0px 0 30px;
    text-align: center;
}
.boxAftersc .detail{
    text-align: left;
	}
    
    

.boxAftersc .caution{
    font-size: 0.8em;
    font-weight:100;
	}
.boxAftersc p.copy{
    visibility: hidden;
    font-size: 0.1em;
    height: 0;
    margin: 0;
	}

.boxAftersc p.List {
	margin:-15px auto 50px auto;
}

/* ---------------
    Lesson
	 ---------------*/

    
p.program{
	margin:0 0 70px 0;
}  
.programList{
	margin:0;
    padding: 0 0 0 1em;
    list-style: disc;
    list-style-position: outside;
}

.lessonTable{
	margin:0 auto 1em auto;
	width: 100%;
    border: 1px solid #bebebe;
    font-size: 0.9em;
    text-align: center;
}

.lessonTable td{
	padding:8px 10px;
    border: 1px solid #bebebe;
    width: 14%;
}

.lessonTable tr.bg{
	background:url(../images/bg_gray.jpg) repeat center top;
    font-weight: bold;
}

p.Tabletxt{
	margin:0 auto 8em auto;
}
    

    
/* ---------------
    price
	 ---------------*/



.price-grayBox {
    margin: 70px auto 80px;
	background:url("../images/bg_gray.jpg") no-repeat center top;
	width:1000px;
    border-radius:60px;
	position: relative;
    text-align: center;
    padding: 0.1em 0;
background-color:rgba(255,255,255,0.40);
background-blend-mode:lighten;
}

  
.price-grayBox img{
	margin:40px auto 30px auto;
}
    

.price-grayBox ul {
    margin: 0 auto ;
    width: 90%;
  list-style: none;
    text-align: left;
    padding-bottom: 1em;
}
.price-grayBox li {
  position: relative;
  padding-left: 16px;
    font-size: 1.1em;
    font-weight: bold;
    margin-bottom: 7px;
}
.price-grayBox li::before {
  content: '';
  display: inline-block;
  position: absolute;
  top: 6px;
  left: 0;
  width: 10px;
  height: 10px;
  background-color: #feb417;
  border-radius: 5px;
}

.price-grayBox p.text{
    margin: 0 auto ;
    width: 90%;
    text-align: left;
	}
    
    
.price-grayBox .caution{
    margin: 0 auto ;
    width: 90%;
    font-size: 0.8em;
    padding-bottom: 3em;
    text-align: left;
	}
    
  
.price-leadBox {
    margin: 50px auto 50px;
	max-width:1000px;
	width:90%;
    text-align: left;
    padding: 0.1em 0;
}

.boxP3{
	margin:0 auto 0 auto;
    padding: 0 0 20px 0;
	text-align: center;
	max-width: 1000px;
    width: 90%;
}

.boxP3 img {
    margin-bottom: 20px;
}

.boxP3 ul,
.price-leadBox ul{
    margin: 0 auto ;
  list-style: none;
    text-align: left;
    padding: 1em 0;
}
.boxP3 ul li,
.price-leadBox ul li{
  position: relative;
  padding-left: 17px;
}

.boxP3 ul li::before,
.price-leadBox ul li::before {
  content: '';
  display: inline-block;
  position: absolute;
  top: 6px;
  left: 0;
  width: 13px;
  height: 13px;
  background-color: #feb417;
  border-radius: 7px;
}
.boxP3 .cap {
    padding:60px 0 30px 0;
	text-align:center;
}

.boxP3 .s-cap {
    padding:60px 0 30px 0;
	text-align:center;
    font-weight: bold;
}

.boxP3 p{
	font-size:0.9em;
	text-align: left;
    margin: 20px auto 20px;
    
}
.small{
	font-size:0.9em;
    line-height: 1.6em;
}

    
.boxP3 table{
	margin:0 auto 0 auto;
	width: 100%;
    border: 1px solid #bebebe;
    font-size: 1em;
    text-align: left;
    
}
    
.boxP3 table td{
	padding:8px 10px;
    border: 1px solid #bebebe;
}
    
.boxP3 table td.noborder{
	padding:8px 10px;
    border: 1px solid #ffffff;
}
    
.boxP3 table td.borderRB{
	padding:8px 10px;
    border: 1px solid #ffffff;
    border-right: 1px solid #bebebe;
    border-bottom: 1px solid #bebebe;
}

.boxP3 table td.borderB{
	padding:0;
    border: 1px solid #ffffff;
    border-bottom: 1px solid #bebebe;
    height: 1em;
}

td.wLef{
	width: 25%;
}
td.wLef2{
	width: 50%;
}
td.spc{
	height: 15px;
}

.boxP3 p.caution{
	padding: 20px 0 0 0;
    font-size: 0.9em;
    line-height: 1.6em;
}

.boxP3 table tr.bg,
.boxP3 table td.bg{
	background:url(../images/bg_gray.jpg) repeat center top;
    font-weight: bold;
    text-align: center;
}
    
.boxP3 table td.bg1{
	background:url(../images/bg_gray.jpg) repeat center 20px;
    font-weight: bold;
}
.boxP3 table td.bg2{
	background:url(../images/bg_gray.jpg) repeat center 40px;
    font-weight: bold;
}
.boxP3 table td.bg3{
	background:url(../images/bg_gray.jpg) repeat center 60px;
    font-weight: bold;
}


/* ---------------
    ******old
	 ---------------*/
.boxP2{
	margin:0 auto 0 auto;
    padding: 0 0 40px 0;
	max-width: 1000px;
    width: 90%;
	text-align: left;
}


.boxP4{
	margin:0 auto 0 auto;
    padding: 0 0 30px 0;
	text-align: center;
	max-width: 1000px;
    width: 90%;
}


/* ---------------
    Workshop
	 ---------------*/

.boxWorkshop {
	margin:0 auto 0 auto;
    padding: 0 0 60px 0;
	text-align: center;
	max-width: 1000px;
    width: 90%;
    position: relative;
}

.boxWorkshop .Target{
	text-align: center;
	margin:0 auto 90px auto;
	width: 724px;
}
.boxWorkshop p.text{
	margin:0 auto 0 auto;
    padding: 0 0 60px 0;
	text-align: left;
}


/* ---------------
    notice
	 ---------------*/

.boxP5 {
	margin:0 auto 0 auto;
    padding: 60px 0 60px 0;
	text-align: left;
	max-width: 1000px;
    width: 90%;
    position: relative;
}





/* ---------------
    Access
	 ---------------*/


.boxMap{
	margin:0 auto 50px auto;
    padding: 0;
	text-align: center;
	max-width: 1000px;
}

.boxMap p{
	margin: 0 auto;
    padding: 0 0 50px 0;
	text-align: left;
}

.map{
	margin-bottom: 50px;
}
    

.boxAccess {
	margin:0 auto 0 auto;
    padding: 0 0 20px 0;
	text-align: center;
	width: 1000px;
}
.boxAccess p {
	text-align: left;
	margin-bottom: 30px;
}

.boxAccess .movie {    
    padding: 0 0 80px 0;
}

.boxAccess .movie video {
	width: 50%;
}

.boxAccess .inner {    
    padding: 0 0 40px 0;
}



.boxAccess .pnl,
.boxAccess .pnl-r {    
    width: 222px;
    float: left;
    margin: 0 3.7% 0 0;
	text-align: left;
    
}

.boxAccess .pnl-r {  
    margin: 0;
}
.boxAccess .pnl img,
.boxAccess .pnl-r img  {    
    width: 222px;
    margin-bottom: 20px;
}








/* ---------------
    other
	 ---------------*/

.imgOther{
	background:url(../images/bg_orange.jpg) no-repeat center top;
	margin:0 auto; padding: 0;width: 100%; text-align:center; background-size: cover; height: 8px; position: relative;
	}
    

.boxP6 {
	margin:0 auto 0 auto;
    padding: 150px 0 150px 0;
	max-width: 1000px;
    width: 90%;
    position: relative;
}

.boxP7 {
	margin:0 auto 0 auto;
    padding: 50px 0 80px 0;
	max-width: 1000px;
    width: 90%;
    position: relative; 
    text-align:left;
}

.scap{
	font-family: 'M PLUS 1p', sans-serif;
}
.boxP7 h2{
	margin:0 auto 20px auto;
    text-align: center;
}

.boxP7 table{
	margin:0 auto 30px auto;
	width: 100%;
    border: 1px solid #bebebe;
    font-size: 0.8em;
    text-align: left;
}

.boxP7 table td{
	padding:4px 5px;
    border: 1px solid #bebebe;
}


.boxP7 table td ul {
}
.boxP7 table td ul li {
position:relative;/*疑似要素にabsoluteを使用する場合必要*/
padding-left:7px; /*画像を表示させるスペースを確保*/
}
.boxP7 table td ul li:before {
content:""; /*空の疑似要素を生成する*/
width:3px; /*幅指定*/
height:3px; /*高さ指定*/
background:#606060;/*色指定*/
border-radius:3px;/*アイコンを丸く*/
position:absolute;/*絶対配置にする*/
left:0px;/*横の表示位置指定*/
top:10px;/*縦の表示位置指定*/
}

.boxP7 table td ul li.L {
position:relative;/*疑似要素にabsoluteを使用する場合必要*/
padding-left:7px; /*画像を表示させるスペースを確保*/
margin-left:10px;
}


.prnx{
	width: 1000px;
    margin: 20px auto;
    display:flex;
}
.prnx div.prev{
    width: 50%;
    text-align: left;
}
.prnx div.next{
    width: 50%;
    text-align: right;
}


/* ---------------
    form
	 ---------------*/


/*調整イキ*/
.bgbox-gr {
	margin:0 auto 0 auto;
    padding: 0 0 50px 0;
	background:#f2f2f2 repeat center 50px;
	width:1000px;
    max-width: 1000px;
    border-radius:60px;
	position: relative;
}


.boxform {
	margin:0 auto 0 auto;
    padding: 0 0 20px 0;
	text-align: center;
	width: 1000px;
    max-width: 1000px;
}
.boxform .bgbox-gr .inform{
    width: 80%;
	margin:0 auto;
    padding:50px 0 0;
    text-align: left;
}

    
.boxform .bgbox-gr form {
    width: 80%;
	margin:0 auto 50px auto;
    text-align: left;
} 
.boxform .bgbox-gr p.leadF,
.boxform .bgbox-gr p.caution{
	margin:0 0 35px 0;
} 


.boxform .bgbox-gr form b{
	font-family: 'M PLUS 1p', sans-serif;
    font-weight: bold;
    font-size: 1.1em;
	line-height: 1.7em;
	margin:0 0 10px;
	color:#f9a621;
	}
    
.boxform .bgbox-gr form .fcap{
	font-family: 'M PLUS 1p', sans-serif;
    font-weight: bold !important;
    font-size: 1.1em;
	line-height: 1.7em;
	margin:5px 0 10px;
	}
    

.boxform .bgbox-gr form .accept{
	background-color: #fff;
    text-align: center;
    padding: 10px 20px 10px 0;
    margin: 15px 0;   
	}
    
input[type='text'],
input[type='email'],
input[type='tel'],
input[type='date'],
.boxform .bgbox-gr form select{
    background-color: #FFF;
	border:none;
    width: 100%;
    height: 40px; 
	border-radius: 4px;
    margin: 5px 0 10px 0;
}   

input[type='radio']{
    background-color: #FFF;
	border:none;
    height: 20px; 
    margin: 5px 0 5px 0;
}
input[type='checkbox']{
    background-color: #FFF;
	border:none;
    height: 20px; 
    margin: 5px 0 5px 0;
}
    
.wpcf7-textarea{
    background-color: #FFF;
	border:none;
    width: 100%;
    height: 140px; 
	border-radius: 4px;
    margin: 5px 0 20px 0;
}


/*submit*/
input.has-spinner,
input.wpcf7-submit{
    border-radius:4px; 
	display       : inline-block;
	text-align    : center;      /* 文字位置   */
	cursor        : pointer;     /* カーソル   */
	padding       : 14px 20px;   /* 余白       */
	background    : #f9a621;     /* 背景色     */
	color         : #606060;     /* 文字色     */
	line-height   : 1em;         /* 1行の高さ  */
	transition    : 0.3s;      /* なめらか変化 */
	border        : 0;    /* 枠の指定 */
    font-weight: bold;
	letter-spacing: 2px;

    
}

input.has-spinner:hover,
input.wpcf7-submit:hover {
	text-decoration: none;
  background-color: #fbe200;
}

/* ---------------
    scrollUp
	 ---------------*/

		
#scrollUp {
	bottom: 0;
	right: 0;
	width:50px;
	height: 50px;
	margin-right:30px;
	margin-bottom:30px;
	background: url(../images/btn_02.png) no-repeat;
	background-size:50px 50px;
	color: #fff;
	text-decoration: none;
    transition: 0.3s;
	opacity: 1;
}
#scrollUp:hover {
	background: url(../images/btn_02_ov.png) no-repeat;
	background-size:50px 50px;
	opacity: 1;
}


}

@-moz-document url-prefix() {
  /* ここに書く */
    
#fixed-menu li a{
	margin-right:-20px;
	right:0;
    }
}
