@charset "utf-8";
/* 標準調整 */
img {
	height: auto;
	max-width: 100%;
}
html {
 	line-height: 1.6;
	font-size: 100%;
	font-family: "Noto Sans JP","Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "メイリオ", Meiryo, "MS P Gothic", "MS Pゴシック", Osaka, Arial, Helvetica, sans-serif;
}

/* 個別スタイル */

/*～～～～～～～～～～～～～～～～～～～～～～～

固有スタイルへ追加

～～～～～～～～～～～～～～～～～～～～～～～*/
a {
	display:block;
	transition:all .3s;
}
a:hover{
	opacity:0.7;
	transition:all .3s;
}
img {
	width:100%;
}

/*▼レスポンシブテンプレ*/
@media screen and (max-width: 767px){
}/*sp end*/
/*▲レスポンシブテンプレ*/

	
/*▼レスポンシブ 表示/非表示*/
@media screen and (min-width: 768px){
	.pc {display:block;}
	.sp {display:none;}
}/*pc end*/
@media screen and (max-width: 767px){
	.pc {display:none;}
	.sp {display:block;}
}/*sp end*/
/*▲レスポンシブ 表示/非表示*/

/*▼YouTube用ラッパー*/
.iframe_wrapper iframe {
	aspect-ratio: 16/9;
	height: auto;
	width: 100%;
}	
/*▲YouTube用ラッパー*/

/*▼default wrapper*/
.wrapper{
	background: #f8f8ff;
}
.wrapper > .inner {
	position:relative;
	background:#fff;
	width: 750px;
	margin: 0 auto;
	box-shadow: 0 0 20px 0 #ccc;
}	
@media screen and (max-width: 767px){
	.wrapper{
		width:100%;
	}
	.wrapper > .inner {
		width:100%;
	}
}/*sp end*/
/*▲default wrapper*/
	



/*▼区切り線*/
.hr_line{
	display:block;
	height:1px;
	width:90%;
	margin:120px auto 120px;
	border:none;
	border-bottom:1px solid #707070;
}
@media screen and (max-width: 767px){
.hr_line{
	margin: 18vw auto 18vw;
}
}/*sp end*/
/*▲区切り線*/


/*～～～～～～～～～～～～～～～～～～～～～～～

変数

～～～～～～～～～～～～～～～～～～～～～～～*/
:root {
	--color-text-main-blue: #00368F;
}



/*～～～～～～～～～～～～～～～～～～～～～～～

共通CTA

～～～～～～～～～～～～～～～～～～～～～～～*/
.cta_common {}
.cta_common .cta_common_btn {
	width: 84%;
	margin: 0 auto;
	padding: 24px 0 24px;
	background: #FC8200;
	color: #fff;
	font-weight: bold;
	text-align: center;
	font-size: 40px;
	border-radius: 80px;
	letter-spacing: 0.05em;
}
@media screen and (max-width: 767px){
.cta_common .cta_common_btn {
	padding: 1rem 0 1rem;
	font-size: 1.6rem;
	border-radius: 4rem;
}
}/*sp end*/





/*～～～～～～～～～～～～～～～～～～～～～～～

header ヘッダー

～～～～～～～～～～～～～～～～～～～～～～～*/
.header {
	border-bottom: 1px solid #eee;
}
.header img {
	vertical-align:middle;
}
.header .inner {
	display: flex;
	align-items: center;
	padding: 20px 20px 20px;
	justify-content: space-between;
}
.header .header_link01{
	width:25%;
}
.header .header_logo02 {
	width:30%;
}
.header .header_logo02 .img_block{}

@media screen and (max-width: 767px){
.header{}
.header .inner{
	padding:3vw 3vw 3vw;
}
.header .header_link01{
	width:36%;
}
.header .header_logo02 {
	width:34%;
}
.header .header_logo02 .img_block{}
}/*sp end*/





/*～～～～～～～～～～～～～～～～～～～～～～～

fv ファーストビュー

～～～～～～～～～～～～～～～～～～～～～～～*/
.fv{}
.fv .fv_mv{
	padding:0 0 40px;
}
.fv .fv_txt01{
	color:var(--color-text-main-blue);
	font-weight:bold;
	text-align:center;
	padding:0 0 40px;
	font-size:32px;
}
@media screen and (max-width: 767px){
.fv .fv_mv{
	padding:0 0 6vw;
}
.fv .fv_txt01{
	padding:0 0 6vw;
	font-size:1.2rem;
}
}/*sp end*/






