@charset "utf-8";

/*PCSP共通設定*/
section:nth-of-type(odd){background-color:#fbebea;}
section:nth-of-type(even){background-color:#fff;}
html {scroll-behavior: smooth;}/*smooth scroll*/

article{
	margin: 0;
	padding: 0;
	font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}

.mapimg{
	max-width: 1280px;
	width: 100%;
	margin: 20px auto 0;
}

.mapimg img{
	width: 100%;
}

.marker {
    background: linear-gradient(transparent 50%, #fff571 50%);
}

.btnone{
	pointer-events: none;
	background-color: #585858;
	border: 2px solid #585858;
}


/*759px以下*/
@media screen and (max-width: 759.9px) {
#wrapper {line-height: 1.4;}
.spnone{display:none;}

/* CSS */
#dirPathBlock {
	overflow-x: scroll;
	overflow-y: hidden;
}
#dirPathBlock,
#anchorLinkBlock {margin: 0 1%;}
#dirPathBlock p,
#anchorLinkBlock a{font-size: 12px;}
#dirPathBlock p {width: max-content;}
h1 {
	font-size: 12px;
	margin: 0 1% 1%;
}
h2 {
	position: relative;
    padding-top: 50px;
    padding-bottom: 50px;
    font-size: 24px;
    text-align: center;
    font-weight: bold;
	        margin: 0 0 30px 0;
	color: #043164;
}

h2 span {
	position: relative;
	z-index: 2;
	
}

h2::before {
        content: attr(data-en);
        position: absolute;
        top: 12px;
        left: 50%;
        transform: translateX(-50%);
        color: rgba(1, 121, 183, 0.2);
        font-size: 30px;
        width: 100%;
}

/*h2::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%) rotate(30deg);
	width: 1px;
	height: 40px;
	background-color: rgba(1,121,183,1);
}*/
	
	h2::after{
		content: '';
	position: absolute;
		bottom: 10px;
        left: 48%;
        width: 15px;
        height: 15px;
 transform: rotate(45deg);
		background-color:#043164;
  margin-bottom:10px;
}
	

.inner{
	width: 96%;
	margin: 0 2%;
	padding: 24px 0;
	box-sizing: border-box;
}

/*title*/

/*title*/

#title{
	max-width: 760px;

}


	#title img{
		width: 100%;
	}
	
		
	.oshirase{
		padding: 20px;
		font-size: 24px;
		text-align: center;
		font-weight: bold;
		color: #FF0004;
	}
	.oshirase2{
		margin: 0 0 40px 0;
		font-size: 20px;
		text-align: center;
		font-weight: bold;
		color: #FF0004;
	}
	
	#navi{
	text-align:center;
	padding:0px 0 0px;
    background: #011627;
    
}
	
	#navi ul{
		display: flex;
		justify-content: space-between;
		align-items: stretch;
		flex-wrap: wrap;
		max-width: 760px;
		margin: 0 auto;
	}
	

#navi li{
	    width: 49.8%;
        letter-spacing: normal;
        display: flex;
	justify-content: center;
	align-items: center;
		border-right:1px dashed #fff;
	border-bottom:1px dashed #fff;
	margin: 0 0 0px 0;

}
	
	#navi li:nth-of-type(2),
	#navi li:nth-of-type(4){
		border-right:none;
}
	
	#navi li:nth-of-type(3),
	#navi li:nth-of-type(4){
		border-bottom:none;
}


	/*#navi li:nth-of-type(n+4){
		margin: 0 0 0 0;
	}*/

#navi li.coupon{
	display:inline-block;
	letter-spacing:normal;
    font-size: 14px;
    font-weight: bold;
    padding:10px 20px 30px;
    color: #fff;
    height:20px;
    border-right:1px dashed #fff;
}
#navi li:first-child{
   
}
#navi li:last-child{
}
#navi li a{
	width: 100%;
	display:block;
	color: #fff;
	font-size: 13px;
        font-weight: 400;
        padding: 10px 10px 10px;
        color: #FFF;
        display: flex;
        justify-content: center;
        align-items: center;
}
	
	#navi li a.mousikomi{
		margin: 0 20px 0 20px;
		background-color: #f6ff02 !important;
		color: #FF0004 !important;
	}



