@charset "utf-8";
/* CSS Document */


.contwrap {
	width:100%;
	margin-bottom:150px;}
.contwrap h2 {
  position: relative;
  padding: 1rem; /*文字と線の間の距離*/
  text-align: center;
  font-size:2.5em;
}

.contwrap h2:before {
  position: absolute;
  bottom: -10px;
  left: calc(50% - 30px);/*widthの半分を引く*/
  width: 60px;/*線の長さ*/
  height: 1px;/*線の太さ*/
  content: '';
  background: #CC0000;
}
@media (max-width: 800px) {
.contwrap  h2 {
  font-size:1.7em;
}}

.mrb30 {margin-bottom:30px;}
.bodytxt {
	max-width:1100px;
	width:fit-content;
	margin:50px auto 25px auto;}
@media (max-width: 1200px) {
	.bodytxt {
	max-width:80%;
	width:fit-content;
	margin:50px auto 25px auto;}}
.bodytxt .alpineimg {
	width:80%;
	height:auto;
	max-width:650px;
	margin:0 auto 25px auto;}
.bodytxt .alpineimg img {
	width:100%;
	height:auto;}


/*もくじ*/	
.mokujibox {
	width:fit-content;
	height:auto;
	margin:0 auto 90px auto;
	box-sizing:border-box;
	border:#CCCCCC 1px solid;
	padding:25px 30px;
	text-align:center;
	max-width:70%;}
.mokujibox ul{
	width:100%;
	text-align:center;
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
}
.mokujibox ul li{
	margin:0 25px 15px 25px;
}
.mokujibox ul li a {
	text-decoration:none;
}
.mokujibox span {
	display:block;
	margin:0 auto 20px auto;}		
	
.bodytxt p {
	margin-bottom:20px;}
.bodytxt ul li {
	margin-bottom:15px;
	list-style:outside;
	list-style-type:circle;
	list-style-position:outside	}
.kaisetsuimg {
	width:90%;
	height:auto;
	margin:80px auto 30px auto;
	max-width:955px;}
.kaisetsuimg img {
	width:100%;
	height:auto;}	

/*ボード部分*/
.boardwrap {
	width:90%;
	height:auto;
	max-with:1200px;
	margin:50px auto 30px auto;
	display:flex;
	justify-content:center;
	flex-wrap:wrap;}

.boardwrap .boardimg {
	width:45%;
	height:auto;
	margin-right:5%;
	max-width:471px;}
.boardwrap .boardimg span {
	display:block;
	margin-bottom:15px;
	font-weight:700;
	text-align:center;}
.boardwrap .boardimg img {
	width:100%;
	height:auto;
	margin:0 auto;}	
.boardwrap .boardtxt {
	width:50%;
	height:auto;}
.boardwrap .boardtxt p {
	text-align:left;
	display:block;
	line-height:1.8;}
.boardwrap .boardtxt img {
	width:100%;
	height:auto;
	max-width:462px;
	margin:0 auto 15px auto;
	display:block;
	}
@media (max-width: 1000px) {
.boardwrap {
	display:block;}
.boardwrap .boardimg {
	width:100%;
	height:auto;
	margin-right:auto;
	margin-left:auto;
	max-width:471px;
	margin-bottom:20px;}
.boardwrap .boardtxt {
	max-width:100%;
	width:fit-content;
	height:auto;}	
	}
	
.othertoolswrap {
	width:90%;
	height:auto;
	max-with:1200px;
	margin:50px auto 30px auto;
	display:flex;
	justify-content:center;
	flex-wrap:wrap;}

.othertoolswrap .toolbox {
	width:25%;
	height:auto;
	margin:0 3.5% 20px 3.5%;}
	
.othertoolswrap .toolbox img {
	width:100%;
	max-width:370px;
	height:auto;
	margin:0 auto 15px auto;}
.othertoolswrap .toolbox h3 {
	font-weight:700;
	font-size:1.3em;
	display:block;
	margin:0 auto 20px auto;}
.othertoolswrap .toolbox p {
	text-align:left;}
@media (max-width: 1100px) {
.othertoolswrap .toolbox {
	width:40%;
	height:auto;
	margin:0 5% 20px 5%;}}

@media (max-width: 650px) {
.othertoolswrap .toolbox {
	width:80%;
	height:auto;
	margin:0 10% 20px 10%;}}

/*予選*/
.contwrap .midashi{
	width:90%;
	margin:0 auto 40px auto;
	background-color:#000000;
	color:#FFFFFF;
	text-align:center;
	padding-top:15px;
	padding-bottom:15px;
	font-size:2.0em;
	border-radius:15px;
	font-weight:700;
	max-width:1200px;}
.yosenwrap {
	width:90%;
	height:auto;
	max-with:1100px;
	margin:50px auto 30px auto;
	display:flex;
	justify-content:center;
	flex-wrap:wrap;}

.yosenwrap .yosenimg {
	width:45%;
	height:auto;
	margin-right:5%;
	max-width:500px;
	box-sizing:border-box;}
.yosenwrap .yosenimg img {
	width:100%;
	height:auto;
	margin:0 auto;}	
.yosenwrap  .yosentxt {
	width:50%;
	height:auto;
	box-sizing:border-box;}
.yosenwrap .yosentxt p {
	text-align:left;
	line-height:1.8;
	margin-bottom:15px;}
.yosenwrap .yosentxt img {
	width:100%;
	height:auto;
	max-width:138px;
	margin:0 25px 15px 0;
	float:left;
	}
.yosenwrap .yosentxt .tag {
	background:#CC3300;
	padding:5px 10px;
	border-radius:5px;
	color:#FFFFFF;
	font-size:0.75em;
	font-weight:700;
	margin:0 15px 10px 0; 
	height:auto;
	width:4em;}

