#kv{
	margin: 0 auto;
	padding: 0 0 0 0;
	position:relative;
	/*height: 100vh;*/
	overflow: hidden;
	min-width:1180px;
}
.kv_inner{
	margin: 0 auto;
	padding: 0 0 0 0;
	position:relative;
	overflow: hidden;
	animation: fadezoom 20s 0s forwards;
}


/* バックグラウンドにKV配置する場合 */
/*
#kv{
	margin: 0 auto;
	padding: 0 0 0 0;
	position:relative;
	height: 100vh;
	overflow: hidden;
}
.kv_inner{
	margin: 0 auto;
	padding: 0 0 0 0;
	position:relative;
	height: 100vh;
	overflow: hidden;
	background:  url(../images/top/kv_bg.jpg?2) no-repeat center bottom;
	background-size:cover;
	animation: fadezoom 20s 0s forwards;
}
*/
@keyframes fadezoom {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.1); /* 拡大率 */
  }
}

#kv h2{
	position:absolute;
	text-align:center;
	width: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-35%, -60%);
	z-index: 2;
}
#kv h2 img{
	width: 40%;
	max-width:760px;
}

#kv h3{
	position:absolute;
	text-align:center;
	width: 100%;
	bottom: 0;
	left: 0;
	right: 0;


}

#kv h3:before{
	display:block;
	content:'';
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	background-color:#ff5ad7;
	mix-blend-mode: multiply;
}
#kv h3 span{
	margin: 0 0;
	padding: 30px 0;
	position:relative;
	font-weight:800;
	font-size: 32px;
	letter-spacing: 0.05em;
	line-height: 1;
	text-align: center;
	color: #fff;
	font-family: "M PLUS Rounded 1c", sans-serif;
	display:block;
	z-index: 10;
}

@media (max-width: 980px) {

}
article{
}

#article{
	padding-bottom: 1px;
	background-color:#fff;
}

.more_block{
	margin: 0 0 0px;
	padding: 100px 0 100px;
	position:relative;
	text-align:center;
	min-width: 1180px;
}

.more_inner{
	margin: 0 auto;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
	max-width: 1920px;
}

.more_block h2{
	margin: 0 auto 40px;
	padding: 0 0 ;
	position:relative;
	text-align:center;
	z-index:1;
}

