@charset "utf-8";

/***********************************************************************************************************************
* 基本構造
***********************************************************************************************************************/
html{
	line-height: 1.6em;
}
*{
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
html *:not(br):not(span):not(strong):not(em):not(i){
	font-size: 1.6rem;
	line-height: 1.6em;
}

body{
	color:#333333;
}

.wrap{
	position: relative;
	max-width: 1040px;
	margin: 0 auto;
	padding: 0 20px;
}

.wrap-s{
	position: relative;
	max-width: 890px;
	margin: 0 auto;
	padding: 0 15px;
}

/*画像切り替えなど*/
.sp{ display: none !important; }
.pc{ display:block !important; }

/*画像幅100%*/
img.wide{
	width: 100%;
}

/*カラー*/
.clr-blue{
	color:#0A6DB5;
}
/*背景画像デフォルト設定*/
.bgset{
	-webkit-background-size:cover;
	background-size:cover;
	background-repeat: no-repeat;
	background-position: center;
}

#back-layer{
	position: fixed;
	left:0;
	top:0;
	width: 100%;
	height: 100%;
	z-index: 0;
}


main{
	display: block;
	padding-top: 63px;
}
.top-page main{
	padding-top: 0px;
}
.hover:hover{
	-ms-filter: "alpha( opacity=100 )";
	    filter: alpha( opacity=100 );
	opacity: 1;
}

.toggle-contents{
	display: none;
}


/*ボタン*/
.btn-a{
	position: relative;
	display: inline-block;
	max-width: 376px;
	width: 100%;
	padding:0.7em 20px 0.7em 20px;
	margin: 0 auto;
	-moz-border-radius: 2.2em;
	-ms-border-radius: 2.2em;
	border-radius: 2.2em;
	text-align: center;
	background: #888888;
	color:#ddd;
	font-size: 2rem;
	font-weight: bold;
}

.btn-a.arw-l{
	padding:0.7em 50px 0.7em 86px;
}

.btn-a.arw-l::after{
	content: "";
	position: absolute;
	display: block;
	top:50%;
	margin-top: -10px;
	left:50px;
	width: 0.5em;
	height: 0.5em;
	border-bottom: solid 3px #036DB7;
	border-left: solid 3px #036DB7;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.btn-b{
	width: 100%;
	max-width: 260px;
	color:#000;
	border:none;
	font-size: 1.8rem;
	padding: 0.7em;
	text-align: center;
}



/*アンカーホバー設定*/
	a,button{
		cursor: pointer;
		color:inherit;
			-webkit-transition: opacity .4s ease 0.2s;
		-moz-transition: opacity .4s ease 0.2s;
		transition: opacity .4s ease 0.2s;
	}
		a:hover,
		button:hover{
			opacity: .5;
			-webkit-transition: opacity .4s ease;
			-moz-transition: opacity .4s ease;
			transition: opacity .4s ease;
		}

a.underline{
	color:#ed6517;
}

.bg-blue{
	background-color:#036DB7;
}

.bg-clblue{
	background-color:#CFEBFE;
}

.bg-yellow{
	background-color:#FFFF00;
}
.bg-black{
	background-color: #333333;
}

.bg-gray{
	background-color:#505050;
}


.clr-blue{
	color:#036DB7;
}

.clr-yellow{
	color:#FFFF00;
}

.clr-white{
	color:#FFF;
}

.clr-gray{
	color:#333333;
}

/*見出し*/
.headline-lg{
	text-align: center;
	font-size: 	3.7rem;
}
.headline-m{
	text-align: center;
	font-size: 2.9rem;
}


.headline-s{
	font-size: 2.2rem;
}

.headline-main{
	font-size: 11.2rem;
	line-height: 1.1em;
	text-align: center;
	white-space: nowrap;
	/*letter-spacing: -1px;*/
	font-weight: 900;
	margin: 0 0 0.2em;
}
	.headline-main>span{
		display: block;
		color: #ff0000;
		font-size: 6.8rem;
		line-height: 1.2em;
		/*letter-spacing: -1px;*/
	}
		.headline-main span>span{
			font-size: 3.0rem;
		}
		.headline-main span>em{
			font-size: 10.0rem;
		}

.top-msg{
	padding: 1.5em 1em; 
	margin: 10px 0px 20px; 
	background: #FDFE1E; 
	color: #0A6DB5; 
	border: 4px solid #0A6DB5; 
	text-align: center;
}
.top-msg h2 {
    font-size: 2.1em;
}

@media screen and (max-width: 1200px){
	.top-msg h2 {
	    font-size: 2.6vw;
	}

}


.main-visual{
	position: relative;
	z-index: 1;
}

.main-visual::after{
	content:"";
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top:0;
	left:0;
	z-index: 2;
	background: url(../img/dot.png);
}



.main-visual .top-layer{
	position: absolute;
	width: 100%;
	left:0;
	top:50%;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	text-align: center;
	z-index: 3;
	font-weight: bold;
	color:#fff;
}

.main-visual .top-layer .text1{
	font-size: 4.45rem;
	margin-bottom: 30px;
	font-weight: bold;
}

.main-visual .top-layer .text1 .sm-font{
	font-size: 3.6rem;
	
}
.main-visual .top-layer .text2{
	font-size: 4.3rem;
	font-weight: normal;
	margin: 30px 0 10px;
}

.main-visual .top-layer .text3{
	font-size: 3rem;
	margin-bottom: 10px;
	font-weight: normal;	
}
.main-visual .top-layer .text4{
	font-size: 1.65rem;
	font-weight: normal;
}

#shop-list{
	position: fixed;
	right: 230px;
	top:11px;
	text-align: center;
	z-index: 10;
}

#shop-list>a{
	display: inline-block;
	height: 30px;
	padding:0 15px;
	line-height: 30px;
	border:1px solid #fff;
	-webkit-border-radius: 20px;
	border-radius: 20px;
	color:#fff;
}
#shop-list>ul {
    left: -23px;
    top: 35px;
    position: absolute;
    background: #EEF9FF;
    padding: 7px 15px;
    min-width: 150px;
    -webkit-border-radius: 10px;
    border-radius: 10px;
    display: none;
}

#shop-list>ul>li{
	border-bottom:1px solid #036DB7;
}
#shop-list>ul>li:last-child{
	border-bottom:none;
}

#shop-list>ul>li>a{
	padding: 10px 20px 10px 0;
	display: block;
	color: #036DB7;
	font-weight: bold;
	text-align: left;
}



/*ヘッダー*/
header{
	position: fixed;
	width: 100%;
	height: 60px;
	left:0;
	top:0;
	width: 100%;
	z-index: 10;
	background:#036DB7;
	opacity: 0;
}

header.animated{
	opacity: 1;
	-webkit-transition: opacity 0.8s cubic-bezier(.5,.36,.86,.6);
	transition: opacity 0.8s cubic-bezier(.5,.36,.86,.6);
}



	header .logo {
		position: absolute;
		left:0;
		top:0;
	    padding: 14px 15px 15px 10px;
	}
	header .logo a{
		display: inline-block;
	}

	header .logo span.num {
	    margin-left: 0.5em;
	    vertical-align: middle;
	}

/*ナビ*/
header>nav{
	position: absolute;
	width: -webkit-calc(100% - 200px);
	width: calc(100% - 200px);
	left:200px;
}
	header>nav .menu{
		left:0;
		display: -ms-flex;
		display: -webkit-flex;
		display: flex;
		width: 100%;
		justify-content: flex-end;
		overflow: hidden;
		padding-top: 18px;
		padding-left: 0;
    	padding-right: 200px;
	}

			header>nav .menu>li>a {
			    white-space: nowrap;
			    font-size: 1.3rem;
			    margin-left: 1.6vw;
			    color:#fff;
			}

			header a{
				-webkit-transition:opacity 0.4s ease 0.2s;
				-o-transition:opacity 0.4s ease 0.2s;
				transition:opacity 0.4s ease 0.2s;
				opacity: 1;
			}

				header a:hover{
					-webkit-transition:opacity 0.4s ease 0.1s;
					-o-transition:opacity 0.4s ease 0.1s;
					transition:opacity 0.4s ease 0.1s;
					opacity: 0.4;
				}

