body{ margin:0;}
.clear{ clear:both; height:0;}
.center{ text-align:center;}
img{ border:0; vertical-align:bottom;}
ul{ margin:0; padding:0; list-style:none;}

/*--- top ---*/
#container{ width:100%; margin:0 auto; color:#000; font-size:16px; line-height:180%; font-family:"繝｡繧､繝ｪ繧ｪ", Meiryo, Osaka, "�ｼｭ�ｼｳ �ｼｰ繧ｴ繧ｷ繝�繧ｯ", "MS PGothic", sans-serif;}
#container a:hover img{ opacity:0.7; filter:alpha(opacity=70);}
#container .inner{ width:980px; margin:0 auto;}

#container p.pankuzu{ width:945px; font-size:16px; margin:15px auto; padding-left:35px; background:url(../img/common/flag.png) no-repeat 5px 5px;}
#container p.pankuzu a{ color:#000; text-decoration:underline;}
#container p.pankuzu a:hover{ color:#000; text-decoration:none;}

#main{ background:url(../img/top/bg_run.jpg) no-repeat center top; background-size:cover; min-width:980px; margin-bottom:50px;}
#main h1{ padding:120px 0 0; margin:0; text-align:center;}
#main p.lead{ color:#fff; font-size:20px; text-align:center; font-weight:bold; margin:0; padding:0 0 120px; line-height:200%;}
#main .arw{ margin:0 auto;}
#main .arw img{ width:100%;}

#container .linkStep{ width:980px; margin-bottom:80px;}
#container .linkStep:after{ content:"."; display:block; clear:both; height:0; visibility:hidden;}
#container .linkStepL,
#container .linkStepR { display: flex; flex-wrap: nowrap; justify-content: space-between; border: 1px solid #D9D9D9; margin-bottom: 40px; position: relative;}
#container .linkStep .b_rbl {width: 520px; position: relative; border: none;}
#container .linkStep h2{ padding:30px 0 0; margin:0; text-align:center;}
#container .linkStep h3{ margin:30px 0 0; text-align:center; font-size:20px;}
#container .linkStep p{ text-align:center; margin:15px 0 0;}
#container .linkStep p.btn_step{ position: absolute; margin: auto; bottom: 0; left: 0; right: 0;}
#container .mb60{ margin-bottom:60px;}

#extra{ background:url(../img/top/bg_extra.jpg) no-repeat center center; background-size:cover; min-width:980px; padding:60px 0;}
#extra .extraWrap{ background:url(../img/common/bg01.png) repeat; width:458px; border-top:#D9D9D9 solid 1px; border-right:#D9D9D9 solid 1px; border-left:#D9D9D9 solid 1px;}
#extra .extraWrap h2{ padding:40px 0 0; margin:0; text-align:center;}
#extra .extraWrap h3{ margin:30px 0 0; text-align:center; font-size:20px;}
#extra .extraWrap p{ text-align:center; margin:15px 0 0;}
#extra .extraWrap p.btn_step{ text-align:center; margin:30px 0 0;}

#bike{ background:url(../img/top/bg_bike.jpg) no-repeat center center; background-size:cover; min-width:980px; padding:60px 0 100px;}
#bike:after{ content:"."; display:block; clear:both; height:0; visibility:hidden;}
#bike .bikeWrap{ background:url(../img/common/bg01.png) repeat; width:458px; float:right; border-top:#D9D9D9 solid 1px; border-right:#D9D9D9 solid 1px; border-left:#D9D9D9 solid 1px;}
#bike .bikeWrap h2{ padding:40px 0 0; margin:0; text-align:center;}
#bike .bikeWrap p{ text-align:center; margin:30px 0 0;}
#bike .bikeWrap p.btn_step{ text-align:center; margin:30px 0 0;}

