@charset "UTF-8";
/* ===================================
共通
=================================== */
.br395{
	display: inline;
}
.br395s{
	display: none;
}
@media screen and (max-width: 395px) {
	.br395{
		display: none;
	}
	.br395s{
		display: inline;
	}
}


@media screen and (max-width: 768px) {
	.kick_main .flex{
		display: block;
	}
	.textfv_ttlbox span {
    white-space: nowrap;
	}
}

a{
	transition: .3s;
}
a:hover{
	opacity: 0.7;
	transition: .3s;
}

.c-bread {
	padding-left: 35px;
	margin-left: 0;
	margin-bottom: -1px;
	background-color: #EFEAEA;
}

.textfv_ttlbox  {
	width: 100%;
    text-align: center;
    top: 35%;
}

.textfv_ttlbox h1 {
	font-size: 45px;
    line-height: 1.3;
    color: #fff;
}

@media screen and (max-width: 768px){
	.textfv_ttlbox  {
		top: 22%;
	}
	.textfv_ttlbox h1  {
		font-size: 24px;
	}
}

@media screen and (max-width: 375px){
	.textfv_ttlbox h1  {
		font-size: 20px;
	}
}




.kick_main{
	background-color: #EFEAEA;
	padding: 0 20px 100px;
	font-weight: 500;
}

.kickboard{
	max-width: 1000px;
	width: 100%;
	margin: 60px auto 0;
}

.kickboard h2{
	font-size: 20px;
	font-weight: 700;
	text-align: center;
	margin-bottom: 30px;
}

.kickboard h3{
	color: #fff;
	background-color: #000;
	padding: 2px 10px;
	margin-top: 35px;
}

.h3_01{
	margin: 53px 0 15px !important;
}

.h3_02{
	margin: 60px 0 15px !important;
}

.h3_03{
	margin: 69px 0 18px !important;
}

.kickboard h4{
	font-weight: 700;
	margin-top: 17px;
}

.point{
	font-size: 14px;
	background-color: #EFEAEA;
	display: inline-block;
	padding: 2px 12px;
	margin: 16px 0 6px;
}

.top_txt{
	text-align: center;
}

.top_txt p{
	margin-top: 31px;
	line-height: 2.0;
}

.box{
	margin-top: 80px;
	padding: 55px 20px 60px;
	background-color: #fff;
}

.box_inner{
	max-width: 880px;
	margin: 0 auto;
}

.box_inner p{
	line-height: 2.0;
}

.rule{
	max-width: 422px;
	width: 48%;
}

.rule_flex{
	justify-content: space-between;
	margin: 35px 0 40px;
}

.rule_flex + .point{
	margin-top: 0;
}

.signBox{
	background-color: #EFEAEA;
	padding: 37px 40px 40px;
}

.signBox01{
	margin-bottom: 60px;
}

.signBox02{
	margin: 35px 0 40px;
}

.signBox03{
	margin-top: 35px !important;
}

.sign_flex{
	justify-content: center;
	margin-top: 20px;
}

.sign_flex img{
	max-width: 250px;
	width: 32%;
	margin-right: 25px;
}

.sign_flex img:last-of-type{
	margin-right: 0;
}

.sign_ttl{
	font-weight: 700;
	text-align: center;
	margin-bottom: 25px;
}

.note{
	display: block;
}

.note01{
	margin-bottom: -19px;
}

.note02{
	margin: 34px 0 16px;
}

.note03{
	margin: 34px 0 16px;
}


@media screen and (max-width: 768px) {
	.c-bread {
		padding-left: 0;
		margin-bottom: 0;
	}

	.kickboard{
		margin: 40px auto 0;
	}
	
	.kickboard h2{
		font-size: 18px;
		margin-bottom: 20px;
	}
	
	.kickboard h3{
		font-size: 14px;
		margin-top: 20px;
	}
	
	.h3_01{
		margin: 40px 0 15px !important;
	}
	
	.h3_02{
		margin: 40px 0 15px !important;
	}
	
	.h3_03{
		margin: 40px 0 18px !important;
	}
	
	.kickboard h4{
		font-size: 14px;
		margin-top: 10px;
	}

	.top_txt p{
		font-size: 14px;
		margin-top: 20px;
	}
	
	.box{
		margin-top: 40px;
		padding: 35px 20px 40px;
	}

	.box p{
		font-size: 14px;
	}

	.source{
		font-size: 12px !important;
	}

	.box a{
		font-size: 12px;
	}

	.rule{
		max-width: none;
		width: 100%;
		margin-bottom: 20px;
	}
	
	.rule_flex{
		margin: 20px 0 30px;
	}
	
	.signBox{
		padding: 25px 20px 30px;
	}
	
	.signBox01{
		margin-bottom: 40px;
	}
	
	.signBox02{
		margin: 25px 0 30px;
	}
	
	.signBox03{
		margin-top: 25px !important;
	}
	
	.sign_flex{
		margin-top: 15px;
	}
	
	.sign_flex img{
		max-width: none;
		width: 100%;
		margin-right: 15px;
		margin-bottom: 15px;
	}
	
	.sign_ttl{
		margin-bottom: 15px;
	}
	
	.note{
		font-size: 14px;
	}

	.note01{
		margin-bottom: -15px;
	}
	
	.note02{
		margin: 20px 0 8px;
	}
	
	.note03{
		margin: 20px 0 8px;
	}
	
}