/*予約ボタン*/
header>nav .reserve{
	position: absolute;
	width: 140px;
	right:0;
	top:0;
}
	header>nav .reserve a{
		display: block;
		width: 100%;
		text-align: center;
		font-size: 1.5rem;
		color:#036DB7;
		padding-left: 45px;
		height: 60px;
		line-height: 60px;
		font-weight: bold;
		background:  #FFFF00 url(../svg/icon_calender.svg) 15px center no-repeat;
	}

	header>nav .reserve a:hover{
		opacity: 1;
		-webkit-transition: background 0.4s ease;
		-o-transition: background 0.4s ease;
		transition: background 0.4s ease;
	}



/*ヘッダー トグル
-------------------------------*/
body>header{
	position:fixed;
	width: 100%;
    height: 50px;
	left: 0;
	padding: 0;
	z-index: 9000;
	opacity: 1;
}

body>header #menu-button {
    position: absolute;
    display: block;
    right: 160px;
    top: 1px;
    width: 50px;
    height: 46px;
    cursor: pointer;
    z-index: 10009;
}


	body>header #menu-button>div{
		width: 28px;
		height: 2px;
		background: #fff;
		position: absolute;
		-webkit-transition: all .5s;
		   -moz-transition: all .5s;
		    -ms-transition: all .5s;
		     -o-transition: all .5s;
		        transition: all .5s;
	}

	body>header #menu-button>div:nth-child(1){
		top: 33.33%;
		left: 15px;
		-webkit-transform: translate(0%,0%);
		   -moz-transform: translate(0%,0%);
		    -ms-transform: translate(0%,0%);
		     -o-transform: translate(0%,0%);
		        transform: translate(0%,0%);
	}

	header>nav .reserve {
	    position: absolute;
	    width: 140px;
	    right: 0;
	    top: 0;
	}

	header>nav .reserve a {
	    padding-top: 1px;
	    background: #FFFF00 url(../svg/icon_calender.svg) 8px center no-repeat;
	    -webkit-background-size: 18px auto;
	    background-size: 18px auto;
	    height: 50px;
	    line-height: 50px;
	    padding-left: 32px;
	    text-align: left;
	}
	body>header #menu-button.active {
	    top: 1px;
	}

	body>header #menu-button.active>div{
	}

		body>header #menu-button.active>div:nth-child(1) {
			top: 50%;
			-webkit-transform: translate(-5%,-50%) rotate(45deg);
			   -moz-transform: translate(-5%,-50%) rotate(45deg);
			    -ms-transform: translate(-5%,-50%) rotate(45deg);
			     -o-transform: translate(-5%,-50%) rotate(45deg);
			        transform: translate(-5%,-50%) rotate(45deg);
		}
	body>header #menu-button>div:nth-child(2){
		top: 50%;
		left: 15px;
	}
		body>header #menu-button.active>div:nth-child(2) {
			opacity: 0;
		}
	body>header #menu-button>div:nth-child(3){
		top: 67%;
		left: 15px;
		-webkit-transform: translate(0%,0%);
		   -moz-transform: translate(0%,0%);
		    -ms-transform: translate(0%,0%);
		     -o-transform: translate(0%,0%);
		        transform: translate(0%,0%);
	}
		body>header #menu-button.active>div:nth-child(3) {
			top: 50%;
			-webkit-transform: translate(-5%,-50%) rotate(-45deg);
			   -moz-transform: translate(-5%,-50%) rotate(-45deg);
			    -ms-transform: translate(-5%,-50%) rotate(-45deg);
			     -o-transform: translate(-5%,-50%) rotate(-45deg);
			        transform: translate(-5%,-50%) rotate(-45deg);
		}

/*ロゴ*/
header .logo {
    padding-top: 8px;
}

body>header nav {
	position: static;
	width: auto;
}


body>header nav .menu {
    position: absolute;
    right: -220px;
    left:auto;
    top: 50px;
    padding-top: 40px;
    display: block;
    background:rgba(252,252,252,1);
    width: 220px;
    padding-right: 0;
    -webkit-transition: right 0.3s ease;
    -moz-transition: right 0.3s ease;
    -ms-transition: right 0.3s ease;
    -o-transition: right 0.3s ease;
    transition: right 0.3s ease;
    overflow: auto;
	-webkit-overflow-scrolling: touch;

}

body>header.active nav .menu {
    right: 0;
    -webkit-transition: right 0.3s ease;
    -moz-transition: right 0.3s ease;
    -ms-transition: right 0.3s ease;
    -o-transition: right 0.3s ease;
    transition: right 0.3s ease;
    	-webkit-box-shadow: -3px 0px 10px 0px rgba(0,0,0,0.22);
	-moz-box-shadow: -3px 0px 10px 0px rgba(0,0,0,0.22);
	box-shadow: -3px 0px 10px 0px rgba(0,0,0,0.22);
}



body>header nav .menu>li{
	display: block;
	width: 100%;
}


body>header nav .menu>li>a{
	padding:10px;
	display: block;
	color:#333333;
	font-size: 1.6rem;
	font-weight: bold;

}


/*フッター*/
footer{
	position: relative;
	text-align: left;
	padding: 20px;
	font-size: 	1.4rem;
	color:#fff;
	height: 90px;
}

footer .logo{
	position: absolute;
	display: inline-block;
	left:20px;
	top:28px;
}

footer>nav .menu{
	padding-top: 19px;
	padding-left:220px;
}

footer>nav .menu>li{
	margin: 0 20px;
	display: inline-block;
}
footer .copyright{
	position: absolute;
	right:150px;
	top:37px;
}
/*fixボタン*/
.bottom-fix {
	display: none;
}






/*ページ遷移ボタン*/
#pagetop{
	position: fixed;
	right: 0px;
	bottom: 0px;
	-webkit-transition: opacity .5s ease;
	   -moz-transition: opacity .5s ease;
	    -ms-transition: opacity .5s ease;
	     -o-transition: opacity .5s ease;
	        transition: opacity .5s ease;
	width: 90px;
	height: 90px;
	overflow: hidden;
	z-index: 99;
}

	#pagetop>span{
		position: absolute;
		left: 0px;
		top: 0px;
		display: block;
		width: 90px;
		height: 90px;
		text-align: center;
		-webkit-transition: all .2s ease;
		   -moz-transition: all .2s ease;
		    -ms-transition: all .2s ease;
		     -o-transition: all .2s ease;
		        transition: all .2s ease;
		opacity: 0;
	}

	#pagetop.open>span{
		top: 0px;
		opacity: 1;
	}
		#pagetop>span>span,
		#pagetop>span>a{
			position: relative;
			display: block;
			background: #ffff00;
			width: 90px;
			height: 90px;
			cursor: pointer;
			-webkit-transition: all .4s ease;
			   -moz-transition: all .4s ease;
			    -ms-transition: all .4s ease;
			     -o-transition: all .4s ease;
			        transition: all .4s ease;
			opacity: 1;
		}
			#pagetop>span>a::after{
				content: "";
				position: absolute;
				left: 50%;
				top: 46%;
				width: 15px;
				height: 15px;
				border-top: 3px solid #036DB7;
				border-left: 3px solid #036DB7;
				-webkit-transform: rotate(45deg);
				transform: rotate(45deg);
				-webkit-transform-origin: left top;
				transform-origin: left top;
			}