#ene{ background:url(../img/top/bg_ene.jpg) no-repeat center center; background-size:cover; min-width:980px; padding:60px 0;}
#ene .eneWrap{ background:url(../img/common/bg01.png) repeat; width:458px; border-top:#D9D9D9 solid 1px; border-right:#D9D9D9 solid 1px; border-left:#D9D9D9 solid 1px;}
#ene .eneWrap h2{ padding:40px 0 0; margin:0; text-align:center;}
#ene .eneWrap p{ text-align:center; margin:15px 0 0;}
#ene .eneWrap p.btn_step{ text-align:center; margin:30px 0 0;}

#container p.note{ font-size:12px; line-height:140%; margin:30px 0 40px;}

/*--- sec ---*/
#pageNav{ width:980px; margin:0 auto;}
#pageNav ul:after{ content:"."; display:block; clear:both; height:0; visibility:hidden;}
#pageNav li{ float:left; width:calc(100% / 4 - 4px); text-align:center; line-height:0; margin-right: 1px;}
#pageNav li a{ text-decoration:none; background:#a6a6a6; width:100%; height:30px; padding:10px 0 0; display:block; position: relative;}
#pageNav li a:hover{ text-decoration:none; background:#009fe7;}
#pageNav li a.here{ text-decoration:none; background:#009fe7; width:100%; height:30px; padding:10px 0 0; display:block;}
#pageNav li a:hover::after,
#pageNav li a.here::after {
	content: "";
	background: #009fe7;
	height: calc(tan(50deg) * 20px / 2);
	width: 20px;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	position: absolute;
	bottom: -10px;
	left: 0;
	right: 0;
	margin: auto;
}

#container h1.sec{ margin:50px 0 0; text-align:center;}
#container p.leadSec{ font-size:18px; text-align:center; line-height:200%; margin:30px 0 0;}

#attnStep2{ background:url(../img/step2/bg_attn.jpg) no-repeat center center; background-size:cover; min-width:980px; padding:80px 0 0; margin-top:80px;}
#attnStep2 .atWrap{ background:url(../img/common/bg01.png) repeat; width:688px; margin:0 auto 80px; border-top:#D9D9D9 solid 1px; border-right:#D9D9D9 solid 1px; border-left:#D9D9D9 solid 1px;}
#attnStep2 .atWrap h2{ padding:30px 0 0; margin:0; text-align:center;}
#attnStep2 .atWrap h3{ margin:20px 0 0; text-align:center; font-size:26px;}
#attnStep2 .atWrap p{ text-align:center; margin:20px 0 0;}
#attnStep2 .atWrap p.btn_step{ text-align:center; margin:30px 0 0;}
#attnStep2 .arw{ margin:0 auto;}
#attnStep2 .arw img{ width:100%;}

#attnStep3{ background:url(../img/step3/bg_attn.jpg) no-repeat center center; background-size:cover; min-width:980px; padding:80px 0 0; margin-top:80px;}
#attnStep3 .atWrap{ background:url(../img/common/bg01.png) repeat; width:688px; margin:0 auto 80px; border-top:#D9D9D9 solid 1px; border-right:#D9D9D9 solid 1px; border-left:#D9D9D9 solid 1px;}
#attnStep3 .atWrap h2{ padding:30px 0 0; margin:0; text-align:center;}
#attnStep3 .atWrap h3{ margin:20px 0 0; text-align:center; font-size:26px;}
#attnStep3 .atWrap p{ text-align:center; margin:20px 0 0;}
#attnStep3 .atWrap p.btn_step{ text-align:center; margin:30px 0 0;}
#attnStep3 .arw{ margin:0 auto;}
#attnStep3 .arw img{ width:100%;}

