@charset "utf-8";

body {
	font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, "メイリオ", "Meiryo" , sans-serif;
	font-weight: 500;
	font-size: 18px;
	color: #333;
	line-height: 2.0;
	-webkit-text-size-adjust: 100%;
	-webkit-overflow-scrolling: touch;
	min-width:1280px;
	background:#000;
}
.innerWrap{
	width:1280px;
	margin:0 auto;
	height:auto;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
a{
	color: #303030;
	text-decoration:none;
}
a:hover,
.ro:hover{
	opacity:0.8;
	-webkit-transition: all 0.15s linear;
	transition: all 0.15s linear;
}
.ro:hover img{
	opacity:1;
}
.ro a:hover,
.ro a:hover img{
	-webkit-transition: none;
	transition: none;
	opacity: 1;
}
.cf:before,
.cf:after {
    content: " ";
    display: table;
}

.cf:after {
    clear: both;
}

.cf {
    *zoom: 1;
}
.spCont{
	display:none;
}
#spMenuOverlay,
#spMenu{
	display: none;
}
/* commons */
.bold,strong{font-weight: 700;}
.f_left{float:left;}
.f_right{float:right;}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
　■box_inner,block,hd,btn
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
p.txt strong{
	color: #772d86;
}



/*--------------------------------
	hd
--------------------------------*/
.hd01{
	text-align:center;
	line-height:1.0;
	margin-bottom: 77px;
}

.hd02{
	position: relative;
	z-index: 0;
	margin-bottom: 45px;
	line-height: 1;
	text-align: center;
}
.hd02:after{
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #fff;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: -1;
}
.hd02 span{
	background: #2d1f1f;
	padding: 0 20px;
	display: inline-block;
}

/*--------------------------------
	btn
--------------------------------*/
.btn01{
	text-align:center;
}
.btn01 a{
	display: block;
	line-height:1.0;
	color: #fff;
	font-size:30px;
	font-weight:700;
	width: 694px;
}



/*btn02*/
.btn02{
	text-align:center;
}
.btn02 a{
	display:inline-block;
	background: url(../img/ico_blank.png) no-repeat 93% center #fff;
	background-size: 16px auto;
	width: 500px;
	border: 2px solid #772d86;
	padding: 8px 0;
	color: #772d86;
	font-weight:700;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.btn02 a span{
	background: url(../img/ico01.png) no-repeat left center;
	background-size: 18px auto;
	padding:0 30px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
　■header
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
header{
	width:100%;
	height:123px;
	position:relative;
	overflow:hidden;
	background:#000;
}
header h1{
	height: 100%;
	margin-left: -640px;
	position:absolute;
	top:0;
	left:50%;
	background: #fff;
  padding: 35px 28px 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
header nav{
	width:100%;
	height:123px;
	background: #000;
	position:absolute;
	top:0;
	left:50%;
	margin-left: -264px;
	padding-left: 72px;
}
header nav ul{
	height: 100%;
	overflow:hidden;
}
header nav li{
	float:left;
	height: 100%;
	padding: 44px 77px 0 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: url(../img/bg_menu.png) no-repeat right center;
}
header nav li:last-of-type{
	margin: 0;
}
header nav li a{
	color:#fff;
	font-size: 15px;
	padding:2px 0;
	background-repeat: no-repeat;
	background-position: left center;
	background-size: auto 24px;
	padding-left: 21px;
}
header nav li:nth-of-type(1) a{
		background: url(../img/icon_star.png) no-repeat left center;
}
header nav li:nth-of-type(2) a{
		background: url(../img/icon_course.png) no-repeat left center;
}
header nav li:nth-of-type(3) a{
		background: url(../img/icon_voice.png) no-repeat left center;
}
header nav li:nth-of-type(4) a{
		background: url(../img/icon_cost.png) no-repeat left center;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
　■main_img
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#main_img{
	text-align:center;
	position:relative;
}
#main_img h2{
	width:100%;
}
#main_img h2 img{
	width:100%;
	height:auto;
}
#main_img .btn01{
	position:absolute;
	top:46%;
	left:50%;
	margin-left: -346px;
	margin-top: -9px;
}
#main_img .main_point {
	width: 168px;
	position: absolute;
	top: 42%;
	left: 48%;
	margin-top: -97px;
	margin-left: 333px;
}
#main_img h3 {
	
	margin-top: -170px;
}
@media screen and (max-width: 767px) {
	#main_img h3 {
		margin-top: -30px;
	}
	
	#main_img h3 img {
		width: auto;
		height: 50px;
	}
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
　■point
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#point{
	color: #fff;
	padding: 20px 0 93px 0;
	overflow:hidden;
	
	padding-top: 90px;
}
#point h3{
	text-align:center;
	position:relative;
	line-height:1.0;
	margin-bottom: 55px;
}
#point h4{
	font-size:30px;
	font-weight: 700;
	line-height: 1.8;
	text-align: center;
	margin-bottom: 23px;
}
#point .intro {
	text-align: center;
	margin-bottom: 59px;
}
#point .intro .catch {
	margin-bottom: 32px;
}
#point .intro .sub {
	font-size: 30px;
	letter-spacing: .08em;
	text-indent: .08em;
}
#point .type03 h4 {
	margin-bottom: 28px;
}