.big-tel{
	text-align: center;
}
	.big-tel a{
		font-size: 6.8rem;
		font-weight: bold;
		color: #ff0000;
	}

/**********************************************************************************************************************
* TOPページ
**********************************************************************************************************************/

/*トップビジュアル*/
/*.top-visual{
	display: block;
	position: relative;
	left:0;
	top:0;
	height: -webkit-calc(100vh - 233px);
	height: calc(100vh - 233px);
	opacity: 0;
}

	.top-visual>.bg{
		position: absolute;
		top:0;
		left:0;
		width: 100%;
		height: 100%;
	}
	.top-visual .box{
		position: absolute;
		width: 100%;
		height: 100%;
		left: 0;
		top:0;
	}

.top-visual .box .catch-copy{
	position: absolute;
	width: 100%;
	display: block;
	margin:0 auto;
	top: -webkit-calc(50% + 50px );
	top: calc(50% + 50px );
	-webkit-transform: translate(0 , -50%);
	transform: translate(0 ,-50%);
	text-align: center;
	color:#fff;
	opacity: 0;
}
	.top-visual .box .catch-copy .inner{
		width: 100%;
		max-width: 439px;
		min-height: 225px;
		display: inline-block;



.top-visual .box .catch-copy span {
    display: inline-block;
    font-size: 1.8rem;
    padding: 0.5em;
    padding-top: 51px;
}
	.top-visual .box .catch-copy em {
	    font-size: 3.2rem;
	    display: block;
	    line-height: 1.2em;
	    padding: 0.2em 0.2em;
	}
		}*/
.top-main-section .main-visual::after,
.top-main-section .main-visual .top-layer,
.top-main-section .slide-wrap{
	opacity: 0;
}

.top-main-section .main-visual.active,
.top-main-section .slide-wrap.active,
.thumbnails.active,
.top-main-section .main-visual.active::after{
	opacity: 1;
	-webkit-transition: opacity 1s ease-out;
	transition: opacity 1s ease-out;
}

.top-main-section .main-visual.active .top-layer{
	opacity: 1;
	-webkit-transition: opacity 1s cubic-bezier(.5,.36,.86,.6) 0.8s;
	transition: opacity 1s cubic-bezier(.5,.36,.86,.6) 0.8s;

}

/*トップバナー スライダー*/
/*.top-main-section .main-banner{
	position: relative;
	width: 100%;
	margin:60px auto 0;
	opacity: 0;
}

.top-main-section .swiper-slide .bg-img{
	height: -webkit-calc(100vh - 60px);
	height: calc(100vh - 60px);
}

.top-main-section .swiper-pagination{
	z-index: 	1000;
	position: absolute;
	bottom: 0;
	text-align: center;
	width: 100%;
	bottom:50px;
}

.top-main-section .swiper-pagination-bullet {
    width: 18px;
    height: 18px;
    display: inline-block;
    border-radius: 100%;
    background: #BBBBBB;
   
}

.top-main-section .swiper-pagination-bullet-active {
    background: #ffffff;
   
}

.top-main-section .swiper-pagination-bullet {
    margin: 0 8px !important;
}

.top-main-section .swiper-container-horizontal>.swiper-pagination-bullets,
.top-main-section.swiper-pagination-custom, .swiper-pagination-fraction {
    bottom: 34px;
    left: 0;
    width: 100%;

}*/


	.slide-wrap{
		max-width: 1240px;
		margin:110px auto 5px;
		padding:0 20px;
	}

	.slide-wrap .swiper-container{
		-webkit-border-radius: 15px;
		border-radius: 15px;
	}

	.thumbnails{
		opacity: 0;
		display: -ms-flex;
		display: -webkit-flex;
		display: flex;
		max-width: 1210px;
		margin:0 auto 30px;
		overflow: hidden;
	}

	.top-main-section .thumbnails .swiper-pagination-bullet {
	    width: 25%;
	    padding:5px;
	    height: auto;
	    display: inline-block;
	    border-radius: none;
	    background: none;
	    opacity: 1;
	}
	

	.top-main-section .thumbnails .swiper-pagination-bullet img {
		width: 100%;
				-webkit-border-radius: 15px;
		border-radius: 15px;
	}

	.top-main-section .thumbnails .swiper-pagination-bullet {
	    margin: 0px !important;
	}

	.top-main-section .thumbnails  .swiper-pagination-bullet-active {
	    opacity: 0.7;
	}

/*セクションヘッド*/
.top-section-head{
	padding: 60px 0 100px;
	text-align: center;
	background:#ed6517;
}
	.top-section-head .logo02{
		max-width: 360px;
		margin:0 auto;
	}

		.top-section-head .text-box{
			padding: 30px 0 30px 20px;
			margin:0 auto;
			color:#fff;
		}
			.top-section-head .text-box>p {
			    font-size: 2.2rem;
			    line-height: 2.2em;
			    color:#000;
			}

/*トップメインセクション*/
.top-main-section{
	padding-bottom: 80px;
}

/*メインビジュアル*/
.main-section .visual{
	position: relative;
	padding-top: 30%;
	z-index: 1;
}
	.main-section .visual.long{
		padding-top: 45%;
		z-index: 1;
	}
	.main-section .visual .bg{
		position: absolute;
		height: 100%;
		width: 100%;
		left:0;
		top:0;
	}
	.main-section .visual .bg.sp{
		display: none;
	}

	.main-section .visual .headline{
		position: absolute;
		top: 50%;
		left:0;
		margin-top: 2vw;
		color:#fff;
		width: 100%;
		text-align: center;
		font-size: 3rem;
		-webkit-transform: translate(0, -50%);
		transform: translate(0, -50%);
	}

/*セクションヘッド*/
.section-head{
	padding: 40px 0 60px;
	text-align: center;
	background:#ed6517;
	color:#000000;
}
	.section-head .logo02{
		max-width: 287px;
		margin:0 auto;
	}

		.section-head .text-box{
			padding: 30px 0 30px 20px;
			margin:0 auto;
		}
			.section-head .text-box>p {
			    font-size: 2rem;
			    line-height: 1.8em;
			}
			.section-head .text-box .headline{
				font-size: 2.6rem;
				padding: 30px 0 0;
				font-weight: bold;
			}

		.section-head .catch-copy{
			text-align: center;
			font-size: 2.4rem;
			line-height: 1.8em;
			font-weight: bold;
		}


.ch-section-head{
	padding: 30px 0;
	text-align: center;
}


/***********************************************************
* キャビNET
***********************************************************/

.about .btn-area{
	text-align: center;
	margin:30px 0 0;
}

.about .headline-lg{
	margin-bottom: 20px;
}

.about .section-top-area{
	padding:50px 0;
	background: #EEF9FF;
	text-align: center;
}
.about .section-top-area .point>div{
	padding: 0 10px;
	position: relative;
}

.about .section-top-area .point>div::after{
	content:"";
	position: absolute;
	display: block;
	width: 1px;
	height: 100px;
	top:60px;
	left:0;
	border-left:1px dashed #036DB7;
}

.about .section-top-area .point>div:last-child::before{
	content:"";
	position: absolute;
	display: block;
	width: 1px;
	height: 100px;
	top:60px;
	right:0;
	border-left:1px dashed #036DB7;
}

.about .section-top-area .ico{
	margin-bottom: 10px;
}

.about .section-top-area .point .title{
	line-height: 30px;
	white-space: nowrap;
	font-size: 2rem;
}
.about .section-top-area .point .text-box{
	white-space: nowrap;
	font-size: 1.4rem;
}


.about .section-main-area{
	color:#fff;
	padding:80px 0 60px;
	background: #505050;
}
.about .section-main-area .figure-block{
	text-align: center;
	padding:20px 0;
	margin-bottom: 20px;
}
/*アニメーション*/
.about .section-main-area .headline-lg,
.about .section-main-area .text-block,
.about .section-main-area .figure-block{
	opacity: 0;
	-webkit-transition: opacity 1s cubic-bezier(.5,.36,.86,.6);
	transition: opacity 1s cubic-bezier(.5,.36,.86,.6);
}

