/* 全体 */

html {
  font-size: 80%;
  line-height: 1.7;
  color: #414141;
}

body {
  margin: 0;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0;
  font-family: 'Midashi Go MB1', sans-serif;
}

p {
  margin-top: 0;
  text-align: justify;
  font-family: 'Gothic Medium BBB', sans-serif;
}

ul {
  list-style-type:none;
  margin-top: 0;
  margin-bottom: 0;
	padding-left:0;
  font-family: 'Gothic Medium BBB', sans-serif;
}

img {
  width: 100%;
}

a {
  text-decoration: none;
}

a > :hover {
  text-decoration: none;
  }

.img {
  margin: 0 auto;
}

.img > img {
  display: block;
  width: 100%;
}


.sp-on {
  display: none;
}

.red{
	color: red;
}

.clearfix::after {
   content: "";
   display: block;
   clear: both;
}

/* top */

#top {
  width: 100%;
}

#category {
	float: left;
	margin-left: 30px;
	margin-bottom: 20px;
	font-size: 150%;
	font-weight: bold;
	color: #fff;}

#category > .general {
	background-color: #00883F;
	padding: 18px 30px 1px 30px;

}

#category > .shonan {
	background-color: #00A0DF;
	padding: 18px 30px 1px 30px;
}

#category > .training {
	background-color: #0D2DB1;
	padding: 18px 30px 1px 30px;
}

/* mv */

#mv {
  width: 780px;
  margin: 0 auto 6rem auto;
  text-align: center;
}

#mv .img {
  clear: both;
}

#mv > .img >img {
  width: 100%;
  margin: 0 auto 5rem auto;
}

#mv > .shonanlogo-main {
  width: 20%;
  margin: 30px auto 0 auto;
}

#mv > .event-date {
  width: 50%;
  margin: 0 auto;
}

#mv > .entry-date {
  width: 30%;
  margin: 0 auto;
}

#mv > h1 {
  font-size: 1.8rem;
  letter-spacing: 0.3rem;
  margin-bottom: 3.5rem;
}

#mv > h1 > .copy {
  font-size: 2.5rem;
  letter-spacing: 0.5rem;
}

#mv > h1 > img.copy {
  width: 80%;
}


#mv > p {
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 0.1rem;
  margin-bottom: 6rem;
  text-align: center;
}

#mv > p > .sp_br {
  display: none;
}

.not-text {
  text-decoration: line-through;
}

#mv > h1 > a {
  text-decoration: underline;
  color: #000;
}

#mv  > .mv-text > a {
  text-decoration: underline;
  color: #000;
}

#mv > .mv-text {
  text-align: center;
  font-size: 1.3rem;
  margin-bottom: 6rem;
}

#notice {
  background-color: #dd0000;
  text-align: center;
	padding: 20px 0 1px 0;
	line-height: 1.5em;
}

#notice > .notice {
  width: 780px;
  margin: 0 auto;
}

#notice > .notice > p {
  color: white;
  font-size: 1.5rem;
  font-weight: bold;
  text-align: center;
}


.contact-text {
  text-align: center;
  border: 1px solid;
  padding: 4rem;
}

.contact-text > p {
  text-align: center;
  font-size: 1.2rem;
  margin: 0;
}

.contact-text > p:first-child {
  font-family: 'din-2014', sans-serif;
  font-weight: 700;
  font-style: normal;
  text-align: center;
  font-size: 1.4rem;
}

.contact-text > p:nth-child(2) {
  margin-bottom: 2rem;
}

.mv-text-bold {
  font-family: 'Midashi Go MB1', sans-serif;
  text-align: center;
  font-size: 1.3rem;
  font-weight: bold;
  margin: 0;
}

.mv-text-small {
  font-family: 'Midashi Go MB1', sans-serif;
  text-align: center;
  font-size: 1.1rem;
  margin: 0 ;
}

#mv > .supportlogo {
  display: flex;
  align-items: center;
  width: 400px;
  margin: 0 auto;
}

#mv .supportedby {
  width: 60%;
}

#mv > .supportlogo .mv-coldwin {
  width: 70%;
}

