@charset "utf-8";


.wf-sawarabimincho { font-family: "Sawarabi Mincho", serif; }

html,body{
    width: 100%;
    word-break: break-all;
}

 *{
     box-sizing: border-box;
 }



body{


font-style: normal;

    line-height: 1.6;
    font-size: 18px;
    
    font-family: noto-sans-cjk-jp, sans-serif;
    font-family: verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	font-family: "メイリオ", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
    
font-weight: 400;
font-style: normal;
color: #555655;


 

    
}

h2,
h3,
h4,
h5,
h6{
  
font-weight: 700;
font-style: normal;
}


a {
	color:#333;
	outline: none;
	text-decoration: none;
}

a:hover{

	/*text-decoration: underline;*/
    opacity:0.7;
	filter: alpha(opacity=70);
}


img{
max-width: 100%;
height: auto;
width /***/:auto;
}


input, select, textarea {
    padding: 5px 10px;
	border: 1px solid #ccc;
	margin: 2px;

}


input[type=radio], input[type=checkbox] {
	margin:0 5px 0 0;
	width: auto;
}
label{
	display: inline-block;
}


.width100{
	width:100%;
}

.wrap{
	overflow: hidden;
}


.block{
	display: block;
}

.onlysp{
	display: none;
}
.none{
	display:none;
}






/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}





.wrap{
     padding:0px 0 0;
}



.home .wrap{

}
/*
#a01,
#a02,
#a03,
#a04,
#a05,
#a06,
#reserve,
#mw_wp_form_mw-wp-form-27{
   display: block;
   margin-top:-150px;
   padding-top:150px;
}*/










 
 .mainbody{
	max-width:1155px;
	margin: 0 auto;
}
.mainbody2{
	max-width:960px;
	margin: 0 auto;
}
 
 

FOT-TsukuARdGothic Std R{
    font-family: "fot-tsukuardgothic-std", sans-serif;
    font-weight: 400;
    font-style: normal;
}


 
 
 FOT-TsukuARdGothic Std B{
     font-family: "fot-tsukuardgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;

 }


/*ヘッダー
------------------------------------------------*/
.mainimg{
    text-align: center;
    background: #7177cd;
}
.gnavi {
 background: #ef93af;
 border: 1px solid #ef93af;
}
.gnavi ul{
    display: flex;
    justify-content: space-between;
    text-align: center;
    margin: 0 auto ;
    max-width: 1100px;
}
.gnavi li{
    flex-basis: 25%;
}
.gnavi li a{
    display: block;
    background: #ef93af;
    color:#000;
    padding: 10px;
}
.gnavi li a:hover{
  color: #000;
  background:#f6c2c0;
   opacity:1;
	filter: alpha(opacity=100);
}