.about .section-main-area.animated .headline-lg{
	opacity: 1;
	-webkit-transition: opacity 1s cubic-bezier(.5,.36,.86,.6);
	transition: opacity 1s cubic-bezier(.5,.36,.86,.6);
}
.about .section-main-area.animated .text1{
	opacity: 1;
	-webkit-transition: opacity 1s cubic-bezier(.5,.36,.86,.6) 0.3s;
	transition: opacity 1s cubic-bezier(.5,.36,.86,.6) 0.3s;
}

.about .section-main-area.animated .figure-block{
	opacity: 1;
	-webkit-transition: opacity 1s cubic-bezier(.5,.36,.86,.6) 0.6s;
	transition: opacity 1s cubic-bezier(.5,.36,.86,.6) 0.6s;
}
.about .section-main-area.animated .text2{
	opacity: 1;
	-webkit-transition: opacity 1s cubic-bezier(.5,.36,.86,.6) 0.9s;
	transition: opacity 1s cubic-bezier(.5,.36,.86,.6) 0.9s;
}


/***********************************************************
* 特徴
***********************************************************/

.feature{
	color:#fff;
	padding: 80px 0 30px;
}


.feature .headline-lg{
	margin-bottom: 30px;
}

.feature .room-picutre{
	max-width: 1240px;
	width: auto;
	padding:0 20px;
	margin:0 auto 30px;
}

.feature .room-picutre figure{
	position: relative;
	width: 50%;
}

.feature .room-picutre figure figcaption{
	position: absolute;
	left:10px;
	bottom:10px;
	font-size: 2.2rem;
}

.feature .point>ul>li{
	max-width: 262px;
	margin: 30px 3.5% 20px;
}

.feature .point>ul>li .ico{
	text-align: center;
	margin-bottom: 20px;
}


.feature .point>ul>li .title{
	text-align: center;
	font-size: 2rem;
	margin-bottom: 5px;
}
.feature .point>ul>li .text-box{
	font-size: 1.4rem;
}

.feature .fadeUp>div {
    opacity: 0;
    -webkit-transform: translate3d(0, 30%, 0);
    transform: translate3d(0, 30%, 0);
    -webkit-transition: opacity 0.8s cubic-bezier(0.155, 0.910, 0.695, 0.950) , transform 0.8s cubic-bezier(0.155, 0.910, 0.695, 0.950);
    transition: opacity 0.8s cubic-bezier(0.155, 0.910, 0.695, 0.950) , transform 0.8s cubic-bezier(0.155, 0.910, 0.695, 0.950);
}
.feature .fadeUp.animated>div {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -webkit-transition: opacity 1s cubic-bezier(0.155, 0.910, 0.695, 0.950) , transform 1s cubic-bezier(0.155, 0.910, 0.695, 0.950);
    transition: opacity 1s cubic-bezier(0.155, 0.910, 0.695, 0.950) , transform 1s cubic-bezier(0.155, 0.910, 0.695, 0.950);
}

.feature .point>ul>li:nth-child(3n-1)>div.animated>div{
	transition-delay: 0.3s !important;
}
.feature .point>ul>li:nth-child(3n)>div.animated>div{
	transition-delay: 0.6s !important;
}


/***********************************************************
* ご利用の流れ
***********************************************************/
.howto{
	padding:80px;		
}
.howto .headline-lg{
	margin-bottom: 20px;
}


.howto-flow>ol>li{
	position: relative;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	width: 100%;
	margin-bottom: 50px;
	padding: 20px;
	border:1px solid #DDDDDD;
}

.howto-flow>ol>li .arrow{
	content:"";
	position: absolute;
	display: block;
	bottom:-31px;
	left:50%;
	margin-left: -31px;
	width: 62px;
	height: 62px;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	background:#026CB7;
}

