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


/*
setup
.........................................................................*/

.plan-col{
	position: relative;
	text-align: center;
}

.plan-col h2,
.plan-col h3,
.plan-col h4,
.plan-col h5,
.plan-col ul,
.plan-col ol,
.plan-col li,
.plan-col dl,
.plan-col dt,
.plan-col dd{
	margin: 0;
	padding: 0;
}

.plan-col h2{
	margin: 20px 0 50px 0;
	padding:30px 10px;
	color: #004C85;
	font-size: 26px;
	background-image: url(../img/planlist/h2.png),url(../img/planlist/h2.png);
	background-position:50% 0,50% 100%;
	background-repeat: no-repeat;
	line-height: 1.3em;
}

.plan-col h4{
	margin: 20px 0 30px 0;
	padding: 10px;
	color: #0368B1;
	border-top:2px solid #0368B1;
	border-bottom:2px solid #0368B1;
	font-size: 20px;
}

 .plan-col #family h4,#plan_sub13 .plan-col h4{
	margin-bottom: 0px;
}

.plan-col h5{
	margin: 20px 0 10px 0;
	padding: 10px;
	color: #0368B1;
	font-size: 20px;
}



.plan-col table {
    border-collapse: collapse;
    border-spacing: 0;
}





.plan-col table{
	width: 100%;
	margin: 40px auto;
	
}

.plan-col table tr{
	border-bottom: 2px solid #fff;
}

.plan-col table th{
	/*min-width: 100px;*/
	padding: 12px;          
	vertical-align: middle;
	text-align: center;
	background: #C0D9EB;
}

.plan-col table td{
	padding:12px;
	text-align: justify;
	background: #E5F0F7;
	letter-spacing: 0;
}





.plan-col .ido a{
	display: block;
	margin-top: 20px;
	padding: 16px 16px 16px 40px;
	text-align: center;
	background-color: #FCDE21;
	background-image: url(../img/planlist/arrow.png);
	background-position: 16px 50%;
	background-repeat: no-repeat,repeat;
	font-size: 14px;
	font-weight: bold;
	animation: arrow 3s ease 1s infinite forwards;		
}

.plan-col .ido a:hover{
	background-color: #ccc;
}

@keyframes arrow {
  0% {
		background-image: url(../img/planlist/arrow.png);
		background-repeat: no-repeat ,repeat;
		background-position: 16px 50%;
  }
  50% {
		background-image: url(../img/planlist/arrow.png);
		background-repeat: no-repeat ,repeat;
		background-position: 20px 50%;
  }
  100% {
		background-image: url(../img/planlist/arrow.png);
		background-repeat: no-repeat ,repeat;
		background-position: 16px 50%;
  }
}
/*
eraberu
.........................................................................*/


.plan-col .eraberu{
	overflow: hidden;
	margin: 30px  0 60px 0;
}

.eraberu h5,p{
	text-align: left;
}



/*
yokoset
.........................................................................*/


.plan-col .yoko{
	overflow: hidden;
	margin: 30px 0 0px 0;
}


		.plan-col .yoko ul li{
			display: inline-block;
			vertical-align: top;
			margin-bottom: 60px;
		}

		.plan-col .yoko.n2 ul li{width: 95%;}
		.plan-col .yoko.n2 ul li+li{/*margin-left: 7%;*/}

		.plan-col .yoko.n3 ul li{width: 95%;}
		.plan-col .yoko.n3 ul li+li{/*margin-left: 3%;*/}
		.plan-col .yoko.n3 ul li:nth-child(4){margin-left: 0%;}

.plan-col .yoko.n3 ul li.tpoint img{border: 1px solid #ccc;}

				.plan-col .yoko ul li img{
					width: 100%;
					height: auto;
				}

				.plan-col .yoko ul li dl{
				}

						.plan-col .yoko ul li dl dt{
							margin: 10px 0;
							font-size: 20px;
							font-weight: bold;
							text-align: left;
						}

						.plan-col .yoko ul li dl dd{
							text-align: justify;
							font-size: 14px;
						}

						.plan-col .yoko ul li dl dd.kakaku{
							margin-bottom: 10px;
							padding-bottom: 10px;
							text-align: center;
							font-weight: bold;
							border-bottom: 1px dotted #aaa;
						}

						.plan-col .yoko ul li dl dd.kakaku span{
							font-weight: normal;
						}


.plan-col #otoku.yoko ul li{
	position: relative;
	height: 480px;
}


.plan-col #otoku.yoko ul li dl dd.ido{
	position: absolute;
	bottom: 0;
}



/*
.plan-nav
.........................................................................*/
#index{
	text-align: center;
}

