@charset "utf-8";
/* CSS Document */
.chargePoint {
	padding-bottom: 1.5em;
}
.chargePoint li {
	float: left;
	line-height: 0;
	margin-right: 56px;
}
.chargePoint .lastC {
	margin-right: 0;
}
.charge .chargeTbl02 {
	width: 700px;
	border-collapse: collapse;
	border-spacing: 0;
	margin: 0 0 3em;
}
.chargeTbl02 th, .chargeTbl02 td {
	border: 1px solid #FE813D;
	padding: 3px;
	text-align: center;
}
.chargeTbl02 th {
	background-color: #F2F2F2;
}
.chargeTbl02 thead th {
	font-weight: bold;
	background-color: #FE9861;
	color: #FFFFFF;
}
.chargeTbl02 tbody th {
	background-color: #FFF3D7;
}
.chargeTbl02 tbody td {
	font-size: 14px;
}
.chargeTbl02 .chargeSp {
	font-weight: bold;
	color: #FF0000;
}
.chargeTbl02 .even {
	background-color: #FFF9EA;
}
.chargeNotes {
	margin: 0 10px 3em;
}
.chargeNotes li {
	list-style-type: disc;
	margin: 0 0 1em 15px;
}
.charge .chargeTbl02 .service {
	text-align: left;
	color: #333333;
	font-weight: normal;
}
.option {
	margin: 0 10px 3em;
}
.option p {
	float: left;
	text-align: center;
	margin-right: 10px;
}
.price-table {
	margin-bottom: 3em;
}
.price-column {
	background-color: rgb(247,247,247);
	position: relative;
	float: left;
	margin: 10px 0;
}
.price-column-first {
	border-radius: 3px 0px 0px 3px;
	width: 12%
}
.price-column-first h4, .price-column-last h4 {
	background-color: rgb(160, 160, 160);
}
.price-column h4 {
	color: rgb(255, 255, 255);
	border-bottom: 0px none;
	font-size: 12px;
	line-height: 36px;
	margin: 0px;
	padding: 0px;
	text-transform: uppercase;
}
.price-column-first h4, .price-column-first {
	border-radius: 3px 0px 0px 0px;
}
.price-column-first h4 {
	white-space: nowrap;
}
.price-column .first {
	background-color: rgba(0, 0, 0, 0.01);
	margin: 0px;
	padding-bottom: 17px;
}
.price-column ul li {
	background: url("../../../sunparking-ukishima00/charge/images/page/charge-list.png") repeat-x scroll 0px 100% transparent;
	color: rgb(102, 102, 102);
	padding: 10px;
	text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.3);
	list-style-type: none;
}
.price-column-first ul, .price-column-featured ul {
	margin-left: 0;
}
.price-column ul li, .price-column h4 {
	text-align: center;
}
li {
	line-height: 22px;
}
.price-column .last {
	background: none repeat scroll 0px 0px transparent;
	padding: 10px 10px;
}
.last {
	margin-right: 0px !important;
}
.price-column-featured {
	background-color: #EBF7FA;
	margin: 0px 0px 3px;
	position: relative;
	box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.17);
	border-radius: 3px 3px 3px 3px;
	z-index: 9;
	width: 22%;
	font-weight: bold;
}
.price-column-featured li:nth-child(odd), .price-column-first li:nth-child(odd) {
	background-color: #FFFFFF;
}
.price-column-featured h4 {
	background-color: rgb(47, 150, 180);
	color: rgb(255, 255, 255);
	border-radius: 3px 3px 0px 0px;
}
.price-column-featured h4 {
	font-size: 16px;
	line-height: 46px;
}
.price-column-featured ul {
	padding-bottom: 11px;
}
.price-column-last {
	border-radius: 0px 3px 3px 0px;
}
.peakTbl {
	width: 100%;
}
.peakTbl th, .peakTbl td {
	width: 50%;
	text-align: center;
	font-weight: normal;
}
.peakTbl thead th {
	background: #BDD4C1;
}
@media only screen and (max-width: 25.063em) {
.price-column-featured li:last-child, .price-column-first li:last-child {
	text-align: left;
}
}
 @media only screen and (min-width: 40.063em) {
}
@media only screen and (min-width: 64.063em) {
}
/* #Pricing Tables
================================================== */
.pricing-tables {
	padding-bottom: 18px;
	margin-bottom: 34px;
	position: relative;
}
.pricing-column {
	display: block;
	position: relative;
	float: left;
}
/* Single Pricing Cell */
.single-pricing-table {
	background: #e6eae3;
	background: rgba(189, 212, 193, .20);
	position: relative;
	text-align: center;
	border-top: 2px solid #bdd4c1;
	-webkit-transition: box-shadow 0.3s ease-out;
	-moz-transition: box-shadow 0.3s ease-out;
	transition: box-shadow 0.3s ease-out;
}
/* Pricing Header */
.single-pricing-table .pr-head {
	color: #fff;
	position: relative;
	overflow: hidden;
}
.single-pricing-table .pr-head h3,  .single-pricing-table .pr-head h4 {
	font-family: 'Oswald', sans-serif;
	color: #fff;
	text-shadow: none;
	font-weight: normal;
}
.single-pricing-table .pr-head h3.price {
	font-size: 24px;
	line-height: 1.2em;
	padding: 20px 0;
	margin: 0;
	position: relative;
	z-index: 3;
	color: #111;
	background: #c1d6c4;
}
.single-pricing-table .pr-head h3.price sup {
	font-size: .6em;
	top: -.6em
}
.single-pricing-table .pr-head h4 {
	font-size: 16px;
	text-transform: uppercase;
	color: #111;
	padding: 15px 0;
	margin-bottom: 0;
	background: #dbe3d9;
	background: rgba(189, 212, 193, .42);
}
/* Pricing Features */
.single-pricing-table .pr-features {
}
.single-pricing-table .pr-features ul {
	margin: 0;
	padding: 0;
}
.single-pricing-table .pr-features ul li {
	list-style-type: none;
	margin: 0;
	padding: 13px 0 12px 0;
	background: none;
	border-top: 1px solid #dbe3d9;
	border-top: 1px solid rgba(189, 212, 193, .42);
}
.single-pricing-table .pr-features ul li:first-child {
	border-top: none;
}
/* Pricing Footer */
.single-pricing-table .pr-foot {
}
/* Pill custom styles */
.single-pricing-table .pr-foot a {
	display: block;
	font-size: 14px;
	font-weight: bold;
	text-transform: uppercase;
	text-align: center;
	padding: 10px 0;
	background: #6e9b76;
	color: #fff;
	-webkit-transition: all 0.2s ease-out;
	-moz-transition: all 0.2s ease-out;
	transition: all 0.2s ease-out;
}
.single-pricing-table .pr-foot a:hover {
	text-decoration: none;
	background: #eb593c;
}
/* Pricing Grid 
-------------------------------------------------- */
.pricing-tables.five-cols .pricing-column:first-child {
	margin-left: 0 !important;
}
/* 4 cols */
.pricing-tables.four-cols .pricing-column {
	width: 25%;
	margin-left: 0px;
}
.pricing-tables.four-cols .pricing-column:first-child {
	margin-left: 0;
}
/* 3 cols */
.pricing-tables.three-cols .pricing-column {
	width: 312px;
	margin-left: 1px;
}
.pricing-tables.three-cols .pricing-column:first-child {
	margin-left: 0;
}
/* Pricing Active and Hover */
.single-pricing-table.active {
	margin: -20px -5px;
	z-index: 4;
	box-shadow: 0 2px 20px rgba(0, 0, 0, .14);
	background: #efedeb;
	border: 1px solid #efedeb;
}
.single-pricing-table.active:before {
	content: "";
	display: block;
	height: 1px;
	position: absolute;
	left: 0;
	right: 0;
	top: -2px;
	background-color: #eb593c;
}
.single-pricing-table.active .pr-head h4 {
	color: #fff;
	font-size: 24px;
	line-height: 1em;
	padding: 23px 0 24px 0;
	background: #eb593c;
}
.single-pricing-table.active .pr-head h3.price {
	color: #fff;
	font-size: 24px;
	line-height: 1em;
	padding: 22px 0;
	background: #ec684d;
}
.single-pricing-table.active .pr-foot a {
	font-size: 18px;
	padding: 20px 0;
	background: #eb593c;
}
.single-pricing-table.active .pr-foot a:hover {
	background: #ec684e;
}
/*----------
		Blocks
		----------*/
		/*Pricing table and price blocks*/