#navi li a:hover{
	transition: 0.2s ;
	/*opacity: 0.5 ;*/
	text-decoration:none!important;
	background-color: #fc9202;
}
	
#navi .caption {
    max-width: 950px;
    margin: 0 auto 20px;
    text-align: right;
    color: #fff;
    letter-spacing: -0.1em;
    font-size: 11px;
}

	
	.obi{
		background-image: linear-gradient(90deg, #969696, #d9d9d9 25%, #f7f7f7 50%, #d9d9d9 75%, #969696);
		color: #000000;
		text-align: center;
		font-size: 18px;
		padding: 20px 20px;
		font-weight: bold;
	}


	.intro{
		text-align: center;
		font-size: 24px;
		font-weight: bold;
		padding: 40px 0;
		line-height: 1.8;
	}
	
	
	.sche_txt{
		text-align: center;
		font-size: 16px;
		margin: 0 0 20px 0;
	}
	
	.sche_area{
		margin: 0 0 0px 0;
		
	}
	
	.sche_box{
		margin: 0 0 20px 0;
	}
	
	.sche_box table{
		border-collapse: collapse;
		border: 2px solid #d93932;
		font-size: 16px !important;
		width: 100%;
		margin: 20px 0 0 0;
	}
	
	.sche_box table th,
	.sche_box table td{
		padding: 10px;
		border: 2px solid #d93932;
	}
	
	.sche_box table th{
		font-size: 16px;
		font-weight: bold;
	}
	
	.sche_box table th span{
		font-size: 12px;
	}
	
	.sche_box table td.time{
		width: 23%;
		text-align: center;
	}
	

	
	.eventarea{
		margin: 0 0 20px 0;
	}
	
	.eventarea dl{
		margin: 0 0 40px 0;
		padding: 20px 0;
	}
	
	.eventarea dl dt{
		font-size: 18px;
		font-weight: bold;
		color: #d93932;
		margin: 0 0 20px 0;
	}
	
	.eventarea dl dd{
		font-size: 14px;
		line-height: 1.5;
	}
	
	
	.info{
		margin: 0 0 0px 0;
	}
	
	.infobox{
		border: 2px solid #043164;
		padding: 20px;
		font-size: 16px;
		line-height: 1.8;
		font-weight:bold; 
		margin: 0 0 30px 0;
	}
	
	.infobox strong{
		display: block;
		font-size: 18px;
		color: #d93932;
	}
	
	.info dl{
		border: 2px solid #043164;
		margin: 0 0 20px 0;
		
	}
	
	.info dl dt{
		
		color: #ffffff;
		padding: 20px 20px;
		font-size: 16px;
		background-color:#043164; 
		text-align: center;
		font-weight: bold;
	}
	
	.info dl dd{

		padding: 20px;
		font-size: 14px;
	}
	
	.camp_btnL{
		width: 90% !important;
		margin: 0 auto 20px !important;
		max-width: 970px !important;
	}
	
.camp_btn{
	
	display: block;
margin:0 auto;
  position: relative;
  background: #b01d23; /* 背景色 */
  border: 2px solid #b01d23;
  padding: 1em 2em;
  font-weight: bold;
  color: #fff !important; /* 文字色 */
  text-decoration: none;
  text-align: center;
  transition-duration: 0.3s;
	border-radius: 20px;
	font-size: 14px;
	
}
	
.camp_btn::after {
	 content: '';
  width: 8px;
  height: 8px;
  border: 0;
  border-top: 2px solid #fff; /* 矢印の色 */
  border-right: 2px solid #fff; /* 矢印の色 */
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 25px;
  margin-top: -6px;
}
.camp_btn:hover {
    opacity: 0.8;
}
.camp_btn i {
    float: right!important;
    position: absolute;
    right: 15px;
    top:35%;
}
.camp_btn a,
.camp_btn a:hover {
    text-decoration: none!important;
    display: block;
    color: #fff;
}

	
	.btnarea{
		
	}
	
	.btnarea p{
		margin: 0 0 20px 0;
	}
	
	
}