#index .plan-nav{
	margin: 20px 0 0 0;
	padding: 0;
}

		#index .plan-nav .cat{
			margin-top: 20px;
			padding: 30px 20px;
			border: 2px solid #FCDE21;
			background: #fff;
		}

		#index .plan-nav .cat:not(.gakusei){
			/*width: 500px;*/
}

		#index .plan-nav .cat:nth-child(even){
		}

		#index .plan-nav .cat.gakusei{
			border: 2px solid #FCDE21;
		}


				#index .plan-nav .cat h3 {
					margin: 0;
					padding: 0;
					font-size: 28px;
					color: #222;
				}

				#index .plan-nav .cat p{
					font-weight: bold;

				}


				#index .plan-nav .cat ul {
					margin: 10px 0 0 0;
					padding: 0;
				}

						#index .plan-nav .cat ul li{
							position: relative;
							margin: 0;
							padding: 0;
						}

						#index .plan-nav .cat ul li+li{
							margin-top: 10px;
						}


						#index .plan-nav .cat ul li a{
							display: block;
							padding: 12px 20px 12px 60px;
							color: #fff;
							text-align: left;
							background-color: #0368B1;
							background-image: url(../img/planlist/arrow-w.png);
							background-position: 16px 50%;
							background-repeat: no-repeat,repeat;
							font-size: 18px;
							font-weight: bold;
							animation: arrow2 3s ease 1s infinite forwards;		
						}

						#index .plan-nav .cat ul li a:hover{
							background-color: #aaa;
						}

						@keyframes arrow2 {
						  0% {
								background-image: url(../img/planlist/arrow-w.png);
								background-repeat: no-repeat ,repeat;
								background-position: 98% 50%;
						  }
						  50% {
								background-image: url(../img/planlist/arrow-w.png);
								background-repeat: no-repeat ,repeat;
								background-position: 97% 50%;
						  }
						  100% {
								background-image: url(../img/planlist/arrow-w.png);
								background-repeat: no-repeat ,repeat;
								background-position: 98% 50%;
						  }
						}

						#index .plan-nav .cat ul li a .no{
							position: absolute;
							top: 0;
							left: 0;
							width: 50px;
							padding: 7px 0;
							text-align: center;
							background: #F8A010;
							font-size: 24px;
							font-weight: bold;
							border-bottom: 1px solid #F8A010;
						}





/*
#p_basic
.........................................................................*/

.plan-col .p_pack{
	overflow: hidden;
	padding-top: 40px;
	
}
.plan-col #kodawari_fisshing.p_pack{
	padding-top: 20px;	
}

.plan-col .p_pack+.p_pack{
	margin-top: 100px;
}

.plan-col #olympic2 .naiyo dl{
	padding:10px 5px;
	border:1px solid #D3DFFF;
	margin-bottom:30px;
	position:relative;
}
.plan-col #olympic2 .naiyo dl:first-of-type{
	padding:0px 5px;
	border:none;
	margin-bottom:50px;
	margin-top:-10px;
}
.plan-col #olympic2 .naiyo dl:first-of-type dt{
	margin-bottom:30px;
}
.plan-col #olympic2 .naiyo dl:last-of-type{
	padding:0px 5px;
	border:none;
	margin-bottom:0px;
}

.plan-col #olympic2 .naiyo dl:before{
	content:"";
	display:block;
	position:absolute;
	top:-25px;
	left:0px;
	width:4em;
	padding:0px 3px 1px;
	border:1px solid #000;
	font-size:18px;
	font-weight:600;
	font-family: 'logotype_g';
	text-align: center;
	border-radius: 7px;
	background:#fff;
}
.plan-col #olympic2 .naiyo dl:nth-of-type(2):before{
	content:"特典1";
}
.plan-col #olympic2 .naiyo dl:nth-of-type(3):before{
	content:"特典2";
}
.plan-col #olympic2 .naiyo dl:nth-of-type(4):before{
	content:"特典3";
}
.plan-col #olympic2 .naiyo dl:nth-of-type(5):before{
	content:"特典4";
}
.plan-col #olympic2 .naiyo dl:first-of-type:before{
	content:"";
	display:none;
}
.plan-col #olympic2 .naiyo dl:last-of-type:before{
	content:"";
	display:none;
}
.plan-col #olympic2 .naiyo dl img{
	margin:0 auto;
	width:90%;
	height:auto;
	max-width:600px;
	display: block;
}



		.plan-col .p_pack h3{
			position: relative;
			margin-bottom: 30px;
			padding: 12px 20px 12px 75px;
			color: #fff;
			text-align: left;
			background: #0368B1;
			font-size: 32px;
			font-weight: bold;
			white-space: nowrap
		}

.plan-col .p_pack .plan_bbq h3{
			position: relative;
			margin-bottom: 30px;
			padding: 0px;
			color: #fff;
			text-align: left;
			background: none;
			font-size: inherit;
			font-weight: bold;
			white-space: nowrap
		}

				.plan-col .p_pack h3 .no{
					position: absolute;
					top: 0;
					left: 0;
					padding: 12px 15px;
					background: #F8A010;
					font-size: 32px;
					font-weight: bold;
				}


		.plan-col .naiyo dl dt{
			margin: 0;
			color: #004C85;
			font-size: 20px;
			font-weight: bold;
			text-align: left;
		}