/*～～～～～～～～～～～～～～～～～～～～～～～

cp_bnr キャンペーンバナー

～～～～～～～～～～～～～～～～～～～～～～～*/

.cp_bnr {
	padding:0 0 40px;
}
.cp_bnr .img_block {
	width:94%;
	margin:0 auto;
}
@media screen and (max-width: 767px){
.cp_bnr {
	padding:0 0 6vw;
}
.cp_bnr .img_block {}
}/*sp end*/



/*～～～～～～～～～～～～～～～～～～～～～～～

cta_01

～～～～～～～～～～～～～～～～～～～～～～～*/	
.cta_01{}
@media screen and (max-width: 767px){
.cta_01{}
}/*sp end*/



/*～～～～～～～～～～～～～～～～～～～～～～～

sec01 こんなお悩み

～～～～～～～～～～～～～～～～～～～～～～～*/
.sec01{
	padding:80px 0 60px;
}
@media screen and (max-width: 767px){
.sec01{
	padding:10vw 0 8vw;
}
}/*sp end*/




/*～～～～～～～～～～～～～～～～～～～～～～～

sec02 走り方が変われば

～～～～～～～～～～～～～～～～～～～～～～～*/
.sec02{
}
.sec02 .sec02_ttl {
	color: #FC8200;
	font-weight: bold;
	text-align: center;
	font-size: 40px;
	padding: 0 0 40px;
}
.sec02 .img_block01{
	padding:0 0 100px;
}
.sec02 .img_block02{
	padding:0 60px 60px;
}
@media screen and (max-width: 767px){
.sec02{
}
.sec02 .sec02_ttl {
	font-size:1.6rem;
}
.sec02 .img_block01{
	padding:0 0 18vw;
}
.sec02 .img_block02{
	padding:0 6vw 4vw;
}

}/*sp end*/






/*～～～～～～～～～～～～～～～～～～～～～～～

sec03 忍者ナインで身につく

～～～～～～～～～～～～～～～～～～～～～～～*/
.sec03 {
	margin: 0 0 100px;
}
.sec03 .sec03_ttl {
	color: var(--color-text-main-blue);
	font-size: 40px;
	font-weight: bold;
	text-align: center;
	padding: 0 0 40px;
}
.sec03 .sec03_content {
	color: #fff;
	background: #00368F;
	width: 95%;
	margin: 0 auto 60px;
	padding: 40px 20px 60px;
}
.sec03 .sec03_content .cont01 {
	padding: 0 0 80px;
}
.sec03 .sec03_content .cont01 .sec03_subttl {
	padding: 0 0 40px;
}
.sec03 .sec03_content .cont01 .txt01 {
	font-size: 26px;
	width: 98%;
	margin: 0 auto;
	padding: 0 0 40px;
}
.sec03 .sec03_content .cont01 .txt02_box {
	border-top: 1px solid #fff;
	position: relative;
	width: 98%;
	margin: 0 auto;
}
.sec03 .sec03_content .cont01 .txt02_box .txt02_box_txt {
	display: inline-block;
	background: #00368F;
	padding: 0 24px 0;
	font-size: 36px;
	left: 50%;
	position: relative;
	transform: translateX(-50%);
	top: -31px;
}
.sec03 .sec03_content .cont01 .img_block {}
.sec03 .sec03_content .cont02 {
	padding: 0 0 80px;
}
.sec03 .sec03_content .cont02 .sec03_subttl {
	padding: 0 0 40px;
}
.sec03 .sec03_content .cont02 .txt01 {
	font-size: 26px;
	width: 98%;
	margin: 0 auto;
	padding: 0 0 40px;
}
.sec03 .sec03_content .cont02 .img_block {
	width: 98%;
	margin: 0 auto;
}
.sec03 .sec03_content .cont03 {}
.sec03 .sec03_content .cont03 .sec03_subttl {
	padding: 0 0 40px;
}
.sec03 .sec03_content .cont03 .txt01 {
	font-size: 26px;
	width: 98%;
	margin: 0 auto;
	padding: 0 0 40px;

}
.sec03 .sec03_content .cont03 .img_block {
	width: 92%;
	margin: 0 auto;
	padding:0 0 20px;
}
.sec03 .sec03_content .cont03 .txt02 {
	font-size: 26px;
	width: 98%;
	margin: 0 auto;
	text-align:center;
}
.sec03 .sec03_txt01{
	color:#E83820;
	font-size:40px;
	font-weight:bold;
	text-align:center;
}
@media screen and (max-width: 767px) {
.sec03 {}

.sec03 .sec03_ttl {
	font-size: 1.9rem;
	padding: 0 0 8vw;
}
.sec03 .sec03_content {
	margin: 0 auto 10vw;
	padding: 6vw 3vw 12vw;
}
.sec03 .sec03_content .cont01 {
	padding: 0 0 10vw;
}
.sec03 .sec03_content .cont01 .sec03_subttl {
	padding: 0 0 4vw;
}
.sec03 .sec03_content .cont01 .txt01 {
	font-size: 1.1rem;
	padding: 0 0 14vw;
}
.sec03 .sec03_content .cont01 .txt02_box {}

.sec03 .sec03_content .cont01 .txt02_box .txt02_box_txt {
	font-size: 1.6rem;
	padding: 0 1.4rem 0;
	top: -1.4rem;
}
.sec03 .sec03_content .cont01 .img_block {}

.sec03 .sec03_content .cont02 {
	padding: 0 0 14vw;
}
.sec03 .sec03_content .cont02 .sec03_subttl {
	padding: 0 0 4vw;
}
.sec03 .sec03_content .cont02 .txt01 {
	font-size: 1.1rem;
	padding: 0 0 6vw;
}
.sec03 .sec03_content .cont02 .img_block {
	width: 95%;
}
.sec03 .sec03_content .cont03 {}
.sec03 .sec03_content .cont03 .sec03_subttl {
	padding: 0 0 4vw;
}
.sec03 .sec03_content .cont03 .txt01 {
	font-size: 1.1rem;
	padding: 0 0 6vw;
}
.sec03 .sec03_content .cont03 .img_block {
	padding:0 0 4vw;
}
.sec03 .sec03_content .cont03 .txt02 {
	font-size: 1.1rem;
}
.sec03 .sec03_txt01{
	font-size:1.9rem;
}
}/*sp end*/