/*760px以上*/
@media screen and (min-width: 760px),print {
#wrapper {line-height: 1.231;}
.pcnone{display:none;}

/* CSS */
#dirPathBlock,
.iframe_end-content_gadget,
#anchorLinkBlock{
	width: 100%;
	max-width:1080px;
	min-width:760px;
	margin: auto;
}
#dirPathBlock,
#anchorLinkBlock {
	width: 100%;
	margin: 0 auto;
	display: block;
	font-size: 12px;
}
#dirPathBlock p,
#anchorLinkBlock a{font-size: 12px;}
h1 {
	font-size: 12px;
    width: 100%;
	max-width:1080px;
	min-width:760px;
    margin: 0 auto 5px;
}
h2 {
	position: relative;
    padding-top: 50px;
    padding-bottom: 50px;
    font-size: 36px;
    text-align: center;
    font-weight: bold;
	        margin: 0 0 30px 0;
	color: #043164;
}

h2 span {
	position: relative;
	z-index: 2;
	
}

h2::before {
        content: attr(data-en);
        position: absolute;
        top: -22px;
        left: 50%;
        transform: translateX(-50%);
        color: rgba(1,121,183,0.2);
        font-size: 60px;
}

/*h2::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%) rotate(30deg);
	width: 1px;
	height: 40px;
	background-color: rgba(1,121,183,1);
}*/
	
	h2::after{
		content: '';
	position: absolute;
		bottom: 0;
	left: 49%;
		 width:20px;
  height:20px;
 transform: rotate(45deg);
		background-color:#043164;
  margin-bottom:10px;
}

	

.inner{
	width: 100%;
	max-width:1080px;
	min-width:760px;
	margin: 0 auto;
	padding:50px 0;
	display: block;
}

/*title*/

#title{
	width:100%;
	background:#011627 url(../images/bg.jpg) no-repeat center top;
	text-align:center;
	height:550px;

}


	#title img{
		/*width: 940px;
        padding-top: 52px;*/
        text-align: center;
	}
	
		
	.oshirase{
		padding: 20px;
		font-size: 24px;
		text-align: center;
		font-weight: bold;
		color: #FF0004;
	}
	.oshirase2{
		margin: 0 0 40px 0;
		font-size: 20px;
		text-align: center;
		font-weight: bold;
		color: #FF0004;
	}
	
	#navi{
	text-align:center;
	padding:10px 0 10px;
    background: #011627;
    
}
	
	#navi ul{
		display: flex;
		justify-content: center;
		align-items: stretch;
		flex-wrap: wrap;
		max-width: 1080px;
		margin: 0 auto;
	}
	

#navi li{
	    width: 24%;
        letter-spacing: normal;
        display: flex;
	justify-content: center;
	align-items: center;
	 border-left:1px dashed #fff;
	margin: 0 0 0px 0;

}
	
	#navi li:nth-of-type(4),
	#navi li:nth-of-type(6){
		border-right:1px dashed #fff;
		border-left:1px dashed #fff;
}

	/*#navi li:nth-of-type(n+4){
		margin: 0 0 0 0;
	}*/

#navi li.coupon{
	display:inline-block;
	letter-spacing:normal;
    font-size: 20px;
    font-weight: bold;
    padding:10px 20px 30px;
    color: #fff;
    height:20px;
    border-right:1px dashed #fff;
}
#navi li:first-child{
   
}
#navi li:last-child{
}
#navi li a{
	width: 100%;
	display:block;
	color: #fff;
	font-size: 18px;
        font-weight: 400;
        padding: 10px 10px 10px;
        color: #FFF;
        display: flex;
        justify-content: center;
        align-items: center;
}
	
	#navi li a.mousikomi{
		margin: 0 20px 0 20px;
		background-color: #f6ff02 !important;
		color: #FF0004 !important;
	}



#navi li a:hover{
	transition: 0.2s ;
	/*opacity: 0.5 ;*/
	text-decoration:none!important;
	background-color: #fc9202;
}
	
