
/* ==============================================================================
    CSS for touch-screen : common.css
============================================================================== */

/* ----------------------------------------------------------
  Common Settings : css-reset
---------------------------------------------------------- */
@import url('https://fonts.googleapis.com/css2?family=Libre+Caslon+Display&amp;family=Noto+Serif+JP:wght@300&amp;display=swap');

html{
	font-family: 'Hiragino Kaku Gothic ProN','Hiragino Sans', Meiryo, sans-serif;
	overflow-y:scroll;
	-webkit-text-size-adjust:none;
	-webkit-font-smoothing: antialiased;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
	}
	
	body,div,h1,h2,h3,h4,h5,h6,p,ul,ol,li,dl,dt,dd,form,fieldset,legend,input,textarea,pre,code,blockquote,th,td{
	margin:0;
	padding:0;
	}
	
	div,h2,h3,h4,h5,h6,p,li,dt,dd,pre,code,blockquote,th,td{
	word-break:break-all;
	}
	
	br{
	letter-spacing:0;
	}
	
	fieldset,img{
	border:0;
	}
	
	li{
	list-style:none;
	}
	
	caption,th{
	text-align:left;
	}
	
	h1,h2,h3,h4,h5,h6,th{
	font-size:100%;
	font-weight:normal;
	font-style:normal;
	}
	
	input,textarea,select{
	font-family:inherit;
	font-size:inherit;
	font-weight:inherit;
	color:#333;
	}
	
	input[type="submit"]{
	cursor:pointer;
	}
	
	select{
	background-color:#ffffff !important;
	}
	
	address,caption,cite,code,dfn,var{
	font-style:normal;
	font-weight:normal;
	}
	
	abbr,acronym{
	border:0;
	font-variant:normal;
	}
	
	del{
	text-decoration:none;
	}
	
	#info i{	font-family: 'Hiragino Kaku Gothic ProN','Hiragino Sans','Yu Gothic UI', Meiryo, sans-serif;}
	
	/*=================================================
	 * CSS MAIN
	 * ================================================= */
	
	body{
		text-align	: center;
		font-size	: 12px;
		line-height	: 16px;
		font-family: 'Libre Caslon Display', serif;
		font-family: 'Noto Serif JP', serif;
		-webkit-text-size-adjust: 100%;
		scrollbar-face-color: #ffffff;
		scrollbar-3dlight-color: #553f09;
		scrollbar-highlight-color: #ffffff;
		scrollbar-shadow-color: #ffffff;
		scrollbar-darkshadow-color: #553f09;
		scrollbar-arrow-color: #553f09;
		scrollbar-track-color: #ffffff;
		-webkit-font-smoothing: subpixel-antialiased;
	}
	
	a{
		text-decoration	: none;
	}
	
	a:hover{
		text-decoration	: underline;
	}
	
	h1,h2,h3{
		font-size	: 13px;
	}
	
	ul{
		list-style-type	: none;
	}
	
	li{
		margin		: 0px;
		padding		: 0px;
	}
	
	table{
		font-size	: 13px;
	}
	
	table tr{
		vertical-align	: top;
	}
	
	em{
		font-style		: normal;
	}
	
	a[href^="tel:"] { cursor: default; text-decoration: none;}
	a[href^="tel:"]:hover{	text-decoration: none;}
	
	
	/*=================================================
	 * CSS for PC
	 * ================================================= */
	
	body{
		overflow: hidden;
		min-width: 1200px;
	}
	
	/* body */
	
	#body{
		width: 100%;
		text-align: left;
	}
	
	
	/* header */
	
	header{
	}
	
	header h1{
		font-size: 10px;
		font-weight: normal;
		text-align: center;
		line-height: 25px;
	}
	
	.header_a h1{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
		z-index: -1;
	}
	
	#ad_div{	display: none;}
	#homelink{	display: none;}
	
	
	/** nav **/
	
	nav{
		display: block;
		width: 100%;
		min-width: 1200px;
		height: 80px;
		font-size: 0;
		line-height: 0;
		padding: 12px 0 0 0;
		border-top-width: 1px;
		border-top-style: solid;
		border-bottom-width: 1px;
		border-bottom-style: solid;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
				box-sizing: border-box;
	}
	header.fixed+nav{
		width: 100%;
		position: fixed;
		z-index: 1000;
		top: 0;
		left: 0;
	}
	header.fixed+nav+#topimg+#hinfo{
		width: 100%;
		position: fixed;
		z-index: 1000;
		top: 80px;
		left: 0;
	}
	header.fixed+nav+#topimg+#hinfo+main{	margin-top: 110px;}
	
	nav ul{
		display: table;
		width: 100%;
		table-layout: fixed;
	}
	
	nav li{
		display: table-cell;
		vertical-align: middle;
	}
	
	nav li{
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
				box-sizing: border-box;
	}
	
	nav li a{
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 57px;
		font-size: 11px;
		line-height: 16px;
		border-right-width: 1px;
		border-right-style: solid;
		-webkit-transition	: 0.2s ease-in-out;
		-moz-transition	: 0.2s ease-in-out;
		-o-transition	: 0.2s ease-in-out;
		transition		: 0.2s ease-in-out;
		-webkit-backface-visibility:hidden;
		backface-visibility:hidden;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
				box-sizing: border-box;
	}
	nav li:last-of-type a{
		border-right: none;
	}
	
	nav li a:hover{
		text-decoration: none;
		opacity: 0.6;
		filter: alpha(opacity=60);
	}
	nav li a p{	display: none;}
	nav li a span{
		position: relative;
		display: inline-block;
		vertical-align: top;
		font-size: 20px;
		line-height: 20px;
	}
	nav li a span:before{
		display:block;
		content:attr(title);
		position:absolute;
		top:0;
		left:0;
	}
	
	nav li a em{
		font-style: normal;
	}
	
	nav li a i{	display: none;}
	nav > a.bt1{	display: none;}
	nav .sp_nav_li{	display: none;}
	
	.ad_bnr{	display: none;}
	.sp_navinfo{	display: none;}
	
	
	/** hinfo **/
	
	#hinfo{
		padding: 12px 0;
		min-width: 1200px;
	}
	#hinfo br{	display: none;}
	
	#hinfo p{
		position: relative;
		display: inline-block;
		font-size: 24px;
		font-weight: bold;
		line-height: 24px;
		vertical-align: top;
		margin: 0 5px;
	}
	
	#hinfo p span{
		display: inline-block;
		vertical-align: top;
		font-size: 24px;
		line-height: 24px;
		margin: 0 3px 0 0;
	}
	#hinfo .hopen span{	margin-top: -2px;}
	
	
	/** main **/
	
	main{	display: block;}
	
	main .pan{
		font-size: 10px;
		line-height: 15px;
		padding: 20px 0;
	}
	
	main .page_title{
		position: relative;
		display: block;
		height: 110px;
		font-size: 16px;
		line-height: 18px;
		padding: 0 0 0 0;
		margin-bottom: 2px;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
				box-sizing: border-box;
	}
	
	main .page_title:after{
		content: '';
		width: 100%;
		height: 0px;
		border-bottom-width: 2px;
		border-bottom-style: solid;
		position:absolute;
		bottom:-2px;
		left:0;
	}
	
	main .page_title em{
		position: relative;
		display: inline-block;
		vertical-align: top;
		font-size: 50px;
		line-height: 50px;
	}
	
	main .title{
		font-size: 12px;
		line-height: 16px;
		text-align: center;
		height: 60px;
		margin: 0 0 15px 0;
		padding-top: 14px;
		border-width: 1px;
		border-style: solid;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
				box-sizing: border-box;
	}
	
	main .title em{
		display: inline-block;
		vertical-align: top;
		font-size: 26px;
		line-height: 28px;
		position: relative;
	}
	main .title em:before{
		display:block;
		content:attr(title);
		position:absolute;
		top:0;
		left:0;
	}
	
	.s_title{
		font-size: 24px;
		line-height: 28px;
		text-align: center;
		height: 80px;
		padding-top: 20px;
		border-width: 1px;
		border-style: solid;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
				box-sizing: border-box;
	}
	
	.s_title em{
		display: inline-block;
		vertical-align: top;
		position: relative;
		font-size: 11px;
		line-height: 16px;
	}
	.s_title:before{
		display:block;
		content:attr(title);
		position:absolute;
		top:0;
		left:0;
	}
	footer .s_title{	display: none;}
	
	.ss_title{
		font-size: 20px;
		font-weight: bold;
		line-height: 20px;
		text-align: left;
		padding: 7px;
	}
	
	.inpage_box{	padding: 40px 0;}
	.inpage_box > .s_title,
	.inpage_box > div{
		width: 1120px;
		margin: 0 auto;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
				box-sizing: border-box;
	}
	
	#sp_shopinfo{	display: none;}
	
	
	/** footer **/
	#footer_ad{
		display: none;
	}
	
	footer{
		clear: left;
		width: 100%;
		text-align: center;
		font-style: normal;
	}
	
	footer .sns_bt{
		font-size: 0;
		line-height: 0;
		text-align: center;
		margin: 0 0 15px 0;
	}
	
	footer .sns_bt a,
	footer .sns_bt span{
		display: inline-block;
		vertical-align: top;
		width: 50px;
		height: 50px;
		border-radius: 50%;
		margin: 0 5px;
	}
	footer .sns_bt img{
		width: 50px;
		height: auto;
	}
	footer .sns_bt span img{
		opacity: 0.7;
		filter: alpha(opacity=70);
	}
	
	footer .sns_bt img.bk{	filter: invert();}
	
	#footer{
		width: 100%;
		padding: 0 0 30px 0;
		position: relative;
	}
	
	#textlink{
		font-size: 11px;
		line-height: 20px;
		padding: 15px 0;
	}
	
	#textlink a i{ display: none;}
	#textlink a.sp_nav_li,
	#textlink a.sp_nav_li+span{	display: none;}
	
	
	#textlink p{
		position: relative;
		z-index: 10;
	}
	#textlink p br{	display: none;}
	
	#up{
		padding: 20px 0;
	}
	
	#up a{
		position: relative;
		display: inline-block;
		vertical-align: top;
		width: 200px;
		height: 50px;
		font-size: 18px;
		line-height: 20px;
		border-width: 2px;
		border-style: solid;
		padding: 20px 0 0 0;
		-webkit-transition	: 0.2s ease-in-out;
		-moz-transition	: 0.2s ease-in-out;
		-o-transition	: 0.2s ease-in-out;
		transition		: 0.2s ease-in-out;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
				box-sizing: border-box;
	}
	
	#up a:after{
		content: "";
		display: block;
		clear: both;
		position: absolute;
		top: 9px;
		left: 50%;
		margin-left: -4px;
		width: 6px;
		height: 6px;
		border-top-width: 1px;
		border-left-width: 1px;
		border-top-style: solid;
		border-left-style: solid;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	
	#up a:hover{
		text-decoration: none;
	}
	
	#finfo{
		font-size: 12px;
		line-height: 18px;
	}
	
	#finfo h2{
		font-size: 12px;
		font-weight: normal;
	}
	
	#finfo a[href^="tel:"] { cursor: default; text-decoration: none; color: currentColor;}
	#finfo a[href^="tel:"]:hover{	text-decoration: none;}
	
	#ad{
		font-size: 10px;
		line-height: 16px;
		padding: 15px 0;
	}
	
	#ad br{	display: none;}
	
	#copy{
		font-size: 10px;
		line-height: 14px;
	}
	
	
	/** rollover **/
	
	.fade{
		display: inline-block;
		padding: 0;
		font-size: 0;
		line-height: 0;
	}
	
	.hover,
	.fade input{
		-webkit-transition	: 0.3s ease-in-out;
		-moz-transition	: 0.3s ease-in-out;
		-o-transition	: 0.3s ease-in-out;
		transition		: 0.3s ease-in-out;
		-webkit-backface-visibility:hidden;
		backface-visibility:hidden;
	}
	
	.hover:hover,
	.fade input:hover{
		opacity: 0.8;
		filter: alpha(opacity=80);
	}
	
	
	/***** none *****/
	#topimg,
	#navToggle{	display: none;}
	#page-top{
		position: absolute;
		top: -9999px;
	}
	
	
	/** fixbt_mess **/
	
	.fixbt_mess{
		display: inline-flex;
		flex-wrap: wrap;
		align-items: center;
		align-content: center;
		justify-content: center;
		width: 100px;
		height: 100px;
		text-align: center;
		border-radius: 50%;
		position: fixed;
		z-index: 9997;
		bottom: 20px;
		right: 20px;
		-webkit-transition	: 0.2s ease-in-out;
		-moz-transition	: 0.2s ease-in-out;
		-o-transition	: 0.2s ease-in-out;
		transition		: 0.2s ease-in-out;
		-webkit-transform: rotate(-15deg);
		   -moz-transform: rotate(-15deg);
			-ms-transform: rotate(-15deg);
			 -o-transform: rotate(-15deg);
				transform: rotate(-15deg);
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
				box-sizing: border-box;
	}
	.fixbt_mess:hover{
		text-decoration: none;
		opacity: 0.7;
		filter: alpha(opacity=70);
	}
	.fixbt_mess span{
		font-size: 42px;
		line-height: 42px;
	}
	.fixbt_mess em{
		width: 100%;
		font-size: 22px;
		line-height: 24px;
	}
	
	
	
	/** obi **/
	
	.sche_a.list .img a{
		position: relative;
		display: inline-block;
		overflow: hidden;
	}
	
	.list .obi{
		display: flex;
		align-items: center;
		align-content: center;
		justify-content: center;
		width: calc(100% + 20px);
		height: 40px;
		font-size: 18px;
		line-height: 30px;
		text-align: center;
		color: #fff;
		position: absolute;
		top: calc(50% - 20px);
		left: -10px;
		-webkit-animation:obi 1.5s ease-in-out infinite alternate;
		-moz-animation:obi 1.5s ease-in-out infinite alternate;
		animation:obi 1.5s ease-in-out infinite alternate;
		-webkit-transform: rotate(-15deg);
		   -moz-transform: rotate(-15deg);
			-ms-transform: rotate(-15deg);
			 -o-transform: rotate(-15deg);
				transform: rotate(-15deg);
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
				box-sizing: border-box;
	}
	.list .obi.yoman{
		-webkit-animation:inherit;
		-moz-animation:inherit;
		animation:inherit;
	}
	
	.list .yoman_bg > a img{
		filter: grayscale(100%);
	}
	
	.list .obi.tk{
		font-size: 16px;
	}
	.list .obi.tk i{
		font-size: 13px;
		font-style: normal;
	}
	.list .obi.tk em{
		font-size: 24px;
		font-style: normal;
	}
	
	.list .obi.tk{
		-webkit-animation:kk2 4.5s ease-in-out infinite alternate;
		-moz-animation:kk2 4.5s ease-in-out infinite alternate;
		animation:kk2 4.5s ease-in-out infinite alternate;
	}
	.list .obi.tk p{
		-webkit-animation:kk2_in1 4.5s ease-in-out infinite;
		-moz-animation:kk2_in1 4.5s ease-in-out infinite;
		animation:kk2_in1 4.5s ease-in-out infinite;
	}
	.list .obi.tk div{
		-webkit-animation:kk2_in2 4.5s ease-in-out infinite;
		-moz-animation:kk2_in2 4.5s ease-in-out infinite;
		animation:kk2_in2 4.5s ease-in-out infinite;
	}
	
	.list .obi.tk2{
		-webkit-animation:kk4 7.5s ease-in-out infinite alternate;
		-moz-animation:kk4 7.5s ease-in-out infinite alternate;
		animation:kk4 7.5s ease-in-out infinite alternate;
	}
	.list .obi.tk2 p:nth-of-type(1){
		-webkit-animation:kk4_in1 7.5s ease-in-out infinite;
		-moz-animation:kk4_in1 7.5s ease-in-out infinite;
		animation:kk4_in1 7.5s ease-in-out infinite;
	}
	.list .obi.tk2 p:nth-of-type(2){
		display: flex;
		align-items: center;
		align-content: center;
		justify-content: center;
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		-webkit-animation:kk4_in3 7.5s ease-in-out infinite;
		-moz-animation:kk4_in3 7.5s ease-in-out infinite;
		animation:kk4_in3 7.5s ease-in-out infinite;
	}
	.list .obi.tk div,
	.list .obi.tk2 div{
		display: flex;
		align-items: center;
		align-content: center;
		justify-content: center;
		width: 100%;
		height: 100%;
		font-size: 18px;
		position: absolute;
		top: 0;
		left: 0;
	}
	.list .obi.tk2 div{
		-webkit-animation:kk4_in2 7.5s ease-in-out infinite;
		-moz-animation:kk4_in2 7.5s ease-in-out infinite;
		animation:kk4_in2 7.5s ease-in-out infinite;
	}
	
	.list .obi.tk2 div:nth-of-type(2){
		-webkit-animation:kk4_in4 7.5s ease-in-out infinite;
		-moz-animation:kk4_in4 7.5s ease-in-out infinite;
		animation:kk4_in4 7.5s ease-in-out infinite;
	}
	
	.list .obi.kk1_color{
		-webkit-animation:kk1_color 4.5s ease-in-out infinite;
		-moz-animation:kk1_color 4.5s ease-in-out infinite;
		animation:kk1_color 4.5s ease-in-out infinite;
	}
	.list .obi.kk4_color{
		-webkit-animation:kk4_color 7.5s ease-in-out infinite;
		-moz-animation:kk4_color 7.5s ease-in-out infinite;
		animation:kk4_color 7.5s ease-in-out infinite;
	}
	
	
	@keyframes obi{
		0% {opacity:0;}
		20% {opacity:0;}
		80% {opacity:1;}
		100% {opacity:1;}
	}
	
	@keyframes kk2{
		0% {opacity:0;}
		33.3% {opacity:1;}
		66.6% {opacity:1;}
		100% {opacity:0;}
	}
	@keyframes kk2_in1{
		0% {opacity:0;}
		33.3% {opacity:1;}
		66.6% {opacity:0;}
		100% {opacity:0;}
	}
	@keyframes kk2_in2{
		0% {opacity:0;}
		33.3% {opacity:0;}
		66.6% {opacity:1;}
		100% {opacity:0;}
	}
	
	@keyframes kk3{
		0% {opacity:0;}
		25% {opacity:1;}
		50% {opacity:1;}
		75% {opacity:1;}
		100% {opacity:0;}
	}
	@keyframes kk3_in1{
		0% {opacity:0;}
		25% {opacity:1;}
		50% {opacity:0;}
		75% {opacity:0;}
		100% {opacity:0;}
	}
	@keyframes kk3_in2{
		0% {opacity:0;}
		25% {opacity:0;}
		50% {opacity:1;}
		75% {opacity:0;}
		100% {opacity:0;}
	}
	@keyframes kk3_in3{
		0% {opacity:0;}
		25% {opacity:0;}
		50% {opacity:0;}
		75% {opacity:1;}
		100% {opacity:0;}
	}
	
	@keyframes kk4{
		0% {opacity:0;}
		20% {opacity:1;}
		40% {opacity:1;}
		60% {opacity:1;}
		80% {opacity:1;}
		100% {opacity:0;}
	}
	@keyframes kk4_in1{
		0% {opacity:0;}
		20% {opacity:1;}
		40% {opacity:0;}
		60% {opacity:0;}
		80% {opacity:0;}
		100% {opacity:0;}
	}
	@keyframes kk4_in2{
		0% {opacity:0;}
		20% {opacity:0;}
		40% {opacity:1;}
		60% {opacity:0;}
		80% {opacity:0;}
		100% {opacity:0;}
	}
	@keyframes kk4_in3{
		0% {opacity:0;}
		20% {opacity:0;}
		40% {opacity:0;}
		60% {opacity:1;}
		80% {opacity:0;}
		100% {opacity:0;}
	}
	@keyframes kk4_in4{
		0% {opacity:0;}
		20% {opacity:0;}
		40% {opacity:0;}
		60% {opacity:0;}
		80% {opacity:1;}
		100% {opacity:0;}
	}
	
	
	.sche_a.list .obi{	font-size: 13px; line-height: 14px;}
	.sche_a.list .obi.tk{	font-size: 11px;}
	.sche_a.list .obi.tk i{	font-size: 10px;}
	.sche_a.list .obi.tk em{	font-size: 15px;}
	.sche_a.list .obi br{	display: none;}
	.sche_a.list .obi.tk2 div,
	.sche_a.list .obi.kk1_color div{	font-size: 13px;}
	
	.sche_b.list .obi br{	display: none;}
	
	
	
	
	
	/********************************************
	WAITBAR
	********************************************/
	.list .waitbar{
		display: flex;
		align-items: center;
		align-content: center;
		justify-content: center;
		width: calc(100% + 20px);
		height: 40px;
		font-size: 18px;
		line-height: 30px;
		text-align: center;
		color: #fff;
		position: absolute;
		top: calc(50% - 20px);
		left: -10px;
		-webkit-transform: rotate(-15deg);
		   -moz-transform: rotate(-15deg);
			-ms-transform: rotate(-15deg);
			 -o-transform: rotate(-15deg);
				transform: rotate(-15deg);
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
				box-sizing: border-box;
	}
	.list .waitbar p{
		display: flex;
		align-items: center;
		align-content: center;
		justify-content: center;
		width: 100%;
		height: 100%;
	}
	.list .waitbar p:nth-of-type(n + 2){
		position: absolute;
		top: 0;
		left: 0;
	}
	.list .waitbar p.w_price{
		font-size: 16px;
	}
	.list .waitbar p.w_price i{
		font-size: 13px;
		font-style: normal;
	}
	.list .waitbar p.w_price em{
		font-size: 24px;
		font-style: normal;
	}
	
	.list .waitbar1 p{
		-webkit-animation:waitbar1 1.5s ease-in-out infinite alternate;
		-moz-animation:waitbar1 1.5s ease-in-out infinite alternate;
		animation:waitbar1 1.5s ease-in-out infinite alternate;
	}
	.list .waitbar2 p:nth-of-type(1){
		-webkit-animation:waitbar2_1 4.5s ease-in-out infinite;
		-moz-animation:waitbar2_1 4.5s ease-in-out infinite;
		animation:waitbar2_1 4.5s ease-in-out infinite;
	}
	.list .waitbar2 p:nth-of-type(2){
		-webkit-animation:waitbar2_2 4.5s ease-in-out infinite;
		-moz-animation:waitbar2_2 4.5s ease-in-out infinite;
		animation:waitbar2_2 4.5s ease-in-out infinite;
	}
	.list .waitbar3 p:nth-of-type(1){
		-webkit-animation:waitbar3_1 6s ease-in-out infinite;
		-moz-animation:waitbar3_1 6s ease-in-out infinite;
		animation:waitbar3_1 6s ease-in-out infinite;
	}
	.list .waitbar3 p:nth-of-type(2){
		-webkit-animation:waitbar3_2 6s ease-in-out infinite;
		-moz-animation:waitbar3_2 6s ease-in-out infinite;
		animation:waitbar3_2 6s ease-in-out infinite;
	}
	.list .waitbar3 p:nth-of-type(3){
		-webkit-animation:waitbar3_3 6s ease-in-out infinite;
		-moz-animation:waitbar3_3 6s ease-in-out infinite;
		animation:waitbar3_3 6s ease-in-out infinite;
	}
	
	@keyframes waitbar1{
		0% {opacity:0;}
		20% {opacity:0;}
		80% {opacity:1;}
		100% {opacity:1;}
	}
	@keyframes waitbar2_1{
		0% {opacity:0;}
		33.3% {opacity:1;}
		66.6% {opacity:0;}
		100% {opacity:0;}
	}
	@keyframes waitbar2_2{
		0% {opacity:0;}
		33.3% {opacity:0;}
		66.6% {opacity:1;}
		100% {opacity:0;}
	}
	@keyframes waitbar3_1{
		0% {opacity:0;}
		25% {opacity:1;}
		50% {opacity:0;}
		75% {opacity:0;}
		100% {opacity:0;}
	}
	@keyframes waitbar3_2{
		0% {opacity:0;}
		25% {opacity:0;}
		50% {opacity:1;}
		75% {opacity:0;}
		100% {opacity:0;}
	}
	@keyframes waitbar3_3{
		0% {opacity:0;}
		25% {opacity:0;}
		50% {opacity:0;}
		75% {opacity:1;}
		100% {opacity:0;}
	}
	.sche_a.list .waitbar{	font-size: 13px; line-height: 14px;}
	.sche_a.list .waitbar .w_price{	font-size: 11px;}
	.sche_a.list .waitbar .w_price i{	font-size: 10px;}
	.sche_a.list .waitbar .w_price em{	font-size: 15px;}
	.sche_a.list .waitbar br{	display: none;}
	
	.sche_b.list .waitbar br{	display: none;}
	
	
	/***************************************************
	ANIMATION CSS
	***************************************************/
	
	
	/** BASE **/
	.delighter{
		opacity: 0;
		filter: alpha(opacity=0);
	}
	
	/** START **/
	.delighter.started{
		-webkit-transition	: 0.5s ease-in-out;
		-moz-transition	: 0.5s ease-in-out;
		-o-transition	: 0.5s ease-in-out;
		transition		: 0.5s ease-in-out;
		opacity: 1;
		filter: alpha(opacity=100);
	}
	
	/** END **/
	.delighter.started.ended{
		opacity: 1;
		filter: alpha(opacity=100);
	}
	
	
	
	.anchor{
		display: block;
		padding-top: 110px;
		margin-top: -110px;
	}
	
	
	
	/*=================================================
	 * CSS for SP
	 * ================================================= */
	
	@media screen and (max-width: 650px) {
		body{
			width: auto;
			min-width: 0;
			padding-top: 80px;}
		body.ad_on_body{	padding-top: 130px;}
		a:hover{	text-decoration: none;}
		a[href^="tel:"] { cursor: pointer;}
		a:hover{	text-decoration: none;}
		body::before{
			content:"";
			display:block;
			position:fixed;
			top:0;
			left:0;
			z-index:-1;
			width:100%;
			height:100vh;
		}
		body.ad_on_body::before{
			top: 50px;
		}
		.anchor{
			display: block;
			padding-top: 80px;
			margin-top: -80px;
		}
	
	
		/** header **/
		header{
			width: 100%;
			height: 0px !important;
			position: fixed;
			top: 0;
			left: 0;
			z-index: 1001;
		}
		header h1{
			height: 0px !important;
			font-size: 0;
			line-height: 0;
			text-indent: -9999px;
		}
		#homelink{
			display: inline-block;
			vertical-align: top;
			font-size: 0;
			line-height: 0;
			position: absolute;
			z-index: 997;
			top: 15px;
			left: 10px;
		}
		.ad_on_body #homelink{	top: 65px;}
		#homelink img{
			width: auto;
			height: 50px;
		}
		#mtop a{
			position: absolute;
			top: 0px;
			left: 0px;
			display:block;
			width: 150px;
			height: 55px;
			text-indent: -9999px;
		}
		#navToggle{	display: block;}
		#navToggle button{
			position: absolute;
			top: 10px;
			right: 10px;
			cursor: pointer;
			display:block;
			width: 60px;
			height: 60px;/** header,nav,SAME HEIGHT **/
			text-indent: -9999px;
			border: none;
			border-radius: 2px;
			-webkit-box-sizing: border-box;
			   -moz-box-sizing: border-box;
					box-sizing: border-box;
		}
		#navToggle button span,
		#navToggle button span:before,
		#navToggle button span:after{
			display: inline-block;
			width: 30px;
			border-bottom-width: 1px;
			border-bottom-style: solid;
			-webkit-transition	: 0.2s ease-in-out;
			-moz-transition	: 0.2s ease-in-out;
			-o-transition	: 0.2s ease-in-out;
			transition		: 0.2s ease-in-out;
		}
		#navToggle button span{
			position: absolute;
			top: 20px;
			right: 15px;
		}
		#navToggle button span:before,
		#navToggle button span:after{
			content: "";
			display: block;
			clear: both;
		}
		#navToggle button span:before{
			position: absolute;
			top: 10px;
			right: 0;
		}
		#navToggle button span:after{
			position: absolute;
			top: 20px;
			right: 0;
		}
		#navToggle .closebt span{
			position: absolute;
			top: 30px;
			right: 15px;
			transform: rotate(45deg);
			-webkit-transform: rotate(45deg);
			-moz-transform: rotate(45deg);
		}
		#navToggle .closebt span:before{
			content: "";
			clear: both;
			position: absolute;
			top: 0px;
			right: 0px;
			transform: rotate(-45deg);
			-webkit-transform: rotate(-45deg);
			-moz-transform: rotate(-45deg);
			opacity:0;
		}
		#navToggle .closebt span:after{
			content: "";
			display: block;
			clear: both;
			position: absolute;
			top: 0px;
			left: 0px;
			transform: rotate(-90deg);
			-webkit-transform: rotate(-90deg);
			-moz-transform: rotate(-90deg);
		}
		nav{
			width: 100%;
			min-width: 100%;
			height: 100vh;
			text-align: left;
			font-size: 0;
			line-height: 0;
			position: fixed;
			left: calc(100vw + 10px) !important;
			top: 0px !important;/** header,nav,SAME HEIGHT **/
			z-index: 998;
			overflow: hidden;
			-webkit-transition	: 0.2s ease-in-out;
			-moz-transition	: 0.2s ease-in-out;
			-o-transition	: 0.2s ease-in-out;
			transition		: 0.2s ease-in-out;
			-moz-box-sizing: border-box;
			-webkit-box-sizing: border-box;
			-o-box-sizing: border-box;
			-ms-box-sizing: border-box;
			padding: 0 0 55px 0;
			border: none !important;
			box-shadow:none !important;
			-moz-box-shadow:none !important;
			-webkit-box-shadow:none !important;
		}
		.ad_on_body nav{ top: 50px !important;}
		header.fixed+nav+#topimg+#hinfo{	position: static;}
		header.fixed+nav+#topimg+#hinfo+main{	margin-top: 0;}
		nav.opennav{
			width: 100%;
			height: 100vh;
			overflow: visible;
			left: 0 !important;
			overflow-y: auto;
			-webkit-overflow-scrolling: touch;
		}
		nav.opennav::-webkit-scrollbar{
		  display: none;
		}
		nav .sp_navinfo{
			display: flex;
			flex-wrap: wrap;
			align-items: center;
			align-content: center;
			justify-content: flex-start;
			text-align: left;
			height: 80px;
			padding: 10px 75px 10px 10px;
			-webkit-box-sizing: border-box;
			   -moz-box-sizing: border-box;
					box-sizing: border-box;
		}
		nav .sp_navinfo h2{
			width: 100%;
			font-size: 16px;
			line-height: 20px;
			white-space: nowrap;
			overflow: hidden;
			text-overflow: ellipsis;
			-o-text-overflow: ellipsis;
			-webkit-text-overflow: ellipsis;
		}
		nav .sp_navinfo p{
			width: 100%;
			font-size: 12px;
			line-height: 14px;
		}
		nav .sp_navinfo p span{
			position: relative;
			bottom: -2px;
			font-size: 14px;
			line-height: 14px;
			margin-right: 2px;
		}
		nav .sp_navinfo p span:nth-of-type{	margin-left: 15px;}
		nav ul{
			padding: 0 20px 140px 20px;
			-webkit-box-sizing: border-box;
			   -moz-box-sizing: border-box;
					box-sizing: border-box;
		}
		.ad_on_body nav ul{
			padding-bottom: 10px;
		}
		nav li{	display: block;}
		nav li.sp_nav_li{	display: block;}
		nav li .tx_n1:before{	display: none;}
		nav li a{
			position: relative;
			display: block;
			width: auto;
			height: auto;
			font-size: 16px;
			line-height: 18px;
			text-decoration: none;
			margin: 0;
			padding: 16px 15px 15px 2px;
			border-right: none;
			border-bottom-width: 1px;
			border-bottom-style: solid;
		}
		nav li a:after{
			content: '';
			position: absolute;
			width: 5px;
			height: 5px;
			position: absolute;
			top: calc(50% - 3px);
			right: 10px;
			border-bottom: solid 1px currentColor;
			border-right: solid 1px currentColor;
			-webkit-transform: rotate(-45deg);
			transform: rotate(-45deg);
		}
		nav > a.bt1 , nav > a.bt1:hover{
			display: block;
			font-size: 13px;
			margin: 10px 0 0 0;
			line-height: 15px;
			border: none;
		}
		nav li a em,
		nav li a br{	display: none;}
		nav li a p{	display: block;}
		nav li a span{
			font-size: 16px;
			line-height: 18px;
		}
		nav li a i{
			display: inline;
			font-style: normal;
		}
		header.fixed+nav{
			width: 220px;
			position: fixed;
			z-index: 1000;
			top: 55px;
			left: auto;
		}
		header.fixed+nav+#topimg+#hinfo{
			width: auto;
			margin-top: 0;
		}
		.ad_bnr{
			display: block;
			padding: 10px 20px 190px 20px;
		}
		.ad_bnr img{
			width: 100%;
			height: auto;
		}
	
		/** ad_div **/
		#ad_div{
			display: block;
		}
		#ad_div a{
			display: block;
			width: 100%;
			font-size: 4.5vw;
			font-weight: bold;
			line-height: 48px;
			text-align: center;
			border-bottom: 2px;
			border-bottom-style: solid;
			position: fixed;
			top: 0;
			left: 0;
			z-index: 1000;
		}
		#ad_div span{}
		#ad_div span{
			position: relative;
			display: inline-block;
			vertical-align: top;
			width: 8px;
			height: 9px;
			margin: 16px 5px 0 0;
			border: solid 1px currentColor;
			background-color: currentColor;
			border-radius: 5px 5px 0 0;
		}
		#ad_div span:before{
			content: '';
			position: absolute;
			bottom: -5px;
			left: 2px;
			width: 2px;
			height: 1px;
			border-radius: 50%;
			border: solid 1px currentColor;
			background-color: currentColor;
		}
		#ad_div span:after{
			content: '';
			position: absolute;
			bottom: -2px;
			left: -3px;
			width: 14px;
			height: 0px;
			border-top: solid 1px currentColor;
			border-bottom: solid 1px white;
		}
		header.ad_on{	top: 50px;}
	
		/** hinfo **/
		#hinfo{
			position: static;
			min-width: auto;
			padding: 5px 5px 5px 5px;
		}
		#hinfo br{	display: inline;}
		#hinfo .hopen{
			font-size: 14px;
			line-height: 24px;
		}
		#hinfo .htel{
			font-size: 20px;
			line-height: 24px;
		}
		#hinfo p{	margin: 0 3px;}
		#hinfo p span{
			font-size: 20px;
		}
	
		/** main **/
		main{
			text-align: left;
		}
		#topimg{
			display: block;
			width: 100%;
			position: relative;
			margin: 0 0 0 0;
		}
		#topimg h2{
			font-size: 0;
			line-height: 0;
			text-indent: -9999px;
		}
		.header_a+nav+#topimg{	display: none;}
		main .pt{	text-align: center;}
		main .pan{
			font-size: 10px;
			line-height: 14px;
			padding: 10px;
		}
		main .page_title{
			height: 85px;
			font-size: 13px;
			line-height: 16px;
			padding: 5px 0 0 0;
		}
		main .page_title em{
			font-size: 38px;
			line-height: 38px;
		}
		main .title{
			font-size: 11px;
			line-height: 12px;
			text-align: center;
			height: 60px;
			margin: 0 0 20px 0;
			padding-top: 12px;
			border-left: none;
			border-right: none;
			border-top-width: 1px;
			border-bottom-width: 1px;
			border-top-style: solid;
			border-bottom-style: solid;
			-webkit-box-sizing: border-box;
			   -moz-box-sizing: border-box;
					box-sizing: border-box;
		}
		main .title em{
			font-size: 22px;
			line-height: 24px;
			position: relative;
		}
		.s_title{
			font-size: 16px;
			line-height: 18px;
			text-align: center;
			height: 60px;
			padding-top: 14px;
			border-left: none;
			border-right: none;
			-webkit-box-sizing: border-box;
			   -moz-box-sizing: border-box;
					box-sizing: border-box;
		}
		.s_title em{
			display: inline-block;
			vertical-align: top;
			font-weight: normal;
		}
		#footer_ad{
			display: block;
			font-size: 0;
			line-height: 0;
			margin: 0 0 30px 0;
		}
		#footer_ad img{
			width: 75%;
			max-width: 468px;
			height: auto;
		}
		footer .s_title{
			display: block;
			font-size: 11px;
			line-height: 12px;
			text-align: center;
			height: 60px;
			padding-top: 12px;
			border-left: none;
			border-right: none;
		}
		footer .s_title em{
			font-size: 22px;
			line-height: 24px;
		}
		.ss_title{
			font-size: 16px;
		}
		#cnt{
			display: block;
			width: auto;
			background: none !important;
			margin: 0;
			padding-bottom: 10px;
		}
		.inpage_box{	padding: 0;}
		.inpage_box > .s_title{	width: auto;}
		.inpage_box > div{
			width: auto;
			margin: 0 0 30px 0 !important;
		}
	
		/** sp_shopinfo ***/
		#sp_shopinfo{
			display: block;
			text-align: center;
		}
		#sp_shopinfo .shopinfo_bt{
			display: flex;
			justify-content: center;
			font-size: 0;
			line-height: 0;
			padding: 10px 0 0 0;
			border-top-width: 5px;
			border-top-style: solid;
		}
		#sp_shopinfo .shopinfo_bt a{
			display: inline-flex;
			flex-wrap: wrap;
			align-items: center;
			align-content: center;
			justify-content: center;
			width: 90px;
			height: 90px;
			text-align: center;
			border-radius: 50%;
			margin: 0 5px;
			cursor: pointer;
			-webkit-transition	: 0.2s ease-in-out;
			-moz-transition	: 0.2s ease-in-out;
			-o-transition	: 0.2s ease-in-out;
			transition		: 0.2s ease-in-out;
			-webkit-box-sizing: border-box;
			   -moz-box-sizing: border-box;
					box-sizing: border-box;
		}
		#sp_shopinfo .shopinfo_bt a:hover{
			text-decoration: none;
			opacity: 0.7;
			filter: alpha(opacity=70);
		}
		#sp_shopinfo .shopinfo_bt a span{
			display: inline-flex;
			flex-wrap: wrap;
			align-items: center;
			align-content: center;
			justify-content: center;
			width: 28px;
			height: 28px;
			font-size: 10px;
			line-height: 28px;
			border-radius: 50%;
			margin: 0 0 3px 0;
		}
		#sp_shopinfo .shopinfo_bt a span.material-icons{	font-size: 22px;}
		#sp_shopinfo .shopinfo_bt a p{
			width: 100%;
			font-size: 16px;
			line-height: 18px;
		}
		@media screen and (max-width: 380px) {
			#sp_shopinfo.bt_all .shopinfo_bt a{
				width: 70px;
				height: 70px;
			}
			#sp_shopinfo.bt_all .shopinfo_bt a p{	font-size: 12px;}
		}
		@media screen and (max-width: 349px) {
			#sp_shopinfo.bt_all .shopinfo_bt a{
				width: 60px;
				height: 60px;
			}
			#sp_shopinfo.bt_all .shopinfo_bt a span{	margin-bottom: 0;}
			#sp_shopinfo.bt_all .shopinfo_bt a p{	font-size: 11px;}
		}
	
		#sp_shopinfo .shopinfo_time{
			display: inline-flex;
			align-items: center;
			align-content: center;
			justify-content: center;
			height: 25px;
			margin: 10px 0 0 0;
			padding: 0 15px;
			border-radius: 12.5px;
			-webkit-box-sizing: border-box;
			   -moz-box-sizing: border-box;
					box-sizing: border-box;
		}
		#sp_shopinfo .shopinfo_time span{
			font-size: 20px;
			line-height: 20px;
			margin: 0 5px 0 0;
		}
		#sp_shopinfo .shopinfo_time p{
			font-size: 14px;
			font-weight: bold;
			line-height: 20px;
		}
	
	
		/** page-top **/
		#page-top{
			display: none;
			width: 100%;
			vertical-align: top;
			font-size: 0;
			line-height: 0;
			text-align: right;
			position: fixed;
			z-index: 1000;
			top: auto;
			right: 0;
			bottom: 0;
		}
		.spft{
			width: 100%;
			display: flex;
			align-items: center;
			align-content: center;
			justify-content: center;
			font-size: 0;
			line-height: 0;
			padding: 10px 7px;
			-webkit-box-sizing: border-box;
			   -moz-box-sizing: border-box;
					box-sizing: border-box;
		}
		.spft > a{
			display: inline-flex;
			flex-wrap: wrap;
			align-items: center;
			align-content: center;
			justify-content: center;
			width: calc(100% - 6px);
			height: 60px;
			margin: 0 3px;
			border-radius: 3px;
		}
		.spft > a span{
			width: 28px;
			height: 28px;
			font-size: 10px;
			line-height: 28px;
			text-align: center;
			border-radius: 50%;
			margin-bottom: 3px;
		}
		.spft > a span.material-icons{	font-size: 22px;}
		.spft > a em{
			width: 100%;
			font-size: 16px;
			line-height: 18px;
			text-align: center;
		}
		@media screen and (max-width: 410px) {
			.bt_all .spft > a em{	font-size: 14px;}
		}
		@media screen and (max-width: 370px) {
			.bt_all .spft > a em{	font-size: 12px;}
		}
		@media screen and (max-width: 349px) {
			.bt_all .spft > a em{	font-size: 11px;}
			.bt_all .spft > a{	height: 54px;}
			.bt_all .fixbt_mess{	width: 54px; height: 54px;}
			.bt_all .fixbt_mess em{	font-size: 12px; line-height: 12px;}
			#page-top.bt_all .fixbt_mess+.spft{	padding-left: 67px;}
		}
	
		#move-page-top{
			text-decoration: none;
			display: block;
			cursor: pointer;
		}
	
		/** fixbt_mess **/
		.fixbt_mess{
			width: 60px;
			height: 60px;
			bottom: 10px;
			left: 10px;
			right: auto;
		}
		.fixbt_mess span{
			font-size: 28px;
			line-height: 28px;
		}
		.fixbt_mess em{
			font-size: 14px;
			line-height: 14px;
		}
		#page-top .fixbt_mess+.spft{	padding-left: 73px;}
	
		/** footer **/
		footer{
			width: 100%;
			height: auto;
		}
		#footer{
			width: auto;
			margin: 0;
			padding: 0 0 95px 0;
		}
		footer.nobox #footer{	padding-bottom: 15px;}
		#textlink{
			display: block;
			font-size: 0;
			line-height: 0;
			text-align: left;
			padding: 0;
			border-bottom-width: 5px;
			border-bottom-style: solid;
			-webkit-box-sizing: border-box;
			   -moz-box-sizing: border-box;
					box-sizing: border-box;
		}
		#textlink a{
			position: relative;
			display: inline-block;
			vertical-align: top;
			width: 50%;
			font-size: 13px;
			line-height: 20px;
			text-align: left;
			padding: 15px 10px;
			border-bottom-width: 1px;
			border-bottom-style: solid;
			-webkit-box-sizing: border-box;
			   -moz-box-sizing: border-box;
					box-sizing: border-box;
		}
		#textlink a:nth-of-type(odd){
			border-right-width: 1px;
			border-right-style: solid;
		}
		#textlink a:nth-of-type(2n+1):last-of-type {
			width: 100%;
			border-right: none;
		}
		#textlink a:after{
			content: '';
			position: absolute;
			width: 5px;
			height: 5px;
			position: absolute;
			top: calc(50% - 3px);
			right: 10px;
			border-bottom: solid 1px currentColor;
			border-right: solid 1px currentColor;
			-webkit-transform: rotate(-45deg);
			transform: rotate(-45deg);
		}
		#textlink a.sp_nav_li{	display: inline-block;}
		#textlink span{	display: none;}
		#textlink a i{
			display: inline;
			font-style: normal;
		}
		#up{	padding: 10px 0;}
		#up a{
			width: 180px;
			height: 40px;
			font-size: 14px;
			line-height: 18px;
			border-width: 2px;
			border-style: solid;
			padding: 15px 0 0 0;
		}
		#finfo{
			font-size: 11px;
			line-height: 16px;
		}
	
		#finfo h2{
			font-size: 12px;
			font-weight: normal;
		}
		#finfo a[href^="tel:"] { cursor: pointer;}
		#ad{
			font-size: 10px;
			line-height: 16px;
			padding: 10px 0;
		}
		#ad br{	display: inline;}
		#copy{
			font-size: 10px;
			line-height: 16px;
		}
	
		/***** none *****/
		img.lazy{
			-webkit-transition	: none !important;
			-moz-transition		: none !important;
			-o-transition		: none !important;
			transition		: none !important;
		}
	
		@-webkit-keyframes bgzoom {
		  from {
			-webkit-background-size: 120% auto;
			-moz-background-size: 120% auto;
			background-size: 120% auto;
		  }
		  50% {
			-webkit-background-size: 100% auto;
			-moz-background-size: 100% auto;
			  background-size: 100% auto;
		  }
		}
	
		body#toppage_body:before {
			background-size: 100% auto;
			-webkit-animation-name: bgzoom;
			-webkit-animation-duration: 10s;
			-webkit-animation-timing-function: ease-out;
			-webkit-animation-iteration-count: 1;
		}
	
	
		/** obi **/
		.list .obi{	font-size: 16px; line-height: 18px;}
		.list .obi.tk{	font-size: 13px;}
		.list .obi.tk i{	font-size: 10px;}
		.list .obi.tk em{	font-size: 20px;}
		.list .obi br{	display: none;}
		.list .obi.tk2 div,
		.list .obi.kk1_color div{	font-size: 16px;}
	
		.sche_a.list .obi{	font-size: 12px; line-height: 12px; height: 30px; top: calc(50% - 15px);}
		.sche_a.list .obi.tk{	font-size: 11px;}
		.sche_a.list .obi.tk i{	font-size: 10px;}
		.sche_a.list .obi.tk em{	font-size: 12px;}
		.sche_a.list .obi br{	display: inline;}
		.sche_a.list .obi.tk2 div,
		.sche_a.list .obi.kk1_color div{	font-size: 12px;}
	
		.list .waitbar{	font-size: 16px; line-height: 18px;}
		.list .waitbar .w_price{	font-size: 13px;}
		.list .waitbar .w_price i{	font-size: 10px;}
		.list .waitbar .w_price em{	font-size: 20px;}
		.list .waitbar br{	display: none;}
	
		.sche_a.list .waitbar{	font-size: 12px; line-height: 12px; height: 30px; top: calc(50% - 15px);}
		.sche_a.list .waitbar .w_price{	font-size: 11px;}
		.sche_a.list .waitbar .w_price i{	font-size: 10px;}
		.sche_a.list .waitbar .w_price em{	font-size: 12px;}
		.sche_a.list .waitbar br{	display: inline;}
	
	}
	
	
	@media screen and (max-width: 380px) {
		.list .obi{	font-size: 15px; line-height: 15px;}
		.list .obi.tk{	font-size: 11px;}
		.list .obi.tk i{	font-size: 10px;}
		.list .obi.tk em{	font-size: 15px;}
		.list .obi br{	display: none;}
		.list .obi.tk2 div,
		.list .obi.kk1_color div{	font-size: 16px;}
	
		.list .waitbar{	font-size: 15px; line-height: 15px;}
		.list .waitbar .w_price{	font-size: 11px;}
		.list .waitbar .w_price i{	font-size: 10px;}
		.list .waitbar .w_price em{	font-size: 15px;}
		.list .waitbar br{	display: none;}
	
	}

	.ibanner {
		img {
			width: 468px;
		}
	}
	
	@media screen and (max-width: 467px) {
		img {
			width: 100%;
		}
	
	}