.plan-col .naiyo dl dt:last-of-type{
    margin-bottom:20px;
}
		#olympic_cnp .plan-col .naiyo dl dt{
			margin: 0px 0 10px 0;
		}
		#olympic_cnp .plan-col .naiyo dl dt.annotation {
			margin:0px;font-size:calc(20px*0.9);padding-left:1em;text-indent:-1em;
		}
		#olympic_cnp .plan-col .naiyo dl dt.annotation:last-of-type {
			margin-bottom:20px;
		}
				.plan-col .naiyo dl dt strong{
					font-size: clamp(22px,2.4vw,24px);
					background: linear-gradient(transparent 60%, #FCDE21 60%);
					line-height:1.8;
				}
				.plan-col #olympic .naiyo dl dt strong,.plan-col #olympic2 .naiyo dl dt strong{
					font-size: 21px;
					line-height:1.5em;
				}
				.plan-col .naiyo dl dt.emphasis{
					color:red;
					font-size:26px;
					text-align:center;
					font-weight:600;
					margin-top:-10px;
					margin-bottom:30px;
				}

				.plan-col #olympic .naiyo dl dt.emphasis strong,.plan-col #olympic2 .naiyo dl dt.emphasis strong{
					font-size:26px;
					font-weight:600;
				}

				.plan-col #basic_seabeaf.p_pack .naiyo dl dt:before,
				.plan-col #basic_seabeaf_sub.p_pack .naiyo dl dt:before{
					display: block;
					content:"当館人気No.1";
					margin: 20px 0;
					padding-left: 40px;
					color: #C1272D;
					background: url(../img/planlist/lank.png) no-repeat 0 50%;
					font-size: 20px;
				}

				.plan-col #basic_allsea.p_pack .naiyo dl dt:before,
				.plan-col #basic_allsea_sub.p_pack .naiyo dl dt:before{
					display: block;
					content:"当館人気No.2";
					margin: 20px 0;
					padding-left: 40px;
					color: #C1272D;
					background: url(../img/planlist/lank.png) no-repeat 0 50%;
					font-size: 20px;
				}



		.plan-col .naiyo dl dd{
			line-height: 1.6;
			text-align: left;
		}


		.plan-col .naiyo .kakaku{
			width: 100%;
			max-width: 600px;
			margin: 20px auto 6px;
			font-weight: bold;
			line-height: 3em;
		}
		.plan-col #family .naiyo .kakaku,#plan_sub13 .plan-col .naiyo .kakaku{
			margin-bottom:50px;
		}

				.plan-col .naiyo .kakaku span{
					padding: 10px;
					border: 1px solid #222;
				}

				.plan-col .naiyo .kakaku strong{
					font-size: 26px;
				}


		.plan-col .naiyo .kakaku02{
			width: 100%;
			max-width: 600px;
			margin: 20px auto 5px;
			font-weight: bold;
			line-height: 40px;
		}

				.kakaku02 span{
					padding: 10px;
					border: 1px solid #222;
				}

				.kakaku02 strong{
					font-size: 22px;
				}

.plan-col .naiyo .kakaku02 .special_price{
    box-sizing: border-box;
    width:100%;
    border:2px solid #0368B1;
    display:grid;
    grid-template-columns: 1fr;
    place-items:center;
    padding:10px;
    gap:5px 0;
}
.plan-col .naiyo .kakaku02 div.special_price p{
    background:#7A7A7A;
    color:#fff;
    padding: 2px 10px;
    line-height: 1.4;
    font-weight: 400;
    border-radius: 5px;
    margin:0;
}
.plan-col .naiyo .kakaku02 div h5{
    color:#333;
    text-align: center;
    font-size: 22px;
    line-height: 1.4;
    padding:0;
    margin:0;
}
.plan-col .naiyo .kakaku02 h5 span{
    font-size: calc(100% * 1.2);
    color:red;
    border:none;
    padding:0;
}




/*
.p-single
.........................................................................*/


.plan-col .p_pack .p-single{
	overflow: hidden;
	padding-bottom: 20px;
}

		.plan-col .p_pack .p-single .pic{
			text-align: center;
		}

		.plan-col .p_pack .p-single .naiyo{
			text-align: center;
		}


/*
.p-set
.........................................................................*/
.plan-col .p_pack .p-set{
	overflow: hidden;
	padding-bottom: 20px;
}

		.plan-col .p_pack .p-set .pic{
			width: 100%;
			max-width:600px;
			margin:0 auto;
		}

		.plan-col .p_pack .p-set .naiyo{
			width: 100%;
			margin: 0 auto;
			text-align: justify;
		}



/*
.p-set.re
.........................................................................*/

.plan-col .p_pack .p-set.re{
	
}
		.plan-col .p_pack .p-set.re ul li{
			overflow: hidden;
			margin-bottom: 80px;
			padding-bottom: 10px;
		}



				.plan-col .p_pack .p-set.re ul li:nth-child(even) .pic{
					
				}

				.plan-col .p_pack .p-set.re ul li:nth-child(even) .naiyo{
					float: left;
					margin: 0 30px 0 0 ;
				}

				.plan-col .p_pack .p-set.re ul li:nth-child(even) .naiyo dl{
					text-align: right;
				}
				.plan-col .p_pack .p-set.re ul li:nth-child(even) .naiyo .kakaku{
					
				}



		.plan-col .p_pack .p-set.re ul li .naiyo dl dt:before{
			display: block;
			color: #C1272D;
			font-size: 16px;
			font-weight: bold;
			z-index: 100;
		}

				.plan-col #p_gakusei .p_pack .p-set.re ul li .naiyo:before{
					content: "【学生向け】Happy価格の“選べるプラン”";
					padding:6px 10px 4px 10px;
					color: #fff;
					background: #0368B1;
					font-weight: bold;
				}

				/*.plan-col #p_gakusei .p_pack .p-set.re ul li:nth-child(even) .naiyo:before{
					float: right;
					margin-bottom: 20px;
					text-align: right;
				}*/

				.plan-col #p_gakusei .p_pack .p-set.re ul li:nth-child(even) .naiyo dl{
					clear: both;
				}


				.plan-col .p_pack .p-set.re ul li#gakusei_bbq .naiyo dl dt:before,
				.plan-col .p_pack .p-set.re ul li#gakusei_bbq_sub .naiyo dl dt:before{
					content:url(../img/planlist/lank.png)"　学生人気No.１";
				}

				.plan-col .p_pack .p-set.re ul li#gakusei_beaf .naiyo dl dt:before,
				.plan-col .p_pack .p-set.re ul li#gakusei_beaf_sub .naiyo dl dt:before{
					content:url(../img/planlist/lank.png)"　学生人気No.２";
				}





