@charset 'UTF-8';

/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

	トップページ

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */



/* ================================================================================

	レイアウト

================================================================================ */

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	#wrapper {
	}

	main.outer_wrap {
		position: relative;
		max-width: none;
		/* max-width: 1920px; 固定幅レイアウト時 */
		width: 100%;
		min-height: 50vh;
		display: block;
		margin: 0 auto;
	}

	.inner_wrap {
		position: relative;
	}
}



/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	#wrapper {
	}

	main.outer_wrap {
		position: relative;
		width: 100%;
	}

	.inner_wrap {
		position: relative;
	}
}




/* ================================================================================

	見出し

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.h2-top {
		padding: 70px 0;
		font-family: paralucent, 'Noto Sans JP',-apple-system, BlinkMacSystemFont, 'Helvetica Neue', YuGothic, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, Arial, 'メイリオ', Meiryo, sans-serif;
		font-size: 70px;
		font-weight: bold;
		color: #3a58b2;
		letter-spacing: 0.08em;
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.h2-top {
		padding: 9vw 0;
		font-family: paralucent, 'Noto Sans JP',-apple-system, BlinkMacSystemFont, 'Helvetica Neue', YuGothic, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, Arial, 'メイリオ', Meiryo, sans-serif;
		font-size: 7.4vw;
		font-weight: bold;
		color: #3a58b2;
		letter-spacing: 0.08em;
	}
}




/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

	ここからコンテンツ内容

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */



/* ================================================================================

	ABOUT BODY UP DATE

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.row01 {
		background: url(../img/row01-bg.jpg) center top / auto auto no-repeat;
		height: 686px;
		color: #fff;
	}
	
	.row01-title {
		font-size: 30px;
		margin: 68px 15px 0 34px;
	}
	.row01-title h3 {
		line-height: 1.75 !important;
		letter-spacing: 0.08em;
	}
	.row01-title h3:first-letter {
		color: #9fb7ff;
	}
	
	.row01-text {
		margin: 23px 15px 0 34px;
	}
	.row01-text p {
		letter-spacing: 0.08em;
		line-height: 1.88;
	}
	
	.row01-name01 {
		margin: 23px 0 0 34px;
		display: block;
		margin-bottom: -2px;
		letter-spacing: 0.095em;
	}
	.row01-name02 {
		margin-left: 34px;
		font-size: 35px;
		font-weight: bold;
		letter-spacing: 0.1em;
	}
	.row01-name02 p:first-letter {
		color: #9fb7ff;
	}
	.row01-name02 span {
		font-size: 20px;
		font-weight: bold;
		margin-left: 12px;
		letter-spacing: 0.095em;
	}
	
	.row01-img {
		margin-top: 50px;
	}
	
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.row01 {
		background: url(../img/row01-bg_sp.jpg) center top / cover no-repeat;
		color: #fff;
		padding: 12vw 8vw;
	}
	
	.row01-title {
		font-size: 5.3vw;
		margin-top: 8vw;
	}
	.row01-title h3 {
		line-height: 1.75 !important;
		letter-spacing: 0.08em;
	}
	.row01-title h3:first-letter {
		color: #9fb7ff;
	}
	
	.row01-text {
		margin-top: 5vw;
	}
	.row01-text p {
		letter-spacing: 0.08em;
		line-height: 1.88;
	}
	
	.row01-name01 {
		margin-top: 5vw;
		letter-spacing: 0.095em;
	}
	.row01-name02 {
		font-size: 6vw;
		font-weight: bold;
		letter-spacing: 0.1em;
	}
	.row01-name02 p:first-letter {
		color: #9fb7ff;
	}
	.row01-name02 span {
		font-size: 4vw;
		font-weight: bold;
		margin-left: 2vw;
		letter-spacing: 0.095em;
	}
	
	.row01-img {
		width: 64vw !important;
		margin: 0 auto;
	}
}





/* ================================================================================

	POPULAR REASON

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.row02 {
		background: url(../img/row02-bg.jpg) center top / auto auto no-repeat;
		height: 1292px;
	}
	
	.row02-title {
		font-size: 40px;
		color: #fff;
		margin: 104px 265px 24px 294px !important;
	}
	.row02-title img {
		width: 354px;
		margin-right: 13px;
		padding: 16px 0;
	}
	.row02-title h3 {
		letter-spacing: 0.08em;
		line-height: 1.6 !important;
	}
	
	.reason-box {
		margin-top: -4px;
	}
	
	.reason-img {
		width: 292px !important;
	}
	.reason-img img {
		width: 100%;
	}
	
	.reason-title {
		color: #fff;
		font-size: 20px;
		font-weight: normal;
	}
	.reason-title {
		padding-left: 100px !important;
		letter-spacing: 0.1em;
		line-height: 1.4 !important;
	}
	.reason-title span {
		font-size: 30px;
		font-weight: bold;
	}
	.reason-title p:first-letter {
		color: #9fb7ff;
	}
	
	.rt01:before {
		content: '';
		position: absolute;
		background: url(../img/row02-before01.png) center top / contain no-repeat;
		width: 67px;
		height: 87px;
		top: -6px;
		left: 0;
	}
	.rt02:before {
		content: '';
		position: absolute;
		background: url(../img/row02-before02.png) center top / contain no-repeat;
		width: 67px;
		height: 87px;
		top: -6px;
		left: 0;
	}
	.rt03:before {
		content: '';
		position: absolute;
		background: url(../img/row02-before03.png) center top / contain no-repeat;
		width: 67px;
		height: 87px;
		top: -6px;
		left: 0;
	}
	
	.reason-text {
		color: #fff;
		margin-top: 14px;
		letter-spacing: 0.05em;
		line-height: 1.9;
	}
	
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.row02 {
		background: url(../img/row02-bg.jpg) center top / cover no-repeat;
		padding: 0 8vw 12vw;
	}
	
	.row02-title {
		font-size: 5.4vw;
		color: #fff;
		margin: 10vw 7vw 0;
	}
	.row02-title img {
		width: 49vw;
		margin-right: 2vw;
		padding: 4vw 0 2vw;
	}
	.row02-title h3 {
		letter-spacing: 0.08em;
		line-height: 1.6 !important;
	}
	
	.reason-img {
		width: 59vw !important;
		margin: 8vw auto 0;
	}
	.reason-img img {
		width: 100%;
	}
	
	.reason-title {
		color: #fff;
		font-size: 3.8vw;
		font-weight: normal;
	}
	.reason-title {
		letter-spacing: 0.1em;
		line-height: 1.4 !important;
		text-align: center;
		font-weight: normal;
		margin-top: 12vw !important;
	}
	.reason-title span {
		font-size: 5.75vw;
		font-weight: bold;
	}
	.reason-title p:first-letter {
		color: #9fb7ff;
	}
	
	.rt01:before {
		content: '';
		position: absolute;
		background: url(../img/row02-before01.png) center top / contain no-repeat;
		width: 12vw;
		height: 15vw;
		top: -18vw;
		margin: 0 35.8vw;
		z-index: 1;
		left: 0;
	}
	.rt02:before {
		content: '';
		position: absolute;
		background: url(../img/row02-before02.png) center top / contain no-repeat;
		width: 12vw;
		height: 15vw;
		top: -18vw;
		margin: 0 35.8vw;
		z-index: 1;
		left: 0;
	}
	.rt03:before {
		content: '';
		position: absolute;
		background: url(../img/row02-before03.png) center top / contain no-repeat;
		width: 12vw;
		height: 15vw;
		top: -18vw;
		margin: 0 35.8vw;
		z-index: 1;
		left: 0;
	}
	
	.reason-text {
		color: #fff;
		margin-top: 2vw;
		letter-spacing: 0.05em;
		line-height: 1.9;
	}
	
}





/* ================================================================================

	EXPERIENCE TRAINING

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.row03 {
		background-color: #3A58B2;
		padding: 80px 0 !important;
	}
	
	.row03-title {
		font-size: 30px;
		color: #fff;
	}
	.row03-title h3 {
		letter-spacing: 0.08em;
	}
	.row03-title h3:first-letter {
		color: #9fb7ff;
	}
	
	.training-box {
		margin-top: 50px;
	}
	
	.session-box {
		background-color: #6982cf;
		border: 5px solid #fff;
		color: #fff;
		font-weight: bold;
		text-align: center;
		padding: 48px 48px 42px;;
		letter-spacing: 0.08em;
	}
	
	.session-title {
		background-color: #fff;
		color: #6982cf;
		font-size: 18px;
		font-weight: normal;
	}
	
	.row03-session {
		font-size: 18px;
		margin-top: 15px;
	}
	
	.row03-price {
		font-size: 50px;
		margin-top: -9px;
	}
	
	.row03-time {
		font-size: 20px;
	}
	
	.row03-attention {
		color: #fff;
		text-align: center;
		margin-top: 35px;
		letter-spacing: 0.08em;
	}
	
	.more-btn {
		margin-top: 46px;
	}
	.more-btn a {
		color: #fff;
		font-size: 25px;
		border: 3px solid #fff;
		width: 304px;
		height: 75px;
		display: block;
		text-align: center;
		margin: 0 auto;
		padding: 13px 0;
		font-weight: 500;
		letter-spacing: 0.08em;
	}
	
	.more-btn_2 {
		margin-top: 46px;
	}
	.more-btn_2 a {
		color: #fff;
		font-size: 25px;
		border: 3px solid #fff;
		width: 304px;
		height: 75px;
		display: block;
		text-align: center;
		margin: 0 auto;
		padding: 13px 0;
		font-weight: 500;
		letter-spacing: 0.08em;
	}
	
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.row03 {
		background-color: #3A58B2;
		padding: 12vw 8vw !important;
	}
	
	.row03-title {
		font-size: 5.5vw;
		color: #fff;
	}
	.row03-title h3 {
		letter-spacing: 0.08em;
	}
	.row03-title h3:first-letter {
		color: #9fb7ff;
	}
	
	.training-box {
		margin: 8vw 3vw 0;
	}
	
	.session-box {
		background-color: #6982cf;
		border: 0.8vw solid #fff;
		color: #fff;
		font-weight: bold;
		text-align: center;
		padding: 10vw 10vw 8vw;
		letter-spacing: 0.08em;
	}
	
	.sp_session02 {
		margin-top: 8vw;
	}
	
	.session-title {
		background-color: #fff;
		color: #6982cf;
		font-size: 4vw;
		font-weight: normal;
	}
	
	.row03-session {
		font-size: 4vw;
		margin-top: 5vw;
	}
	
	.row03-price {
		font-size: 12vw;
		margin-top: -2vw;
	}
	
	.row03-time {
		font-size: 3.8vw;
	}
	
	.row03-attention {
		color: #fff;
		text-align: left;
		margin-top: 6vw;
		letter-spacing: 0.08em;
	}
	
	.more-btn {
		margin-top: 8vw;
	}
	.more-btn a {
		color: #fff;
		font-size: 4.5vw;
		border: 0.6vw solid #fff;
		width: 58vw;
		height: 15vw;
		display: block;
		text-align: center;
		margin: 0 auto;
		padding: 3vw 0;
		font-weight: 500;
		letter-spacing: 0.08em;
	}
	
	.more-btn_2 {
		margin-top: 8vw;
	}
	.more-btn_2 a {
		color: #fff;
		font-size: 4.5vw;
		border: 0.6vw solid #fff;
		width: 75vw;
		height: 15vw;
		display: block;
		text-align: center;
		margin: 0 auto;
		padding: 3vw 0;
		font-weight: 500;
		letter-spacing: 0.08em;
	}
	
}




/* ================================================================================

	1 MONTH CHALLENGE

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.row04 {
		background-color: #6982CF;
		padding: 80px 0 !important;
		text-align: center;
		color: #fff;
	}
	
	.row04-title {
		font-size: 30px;
	}
	.row04-title h3 {
		line-height: 1.75 !important;
		letter-spacing: 0.08em;
	}
	.row04-title h3:first-letter {
		color: #9fb7ff;
	}
	
	.row04-img {
		margin-top: 40px;
	}
	
	.row04-text {
		margin-top: 35px;
	}
	.row04-text p {
		letter-spacing: 0.08em;
		line-height: 1.88;
	}
	
	.row04-pricecontent {
		margin-top: 35px;
	}
	
	.row04-pricebox {
		border: 5px solid #fff;
		color: #fff;
		font-weight: bold;
		text-align: center;
		padding: 37px 30px 42px;
		letter-spacing: 0.08em;
	}
	
	.row04-pricetitle {
		font-size: 30px;
	}
	
	.row04-price {
		font-size: 50px;
		letter-spacing: 0.08em;
		margin-top: -9px;
	}
	
	.row04-subprice {
		font-size: 25px;
		margin-top: -4px;
	}
	
	.row04-attention p {
		letter-spacing: 0.08em;
		line-height: 1.88;
	}
	
	.row04-contact {
		margin-top: 30px;
	}
	.row04-contact p {
		letter-spacing: 0.08em;
		line-height: 1.88;
	}
	
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.row04 {
		background-color: #6982CF;
		padding: 10vw 8vw 12vw !important;
		text-align: center;
		color: #fff;
	}
	
	.row04-title {
		font-size: 5.5vw;
	}
	.row04-title h3 {
		line-height: 1.75 !important;
		letter-spacing: 0.08em;
	}
	.row04-title h3:first-letter {
		color: #9fb7ff;
	}
	
	.row04-img {
		margin-top: 6vw;
	}
	
	.row04-text {
		margin-top: 6vw;
		text-align: left;
	}
	.row04-text p {
		letter-spacing: 0.08em;
		line-height: 1.88;
	}
	
	.row04-pricecontent {
		margin-top: 6vw;
	}
	
	.row04-pricebox {
		border: 0.8vw solid #fff;
		color: #fff;
		font-weight: bold;
		text-align: center;
		padding: 10vw 7vw 8vw;
		letter-spacing: 0.08em;
	}
	
	.row04-pricetitle {
		font-size: 5.5vw;
	}
	
	.row04-price {
		font-size: 12vw;
		letter-spacing: 0.08em;
		margin-top: -2vw;
	}
	.row04-price span {
		display: block;
		font-size: 3.8vw !important;
		margin-top: -1vw;
	}
	
	.row04-subprice {
		font-size: 3.8vw;
		margin-top: -2vw;
	}
	
	.row04-attention {
		margin-top: 3vw;
	}
	.row04-attention p {
		letter-spacing: 0.08em;
		line-height: 1.88;
	}
	
	.row04-contact {
		margin-top: 6vw;
		text-align: left;
	}
	.row04-contact p {
		letter-spacing: 0.08em;
		line-height: 1.88;
	}
	
}




/* ================================================================================

	ボタン

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.row05 {
		padding: 120px 0 !important;
	}
	
	.row05-btn img {
		width: 260px;
	}
	
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.row05 {
		padding: 12vw 20vw 8vw !important;
	}
	
	.row05-btn img {
		width: 60vw;
	}
}




/* ================================================================================

	NEWS / BLOG

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.row06 {
		padding-bottom: 180px;
	}
	
	.row06 .post_wrap ul li {
		width: 235px;
		float: left;
		margin-right: 46px;
	}
	.row06 .post_wrap ul li:last-of-type {
		margin: 0;
	}
	.row06 .post_wrap ul li a {
		color: #3a58b2;
		font-size: 18px;
		font-weight: bold;
		line-height: 1.5;
		letter-spacing: 0.08em;
		display: block;
	}
	.row06 .post_wrap .post_title {
		margin-top: 24px;
	}
	
	.row06 .post_wrap .post_thumb img {
		object-position: 0 0;
		height: 156px;
		object-fit: cover;
		font-family: 'object-fit: cover;';
		width: 235px;
	}
	
	.more-btn02 {
		margin-top: 46px;
	}
	.more-btn02 a {
		color: #3a58b2;
		font-size: 25px;
		border: 3px solid #3a58b2;
		width: 304px;
		height: 75px;
		display: block;
		text-align: center;
		margin: 0 auto;
		padding: 13px 0;
		font-weight: 500;
		letter-spacing: 0.08em;
	}
	
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.row06 {
		padding-bottom: 16vw;
		margin: 0 auto;
		width: 59vw;
	}
	
	.row06 .post_wrap ul li {
		float: left;
		margin-bottom: 8vw;
	}
	.row06 .post_wrap ul li:last-of-type {
		margin: 0;
	}
	.row06 .post_wrap ul li a {
		color: #3a58b2;
		font-size: 4vw;
		font-weight: bold;
		line-height: 1.5;
		letter-spacing: 0.08em;
		display: block;
	}
	.row06 .post_wrap .post_title {
		margin-top: 4vw;
	}
	
	.more-btn02 {
		margin-top: 8vw;
	}
	.more-btn02 a {
		color: #3a58b2;
		font-size: 4.5vw;
		border: 0.6vw solid #3a58b2;
		width: 58vw;
		height: 15vw;
		display: block;
		text-align: center;
		margin: 0 auto;
		padding: 3vw 0;
		font-weight: 500;
		letter-spacing: 0.08em;
	}
	
}