#point .type_main {
	margin-bottom: 52px;
}
#point .box{
	position: relative;
	padding:7px 6px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}


#point .type01,#point .type02 {
	margin-bottom: 70px;
}
/*#point .type02 {
	margin-bottom: 90px;
}*/

/* type04 */
#point .item_type04 {
	padding: 15px 0 30px;
}
#point .img_type04 {
	width: 522px;
	float:left;
}
#point .con_type04 {
	width: 488px;
	margin-top: -5px;
	float: right;
}
@media all and (min-width: 769px) {
#point .txt_type04 {
	font-size: 15px;
	line-height: 1.8;
	text-align: left;
}
}
#point .link_type04 {
	text-align: left;
	margin-top: 37px;
	background-image: url(../img/bg_link.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}
#point .link_type04 a {
	display: block;
	color: #fff;
	font-size: 30px;
	font-weight: bold;
	padding:18px 38px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
@media all and (min-width: 768px) {
#point .link_type04 a {
	-webkit-transition-duration: .5s;
	transition-duration: .5s;
}
#point .link_type04 a:hover {
	opacity: .6;
}
}


#point .ornament:before,
#point .ornament:after,
#point .ornament_line:before,
#point .ornament_line:after {
	content: "";
	display: block;
	width: 64px;
	height: 63px;
	position: absolute;
	background-size: contain;
}
#point .ornament:before {
	background-image: url(../img/ornament_lefttop.png);
	top: 0;
	left: 0;
}
#point .ornament:after {
	background-image: url(../img/ornament_righttop.png);
	top: 0;
	right: 0;
}
#point .ornament_line:before {
	background-image: url(../img/ornament_rightbottom.png);
	bottom: 0;
	right: 0;
}
#point .ornament_line:after {
	background-image: url(../img/ornament_leftbottom.png);
	bottom: 0;
	left: 0;
}
#point .ornament_line {
	border:1.5px solid #fff;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
#point .ornament_inner {
	padding:29px 108px 44px;
}
@media all and (min-width: 768px) {
#point .type02 .ornament_inner {
	padding:36px 108px 53px;
}
}
#point .point {
	text-align: center;
	margin-bottom: 28px;
}
#point .txt_type {
	font-size: 15px;
	line-height: 26px;
	text-align: left;
	margin-bottom: 35px;
	font-weight: normal;
}
#point .movie_item_type {
	width: 514px;
	float: left;
}
#point .movie_item_type:nth-of-type(2n) {
	float: right;
}

#point .movie_name{
	text-align: center;
	font-size: 22px;
	font-weight: bold;
	margin-bottom: 5px;
}

.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
#point .link_type {
	font-size: 20px;
	font-weight: 700;
	text-align: right;
	margin-top: 20px;
	padding-right: 54px;
}
#point .link_type a {
	color: #fff;
}
.arrow_top_yellow a {
	display: inline-block;
	line-height: 44px;
	padding-left: 44px;
	height: 44px;
	background: url(../img/arrow_top_yellow.jpg) no-repeat left center;
}

#point .type02 .left_item {
	width: 526px;
	float: left;
}
#point .type02 .right_item {
	width: 488px;
	float: right;
}
#point .type02 .left_item img {
	width: 100%;
}