/* 目次 */
.table{
	text-align: center;
	padding-top: 38px;
	padding-bottom: 40px;
	margin-top: 74px;
}

.table h2{
	margin-bottom: 0;
}

.tableLink{
	width: fit-content;
	text-align: left;
	margin: 24px auto 32px;
}

.tableLink a{
	display: block;
	margin: 15px 0;
	text-decoration: underline;
}

.source{
	font-size: 12px;
}

.source a{
	text-decoration: underline;
	margin-left: 3px;
}

@media screen and (max-width: 768px) {
	.table{
		padding-top: 20px;
		padding-bottom: 30px;
		margin-top: 40px;
	}
	
	.tableLink{
		margin: 20px auto 25px;
	}
	
	.tableLink a{
		font-size: 14px;
		margin: 12px 0;
	}
}


/* box01 */
#box01 .topTxt{
	line-height: 2.0;
	margin-top: 32px;
}

.img1-1{
	margin: 35px auto;	
}

#box01 .flex{
	align-items: flex-end;
	justify-content: space-between;
}

#box01 .leftBox{
	margin-right: 20px;
}

#box01 .leftBox p{
	line-height: 2.0;
}

#box01 .leftBox a{
	display: block;
	margin-bottom: 35px;
	text-decoration: underline;
}

.certification{
	max-width: 200px;
}

@media screen and (max-width: 768px) {
	#box01{
		margin-top: -30px;
		padding-top: 30px;
	}

	#box01 .topTxt{
		margin-top: 20px;
	}
	
	.img1-1{
		margin: 20px auto;	
	}
	
	#box01 .leftBox{
		margin-right: 0;
	}

	#box01 .leftBox a{
		margin-bottom: 20px;
	}
	
	.certification{
		margin-top: 15px;
	}
}

@media screen and (max-width: 450px) {
	.certification{
		max-width: 150px;
	}
}


/* box02 */
#box02 ul{
	padding: 1px 0 35px;
}

#box02 li{
	margin-top: 4px;
	text-indent: -1em;
	margin-left: 1em;
}

#box02 .flex{
	flex-direction: row-reverse;
	justify-content: space-between;
	margin: 38px 0;
}

#box02 .imgList{
	width: 80%;
	height: 100%;
}

#box02 .imgKick{
	width: 15%;
	height: 100%;
}

.box02_note{
	text-indent: -1em;
	margin-left: 1em;
}

@media screen and (max-width: 768px) {
	#box02{
		margin-top: -30px;
		padding-top: 30px;
	}

	#box02 ul{
		padding: 1px 0 20px;
	}
	
	#box02 li{
		font-size: 14px;
	}
	
	#box02 .flex{
		margin: 20px 0;
	}

	#box02 .imgList{
		max-width: none;
		width: 100%;
	}


	#box02 .imgKick{
		max-width: 220px;
		min-width: 140px;
		width: 30%;
		margin: 0 auto 20px;
		transform: translateX(20px);
	}
}

@media screen and (max-width: 600px) {

	#box02 .imgList{
		overflow: auto;
	}
	#box02 .imgList img {
	max-width: 500px;
}
}




/* box03 */
.banList{
	padding: 0 1px;
}

.banList li{
	margin-left: 1em;
  text-indent: -1em;
	line-height: 2.0;
}

@media screen and (max-width: 768px) {
	#box03{
		margin-top: -30px;
		padding-top: 30px;
	}

	.banList li{
		font-size: 14px;
		margin-top: 5px;
	}
	
}


/* video */
.videoTop{
	text-align: center;
	max-width: 760px;
	margin: 0 auto;
}

.videoTtl{
	font-weight: 700;
	line-height: 2.0;
	margin-bottom: 35px;
}

.video a{
	text-decoration: underline;
	overflow-wrap: break-word;
}

.video01{
	font-size: 14px;
	margin: 20px 0 40px;
	display: block;
}

.videoBot{
	max-width: 700px;
	margin: 0 auto;
}

.videoBot p{
	padding-top: 20px;
	font-weight: 700;
}

.videoBot a{
	margin-bottom: 17px;
	display: block;
}

.videoBox{
	width: 100%;
  position: relative;
  padding-top: 56.25%;
}

.video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 768px) {
	iframe{
		height: 360px;
	}

	.videoTtl{
		margin-bottom: 20px;
	}
	
	.video01{
		font-size: 14px;
		margin: 15px 0 25px;
	}
	
	.videoBot p{
		padding-top: 15px;
	}
	
	.videoBot a{
		margin-bottom: 12px;
	}	
}

@media screen and (max-width: 600px) {
	iframe{
		height: 280px;
	}
}

@media screen and (max-width: 400px) {
	iframe{
		height: 170px;
	}
}




@media screen and (max-width: 1024px) {
}
@media screen and (max-width: 768px) {
}
@media screen and (max-width: 600px) {
}
@media screen and (max-width: 320px) {
}