#contents{ width:980px; font-family:"繝｡繧､繝ｪ繧ｪ", Meiryo, Osaka, "�ｼｭ�ｼｳ �ｼｰ繧ｴ繧ｷ繝�繧ｯ", "MS PGothic", sans-serif !important;}
#contents h2{ background:#EBEBEB; font-size:22px; padding:12px 18px 10px; margin:60px 0 0;}
#contents .dtWrap{ width:980px; border-bottom:#D9D9D9 solid 1px;}
#contents .dtWrap:after{ content:"."; display:block; clear:both; height:0; visibility:hidden;}
#contents .dtWrap p{ float:left; border-right:#D9D9D9 solid 1px; line-height:16px; padding:6px 30px 3px; margin:15px 0;}
#contents .dtWrap p.br00{ border-right:none;}
#contents .dtWrap span{ font-size:14px;}

#contents .eventWrap{ width:980px; margin-top:30px;}
#contents .eventWrap:after{ content:"."; display:block; clear:both; height:0; visibility:hidden;}
#contents .lArea{ float:left; width:300px;}
#contents .rArea{ float:right; width:650px;}
#contents .wArea{ width:940px; margin:0 auto;}
#contents .eventWrap p{ margin:0;}
#contents .eventWrap p.arrow{ background:url(../img/common/arw02.png) no-repeat left center; padding-left:28px; margin:30px 0 0;}
#contents .eventWrap a{ color:#009FE7; text-decoration:underline;}
#contents .eventWrap a:hover{ color:#009FE7; text-decoration:none;}
#contents .eventWrap img { max-width: 100%; }

#contents .eventWrap table{ width:980px; margin-top:30px;}
#contents .eventWrap table.mt60{ width:980px; margin-top:60px;}
#contents .eventWrap th{ background:#A6A6A6; font-size:22px; padding:12px 0 10px; color:#FFF;}
#contents .eventWrap td{ padding:14px 15px 12px; text-align:center; line-height:160%; border-bottom:#D9D9D9 solid 1px; border-left:#D9D9D9 solid 1px;}
#contents .eventWrap td.bln{ border-left:none;}
#contents .eventWrap td.tal{ text-align:left;}
#contents .eventWrap td.bgb{ background:#EBF7FD;}
#contents .eventWrap td.gray{ color:#A6A6A6;}

#contents p.next{ font-size:26px; text-align:center; background:url(../img/common/bg_next.gif) no-repeat center bottom; height:90px; margin:80px 0 50px; font-weight:bold;}
#contents p.next a{ color:#000; text-decoration:none;}
#contents p.next a:hover{ color:#000; text-decoration:underline;}
#contents p.next span.blue{ color:#009FE7;}
#contents p.next span.gray{ color:#A6A6A6;}

#container .linkExtra{ width:640px; margin:60px auto;}
#container .linkExtra:after{ content:"."; display:block; clear:both; height:0; visibility:hidden;}
#container .linkExtraL{ width:300px; float:left; margin-right:40px;}
#container .linkExtraR{ width:300px; float:right;}
#container .b_rbl{ border-right:#D9D9D9 solid 1px; border-bottom:#D9D9D9 solid 1px; border-left:#D9D9D9 solid 1px;}
#container .linkExtra h2{ margin:0; padding:30px 0; text-align:center; background:none; font-size:20px;}
#container .linkExtra p.btn_step{ text-align:center; margin:0;}

#container .bnr_smsc{ text-align: center; margin: 30px 0 0; display: block;}

#container .step1_bnrarea{text-align: center; margin:100px 0 0; display: block;}
	
/* STEP2 UPDATE */
.containerStep2 p.arrow a:before {
	content: "";
	background:url(../img/common/arw02.png) no-repeat left center;
	width: 17px;
	height: 17px;
	background-size: 17px auto;
	margin-right: 5px;
	display: inline-block;
	position: relative;
	top: 4px;
}
.containerStep2 a{
	color:#009FE7;
	text-decoration:underline;
}
.containerStep2 a:hover{
	text-decoration:none;
}

.title002 {
	font-family: "Noto Sans JP", sans-serif;
	text-align: center;
	font-size: 34px;
	font-weight: bold;
}