#point .bg_type03 {
	padding: 40px 0;
	background-image: url(../img/bg_type03.jpg);
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}
#point .slick-prev,
#point .slick-next {
	width: 39px;
	height: 39px;
	z-index: 10;
	text-indent: -9999px;
}
@media all and (min-width: 768px) {
#point .slick-prev,
#point .slick-next {
	-webkit-transition-duration: .5s;
	transition-duration: .5s;
}
#point .slick-prev:hover,
#point .slick-next:hover {
	opacity: .6;
}
}
#point .slick-prev{
	background-image: url(../img/prev.jpg);
}
#point .slick-next {
	background-image: url(../img/next.jpg);
}

#point .box.type03 {
	padding:0;
}

#point .slide_type_box,
#teacher .slide_type_box{
  color: #000;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background: rgba(255,255,255,.7);
}
@media all and (min-width: 768px) {
  #point .slide_type_box .slide_item {
/*    display: block !important;*/
  }
}
.teacher_img {
  width: 1280px;
}
.teacher_img img {
  width: 100%;
}

.mt2 {
  margin-top: 20px;
}
.mb2 {
  margin-bottom: 20px;
}
#point .upcont {
	margin-bottom: 12px;
}
#point .l_img {
	width: 373px;
	float: left;
}
#point .r_con {
	width: 907px;
	float: right;
}
#point .r_box {
	margin-bottom: 18px;
}
#point .r_box:last-of-type {
	margin-bottom: 0;
}

#point .m_ttl,
#teacher .m_ttl{
	color: #fff;
	font-size: 22px;
	font-weight: 700;
	line-height: 40px;
	margin-bottom: 16px;
	padding: 13px 10px 13px 40px;
	background:#ff9933;
}
#point .r_txtarea,
#teacher .r_txtarea {
	padding-left: 40px;
}
#point .ttl_rt,
#point .ttl_cen,
#teacher .ttl_rt,
#teacher .ttl_cen {
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 5px;
}
#point .ttl_cen,
#teacher .ttl_cen {
	padding-left: 40px;
}
#point .l_txtarea_item:first-of-type,
#teacher .l_txtarea_item:first-of-type {
	margin-bottom: 13px;
}
#point .l_txtarea_item .ttl_rt,
#teacher .l_txtarea_item .ttl_rt {
	margin-bottom: 5px;
}
#point .txt_rt,
#teacher .txt_rt {
	width: 380px;
	font-size: 15px;
	line-height: 26px;
	float: right;
}
#point .r_box > p:first-child,#point .r_box > div:first-child,
#teacher .r_box > p:first-child,#teacher .r_box > div:first-child {
	float: left;
}
#point .r_box > p:last-child,#point .r_box > div:last-child,
#teacher .r_box > p:last-child,#teacher .r_box > div:last-child {
	float: right;
}
#point .rr_img,
#teacher .rr_img {
	padding-top: 11px;
}
#point .rl_img,
#teacher .rl_img {
	padding-left: 40px;
	float: left;
}
#point .r_pa,
#teacher .r_pa {
	padding: 0 40px 0 0;
}
#point .l_txtarea,
#teacher .l_txtarea {
	width: 784px;
	float: left;
	padding-left: 40px;
}
#point .l_txtarea p,
#teacher .l_txtarea p {
	width: 100%;
	float: none;
}
#point .lb_img,
#teacher .lb_img {
	width: 430px;
	margin-top: 27px;
	float: right;
}
#point .mar_k,
#teacher .mar_k {
	margin-left: -.5em;
}

#point .beginner,
#teacher .beginner {
	padding:36px 0 94px;
}
#point .ttl_beginenr,
#teacher .ttl_beginenr {
	font-size: 30px;
	font-weight: 700;
	text-align: center;
	margin-bottom: 56px;
}
#point .t_item,
#teacher .t_item {
	width: 614px;
	float: left;
}
#point .t_item:nth-of-type(2n),
#teacher .t_item:nth-of-type(2n) {
	float: right;
}
#point .t_item_l,
#teacher .t_item_l {
	width: 227px;
	float: left;
}
#point .t_item_l img,
#teacher .t_item_l img {
	width: 100%;
}
#point .t_item_r,
#teacher .t_item_r {
	font-size: 15px;
	line-height: 1.8;
	width: 368px;
	height: 300px;
	float: right;
}
@media all and (min-width: 768px) {
#point .ad1,
	#teacher .ad1 {
	display: inline-block;
  margin: 0 -10px 0 -3px;
}
}