#mv > .supportlogo .mv-noth {
  width: 70%;
}


#mv > p > a {
  text-decoration: underline;
  color: #000;
}

/* entry */
#entry {
  width: 950px;
  margin: 100px auto 100px;
}

#entry > .message-copy {
  width: 950px;
  margin: 0 auto 30px;
}

#pc-none {
  display: none;
}

#sp-none {
  display: block;
}

#entry > .entry-text-box {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

#entry > .entry-text-box > div {
  width: 70%;
}

#entry > .entry-text-box h2 {
  font-size: 27px;
  margin-bottom: 30px;
}

#entry > .entry-text-box p {
  font-size: 14px;
}

#entry > .entry-text-box > .text p.price {
  font-size: 20px;
	font-weight: bold;
}

#entry > .entry-text-box > .text p .caution {
  font-size: 12px;
}

#entry > .entry-text-box > .entry-img {
  margin: 0;
  width: 25%;
}


/*リンクボタン */
#link{
  max-width: 860px;
  margin: 60px auto 0;
}

#link .link {
  display: block;
  margin: 20px 50px 20px 0px;
}

#link .left {
 width: 43%;
  float: left;
}

#link .right {
 width: 43%;
  float: right;
}

#link .link a {
  color: #00883F;
  text-align: center;
}
		
#link .link .biglink {
  font-size: 1.3rem;
  font-weight: 700;
  position: relative;
  display: inline-block;
  padding: 1rem 3rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  vertical-align: middle;
  text-decoration: none;
  border: solid 2px #00883F;
  width: 100%;
  text-align: center;
} 

#link .link .biglink:hover {
  background-color: #80D5A7;
  color: #00883F;	
}

#link .link .biglink:visited {
  color: #00883F;	
}

/*エントリーボタン */
.entry_btn{
	margin: 50px 0;	
}

.btn {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.3;
  position: relative;
  display: inline-block;
  margin: 0 auto;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  border-radius: 0.5rem;
 /* padding: 15px;*/
}

.btn-glay {
  color: #fff;
  background-color: #666666;
}

.btn-blue {
  color: #fff;
  background-color: #0066CC;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.3;
  position: relative;
  display: inline-block;
  margin: 0 auto;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  border-radius: 0.5rem;
  padding: 15px;

}

.btn-blue:hover {
  color: #fff;
  background: #003366;
}

/* maincont */
#maincont > .pc {
  display: block;
  max-width: 1024px;
  margin: 0 auto;
}

#maincont > .sp {
  display: none;
}

#maincont > .pc >.maincont-btn {
  display: flex;
  justify-content: space-between;
  margin-bottom: 95px;
}

#maincont > .pc > .maincont-btn > .maincont-btn-01 {
  z-index: 0;
  position: relative;
  width: 25%;
}

#maincont > .pc > .maincont-btn > .maincont-btn-01 > .btn01 > div {
  display: flex;
  justify-content: center;
  align-items: center;
}


.off {
  position: relative;
  transition: 0.5s;
}

.off:hover {
  opacity: 0;
}

.on {
  position: absolute;
  top: 49%;
  left: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin:0;
  padding:0;
  text-align: center;
  opacity: 0;
  transition: 0.5s;
}

.on:hover {
  opacity: 1;
}


#maincont > .pc  .maincont-btn > .maincont-btn-01 > .maincont-btn-text > h2 {
  font-size:31px
}

#maincont > .pc  .maincont-btn > .maincont-btn-01 > .maincont-btn-text > p {
  font-size:18px;
  text-align: center;
}

.number {
  font-size: 24px;
  margin-bottom: 44px;
}

.maincont-head-head {
  font-size: 28px;
  margin-bottom: 36px;
}

.maincont-head > hr {
  width: 154px;
  text-align: left;
  margin: 0 0 38px;
}

#maincont > .pc  .text > p {
  columns: 2;
  column-gap: 6em;
  font-size: 14px;
  line-height: 1.7;
  margin: 0;
}

#maincont > .pc .text > .maincont03-2colmn > p {
  columns: 1;
}

