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



.introwrap {
	width:100%;
	height:auto;
	padding-top:350px;
	margin-bottom:30px;
	text-align:left;
	font-size:1.1em;}
.introwrap p {
	width:70%;
	height:auto;
	margin:0 auto 20px auto;}
@media (max-width: 1000px) {	
.introwrap p {
	width:85%;
	height:auto;
	margin:0 auto 20px auto;
	font-size:0.9em;}}

/*共通*/
.snswrap {
	width:100%;
	height:auto;
	display:flex;
	justify-content:flex-end;}
.iconsns {
	background-color:#000000;
	padding:10px;
	margin:20px 0 0 20px;
	width:34px;
	height:35x;
	border-radius:7px;
	transition:background-color .5s;}
.iconsns img {
	width:100%;
	height:auto;}

.iconsns:hover {
	background-color:#CC0000;}
.corpimg {
	max-width:389px;
	height:auto;
	width:100%;
	margin:0 auto 26px auto;}
.corpimg img {
	width:100%;
	height:auto;}
.splink a {
	font-weight: bold;
	color: #FFF;
	text-align: center;
	width: 100%;
	margin-top: 10px;
	padding-top: 10px;
	padding-bottom: 10px;
	background-color: #000;
	display: block;
	margin-right: auto;
	margin-left: auto;
	text-decoration: none;
}
.splink a:hover {
	font-weight: bold;
	color: #FFF;
	text-align: center;
	width: 100%;
	margin-top: 10px;
	padding-top: 10px;
	padding-bottom: 10px;
	background-color: #6CC;
	display: block;
	margin-right: auto;
	margin-left: auto;
	text-decoration: none;
}	
	
	
	

/*所属*/
.spowrap {
	width:90%;
	max-width:1500px;
	height:auto;
	margin:100px auto 90px auto;}
@media (max-width: 1000px) {
.spowrap {
	width:90%;
	margin:50px auto 90px auto;}}	
	
	
.spowrap h2 {
  position: relative;
  padding: 1rem; /*文字と線の間の距離*/
  text-align: center;
  font-size:2.5em;
}

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

.syozokubox {
	width:100%;
	max-width:800px;
	height:auto;
	margin:65px auto 150px auto;	
	}

.syozokubox h3 {
	font-weight:bold;
	text-align:center;
	margin:0 auto 43px auto;
	font-size:2.2em;}
.syozokubox span {
	text-align:center;
	margin:0 auto 64px auto;
	font-size:1.5em;
	display:block;}	
.syozokubox p {
	text-align:left;
	margin:0 auto 30px auto;
	display:block;
	line-height:1.7;}	
.syozokubox .phwrap {
	width:100%;
	height:auto;
	margin:0 auto 30px auto;
	box-sizing:border-box;
	display:flex;
	justify-content:space-between;
	}
.syozokubox .phwrap .phbox {
	max-width:280px;
	width:30%;
	height:auto;
	}
.syozokubox .phwrap .phbox img {
	width:100%;
	height:auto;	}
@media (max-width: 800px) {
.syozokubox h3 {
	font-size:1.6em;}
.syozokubox span {
	font-size:1.2em;}
.syozokubox {
	width:85%;
	max-width:800px;
	height:auto;
	margin:65px auto 150px auto;	
	}	}
.syozokubox .corpimg {
	max-width:600px;
	height:auto;
	width:100%;
	margin:0 auto 26px auto;}
.syozokubox .corpimg img {
	width:100%;
	height:auto;}
	
	
	

/*後援会*/
.koenkaiwrap{
	width:90%;
	max-width:1500px;
	height:auto;
	margin:100px auto 0px auto;}
@media (max-width: 1000px) {
.koenkaiwrap {
	width:90%;
	margin:50px auto 90px auto;}}	
	
	
.koenkaiwrap h2 {
  position: relative;
  padding: 1rem; /*文字と線の間の距離*/
  text-align: center;
  font-size:2.5em;
}

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

.koenkaibox {
	width:100%;
	max-width:800px;
	height:auto;
	margin:65px auto 150px auto;	
	}

.koenkaibox h3 {
	font-weight:bold;
	text-align:center;
	margin:0 auto 43px auto;
	font-size:2.2em;}
.koenkaibox span {
	text-align:center;
	margin:0 auto 64px auto;
	font-size:1.5em;
	display:block;}	
.koenkaibox p {
	text-align:left;
	margin:0 auto 30px auto;
	display:block;
	line-height:1.7;}	
.koenkaibox .phwrap {
	width:100%;
	height:auto;
	margin:0 auto 30px auto;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	}

.koenkaibox .phwrap .phbox {
	max-width:280px;
	width:28%;
	height:auto;
	margin-bottom:20px;}
.koenkaibox .phwrap .phbox img {
	width:100%;
	height:auto;}	
@media (max-width: 800px) {	
.koenkaibox {
	width:85%;
	max-width:800px;
	height:auto;
	margin:65px auto 150px auto;	
	}
.koenkaibox h3 {
	font-size:1.6em;}
.koenkaibox span {
	font-size:1.2em;}	}
		

/*パーソナルスポンサー*/

.pspowrap {
	width:90%;
	max-width:1700px;
	height:auto;
	margin:100px auto 0px auto;
}
@media (max-width: 1000px) {
.pspowrap {
	margin:50px auto 0px auto;}}	
	
	
.pspowrap h2 {
  position: relative;
  padding: 1rem; /*文字と線の間の距離*/
  text-align: center;
  font-size:2.5em;
}

.pspowrap h2:before {
  position: absolute;
  bottom: -10px;
  left: calc(50% - 30px);/*widthの半分を引く*/
  width: 60px;/*線の長さ*/
  height: 1px;/*線の太さ*/
  content: '';
  background: #CC0000;
}
@media (max-width: 800px) {
.pspowrap  h2 {
  font-size:1.7em;
}}
.pswrap {
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	width:100%;
	height:auto;}
.psbox {
	width:26%;
	max-width:600px;
	height:auto;
	margin:65px 3.5% 150px 3.5%;	
	}
.psbox:last-child {
	margin:65px 3.5% 150px 3.5%;	
	}
.psbox h3 {
	font-weight:bold;
	text-align:center;
	margin:0 auto 43px auto;
	font-size:1.8em;}
.psbox span {
	text-align:center;
	margin:0 auto 64px auto;
	font-size:1.5em;
	display:block;}	
.psbox p {
	text-align:left;
	margin:0 auto 30px auto;
	display:block;
	line-height:1.7;}
.psbox ul{
	margin:-20px auto 0 20px;
	font-size:0.85em;}	
.psbox ul li {
	margin:0 auto 10px 0;
	list-style:outside circle;
	font-weight:700;}	
@media (max-width: 1500px) {
.psbox {
	width:42%;
	height:auto;
	margin:65px 3.5% 90px 3.5%;	
	}
}	
@media (max-width: 950px) {
.psbox {
	width:85%;
	max-width:800px;
	margin:65px auto 90px auto;	
	}
.psbox h3 {
	margin:0 auto 18px auto;
	font-size:1.6em;}
.psbox span {
	margin:0 auto 35px auto;
	font-size:1.2em;
}	
}	
		
	

/*サプライヤー*/

.supplywrap {
	width:90%;
	max-width:1700px;
	height:auto;
	margin:100px auto 90px auto;
}
@media (max-width: 1000px) {
.supplywrap {
	margin:50px auto 90px auto;}}	
	
	
.supplywrap h2 {
  position: relative;
  padding: 1rem; /*文字と線の間の距離*/
  text-align: center;
  font-size:2.5em;
}

.supplywrap h2:before {
  position: absolute;
  bottom: -10px;
  left: calc(50% - 30px);/*widthの半分を引く*/
  width: 60px;/*線の長さ*/
  height: 1px;/*線の太さ*/
  content: '';
  background: #CC0000;
}
@media (max-width: 800px) {
.supplywrap  h2 {
  font-size:1.7em;
}}
.supwrap {
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	width:100%;
	height:auto;}
.supbox {
	width:26%;
	max-width:600px;
	height:auto;
	margin:65px 3.5% 150px 3.5%;	
	}
.supbox h4 {
	font-weight:bold;
	text-align:center;
	margin:0 auto 13px auto;
	font-size:1.2em;
	letter-spacing:-0.05em;}
.supbox h3 {
	font-weight:bold;
	text-align:center;
	margin:0 auto 8px auto;
	font-size:1.7em;}
.supbox span {
	font-weight:bold;
	text-align:center;
	margin:0 auto 64px auto;
	font-size:1.4em;
	display:block;}	
.supbox p {
	text-align:left;
	margin:0 auto 30px auto;
	display:block;
	line-height:1.7;}		
@media (max-width: 1500px) {
.supbox {
	width:42%;
	height:auto;
	margin:65px 3.5% 90px 3.5%;	
	}
}	
@media (max-width: 1100px) {
.supbox{
	width:85%;
	max-width:800px;
	margin:65px auto 90px auto;	
	}
.supbox h3 {
	margin:0 auto 18px auto;
	font-size:1.6em;}
.supbox span {
	margin:0 auto 35px auto;
	font-size:1.2em;
}	
}	
	
	
	
	
	

/*ページ下部コンテンツ*/
.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;}}	