/*～～～～～～～～～～～～～～～～～～～～～～～

cta_02

～～～～～～～～～～～～～～～～～～～～～～～*/	
.cta_02{}
@media screen and (max-width: 767px){
.cta_02{}
}/*sp end*/






/*～～～～～～～～～～～～～～～～～～～～～～～

sec04 総合満足度

～～～～～～～～～～～～～～～～～～～～～～～*/
.sec04 {}
.sec04 .sec04_ttl01 {
	color: var(--color-text-main-blue);
	font-weight: bold;
	text-align: center;
	padding: 0 0 26px;
}
.sec04 .sec04_ttl01 .txt01 {
	position: relative;
	background: #f2d76b;
	width: 84%;
	margin: 0 auto 48px;
	font-size: 40px;
	line-height: 1;
	padding: 22px 0 26px;
	border-radius: 100px;
}
.sec04 .sec04_ttl01 .txt01::before {
	position: absolute;
	content: '';
	display: block;
	bottom: -34px;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-top: 34px solid #f2d76b;
	border-right: 30px solid transparent;
	border-left: 30px solid transparent;
}
.sec04 .sec04_ttl01 .txt02 {
	font-size: 58px;
	line-height: 1.3;
}
.sec04 .sec04_ttl01 .txt02 .red{
	color:#fa2c16;
}
.sec04 .img_block01{
	width:84%;
	margin:0 auto;
	padding:0 0 26px;
}
.sec04 .sec04_anno {
	padding: 0 0 140px 48px;
}
.sec04 .sec04_anno .anno_items {
	color: #666666;
	font-size: 18px;
	line-height:1.2;
}


.sec04 .sec04_ttl02 {
	color: var(--color-text-main-blue);
	font-weight: bold;
	text-align: center;
	padding: 0 0 10px;
	font-size: 36px;
}
.sec04 .img_block02 {
	width:94%;
	margin:0 auto;
}
@media screen and (max-width: 767px){
.sec04 {}
.sec04 .sec04_ttl01 {
	padding: 0 0 5vw;
}
.sec04 .sec04_ttl01 .txt01 {
	margin: 0 auto 4vw;
	font-size: 1.4rem;
	padding: .8rem 0 1rem;
}
.sec04 .sec04_ttl01 .txt01::before {
	bottom: -1.0rem;
	border-top: 1.2rem solid #f2d76b;
	border-right: 1.0rem solid transparent;
	border-left: 1.0rem solid transparent;
}
.sec04 .sec04_ttl01 .txt02 {
	font-size: 2.2rem;
}
	
.sec04 .img_block01 {
	padding: 0 0 4vw;
}	
.sec04 .sec04_anno {
	padding: 0 3vw 26vw;
}
.sec04 .sec04_anno .anno_items {
	font-size: .8rem;
	line-height:1.2;
	padding:0 0 2vw;
}
.sec04 .sec04_ttl02 {
	font-size:1.4rem;
	padding: 0 0 2vw;
}
.sec04 .img_block02 {
}
}/*sp end*/





