@charset "utf-8";
/* CSS Document */

*{
	margin:0;
	padding:0;
	box-sizing:border-box;
}

@media screen and (max-width:640px){

	img{
		max-width: 100%;
		width: auto;
		height: auto;
	}

	a img{
		border-style: none;
	}
	
	body{
		background: #fff;
		min-width: 320px;
	}
	
	html{
		font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	}

	#pagetop{
		width:80px;
		height:50px;
		position: fixed;
		bottom: 10px;
		right: 20px;
		display: block;
		border-radius: 5px;
		z-index:10;
		cursor:pointer;
	}
	#pagetop .arrow{
		width:90px;
		height:50px;
	}

	#header{
		display:none;
	}

	#menu_s{
		width:230px;
		margin:0 auto;
	}
	#menu_s .menu_s_cts{
		width:260px;
		height:50px;
		padding:8px 0 0 0;
		cursor:pointer;
	  -webkit-transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
	  transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
	  -webkit-transform: translate3d(0, 0, 0);
			  transform: translate3d(0, 0, 0);
	}
	#menu_s .menu_s_cts:hover{
		background-color:#069;
		cursor:pointer;
	}
	#menu_s postage{
		width:230px;
		height:50px;
		padding:8px 0 0 0;
	}
	#menu_s .line{
		width:230px;
		height:1px;
		background-color:#fff;
		margin-bottom:1px;
	}
	#menu_s .menuicon{
		width:40px;
		height:40px;
		float:left;
	}
	#menu_s .menuicon img{
		width:40px;
	}
	#menu_s .menutext{
		width:200px;
		float:left;
		margin:2px 0 0 5px;
		font-weight:bold;
		color:#fff;
		line-height:18px;
	}
	
	/* スイッチ */
	#title{
		display: none;
	}
/* メインコンテナ---------------------------------------------------------------------------------------------------------------- */
	#main_container{
		width: 100%;
		float: left;
		border-left: solid 1px #fff;
		border-right: solid 1px #fff;
		box-sizing: content-box;
	/*background-color:rgba(255,237,248,0.8);*/

	}
	#titleimg{
		position: relative;
		width: 100%;
		line-height: 0;
	}
	#titleimg .titlebtn{
		position: absolute;
		width: 100%;
		height: auto;
		top:78%;
		left:0;
	}
	#titleimg a img:hover{
		opacity: 1.0;
	}
	#titleimg .titlebtn .titlebtn_in{
		display: inline-block;
		width: 33.3%;
		margin: 0;
		padding: 0;
	}
	#catch{
		width: 100%;
		height: auto;
		line-height: 0;
		background-color: rgba(255,255,255,0.7);
	}
	.appdl_up{
		width: 100%;
		height: auto;
		line-height: 0;
	}
	.appdl{
		position: relative;
		width: 100%;
		height: 200px;
		line-height: 0;
		background: #fff;
	}
	.appdl .appbtn_ios{
		position: absolute;
		width: 40%;
		height: auto;
		top:4%;
		left:7%;
		text-align: center;
	}
	.appdl .appbtn_and{
		position: absolute;
		width: 40%;
		height: auto;
		top:4%;
		left:52%;
		text-align: center;
	}
	.bxslider{
		text-align: center;
	}
	.back_ion{
		background-color: rgba(164,164,3,0.9);
		padding-top: 10px;
		padding-bottom: 1px;
	}
	.back_hin{
		background-color: rgba(20,102,238,0.9);
		padding-top: 10px;
		padding-bottom: 1px;
	}
	.back_sop{
		background-color: rgba(255,142,42,0.9);;
		padding-top: 10px;
		padding-bottom: 1px;
	}	
	.back_under{
		background-color: rgba(255,255,255,0.9);;
		padding-top: 10px;
		padding-bottom: 1px;
	}	