/*
telde
.........................................................................*/

.plan-col .p_pack .telde{
	margin: 20px 0;
	padding: 20px 0;
	background: #eee;
	font-weight: bold;
	
}

.plan-col .p_pack .telde p{
	text-align: center;
}

.plan-col .p_pack .telde strong{
	display: block;
	padding: 20px 0;
	color: #0368B1;
	font-size: 42px;
	line-height: 38px;
}


.plan-col .p_pack .telde nav.ido{
	
}

		.plan-col .p_pack .telde nav.ido ul li{
			display: inline-block;
			vertical-align: bottom;
		}

		.plan-col .p_pack .telde nav.ido ul li+li{
				margin-left: 30px;
		}

		.plan-col .p_pack .telde nav.ido ul li.tpoint{
			padding: 6px 10px 2px 10px;
			background: #fff;
		}

		.plan-col .p_pack .telde nav.ido ul li.nomal a{
			background-color: #fff;
			border: 1px dotted #aaa;
		}


/*
voice
.........................................................................*/

.plan-col .p_pack .voice{
	margin-bottom: 50px;
	
}

		.plan-col .p_pack .voice ul li{
			display: inline-block;
			/*width: 30%;*/
			height: 450px;
			vertical-align: top;
			background: #FFFBE2;
		}

		.plan-col .p_pack .voice ul li+li{
			margin-left: 3%;
		}

				.plan-col .p_pack .voice ul li dl{
					padding: 30px;
				}

						.plan-col .p_pack .voice ul li dl dt{
							padding: 10px;
							background: url(../img/planlist/voice_bg.png) 50% 50% no-repeat;
							
						}
								.plan-col .p_pack .voice ul li dl dt img{
									border: 5px solid#fff;
								}


						.plan-col .p_pack .voice ul li dl dd{
							text-align: justify;
							font-size: 12px;
							padding: 0 10px;
						}



/*
gakusei_list
.........................................................................*/

.plan-col .p_pack .gakusei_list{
	margin-bottom: 100px;
}

		.plan-col .p_pack .gakusei_list ul li{
			position: relative;
			display: inline-block;
			/*width: 30%;*/
			margin-bottom: 20px !important;
			vertical-align: top;
			border: 4px solid #FCDE21;
		}






		.plan-col .p_pack .gakusei_list ul li+li{
			margin-left: 2%;
		}
		.plan-col .p_pack .gakusei_list ul li:nth-child(4){
			margin-left: 0;
		}

		.plan-col .p_pack .gakusei_list li:before{
			position: absolute;
			top: -15px;
			left: -4px;
			padding: 5px 10px 5px 50px;
			color: #fff;
			background:#C1272D url(../img/planlist/lank.png) no-repeat 10px 50%;
			font-size: 16px;
			font-weight: bold;
			z-index: 100;
		}


.plan-col .p_pack .gakusei_list li:nth-child(1),
.plan-col .p_pack .gakusei_list li:nth-child(2){
	border-color:#C1272D;
}


		.plan-col .p_pack .gakusei_list li:nth-child(1):before{
			content:"学生人気No.１";
		}

		.plan-col .p_pack .gakusei_list li:nth-child(2):before{
			content:"学生人気No.２";
		}


				.plan-col .p_pack .gakusei_list ul li img{
					width: 100%;
					height: auto;
				}

				.plan-col .p_pack .gakusei_list li dl{
					padding: 10px 0;
					background-image: url(../img/planlist/arrow.png);
					background-position: 16px 50%;
					background-repeat: no-repeat;
					animation: arrow 3s ease 1s infinite forwards;		

				}

						.plan-col .p_pack .gakusei_list  ul li dl dt{
							font-size: 20px;
							font-weight: bold;
						}

						.plan-col .p_pack .gakusei_list ul li dl dd{
							font-size: 14px;
						}


/*
#yoyakutokuten
.........................................................................*/
#yoyakutokuten,#yoyakutokuten_sub .wrap{
	background: #FFFCE8;
}

#yoyakutokuten .n3,#yoyakutokuten_sub .n3{
	margin-top: 0px;
}




/*
#ekaki
.........................................................................*/
#ekaki{
	min-height: 400px;
	margin: 60px 0;
/*	background:url(../img/plan/pickup.png) no-repeat 50%;
	background-position: right 15% top 20%;*/
}

#ekaki h2{
	margin: 0 0 20px 0;
	color: #C1272D;
	font-size: 24px;
	font-weight: bold;
}

#ekaki h2 strong{
			font-size: 26px;
			background: linear-gradient(transparent 60%, #FCDE21 60%);
		}

#ekaki .nakagawa{
	margin: 30px 0 0 0;
	padding: 30px;
	text-align: justify;
	background: #FFFBE2;
}

#ekaki .nakagawa h3{
	margin-bottom: 10px;
	font-size: 18px;
	font-weight: bold;
}
#ekaki

/*.........................................................................*/

#ekaki02{
	min-height: 400px;
	margin: 60px 0;
/*	background:url(../img/plan/pickup.png) no-repeat 50%;
	background-position: right 15% top 20%;*/
}

#ekaki02 h2{
	margin: 0 0 20px 0;
	color: #C1272D;
	font-size: 24px;
	font-weight: bold;
}