.pricing_table {
	line-height: 150%;
	font-size: 12px;
	margin: 0 auto 20px;
	width: 100%;
	max-width: 100%;
	padding-top: 0px;
}
@media only screen and (min-width: 40.063em) {
.pricing_table {
	padding-top: 0px;
}
}
.price_block {
	text-align: center;
	float: left;
	list-style-type: none;
	transition: all 0.25s;
	position: relative;
	box-sizing: border-box;
	margin-bottom: 10px;
	border-bottom: 1px solid transparent;
}
.pricing_table .featuresBox {
	z-index: 4;
	/*box-shadow: 0px 2px 20px rgba(0, 0, 0, 0.14);*/
	margin: 0px 0 10px;
	width: 100%;
}
.pricing_table .normalBox {
/*display: none;*/
}
.pricing_table .rakuBox {
width: 100%;
}
/*Price heads*/
.pricing_table h3 {
	text-transform: uppercase;
	padding: 10px 0;
	background: #BDD4C1;
	margin: 0px 0 1px 0;
	font-size: 1.6rem;
	border-radius: 3px 3px 0px 0px;
}
.pricing_table .featuresBox h3 {
	background-color: #EB593C;
	color: #FFF;/*padding: 5px 0;
			font-weight: bold;
			font-size: 1.4rem;*/
}
/*Price tags*/
.price {
	display: table;
	background: #D9E5DC;
	width: 100%;/*height: 70px; */
			
}
.pricing_table .featuresBox .price {
	background-color: #EC684D;
	color: #FFF;
}
.price_figure {
	font-size: 1.6rem;
	text-transform: uppercase;
	vertical-align: middle;
	display: table-cell;
	padding: .5em;
}
.price_number {
	font-weight: bold;
	display: block;
}
.price_tenure {
/*font-size: 12px; */
}
/*
				@media only screen and (min-width: 40.063em) {
		.price_tenure {
			font-size: 12px; 
		}
				.pricing_table .featuresBox h3 {
			background-color: #EB593C;
			color: #FFF;
			padding: 14px 0;
			font-weight: bold;
			font-size: 1.6rem;
		}

}
*/
		
		/*Features*/
