/*
 * LP共通項目
 *　HEADER メニュー　SNS
 * 講座についての説明
*/

/**
 * global
*/
body {
	font-size: 0.9em;
}
table {
	border-collapse: separate;
	border-spacing: 0;
}
input[type="submit"] {
  border: 0;
  font-size: 1.1em;
  border: solid 1px #ccc;
  border-radius: 2px;
  padding: 8px 10px;
  width: 100%;
  -webkit-appearance: none;
  cursor:pointer;
}

/* 講師の経歴 */
.teacher .list,
.teacher .list.rireki,
.teacher .list.book {
	padding: 1em 0 0 0;
}

.edit_botton {
	padding-top: 100px;
}

/*
Header
*/
/* パソコン・タブレット向け */
@media screen  and (min-width: 768px) {

	/*
	Header
	幅：1024px
	*/
	#container {
		padding: 80px 0 0 0; /* メニューの高さと揃える */
		margin: 0 auto;
		width: 1024px;
	}
	/* ページ内移動でメニューの重なりを修正 */
	a.anchor {
		margin: -100px 0 0 0;
		padding: 100px 0 0 0;
	}
	#page-header-main {
		height: 80px;
		width: 100%;
		padding: 20px 0 0 0;
		background-color: #fff;
		border-bottom: 1px solid #ccc;
		z-index: 1000;
		position: fixed;
	}
	.main-navi-inner {
		width: 1024px;
		margin: 0 auto;
		display: flex;
	  	justify-content: space-between;
	}
	#page-header-main .sns {
		width: 300px;
		display: flex;
		justify-content: center;
		align-items: center;
        line-height: 1;
	}
	#page-header-main .sns .tw {
		padding: 4px 0 0 10px;
        line-height: 1;
	}
	#page-header-main .nav {
		width: 680px;
		display: flex;
		justify-content: flex-end;
		align-items: center;
		text-align: center;
	}
	#page-header-main .nav li {
		padding: 0.5em 1em 0 1em;
		font-size: 0.9em;
		width: 15%;
	}
	#page-header-main .nav li.btn {
		width: 22%;
	}
	#page-header-main .nav a:hover {
		border-bottom: 2px solid #ccc;
	}
	#page-header-main .nav li.btn a.request,
	#page-header-main .nav li.btn a.apply {
		height: 34px;
		line-height: 34px;
		vertical-align: middle;
		-webkit-border-radius: 5px;/* for Safari and Chrome */
		-moz-border-radius: 5px; /* for Firefox */
		-o-border-radius: 5px; /* for opera */
		border-radius: 5px;
		color: #fff;
		border-bottom: none;
	}
}

/**
 * movie
*/
.movie-aria {
	padding: 50px 0 0 0;
}
.movie-information {
	width: 100%;
	margin: 0 auto;
	padding: 2em 0;
	background-color: #fafafa;
	text-align: center;
	-webkit-border-radius: 5px;/* for Safari and Chrome */
	-moz-border-radius: 5px; /* for Firefox */
	-o-border-radius: 5px; /* for opera */
	border-radius: 5px;
}
.movie-youtube {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0;
    margin: 0;
}
.movie-youtube iframe {
    margin: 0 3%;
}

/**
* page-guide-area
*/
#page-guide-area {
	width: 950px;
	margin: 0 auto;
	padding: 50px 0 0 0;
}
/*
 * guide
*/
#page-guide-area .guide {
	padding: 0;
	/*background-color: #fafafa;*/
	display: flex;
	justify-content: center;
}
#page-guide-area .guide table {
	width: 50%;
	border: 4px solid #ccc;
	background-color: #fff;
}
#page-guide-area .guide th {
	width: 30%;
}
#page-guide-area .guide th,
#page-guide-area .guide td  {
	padding: 0.6em 1em;
	border: 1px solid #ccc;
}
#page-guide-area .warm-up {
	width: 40%;
	text-align: center;
}

