/**************************************************************
 *  共通設定
 **************************************************************/
.pt10 {padding-top: 10px;}
.pt20 {padding-top: 20px;}
.pt30 {padding-top: 30px;}
.pt40 {padding-top: 40px;}
.pt50 {padding-top: 50px;}
.pt60 {padding-top: 60px;}
.pt70 {padding-top: 70px;}
.pt80 {padding-top: 80px;}
.pt90 {padding-top: 90px;}

.p10 {padding-bottom: 10px;}
.p20 {padding-bottom: 20px;}
.p30 {padding-bottom: 30px;}
.p40 {padding-bottom: 40px;}
.p50 {padding-bottom: 50px;}
.p60 {padding-bottom: 60px;}
.p70 {padding-bottom: 70px;}
.p80 {padding-bottom: 80px;}
.p90 {padding-bottom: 90px;}

.lp_wrapper {
	width: 970px;
	margin-left: auto;
	margin-right: auto;
}

.flex {
	display: flex;
	justify-content: space-between;
}
.flex_wrap {
	flex-wrap: wrap;
}

.bubble {
	background-color: #2170a8;
	color: #fff;
	font-size: 250%;
	padding: 20px 0;
	text-align: center;
	border-radius: 7px;
	position:absolute;
	top: -30px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}
.bubble:after {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -15px;
	border: 15px solid transparent;
	border-top: 15px solid #2170a8;
}

.banner_item {
	width: 100%;
	margin: 1rem auto;
	text-align: center;
}
.banner_item img {
	width: 100%;
}
a {
	display: inline-block;
}
a:hover,a:focus {
	opacity: 0.7;
}

body {
	/*font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;*/
	font-family: 'ヒラギノ角ゴ Pro','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
}
@media screen and (max-width: 896px){
	.banner_item {
		width: 90%;
	}

	img {
		width: 100%;
	}

	h2 {
		margin: 0;
	}
	.lp_wrapper {
		width: 100%;
	}
}

/**************************************************************
 *	ヘッダー
 **************************************************************/
header ul {
	display: table;
}
header li {
	display:table-cell;
	height: 65px;
	vertical-align: middle;
}
header li a {
	display: block;
	color: #fff;
	text-decoration: none;
	height: 65px;
	line-height: 4.7;
}
header .pc_logo,
header .sp_logo
 {
	width: 17%;
}
header .linkbox {
	width: 16%;
	text-align: center;
}
header .info {
	background-color: #e40132;
}
header .online {
	background-color: #e40132;
}
header .zoom {
	background-color: #5bb431;
}
header .taiken {
	background-color: #0054a6;
}
header .entry {
	background-color: #22ad38;
}
@media screen and (min-width: 897px){
	header .sp_logo {display: none;}
}
@media screen and (max-width: 896px){
	header li a {
		font-size: 80%;
		line-height: 5.5;
	}
	header .pc_logo {display: none;}

	header .catchcopy {
/*
		online, zoom,taikenなどのリンクが復活した際にはこちら削除すること
*/
/*		width: 40%;
		padding-left: 10px;*/
	}
	header .catchcopy img {
/*
		online, zoom,taikenなどのリンクが復活した際にはこちらもコメントを外すこと
		width: 95%;
*/
		width: 95%;
		width: auto;
		padding-left: 5px;
	}
/*
	header .online a {
		line-height: 1.2;
		padding-top: 20px;
	}
	header .zoom a {
		line-height: 1.2;
		padding-top: 20px;
	}
*/
	header .row2 a {
		line-height: 1.2;
		padding-top: 20px;
	}
}
/**************************************************************
 *  メイン画像
 **************************************************************/
.mainph_wrapper {
	width: 100%;
}
.mainph_wrapper img {
	width: 100%;
}

/**************************************************************
 *  MOVIE/CM
 **************************************************************/
#movie {
	background-color: #fff2cb;
	margin: 0;
	padding: 80px 0;
}
#movie h2 {
	color: #eb6100;
	text-align: center;
	font-size: 250%;
	font-weight: 900;
}

 .cm_area {
	width: 100%;
}

/**************************************************************
 *  イベント
 **************************************************************/
.conv_event {
	margin: 0;
	position: relative;
	background-color: #fff2cb;
	padding: 80px 0;
}