.howto-flow>ol>li .arrow::before {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    margin-top: -12px;
    margin-left: -9px;
	width: 14px;
	height: 14px;
	border-bottom: solid 4px #fff;
	border-left: solid 4px #fff;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}


.howto-flow>ol>li>figure,
.howto-flow>ol>li>.text-box{
	display: table-cell;
}
.howto-flow>ol>li>.text-box{
	padding:10px 20px;
}


.howto-flow>ol>li{
	position: relative;
	/*padding: 15px 10px 15px 70px;*/
}

.howto-flow>ol>li .title {
    position: relative;
    font-size: 2.2rem;
    padding-left: 55px;
    padding-top: 15px;
    color:#016CB7;
	font-weight: bold;
	margin-bottom: 20px;

}

.howto-flow>ol>li .title>span{
	position: absolute;
	height: 47px;
	width: 47px;
	left:0px;
	top:10px;
	line-height: 47px;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	font-size: 2.7rem;
	text-align: center;
	font-weight: bold;
	background: #FFFF00;
}


/***********************************************************
* 料金システム
***********************************************************/
.price{
	padding: 80px 0;
	color:#fff;
}

.price .catch{
	text-align: center;
	font-size: 	3.2rem;
    margin-bottom: 14px;
}
.price .catch em{
	font-size: 3.6rem;
	font-weight: bold;
}

.price .tbl-wrap {
	margin-bottom:10px;
}
.price .tbl-wrap.animated {
	transition-delay: 0.5s !important;
}
.system-div .arw{display: none;}

.tbl-a{
	width: 100%;
	background: #fff;
	text-align: right;
	table-layout: fixed;
	font-size: 1.8rem;
	margin-bottom: 5px;
}

.tbl-a>thead>tr>th,
.tbl-a>tbody>tr>th,
.tbl-a>tbody>tr>td{
	padding: 0.6em 0.8em 0.5em;
	color:#333333;
	font-weight: bold;
	vertical-align: middle;
	border: 1px solid #036DB7;
}

.tbl-a>thead>tr>th,
.tbl-a>tbody>tr>th{
	text-align: center;
	color: #036DB7;
}
.tbl-a>thead>tr>th em{
	display: block;
	font-size: 1.1rem;
}
.tbl-a>thead>tr>th.corner,
.tbl-a>tbody>tr>th{
	background:#CFEBFE;
	font-size: 1.8rem;
}
.tbl-a>tbody>tr>td{
	font-size: 1.8rem;
	padding-left: 0.5em;
}

.tbl-a>tbody>tr>td:nth-child(2){
	text-align: center;
	font-size: 1.4rem;
}
.tbl-a>tbody>tr:last-child>td:nth-child(2){
	padding: 0;
	line-height: 1em;
}

.tbl-a .single{
	display: inline-block;
	background: url(../svg/ico_single.svg) 0 center no-repeat;
	padding: 5px 5px 5px 30px;
}
.tbl-a .pair{
	display: inline-block;
	background: url(../svg/ico_pair.svg) 0 center no-repeat;
	padding: 5px 5px 5px 35px;
}

.tbl-a .sale{
	display: flex;
	font-weight:bold;
	color:#fb0000;
	white-space: nowrap;
	align-items: center;
	justify-content: space-between;
}

.tbl-a .sale>span{
	font-size: 1.4rem;
}

.tbl-a .sale i{
	display: block;
	margin-left: 0.1em;
	font-size: 1.8rem;
}

.bottom-cell{
	padding: 0.5em;
	font-size: 2.1rem;
	background:#CFEBFE;
	color:#036DB7;
	border:1px solid #036DB7;
	font-weight: bold;
	text-align: center;
	margin-bottom: 30px;
}
.bottom-cell>em{
	font-size: 2.3rem;
	padding-left: 1em;
}

.price .other-charge{
	margin-top: 10px;
	margin-bottom: 5px;
}

.price .other-charge>li{
	width:33%;
	margin-right: 0.5%;
	border:1px solid #fff;
	padding-left: 5px;
	margin-bottom: 5px;
	font-size: 1.6rem;
	font-weight: bold;
	padding: 0.5em 0.8em;
}

.price .other-charge>li:nth-child(3n){
	margin-right: 0;
}
.price .other-charge>li .pay{
	float:right;
	font-size: 1.8rem;
}

.price .service-list-inner>ul{
	padding:30px 20px;
	width: 25%;
}

.apply-block{
	margin-top: 25px;
	margin-bottom: 30px;
	color:#333333;
	font-size: 2.1rem;
	background: #fff;
}
.apply-block>div{
	position:relative;
	text-align: center;
	padding: 20px 10px 20px 130px;
}

.apply-block>div .num {
    font-size: 4.5rem;
    font-weight: bold;
    line-height: 1em;
}

.apply-block>div dl>dt{
	font-weight: bold;
	font-size: 2.1rem;
	margin-bottom: 10px;
	line-height: 1em;
}


.apply-block>div.group2{
	position: relative;
}
.apply-block>div.group2::after{
	content:"";
	position: absolute;
	display: block;
	width: 1px;
	height: 88px;
	top:20px;
	left:0;
	background: #CCCCCC;
}

.apply-block>div img {
    position: absolute;
    left: 27px;
    top: 25px;
}

.apply-block .btn-a{
	max-width: 261px;
	font-size: 1.8rem;
}
.price .service-list{
	padding-top: 50px;
}

.price .service-list .headline-m{
	margin-bottom: 30px;
}


/***********************************************************
* アクセス・マップ
***********************************************************/
.access{
	padding:80px 20px;
}
.access .root-box{
	padding: 10px;
	margin-bottom: 40px;
}

.access .root-box>dl{
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	width: 100%;
	overflow: hidden;
	border-bottom:1px dashed #036DB7;
}
.access .root-box>dl>dt,
.access .root-box>dl>dd{
	padding: 0.8em;
	vertical-align: top;
}
.access .root-box>dl>dt{
	color:#026CB7;
	width: 140px;
	flex-basis: 140px;
	padding-right: 0;
	font-size: 1.6rem;
	font-weight: bold;
}
.access .root-box>dl>dd{
	width:-webkit-calc(100% - 140px);
	width:calc(100% - 140px);
}

.access .root-box>dl>dd>span{
	position: relative;
	padding-left: 1em;
	display: block;
}
.access .root-box>dl>dd>span::after{
	content:"・";
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top:0;
	left:0;
}


.access .map-wrap{
	max-width: 1200px;
	margin: 30px auto 60px;
	position: relative;
	padding-top: 35%;
}
.access .map-wrap iframe{
	position: absolute;
	left:0;
	top:0;
	width: 100%;
	height: 100%;
}
.access .near-spots{
	margin: 30px 0 0;
}

.access .near-spots .img-box{
	padding: 0 20px;
}
.access .near-spots .text-box{
	padding-right :10px;
}
.access .near-spots .text-box>dl>dt{
	margin-bottom: 8px;
	font-size: 1.6rem;
	color:#026CB7;
	font-weight: bold;
}
.access .near-spots .text-box>dl>dd{
	font-size: 1.4rem;
}

.access .all-map.animated{
	transition-delay: 0.5s !important;
}



/***********************************************************
* 良くある質問
***********************************************************/
.faq{
	padding: 80px 0;
}

.faq .qa-box{
	margin-bottom: 30px;
}

.faq .qa-box>li{
	width: 49%;
	margin-right: 2%;
	margin-bottom: 10px;

}
.faq .qa-box>li>dl>dt{
	position: relative;
	padding:0.8em 45px 0.8em 45px;
	background: #fff;
	font-size: 1.4rem;
	font-weight: bold;
	cursor: pointer;
}
.faq .qa-box>li>dl>dt::after{
	content: "";
	position: absolute;
	display: block;
	top:50%;
	right:20px;
	width: 0.6em;
	height: 0.6em;
	margin-top: -0.6em;
	border-bottom: solid 3px #036DB7;
	border-left: solid 3px #036DB7;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.faq .qa-box>li>dl>dt.open::after{
	margin-top: -0.3em;
	border-bottom: solid 3px #036DB7;
	border-left: solid 3px #036DB7;
	-webkit-transform: rotate(-225deg);
	transform: rotate(-225deg);

}

.faq .qa-box>li>dl>dt>span,
.faq .qa-box>li>dl>dd>span{
	position: absolute;
	font-size: 2rem;
	left:13px;
	top:11px;
	font-weight: bold;
	color: #036DB7;
	font-family:'Noto Sans Japanese','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro' !important;
}

.faq .qa-box>li:nth-child(2n){
	margin-right: 0;
}

.faq .qa-box>li>dl>dd{
	position: relative;
	padding: 0.5em 0.8em 1em;
	padding-left: 45px;
	background: #fff;
	display: none;
	font-size: 1.4rem;
}
.faq .headline{
	margin-bottom: 15px;
}


/***********************************************************
*問合せ
***********************************************************/
.contact{
	padding: 100px 0;
}

.contact-note{
	color:#fb0000;
	margin-bottom: 1em;
	font-size: 2.4rem;
	font-weight: bold;
}

.contact .headline-lg{
	margin-bottom: 50px;
}

.contact .submit-area{
	padding: 50px 0;
	text-align: center;
}

.contact .mark-list{
	margin:1em auto;
}
.contact .mark-list>li{
	position: relative;
	padding-left: 1em;
}
.contact .mark-list>li::before{
	content:"・";
	position: absolute;
	display: block;
	width: 1em;
	height: 1em;
	top:0;
	left:0;
}

.contact .caution{
	margin-bottom: 30px;
}



/***********************************************************
* ご利用の流れ
***********************************************************/
/* .flow .main-contents{
 	padding: 64px 0 100px;
 }

.flow-block {
	padding: 30px 0 ;
	border-top:1px solid #f1f0ef;
	border-bottom:1px solid #f1f0ef;
}
	.flow-block .img-box{
		-webkit-flex-basis:335px;
		flex-basis:335px;
		width: 335px;
	}
	.flow-block .text-box{
		padding: 20px 0px 20px 40px;
		width: 61.5%;
	}
		.flow-block .text-box .headline{
			position: relative;
			padding: 20px 20px 20px 70px;
			font-size: 2.2rem;
			color:#001934;
		}
			.flow-block .text-box .headline span{
				position: absolute;
				left:0;
				top:7px;
			}

.flow-arrow{
	padding: 15px 0 20px;
	text-align: center;
}
	.flow-arrow>span{
		display: inline-block;
		width:28px;
		height:28px;
		border-bottom: solid 3px #ed6517;
		border-right: solid 3px #ed6517;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}*/

/***********************************************************
* ご利用の流れ
***********************************************************/
/*.howto .main-contents{
	margin-bottom: 80px;
}

.howto .ch-section{
	padding: 30px 0 0;
}
.exp-box{
	padding: 30px 0 45px;
	text-align: center;
}
.case-list{
	padding: 0 20px 50px;
}

	.case-list>li{
		position: relative;
		border-bottom:1px solid #58616e;
		padding: 48px 10px 40px;
		width: 46%;
		margin:0 2%;
		text-align: center;
	}
	.case-list>li:nth-child(1),
	.case-list>li:nth-child(2){
		border-top:1px solid #58616e;
	}

	.case-list>li::before,
	.case-list>li::after{
		content:"";
		position: absolute;
		display: block;
		width: 1px;
		height: -webkit-calc( 100% - 40px );
		height: calc( 100% - 40px );
		top:20px;
		right:-19px;
		background: #58616e;
	}

		.case-list>li::before{
			top:20px;
			left:-20px;
			right:auto;
		}
			.case-list>li:nth-child(odd)::after{
				display: none;
			}
			.case-list>li:nth-child(2n)::bofore{
				display: none;
			}

			.case-list>li>.title,
			.case-more .inner .title{
				margin: 20px 0;
				font-size: 2.2rem;
				font-weight: bold;
				color:#001934;
			}
			.case-list>li>.img-box{
				margin: 20px 0;
			}
			.case-list>li p{
				
			}

	.inter-copy-box{
		position: relative;
		font-weight: bold;
		text-align: center;
		display: block;
		z-index: 1;
		margin-bottom: 33px;
	}
		.inter-copy-box p{
			position: relative;
			font-size: 2.4rem;
			margin-bottom: -10px;
			z-index: 3;
		}
			.inter-copy-box img{
				position: relative;
				z-index: 2
			}

	.case-more {
		padding: 0 20px;
	}
		.case-more .inner {
			display: -ms-flex;
			display: -webkit-flex;
			display: flex;
			width: 100%;
			overflow: hidden;
			padding: 54px 0;
			border-top:1px solid #58616e;
			border-bottom:1px solid #58616e;
			margin-bottom: 97px;
		}

		.case-more .inner .icon-box{
			width: 19%;
			padding-top: 18px;
			text-align: center;
		}

		.case-more .inner .img-box{
			width: 33%;
		}
		.case-more .inner .text-box{
			width: 51%;
			padding: 0 30px;
		}

	.drw-heading{
		position: relative;
		text-align: center;
		display: block;
		color:#001934;
	}
	.facility-list{
		margin: 30px 0 0;
	}
		.facility-list>li{
			width: 22.9%;
			margin-right: 2.7%;
			margin-bottom:30px;
		}
	.facility-list>li:nth-child(4n){
		margin-right: 0;
	}
	.facility-list>li>figure>.caption{
		color:#001934;
		display: block;
		padding: 12px 0 8px;
		font-size: 1.6rem;
		text-align: center;
	}

	.facility-list>li p{
		font-size: 1.2rem;
		font-weight: bold;
	}

.form-tbl .select-box.stores {
    max-width: 350px;
}
*/
.formTbl{
	width: 100%;
}

.formTbl .input{
-moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
  border: 0;
  margin: 0;
  padding: 0;
  background: none transparent;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  box-sizing: content-box;
  -moz-appearance: none;
  text-indent: 0.01px;
  text-overflow: '';
}




.formTbl * {
  outline: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}


.formTbl>tbody>tr>th,
.formTbl>tbody>tr>td{
	border: 5px solid #fff;
	text-align: left;
	vertical-align: top;
}
.formTbl>tbody>tr>th{
	width: 355px;
	color:#fff;
	padding:  15px 20px;
	background: #036DB7;
}

.formTbl>tbody>tr>td{
	background: #EEEEEE;
}


.formTbl .select-box{
	position: relative;
	margin-bottom: 8px;
	width: 100%;
	background: transparent;
	overflow:hidden;
}
.formTbl .select-box::after{
	content:"";
	position: absolute;
	display: block;
	width: 0.5em;
	height: 0.5em;
	top:5px;
	right:25px;
	border-bottom: solid 3px #333333;
	border-left: solid 3px #333333;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	pointer-events: none;
}

.formTbl .select-box select{
	width: 100%;
	background: transparent;
	border: none;
	height: 60px;
	line-height: 60px;
	font-weight: normal;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	padding-left: 20px;
	font-size: 1.5rem;
}


.formTbl .select-box select::-ms-expand {
  display: none;
}

.formTbl .block2,
.formTbl .block4{
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	width: 100%;
	overflow: hidden;
}
.formTbl .block2>label,
.formTbl .block2>div{
	width: 50%;
	display: block;
	height: 60px;
	overflow:hidden;
}
.formTbl .block2>label:nth-child(1),
.formTbl .block2>div:nth-child(1){
	border-right:5px solid #fff;
}

.formTbl .block4>label{
	position: relative;
	height: 60px;
	width: 25%;
	text-align: left;
}
.formTbl .block4>label:nth-child(1)::after,
.formTbl .block4>label:nth-child(3)::after{
	display: none;
}

.formTbl .block4>label::after {
    content: "";
    position: absolute;
    display: block;
    width: 0.5em;
    height: 0.5em;
    top: 21px;
    right: 25px;
    border-bottom: solid 3px #333333;
    border-left: solid 3px #333333;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.formTbl .block4>label:nth-child(1){
	height: 60px;
}
.formTbl .block4>label:nth-child(2){
	border-right:5px solid #fff;
}

.formTbl .block4>label>span{
	display: inline-block;
	padding-right: 5px;
}
.formTbl .block4>label .time{
	display: inline-block;
	width: 70px;
	padding: 0;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	display: inline-block;
	line-height: 1em;
	border:none;
	background: none;
	font-size: 1.6rem;
}

.formTbl .block4>label .date{
	margin-top: 18px;
	margin-left:15px;
	width: 90%;
	display: inline-block;
	font-size: 1.6rem;
	line-height: 1.5em;
	border:none;
	font-family: inherit;
	/*background: none;*/
}


.formTbl .input{
	height: 60px;
	line-height: 60px;
	width: 100%;
	text-indent: 1em;
	/*padding:0 20px;*/
}

.formTbl .reserve-group{
	text-align: left;
}

.formTbl .reserve-group>label{
}


.formTbl .reserve-group span{
	display: inline-block;
	padding:0 20px;
}

.formTbl .reserve-group .select-box {
	margin-bottom:0;
}


.formTbl .reserve-group .people{
	font-size: 1.8rem;
	line-height: 60px;
}


/*ラジオ*/

.formTbl .radio-group label{
	font-size: 1.8rem;
}
.formTbl .radio-list label{
	display:block;
	padding-right: 1.5em;
}
.formTbl input[type="radio"],
.formTbl input[type="checkbox"]{
	display: none;
	font-size: 1.8rem;
}
.formTbl input[type="radio"] + span,
.formTbl input[type="checkbox"] + span{
	position: relative;
	display:block;
	padding-left: 50px;
	height: 60px;
	line-height: 60px;
	cursor: pointer;
}
	.formTbl input[type="radio"] + span::before,
	.formTbl input[type="checkbox"] + span::before{
		content: "";
		position: absolute;
		left: 18px;
		top: 50%;
		width: 24px;
		height: 24px;
		background: #fff;
		-webkit-border-radius: 2px;
		border-radius: 2px;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	.formTbl input[type="radio"] + span::before{
		-webkit-border-radius: 50%;
		border-radius: 50%;
	}
/*チェック後*/
.formTbl input[type="radio"]:checked + span,
.formTbl input[type="checkbox"]:checked + span{
	font-weight: bold;
}
	.formTbl input[type="radio"]:checked + span::before,
	.formTbl input[type="checkbox"]:checked + span::before{
		background: #fff;
	}
.formTbl input[type="radio"]:checked + span::after{
	content: "";
	position: absolute;
	left: 29px;
	top: 50%;
	width: 24px;
	height: 24px;
	background: #036DB7;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	-webkit-border-radius: 50%;
	border-radius: 50%;
}
.formTbl input[type="checkbox"]:checked + span::after{
	content: "";
	position: absolute;
	left: 1px;
	top: 50%;
	width: 5px;
	height: 10px;
	margin-top: -7px;
	border-right: 2px solid #f96900;
	border-bottom: 2px solid #f96900;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transform-origin: right bottom;
	transform-origin: right bottom;
}


.formTbl textarea{
	width: 100%;
	height: 174px;
	-webkit-appearance: none;
	appearance: none;
	-webkit-border-radius: 0px;
	border-radius: 0px;
	border:none;
	background: none;
	padding: 1.2em;
}




   /* Webkit */
    ::-webkit-input-placeholder {
        color:  #A9A9A9;
        opacity: 1;
    }
    /* Firefox 18 以前 */
    :-moz-placeholder {
        color:  #A9A9A9;
    }
    /* Firefox 19 以降 */
    ::-moz-placeholder {
        color:  #A9A9A9;
        opacity: 1;
    }
    /* IE 10 以降 */
    :-ms-input-placeholder {
        color:  #A9A9A9;
    }
/
    :placeholder-shown {
        color:  #A9A9A9;
    }


/*confirm*/
.formTbl.confirm label{
	display: block;
	width: 100%;
	padding: 1em;
}
.formTbl.confirm .block2>label:nth-child(1){
	border-right: none;
}
.formTbl.confirm .block2>div{
	padding: 1em;
}
.formTbl.confirm .block4>label::after{
	display: none;
}
.submit-area.confirm form{
	padding: 0 10px;
}
.submit-area.confirm .btn-b{
	padding: 0.7em 3em;
}

/*complete*/
.completeMsg{
	text-align: center;
}
	.completeMsg h2{
		font-size: 2.4rem;
		margin-bottom: 1em;
	}
	.completeMsg .msg{
		margin-bottom: 2em;
	}
	.completeMsg .atn{
		font-size: 1.2rem;
		line-height: 1.6em;
		text-align: left;
	}
	.completeMsg a{
		display: inline-block;
		margin-top: 50px;
	}

.errBox{
	margin-bottom: 1em;
}
	.errBox h3,
	.errBox span,
	.errBox em{
		color: #ff0000;
	}


@keyframes flash{
	0% { opacity: 0.2; }
	50% { opacity: 1; }
	100% { opacity: 0.2; }
}
@-webkit-keyframes flash{
	0% { opacity: 0.2; }
	50% { opacity: 1; }
	100% { opacity: 0.2; }
}
@-moz-keyframes flash{
	0% { opacity: 0.2; }
	50% { opacity: 1; }
	100% { opacity: 0.2; }
}

/*テーブル*/
.form-tbl,
.form-tbl tbody{
	display: table;
	width: 100%;
}

.form-tbl th,
.form-tbl td{
	display: table-cell;
	width: auto;
}
.wrap .form-tbl{
	width: 100%;
	margin-left: 0;
}
.form-tbl th{
	width: 250px;
	padding: 15px 20px;
	font-size: 1.6rem;
	line-height: 1.6em;
	background: #000;
	background-size: 8px;
	border-bottom: 5px solid #fff;
	vertical-align: top;
	color:#fff;
	text-align: left;
}
.form-tbl td{
	text-align: left;
	background: #f8f8f8;
	padding: 15px 15px;
	border-bottom: 5px solid #fff;
}

.form-tbl .select-box select {
    background: #fff;
    border: none;
    height: 35px;
    line-height: 35px;
    font-weight: normal;
}

/*ラジオ*/
.form-tbl .radio-list{
	padding-right: 100px;
}
.form-tbl .radio-list label{
	padding-right: 35px;
}
.form-tbl input[type="radio"] + span::before,
.form-tbl input[type="checkbox"] + span::before{
	width: 16px;
	height: 16px;
	border: 2px solid #b5b5b5;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}
	.form-tbl input[type="radio"] + span::before{
		-webkit-border-radius: 50%;
		border-radius: 50%;
	}
/*チェック後*/
.form-tbl input[type="radio"]:checked + span::before,
.form-tbl input[type="checkbox"]:checked + span::before{
	border: 2px solid #f96900;
}

.form-tbl .select-box{
	border: 1px solid #d5d5d5;
	margin-bottom: 8px;
}
	.form-tbl .select-box.stores{
		max-width: 350px;
	}
.form-tbl .select-box select{
	background: #fff;
	border: none;
	height: 35px;
	line-height: 35px;
	font-weight: normal;
}
.form-tbl textarea{
	max-width: 364px;
	padding: 0.5em 1em;
	margin: 0;
	height: 186px;
	resize: vertical;
	border: 1px solid #d5d5d5;
	-webkit-border-radius: 0px;
	border-radius: 0px;
	-webkit-appearance: none;
	appearance: none;
}

.form-tbl input[type="text"]{
	max-width: 350px;
	height: 35px;
	line-height: 35px;
}
.form-tbl input[type="text"].txt1{
	max-width: 200px;
}
.form-tbl input[type="text"].txt2{
	max-width: 74px;
}
.form-tbl input[type="text"].txt3{
	max-width: 112px;
}
.form-tbl input[type="text"].txt4{
	max-width: 100%;
}
.form-tbl input[type="text"].txt5{
	max-width: 150px;
}

/*注意*/
.attention-box{
	padding: 30px 0;
}
	.attention-box *{
		font-size: 1.3rem;
		line-height: 1.5em;
	}
	.attention-box .title{
		font-size: 1.5rem;
		line-height: 1.8em;
		margin-bottom: 0.5em;
	}
	.attention-box li{
		padding-left: 1em;
		text-indent: -1em;
		margin-bottom: 0.5em;
	}

.g-recaptcha>div{
	margin: 0 auto;
}


.contact-agree{
	border: 3px solid #d5d5d5;
	padding: 15px;
	text-align: center;
}
	.contact-agree p{
		margin-bottom: 1em;
	}
	.contact-agree .form-tbl .radio-list{padding: 0;}
	.contact-agree .form-tbl .radio-list label:last-child{padding-right: 0px;}

.btn-a[disabled="disabled"]{
	opacity: 0.4;
	cursor: default;
}


/*2019/1/改修*/
/***********************************************************
* ショップインフォメーション
***********************************************************/
#top-shopinfo{
	max-width: 1240px;
	margin: 0 auto;
	padding: 0 20px;
	padding-bottom: 40px;
}
#top-shopinfo .title-shopinfo{
	color:#016CB7;
	text-align: center;
	font-size: 3.7rem;
}
.info-slider{
	position: relative;
	background: #FDFE1F;
	min-height: 88px;
	padding: 0 90px;
	z-index: 1;
	margin-bottom: 10px;
}



#top-shopinfo .swiper-container{
	position: relative;
	z-index: 1;
}
#top-shopinfo .swiper-wrapper{
	margin: 10px auto;

}