#maincont > .pc .text > .maincont03-2colmn {
  columns: 2;
  column-gap: 6em;
  font-size: 14px;
  line-height: 1.7;
  margin: 0;
}

#maincont > .pc  .text > table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  margin: 40px 0 60px;
}

#maincont > .pc  .text > table td {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

#maincont > .pc  .text > table td:nth-child(odd) {
  width: 35%;
}

#maincont > .pc  .text > table tr:nth-child(odd) {
  background-color: #eee
}

#maincont > .sp  .text  table tr:nth-child(odd) {
  background-color: #eee
}

#maincont > .pc  .text > .text01-img {
  width: 80%;
  margin: 70px auto;
}


.maincont03-h3 {
  margin-top: 50px;
}

.button-center {
  max-width: 1024px;
  margin: 0 auto;
}

.quarantine-button {
  width: 300px;
  height: 35px;
  padding: 1.2rem 2rem 0.7rem 2rem;
  text-decoration: none;
  background: #000;
  color: #FFF;
  border-radius: 57px;
  margin: 6rem auto 10rem;
  /* margin-bottom: 3rem; */
}

.quarantine-button > a {
  color: #FFF;
}

.quarantine-button > a > p {
  margin: 0 auto;
  text-align: center;
  font-size: 16px;
}

/* news */

#news {
  width: 700px;
  margin: 0 auto;
}

#news h2 {
  font-family: 'Midashi Go MB1', sans-serif;
  text-align: center;
  font-size: 1.4rem;
  margin-bottom: 3rem;
}

#news p {
  font-family: 'Gothic Medium BBB', sans-serif;
  font-size: 14px;
}

#news .news-name {
  font-family: 'Midashi Go MB1', sans-serif;
  text-align: right;
  font-weight: bold;
  margin-bottom: 6rem;
}

/* contact */

#contact {
  text-align: center;
  max-width: 750px;
  margin: 3rem auto;
}

#contact > p {
  font-family: 'Midashi Go MB31', sans-serif;
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 3rem;
}
#contact .cd{
  text-align: center;
  width: 375px;
}
#contact > .contact-p {
  margin-bottom: 0;
  line-height: 2.5em;
}

#contact > p > .sp_br {
  display: none;
}

#contact > .img {
  width: 100px;
  margin: 0 auto 34px;
}

#contact > .img > img {
  width: 100%;
}

#contact > h1 {
  font-size: 20px;
  margin-bottom: 50px;
}

#contact > .event-date {
  width:30%;
  margin-bottom: 0;
}

#contact > .entry-date {
  width:20%;
  margin-bottom: 30px;
}

#contact > p {
  text-align: center;
  font-size: 14px;
}

#contact > h2 {
  text-align: center;
  font-size: 18px;
}

#contact > .contact-box {
  padding: 40px;
  border: solid 1px;
  width:60%;
  margin: 56px auto 88px;
}

#contact > .contact-box > h2 {
  font-size: 16px;
  margin-bottom: 30px;
}

#contact > .contact-box > p {
  font-size: 14px;
  text-align: center;
  margin: 0;
}

.contact-button {
  width: 400px;
  height: 66px;
  display: inline-block;
  padding: 1.2rem 2rem 0.7rem 2rem;
  text-decoration: none;
  background: #000;
  color: #FFF;
  border-radius: 57px;
  margin-bottom: 3rem;
}

.contact-button > a {
  color: #FFF;
}

.contact-button > a > p:first-child {
  text-align: center;
  font-weight: bold;
  font-size: 1.4rem;
  margin: 0;
}

.contact-button > a > p {
  text-align: center;
  font-size: 1.2rem;
  margin: 0;
}

#contact .entry_btn p.catchcopy {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.3;
  text-align:center;
}

#contact .entry_btn .term {
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.3;
	text-align:center;
	padding:20px 12px;
	background:#FFFFDD;
	border:1px solid #eec86c;
	margin-top:40px;
}
#contact .entry_btn .term span.red{
	color:#DD0000;
}
/* footer */

#footer {
  width: 100%;
}

#footer > p {
  font-family: 'Gothic Medium BBB', sans-serif;
  text-align: center;
  font-size: 14px;
  color: #FFF;
  background-color: #000;
  padding: 2rem;
  margin: 0;
}