@media screen and (min-width: 897px){
	.conv_event .bubble {
		width: 720px;
	}
}
@media screen and (max-width: 896px){
	.conv_event {
		padding: 40px 0 20px;
	}
	.conv_event .bubble {
		width: 90%;
		font-size: 150%;
		padding: 20px 10px;
	}
}




/**************************************************************
 *  こんなお悩みありませんか？
 **************************************************************/
#nayami {
	position: relative;
	background-image: url(img/bubble.jpg);
	margin: 0 0 80px;
}
#nayami .lp_wrapper {
	padding-top: 40px;
}
.nayami_img {
	text-align: center;
}

@media screen and (min-width: 897px){
	#nayami .bubble {
		width: 550px;
	}
}
@media screen and (max-width: 896px){
	#nayami {
		margin: 0 0 40px;
	}
	#nayami .lp_wrapper {
		padding-top: 20px;
	}
	#nayami .bubble {
		width: 80%;
		font-size: 150%;
		padding: 20px 10px;
	}
	.nayami_img {
		width: 90%;
		margin-left: auto;
		margin-right: auto;
	}
}

/**************************************************************
 *  お悩みを解決
 **************************************************************/
#kaiketu h2 {
	text-align: center;
	color: #eb6100;
	font-size: 250%;
	font-weight: bolder;
}
.kaiketu_wrapper {
	/*background-color: #fbc82b;*/
	background: repeating-linear-gradient(-45deg, #fabe23, #fabe23 10px, #fbcc4f 0, #fbcc4f 20px);
}
.kaiketu_item {
	position: relative;
}
.kaiketu_img {
	text-align: center;
}
.kaiketu_text {
	margin: 1.5rem 2.5rem;
	font-size: 120%;
	line-height: 1.5;
}
@media screen and (min-width: 897px){
	#kaiketu {
		margin: 0 0 80px;
	}
	.kaiketu_wrapper {
		margin-top: 150px;
		padding-top: 140px;
		padding-bottom: 50px;
	}
	.kaiketu_item {
		width: calc( 100% / 3 );
	}
	.kaiketu_img {
		position: absolute;
		top: -240px;
		left: 50%;
		transform: translateX(-50%);
		width: 100%;
	}
}
@media screen and (max-width: 896px){
	#kaiketu {
		margin: 0 0 40px;
	}
	#kaiketu h2 {
		font-size: 150%;
	}
	.kaiketu_wrapper {
		margin-top: 2rem;
		padding-top: 2rem;
	}
	.kaiketu_item {
		width: 100%;
	}
	.kaiketu_img {
		width: 65%;
		margin-left: auto;
		margin-right: auto;
	}
	.kaiketu_text {
		margin: 1rem 2.5rem 3rem;
	}
}

/**************************************************************
 *  ４つの約束
 **************************************************************/
#yakusoku {
	font-size: 110%;
	line-height: 1.5;
	margin: 0 0 80px;
}
#yakusoku h3 {
	color: #e50012;
	font-size: 200%;
	font-weight: bold;
	margin-bottom: 1rem;
}
.yakusoku_4 {
	width: 800px;
	margin: 2rem auto;
}
.yakusoku_item {
	display: table;
	width: 100%;
}
.yakusoku_img {
	display: table-cell;
	width: 20%;
}
.yakusoku_text {
	display: table-cell;
	width: 80%;
}

@media screen and (max-width: 896px){
	#yakusoku {
		margin: 0 0 40px;
	}
	.yakusoku_bnr {
		width: 95%;
		margin-left: auto;
		margin-right: auto;
	}
	.yakusoku_4 {
		width: 95%;
		margin: 3rem auto;
	}
	#yakusoku h3 {
		font-size: 120%;
		margin-bottom: 5px;
	}
	.yakusoku_img {
		padding-right: 10px;
	}
	.yakusoku_text {
		padding-bottom: 2rem;
		vertical-align: top;
	}
}

/**************************************************************
 *  学習サイクル
 **************************************************************/
#cycle {
	background-color: #fbc82b;
	text-align: center;
	position: relative;
	margin: 0 0 80px;
	padding: 80px 0;
}
#cycle h2 {
	position: absolute;
}
.cycle_title {
	font-size: 400%;
	font-weight: 900;
	line-height: 1.3;
	margin: 2rem 0;
}
.cycle_title span {
	color: #e50012;
}
.cycle_text {
	color: #eb6100;
	font-size: 240%;
	font-weight: 900;
	line-height: 1.3;
	margin: 2rem 0;
}
.cycle_wrapper {
	margin-left: auto;
	margin-right: auto;
}
.cycle_wrapper img {
	width: 100%;
}