#ekaki02 h2 strong{
			font-size: 26px;
			background: linear-gradient(transparent 60%, #FCDE21 60%);
		}

#ekaki02 .nakagawa{
	margin: 30px 0 0 0;
	padding: 30px;
	text-align: justify;
	background: #FFFBE2;
}

#ekaki02 .nakagawa h3{
	margin-bottom: 10px;
	font-size: 18px;
	font-weight: bold;
}

/*------------------ #shiki ------------------*/

#shiki ul.tab {
	background: block;
	height: auto;
	overflow: hidden;
	margin: 20px auto 10px;
	padding: 10px 0 10px;
}
#shiki ul.tab li {
	/*display: inline-block;*/
	/*float: left;*/
	background: #0368b1;
	/*width: 44%;*/
	/*margin-left: 2%;*/
	margin-bottom: 1%;
	padding: 5% 2%;
	color: #fff;
	text-decoration: none;
}

#shiki ul.tab a:nth-of-type(2n+1) li {
	margin-left: 0;
}

#shiki dl {
	display: block;
	max-width: 600px;
	margin: 20px auto 10px;
	padding: 10px 0 10px;
}
#plan dl.point {
	display: block;
	margin: 20px auto 10px;
	padding: 10px 0 20px;
}

#shiki dl dt.title {
	margin-bottom: 10px;
	text-align: center;
}
#shiki dl dt.img {
	text-align: center;
}

#shiki dl dd.img {
	text-align: center;
}
#shiki dl dd.text {
	max-width: 520px;
	padding: 0 2%;
}

#shiki ol {
	background: block;
	height: auto;
	overflow: hidden;
	padding-left: 25px;
}

#shiki table.price th ,
#shiki table.price td  {
	width: 50%;
}


/*
追加
.........................................................................*/
.txt01{
	text-align: left;
}

.naiyo02 h4{
	color: #C1272D;
}

.adjust02{
	font-size: 18px;
	font-weight: bold;
	line-height: 42px;
}
.adjust02 span{
	color: #C1272D;
	font-size: 23px;
}
.adjust03{
	font-size: 18px;
	font-weight: bold;
}
.adjust04{
	margin: 0 0 30px;
	font-size: 18px;
	font-weight: bold;
	color: #004C85;
}
.adjust05{
	text-align: center;
}
.adjust05 img{
	width: 48%;
	margin: 0 0.5%;
}
.adjust06{
	margin: 20px 0 0;
	font-size: 19px;
	font-weight: bold;
	text-align: center;
}
.adjust07{
	color: #C1272D;
}
.adjust07 span{
	border-color: #C1272D;
}

.m-wrap{
	display: inline-block;
	width: auto;
	margin: 20px auto 0;
	background: #eee;
	padding: 30px;
	border: solid 3px #ff091a;
}
.m-wrap p strong{
	font-size: 26px;
	font-weight: bold;
	color: #203aff;
    background: linear-gradient(transparent 60%, #f2ff1a 60%);
	
	text-shadow: white 0.5px 0.5px 0px, white -0.5px 0.5px 0px,
	white 0.5px -0.5px 0px, white -0.5px -0.5px 0px;
}
.m-wrap2{
	display: inline-block;
	width: auto;
	margin-left: auto;
	margin-right: auto;
	background: #eee;
	padding: 30px;
	padding: 0.5em 1em;
    margin: 2em 0;
    font-weight: bold;
    border: solid 3px #ff091a;
}
.m-wrap2 p strong{
	font-size: 30px;
	font-weight: bold;
	color: #203aff;
	background: linear-gradient(transparent 60%, #f2ff1a 60%);
	text-shadow: white 0.5px 0.5px 0px, white -0.5px 0.5px 0px,
	white 0.5px -0.5px 0px, white -0.5px -0.5px 0px;
}
.m-wrap ul{
	margin-top: 2em;
}
.m-wrap ul li{
	text-align: left;
	padding-left:2em !important;
	text-indent:-3em;
}


/*
.plan-nav プラン一覧ページ
.........................................................................*/
#plan{
	text-align: center;
}

#plan .plan-nav{
	width: 95%;
	max-width: 700px;
	margin: 20px auto 0;
	padding: 0;
}

		#plan .plan-nav .cat{
			margin-top: 20px;
			padding: 30px 20px;
			border: 2px solid #FCDE21;
			background: #fff;
		}

		#plan .plan-nav .cat:not(.gakusei){
			/*width: 500px;*/
}

		#plan .plan-nav .cat:nth-child(even){
		}

		#plan .plan-nav .cat.gakusei{
			border: 2px solid #FCDE21;
		}


				#plan .plan-nav .cat h3 {
					margin: 0;
					padding: 0;
					font-size: 28px;
					color: #222;
					line-height:1.2em;
				}

				#plan .plan-nav .cat p{
					font-weight: bold;

				}


				#plan .plan-nav .cat ul {
					margin: 10px 0 0 0;
					padding: 0;
				}

						#plan .plan-nav .cat ul li{
							position: relative;
							margin: 0;
							padding: 0;
						}

						#plan .plan-nav .cat ul li+li{
							margin-top: 10px;
						}


						#plan .plan-nav .cat ul li a{
							display: block;
							padding: 12px 30px 12px 30px;
							color: #333;
							text-align: left;
							/*background-color: #0368B1;*/
							background-image: url(../img/planlist/arrow-w.png);
							background-position: 16px 50%;
							background-repeat: no-repeat,repeat;
							font-size: 18px;
							font-weight: bold;
							animation: arrow2 3s ease 1s infinite forwards;	
							text-decoration: none;
						}

						#plan .plan-nav .cat ul li a:hover{
							background-color: #aaa;
						}

						@keyframes arrow2 {
						  0% {
								background-image: url(../img/planlist/arrow-w.png);
								background-repeat: no-repeat ,repeat;
								background-position: 98% 50%;
						  }
						  50% {
								background-image: url(../img/planlist/arrow-w.png);
								background-repeat: no-repeat ,repeat;
								background-position: 97% 50%;
						  }
						  100% {
								background-image: url(../img/planlist/arrow-w.png);
								background-repeat: no-repeat ,repeat;
								background-position: 98% 50%;
						  }
						}

						#plan .plan-nav .cat ul li a .no{
							position: absolute;
							top: 0;
							left: 0;
							width: 50px;
							padding: 7px 0;
							text-align: center;
							background: #F8A010;
							font-size: 24px;
							font-weight: bold;
							border-bottom: 1px solid #F8A010;
						}