#navi .caption {
    max-width: 950px;
    margin: 0 auto 20px;
    text-align: right;
    color: #fff;
    letter-spacing: -0.1em;
    font-size: 11px;
}
	
	.obi{
		background-image: linear-gradient(90deg, #969696, #d9d9d9 25%, #f7f7f7 50%, #d9d9d9 75%, #969696);
		color: #000000;
		text-align: center;
		font-size: 24px;
		padding: 20px 20px;
		font-weight: bold;
	}


	.intro{
		text-align: center;
		font-size: 36px;
		font-weight: bold;
		padding: 80px 0;
		line-height: 2;
	}
	
	.sche_txt{
		text-align: center;
		font-size: 24px;
		margin: 0 0 20px 0;
	}
	
	.sche_area{
		/*display: flex;
		justify-content: space-between;*/
		margin: 0 0 20px 0;
		
	}
	
	.sche_box{
		/*width: 49.5%;*/
		margin: 0 0 20px 0;
	}
	
	.sche_box table{
		border-collapse: collapse;
		border: 2px solid #d93932;
		font-size: 20px !important;
		width: 100%;
		margin: 20px 0 0 0;
	}
	
	.sche_box table th,
	.sche_box table td{
		padding: 10px;
		border: 2px solid #d93932;
	}
	
	.sche_box table th{
		font-size: 20px;
		font-weight: bold;
	}
	
	.sche_box table th span{
		font-size: 14px;
	}
	
	.sche_box table td.time{
		width: 23%;
		text-align: center;
	}
	
	
	.eventarea{
		margin: 0 0 20px 0;
	}
	
	.eventarea dl{
		margin: 0 0 40px 0;
		padding: 20px 0;
	}
	
	.eventarea dl dt{
		font-size: 30px;
		font-weight: bold;
		color: #d93932;
		margin: 0 0 20px 0;
	}
	
	.eventarea dl dd{
		font-size: 20px;
		line-height: 1.8;
	}
	
	
	.info{
		margin: 0 0 0px 0;
	}
	
	.infobox{
		border: 2px solid #043164;
		padding: 20px;
		font-size: 18px;
		line-height: 1.8;
		font-weight:bold; 
		margin: 0 0 30px 0;
	}
	
	.infobox strong{
		display: block;
		font-size: 24px;
		color: #d93932;
	}
	
	.info dl{
		border: 2px solid #043164;
		margin: 0 0 20px 0;
		display: flex;
		justify-content: flex-start;
		align-items: stretch;
	}
	
	.info dl dt{
		display: flex;
		justify-content: center;
		align-items: center;
		color: #ffffff;
		padding: 20px 20px;
		font-size: 18px;
		background-color:#043164; 
		width: 20%;
		text-align: center;
		font-weight: bold;
	}
	
	.info dl dd{
		width: 80%;
		padding: 20px;
		font-size: 18px;
	}
	
		.camp_btnL{
		width: 80% !important;
		margin: 0 auto !important;
		max-width: 970px !important;
	}
.camp_btn{
	display: flex;
        width: 100%;
        margin: 0 auto;
        position: relative;
        background-color: #b01d23;
        border: 2px solid #b01d23;
        padding: 1em 1em;
        font-weight: bold;
        color: #fff !important;
        text-decoration: none;
        text-align: center;
        transition-duration: 0.3s;
        border-radius: 20px;
        font-size: 18px;
        justify-content: center;
        align-items: center;
}
	
.camp_btn::after {
	 content: '';
  width: 8px;
  height: 8px;
  border: 0;
  border-top: 2px solid #fff; /* 矢印の色 */
  border-right: 2px solid #fff; /* 矢印の色 */
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 25px;
  margin-top: -6px;
}	

.camp_btn:hover {
    opacity: 0.8;
}
.camp_btn i {
    float: right!important;
    position: absolute;
    right: 15px;
    top:35%;
}
.camp_btn a,
.camp_btn a:hover {
    text-decoration: none!important;
    display: block;
    color: #fff;
}
	
	.btnarea{
		display: flex;
		justify-content: space-between;
	}
	
	.btnarea p{
		width: 28%;
	}
	
}


.sche_box1 table th{
	background-color: #ffde5e;
}


.sche_box2 table th{
	background-color: #d93932;
	color: #ffffff;
}


	.eventarea dl:nth-of-type(even){
		border-bottom: 4px solid #ffde5e;
		border-top: 4px solid #ffde5e;
	}
	
	.eventarea dl:nth-of-type(odd){
		border-bottom: 4px solid #d93932;
		border-top: 4px solid #d93932;
	}
	
.eventarea dl:last-of-type{
	margin: 0 0 0 0;
}