@media screen and (min-width: 897px){
	#cycle .bubble {
		width: 870px;
	}
	.cycle_wrapper {
		width: 970px;
	}
}
@media screen and (max-width: 896px){
	#cycle {
		margin: 0 0 40px;
		padding: 80px 0 40px;
	}
	#cycle .bubble {
		width: 90%;
		font-size: 150%;
		padding: 20px 10px;
	}
	.cycle_title {
		font-size: 180%;
	}
	.cycle_text {
		font-size: 120%;
	}
	.cycle_wrapper {
		width: 95%;
	}
}

/**************************************************************
 *  開講クラスラインナップ
 **************************************************************/
#schedule {
	text-align: center;
	margin: 80px 0 80px;
}
#schedule h2 {
	color: #eb6100;
	font-size: 250%;
	font-weight: 900;
	margin-bottom: 1rem;
}
.schedule_text {
	color: #eb6100;
	margin-bottom: 1.5rem;
}

@media screen and (max-width: 896px){
	#schedule {
		margin: 40px 0 40px;
	}
	#schedule h2 {
		font-size: 180%;
	}
	.schedule_img {
		width: 95%;
		margin-left: auto;
		margin-right: auto;
	}
}

/**************************************************************
 *  しっかりと寄り添います
 **************************************************************/
#yorisoi {
	background-color: #fff2cb;
	margin: 0;
	padding: 80px 0;
}
#yorisoi h2 {
	color: #eb6100;
	text-align: center;
	font-size: 250%;
	font-weight: 900;
}
.yorisoi_wrapper {
	width: 85%;
	margin-left: auto;
	margin-right: auto;
}
.yorisoi_item {
	width: 48%;
}
.yorisoi_item img {
	width: 100%;
}
.yorisoi_text {
	margin:	1.5rem 0 0;
	font-size: 105%;
	line-height: 1.5;
}
#yorisoi .line {
	color: #e60012;
	background-color: #fff78c;
	font-weight: bold;
}

#yorisoi h3 {
	background-color: #eb6100;
	color: #fff;
	padding: 20px 0;
	text-align: center;
	margin: 0;
	font-size: 200%;
}

@media screen and (max-width: 896px){
	#yorisoi {
		padding: 40px 0 20px;
	}
	#yorisoi h2 {
		font-size: 180%;
	}
	.yorisoi_wrapper {
		width: 90%;
		margin-top: 2rem;
	}
	.yorisoi_item {
		width: 100%;
		margin-bottom: 2rem;
	}
	#yorisoi h3 {
		font-size: 170%;
	}
	.yorisoi_text {
		margin: 0.5rem 0 0;
	}

}

/**************************************************************
 *  入会から受講までの流れ
 **************************************************************/
#nagare {
	margin: 0 0 80px;
}
#nagare h2 {
	background-image: url(img/nagare_bg.png);
	text-align: center;
	color: #fff;
	padding: 3rem 0;
	font-size: 250%;
	font-weight: 900;
	margin-bottom: 5rem;
}
.nagare_area {
	width: 85%;
	margin:	2rem auto;
}
.nagare_item {
	position: relative;
	border-left: 18px solid #fff2ca;
	padding-left: 2.5rem;
	padding-bottom: 2.5rem;
	margin: 0;
}
.nagare_item:last-child{
	border-left: 18px solid #fff;
}
.nagare_item .number {
	position: absolute;
	top: -6px;
	left: -34px;
	color: #fff;
	font-size: 200%;
	background-color: #eb6101;
	border-radius: 50%;
	padding: 10px 15px;
}
.nagare_title {
	color: #eb6101;
	font-size: 250%;
	font-weight: 900;
}
.nagare_item .desc {
	color: #000;
	font-size: 50%;
	margin-left: 2rem;
}
.nagare_item ol {
	margin-top: 2rem;
	margin-left: 0;
}
.nagare_item ol li {
	line-height: 2;
	font-size: 110%;
}