.features {
	background: #FFF;
	color: #000;
	margin-left: 0;
}
.features .days {
	float: left;
	font-weight: bold;
	color: #999;
}
.pricing_table .rakurakuBox .features {
	background: #FFF;
	font-weight: bold;
}
.pricing_table .featuresBox .features {
	background: #FFFFD2;
	font-weight: bold;
}
.features li {
	padding: 8px 15px;
	border-bottom: 1px solid #ccc;
	font-size: 1.6rem;
	list-style-type: none;
	font-weight: bold;
}
 @media only screen and (min-width: 40.063em) {
.features li {
	font-size: 1.6rem;
}
.pricing_table .featuresBox h3 {
	padding: 10px 0;
	font-weight: bold;
	font-size: 1.6rem;
}
.pricing_table .featuresBox {
	width: 100%;
}
.pricing_table .rakurakuBox {
	width: 100%;
}
}
.footer {
	padding: 15px;
	background: #DEF0F4;
}
.action_button {
	text-decoration: none;
	color: #fff;
	font-weight: bold;
	border-radius: 5px;
	background: linear-gradient(#666, #333);
	padding: 5px 20px;
	font-size: 11px;
	text-transform: uppercase;
}
.pricing_table .rakurakuBox .features {
	background: #FFF;
	font-weight: bold;
}
/*	
		.price_block:hover {
			box-shadow: 0 0 0px 5px rgba(0, 0, 0, 0.5); 
			transform: scale(1.04) translateY(-5px); 
			z-index: 1; 
			border-bottom: 0 none;
		}
		.price_block:hover .price {
			background:linear-gradient(#DB7224, #F9B84A); 
			box-shadow: inset 0 0 45px 1px #DB7224;
		}
		.price_block:hover h3 {
			background: #222;
		}
		.price_block:hover .action_button {
			background: linear-gradient(#F9B84A, #DB7224); 
		}
*/
		
		
		@media only screen and (min-width : 480px) and (max-width : 768px) {
/*.price_block {width: 50%;}*/
.price_block:nth-child(odd) {
	border-right: 1px solid transparent;
}
.price_block:nth-child(3) {
	clear: both;
}
.pricing_table .normalBox {
	display: block;
}
.pricing_table .featuresBox {
	margin: 0 0 0;
	width: 100%;
}
.pricing_table .rakuBox {
	display: block;
	width: 100%;
}
/*.price_block:nth-child(odd):hover {border: 0 none;}*/
}
 @media only screen and (min-width : 768px) {
.price_block {
	border-right: 1px solid transparent;
	border-bottom: 0 none;
}
.price_block:last-child {
	border-right: 0 none;
}
.pricing_table h3 {
	margin: 0px 0 1px 0;
}
.pricing_table .featuresBox {
/*margin: -21px 0 0;
			width: 60%;*/
}
.pricing_table .normalBox {
	display: block;
	width: 100%;
}
.pricing_table .rakuBox {
	display: block;
	width: 100%;
}
/*.price_block:hover {border: 0 none;}*/
}
.prBox {
	font-size: 1.6rem;
	padding: 1em;
	border-radius: 5px;        /* CSS3草案 */
	-webkit-border-radius: 5px;    /* Safari,Google Chrome用 */
	-moz-border-radius: 5px;   /* Firefox用 */
	background-color: #FFC;
	border: 1px solid #CCC;
	margin: 0 0 20px;
}
.cpBox {
	text-align: center;
	margin: 0 0 20px;
}
.bnrBox {
	text-align: center;
	margin: 0 0 20px;
}
@media only screen and (min-width : 768px) {
.prBox {
	margin: 0 0 20px;
}
.cpBox {
	text-align: center;
	margin: 0 0 40px;
}
.bnrBox {
	text-align: center;
	margin: 0 0 40px;
}
}
.offseason, .highseason {
	padding: 1em;
	margin-bottom: 0;
	border-radius: 3px;
}
.offseason dt, .highseason dt {
	border-bottom: 1px dotted #000;
	padding-bottom: .3em;
}
.offseason dt::before, .highseason dt::before {
	content: "■";
	margin-right: .5em;
}
.offseason dd, .highseason dd {
	margin-bottom: 0;
}
.offseason {
	background-color: #d7ecfa;
}
.highseason {
	background-color: #fff3d9;/*background-color: #f7e4e1;
	background-color: #e1faea;*/
}
#main li {
	margin-bottom: 1em;
}
/*料金比較*/
:root {
 --abc-green: #2ecc71;
 --naha-blue: #3498db;
 --bg-gray: #f9f9f9;
}
.card {
	background: white;
	width: 100%;
	padding: 25px;
	border-radius: 15px;
	/*box-shadow: 0 5px 20px rgba(0,0,0,0.1);*/
}
.input-group {
	display: flex;
	gap: 10px;
	margin-bottom: 20px;
}
.input-group div {
	flex: 1;
}
label {
	display: block;
	color: #666;
	margin-bottom: 5px;
	font-size: 1.6rem;
}
input[type="date"] {
	width: 100%;
	/*padding: 12px;*/
	border: 1px solid #ddd;
	border-radius: 8px;
	box-sizing: border-box;
	font-size: 1.6rem;
}
/* 入力欄全体をクリック可能にする設定 */
input[type="date"] {
    position: relative;
    cursor: pointer;
}