@media screen and (max-width: 896px) {

.pc_br{
  display: none;
}

/* top */

#logo > a {
  margin: 0 1rem;
  width: 7rem;
}

#logo > a:first-child {
  width: 4rem;
}

/* mv */

#mv {
  width: 80%;
}

#mv > .img > img {
  width: 25%;
}
	
#mv > .shonanlogo-main {
  width: 100%;
  margin: 30px auto 0 auto;
}

	
#notice > .notice {
  width: 90%;
  padding: 0 20px;
}

/* entry */
#entry {
  width: 100%;
  margin: 100px auto 100px;
}

#entry > .message-copy {
  width: 100%;
  margin: 0 auto 30px;
}	

/*リンクボタン */
#link{
  max-width: 600px;
  margin: 0 auto;
}

#link .link {
  display: block;
  margin: 20px 10px;
}

#link .left {
 width: 40%;
  float: left;
}

#link .right {
 width: 40%;
 float: right;
}
	
#link .link .biglink {
	width: 80%;
}

#link .link .biglink a {
  color: #00883F;
}
		

/* news */

#news {
  width: 80%;
}
	
	

}

@media screen and (max-width: 600px) {

/* top */

#logo {
  padding: 0 0 3rem 1rem;
}

#logo > a {
  margin: 0 0.7rem;
  width: 5rem;
}

#website {
  padding: 2.5rem 1rem 0 0;
}

.website {
    height: 40px;
    line-height: 40px;
    border-radius: 33px;
    padding: 0 1.5rem;
}

#website > .website > a {
  font-size: 0.5rem;
}

/* maincont */
#maincont > .pc {
  display: none;
}

#maincont > .sp {
  display: block;
}
#maincont > .pc >.maincont-btn {
  display: flex;
  justify-content: space-between;
  margin-bottom: 95px;
}

#maincont > .sp > .maincont-btn > .maincont-btn-01 {
  z-index: 0;
  position: relative;
  max-width: 220px;
  margin: 50px auto;
}

#maincont > .sp > .maincont-btn > .maincont-btn-01 > .btn01 > div {
  display: block;
}

.off {
  position: relative;
  transition: 0.5s;
}

.off:hover {
  opacity: 0;
}

.on {
  position: absolute;
  top: 49.5%;
  left: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin:0;
  padding:0;
  text-align: center;
  opacity: 0;
  transition: 0.5s;
}

.on:hover {
  opacity: 1;
}

#maincont > .pc  .maincont-btn > .maincont-btn-01 > .maincont-btn-text > h2 {
  font-size:31px
}

#maincont > .pc  .maincont-btn > .maincont-btn-01 > .maincont-btn-text > p {
  font-size:18px;
  text-align: center;
}

.number {
  font-size: 24px;
  margin-bottom: 44px;
}

.maincont-head-head {
  font-size: 28px;
  margin-bottom: 36px;
}

.maincont-head > hr {
  width: 154px;
  text-align: left;
  margin: 0 0 38px;
}

#maincont > .pc  .text > p {
  columns: 2;
  column-gap: 6em;
  font-size: 14px;
  line-height: 1.7;
  margin: 0;
}

#maincont > .pc  .text > table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  margin: 50px 0 70px;
}

#maincont > .pc  .text > table td {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

#maincont > .pc  .text > table td:nth-child(odd) {
  width: 35%;
}

#maincont > .pc  .text > table tr:nth-child(odd) {
  background-color: #eee
}

#maincont > .pc  .text > .text01-img {
  width: 50%;
  margin: 70px auto;
}



/* mv */

#mv {
  width: 90%;
}

#mv > .img > img {
  width: 100%;
}

#mv > h1 {
  font-size: 1.2rem;
}
	
/* sponsor  */
#sponsor{
  width: 90%;
}
	
#sponsor > .img > img {
  width: 80%;
}

/* news */

#news {
  width: 90%;
  margin: 0 auto;
}

/* entry */
#entry {
  width: 90%;
  margin: 50px auto 50px;
}