@media screen and (max-width: 896px){
	#nagare {
		margin: 0 0 40px;
	}
	#nagare h2 {
		font-size: 200%;
		padding: 2rem 0;
		margin-bottom: 3rem;
	}
	.nagare_area {
		width: 90%;
	}
	.nagare_item {
		padding-left: 0;
		padding-bottom: 2rem;
	}
	.nagare_item .number {
		font-size: 160%;
		top: -9px;
		left: -31px;
	}
	.nagare_title {
		font-size: 180%;
		margin-left: 1.7rem;
	}
	.nagare_item .desc {
		font-size: 45%;
		margin-left: 0.7rem;
	}
	.nagare_item ol {
		margin-top: 1rem;
	}
	.nagare_item ol li {
		font-size: 95%;
	}
}

/**************************************************************
 *  お問い合わせ・お申し込みはこちら
 **************************************************************/
.conv {
	margin: 0;
	position: relative;
	/*background-color: #fbc82b;*/
	background: repeating-linear-gradient(-45deg, #fabe23, #fabe23 10px, #fbcc4f 0, #fbcc4f 20px);
	padding: 80px 0;
}
.conv h2 {
	position: absolute;
}
.conv_setumeikai {
	width: 100%;
	margin: 1rem auto;
	text-align: center;
}
.conv_setumeikai img {
	width: 100%;
}
.conv_area {
	width: 805px;
	margin: 2rem auto;
}
.conv_item {
	width: calc( 100% / 3 - 5px );
}
.conv a:hover,
.conv a:focus {
	opacity: 1;
}
.conv a:hover img,
.conv a:focus img {
	opacity: 0.7;
}
.conv a {
	background-color: #fff;
	border-radius: 10px;
}

p.site_link_outer{
		text-align: center;
		vertical-align: middle;
		display: inline-block;
		margin: auto;
		width: 80%;
}

a.site_link{
	vertical-align: middle;
	text-align: center;
	display: inline-block;
	width: 48%;
	height: 117px;
	float: left;
	text-decoration: none;
	padding: auto;
}

a.site_link_setumeikai{
	margin-right: 4%;
	background-color: #ff2800;
	color: white;
	font-size: 24px;
	font-weight:bold;
}

a.site_link_taikenkai{
	background-color: #0048ff;
	color: white;
	font-size: 24px;
	font-weight:bold;
}

a.site_link span{
	display: block;
	margin-top: 30px;
	line-height: 1.2;
}

@media screen and (min-width: 897px){
	#conv_top {
		margin-bottom: 80px;
	}
	.conv .bubble {
		width: 720px;
	}
}
@media screen and (max-width: 896px){
	#conv_top {
		margin-top: 40px;
		margin-bottom: 40px;
	}
	.conv {
		padding: 80px 0 20px;
	}
	.conv .bubble {
		width: 90%;
		font-size: 150%;
		padding: 20px 10px;
	}
	.conv_setumeikai {
		width: 90%;
	}
	.conv_area {
		width: 100%;
		margin: 2rem auto 0;
	}
	.conv_item {
		width: 100%;
		margin: 10px auto;
		text-align: center;
	}
	a.site_link{
		width: 100%;
		margin: 10px auto;
		height: 117px;
	}
}

/**************************************************************
 *  sec02
 **************************************************************/
	#sec02 h2 {
		background-color: #00479d;
		color: #fff;
		font-size: 200%;
		text-align: center;
		padding: 2rem 0;
	}
	#sec02 .text {
		text-align: center;
		margin-bottom: 2rem;
	}
	#sec02 .img_area {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	#sec02 .img_area .item_img {
		text-align: center;
	}
	#sec02 .img_area .item_img img {
		width: 100%;
	}

@media screen and (min-width: 897px){
	#sec02 {
 		margin: 0 0 80px;
	}
	#sec02 .text {
		font-size: 120%;
	}
	#sec02 .img_area .item_img {
		width: calc( 100% / 3 - 10px);
		text-align: center;
		margin-bottom: 15px;
	}
}
@media screen and (max-width: 896px){
	#sec02 {
 		margin: 0 0 40px;
	}
	#sec02 h2 {
		font-size: 160%;
		margin-bottom: 2rem;
	}
	#sec02 .text {
		width: 95%;
		margin-left: auto;
		margin-right: auto;
	}
	#sec02 .img_area {
		width: 95%;
		margin-left: auto;
		margin-right: auto;
	}
	#sec02 .img_area .item_img {
		width: calc( 100% / 2 - 5px);
		text-align: center;
		margin-bottom: 10px;
	}
}
