/* CSS Document */

#concierge{
	padding-top: 0;
	}

#lead{}
	#lead .wrap{
		display: flex;
		justify-content: center;
		}

#conciergeSearch{}
	#conciergeSearch dl{
		display: flex;
		flex-direction: column;
		}
	#conciergeSearch dt{
		font-weight: bold;
		}
	#conciergeSearch dd{
		margin-top: 0.5em;
		}
	#conciergeSearch dd+dt,
	#conciergeSearch dd+dd{
		margin-top: 1em;
		}
	#conciergeSearch #failed{
		display: none;
		}

#noCanvas{
	display: flex;
	justify-content: center;
	align-items: center;
	height: 10em;
	background: #ccc;
	}

#radarBtns{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	margin: 0;
	}
	#radarBtns > div{
		display: flex;
		align-items: center;
		}
	#radarBtns > div+div{
		margin: 0.5em;
		}
	#radarBtns span{
		font-size: 0.8em;
		}
	#radarBtns a{
		display: flex;
		justify-content: center;
		align-items: center;
		width: 1.2em;
		height: 1.2em;
		margin-left: 0.2em;
		background: #223a70;
		border-radius: 100%;
		color: #fff;
		fill: #fff;
		line-height: 1.2em;
		text-decoration: none;
		cursor: pointer;
		}
		#radarBtns a svg{
			width: 0.8em;
			height: 0.8em;
			}

#radarBtns{
	display: flex;
	justify-content: center;
	}

#failed{
	/*display: none;*/
	color: #e00;
	border: 1px solid #e00;
	text-align: center;
	padding: 1em;
	}

#modalLink{}
	#modalLink h3{
		text-align: center;
		}

.slider{
	display: flex;
	justify-content: space-between;
	align-items: center;
	}
	.slider input+div{
		text-align: right;
		}
	.slider input[type="range"]{
		-webkit-appearance:none;
		height: 2em;
		border-radius: 10em;
		padding: 0;
		background: #ddd;
		border: none;
		overflow: hidden;
		}
	.slider input[type="range"]::-webkit-slider-runnable-track{
		height: 2em;
		}
	.slider input[type="range"]::-webkit-slider-thumb{
		-webkit-appearance:none;
		width: 2em;
		height: 2em;
		background: #223a70;
		border: 3px solid #223a70;
		border-radius: 50%;
		cursor: ew-resize;
		box-sizing: border-box;
		}
	.slider input[type="range"]::-moz-range-track{
		height: 2em;
		}
	.slider input[type="range"]::-moz-range-thumb{
		width: 2em;
		height: 2em;
		background: #223a70;
		border: 3px solid #223a70;
		border-radius: 50%;
		cursor: ew-resize;
		box-sizing: border-box;
		}
	.slider input[type="range"]::-ms-track{
		height: 0;
		background: none;
		border: none;
		}
	.slider input[type="range"]::-ms-thumb{
		width: 2em;
		height: 2em;
		background: #223a70;
		border: 3px solid #223a70;
		border-radius: 50%;
		cursor: ew-resize;
		box-sizing: border-box;
		}
	.slider input[type="range"]::-ms-fill-lower{
		display: none;
		}
	.slider input[type="range"]::-ms-fill-uppe{
		display: none;
		}
	.slider input[type="range"]::-ms-tooltip{
		display: none;
		}

.toggle{}
	.toggle input[type=checkbox]+label{
		display: grid !important;
		grid-template-columns: 1fr 2.8em;
		align-items: center;
		grid-gap: 1em;
		padding: 0;
		}
	.toggle input[type=checkbox]+label:before,
	.toggle input[type=checkbox]+label:after{
		position: relative;
		inset: 0;
		grid-column: 2;
		grid-row: 1;
		display: block;
		margin: 0;
		padding: 0;
		border-radius: 0.7em;
		}
	.toggle input[type=checkbox]+label:before{
		width: 100%;
		}
	.toggle input[type=checkbox]+label:after{
		width: 1.4em;
		background: #ccc;
		animation: none;
		transition: transform,background 0.2s ease-out;
		}
		.toggle input[type=checkbox]:checked+label:after{
			background: #223a70;
			transform: translateX(1.4em);
			}

.screen{
	position: fixed;
	top: 0;
	left: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	padding: 0;
	background: rgba(0,0,0,0.5);
	z-index: 100;
	}

.popup{
	position: relative;
	margin: 0;
	background: #fff;
	filter: drop-shadow(0 0 0.2em rgba(0,0,0,0.2));
	}
	.popup div+div{
		margin-top: 1em;
		}
	.popup .close{
		position: absolute;
		top: 0.5em;
		right: 0.5em;
		fill: #000;
		cursor: pointer;
		z-index: 10;
		}
	.popup .linkBut{
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 0.5em 0.8em;
		font-family: inherit;
		}
		.popup .linkBut i{
			display: flex;
			justify-content: center;
			align-items: center;
			width: 1em;
			margin-right: 0.3em;
			}
		.popup .linkBut[data-target="twitter"]{
			background: #1da1f2;
			border-color: transparent;
			color: #fff;
			fill: #fff;
			}
		.popup .linkBut[data-target="facebook"]{
			background: #3b5998;
			border-color: transparent;
			color: #fff;
			fill: #fff;
			}
		.popup .linkBut[data-target="line"]{
			background: #00c300;
			border-color: transparent;
			color: #fff;
			fill: #fff;
			}


/* for all */
@media (max-width: 1199px) {
/*1199px以下*/
}
@media (max-width: 991px) {
/*991px以下*/
}


/* for mobile */
@media (max-width: 767px) {
/*767以下px*/
#lead{
	padding: 2em 0;
	}

.popup{}
	.popup menu+div{
		max-height: 80vh;
		padding: 1em;
		}
}
@media (max-width: 767px) and (orientation:portrait) {
/*767px以下 縦向き*/
.popup{}
	.popup .buttonSet{
		flex-direction: column;
		padding: 0;
		}
}
@media (max-width: 767px) and (orientation:landscape) {
/*767px以下 横向き*/
.popup{}
	.popup .linkBut{
		font-size: 0.8em;
		}
	.popup .buttonSet{
		justify-content: space-between;
		}
}


/* for tablet */
@media (min-width: 768px) {
/*768px以上*/
.popup{}
	.popup menu+div{
		padding: 1.5em;
		}
	.popup .buttonSet{
		justify-content: space-between;
		}
}
@media (min-width: 768px) and (max-width: 1199px) {
/*768px～1199px*/
}
@media (min-width: 768px) and (max-width: 991px) {
/*768px～991px*/
#lead{
	padding: 3em 0;
	}
.popup{}
	.popup .linkBut{
		font-size: 0.875em;
		}
}


/* for PC */
@media (min-width: 992px) {
/*992px以上*/
#lead{
	padding: 4em 0;
	}
#conciergeSearch{}
	#conciergeSearch .wrap{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		}
	#conciergeSearch .wrap > div{
		width: 100%;
		}
		#conciergeSearch .wrap > div:nth-of-type(-n+2){
			width: calc(50% - 1em);
			margin-top: 0;
			}
#conciergeSearch .wrap > #failed{
	width: 100%;
	}
}
@media (min-width: 992px) and (max-width: 1199px) {
/*992px～1199px*/
}
@media (min-width: 1200px) {
/*1200px以上*/
}


/* Edge */
@supports (-ms-ime-align:auto) {
}


/* ie */
@media all and (-ms-high-contrast: none){
}