/*～～～～～～～～～～～～～～～～～～～～～～～

sec05 動画エリア

～～～～～～～～～～～～～～～～～～～～～～～*/
.sec05{}
.sec05 .sec05_ttl {
	color: var(--color-text-main-blue);
	font-weight: bold;
	text-align: center;
	padding: 0 0 40px;
	font-size: 36px;
}
.sec05 .sec05_movie{
	background:#00368F;
	padding:20px 0 60px;
}
.sec05 .sec05_movie .sec05_subttl{
	color:#fff;
	font-size:32px;
	text-align:center;
	font-weight:bold;
	padding:0 0 20px;
}
@media screen and (max-width: 767px){
.sec05{}
.sec05 .sec05_ttl {
	font-size: 1.4rem;
	padding: 0 0 8vw;
}
.sec05 .sec05_movie {
	padding: 3vw 0 9vw;
}
.sec05 .sec05_movie .sec05_subttl {
	font-size: 1.4rem;
	padding: 0 0 3vw;
}
}/*sp end*/




/*～～～～～～～～～～～～～～～～～～～～～～～

sec06 動画エリア

～～～～～～～～～～～～～～～～～～～～～～～*/
.sec06 {
	padding: 60px 0 0;
}
.sec06 .sec06_ttl {
	color: var(--color-text-main-blue);
	font-weight: bold;
	text-align: center;
	padding: 0 0 40px;
	font-size: 36px;
}
.sec06 .sec06_list{
	width:92%;
	margin:0 auto;
}
.sec06 .sec06_list .list_items{
	padding:0 0 40px;
}
.sec06 .sec06_list .list_items:last-child{
	padding:0;
}
@media screen and (max-width: 767px){
.sec06 .sec06_ttl {
	font-size: 1.4rem;
	padding: 0 0 5vw;
}
.sec06 .sec06_list{}
.sec06 .sec06_list .list_items{
	padding:0 0 6vw;
}
}/*sp end*/





/*～～～～～～～～～～～～～～～～～～～～～～～

sec07 入会までの流れ

～～～～～～～～～～～～～～～～～～～～～～～*/
.sec07{}
.sec07 .sec07_ttl {
	position: relative;
	left: 50%;
	transform: translate(-50%,0);
	color: var(--color-text-main-blue);
	font-size: 40px;
	font-weight: bold;
	display: inline-block;
	border-bottom: 2px solid var(--color-text-main-blue);
	padding: 0 0 8px;
	margin: 0 0 20px;
}
.sec07 .sec07_txt01 {
	color: var(--color-text-main-blue);
	font-size: 26px;
	text-align: center;
	font-weight: bold;
	padding: 0 0 20px;
}
.sec07 .img_block {
	padding: 0 0 80px;
}
@media screen and (max-width: 767px){
.sec07{}
.sec07 .sec07_ttl {
	font-size: 1.9rem;
	padding: 0 0 1vw;
	margin: 0 0 4vw;
}
.sec07 .sec07_txt01{
	font-size:1.2rem;
	padding:0 0 4vw;
}
.sec07 .img_block {
	padding: 0 0 10vw;
}
}/*sp end*/