/* title */
#page-guide-area h2.title {
	font-size: 2em;
	padding: 80px 0 1em 0;
	line-height: 90px;
	text-align: center;
	vertical-align: middle;
	font-weight: normal;
	border-bottom: 1px solid #ccc;
}
#page-guide-area h2.title span {
	display: inline-block;
	font-size: 80%;
	width: 90px;
	height: 90px;
	background-color: #FEF37F;
	border-radius: 50%;
}

/*
 * flow
*/
#page-guide-area .flow {
	padding: 4em 0 4em 0;
	display: flex;
	justify-content: space-around;
}
/* schedule */
#page-guide-area .flow .schedule {
	width: 50%;
	padding: 0;
}
#page-guide-area .flow .schedule h2 {
	color: #000;
	background-color: #B0DCEE;
	text-align: center;
	font-size: 1.2em;
	font-weight: bolder;
	padding: 0.3em;
	font-weight: normal;
	-webkit-border-radius: 5px;/* for Safari and Chrome */
	-moz-border-radius: 5px; /* for Firefox */
	-o-border-radius: 5px; /* for opera */
	border-radius: 5px;
}
#page-guide-area .flow .schedule p {
	padding: 1em 1em 2em 1em;
}
#page-guide-area .flow .schedule .shuryousho {
	padding-top: 0;
	margin: 0 auto;
	width: 280px;
	text-align: center;
}
#page-guide-area .flow .schedule .shuryousho img {
	width: 100%;
}
#page-guide-area .flow .schedule .shuryousho h4 {
	padding-top: 0.5em;
}
/* lta */
#page-guide-area .flow .lta {
	width: 45%;
	padding: 0 5%;
	font-size: 0.9em;
	text-align: center;
}
#page-guide-area .flow .lta h2 {
	border-bottom: 1px solid #ccc;
}
#page-guide-area .flow .lta h2 img {
	width: 70%;
	height: auto;
}
#page-guide-area .flow .lta p {
	text-align: left;
	padding: 1.5em 0 0 0;
}
#page-guide-area .flow .lta p img {
	width: 100%;
	height: auto;
}


/*
 * botton
*/
/*
#page-guide-area .botton h4 {
	padding-bottom: 0.5em;
}
*/
#page-guide-area .botton {
	border-top: 1px solid #ccc;
	padding: 5em 0 8em;
	display: flex;
	justify-content: center;
}
#page-guide-area .botton .request,
#page-guide-area .botton .apply {
	width: 48%;
	text-align: center;
}
.botton input#request,
.botton input#apply {
	width: 75%;
	height: 90px;
	font-size: 1.3em;
	font-weight: normal;
	color: #fff;
	border: none;
	-webkit-border-radius: 5px;/* for Safari and Chrome */
	-moz-border-radius: 5px; /* for Firefox */
	-o-border-radius: 5px; /* for opera */
	border-radius: 5px;
}
/*
.botton input#request {
	height: 60px;
}
*/

/*
 * about-ifca
*/
#about-ifca {
	padding-bottom: 0;
}
.ff_dancing {
	font-size: 45px;
	color: #7F7F7F;
}
#about-ifca h2 {
	background-image: url(../images/ifca-kabu.jpg);
	-webkit-background-size: auto 80px;
	background-size: auto 80px;
	background-repeat: no-repeat;
	background-position: center;
	width: 400px;
	padding: 0.5em 0 1em 0;
	margin: 0 auto;
	text-align: center;
}
#about-ifca .box {
	background-color: #fafafa;
	padding: 2em 100px 1em 100px;
	font-size: 0.7em;
	line-height: 1.5em;
	display: flex;
	flex-direction: wrap;
	flex-flow: center;
	justify-content: center;
}
#about-ifca .mark {
	width: 120px;
}
#about-ifca .text {
	width: 600px;
}
#about-ifca .text h3 {
	font-size: 1.2em;
	font-weight: bold;
	padding: 0.5em 0;
}

/*
 * footer
*/
#footer.page {
	font-size: 0.8em;
	background-color: #fafafa;
}