/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
　■point
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#course {
	padding:0 0 55px;
	background:#2d1f1f;
}

#course .hd01 {
	margin-bottom: 45px;
}
.course_list {
	color: #fff;
	display: flex;
	justify-content: space-between;
}
.course_block + .course_block{
	margin-top: 80px;
}
.course_list li {
	/*width: 616px;
	height: 521px;*/
	width: 404px;
	padding:0 21px 25px 21px;
	border:3px solid #fff;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
	float: left;
	background-color: rgba(255,255,255,.1);
}
.course_list li:after {
	width: calc(100% - 12px);
	height: calc(100% - 12px);
	border:1px solid #fff;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	position: absolute;
	display: block;
	content: "";
	top: 6px;
	left: 6px;
}
/*.course_list li:nth-of-type(2n) {
	float: right;
}
.course_list li:first-of-type,
.course_list li:nth-of-type(2) {
	margin-bottom: 38px;
}
.course_list li:last-of-type,
.course_list li:nth-of-type(3) {
	height: 518px;
}
.course_list li:last-of-type:after,
.course_list li:nth-of-type(3):after {
	height: 500px;
}*/
.ttl_course {
	text-align: center;
	margin-top: 25px;
	padding-bottom: 10px;
	border-bottom: 1px solid #fff;
}
.ttl_course img{
	max-width: 100%;
	height: auto;
}
.h_course {
	color: #b28022;
	font-size: 26px;
	font-weight: 700;
	line-height: 45px;
	text-align: center;
	margin: 20px auto 0;
}
.h_course.long{
	width: 111%;
	transform: scale(0.9, 1);
	margin-left: -5.5%;
}
.txt_course {
	font-size: 16px;
	line-height: 25px;
	margin-top: 20px;
	font-weight: normal;
	min-height: 95px;
}

.music_list {
	color: #333;
	line-height: 1.8;
	min-height: 130px;
	margin-top: 24px;
	padding:8px 13px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: #fff;
}
.ttl_music_list {
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 2px;
	padding-left: 34px;
	background: url(../img/icon_music.jpg) no-repeat left center;
}
.txt_music_list {
	font-size: 15px;
	font-weight: normal;
}
/*link_courseは講師部分にも同じクラスで使用*/
.link_course {
	margin-top: 25px;
	z-index: 1;
}
.link_course a {
	display: block;
	color: #fff;
	font-weight: bold;
	text-align: center;
	width: 323px;
	margin: 0 auto;
	padding:3px 0;
	background: url(../img/link_course.png) no-repeat center center;
	-webkit-background-size: 323px auto;
	background-size: 323px auto;
	position: relative;
	z-index: 1;
	cursor: pointer;
}
@media all and (min-width: 768px) {

.link_course a {
	-webkit-transition-duration: .3s;
	transition-duration: .3s;
	border-radius: 21px;
}
.link_course a:hover {
	opacity: .6;
}
}

.course_catch{
	text-align: center;
	margin-top: 88px;
}

.course_list li.full{
	width: 100%;
}
.course_list li.full .ttl_course{
	padding-bottom: 15px;
}
.course_list li.full .inner{
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 50px 45px 0;
}
.course_list li.full .left{
	width: 580px;
}
.course_list li.full .h_course{
	text-align: left;
	margin-top: 0;
}
.course_list li.full .right{
	width: 550px;
}
.course_list li.full .music_list{
	margin-top: 0;
	min-height: 110px;
}
.course_list li.full .link_course{
	margin-top: 33px;
	margin-bottom: 10px;
}