.topmain{
    display: none;
}
.home .topmain{
    display: block;
    
    height: 620px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.home .topmain img{
    height: 620px;
    max-width: 1920px;
}

@media screen and (max-width: 1300px) {
.home .topmain{
   height: 45vw;
}
.home .topmain img{
height: 45vw;
max-width: 140vw;
}
}
@media screen and (max-width: 620px) {
.home .topmain{
    height: auto;
    display: block;
}
.home .topmain img{
height: auto;
max-width: none;
width: 100%;
}
}






.home .pagemain{
    display: none;
}
.pagemain{
    display: block;
    
    height: 414px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.pagemain img{
    height: 414px;
    max-width: 1920px;
}
@media screen and (max-width: 1300px) {
.pagemain{
   height: 30vw;
}
.pagemain img{
  height: 30vw;
  max-width: 140vw;
}
}
@media screen and (max-width: 620px) {
.pagemain{
    height: auto;
    display: block;
}
.pagemain img{
height: auto;
max-width: none;
width: 100%;
}
}





/*
.pagemain img{
    width: 100%;
}*/


/*全体レイアウト
------------------------------------------------*/

/**スマホのメニュー**/
.menubtn{
    display: none;
}


body .sidr{
background: #ef93af;

}
.sidr a{
 color: #000;
}


#sidr-menu{

}
.spclose {
    text-align: right;
    padding: 10px 0;
    font-size: 200%;
   
   
}

.spnavi{
    padding: 0 0 20px 0;
}
.spnavi h2{
    text-align: center;
    margin: 0 auto 10px auto;
    font-size: 5vw;
    color: #000;
}


.spnavi ul{
    padding: 0 0 10px;
}

.spnavi ul a{
    color: #000;
}
.spnavi li a{
    display: block;
    border-bottom: 1px solid #000;
    
    padding: 10px 0 10px 0px;
margin: 0 0 0px;
text-align: center;
}




.spnavi a:hover{
    text-decoration: none;
}

.spmenu p{
    padding: 0 0 20px;
}
.spmenu h3{
    border: 1px solid #000;
    text-align: center;
    padding: 10px 0;
}
.spmenu h3 a{
display: inline-block;
background: url("../img/icon_blank_white.png") no-repeat right center;
  background-size: auto;
background-size: 18px;
padding: 0 24px 0 0;
}

.splogo{
    text-align: center;
    background: #000;
    padding: 20px 0;
    
}
.splogo img{
    max-height: 40px;
}



/*トップページ
-----------------------------------------------*/
.bg01wrap{
     background: #fdf3f2;
}
.bg02wrap{
    background: #fdeff0;
}
.content{
    padding: 60px 0;
}
.mainwrap{
    background: #fff;
    padding: 40px;
    max-width: 1200px;
    margin: 0 auto;
    border-radius: 10px;
}

.topmaintitle01 dl{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin:  0 0 30px;
}
.topmaintitle01 dt{
    flex-basis: 20%;
    text-align: center;
}
.topmaintitle01 dd{
    flex-basis:  70%;
}
.topmaintitle01 h1{
  /*  font-size: 210%;
    color: #6467ad;
    font-weight: 400;
    margin: 0 0 20px;*/
    
}
.topmaintitle01 p{
    padding: 0 0 10px;
}
.uline01{
    border-bottom: 1px solid #6467ad;
}

.textbox01{
    border:1px solid #ccc;
    background: #fff;
    padding: 10px;
    margin: 0 0 20px;
}

.tbox01 {
  position: relative;
  margin: 2em 0;
  padding: 1em 10% 1em;
  border: solid 3px #6467ad;
  border-radius: 10px;
}

.tbox01._02{
	margin-top: 0;
	 padding: 1em 5% 1em;
}

.tbox01title{
  padding: 0.5em 1em;
  margin: -2.5em auto 30px;
  font-weight: 900;
  color: #231815;
  background: #FFF;
  border: solid 3px #231815;
  border-radius: 10px;
  text-align: center;
}
.tbox01title02{
  margin: -1.5em auto 30px;
  line-height: 1;
  font-size: 19px;
  color: #6467ad;
  font-weight: bold;
  text-align: center;
}
.tbox01title02 span{
  background: #FFF;
  display: inline-block;
   padding: 0 9px;
}

.whitebox01{  
  margin: 2em 0;
  padding: 5em 10% 4em;
  border-radius: 10px;
  background: #fff;
}


.btn01{
    display: block;
    background: #2d6990;
    color: #fff;
    text-align: center;
    font-size: 160%;
    padding: 10px;
    border-radius: 20px;
}
.btn01._02{
    background: #6469ae;
}
.btn01._03{
    background: #6467ad;
}
.btn01:before{
   content: "";
  display: inline-block;
  width: 0;
  height: 0;
  margin: 0 0.5em 0 0;
  border: 10px solid transparent;
  border-right: 0 solid transparent;
  border-left: 20px solid #fff;
}

.gradbtn01{
display: inline-block;
padding: 7px 30px;
border-radius: 25px;
text-decoration: none;
color: #FFF !important;
background-image: linear-gradient(45deg, #c86656 0%, #6467ad 100%);
transition: .4s;

font-size: larger;
text-align: center;
}

.tbox02 {
    position: relative;
  margin: 2em 0;
  padding: 1em 1em 0.809em;
  border: solid 3px #000;
  border-radius: 10px;
}
.list01 li{
    padding:0 0 20px 1em; 
	padding:0 0 15px 1em; 
    text-indent: -1em;
   
}
.list01 li a {
		color: #6467ad;
}
.topentrytitle{
    text-align: center;
}
.topentrytitle h2{
  color: #555655;
  position: relative;
  line-height: 1.4;
  padding: 0.25em 1em;
  display: inline-block;
  font-size: 20px;
  margin: 0 0 30px;
}
.topentrytitle h2:before, .topentrytitle h2:after {
  position: absolute;
  top: 0;
  content: '';
  width: 8px;
  height: 100%;
  display: inline-block;
}


.topentrytitle h2:before{
content: '';
  border-left: solid 1px black;
  border-top: solid 1px black;
  border-bottom: solid 1px black;
  left: 0;
}
.topentrytitle h2::after {
  content: '';
  border-top: solid 1px black;
  border-right: solid 1px black;
  border-bottom: solid 1px black;
  right: 0;
}
 .toptabbtn{
 text-align: center;
 }
.contents .toptabbtn p{
background: #6467ad;
border-bottom: 3px solid #A34970;
text-align: center;
color: #FFF;
padding: 10px;
margin: 0 auto 10px;
cursor: pointer;
box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
transition: .4s;
max-width: 600px;
}
._02 .toptabbtn p{
   background-color: #231815;
border-bottom: solid 3px #4172A7;
}


.toptabbtn p::after {
  content: "の方はこちらをクリック";
}
.toptabbtn p.active:after {
  content: "を非表示";
}

.bbox01{
  padding-top: 24px;
  padding-right: 24px;
  padding-left: 24px;
  padding-bottom: 18px;
  border-radius: 12px;
  border: 2px solid #98b9e2;

}
.arrow01{
    text-align: center;
    padding: 20px 0;
}
.toptabentry{
    margin: 0 0 30px;
}

.pbtn01{
color: #FFFFFF;
background-color: #EB81AF;
border-color: #adadad;
display: inline-block;
padding: 10px;
border-radius: 10px;
}

.title01{
  color: #666;
  border: solid 2px #666;
  padding: 0.4em 1em;
  border-radius: 0.5em;
  font-size: 20px;
  margin: 0 0 30px;
}
.title02{
  color: #6467ad;
  border: solid 3px #6467ad;
  padding: 0.4em 1em;
  border-radius: 0.5em;
  font-size: 20px;
  margin: 0 0 30px;
}



.topstepbox{
    background: #fff;
    padding: 80px 60px 60px;
    margin: 0 0 50px;
}
.steptitle{
 margin: -2.5em auto 10px;
}
.steptitle strong{
   padding: 0.5em 1em;
  font-weight: 900;
  color: #fff;
  background: #98b9e2;
  border-radius: 10px;
  display: inline-block;
  text-align: center;
}

.topcontact{
    border: 1px solid #ccc;
    padding: 30px;
  
}
.topcontact h2{
  padding: 5px 1em;
  color: #fff;
  margin: 0 0 20px;
  background: #ef93af;
  font-size: 20px;
  display: inline-block;
 
}







.toptokuten{
    border: 2px solid #2d6990;
    border-radius: 20px;
    padding: 20px 30px;
       margin: 0 0 20px;
}
.toptokuten dl{
    display: flex;
    justify-content: space-between;
    padding: 5px 0;
    align-items:flex-start;
}
.toptokuten > dl > dt{
    background: #6467ad;
    color: #fff;
    padding: 2px 10px;
    position: relative;
    font-weight: 700;
    flex-basis: 12%;
    text-align: center;
    font-size: 14px;
    display: flex;
  align-items: center;
  justify-content: center;
  /*font-family: "fot-tsukuardgothic-std", sans-serif;*/
font-weight: 700;
font-style: normal;

}
.toptokuten > dl > dt:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 100%;
  margin-top: -5px;
  border:5px solid transparent;
  border-left: 5px solid #6467ad ;
  
}
.toptokuten dt big{
    font-size: 17px;
    margin: 0 0 0 5px;
    
}
.toptokuten > dl > dd{
  flex-basis: 84%;
  font-weight: 600;
  font-size: 90%;
}


.rvbnr{
   
    
    background: linear-gradient(90deg, #6467ad 0%, #6467ad 95%, #5a5c9b 95%, #5a5c9b 100%);
    border-radius: 8px;
    display: block;
    color: #fff;
    padding: 20px 50px 20px 20px;
    position:relative;
    margin: 0 0 20px;
    
       /*  font-family: "fot-tsukuardgothic-std", sans-serif;*/
    font-weight: 700;
    font-style: normal;
	
	border-radius: 99px;
	box-shadow: 0px 9px 0px -2px #ddd;
}
.rvbnr:after{
    position: absolute;
    background: url("../img/top/arrow02.png") no-repeat center 90%;
    background-size: cover;
    right:10px;
    margin: auto;
    top: 0;
    bottom: 0;
    height: 15px;
    width: 15px;
    display: block;
    content: "";
}
.rvbnr dl{
    display: flex;
    justify-content:center;
    align-items: center;
    text-align: center;
    margin: 0 0 0px;
}
.rvbnr dl dt img{
    max-height: 65px;
    margin: 0 10px;
}
.rvbnr dd h2{
    font-size: 34px;
}
.rvbnr dd h3{
    font-size: 16px;
    display: inline-block;
    position: relative;
    padding: 0 20px;
}
.rvbnr dd h3:before {
    content: "";
    display: block;
    transform: rotate(-30deg);
    height: 100%;
    border-left: 2px solid #fff;
    position: absolute;
    left: 0;
    top: 0;

}
.rvbnr dd h3:after {
content: "";
display: block;
transform: rotate(30deg);
height: 100%;
border-left: 2px solid #fff;
position: absolute;
right: 0;
top: 0;

}
.rvbnr h4{
    text-align: center;
    background: #f4efff;
    color: #2d6990;
    padding: 5px;
    margin: 0 0 20px;  
    position: relative;
}
.rvbnr h4:before, .rvbnr h4:after {
  position: absolute;
  content: '';
  width: 0px;
  height: 0px;
  z-index: 1;
}

.rvbnr h4:before {
  top: 0;
  left: 0;
  border-width: 20px 0px 20px 15px;
  border-color: transparent transparent transparent #2d6990;
  border-style: solid;
}

.rvbnr h4:after {
  top: 0;
  right: 0;
  border-width: 20px 15px 20px 0px;
  border-color: transparent #2d6990 transparent transparent;
  border-style: solid;
}
.rvbnr ul{
    display: flex;
}
.rvbnr li{
    flex-basis: 31%;
    margin: 0 1% 10px;
}


.btn03{
  background: linear-gradient(90deg, #98b9e2 0%, #98b9e2 95%, #89a6cb 95%, #89a6cb 100%);
  background: linear-gradient(90deg, #6467ad 0%, #6467ad 95%, #d3565c 95%, #d3565c 100%);
  background: linear-gradient(90deg, #6467ad 0%, #6467ad 95%, #5a5c9b  95%, #5a5c9b  100%);
  
    border-radius: 8px;
    display: block;
    color: #fff;
    padding: 20px 50px 20px 20px;
    position:relative;
    margin: 0 0 20px;
    
     /*    font-family: "fot-tsukuardgothic-std", sans-serif;*/
    font-weight: 700;
    font-style: normal;
	
	border-radius: 99px;
	box-shadow: 0px 9px 0px -2px #ddd;
}
.btn03._02{
  background: linear-gradient(90deg, #6467ad 0%, #6467ad 95%, #d3565c 95%, #d3565c 100%);
   background: linear-gradient(90deg, #98b9e2 0%, #98b9e2 95%, #89a6cb 95%, #89a6cb 100%);
}
.btn03._03{
 background: linear-gradient(90deg, #ef93af 0%, #ef93af 95%, #ab657a 95%, #ab657a 100%);
 
}
.btn03._04{
 background: linear-gradient(90deg, #2d6990 0%, #2d6990 95%, #1e587e 95%, #1e587e 100%);
  background: linear-gradient(90deg, #333 0%, #333 95%, #000 95%, #000 100%);
  background: linear-gradient(90deg, #a7d076 0%, #a7d076 95%, #96bb6a 95%, #96bb6a 100%);
}

.btn03:after{
    position: absolute;
    background: url("../img/top/arrow02.png") no-repeat center 90%;
    background-size: cover;
    right:10px;
    margin: auto;
    top: 0;
    bottom: 0;
    height: 15px;
    width: 15px;
    display: block;
    content: "";
}


.btn03 h4{
    font-size: 16px;
    display: inline-block;
    position: relative;
    padding: 0 20px;
}
.btn03 h4:before {
    content: "";
    display: block;
    transform: rotate(-30deg);
    height: 100%;
    border-left: 2px solid #fff;
    position: absolute;
    left: 0;
    top: 0;

}
.btn03 h4:after {
content: "";
display: block;
transform: rotate(30deg);
height: 100%;
border-left: 2px solid #fff;
position: absolute;
right: 0;
top: 0;

}
.btn03 h3{
    font-size: 34px;
	font-size: 30px;
}
.newtag{
    display: inline-block;
    background: rgba(255,255,255,.5);
    color: #fff;
    padding: 5px 8px;
    margin: 0 8px 0 0;
    position: relative;
    font-weight: 700;
    text-align: center;
    font-size: 60%;
    vertical-align: middle;
    line-height: 1;
}
.newtag:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 100%;
  margin-top: -5px;
  border:5px solid transparent;
  border-left: 5px solid rgba(255,255,255,.5);
}

.btn04{
    display: inline-block;
    padding: 5px 30px 5px 10px;
    background: #ece1f0 url("../img/top/arrow03.png") no-repeat 98% center;
    border-radius: 10px;
    color: #2d6990;
    /*   font-family: "fot-tsukuardgothic-std", sans-serif;*/
    font-weight: 700;
    font-style: normal;
    font-size: 85%;
}

.btn05{
     border-radius: 20px;
    display: block;
    color: #fff;
    padding: 20px 50px 20px 20px;
    position:relative;
    margin: 0 0 20px;
     background: #6467ad url("../img/top/arrow02.png") no-repeat 95% center;
     background-size: 15px;
    /*     font-family: "fot-tsukuardgothic-std", sans-serif;*/
    font-weight: 700;
    font-style: normal;
}







/**Q＆A**/
.faqbox dl{
    margin: 0 0 20px;
    max-width: 1050px;
    margin: 0 auto;
}
.faqbox dt{
    position: relative;
    padding: 20px 20px 20px 70px;
    margin: 0 0 20px;
    cursor: pointer;
    border-bottom: 1px solid #ccc;
    font-weight: 800;
    color: #6469ae;
}
.faqbox dt:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-top: 8px solid #ccc;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  position: absolute;
  bottom: 0;
  top: 0;
  margin: auto;
  right: 0px;
}
.faqbox .active:after{
      transform:rotate(180deg);
} 

.faqbox dd{
    position: relative;
   padding: 10px 0 30px 70px;
}
.faqbox dt h4{
    position:absolute;
    left: 0;
    top: 0;
    
display: inline-block;
  padding: 0 5px;
  width: 50px;
  height: 50px;
  line-height: 50px;
  text-align: center;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  background: #6469ae;
  border-radius: 50%;
  box-sizing: border-box;
	white-space: nowrap
}
.faqbox dt h4:before {
  content: "";
  position: absolute;
  bottom: -6px;
  right: -6px;
  margin-top: -15px;
  border: 8px solid transparent;
  border-left: 15px solid #6469ae;
  z-index: 0;
  transform: rotate(45deg);
}

.faqbox dd h4{
    position:absolute;
    left: 0;
    top: 0;
    
display: inline-block;
  padding: 0 5px;
  width: 50px;
  height: 50px;
  line-height: 50px;
  text-align: center;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  background: #000;
  border-radius: 50%;
  box-sizing: border-box;
}
.faqbox dd h4:before {
  content: "";
  position: absolute;
  bottom: -6px;
  right: -6px;
  margin-top: -15px;
  border: 8px solid transparent;
  border-left: 15px solid #000;
  z-index: 0;
  transform: rotate(45deg);
}











/*フッター
------------------------------------------------*/
.footermenu ul{
    text-align: center;
    display: flex;
    justify-content:center;
    padding: 50px 0 20px;
}
.footermenu a{
    padding: 0 20px;
    color: #6467ad;
    border-left: 1px solid #ccc;
}
.footermenu li:first-child a{
    border:none;
}


.copyright{
    color: #fff;
    background: #231815;
    padding: 10px;
    text-align: center;
    
}




/*コンテンツ
------------------------------------------------*/
.contents p{
    padding: 0 0 20px;
}
.pagetitle h1{
  color: #6467ad ;
  border: solid 2px #6467ad ;
  padding: 0.4em 1em .6em;
  padding: 0.5em 1em;
  margin: 0 0 30px;
  border-radius: 0.5em;
  font-size: 200%;
   /* font-family: "fot-tsukuardgothic-std", sans-serif;*/
  font-weight: 700;
  font-style: normal;
  text-align: center;
}
/***大会要項*/
.table01{
    width: 100%;
    border-collapse: collapse;
    margin: 0 0 40px;
}
.table01 td,
.table01 th{
    padding: 10px;
    border:1px solid #ccc;
    background: #fff;
}
.table01 th{
    background: #DFE4EF;
}

.title03{
    color: #6467ad;
    font-size: 20px;
    margin: 0 0 20px;
}
.title04{
  font-size: 25px;
  margin: 0 0 20px;
  background: #000;
  color: #fff;
  padding: 20px;
}
.title05{
  font-size: 22px;
  border-bottom: 1px solid #ccc;
  margin: 0 0 20px;
  padding: 0 0 10px;
}


.tokuten{
    display: flex;
    justify-content: space-between;
}
.tokuten dl{
    flex-basis: 48%;
}
.tokuten dt{
background: #231815;
color: #c86656;
padding: 0 10px;
margin: 0 0 10px;
display: inline-block;
font-size: 80%;
border-radius: 5px;
}

.btnbox01{
    max-width: 770px;
    margin: 0 auto;
}
.btn02{
    background: #9400d3;
    color: #fff;
    position: relative;
    display: block;
    padding: 10px 30px;
    font-size: 140%;
}
.btn02._02{
    background:#6467ad ;
}
.btn02._03{
    background:#64b4ab ;
}
.btn02._04{
    background:#e07261 ;
}
.btn02::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-left: 10px solid #fff;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 10px;
}

.entrybtn01{
    background: #eb4141 url("../img/joinus/check.png") no-repeat 10px center;
    background-size: 25px;
    display: inline-block;
    padding: 10px 30px 10px 40px;
    color: #fff;
    font-size: 140%;
    
}

/**RV**/
.rvbox{
   background: #f5f5f5;
   padding: 20px;
   border-radius: 10px;
   margin: 0 0 50px;  
}
.rvbox h2{
    font-size: 24px;
    color: #6467ad;
    margin: 0 0 20px;
}
.rvbox h2 span{
font-size: 14px;
color: #c86656;
text-align: center;
white-space: nowrap;
background-color: #231815;
margin-right: 10px;
display: inline-block;
padding:0 10px;
border-radius: 5px;
}
.rvbox h3{
    font-size: 18px;
    color: #6467ad;
    margin: 0 0 10px 10px;
}
.rvbox h4{
    font-size: 18px;
    margin: 0 0 40px 10px;
}

.rvbox dl{
    display: flex;
    justify-content: space-between;
}
.rvbox dt{
    flex-basis: 50%;
}
.rvbox dd{
    flex-basis:48%;
    margin: 0 0 20px;
}
.rvbox dd h4{
    border-bottom: 1px solid #ccc;
    margin: 0 0 10px;
}
dl._profile dt {
  flex-basis: 30%;
}
.rvbox dl._profile dd {
  flex-basis: 68%;
}
dl._profile02 dt {
  flex-basis: 20%;
}
.rvbox dl._profile02 dd {
  flex-basis: 78%;
}

.rvphoto ul{
   display: flex;
   justify-content: center;
}
.rvphoto li{
   flex-basis: 33%;
}
.planbox01 dl{
    display: flex;
    justify-content: space-between;
}
.planbox01 dt{
    flex-basis: 50%;
}
.planbox01 dd{
    flex-basis: 48%;
}
.rvicon{
    max-height:26px;
    margin: 0 5px 0 0;
    vertical-align: middle;
}

.rvtitle01{
	background: #ef93af;
	color: #fff;
	text-align: center;
	font-size: 120%;
	font-weight: 600;
	border-radius: 10px;
	padding: 10px;
	margin: 0 0 10px;
}

.rvtitle02{
	text-align: center;
	font-size: 120%;
	font-weight: 600;
	color: #ef93af;
	margin: 0 0 10px;
}



/*通常プラン***/
/***大会要項*/
.table02{
    width: 100%;
    border-collapse: collapse;
    margin: 0 0 40px;
}
.table02 td,
.table02 th{
    padding: 5px;
    border:2px solid #fff;
    background: #f4fcfa;
    font-size: 80%;  
}
.table02 th{
    background: #7077cd;
    color:#fff;
}


.table02 .th01{
    background: #6469ae;
    color: #fff;
    font-size: 120%;
    padding: 10px;
}

.hotellist {
    padding: 0 0 20px;
}
.hotellist .table02:nth-child(even) .th01{
    background: #7C84E4;
}
.hotellist .table02:nth-child(even) th{
    background: #797EC1;
}


.nomalplanmenu ul{
    display: flex;
    text-align: center;
    flex-wrap: wrap;
    margin: 0 0 40px;
}
.nomalplanmenu li{
    flex-basis: 31%;
    margin: 0 1% 20px;
}

.nomalplanmenu li a{
 background: #7077cd;
 border-bottom: 4px solid #6469ae;
 color: #fff;
 display: block;
 font-weight: 600;
 border-radius: 5px;
 padding: 15px;
 position: relative;
}

.nomalplanmenu li a::after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-top: 8px solid #fff;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    position: absolute;
    bottom: 0;
    top: 0;
    margin: auto;
    right: 15px;
}
.gotoplink{
    text-align: right;
    padding: 0 0 30px;
}
.gotoplink a{
    text-decoration: underline;
}


/*********************************/
/* PC用のスタイル記述ここから */
/*********************************/
/*@media print, screen and (min-width: 769px) {*/
@media print, screen and (min-width: 621px) {	
img {
    image-rendering: -webkit-optimize-contrast
;
}


.gnavi{
	display: block!important;
}


.leftbox{
	display:inline-block;
	float:left;
	padding:0px 10px 0px 0;
}
.rightbox{
	display:inline-block;
	float:right;
	padding:0px 0 0px 10px;
}





}





/*********************************/
/* タブレット用のスタイル記述 */
/*********************************/
/*@media screen and (max-width: 768px) {*/
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {



}
/*********************************/
/* スマートフォン用のスタイル記述 */
/*********************************/
@media screen and (max-width: 620px) {
body{
    font-size: 16px;
}


.slick-slider {
    touch-action: pan-y;
}





.wrap,
.home .wrap{
     padding-top: 0px;
}



.mainbody,
.mainbody2,
.header .mainbody{
	margin:0 20px;
	width:auto;
}

.mainbody .mainbody2{
    margin: 0;
}

/*
#a01,
#a02,
#a03,
#a04,
#a05,
#a06,
#reserve,
#mw_wp_form_mw-wp-form-27{
   display: block;
   margin-top:-70px;
   padding-top:70px;
}
*/
#mw_wp_form_mw-wp-form-24{
   display: block;
   margin-top:-70px;
   padding-top:70px;
}


/*ヘッダー
------------------------------------------------*/
.mainimg{
  
}




.gnavi {

    display: none;
}
.gnavi li{
    flex-basis: 33%;
}
.gnavi li a{
    padding: 2px;
}







.menubtn{
    display: block;
}

.menu-icon{
    display: block;
    color: #fff;
    font-size: 240%;
    line-height: 100%;
    position: fixed;
    top: 0;
    right: 0;
    padding:5px;
    background: #000;
    z-index: 1000;

}
.menu-icon:hover{
    text-decoration: none;
}



/*トップページ
------------------------------------------------*/
.content{
    padding: 30px 0;
}
.mainwrap{
    padding: 10px 0;
    margin: 0 10px;
}


.topmaintitle01 dl{
    display: block;
    margin:  0 0 30px;
}
.topmaintitle01 dt{
    text-align: center;
    padding: 0 0 20px;
}
.topmaintitle01 dt img{
    max-height: 100px;
}


.topmaintitle01 dd{
}
.topmaintitle01 h1{
    font-size: 5vw;
    margin: 0 0 20px;
    text-align: center;
}

.tbox01 {
  margin: 2em 0;
  padding: 1em 10px .5em;
}

.tbox01title{
margin: -2.5em auto 20px;
	padding: .5rem;
}

.tbox01title02{
  margin: -1.3em auto 20px;
}
.tbox01title02 span{
  background: #FFF;
  display: inline-block;
   padding: 0 9px;
}

.whitebox01{  
   margin: 2em 0;
  padding: 1em 10px .5em;
}


.btn01{
    font-size: 115%;
    padding: 10px;
}

.btn01:before{
  border: 5px solid transparent;
  border-right: 0 solid transparent;
  border-left: 10px solid #fff;
}
.tbox02 {
  margin: 2em 0;
  padding: 1em 1em 0.5em;
}
	.tbox02 p[align="center"],
	.tbox01 p.clrbrown {
		text-align: left;
	}
.topentrytitle h2{
  font-size: 16px;
  margin: 0 0 20px;
	padding: .5em
}
.topentrytitle h2:before, .topentrytitle h2:after {
  position: absolute;
  top: 0;
  content: '';
  width: 8px;
  height: 100%;
  display: inline-block;
}



.bbox01{
  padding:20px;
	font-size: 15px;

}
	.bbox01 .alncenter {
		text-align: left;
	}
.arrow01{
    text-align: center;
}
.toptabentry{
    margin: 0 0 30px;
}


.title01{
  font-size: 18px;
  margin: 0 0 20px;
}
.title02{
  font-size: 18px;
  margin: 0 0 30px;
}





.topstepbox{
    padding: 20px;
    margin: 0 0 30px;
}
.steptitle{
 margin: -2.0em auto 10px;
}
.topcontact{
    padding: 10px;
}
.topcontact h2{
  font-size:18px;
	display: block;
	line-height: 1.2;
	padding: 5px;

}
	.topcontact p {
		text-align: left;
	}






.toptokuten{
padding: 10px;
       margin: 0 0 20px;
}
.toptokuten dl{
    display: block;
}
.toptokuten dt{
    margin: 0 0 10px;
}
.toptokuten dt:before {
    display: none;
}

.rvbnr{
     background: linear-gradient(90deg, #98b9e2 0%, #98b9e2 90%, #7177cd  90%, #7177cd  100%);
     background: linear-gradient(90deg, #6467ad 0%, #6467ad 90%, #5a5c9b  90%, #5a5c9b  100%);
    padding: 10px 13% 10px 20px;
}
.rvbnr dl{
    display: block;
    text-align: center;
    margin: 0 0 0px;
}
.rvbnr dt img{
    max-height: 65px;
    margin: 0 0px 10px;
}
.rvbnr dd h3{
    font-size: 14px;
	font-size:3vw;
    display: inline-block;
    position: relative;
    padding: 0 20px;
}
.rvbnr dd h2{
    font-size: 20px;
	font-size:4.5vw;
}

.rvbnr h4{
    padding: 5px;
    margin: 0 0 10px;
    text-align: left;
}

.rvbnr h4:before, .rvbnr h4:after {
  display: none;
}



.rvbnr ul{
    display: flex;
}
.rvbnr li{
    flex-basis: 31%;
    margin: 0 1% 10px;
}


.btn03{
   background: linear-gradient(90deg, #98b9e2 0%, #98b9e2 90%, #89a6cb 90%, #89a6cb 100%);
   background: linear-gradient(90deg, #6467ad 0%, #6467ad 90%, #5a5c9b  90%, #5a5c9b  100%);
     padding: 10px 13% 10px 15px;

}
.btn03._02{
 background: linear-gradient(90deg, #6467ad 0%, #6467ad 90%, #d3565c 90%, #d3565c 100%);
  background: linear-gradient(90deg, #98b9e2 0%, #98b9e2 90%, #89a6cb 90%, #89a6cb 100%);
}
.btn03._03{
  background: linear-gradient(90deg, #ef93af 0%, #ef93af 90%, #ab657a 90%, #ab657a 100%);
}
.btn03._04{
 background: linear-gradient(90deg, #2d6990 0%, #2d6990 90%, #1e587e 90%, #1e587e 100%);
  background: linear-gradient(90deg, #333 0%, #333 90%, #000 90%, #000 100%);
  background: linear-gradient(90deg, #a7d076 0%, #a7d076 90%, #96bb6a 90%, #96bb6a 100%);
}

.btn03:after{
    position: absolute;
    background: url("../img/top/arrow02.png") no-repeat center 90%;
    background-size: cover;
    right:10px;
    margin: auto;
    top: 0;
    bottom: 0;
    height: 15px;
    width: 15px;
    display: block;
    content: "";
}


.btn03 h4{
    font-size: 12px;
font-size: 2.7vw;
}

.btn03 h3{
    font-size: 22px;
	font-size: 18px;
	font-size: 4.5vw;
}










/*フッター
------------------------------------------------*/







/*コンテンツ
-----------------------------------------------*/
.pagetitle h1{
  margin: 0 0 20px;
  font-size: 140%;
}
/***大会要項*/
.table01{
    margin: 0 0 20px;
}
.table01 td,
.table01 th{
    padding: 5px;
    font-size: 80%;
}

.title03{
  font-size: 18px;
}
.title04{
  font-size: 20px;
  padding: 10px;
}
.title05{
  font-size: 20px;
}



.tokuten{
    display: block;
}
.tokuten dl{
    margin: 0 0 20px;
}

.btn02{
    padding: 10px 30px;
    font-size: 110%;
}

.entrybtn01{
    padding: 10px 30px 10px 40px;
    font-size: 120%;
    
}




/**RV**/

.rvbox h2{
    font-size: 20px;
}

.rvbox dl{
    display: block;
}
.rvbox dt{
    padding: 0 0 20px;
}
.rvbox dd{
   
}

.rvphoto ul{
   display: block;
}
.rvphoto li{
  padding: 0 0 10px;
}
.planbox01 dl{
    display: block;
}




/*通常プラン***/
/***大会要項*/
.table02{
    width: 100%;
    border-collapse: collapse;
    margin: 0 0 40px;
}
.table02 td,
.table02 th{
    padding: 5px;
    font-size: 70%;

}
.table02 th{
    background: #c1e4e0;
    color:#38847b;
}


.nomalplanmenu ul{
    display: block;
    margin: 0 0 40px;
}
.nomalplanmenu li{
    margin: 0 1% 10px;
}






/*フッター
------------------------------------------------*/
.footermenu ul{
    padding: 50px 0 20px;
	margin: 0 -30px;
}
.footermenu a{
    padding: 0 2vw;
    font-size: 2.7vw;
}








.onlypc{
	display:none;
}
.onlysp{
	display: block;
}



.spblock{
	display: block;
}

}





/*safariのみ**/
_::-webkit-full-page-media, _:future, :root .contacttel dd{
  
}


/*ieのみ*/
@media all and (-ms-high-contrast: none) {


}