.more_block h2 span{
	margin: 0 0;
	padding: 0 5px;
	font-weight:800;
	font-size: 40px;
	letter-spacing: 0.01em;
	line-height: 1;
	text-align: center;
	color: #ff5ad7;
	font-family: "M PLUS Rounded 1c", sans-serif;
	background:linear-gradient(transparent 60%, #ff6 60%);
}

.more_block .more_txt{
	margin: 0 auto;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;

	font-weight: 500;
	font-size: 21px;
	letter-spacing: 0.05em;
	line-height: 2;
	color: #000;
	z-index:1;
	-webkit-text-stroke: 5px #fff;
	text-stroke: 5px #fff;
	paint-order: stroke;
}
@keyframes moreFadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.more_inner img.more_bg{
	position:absolute;
	text-align:center;
	margin:auto;
	top:100px;
	bottom:0;
	left:0;
	right:0;
	opacity: 0;
	animation: moreFadeIn 0.5s ease-in forwards;
}



.link_block{
	margin: 0 auto;
	padding: 80px 0 50px;
	position:relative;
	text-align:center;
	min-width: 1180px;
	background-color:#ff5ad7;
	background-image: url(../images/top/link_block_bg.png);
	background-repeat: repeat;
	background-position: center top;
	background-size: auto auto;
}


ul.link_block_list{
	margin: 0 auto;
	padding: 0;
	position:relative;
	text-align:center;
	width: 1000px;
	display: flex;
	align-items:stretch;
	justify-content:space-between;
	flex-wrap:wrap;
}

ul.link_block_list li{
	margin: 0 0 30px;
	padding: 0px 0 0 0px;
	position:relative;
	letter-spacing:normal;
	width:31%;
}

ul.link_block_list li a{
	display:block;
	margin: 0 0 0;
	padding: 0 0;
	position:relative;
	text-align:center;
	font-weight: bold;
	font-size: 22px;
	letter-spacing: 0;
	line-height: 1.5;
	color: #fff;
	border-radius: 60px;
	height:90px;
	display: flex;
	align-items:center;
	justify-content:center;
	border:2px solid #000;
	filter: drop-shadow(4px 6px 0px rgba(0,0,0,1.0));
}

ul.link_block_list li:nth-child(1) a{
	background-color:#1ebe00;
}
ul.link_block_list li:nth-child(2) a{
	background-color:#ff9100;
}
ul.link_block_list li:nth-child(3) a{
	background-color:#b446ff;
}
ul.link_block_list li:nth-child(4) a{
	background-color:#595fff;
}
ul.link_block_list li:nth-child(5) a{
	background-color:#00beff;
}
ul.link_block_list li:nth-child(6) a{
	background-color:#ff4123;
}

ul.link_block_list li a:hover{
	color: #fff;
	background-image:repeating-linear-gradient(45deg, rgba(255,255,255,0.2) 0 12px, transparent 12px 24px);
	text-decoration: none;
	transition : 0.3s;
}



.flow_area{
	margin: 0 auto;
	padding: 100px 20px;
	position:relative;
	text-align:center;
	min-width: 1180px;
	background-color:#fcffc3;
	background-image: url(../images/top/flow_bg.svg),repeating-linear-gradient(-45deg, rgba(255,255,255,0.3) 0 40px, transparent 40px 80px);
	background-repeat: no-repeat,no-repeat;
	background-position: center top 100px,center top;
	background-size: auto , auto;
}

.flow_area h2{
	margin: 0 auto 50px;
	padding: 0 0 ;
	position:relative;
	text-align:center;
	z-index:1;
	width:840px;
}

.flow_area h2 small{
	margin: 0 0 30px;
	padding: 20px 60px;
	font-weight:800;
	font-size: 50px;
	letter-spacing: 0.01em;
	line-height: 1;
	text-align: center;
	color: #000;
	font-family: "M PLUS Rounded 1c", sans-serif;
	border-radius: 60px;
	background-color:#f5ff2d;
	border:3px solid #000;
	filter: drop-shadow(4px 6px 0px rgba(0,0,0,1.0));
	display:inline-block;
}
.flow_area h2 em{
	margin: 0 0;
	padding: 0 5px;
	font-weight:800;
	font-size: 100px;
	letter-spacing: 0.01em;
	line-height: 1;
	text-align: center;
	color: #000;
	font-family: "M PLUS Rounded 1c", sans-serif;
	display:block;
	filter: drop-shadow(3px 3px 3px rgba(255,255,255,0.9));
}

.flow_area h2 img.flow_h2_img{
	position: absolute;
	top: -62px;
	right:-70px;
	z-index:10;
}

ul.flow_list{
	margin: 0 auto;
	padding: 0 0 ;
	position:relative;
	text-align:center;
	z-index:10;
	width:840px;
}

ul.flow_list li{
	margin: 0 auto 110px;
	padding: 0 0 ;
	position:relative;
	text-align:center;
	width:840px;
	border-radius: 25px;
	border:4px solid #000;
	z-index:10;
	background-color:#fff;
}

ul.flow_list li::after{
	content: "";
	position: absolute;
	bottom:-20px;
	right:-15px;
	width: 100%;
	height:100%;
	border-radius: 25px;
	background-color:#000;
	z-index:-1;
}

ul.flow_list li:nth-child(1){
	background-color:#ffd7ff;
	
}

ul.flow_list li h3{
	margin: 0 auto;
	padding: 0 0 40px 40px;
	position:relative;
	text-align:left;
	background-color:#ff5ad7;
	border-radius: 20px 20px 0 0;
	display: flex;
	align-items:flex-start;
	justify-content:flex-start;
}
ul.flow_list li h3 span{
	margin: 0 0;
	padding: 40px 0 0 40px;
	font-weight:800;
	font-size: 55px;
	letter-spacing: 0.00em;
	line-height: 1.3;
	text-align: center;
	color: #000;
	font-family: "M PLUS Rounded 1c", sans-serif;
	text-align:left;
	filter: drop-shadow(3px 3px 0px rgba(255,255,255,0.9));
}

.flow_contents1{
	margin: 0 auto;
	padding: 40px 40px;
	position:relative;
	text-align:center;
	display: flex;
	align-items:center;
	justify-content:space-between;
	background-color:#ffd7ff;
	border-radius: 0 0 20px 20px;
}
.flow_contents1 a:hover{
transition : 0.3s;
filter: saturate(100%) brightness(90%);
}

.flow_arr {
	position: absolute;
	bottom: -80px;
	left:0;
	right:0;
	margin:auto;
}

.flow_area h3 img.flow_h3_img1{
	position: absolute;
	top: -30px;
	right:20px;
	z-index:10;
}

.flow_contents2{
	margin: 0 auto;
	padding: 40px 40px;
	position:relative;
	text-align:center;
	display: flex;
	align-items:flex-end;
	justify-content:space-between;
	background-color:#fff;
	border-radius: 0 0 20px 20px;
}
.flow_contents2 a:hover{
transition : 0.3s;
filter: saturate(100%) brightness(90%);
}
.flow_area h3 img.flow_h3_img2{
	position: absolute;
	top: 50px;
	right:-25px;
	z-index:10;
}

ul.flow_list li h4{
	margin: 0 auto;
	padding: 20px 0 20px 40px;
	position:relative;
	text-align:left;
	background-color:#000;
	font-weight:800;
	font-size: 45px;
	letter-spacing: 0.00em;
	line-height: 1;
	color: #fff;
	font-family: "M PLUS Rounded 1c", sans-serif;
}
ul.flow_list li h4 em{
margin: 0 10px;
height:76px;
width:76px;
border-radius:50%;
text-align:center;
background-color:#f5ff2d;
display:inline-block;
	font-weight:800;
	font-size: 54px;
	letter-spacing: 0.00em;
	line-height: 76px;
	text-align: center;
	color: #000;
}

.flow_contents3{
	margin: 0 auto;
	padding: 40px 40px;
	position:relative;
	text-align:center;
	display: flex;
	align-items:stretch;
	justify-content:space-between;
	background-color:#fff;
}

.flow_contents3 span img{
margin-bottom:20px;
}
.flow_contents3 span{
	width:360px;
	font-weight:500;
	font-size: 16px;
	letter-spacing: 0.00em;
	line-height: 1.8;
	color: #000;
	text-align:justify;
}
.flow_contents3 span small{
	font-size: 13px;
}

.flow_contents4{
	margin: 0 auto;
	padding: 40px 0 40px;
	position:relative;
	text-align:center;

	background-color:#00c896;
}

.flow_contents4 h5{
	margin: 0 auto 40px;
	padding: 0 0;
	position:relative;
	text-align:center;
}

.flow_contents4 .lead_txt{
	margin: 0 auto 40px;
	padding: 0 0;
	position:relative;
	text-align:center;
	font-weight:500;
	font-size: 18px;
	letter-spacing: 0.00em;
	line-height: 2;
	color: #fff;
}

.flow_contents4 p{
	margin: 0 54px 40px;
	padding: 0 0;
	position:relative;
	text-align:left;
	font-weight:500;
	font-size: 18px;
	letter-spacing: 0.00em;
	line-height: 1.6;
	color: #000;
}

.oc_event_column{
	margin: 0 auto 10px;
	padding: 0 0;
	position:relative;
	text-align:center;
	display: flex;
	align-items:stretch;
	justify-content:space-between;
	flex-wrap:wrap;
	width:780px;
}
.oc_event_column img{
	margin: 0 0 20px;
	padding: 0 0;
	position:relative;
	text-align:center;
}

.oc_benefit{
	margin: 0 auto;
	padding: 0 0 ;
	position:relative;
	text-align:center;
	width:760px;
	border-radius: 25px;
	border:4px solid #000;
	z-index:10;
	background-color:#fff;
}
.oc_benefit h6{
	margin: 0 auto;
	padding: 0 0 ;
	position:relative;
	text-align:center;
	background-color:#aa32ff;
	background-image: repeating-linear-gradient(-45deg, rgba(255,255,255,0.15) 0 30px, transparent 30px 60px);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: auto;
	border-radius: 20px;
	cursor: pointer;
}
.oc_benefit h6 img{
margin-top:-20px;
margin-bottom:20px;
}
.oc_benefit h6:before {
  position: absolute;
  top: 30px;
  right:30px;
  margin:auto;
  content: url(../images/top/slide_arr.svg);
  transition : 0.5s;
}
.oc_benefit h6.open {
	border-radius: 20px 20px 0 0;
}
.oc_benefit h6.open:before {
	position: absolute;
	top: 27px;
	right:30px;
	margin:auto;
	content: url(../images/top/slide_arr.svg);
	transform: rotate(180deg);
	transition : 0.5s;
}

.oc_benefit_slide{
	margin: 0 auto;
	padding: 40px 0 0;
	position:relative;
	text-align:center;
	display:none;
}



ul.flow_list li:nth-child(4) h3 span{
	font-size: 50px;
}

img.flow_step4_img{
  position: absolute;
  bottom: -100px;
  left:20px;
}







.senior_area{
	margin: 0 auto;
	padding: 80px 0;
	position:relative;
	text-align:center;
	min-width: 1180px;
	background-color:#ffebfa;
	z-index:10;
}
.senior_area::before {
content: "";
position: absolute;
top:-25px;
left:0;
width: 100%;
height: 25px;
background-image: url("../images/top/senior_bg.svg");
background-repeat: repeat-x;
background-position: center top;
background-size:auto 25px;
}
.senior_area::after {
content: "";
position: absolute;
bottom:-25px;
left:0;
width: 100%;
height: 25px;
background-image: url("../images/top/senior_bg.svg");
background-repeat: repeat-x;
background-position: center bottom;
background-size:auto 25px;
transform: rotate(180deg);
}

.senior_inner{
	margin: 0 auto 70px;
	padding: 0 0;
	position:relative;
	text-align:center;
	width: 840px;
}

.senior_inner h2{
	margin: 0 0 30px -40px;
	padding: 0 0;
	position:relative;
	text-align:left;

}

.senior_inner p{
	margin: 0 0;
	padding: 0 0;
	position:relative;
	text-align:justify;
	width: 510px;
	font-weight:500;
	font-size: 21px;
	letter-spacing: 0.02em;
	line-height: 2.0;
	color: #000;
}

.senior_inner .senior_img{
	position:absolute;
	top:10px;
	right:0;
}


ul.senior_list{
	margin: 0 auto 100px;
	padding: 0 0 0;
	position:relative;
	text-align:center;
	width:auto;
	overflow: hidden
}

ul.senior_list li{
	margin: 0 0;
	padding: 20px 0 ;
	position:relative;
	letter-spacing:normal;
	text-align:center;
	background:#fff;
	box-sizing: border-box;
	border-radius: 20px;
	border:2px solid #ff5ad7;
	width:400px !important;
}


ul.senior_list li:nth-child(2) {

}

ul.senior_list li h3{
	margin: 0 auto 20px;
	padding: 0 0;
	position:relative;
	text-align:center;
}

ul.senior_list li h3 img{
	width:290px;
	height:auto;
	text-align:center;
}

ul.senior_list li .senior_p{
	margin: 0 auto 30px;
	padding: 0 0;
	position:relative;
	text-align:center;
}

ul.senior_list li .senior_p img{
	width:auto;
	height:540px;
	border-radius: 20px;
}

ul.senior_list li .senior_p span{
	margin: 0 auto;
	padding: 0 0;
	position:absolute;
	bottom:40px;
	left:0;
	right:0;
	text-align:center;
	background-color:#000;
	font-weight:800;
	font-size: 18px;
	letter-spacing: 0.00em;
	line-height: 60px;
	color: #fff;
	font-family: "M PLUS Rounded 1c", sans-serif;
	background-color:#ff5ad7;
	border:2px solid #fff;
	border-radius: 50px;
	width:280px;
	filter: drop-shadow(4px 6px 0px rgba(255,255,255,1.0));
}


ul.senior_list li .senior_name{
	margin: 0 0 20px;
	padding: 0 0 0;
	text-align:center;
	position:relative;
	font-weight: 400;
font-size: 20px;
letter-spacing: 0;
line-height: 1.5;
color: #ff5ad7;

}

ul.senior_list li .news_linkArea a{
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index:999;
    background-color:#FFF;
    filter:alpha(opacity=0);
    -moz-opacity: 0;
    opacity: 0;
}


ul.senior_list .slick-slider{position: static;}

ul.senior_list .slick-list{
	/* overflow: visible;*/
	overflow: hidden
}

ul.senior_list .slick-track {}
ul.senior_list .slick-slide {
	/*width:540px !important;*/
}
ul.senior_list .slick-slide.slick-current {
  opacity: 1;
}
ul.senior_list .slick-slide a {
  display: block;
}

ul.senior_list .slick-slide{margin:0 20px;}

ul.senior_list .slick-slide img
{
display: inline-block!important;
}

.slide-arrow {
	margin: auto;
	position: absolute;
	bottom: 0;
	top: 0;
	left:0;
	right:0;
	width: 75px;
	height:75px;

}
.slide-arrow img{

	cursor: pointer;
	margin: auto;
	position: absolute;
	top: 0;
	width: 70px;
	z-index:11;
}
.prev-arrow {
	left: -218px;
}
.next-arrow {
	right: -218px;
}




/* popup_movie */

.mfp-bg {background: #000 !important;opacity: 0.5 !important;}
.white-popup-block{padding:0 0;text-align:justify;margin:0 auto;position:relative}
.mfp-hide{display:none!important}

.popup_movie_block{
	box-sizing: border-box;
	margin: 0 auto;
	padding: 30px 0 30px;
	position:relative;
	text-align:center;
	background-color:#fff;
	border-radius:20px;
	height:90vh;
	min-height:600px;
	aspect-ratio: 430 / 712;
	border:2px solid #ff5ad7;
}

.popup_close{
	position: absolute;
	top: -20px;
	right: -20px;
}

.popup_close a{
	display:block;
}

.mfp-close{
	display:none !important;
}

.popup_movie_block h3{
	margin: 0 auto 20px;
	padding: 0 0;
	position:relative;
	text-align:center;
}

.popup_movie_block h3 img{
	width:290px;
	height:auto;
	text-align:center;
}

.popup_movie_block .senior_p{
	margin: 0 auto 20px;
	padding: 0 0;
	position:relative;
	text-align:center;
	height: calc(100% - 100px)
}
.popup_movie_block .senior_p video.senior_video {
	width: auto;
	height: 100%;
	border-radius: 20px;
	display: block;
	margin: 0 auto;
	object-fit: contain; /* 画面内に収める、切り取りたくない場合 */
	background-color: #000; /* 背景黒にすると未再生時の余白が目立たない */
}

.popup_movie_block .senior_p img{
	width:auto;
	height:100%;
	border-radius: 20px;
}


.popup_movie_block h4{
	margin: 0 0 20px;
	padding: 0 0 0;
	text-align:center;
	position:relative;
	font-weight: 400;
font-size: 20px;
letter-spacing: 0;
line-height: 1.5;
color: #ff5ad7;
}






.faq_area{
	margin: 0 auto;
	padding: 120px 0 100px;
	position:relative;
	text-align:center;
	min-width: 1180px;
	background-color:#8ce6ff;
	background-image: url(../images/top/link_block_bg.png);
	background-repeat: repeat;
	background-position: center top;
	background-size: 52px auto;
	z-index:9;
}

.faq_area::after {
content: "";
position: absolute;
bottom:-25px;
left:0;
width: 100%;
height: 25px;
background-image: url("../images/top/faq_bg.svg");
background-repeat: repeat-x;
background-position: center bottom;
background-size:auto 25px;
transform: rotate(180deg);
}


.faq_area h2{
	margin: 0 auto 60px;
	padding: 0 0;
	position:relative;
	text-align:center;
}

ul.faq_list{
	margin: 0 auto;
	padding: 0;
	position:relative;
	text-align:center;
	width: 980px;
	display: flex;
	align-items:stretch;
	justify-content:space-between;
	flex-wrap:wrap;
}

ul.faq_list li{
	margin: 0 0 40px;
	padding: 0px 0 0 0px;
	position:relative;
	text-align:center;
	width:32%;
}

ul.faq_list li a{
	display:block;
	margin: 0 0 0;
	padding: 0 0;
	position:relative;
	text-align:center;
}

ul.faq_list li a:hover{
	filter: drop-shadow(7px 7px 0px rgba(255,255,50,1.0));
}



/* popup */

.mfp-bg {background: #000 !important;opacity: 0.5 !important;}
.white-popup-block{padding:0 0;text-align:justify;margin:0 auto;position:relative}
.mfp-hide{display:none!important}

.popup_block{
	box-sizing: border-box;
	margin: 0 auto;
	padding: 30px 0;
	position:relative;
	text-align:center;
	background-color:#fff;
	border-radius:20px;

	max-width:660px!important;
	border:0px solid #f5cc38;
}

.popup_close{
	position: absolute;
	top: -20px;
	right: -20px;
}

.popup_close a{
	display:block;
}

.mfp-close{
	display:none !important;
}

.popup_block h3{
	margin: 0 auto 30px;
	padding: 0 0 ;
	position: relative;
	text-align:center;
}

.popup_block h4{
	margin: 0 auto 30px;
	padding: 0 0 ;
	position: relative;
	text-align:center;
	font-weight:800;
	font-size: 30px;
	letter-spacing: -0.05em;
	line-height: 1.5;
	color: #000;
	font-family: "M PLUS Rounded 1c", sans-serif;
	max-width:550px!important;
}
.popup_block h4.left{
	text-align:justify;
}
.popup_block .popup_img{
	margin: 0 auto 0;
	padding: 0 0 ;
	position: relative;
	text-align:left;
	font-weight: 600;
	font-size: 14px;
	letter-spacing: 0.01em;
	line-height: 26px;
	color: #5a3c32;
	display:inline-block;
}

.popup_block .pop_txt{
	margin: 0 auto 30px;
	padding: 0 80px ;
	position: relative;
	text-align:left;
	font-weight: 600;
	font-size: 22px;
	letter-spacing: 0.01em;
	line-height: 1.5;
	color: #000;
}

.popup_btn{
	margin: 0 auto;
	padding: 0 0 ;
	position: relative;
	text-align:center;
	display:inline-block;
}

.popup_btn a{
	display:block;
	margin: 0 0 0;
	padding: 15px 30px;
	position:relative;
	text-align:center;
	font-weight: bold;
	font-size: 24px;
	letter-spacing: 0;
	line-height: 1;
	color: #fff;
	border-radius: 60px;
	display: flex;
	align-items:center;
	justify-content:center;
	border:2px solid #000;
	filter: drop-shadow(4px 6px 0px rgba(0,0,0,1.0));
	background-color:#e8004c;
	font-family: "M PLUS Rounded 1c", sans-serif;
}

.popup_btn a:hover{
	color: #fff;
	background-image:repeating-linear-gradient(45deg, rgba(255,255,255,0.2) 0 12px, transparent 12px 24px);
	text-decoration: none;
	transition : 0.3s;
}





.course_area{
	margin: 0 auto;
	padding: 110px 20px;
	position:relative;
	text-align:center;
	min-width: 1180px;
	background-color:#ffdcf5;
	background-image: repeating-linear-gradient(-45deg, rgba(255,255,255,0.3) 0 40px, transparent 40px 80px);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: auto;
	z-index:8;
}


.course_area h2{
	margin: 0 auto 50px;
	padding: 0 0 ;
	position:relative;
	text-align:center;
	z-index:1;
	width:840px;
}

.course_area h2 small{
	margin: 0 0 30px;
	padding: 20px 40px;
	font-weight:500;
	font-size: 26px;
	letter-spacing: 0.10em;
	line-height: 1;
	text-align: center;
	color: #ff5ad7;
	font-family: "M PLUS Rounded 1c", sans-serif;
	border-radius: 60px;
	background-color:#f5ff2d;
	border:3px solid #ff5ad7;
	filter: drop-shadow(4px 6px 0px rgba(255,90,215,1.0));
	display:inline-block;
}
.course_area h2 em{
	margin: 0 0;
	padding: 0 0;
	font-weight:800;
	font-size: 60px;
	letter-spacing: 0.01em;
	line-height: 1;
	text-align: center;
	color: #ff5ad7;
	font-family: "M PLUS Rounded 1c", sans-serif;
	display:block;
	filter: drop-shadow(5px 5px 0px rgba(245,255,45,1.0));
}

ul.course_list{
	margin: 0 auto;
	padding: 0 0 ;
	position:relative;
	text-align:center;
	z-index:10;
	width:840px;
}

ul.course_list li{
	margin: 0 auto 60px;
	padding: 0 0 ;
	position:relative;
	text-align:center;
	width:840px;
	border-radius: 25px;
	border:4px solid #ff5ad7;
	z-index:10;
	background-color:#fff;
}

ul.course_list li::after{
	content: "";
	position: absolute;
	bottom:-15px;
	right:-10px;
	width: 100%;
	height:100%;
	border-radius: 25px;
	background-color:#ff5ad7;
	z-index:-1;
}

ul.course_list li h3{
	margin: 0 auto;
	padding: 12px 0;
	position:relative;
	text-align:left;
	background-color:#ff5ad7;
	border-radius: 20px 20px 0 0;
	display: flex;
	align-items:center;
	justify-content:center;
}
ul.course_list li h3 span{
	margin: 0 0;
	padding: 0 0 0 20px;
	font-weight:800;
	font-size: 43px;
	letter-spacing: 0.00em;
	line-height: 1;
	text-align: center;
	color: #fff;
	font-family: "M PLUS Rounded 1c", sans-serif;
	text-align:left;
}

ul.course_list li h3 em{

height:75px;
width:75px;
border-radius:50%;
text-align:center;
background-color:#f5ff2d;

	font-weight:800;
	font-size: 52px;
	letter-spacing: 0.00em;
	line-height: 75px;
	text-align: center;
	color: #ff5ad7;
	font-family: "M PLUS Rounded 1c", sans-serif;
}

.course_contents1{
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:center;
	background-color:#fff;
	border-radius: 0 0 20px 20px;
}

.course_contents1 img{
	margin:-20px 0 0 -50px;
	z-index:10;
	max-width:none;
}

.course_contents2{
	margin: 0 auto;
	padding: 50px 60px;
	position:relative;
	text-align:center;

	background-color:#fff;
	border-radius: 0 0 20px 20px;
}

.course_area section{
	margin: 120px auto 0;
	padding: 0 0 ;
	position:relative;
	text-align:center;
}

.course_area section h2{
	margin-bottom: 30px;
}

.course_area section h2 img.ranking_h2_img{
	position: absolute;
	top: -50px;
	left:-10px;
	z-index:10;
}

.course_area section p{
	margin: 0 auto 50px;
	padding: 0 0 ;
	position:relative;
	text-align:center;
	font-weight:600;
	font-size: 24px;
	letter-spacing: 0.00em;
	line-height: 1;
	color: #000;
}
.course_area section p small{
	margin: 0 auto;
	padding: 10px 0 0;
	position:relative;
	text-align:center;
	font-weight:400;
	font-size: 14px;
	letter-spacing: 0.00em;
	line-height: 1;
	color: #000;
	display:block;
}





.charm_block{
	margin: 0 0 0px;
	padding: 100px 0 80px;
	position:relative;
	text-align:center;
	min-width: 1180px;
	background-image: url(../images/top/charm_bg.svg);
	background-repeat: no-repeat;
	background-position: center bottom 80px;
	background-size: auto;
}
.charm_block::before {
content: "";
position: absolute;
top:-25px;
left:0;
width: 100%;
height: 25px;
background-image: url("../images/top/charm_bg_top.svg");
background-repeat: repeat-x;
background-position: center top;
background-size:auto 25px;
	z-index:9;
}
.charm_inner{
	margin: 0 auto;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
	max-width: 1920px;
}

.charm_block h2{
	margin: 0 auto 40px;
	padding: 0 0 ;
	position:relative;
	text-align:center;
	z-index:1;
}
.charm_block h2 em{
	margin: 0 0 20px;
	padding: 0 20px;
	position:relative;
	font-weight:400;
	font-size: 38px;
	letter-spacing: 0.01em;
	line-height: 1;
	text-align: center;
	color: #ff5ad7;
	font-family: "M PLUS Rounded 1c", sans-serif;
	display:inline-block;
}
.charm_block h2 em:before {
position: absolute;
bottom: -5px;
left: -20px;
width: 3px;
height: 46px;
content: '';
background: #ff5ad7;
transform: rotate(-30deg);
}
.charm_block h2 em:after {
position: absolute;
bottom: -5px;
right: -20px;
width: 3px;
height: 46px;
content: '';
background: #ff5ad7;
transform: rotate(30deg);
}
.charm_block h2 span{
	margin: 0 0;
	padding: 0 0;
	font-weight:800;
	font-size: 98px;
	letter-spacing: 0.01em;
	line-height: 1;
	text-align: center;
	color: #ff5ad7;
	font-family: "M PLUS Rounded 1c", sans-serif;
	display:block;
	filter: drop-shadow(5px 5px 0px rgba(245,255,45,1.0));
}

.charm_block .charm_txt{
	margin: 0 auto 70px;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;

	font-weight: 500;
	font-size: 24px;
	letter-spacing: 0.05em;
	line-height: 1.8;
	color: #000;
	z-index:1;
	-webkit-text-stroke: 5px #fff;
	text-stroke: 5px #fff;
	paint-order: stroke;
}

.charm_inner img.charm_bg{
	position:absolute;
	text-align:center;
	margin:auto;
	top:0;
	left:0;
	right:0;
	opacity: 0;
	animation: moreFadeIn 0.5s ease-in forwards;
}

ul.charm_link_list{
	margin: 0 auto;
	padding: 0;
	position:relative;
	text-align:center;
	width: 840px;
	display: flex;
	align-items:stretch;
	justify-content:space-between;
	flex-wrap:wrap;
}

ul.charm_link_list li{
	margin: 0 0 50px;
	padding: 0px 0 0 0px;
	position:relative;
	text-align:center;
}
ul.charm_link_list li:nth-child(2),
ul.charm_link_list li:nth-child(3){
	width:48%;
}
ul.charm_link_list li a:hover{
transition : 0.3s;
filter: saturate(100%) brightness(90%);
}





.bnr_area{
	margin: 0 auto;
	padding: 80px 0;
	position:relative;
	text-align:center;
	/*min-width: 1180px;*/
	background-color:#ffebfa;
}

ul.bnr_list{
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:center;
}

ul.bnr_list li{
	margin: 0 0 30px;
	padding: 0 0;
	position:relative;
	letter-spacing:normal;
	text-align:center;
}

ul.bnr_list li a:hover{
transition : 0.3s;
filter: saturate(100%) brightness(90%);
}