/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
　■voice
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#voice{
	background-image: url(../img/bg_voice.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	padding: 95px 0 95px 0;
	overflow:hidden;
	background: #2d1f1f;
}
#voice .hd01{
	margin-bottom: 60px;
}
#voice .box{
	float:left;
	width:620px;
	text-align:center;
	padding: 57px 20px 28px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: rgba(255,255,255,0.8);
	position: relative;
}
#voice .box:last-of-type{
	float: right;
}
#voice .age{
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	text-align: left;
	min-width:186px;
	width: 301px;
	height:48px;
	line-height: 1;
	padding: 16px 0 5px 30px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	display:inline-block;
	position:absolute;
	top: 12px;
	left: -10px;
	background-image: url(../img/bg_age.png);
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}
#voice .inner {
	padding-top: 18px;
}
#voice h4{
	color: #000;
	font-weight:700;
	font-size:20px;
	line-height: 1.5;
	text-align:left;
	margin-bottom: 9px;
}
#voice .img{
	float:left;
}
#voice .txt_area{
	float:right;
	text-align:left;
	width: 320px;
	color: #000;
	font-size:16px;
	line-height: 26px;
}
#voice .txt_area .strong{
	font-size:23px;
	font-weight:700;
}
#voice .voice01 .txt_area .strong{
	color: #43b2a1;
}
#voice .voice02 .txt_area .strong{
	color: #e94f8b;
}
#voice .txt_area .txt{
	font-size: 15px;
	margin-bottom: 29px;
}
#voice .txt_area .txt:last-of-type{
	margin-bottom: 0;
}




/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
　■plan
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#plan {
	padding: 80px 0 140px;
	background: #2d1f1f;
}
#plan.plan_link_area{
	background: none;
	padding: 110px 0 100px;
}
#plan .hd01 {
	margin-bottom: 47px;
}
#plan .price_box {
  margin-bottom: 40px;
}
#plan .price_box * {
  box-sizing: border-box;
}
#plan .price_box:last-of-type {
  margin-bottom: 0;
}
#plan table{
	width:100%;
	margin:0 0 12px 0;
	table-layout:fixed;
}
#plan .price_box .txt_area{
	text-align: left;
}
#plan small.bk{
	display: block;
	margin: -2px 0 3px;
}
#plan .tr_second td {
}
#plan .tr_forth td {
}

#plan .caution {
	color: #fff;
	font-size: 17px;
	margin-bottom: 30px;
}
#plan .catch {
	color: #fff;
	font-size: 20px;
	font-weight: 700;
	line-height: 32px;
	text-align: center;
	width: 785px;
	margin: 0 auto 20px;
	background:url(../img/catch_l.jpg) no-repeat left center,url(../img/catch_r.jpg) no-repeat right top;
	padding-top: 10px;
}
#plan .other_link {
}
#plan .other_link a {
	color: #fff;
	font-size: 30px;
	font-weight: 700;
	text-align: center;
	display: block;
	width: 785px;
	padding: 18px 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin:0 auto;
	background-image: url(../img/bg_link_course.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

#plan .note_txt{
	text-align: center;
	color: #fff;
	font-weight: 700;
	margin-bottom: 30px;
}

/* 202208_table仕様変更 */
.w_ss {
	width: 95px;
}
.w_s {
  width: 140px;
}
.w_m {
  width: 260px;
}
.w_l {
  width: 320px;
}
.ta-l {
  text-align: left;
  line-height: 1.6;
  margin-top: 10px;
}

.noborder_r {
  border-right: none !important;
}
.price_title {
  color: #fff;
  margin-bottom: 20px;
  font-size: 26px;
  text-align: center;
  position: relative;
}
.price_title::before {
  content: "";
  width: 100%;
  height: 1px;
  background-color: rgb(109, 109, 109);
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 1;
}
.price_title span {
  position: relative;
  background-color: #2d1f1f;
  padding: 0 20px;
  z-index: 2;
}
.price_list {
  /* border-collapse: 1px; */
  /* border-spacing: 0px 1px; */
  font-size: 17px;
	table-layout: fixed;
	width: 100%;
	height: 100%;
}

.price_list th {
  padding: 15px 0;
  background-color: #b28022;
  color: #fff;
  font-weight: 700;
	line-height: 1.5;
  text-align: center;
  border-right: solid 1px #b9b9b9;
}
.price_list th.title .mini {
  font-size: 0.8em;
}
.price_list td {
  padding: 10px 15px;
  background-color: #f8f8f8;
  /* border-left: 1px solid #f00; */
  /* border: solid 1px #b9b9b9; */
  border: 1px solid #666;
  text-align: center;
	overflow: hidden; 
}
.price_list td.bdb {
  border-bottom: 1px solid #ccc;
}
.price_list td b {
  color: #810a26;
}