#top-shopinfo .swiper-wrapper .swiper-slide{
	text-align: center;
	padding: 20px 0;
}
#top-shopinfo .swiper-wrapper .swiper-slide a{
	color:#006CB7;
	display: inline;
	vertical-align: middle;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.4em;
}
#top-shopinfo .swiper-wrapper .swiper-slide a>span{
	display: inline-block;
	position: relative;
	background: #FF0000;
    padding: 7px 25px 5px 10px;
	margin-left: 0px;
	text-align: center;
	font-weight: normal;
	font-size: 1.9rem;
	line-height: 1em;
	color:#fff;
}
#top-shopinfo .swiper-wrapper .swiper-slide a>span::after{
	content: "";
	position: absolute;
	display: block;
	top:50%;
	right:8px;
	margin-top: -6px;
	width: 10px;
	height: 10px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);

}

#top-shopinfo .swbtn-l,
#top-shopinfo .swbtn-r{
	position: absolute;
	top: 50%;
	right: 10px;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	width: 61px;
	height: 61px;
	background: #006CB7;
	border-radius:50%;
	-webkit-border-radius:50%;
	z-index: 10;
	cursor: pointer;
}


#top-shopinfo .swbtn-l{
	right:auto;
	left:10px;
}
#top-shopinfo .swbtn-l::after,
#top-shopinfo .swbtn-r::after{
	content: "";
	position: absolute;
	display: block;
	margin-top: -9px;
	top:50%;
	right:24px;
	width: 13px;
	height: 13px;
	border-top: solid 5px #fff;
	border-right: solid 5px #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