#plan .ui-btn{
	white-space: normal;
	text-align: left;
	min-height: 40px;
	display: flex;
	align-items: center;
	/*display: table-cell;
	vertical-align: middle;*/
}

						
#plan .no{
	position: absolute;
	top: 0;
	left: 0;
	width: 50px;
	padding: 7px 0;
	text-indent: -15px;
	text-align: center;
	background: #F8A010;
	font-size: 24px;
	font-weight: bold;
	border-bottom: 1px solid #F8A010;
}

.po-adjust01{
	position: relative;
}
.po-adjust01.menu_midashi {
	background-color: #0368b1;
    border-color: #ddd;
    color: #fff;
    text-shadow: 0 1px 0 #0368b1;
	border-radius: .3125em;
}
.po-adjust01.menu_midashi a{
	text-decoration: none;
}

#plan .plan-nav .cat .menu_midashi > a{
	display:flex;
	justify-content: flex-start;
	align-items: center;
	width:100%;
/*	min-width:323px;*/
	height:auto;
	max-width:656px;
	padding: 0px;
/*	flex-wrap: wrap;*/
	margin-bottom:10px;
	box-sizing: border-box;
	padding:10px 5px;
	gap:10px;
	font-family: "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.plan-no{
	width: 40px;
	height: 40px;
	position: absolute;
	top: -3px;
	left: 9px;
	z-index: 9999;
}
#plan .plan-nav .cat p.plan-no{
		width: 40px;
	height: 40px;
	position:inherit;
	padding: 0px;
	margin:0px;
	margin-left:10px;
	background:#FFAA31;
	color:#fff;
	text-align: center;
	font-size:22px;
	font-family: 'logotype_g';
	display:flex;
	justify-content: center;
	align-items: center;
	font-weight:bold;
	text-shadow:none;
}
#plan .plan-nav .cat .menu_midashi h3{
	color:#fff;
	display:inline;
	position:inherit;
	width:78%;
	padding:0px;
	text-align:left;
	font-size:16px;
	line-height:1.3em;
	box-sizing:border-box;
}
#plan .plan-nav .cat .menu_midashi h3 span{
	font-size: calc(100% * 0.8);
}
@media screen and (max-width:400px){
	#plan .plan-nav .cat .menu_midashi h3{
	max-width:260px;
	}
}
.table-adjust01 th{
	white-space: normal;
	min-width: 80px;
}

.sub_adjust01 li{
	width: 100%;
	margin-left: 0px !important;
}
.sub_adjust01 li a{
	padding: 16px !important;
}

.pt_00{
	padding-top: 0px !important;
}
.pt_20{
	padding-top: 20px !important;
}


#planlist .p_pack .telde{
	margin: 20px 0;
	padding: 20px 0;
	background: #eee;
	font-weight: bold;
	
}


#planlist .p_pack .telde strong{
	display: block;
	padding: 20px 0;
	color: #0368B1;
	font-size: 42px;
}
#planlist .p_pack .telde strong a{
	display: block;
	padding: 20px 0;
	color: #0368B1!important;
	font-size: 33px!important;
	text-decoration: none!important;
}

#planlist .p_pack .telde nav.ido{
	
}

		#planlist .p_pack .telde nav.ido ul li{
			display: inline-block;
			vertical-align: bottom;
		}

		/*#planlist .p_pack .telde nav.ido ul li+li{
				margin-left: 30px;
		}*/

		#planlist .p_pack .telde nav.ido ul li.tpoint{
			padding: 6px 10px 2px 10px;
			background: #fff;
		}

		#planlist .p_pack .telde nav.ido ul li.nomal a{
			background-color: #fff;
			border: 1px dotted #aaa;
		}

.plan_content {
	width:100%;
	max-width:500px;
	padding:10px 5px;
	margin:10px auto;
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.plan_content > *{
	box-sizing: border-box;
}
.content_text {
	width:100%;
	padding:0px;
	margin:0px;
}
.content_imgs{
	width:100%;
	height:auto;
	padding-top:20px;
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.content_img{
	width:100%;
	max-width:600px;
	height:auto;
	margin-bottom:10px;
}
.content_img img{
	width:100%;
	height:auto;
}
.plan_content .content_title h4{
	width:100%;
	height: auto;
	text-align: center;
	margin-bottom:10px;
	margin:0 auto;
}
.plan_content .content_text p{
	width:95%;
	padding:0px;
	padding-top:0px;
	padding-right:0px;
	text-align:left;
	letter-spacing: 0px;
	margin-right:0px;
}
#family .plan_content .content_text p{
	width:100%;
}
.plan_content .content_text p span{
	letter-spacing: -0.5px;
}
#family li{
	text-align:left;
}
.list{
	padding-left:1em;
	text-indent:-1em;
}
.olympic_tokuten {
	width:100%;	
	max-width:640px;
	text-align: center;
	display:flex;
	justify-content: center;
	flex-wrap: wrap;

}
.olympic_tokuten img{
	width:75%;
	max-width:250px;
	height:auto;
	margin:0px 15px;
}
.olympic_tokuten img:last-of-type{
	margin-bottom:30px;
}