.price_list .none {
  background-color: transparent;
}
.price_list .c_name {
  font-weight: 700;
  background-color: #e2e2e2;
}
.price_list .c_name2 {
  background-color: rgb(198, 198, 198);
}
.price_notice {
  color: #fff;
  font-size: 15px;
  line-height: 1.6;
}
.price_notice a {
  color: #fff;
  text-decoration: underline;
  transition: 0.3s;
}
.price_notice a:hover {
  opacity: 0.7;
}
.price_list .days{
	background: #e6ecf4;
}
.price_list .holiday{
	background: #f7e6e6;
}
.price_list .txt_area .price{
	line-height: 1.5;
}
.price_list .txt_area .price li + li{
	margin-top: 6px;
}
.price_list .txt_area .hd{
	font-weight: 700;
	display: block;
}
.price_list .txt_area .kome{
	font-size: 15px;
}

#plan .information_box{
	margin-top: 45px;
	color: #fff;
	padding: 30px;
	border: 1px solid #fff;
	font-size: 16px;
}

/*はじめてのピアノ調整*/
.first_price_list td{
	height: 85px;
}



/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■teacher
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#teacher {
	background: url(../img/bg_type03.jpg) no-repeat center center;
	-webkit-background-size: cover;
	background-size: cover;
	padding: 80px 0 85px;
}
#teacher .hd01 {
	margin-bottom: 65px;
}
#teacher .teache_wrap {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: -90px;
}
#teacher .teacher_box {
	width: 613px;
	margin-bottom: 90px;
	color: #fff;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
#teacher .teacher_box .img {
	width: 225px;
}
#teacher .teacher_box .img img {
	width: 100%;
	height: auto;
}
#teacher .teacher_box .txt_area {
	width: 373px;
}
#teacher .teacher_box .name {
	font-size: 19px;
	font-weight: bold;
	margin-bottom: 5px;
}
#teacher .teacher_box .catch {
	background: #FF9933;
	padding: 10px 15px;
	min-height: 60px;
	font-weight: bold;
	margin-bottom: 13px;
	font-size: 16px;
	line-height: 1.45;
	display: flex;
	align-items: center;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#teacher .teacher_box .txt_area .txt {
	font-size: 15px;
	line-height: 1.73;
	font-weight: normal;
}
#teacher .teacher_box .link_course a{
	margin-left: 0;
}


/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
　■reservation
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.reservation{
	font-weight:700;
	text-align:center;
	color:#fff;
	font-size:20px;
	background: #cf8f22;
}

.reservation .innerWrap {
	padding:50px 0 37px 0;
	background:url(../img/bg_ftr.png) no-repeat left bottom 5px;
}
.reservation p strong{
	font-size:32px;
}
.reservation .pr{
	border: 2px solid #fff;
	margin-bottom: 15px;
	border-radius: 30px;
	line-height: 1.0;
	padding:7px 40px;
	display:inline-block;
}
.reservation .txt{
	margin-bottom: 18px;
}
.reservation .btn{
	margin-bottom: 16px;
}
.reservation .btn a{
	display: block;
	line-height:1.0;
	color: #2d1f1f;
	font-size:30px;
	width: 800px;
	padding:21px 0;
	display:inline-block;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: #ffffff; /* Old browsers */ /* FF3.6-15 */ /* Chrome10-25,Safari5.1-6 */
	background: -webkit-gradient(linear,  left top, left bottom,  from(#ffffff),to(#ececec));
	background: linear-gradient(to bottom,  #ffffff 0%,#ececec 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ececec',GradientType=0 ); /* IE6-9 */
	-webkit-box-shadow: 4px 4px 0px 0px rgba(0,0,0,0.18);
	box-shadow: 4px 4px 0px 0px rgba(0,0,0,0.18);
}
.reservation .btn a span{
	width:800px;
	display:inline-block;
	background:url(../img/ico_arrow03.png) no-repeat 95% center;
	background-size: 24px auto;
}
.reservation .other{
	display:inline-block;
	padding-right: 12px;
	vertical-align:middle;
}
.reservation .btn_other{
	display:inline-block;
	padding-left: 12px;
}
.reservation .btn_other a{
	display:block;
	width: 320px;
	color: #000;
	font-size:16px;
	padding: 12px 0;
	line-height: 1.0;
	border-radius: 30px;
	background: #ffffff;
}
.reservation .btn_other a span{
	width:320px;
	display:inline-block;
	background:url(../img/ico_arrow03.png) no-repeat 93% center;
	background-size: 16px auto;
}





/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
　■footer
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
footer{
	background: #25143c;
	height:84px;
	color:#fff;
}
footer .innerWrap{
	position:relative;
	text-align:center;
	font-size:14px;
}
footer .logo{
	position:absolute;
	top:18px;
	left:0;
}
footer #pageTop{
	position:absolute;
	top:16px;
	right: 0;
}
footer #pageTop a{
	color:#fff;
	background:url(../img/pagetop.png) no-repeat top center;
	background-size: auto 18px;
	padding-top: 21px;
	display:inline-block;
	font-weight:bold;
}
footer .copyright{
	padding-top: 28px;
}



/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
　■IE用
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@media all and (-ms-high-contrast:none){
	.btn01 a,
	.reservation .btn a{
		padding-top: 25px;
		padding-bottom: 13px;
	}
	#point .box li .catch{
		padding-top: 2px;
		padding-bottom: 0;
	}
	.reservation .btn_other a{
		padding-top: 16px;
		padding-bottom: 8px;
	}
}