#top-shopinfo .swbtn-l::after{
	right:auto;
	left:24px;
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
}
/*モーダル*/
.lity-close {
    position:absolute;
    top: -65px;
    font-size: 72px;
    line-height: 72px;
    text-shadow:none;
    border: 0;
    background: none;
    outline: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.lity {
    z-index: 9990;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    white-space: nowrap;
    background: #0b0b0b;
    background: rgba(0, 0, 0, 0.7);
}

.lity .lity-close{
	opacity: 0;
}

	.lity .lity-close.ready{
		-webkit-transition: opacity 0.5s ease 0.5s ;
		transition: opacity 0.5s ease 0.5s;
		opacity: 0;
	}

	.lity .lity-close.ready.active{
		-webkit-transition: opacity 0.5s ease 0.5s ;
		transition: opacity 0.5s ease 0.5s;
		opacity: 1;
	}


.lity-close:hover, .lity-close:focus, .lity-close:active, .lity-close:visited {
    position:absolute;
    top: -65px;
    font-size: 72px;
    line-height: 72px;
    text-shadow:none;
    border: 0;
    background: none;
    outline: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}
/*ツィッターバナー*/
.tw-banner{
	text-align: center;
}
.tw-banner li{
	display: inline-block;
	margin: 0px 10px 30px;
}
.hft_p ul{
list-style-type: disc;
margin-left: 1.5em;
}
h2.hft_ttl{
	max-width: 1200px;
	margin: 0 auto;
	text-align: center;
	padding: 0 10px;
}
h2.hft_ttl img{
}



/***********************************************************
* こんな方におすすめ
***********************************************************/
#foryou{
	background: #0A6DB5;
	padding-bottom:70px;
}