/* カレンダーを表示させるための「カレンダーピッカー」を透明にして全体に広げる */
input[type="date"]::-webkit-calendar-picker-indicator {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0; /* アイコンを透明にする */
    cursor: pointer;
}

/* （任意）右側のアイコンが見えなくなると不便な場合は、背景画像として表示し直すこともできます */
/*input[type="date"] {
    background: #fff url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="15" viewBox="0 0 24 24"><path fill="none" stroke="%23666" stroke-width="2" d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"/></svg>') no-repeat calc(100% - 10px) center;
}*/

button {
	width: 100%;
	padding: 15px;
	background: #333;
	color: white;
	border: none;
	border-radius: 8px;
	font-weight: bold;
	cursor: pointer;
}
button:hover {
	background: #000;
}
.result-area {
	margin-top: 30px;
	display: none;
}
.res-box {
	padding: 15px;
	border-radius: 10px;
	margin-bottom: 15px;
	border: 2px solid transparent;
}
.abc {
	border-color: var(--abc-green);
	background: #f0fff4;
}
.naha {
	border-color: var(--naha-blue);
	background: #f0f7ff;
}
.label-tag {
	font-weight: bold;
	padding: 3px 8px;
	border-radius: 4px;
	color: white;
	display: inline-block;
	margin-bottom: 5px;
}
.abc .label-tag {
	background: var(--abc-green);
}
.naha .label-tag {
	background: var(--naha-blue);
}
.price-val {
	font-size: 1.8rem;
	font-weight: bold;
	margin: 5px 0;
}
.detail {
	color: #555;
}
.winner {
	background: #fff3cd;
	border: 1px solid #ffeeba;
	padding: 15px;
	text-align: center;
	border-radius: 10px;
	font-weight: bold;
	color: #856404;
}
/* 日曜日と祝日の色（赤系） */
.flatpickr-day.sunday,
.flatpickr-day.holiday {
    color: #ff4d4d !important;
}

/* 土曜日の色（青系） */
.flatpickr-day.saturday {
    color: #007bff !important;
}

/* 選択不可（過去の日）の場合は色を付けない、または薄くする */
.flatpickr-day.flatpickr-disabled.sunday,
.flatpickr-day.flatpickr-disabled.saturday,
.flatpickr-day.flatpickr-disabled.holiday {
    color: #ccc !important;
}

/* 祝日の下に小さなドットを付けて強調する場合（お好みで） */
.flatpickr-day.holiday::after {
    content: "";
    position: absolute;
    bottom: 3px;
    left: 50%;
    transform: translateX(-50%);
    width: 4px;
    height: 4px;
    background: #ff4d4d;
    border-radius: 50%;
}	
.input-group #startDate, .input-group #endDate {
	font-size: 1.6rem !important;
}