.modal_wrap {
	display: none;
	position: fixed;
	background-color: rgba(0,0,0,.6);
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1000;
}
.modal_box {
	display: none;
	overflow-y: auto;
	width: 896px;
	padding:30px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	position: fixed;
	top: 50%;
	left: 50%;
	background: #fff;
	-webkit-transform: translate(-50%,-50%);
	        transform: translate(-50%,-50%);
	z-index: 1001;
}
#course .modal_ttl {
	margin-bottom: 35px;
}
#course .modal_item {
	margin-bottom: 50px;
	position: relative;
}
#course .modal_item:last-of-type {
	margin-bottom: 0;
}
#course .modal_hdr {
	margin-bottom: 5px;
}
#course .modal_sub {
	color: #b28022;
	font-size: 18px;
	font-weight: 700;
	padding-left: 25px;
}
#course .modal_txt {
	color: #000;
	font-size: 15px;
	line-height: 25px;
	padding-left: 25px;
	position: relative;
}
#course .modal_img {
	position: absolute;
	width: 300px;
	top: 60px;
	right: 0;
	margin-right: 20px;
}
#course .modal_img2 {
	position: absolute;
	width: 300px;
	top: 0px;
	right: 0;
	margin-right: 20px;
}
/*
#course .modal_img3 {
	right: 0;
	top: -30px;
}
*/
#course .modal_img img,
#course .modal_img2 img,
#course .modal_img3 img {
	display: block;
	width: 100%;
}
#course .modal_close,
#teacher .modal_close{
	width: 27px;
	height: 27px;
	position: absolute;
	bottom: -27px;
	right: 3px;
}
@media all and (min-width: 768px) {
	#course .modal_close,
	#teacher .modal_close {
	-webkit-transition-duration: .3s;
	transition-duration: .3s;
	cursor: pointer;
}
	#course .modal_close:hover,
	#teacher .modal_close:hover {
	opacity: .5;
}
}

@media screen and (max-width: 767px) {
	#course .modal_img {
		width: 330px;
		margin-top: 10px;
		position: relative;
		top: 0;
		left: 20px;
	}
	#course .modal_img2 {
		width: 330px;
		margin-top: 10px;
		position: relative;
		top: 0;
		left: 20px;
	}
	#course .modal_df .modal_item {
		width: 100%;
	}
}

#teacher .modal_box{
	width: 980px;
	max-height: 96vh;
	overflow-y: auto;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#teacher .modal_close{
	bottom: 10px;
}
.modal_box .teache_img img{
	width: 100%;
	height: auto;
}


.campaign_box {
  position: absolute;
  bottom: 3%;
  width: 100%;
	padding: 20px;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-color: rgba(255, 255, 255, 0.8);
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  #main_img {
	  padding-bottom: 18%;
    margin-bottom: 0;
  }
  .campaign_box {
    bottom: 0%;
    height: inherit;
    padding: 10px 0;
  }
  .campaign_box img {
    width: 80%;
  }
}

/*#####################################################################

2019/12
ロゴ変更/料金注意書き追加

#####################################################################*/
header h1 {
	width: 376px;
	text-align: center;
	padding: 23px 28px 0;
}
header h1 img {
	max-width: 200px;
	width: 100%;
	height: auto;
}
.notice {
	margin-bottom: 60px;
	font-size: 15px;
	color: #fff;
}