#foryou .inner{
	max-width: 1240px;
	margin:0 auto;
	padding: 0 20px;
}
#foryou .head-block{
	text-align: center;
	background: #FDFE1F;
	font-size: 3.7rem;
	color:#006CB7;
	font-weight: 900;
	padding:15px 10px;
}

#foryou .conts-block{
	padding: 22px 18px;
	background: #fff;
}

#foryou .conts-block .img-list{
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	width: 100%;
	overflow: hidden;
}
#foryou .conts-block .img-list>li{
	width: 24%;
	margin-right: 1.3%;
}
#foryou .conts-block .img-list>li:nth-child(4n){
	margin-right: 0;
}
#foryou .conts-block .img-list>li figcaption{
	display: block;
	text-align: center;
	font-weight: bold;
	padding: 10px;
	font-size: 2rem;
	color:#006CB7;
}

.bnr_area_new{
	max-width: 700px;
	margin: 0 auto;
}
.bnr_area_new li{
	display: inline-block;
	/*width: 700px;*/
}
.bnr_area_new li a{
	display: block;
	margin: 5px;
}
.bnr_area_new li a img{width: 100%;}

/***********************************************************
* フランチャイズページ
***********************************************************/

#franchise{
	opacity: 0;
	padding-top: 70px;
	-webkit-transition: opacity 0.8s cubic-bezier(.5,.36,.86,.6) 0.3s;
	transition: opacity 0.8s cubic-bezier(.5,.36,.86,.6) 0.3s;
}
#franchise.openfade{
	opacity: 1;
}

#franchise .common-tbl1{
	width: 100%;
	margin-bottom: 50px;
}
#franchise .common-tbl1.mgn{
	margin-bottom: 0;
}

#franchise .franchise-headline2{
	margin-bottom: 15px;
}


#franchise p{
	font-size: 1.4rem;
}
	#franchise .franchise-title{
		margin-bottom: 40px;
	}
	#franchise .franchise-title em{
		font-size: 4.2rem;
		text-align: center;

		display: block;
		line-height: 1.3em;
	}
	#franchise .franchise-title span{
		text-align: center;
		line-height: 1em;
		font-size: 1.8rem;
		display: block;
		font-weight: normal;
	}
	#franchise .txt-block{
		margin:10px 0;
	}

	#franchise 	.system-outline{
		margin-top: 40px;
	}

	.common-tbl1{

	}
	.common-tbl1>tbody>tr{}
	.common-tbl1>tbody>tr>th{
		padding:0.7em 1.2em;
		border:solid 1px #CCCCCC;
		background: #F6F6F6;
		width: 30%;	
		white-space: nowrap;
		text-align: left;
	}
	.common-tbl1>tbody>tr>td{
		padding:0.7em 2em;
		border:solid 1px #CCCCCC;
		font-size: 1.4rem;
	}
	.common-tbl1>tbody>tr>td .min-tbl{
		display: table;
		width: 100%;
	}
	.common-tbl1>tbody>tr>td .min-tbl>span{
		display: table-cell;
	}
	.common-tbl1>tbody>tr>td .min-tbl>span:nth-child(1){
		width: 160px;
	}
	.common-tbl1>tbody>tr>td .notes{font-size: 1.4rem;}
	.common-tbl1>tbody>tr>td .mlist>li{
		position: relative;
		padding-left: 1em;
		font-size: 1.4rem;
	}	.common-tbl1>tbody>tr>td p{
		font-size: 1.4rem;
	}

	.common-tbl1>tbody>tr>td .mlist>li::after{
		content:"・";
		position: absolute;
		display: block;
		width: 1em;
		height: 1em;
		top:0;
		left:0;
	}

#franchise .formTbl>tbody>tr>th {
	font-weight: normal;
}


#franchise .formTbl textarea{
    height: 120px;
    color: #A9A9A9;
}


#franchise .formTbl textarea.active{
	color:#333;
}

#franchise .contact {
    padding: 50px 0 0;
}

.operation-block{
	max-width: 1000px;
	text-align: center;
}

.operation-block img{
	max-width: 100%;
}


.operation-wrap{
	position: relative;
	max-width: 1200px;
	margin: 0 auto;
	background: #ff0000;
}

.operation {
    display: flex;
    width: 740px;
    background: #ff0000;
    margin: 40px auto;
    padding: 20px;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.operation-head{
	padding: 0 30px 0 0;
}

.operation-head-span{
	display: block;
	width:120px;
	height: 120px;
	line-height: 123px;
	text-align: center;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #fff;
	font-size: 3rem;
	font-weight: bold;
	color:#fb0000;
}

.operation-body{
	text-align: center;
	color:#fff;
	font-weight: bold;
	padding-right: 10px;
}
.operation-body-span{
	font-size: 2rem;
	display: block;
	margin-bottom: 5px;
}

.operation-body-em{
	font-size: 3rem;
	display: block;
	line-height: 1.4em;
	letter-spacing: 0.1em;
}


.sale-label{
	background: #fb0000;
	color:#fff;
	text-align: center;
	margin: 20px 0;
	padding: 15px 10px;
}
.sale-label-box{
	font-size: 3.2rem;
	font-weight: bold;
}


/**************************************************************************************************************************

 デバイス横サイズ1500px以下

**************************************************************************************************************************/
@media screen and (max-width: 1500px){


}



/***********************************************************************************************************************
* デバイス横サイズ1380px以下
***********************************************************************************************************************/
@media screen and (max-width: 1380px){
	#top-shopinfo .swiper-wrapper .swiper-slide{
		text-align: left;
	}

}


/**************************************************************************************************************************

 デバイス横サイズ1200px以下

**************************************************************************************************************************/
@media screen and (max-width: 1200px){
	/*ヘッダー*/


	.headline-main{
		font-size: 11.2rem;
		font-size: 10vw;
		line-height: 1.1em;
	}
		.headline-main>span{
			font-size: 5.6vw;
			line-height: 1.2em;
		}
			.headline-main span>span{
				font-size: 2.4vw;
			}
			.headline-main span>em{
				font-size: 8.0vw;
			}
}