.blockMainImageStep2 {
	background: url(../img/step2/bg_attn.jpg) no-repeat center center;
    background-size: cover;
    min-width: 980px;
    margin-top: 80px;
}

.blockMainImageStep2 .inner {
	height: 600px;
	position: relative;
	text-align: center;
	/*display: flex;
	flex-wrap: nowrap;
	justify-content: space-around;
	align-items: center;
	*/
}

.blockMainImageStep2 .blockMainImageStep2__copy {
	/* font-family: "Dela Gothic One", sans-serif; */
	/* font-family: "Rampart One", sans-serif; */
	/* font-family: "Shippori Antique", sans-serif; */
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 800;
	font-size: 80px;
	color: #fff;
	letter-spacing: 0.1em;
	/* text-stroke: 1px #000;
	-webkit-text-stroke: 1px #000; */
	text-shadow: 6px 6px 0 #2f7387;
	background: #C50003;
	line-height: 100%;
	text-align: center;
	display: inline-block;
	padding: 1rem 2rem;
	/* transform: rotate(-5deg); */
	position: absolute;
	top: 120px;
	left: 0;
	right: 0;
	transform: skew(-15deg);
	background-image: linear-gradient(to right, #27acd9 0%, #b4e12b 100%);
	box-shadow: 8px 8px 0 rgba(0, 0, 0, .5);
}

.blockMainImageStep2 .blockMainImageStep2__copy span {
	font-size: 60px;
}

.blockMainImageStep2 .arw {
    margin: 0 auto;
}

.blockMainImageStep2 .arw img {
    width: 100%;
}

.blockStep2Intro {
	text-align: center;
	/* font-family: "Dela Gothic One", sans-serif; */
	/* font-family: "Rampart One", sans-serif; */
	/* font-family: "Shippori Antique", sans-serif; */
	font-family: "Noto Sans JP", sans-serif;
	font-size: 30px;
	font-weight: 800;
	margin-top: 80px;
	margin-bottom: 80px;
}

.blockStep2Intro p {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 800;
	position: relative;
	display: inline-block;
	margin-top: .5em;
	margin-bottom: .5em;
}

.blockStep2Intro p:after {
	position: absolute;
    left: -10px;
    bottom: -6px;
    width: 100%;
    height: 10px;
    transform: skew(-45deg);
    background-image: repeating-linear-gradient(90deg, transparent 0 4px, #b4e12b 4px 8px);
    content: '';
    z-index: -1;
	/* opacity: .3; */	
}

.blockStep2Intro p.itemLast {
	font-size: 36px;
	margin-top: 80px;
}

.blockStep2Intro .blockLogoSmsc {
	text-align: right;
	margin-top: 40px;
}

.blockStep2Intro .blockLogoSmsc a {
	width: 120px;
	display: inline-block;
}

.blockStep2Intro .blockLogoSmsc a img {
	max-width: 100%;
}

.blockStep2Voice {
	
}

.blockStep2Voice__image div {
	position: relative;
}

.blockStep2Voice__imageCaption {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 800;
	font-size: 34px;
	color: #fff;
	letter-spacing: 0.1em;
	text-shadow: 4px 4px 0 #2f7387;
	background: #C50003;
	line-height: 100%;
	text-align: left;
	display: inline-block;
	padding: 1rem 2rem;
	position: absolute;
	bottom: 40px;
	left: 0;
	/* transform: skew(-15deg); */
	background-image: linear-gradient(to right, #27acd9 0%, #b4e12b 100%);
	/* box-shadow: 8px 8px 0 rgba(0, 0, 0, .5); */
	width: initial;
}

.blockStep2Voice__title {
	font-family: "Oswald", sans-serif;
  font-optical-sizing: auto;
	font-size: 80px;
	font-weight: 400;
	margin-bottom: 10px;
	text-align: center;
	line-height: 100%;
}

.blockStep2Voice__titleSub {
	font-family: "Oswald", sans-serif;
  font-optical-sizing: auto;
	font-size: 20px;
	font-weight: 400;
	margin-bottom: 60px;
	margin-top: 0;
	text-align: center;
	line-height: 100%;
}

.blockStep2VoiceItems__item,
.blockStep2VoiceItems__item dt,
.blockStep2VoiceItems__item dd {
	margin: 0;
	padding: 0;
}

dl.blockStep2VoiceItems__item {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	margin-bottom: 40px;
	align-items: flex-end;
}

.blockStep2VoiceItems__item dt {
	width: 200px;
	text-align: center;
	align-items: baseline;
}

dl.blockStep2VoiceItems__item dt img {
	width: 120px;
}

.blockStep2VoiceItems__item dd {
	position: relative;
	background: #bfefff;
	border: 4px solid #000000;
	border-radius: 8px;
	padding: 2em 2em;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	width: 720px;
}

dl.blockStep2VoiceItems__item.right dt {
	order: 2;
}

dl.blockStep2VoiceItems__item.right dd {
	order: 1;
	background: #f0ffc3;
}

.blockStep2VoiceItems__item.left dd:after,
.blockStep2VoiceItems__item.left dd:before,
.blockStep2VoiceItems__item.right dd:after,
.blockStep2VoiceItems__item.right dd:before{
	top: 50%;
	border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}

.blockStep2VoiceItems__item.left dd:after,
.blockStep2VoiceItems__item.left dd:before {
	right: 100%;
}

.blockStep2VoiceItems__item.right dd:after,
.blockStep2VoiceItems__item.right dd:before {
	left: 100%;
}

.blockStep2VoiceItems__item.right dd:after {
	border-color: rgba(39, 172, 217, 0);
	border-left-color: #f0ffc3;
	border-width: 10px;
	margin-top: -10px;
}
.blockStep2VoiceItems__item.right dd:before {
	border-color: rgba(0, 0, 0, 0);
	border-left-color: #000000;
	border-width: 14px;
	margin-top: -14px;
}

.blockStep2VoiceItems__item.left dd:after {
	border-color: rgba(39, 172, 217, 0);
	border-right-color: #bfefff;
	border-width: 10px;
	margin-top: -10px;
}
.blockStep2VoiceItems__item.left dd:before {
	border-color: rgba(0, 0, 0, 0);
	border-right-color: #000000;
	border-width: 14px;
	margin-top: -14px;
}

.blockStep2Banners {
	margin-top: 80px;
}

.blockStep2Banners__item {
	text-align: center;
}

.blockVideo {
	margin-top: 80px;
}

.blockVideo ul {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
}

.blockVideo li {
	width: 49%;
}

.blockProgram {
	margin-top: 100px;
}

iframe.videoItem {
width: 100%;
height: auto;
aspect-ratio: 16 / 9;
} 

a.button001 {
	display: inline-block;
	background: #333;
	padding: 1em 3em;
	text-decoration: none;
	color: #fff;
	text-align: center;
	font-size: 24px;
}

a.button001:hover {
	opacity: .7;
}

a.button001::before {
	 font-family: "Font Awesome 5 Free";
  content: '\f054';
  font-weight: 900;
	margin-right: 10px;
	color: #fff;
}

/* -------------------------------------------------------
 slick.js
------------------------------------------------------- */
.slick-prev,
.slick-next {
	z-index: 10;
}
.slick-prev {
  left: 10px;
}

.slick-next {
  right: 10px;
}

/* -------------------------------------------------------
 utilities
------------------------------------------------------- */
.u-mt0:not(:root) { margin-top: 0; }
.u-mt10:not(:root) { margin-top: 10px; }
.u-mt20:not(:root) { margin-top: 20px; }
.u-mt30:not(:root) { margin-top: 30px; }
.u-mt40:not(:root) { margin-top: 40px; }
.u-mt50:not(:root) { margin-top: 50px; }
.u-mt60:not(:root) { margin-top: 60px; }
.u-mt70:not(:root) { margin-top: 70px; }
.u-mt80:not(:root) { margin-top: 80px; }
.u-mt90:not(:root) { margin-top: 90px; }
.u-mt100:not(:root) { margin-top: 100px; }

.u-mtM10:not(:root) { margin-top: -10px; }
.u-mtM20:not(:root) { margin-top: -20px; }
.u-mtM30:not(:root) { margin-top: -30px; }
.u-mtM40:not(:root) { margin-top: -40px; }
.u-mtM50:not(:root) { margin-top: -50px; }
.u-mtM60:not(:root) { margin-top: -60px; }
.u-mtM70:not(:root) { margin-top: -70px; }
.u-mtM80:not(:root) { margin-top: -80px; }
.u-mtM90:not(:root) { margin-top: -90px; }
.u-mtM100:not(:root) { margin-top: -100px; }

.u-mb0:not(:root) { margin-bottom: 0; }
.u-mb10:not(:root) { margin-bottom: 10px; }
.u-mb20:not(:root) { margin-bottom: 20px; }
.u-mb30:not(:root) { margin-bottom: 30px; }
.u-mb40:not(:root) { margin-bottom: 40px; }
.u-mb50:not(:root) { margin-bottom: 50px; }
.u-mb60:not(:root) { margin-bottom: 60px; }
.u-mb70:not(:root) { margin-bottom: 70px; }
.u-mb80:not(:root) { margin-bottom: 80px; }
.u-mb90:not(:root) { margin-bottom: 90px; }
.u-mb100:not(:root) { margin-bottom: 100px; }

.u-mbM10:not(:root) { margin-bottom: -10px; }
.u-mbM20:not(:root) { margin-bottom: -20px; }
.u-mbM30:not(:root) { margin-bottom: -30px; }
.u-mbM40:not(:root) { margin-bottom: -40px; }
.u-mbM50:not(:root) { margin-bottom: -50px; }
.u-mbM60:not(:root) { margin-bottom: -60px; }
.u-mbM70:not(:root) { margin-bottom: -70px; }
.u-mbM80:not(:root) { margin-bottom: -80px; }
.u-mbM90:not(:root) { margin-bottom: -90px; }
.u-mbM100:not(:root) { margin-bottom: -100px; }

.u-ml0:not(:root) { margin-left: 0; }
.u-ml10:not(:root) { margin-left: 10px; }
.u-ml20:not(:root) { margin-left: 20px; }
.u-ml30:not(:root) { margin-left: 30px; }
.u-ml40:not(:root) { margin-left: 40px; }
.u-ml50:not(:root) { margin-left: 50px; }
.u-ml60:not(:root) { margin-left: 60px; }
.u-ml70:not(:root) { margin-left: 70px; }
.u-ml80:not(:root) { margin-left: 80px; }
.u-ml90:not(:root) { margin-left: 90px; }
.u-ml100:not(:root) { margin-left: 100px; }

.u-mr0:not(:root) { margin-right: 0; }
.u-mr10:not(:root) { margin-right: 10px; }
.u-mr20:not(:root) { margin-right: 20px; }
.u-mr30:not(:root) { margin-right: 30px; }
.u-mr40:not(:root) { margin-right: 40px; }
.u-mr50:not(:root) { margin-right: 50px; }
.u-mr60:not(:root) { margin-right: 60px; }
.u-mr70:not(:root) { margin-right: 70px; }
.u-mr80:not(:root) { margin-right: 80px; }
.u-mr90:not(:root) { margin-right: 90px; }
.u-mr100:not(:root) { margin-right: 100px; }

.u-alLeft:not(:root) { text-align: left; }
.u-alRight:not(:root) { text-align: right; }
.u-alCenter:not(:root) { text-align: center; }


.pc{ display:inherit;}
.sp{ display:none;}
.indent{text-indent:3em; font-size:1em !important;}
