@media screen and (max-width: 767px) {

/* reserves
----------------------------------------------------------------------------- */

/* reserves common
------------------------------------- */
	.me_reserves_flow_wrap01 {
		padding: 25px 15px;
	}
	.me_reserves_flow_ul01 {
		display: block;
	}
	.me_reserves_flow_ul01 li {
		width: 100%;
	}
	.me_reserves_flow_ul01 li::after {
		display: none;
	}
	.me_reserves_flow_ul01 li img {display: none;}
	.me_reserves_flow_ul01 li p {text-align: left;}
	.me_reserves_flow_ul01 li p span {display: inline-block;}
	.me_reserves_flow_ul01 li p br {display: none;}

	.me_reserves_wrap01 {
		padding: 40px 0;
	}
	.me_reserves_inner01 {
		width: auto;
		margin: 0 15px;
		padding: 25px 15px;
	}
	.me_reserves_inner02 {
		width: auto;
		margin: 0 15px;
		padding: 25px 15px;
	}
	.me_reserves_inner03 {
		width: auto;
		margin: 0 15px;
		padding: 25px 15px;
	}

	.message {
		padding: 5px 10px;
	}


/* reserves top (Reserve/date_list.ctp)
------------------------------------- */
	.me_reserves_today01 {
		padding: 5px 10px;
		font-size: 1.6rem;
	}

	p.me_reserves_campaign01img{
		position:relative;
		left:auto;
		top:auto;
		width:100%;
		text-align:center;
	}

	p.me_reserves_campaign01img + p{
		display:block;
		width:100%;
		max-width:600px;
		height:auto;
		font-size:1.6rem;
		padding:5px;
		margin:0 auto 10px;
	}

	.me_reserves_calendar01 {
		width: 100%;
		max-width: 320px;
	}
	.me_reserves_floormap_wrap01 {
		display: none;
	}

	.me_reserves_time_table_wrap01 {
		width: 100%;
		height: 500px;
		overflow: auto;
		padding-bottom: 20px;
		margin-bottom: 20px;
	}
	.me_reserves_time_table01 {
		width: 815px;
	}

	.me_reserves_time_table_time th {
		top: 0px;
	}

	th.me_reserves_time_table_room {
		width: 115px;
		padding: 5px 5px;
		position: -webkit-sticky;
		position: sticky;
		left: 0px;
	}
	th.me_reserves_time_table_room::before {
		content: "";
		position: absolute;
		top: -1px;
		left: -1px;
		width: 100%;
		height: 100%;
		border: 1px solid #D5D9E3;
	}

	th.me_reserves_time_table_room a {
		font-size: 1.7rem;
	}
	.me_reserves_date_list_table01 tbody tr:nth-child(6) th.me_reserves_time_table_room a {
		font-size: 1.3rem;
	}
	th.me_reserves_time_table_room span {
		font-size: 1.2rem;
	}
	span.me_reserves_room_type01 ,
	span.me_reserves_room_type02 {
		top: 10px;
		right: 5px;
		width: 44px;
		font-size: 1rem;
	}
	span.me_reserves_room_type02 {
		font-size: 1.1rem;
	}

	.me_reserves_table02 th ,
	.me_reserves_table02 td {
		padding: 12px 10px;
	}
	.me_reserves_table02 th:nth-of-type(1) {
		width: 60%;
	}
	.me_reserves_table0202 th:nth-of-type(1) {
		width: 50%;
	}

	.me_reserves_dl01 dt {
		width: 100%;
		background-color: #EEF2F4;
		padding: 2px 10px;
		margin-bottom: 5px;
	}
	.me_reserves_dl01 dd {
		width: 100%;
	}
	.me_reserves_dl01_dt_w dt ,
	.me_reserves_dl01_dt_w dd {
		width: 100%;
	}

	.me_reserves_aki_list01 ,
	.me_reserves_aki_list01_s {
		gap: 10px 15px;
	}
	.me_reserves_aki_list01 li ,
	.me_reserves_aki_list01_s li {
		font-size: 1.3rem;
	}
	.me_reserves_aki_list01 li::before ,
	.me_reserves_aki_list01_s li::before {
		width: 12px;
		height: 12px;
		margin-right: 5px;
	}


/* reserves プラン選択（Reserve/step_campaign.ctp）
------------------------------------- */
	.me_reserves_plan_dl_wrap01 dl {
		width: 100%;
	}
	.me_reserves_plan_dl_wrap01 dl dt {
		height: auto;
		padding: 15px 15px;
	}

	.me_reserves_cancel_wrap01 {
		gap: 50px 0;
	}
	.me_reserves_cancel_box01 {
		width: 100%;
	}
	.me_reserves_cancel_title01.mg {
		margin-bottom: 12px;
	}


/* reserves ログイン（User/login.ctp）
------------------------------------- */
	.me_reserves_login_info01 {
		border: 3px solid #EA6000;
		padding: 15px;
		margin-bottom: 40px;
	}


/* reserves 会員登録（User/register.ctp）
------------------------------------- */
	.me_reserves_regist_table01 th ,
	.me_reserves_regist_table01 td {
		display: block;
		width: 100%;
	}
	.me_reserves_regist_table01 th {padding: 10px 0;}
	.me_reserves_regist_table01 td {padding: 0 0 10px;}

	.me_reserves_regist_table01 td input[type="text"] ,
	.me_reserves_regist_table01 td input[type="tel"] ,
	.me_reserves_regist_table01 td input[type="email"] {
		display: block;
		width: 100%;
	}

	/* 同意 */
	.me_reserves_regist_customer_form {
		padding: 10px 15px;
	}


/* reserves ご予約内容の入力（Reserve/order.ctp）
------------------------------------- */
	.me_reserves_timechoice_wrap01 {padding: 20px 5px;}
	.me_reserves_timechoice_wrap01 dl:first-child {
		margin-right: 10px;
	}
	.me_reserves_timechoice_wrap01 dt {
		padding-right: 6px;
	}
	.me_reserves_timechoice_wrap01 dd input ,
	.me_reserves_timechoice_wrap01 dd select {
		width: 80px;
		max-height: 48px;
		padding: 12px 0px 12px 5px;
	}

	.me_reserves_form_wrap01 {
		width: 100%;
	}
	.me_reserves_form_summary01 {
		width: 100%;
		position: static;
	}


/* reserves confirm
------------------------------------- */
	.me_reserves_confirm_dl01 dt {
		width: 100%;
		background-color: #EEF2F4;
		padding: 2px 10px;
		margin-bottom: 5px;
	}
	.me_reserves_confirm_dl01 dd {
		width: 100%;
	}


/* reserves 下部contact
------------------------------------- */
	.me_reserves_contact_wrap01 {
		margin: 0 15px 50px;
		padding: 30px 15px;
	}


/* reserves マイページ（Reserve/mypage_index.ctp）
------------------------------------- */
	.me_mypage_menu li {
		width: calc(100% / 2 - 20px * 1 / 2);
	}

	.me_reserves_mypage_index_left {
		width: 100%;
	}
	.me_reserves_mypage_index_right {
		width: 100%;
	}
	.me_reserves_mypage_btn01 {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}

	.me_reserves_mypage_table01 tbody td {
		display: block;
		border-bottom: none;
		padding: 8px 10px;
		text-align: left;
	}
	.me_reserves_mypage_table01 tbody th {
		display: inline-block;
	}
	.me_reserves_mypage_table01 tbody td span {
		display: inline-block;
	}

	.me_reserves_mypage_btn_ul li a {
		font-size: 1.7rem;
		letter-spacing: 0;
		padding: 8px 15px;
	}


}