/* SPEC ----------------------------------------------------------------------------*/
	#spec{
		width: 95%;
		margin: 30px auto 0;
		border: solid 1px #160000;
		padding: 2%;
		color: #160000;
		background-color: rgba(255,93,95,0.8);
		font-size:10px;
		font-weight: bold;
	}
	#spec .spec_left{
		display: inline-block;
		width: 20%;
		vertical-align: top;
	}
	#spec .spec_right{
		display: inline-block;
		width: 78%;
		vertical-align: top;
	}
	#spec .spec_left .spec_s{
		font-size:10px;
	}
	#spec .spec_single{
		width: 95%;
		margin-left: 1em;
		text-indent: -1em;
	}

/* 公式バナー・お問合せ ----------------------------------------------------------------------------*/
	.official{
		width: 90%;
		height: auto;
		margin: 0 auto;
	}
	label{
		display: block;
		width: 90%;
		margin: 10px auto 0;
		padding: 20px 12px 12px;
		line-height: 1;
		color:#fff;
		background:#D90B0F;
		font-size: 35px;
		text-align: center;
		cursor: pointer;
	}

	input[type="checkbox"].on-off{
		display: none;
	}

	input[type="checkbox"].on-off + ul{
		height: 0;
		max-height: 0;
		overflow: hidden;
	}

	input[type="checkbox"].on-off:checked + ul{
		height: auto;
		z-index: 1;
		max-height: 100em;
	}
	
	.qanda{
		margin: 0 auto;
		padding:0;
	}
	.qanda ul{
		width: 90%;
		margin: 0 auto;
		padding: 0;
		background:#DFDFED;
		list-style: none;
		border: solid 1px #D90B0F;
	}

	.qanda li{
		padding: 10px;
	}
	
	.qanda .li_os{
		background: #3e0505;
		color: #fff;
		padding:5px;
		text-align: center;
	}
	
	.qanda .li_q{
		background: #D90B0F;
		color: #fff;
		padding: 1em;
	}
	
	.qanda .li_a{
		padding: 1em;
	}


	.help_top{
		width: 90%;
		height: 20px;
		font-size: 14px;
		color: #3e0505;
		text-align: center;
		margin: 15px auto 5px;
		border-bottom: solid 1px #3e0505;
	}
	.help_bot{
		width: 90%;
		height: auto;
		text-align: center;
		margin: 0 auto;
	}

	/* リンクコンテナー（下部）---------------------------------------------------------------------------------------------------------------- */

	.link_container_area{
		width:auto;
		margin:0 auto;
		text-align:center;
		margin-top:40px;
		font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
		font-size:16px;
		color:#000;
	}
	.link_container_area ul{
		list-style-type:none;
	}
	.link_container_area li{
		padding:0 5px;
		/*display:inline-block;*/
		font-size:14px;
	}
	.link_container_area li a:link{
		color:#000;
		text-decoration:none;
		padding:3px 10px;
	}
	.link_container_area li a:visited{
		color:#000;
		text-decoration:none;
	}
	.link_container_area li a:hover{
		color:#000;
		text-decoration:none;
		transition:background-color 0.5s;
		transition-timing-function:ease-in-out;
		background-color:rgba(0,0,0,0.2);
	}

	.snslogo_area{
		width:220px;
		height:80px;
		margin:0 auto;
		margin-top:30px;
		text-align:center;
	}

	.snslogo_area ul{
		width:auto;
		height:54px;
		float:left;
		list-style-type:none;
	}

	.snslogo_area li{
		width:50px;
		float:left;
		margin-left:5px;
		display:inline-block;
	}
	.snslogo_area li img{
		width:50px;
	}


	/*-------- footer ---------------*/

	.official_ban{
		width:100%;
		margin:0 auto;
	}
	#rights{
		max-width:320px;
		margin:0 auto;
		text-align: center;
	}

	#social_footer{
		display:none;
	}

	#footer{
		width:100%;
		height:auto;
		padding-top:10px;
		margin-bottom: 70px;
		background-color:#fff;
		font-size:10px;
		color:#000;
		text-align:center;
		line-height:14px;
		border-top:1px #e6e4e4 solid;
	}

}/* @media */