/*
 * スマホ向け
*/
@media (max-width: 767px) {
	/*
	Header
	折りたたみ
	*/
	#container {
		padding: 50px 0 0 0; /* メニューの高さと揃える */
		width: 100%;
	}
	/* ページ内移動でメニューの重なりを修正 */
	a.anchor {
		margin: -70px 0 0 0;
		padding: 70px 0 0 0;
	}
	.movie-aria {
	    padding: 50px 0 0 0;
	}
	.movie-youtube {
        padding: 0;
        flex-wrap: wrap;
        background-color: transparent;
	}
    .movie-youtube iframe {
	    margin: 0;
	}
	.movie-youtube iframe:nth-of-type(2) {
	    margin: 1em 0 0 0;
	}
	#acMenu {
		width: 100%;
		padding: 0 1em;
		height: 50px;
		line-height: 50px;
		vertical-align: middle;
		background-color: #fff;
		border-bottom: 1px solid #ccc;
		display: flex;
		align-self: center;
	}
	/*ハンガーのメニュ*/
	.menuWrapper {
	  position: relative;
	  z-index: 0;
	  /*border: 1px solid #ccc;*/
	  width: 50px;
	  height: 50px;
	}

	#menuButton {
	  overflow: hidden;
	  display: block;
	  position: relative;
	  z-index: 0;
	  width: 40px;
	  height: 50px;
	  cursor: pointer;
	}

	#menuButton span,
	#menuButton::before,
	#menuButton::after {
	  display: block;
	  position: absolute;
	  top: 0;
	  bottom: 0;
	  left:0;
	  right: 0;
	  width: 24px;
	  height: 3px;
	  margin: auto;
	  background: #000;
	}
	#menuButton span {
	  overflow: hidden;
	  z-index: 1;
	  color: #000;
	}
	#menuButton::before {
	  z-index: 2;
	  transform: translate(0, -8px);
	  content: "";
	}
	#menuButton::after {
	  z-index: 2;
	  transform: translate(0, 8px);
	  content: "";
	}
	/* アニメーション */
	#menuButton span {
	  opacity: 1;
	  transition: opacity 150ms 50ms;
	}
	#menuButton::before,
	#menuButton::after {
	  transition: transform 200ms;
	}

	#menuButton.active span {
	  opacity: 0;
	  transition: opacity 150ms;
	}
	#menuButton.active::before {
	  transform: rotate(45deg);
	}
	#menuButton.active::after {
	  transform: rotate(-45deg);
	}
	/* page-header-main */
	#page-header-main {
		z-index: 200;
		position: fixed;
		width: 100%;
	}
	/* コンテンツ非表示 */
	#page-header-main .main-navi-inner {
		width:100%;
		/*height:220px;*/
		line-height:40px;
		display:none;
		/*background-color: #fff;*/
	}
	#page-header-main .main-navi-inner .nav li {
		height: 40px;
		line-height: 40px;
		vertical-align: middle;
		border-bottom: 1px dotted #ccc;
		padding: 0 1em;
        background-color: #fff;
	}
	.botton input#request,
	.botton input#apply {
		width: 75%;
		height: 20px;
		font-size: 1em;
	}

	/*
	 * コンテンツ
	*/
	/* 横並び解除 */
	#page-guide-area .guide,
	#page-guide-area .flow,
	#page-guide-area .botton {
		display: block;
		font-size: 90%;
	}
	#page-guide-area,
	#page-guide-area .guide,
	#page-guide-area .guide table,
	#page-guide-area .warm-up,
	#page-guide-area h2.title,
	#page-guide-area .flow,
	#page-guide-area .flow .schedule,
	#page-guide-area .flow .lta,
	#page-guide-area .botton,
	#page-guide-area .botton .request,
	#page-guide-area .botton .apply {
		width: 100%;
		padding: 0;
		background-color: #fff;
	}
	#page-guide-area .guide,
	#page-guide-area .flow,
	#page-guide-area .botton .request,
	#page-guide-area .botton .apply {
		width: 90%;
		margin: 0 auto;
	}
	#page-guide-area {
		padding-top: 2em;
	}
	#page-guide-area .warm-up {
		text-align: center;
		padding-top: 2em;
	}
	#page-guide-area .warm-up img {
		width: 80%;
		height: auto;
	}
	#page-guide-area .flow .schedule .shuryousho img {
		width: 80%;
		margin: 0 auto;
	}
	/* title */
	#page-guide-area h2.title {
		font-size: 1.1em;
		padding: 2em 0 1em 0;
		line-height: 60px;
		border: none;
	}
	#page-guide-area h2.title span {
		width: 60px;
		height: 60px;
	}
	#page-guide-area .flow {
		padding-bottom: 2em;
	}
	#page-guide-area .flow .lta h2 img {
		width: 60%;
		height: auto;
	}
	#page-guide-area .flow .lta p.img {
		padding: 1em 10%;
	}
	/* botton */
	#page-guide-area .botton {
		padding: 2em 0;
	}
	#page-guide-area .botton .request,
	#page-guide-area .botton .apply {
		padding: 1em 0;
	}
	/*
	#page-guide-area .botton h4 {
		padding-bottom: 0.3em;
		font-size: 0.9em;
	}*/
	.botton input#request,
	.botton input#apply {
		width: 90%;
		height: 65px;
		font-size: 1.1em;
	}
	/*
	.botton input#request {
		height: 40px;
	}
	*/
	#page_footer .sns {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		padding: 2em 0;
	}
	#page_footer .sns .tw {
		padding: 6px 0 0 10px;
	}
	/* about-ifca */
	#about-ifca h2 {
		-webkit-background-size: auto 70px;
		background-size: auto 70px;
		width: 280px;
		padding: 0.5em 0;
		font-size: 2.5em;
	}
	#about-ifca .box {
		padding: 2em 0 1em 0;
		font-size: 0.7em;
		line-height: 1.5em;
		display: block;
	}
	#about-ifca .mark#ifca-logo {
		width: 100%;
		padding: 0 42%;
	}
	#about-ifca .mark#ifca-logo img {
		width: 100%;
		height: auto;
	}
	#about-ifca .text {
		width: 90%;
		margin: 0 auto;
		padding-top: 1em;
	}
	#about-ifca .text h3 {
		text-align: center;
	}

	#footer.page {
		font-size: 0.7em;
	}
}