#entry > .message-copy {
  width: 100%;
  margin: 0 auto 30px;
}

#entry > .entry-text-box {
  display: block;
  justify-content: space-between;
  align-items: center;
}

#entry > .entry-text-box > div {
  width: 100%;
}

#entry > .entry-text-box h2 {
  font-size: 22px;
  margin-bottom: 30px;
  text-align: center;
}

#entry > .entry-text-box p {
  font-size: 14px;
}

#entry > .entry-text-box > .entry-img {
  margin: 30px auto;
  width: 45%;
}

/* contact */

#contact > p > .sp_br {
  display: block;
}

p#center {
  text-align: center;
}

#link {
  max-width: 600px;
  margin: 0 auto;
}
	
#link .link {
  float: none;
  max-width: 100%;
  margin: 30px 30px 0 15px;
}
	

}

@media screen and (max-width: 480px) {
	
/* top */

#logo {
  padding: 0 0 3rem 1rem;
}

#logo > a {
  margin: 0 0.7rem;
  width: 5rem;
}

#logo > a:first-child {
  display: none;
}

#website {
  padding: 2.5rem 1rem 0 0;
}

.website {
    height: 40px;
    line-height: 40px;
    border-radius: 33px;
    padding: 0 1.5rem;
}

#website > .website > a {
  font-size: 0.5rem;
}

.contact-button {
  width: 80%;
  height: 100%;
  padding: 1.2rem 2rem 1rem 2rem;
  border-radius: 20px;
}

.contact-button:first-of-type {
  border-radius: 57px;
}

/* mv */

#mv {
  width: 90%;
}

#mv > h1 {
  font-size: 1.2rem;
}

/*
#mv > h1 > br {
  display: none;
}
*/

#mv > p {
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 0.1rem;
  margin-bottom: 6rem;
  text-align: justify;
}

.contact-text {
  padding: 1.5rem;
}

#mv > .shonanlogo-main {
  width: 45%;
}

#mv > .event-date {
  width: 80%;
  margin: 0 auto;
}

#mv > .event-date > img {
  margin-bottom: 30px;
}

#mv > .entry-date {
  width: 50%;
  margin: 0 auto;
}

#mv > .entry-date > img {
  margin-bottom: 60px;
}

#mv > .supportlogo {
  width: 100%;
}
	
/* sponsor  */
#sponsor {
  width: 100%;
  margin: auto;
}
	
#sponsor > .supportlogo1{
  width: 100%;
}

#sponsor > .supportlogo2{
  width: 80%;
 padding-left: 0;
}

/* news */

#news {
  width: 90%;
  margin: 0 auto;
}

/* contact */
#contact {
  width: 90%;
  margin-top: 5rem
}

#contact > p > .sp_br {
  display: none;
}

/* message */
#entry {
  width: 90%;
  margin: 50px auto 50px;
}

#pc-none {
  display: block;
  width: 80%;
  margin: 0 auto 40px;
}

#sp-none {
  display: none;
}

#contact > .event-date {
  width:70%;
  margin-bottom: 0;
}

#contact > .entry-date {
  width:40%;
  margin-bottom: 30px;
}

#contact > p {
  text-align: justify;
  font-size: 14px;
}

#contact > .contact-box {
  padding: 15px;
  width:90%;
  margin: 56px auto 88px;
}

#contact > .contact-box > p {
  text-align: justify;
}

#contact > .contact-box > p > .sp_br {
  display: none;
}

.modalWrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  transform:translate(-50%,-50%);
  width: 100%;
  max-width: 340px;
  padding: 10px 30px;
  background-color: #fff;
  height : 85%;
  /* お好みの高さで固定 */
  overflow : auto;
  /* 状況に応じて縦スクロールバーが出現 */
}
#center {
  text-align: center;
}

p#center {
  text-align: center;
}

p#contact-info {
  text-align: center;
}

#link {
	margin: 0 auto;
}
	
#link .link {
  margin: 30px 30px 0 20px;
}
	
#link .link .left, #link .link .right{
  float: none;
  width: 100%;
}
	
	
.sp-on {
  display: block;
}
	
.pc_br{
  display: none;
}

}