.sp_only{display: block;}
.pc_only{display: none;}

@media only screen and (min-width: 450px){
.sp_only{display: none;}
.pc_only{display: block;}
.olympic_tokuten img{
	max-width:260px;
	margin:5px 15px;
}
}
@media only screen and (min-width: 767px){
.olympic_tokuten {
	max-width:760px;

}
.olympic_tokuten img{
	max-width:300px;
}
}
.service_waku{
	width:100%;
	max-width:986px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-left: auto;
	margin-right: auto;
	background: #eee;
	padding: 1.3em 0.8em;
    margin: 2em auto;
    font-weight: bold;
    border: solid 3px #ff091a;
	line-height: 1.2;
	gap:15px;
	box-sizing: border-box;
}
.service_waku *{
	box-sizing: border-box;
}
.service_waku ul{
	width:98%;
}
.service_waku li{
	text-align: left;
	padding-left:1em;
	text-indent:-1em;
	line-height: 1.8;
}
.service_waku p strong{
	font-size: 22px;
	margin-bottom: 1em;
	font-weight: bold;
	color: #203aff;
	background: linear-gradient(transparent 60%, #f2ff1a 60%);
	text-shadow: white 0.5px 0.5px 0px, white -0.5px 0.5px 0px,
	white 0.5px -0.5px 0px, white -0.5px -0.5px 0px;
}
.plan-col .akawaku_title{
	padding: 10px 0;width:100%;text-align: center;box-sizing: border-box;
}
.plan-col .akawaku_title h5{
	width:100%;margin:0px auto;font-size: clamp(26px, 3.2vw, 28px);color: #F1101E; border:2px solid #F1101E;line-height: 1em;box-sizing: border-box;
}
.plan-col .akawaku_title h5 span{
	font-size: calc(100% * 1.2);
}

.plan-col h3.set_funamori{
   margin-bottom:50px;
    padding:20px 15px;
    background:#EBEBEB;
    box-sizing: border-box;
    white-space:inherit;
    line-height: 1.2; 
}
.plan-col h3.set_funamori span{
    font-size: 20px;
    background: linear-gradient(transparent 60%, #FCDE21 60%);
    color:#004C85;
    box-sizing: border-box;
    letter-spacing: -0.01em;
}

/*event イベントお知らせ*/

.event-wrap,.event-wrap *{
    box-sizing: border-box;
}

.events.ohana{
     background:rgba(255,56,93,0.1);
}
.events.sports{
     background:rgba(100,255,55,0.12);
     margin-top:50px;
}
.event-wrap h2{
    background:none;
    margin:0px auto;
    color:#D32656;
    grid-column: 1 / -1;
    padding: 10px;
    font-size: 22px;
}
.event-wrap .sports h2{
    color:#058025;
}
.events{
    padding:30px 30px 40px;
    width: 100%;
    margin: 0px auto;
    display:grid;
    grid-template-columns: repeat(2,1fr);
    gap: 30px;
}
.event {
    display:grid;
    grid-template-columns: repeat(2,1fr);
    gap:15px 30px;
}
.sports .event{
 grid-column: 1 / -1;   
}
.event > div.text{
    grid-column: 1 / -1 ;
    padding:15px 20px;
    background:rgba(255,201,211,0.7);
    border-radius: 5px;
}
.sports .event > div.text{
    background:rgba(193,255,184,0.70);
}

.ohana .event div.image{
    grid-column: 1 / -1;
    padding:0px;
}

.event div.image img{
    width: 100%;
    height: auto;
    object-fit: cover;
    aspect-ratio: 100 / 70;   
}
.sports .event div.image{
    padding:0px;
}
.event > div.text p{
    font-size: 18px;
    text-align: center;
    font-weight: 600;
    margin: 0;
}
.ohana .event > div.text p{
    text-align: left;
}

@media screen and (max-width: 767px){
.events{
    padding:20px 15px 30px;
    grid-template-columns: repeat(1,1fr);
    gap: 15px;
}
.event {
    grid-template-columns: repeat(1,1fr);
    gap:15px;
}
    .event > div.text p{
    font-size: 16px;
    text-align: left;
}
}

.grid-wrap-col2{
    display:grid;
    grid-template-columns: 1fr 1fr;
    gap:10px;
    width:100%;
    margin:15px auto 40px;
}
.grid-wrap-col2.conpact{
    display:grid;
    grid-template-columns: 1fr 1fr;
    gap:5px;
    width:100%;
    margin:5px auto 0px;
}
@media screen and (max-width:480px){
 .grid-wrap-col2{
    grid-template-columns: 1fr;
}   
}
.grid-wrap-col2 > div{
    width:100%;
    height:100%;
    display: grid;
    gap: 0px;
}
.grid-wrap-col2 img{
    width:100%;
    height:auto;
    object-fit: cover;
    aspect-ratio:100 / 66;
}
.plan-col .plan_kake,.plan-col .plan_kake *{
    box-sizing: border-box;
}
.plan-col .plan_kake h2{
    background: #0368B1;
    background-image: none;
    color: #fff;
    display: grid;
     grid-template-columns: 100px 1fr;
    place-items: center;
    height: 3.5em;
     padding: 0px;
     line-height: 1.2;
    margin:0 0 15px;
    font-size: 18px;
}
.plan-col .plan_kake h2 span{
    width:100%;
    height: 100%;
    display: grid;
    place-items: center;
    color: #fff;
    padding: 10px;
}
.plan-col .plan_kake h2 span:first-of-type{
    background:#F8A010;
    
}
.plan-col .plan_kake h2 span:nth-of-type(2){
    justify-content: start;
    padding-left: 30px;
    text-align: left;
}
.grid-wrap-col2 p{
    font-size: 17px;
    font-weight: 600;
}
.plan_kake p{
    padding: 15px 10px 20px;
    margin: 0;
    text-align: center;
}
.yoko.n3,.yoko.n3 *{
    box-sizing: border-box;
}
.yoko.n3 ul{
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 60px 30px;
    margin-bottom:60px;
}
.yoko.n3 ul li{
    width:100%!important;
    height:auto;
    margin:0;
    padding: 0;
    display: grid;
    align-content: start;
    gap:10px;
}

.yoko.n3 ul li.yoko1{
    grid-column: 1 / -1;
    order:10;
}
.yoko.n3 ul li dl{
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 60px auto;
    gap: 5px;
}
.yoko.n3 ul li.yoko1 dl{
    grid-template-rows: auto auto;
}
.yoko.n3 ul li dt{
    margin: 0;
    align-self: center;
    text-align: center!important;
}
.yoko.n3 ul li .video-wrap{
    width: 100%;
}
.yoko.n3 ul li:not(.yoko1) img,
.yoko.n3 ul li video{
    width: 100%;
    height: auto;
    object-fit: cover;
    aspect-ratio: 360 / 240;
}
.yoko.n3 ul li+li{
    margin: 0;
}

@media screen and (max-width:767px){
.yoko.n3 ul{
    grid-template-columns: repeat(1,1fr);
    gap: 30px 15px;
    margin-bottom:30px;
}   
}
@media screen and (min-width:768px){
    .cracker{
    top:100px!important;
}
}


/*plan_sub17 大谷さん*/
.grid_wrap{
    display: grid;
}
.grid_wrap img{
    width:100%;
    height: auto;
    object-fit: cover;
}
.grid_wrap.set{
    grid-template-columns: 1fr;
    gap:20px;
}
.grid_wrap.set *{
    text-align: left;
}

.grid_wrap.set > *:not(.head){
    grid-column: 1 / -1;
}
.grid_wrap.set > *.head{
    grid-column: span 1;
    display: grid;
    align-items: start;
    align-content: start;
}
.grid_wrap.set > *.head dl{
    display: grid;
    gap: 1rem;
}

.grid_wrap.set > *.head dd{
    font-size: 16px;
    line-height: 1.7;
}
.grid_wrap.set > *.head .pic2{
    width: 60%;
    align-self: center;
    justify-self: end;
    margin-top: -30%;
}
.naiyo.imgs.grid_wrap{
    grid-template-columns: 0.5fr 0.5fr repeat(8,1fr) 0.5fr 0.5fr;
    gap:clamp(5px,1vw,10px);
    padding-block: 10px;
}
@media screen and (min-width:769px){
.naiyo.imgs.grid_wrap{
    grid-template-rows: 20px 1fr 100px 0.8fr;
}    
}
@media screen and (max-width:768px){
.naiyo.imgs.grid_wrap{
    grid-template-rows: 80px 50px 50px repeat(1,80px);
}
}
.naiyo.imgs.grid_wrap img{
    aspect-ratio: 6 / 5;
    height:100%;
}
.naiyo.imgs.grid_wrap img.contain{
    object-fit: contain;
}

.naiyo.imgs.grid_wrap img.img-1{
    grid-column: 1 / 5;
    grid-row: 1 / 4;
}
.naiyo.imgs.grid_wrap img.img-2{
    grid-column: 5 / 9;
    grid-row: 1 / 4;
}
.naiyo.imgs.grid_wrap img.img-3{
    grid-column: 9 / -1;
    grid-row: 1 / 4;
}
.naiyo.imgs.grid_wrap img.img-4{
    grid-column: 3 / 7;
    grid-row: 3 / 5;
    justify-self: end; 
}
.naiyo.imgs.grid_wrap img.img-5{
    grid-column: 6 / 7;
    grid-row: 3 / 5;
    align-self: start;
    justify-self: start;
    width:60px;
    height: auto;
    aspect-ratio: inherit;
    transform: translateY(-100px);
}
.naiyo.imgs.grid_wrap img.img-6{
    grid-column: 7 / 12;
    grid-row: 3 / 5;
}
.naiyo.imgs.grid_wrap img.img-4,
.naiyo.imgs.grid_wrap img.img-5{
    filter: drop-shadow(0 0 3px rgba(255,255,255,1))
         drop-shadow(0 0 3px rgba(255,255,255,1))
         drop-shadow(0 0 3px rgba(255,255,255,1))
         drop-shadow(0 0 3px rgba(255,255,255,1));
}
.moreover + p{
    font-size: 16px;
}