@media (max-width: 1000px) {
.yosenwrap {
	display:block;}
.yosenwrap .yosenimg {
	width:100%;
	height:auto;
	margin-right:auto;
	margin-left:auto;
	max-width:500px;
	margin-bottom:20px;}
.yosenwrap .yosentxt {
	max-width:100%;
	width:fit-content;
	height:auto;}	
	}	

.yosendaywrap {
	width:90%;
	max-width:1100px;
	margin:50px auto 35px auto;
	height:auto;}
.yosendaywrap  p {
	text-align:left;
	line-height:1.8;
	margin-bottom:15px;}
.yosendaywrap  img {
	width:100%;
	height:auto;
	max-width:138px;
	margin:0 25px 15px 0;
	float:left;
	}
.yosenrun {
	width:80%;	
	max-width:1100px;
	margin:35px auto 0 auto;
	text-align:left;
	display:flex;}
.yosenrun .midashi {
	width:15%;
	min-width:6em;
	text-align:center;
	padding:10px;
	box-sizing:border-box;
	margin:0 2% 0 0;
	background-color:#66CCCC;
	color:#FFFFFF;
	font-weight:700;
	font-size:1.2em;
	border-radius:0px;}
.yosenrun ul {
	text-align:left;}
.yosenrun ul li {
	text-align:left;
	margin-bottom:10px;
	font-weight:700;}	
.yosenrun ul li:last-child {
	margin-bottom:0px;}	
	
.kekkabox {
  position: relative;
  padding: 1.5rem 2rem;
  border: 1px solid #000;
  width:80%;
  max-width:1100px;
  margin:25px auto;
  text-align:center;
  font-weight:700;
  font-size:1.3em;
  box-sizing:border-box;
}

.kekkabox:before {
  position: absolute;
  bottom: -14px;
  left: 1em;
  width: 0;
  height: 0;
  content: '';
  border-width: 14px 12px 0 12px;
  border-style: solid;
  border-color: #000 transparent transparent transparent;
  left: 50%;
  transform: translateX(-50%);
}

.kekkabox:after {
  position: absolute;
  bottom: -13px;
  width: 0;
  height: 0;
  content: '';
  border-width: 14px 12px 0 12px;
  border-style: solid;
  border-color: #FFF transparent transparent transparent;
  left: 50%;
  transform: translateX(-50%);
}

.kessyowrap {
	width:90%;
	height:auto;
	max-with:1100px;
	margin:50px auto 30px auto;
	display:flex;
	justify-content:center;
	flex-wrap:wrap;}
.tornament {
	width:100%;
	height:auto;
	margin-bottom:60px;
	max-width:930px;}
.tornament img {
	width:100%;
	height:auto;}
.kessyotxt {
	width:100%;
	height:auto;
	max-width:1000px;
	margin:0 auto 35px auto;}
.kessyotxt ul li{
	margin-bottom:15px;
	font-weight:700;
	font-size:1.2em;}
.kessyotxt .tag {
	background:#CC3300;
	padding:5px 10px;
	border-radius:5px;
	color:#FFFFFF;
	font-size:0.75em;
	font-weight:700;
	margin:0 15px 10px 0; 
	height:auto;
	width:80px;
	text-align:center;}
.kessyotxtbox {
	width:100%;
	height:auto;
	max-width:1000px;
	margin:0 auto 35px auto;
	border:#000000 1px solid;
	padding:15px 25px;
	box-sizing:border-box;}

.pointlistimg {
	width:100%;
	height:auto;
	max-width:653px;
	margin:0 auto 25px auto;}
.pointlistimg img {
	width:100%;
	height:auto;}

.youtubetitle {
	width:80%;
	height:auto;
	text-align:center;
	margin:0 auto 20px auto;
	border-bottom:#CC0000 1px dashed;
	font-weight:700;}



/*ページ下部コンテンツ*/
.linkwrap {
	width:90%;
	max-width:1400px;
	height:auto;
	margin:100px auto 90px auto;}
@media (max-width: 1000px) {
.linkwrap {
	width:90%;
	max-width:1400px;
	height:auto;
	margin:50px auto 90px auto;}}	
	
	
.linkwrap h2 {
  position: relative;
  padding: 1rem; /*文字と線の間の距離*/
  text-align: center;
  font-size:2.5em;
}

.linkwrap h2:before {
  position: absolute;
  bottom: -10px;
  left: calc(50% - 30px);/*widthの半分を引く*/
  width: 60px;/*線の長さ*/
  height: 1px;/*線の太さ*/
  content: '';
  background: #CC0000;
}
@media (max-width: 800px) {
.linkwrap  h2 {
  font-size:1.7em;
}}

/*主要リンクボタン*/
.guidewrap {
	width:100%;
	height:auto;
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	box-sizing:border-box;}
.guidebtn {
	width:50%;
	height:auto;
	position:relative;
	text-align:left;
	box-sizing:border-box;}
.guidebtn a{
    position: absolute;
    width: 100%;
    height: 100%;
    top:0;
    left: 0;
  }
.guidebtn a:hover{
        opacity:0.6;
        filter: alpha(opacity=60);
        background: #fff;
  }
.guidebtn img {
	width:100%;
	height:auto;}
.guidebtn a h3 {
	position:absolute;
	top:50%;
	transform: translateY(-50%);
    left: 10%;
	font-weight:700;
	font-size:2.5em;
	}

.guidebtn a:hover h3  {
	text-decoration:none;
	color:#000000 !important;
	}

@media (max-width: 1000px) {
.guidebtn a h3 {
	font-size:1.7em;
	}}
@media (max-width: 600px) {
.guidebtn {
	width:100%;
	height:auto;
	position:relative;
	text-align:left;
	box-sizing:border-box;}}	