/*～～～～～～～～～～～～～～～～～～～～～～～

sec08 よくあるご質問

～～～～～～～～～～～～～～～～～～～～～～～*/
.sec08{
	padding:140px 0 140px;
}
.sec08 .sec08_ttl{
	position: relative;
	left: 50%;
	transform: translate(-50%,0);
	color: var(--color-text-main-blue);
	font-size: 40px;
	font-weight: bold;
	display: inline-block;
	border-bottom: 2px solid var(--color-text-main-blue);
	padding: 0 0 8px;
	margin: 0 0 120px;
}
.sec08 .sec08_faq {
	width: 90%;
	margin: 0 auto;
}
.sec08 .sec08_faq .faq_block {
	margin: 0 0 80px;
}
.sec08 .sec08_faq .faq_block:last-child {
	margin: 0;
}
.sec08 .sec08_faq .faq_block .txt_q {
	position: relative;
	color: var(--color-text-main-blue);
	font-weight: bold;
	font-size: 32px;
	padding: 0 0 16px 54px;
}
.sec08 .sec08_faq .faq_block .txt_q::before {
	position: absolute;
	content: '';
	display: inline-block;
	background: url(../img/sec08_before_01.png) no-repeat center /contain;
	width: 38px;
	height: 38px;
	top: 7px;
	left: 0;
}
.sec08 .sec08_faq .faq_block .txt_a{
	position:relative;
	font-size:24px;
	padding: 0 0 0 54px;
}
.sec08 .sec08_faq .faq_block .txt_a::before{
	position: absolute;
	content: '';
	display: inline-block;
	background: url(../img/sec08_before_02.png) no-repeat center /contain;
	width: 38px;
	height: 38px;
	top: 2px;
	left: 0;
}
.sec08 .sec08_faq .faq_block .txt_a .small{
	font-size:20px;
}
@media screen and (max-width: 767px){
.sec08 {
	padding: 16vw 0 24vw;
}
.sec08 .sec08_ttl{
	font-size: 1.9rem;
	padding: 0 0 1vw;
	margin: 0 0 14vw;
}
.sec08 .sec08_faq {}
.sec08 .sec08_faq .faq_block {
	margin: 0 0 12vw;
}
.sec08 .sec08_faq .faq_block:last-child {
	margin: 0;
}
.sec08 .sec08_faq .faq_block .txt_q {
	font-size: 1.4rem;
	padding: 0 0 1rem 3rem;
}
.sec08 .sec08_faq .faq_block .txt_q::before {
	width: 2.2rem;
	height: 2.2rem;
	top: .3rem;
	left: 0;
}
.sec08 .sec08_faq .faq_block .txt_a{
	position:relative;
	font-size:1.1rem;
	padding: 0 0 0 3rem;
}
.sec08 .sec08_faq .faq_block .txt_a::before{
	width: 2.2rem;
	height: 2.2rem;
	top: 0;
	left: 0;
}
.sec08 .sec08_faq .faq_block .txt_a .small{
	font-size:.9rem;
}
}/*sp end*/






/*～～～～～～～～～～～～～～～～～～～～～～～

sec09 公式リンクボタンエリア

～～～～～～～～～～～～～～～～～～～～～～～*/
.sec09 {
	padding:40px 0 80px;
}
.sec09 .sec09_link01 {
	color: #fff;
	background: #00368F;
	text-align: center;
	line-height: 1;
	font-size: 40px;
	width: 90%;
	margin: 0 auto;
	padding: 28px 0 34px;
	border-radius: 50px;
}	
@media screen and (max-width: 767px){
.sec09 {
	padding:10vw 0 20vw;
}
.sec09 .sec09_link01 {
	font-size: 1.4rem;
	padding: 1.6rem 0 1.9rem;
}
}/*sp end*/




/*～～～～～～～～～～～～～～～～～～～～～～～

footer フッター

～～～～～～～～～～～～～～～～～～～～～～～*/
.footer{
	padding:60px 0 200px;
	background:#00368F;
}
.footer .footer_copy{
	font-size:22px;
	color:#fff;
	text-align:center;
}
@media screen and (max-width: 767px){
.footer{
	padding:10vw 0 30vw;
}
.footer .footer_copy{
	font-size:.8rem;
}
}/*sp end*/




/*～～～～～～～～～～～～～～～～～～～～～～～

fixed_cta 下部固定CTA

～～～～～～～～～～～～～～～～～～～～～～～*/
.fixed_cta {
	position: fixed;
	bottom: 0;
	left: 50%;
	z-index:999;
	transform: translateX(-50%);
	width: 750px;
	background: #ffc800;
	padding: 18px 0 18px;
}
.fixed_cta .inner{
	display:flex;
	align-items:center;
	justify-content:space-between;
	width:96%;
	margin:0 auto;
}
.fixed_cta .inner .btn01{
	width:32%;
	padding:0 14px 0 0;
}
.fixed_cta .inner .btn02{
	width:68%;
}
@media screen and (max-width: 767px){
.fixed_cta {
	width:100%;
	padding:3vw 0 3vw;
}
.fixed_cta .inner{}
.fixed_cta .inner .btn01{
	padding:0 .4rem 0 0;
}
.fixed_cta .inner .btn02{
}
}/*sp end*/