/*
 * ページによってカラーの変更
 * header navi　と色を揃える
 *各ページのスタイルシート一番下へ
*/
#page-header-main .nav li.btn a.request,
.botton input#request {
    background: #ADADAD;/*背景色*/
}
#page-header-main .nav li.btn a.apply,
.botton input#apply {
    background:  #DBDBDB;/*背景色*/
}
/* 折りたたみ */
#page-header-main .nav li.btn-smart a.request {
	color: #ADADAD;/*文字の色*/
    font-weight: bold;
}
#page-header-main .nav li.btn-smart a.apply {
    color:  #DBDBDB;/*文字の色*/
    font-weight: bold;
}
/**
 *
 *ADD_REVIEW 2025
*/
/*
 *nav area
*/
.below767,
#top_btn_area {
    display: none;
}
body.add_review #footer.page,
body.add_movie #footer.page {
    padding-bottom: 180px;
}
/*page-footer-banner*/
#page-footer-banner_add2025 {
    display: flex;
    justify-content: center;
    height: auto;
    width: 100%;
    padding: 0;
    margin: 0;
    position: fixed;
    bottom: 0;
    z-index: 999;
    line-height: 1;
}
#page-footer-banner_add2025 li {
    max-width: 400px;
    background-color: #fff;
    text-align: center;
    padding: 0;
}
#page-footer-banner_add2025 li a {
    display: block;
    width: 100%;
}
#page-footer-banner_add2025 li img {
    max-width: 100%;
}
@media (max-width: 767px) {
    .below767 {
        display: block;
    }
    #page-header-main .main-navi-inner.add-items {
        height: 340px;
    }
    /*top_btn_area*/
    #top_btn_area {
        display: block;
        padding: 1em 0;
    }
    #top_btn_area li {
        width: 100%;
        padding: 0 10% 0.75em 10%;
    }
    #top_btn_area a {
        display: block;
        width: 100%;
        padding: 0;
        line-height: 1;
    }
    #top_btn_area li img {
        -webkit-border-radius: 2px;
        /* for Safari and Chrome */
        -moz-border-radius: 2px;
        /* for Firefox */
        -o-border-radius: 2px;
        /* for opera */
        border-radius: 2px;
    }
    body.add_review #footer.page {
        padding-bottom: 120px;
    }
    body.add_movie #footer.page {
        padding-bottom: 3em;
    }
}
/*
 *review_add2025
*/
#review_add2025 {
    padding: 80px 0 0 0;
    margin: 0;
}
.review_inner {
    padding: 40px 30px;
    background-color: rgb(245, 240, 228);
}
#review_add2025 h1 {
    font-size: 25px;
    font-weight: normal;
    text-align: center;
    color: #ff7bac;
}
#review_add2025 ul {
    display: flex;
    justify-content: space-between;
    padding: 25px 0 20px 0;
}
#review_add2025 li {
    display: flex;
    justify-content: space-between;
    width: 32%;
    border-radius: 3px;
    padding: 30px 20px;
    box-sizing: border-box;
    background-color: #fff;
    box-shadow: 1px 5px 10px rgba(0, 0, 0, 0.2);
    /*cursor: pointer;*/
}
#review_add2025 li div {
    width: 75%;
}
#review_add2025 li div.review-icon {
    width: 20%;
    padding: 0:
}
#review_add2025 li div.review-icon img {
    max-width: 100%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -o-border-radius: 50%;
    border-radius: 50%;
}
#review_add2025 li .title {
    font-size: 1.3em;
    padding: 0.5em 0;
    color: #ff7bac;
}
#review_add2025 li .name {
    font-size: 1em;
    padding-bottom: 0.5em;
}
#review_add2025 li .text {
    font-size: 0.9em;
    padding-bottom: 1em;
}
#review_add2025 li .more a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    height: 20px;
    font-size: 0.8em;
    line-height: 1;
    -webkit-border-radius: 10px;
    /* for Safari and Chrome */
    -moz-border-radius: 10px;
    /* for Firefox */
    -o-border-radius: 10px;
    /* for opera */
    border-radius: 10px;
    color: #fff;
    background-color: #ff7bac;
    padding: 0 1em;
}
#review_add2025 .review_more_btn {
    display: flex;
    justify-content: center;
    padding-top: 1em;
}
#review_add2025 .review_more_btn a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 18%;
    height: 30px;
    font-size: 0.9em;
    line-height: 1;
    -webkit-border-radius: 15px;
    /* for Safari and Chrome */
    -moz-border-radius: 15px;
    /* for Firefox */
    -o-border-radius: 15px;
    /* for opera */
    border-radius: 15px;
    color: #fff;
    background-color: #ff7bac;
    /*background-color: rgb(227, 192, 107);*/
}
/*
 movie-aria 講座ごとのスタイルシートで調整
*/

@media (max-width: 767px) {
    #review_add2025 {
        padding: 50px 0 0 0;
        margin: 0;
    }
    .review_inner {
        padding: 40px 5%;
    }
    #review_add2025 h1 {
        font-size: 23px;
        line-height: normal;
    }
    #review_add2025 ul {
        display: block;
        padding: 1em 0 0 0;
    }
    #review_add2025 li {
        width: 100%;
        border-radius: 3px;
        padding: 30px;
        margin-bottom: 1em;
        box-sizing: border-box;
        background-color: #fff;
        box-shadow: 1px 5px 10px rgba(0, 0, 0, 0.2);
    }
    #review_add2025 .review_more_btn a {
        width: 50%;
    }
}
/**
 *
 *flavoring 2025
 *調整用
*/
body#flavoring #container {
	padding: 0 0 0 0; /* メニューの高さと揃える */
}