@charset "UTF-8";
/*----------------------
予約システム　CSS
----------------------*/
/*** ■共通 ***/
html,
body {
	height: 100%;
	color: #313131;
}
html{
	height: 100%;
	min-height: 100%;
	position: relative;
}

body{
	font-family: YuGothic, "游ゴシック", "ヒラギノ角ゴ Pro W3", "HiraKakuPro-W3", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", sans-serif;
	font-size: 15px;
	line-height: 1.8em;
	-webkit-text-size-adjust: 100%;
	line-break: strict;
	letter-spacing: 0.07em;
	overscroll-behavior-y	: none;	/* スワイプによるリロード無効 */
	line-height: 1;
	margin-bottom: 100px;
	margin: 0;
	padding: 0;

}

ol,
ul {
	list-style: none;
}
input,
textarea,
select,
label {
	margin: 0;
	font-size: 100%;
	font-family: inherit;
	vertical-align: middle;
}
input,
button,
textarea {
	margin: 0;
	padding: 0;
	background: none;
	border: #fff;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
select {
	-webkit-appearance: none;/* ベンダープレフィックス(Google Chrome、Safari用) */
	-moz-appearance: none; /* ベンダープレフィックス(Firefox用) */
	appearance: none; /* 標準のスタイルを無効にする */
	
	position: relative;
	z-index: 9;
	display: block;
	/*width: 130%;*/
	height: 60px;
	border: 3px solid #313131;
	box-sizing: border-box;
	font-size: 16px;
	color: #000000;
	font-weight: 700;
	line-height: 54px;
	padding: 0 1em;
	margin-bottom: 20px;

	background-color: #ffffff;
	background-image: url(../img/down.svg);
	background-position: right 5px center;
	background-repeat: no-repeat;
	background-size: 13px 13px;
}

textarea{
	resize: none;/* サイズ固定 */
	line-height: 1em;
}

img {
	vertical-align: top;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
header{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	padding: 14px 0;
	z-index: 2;
}
header .logo a {
	display: block;
}
header .logo img {
	width: 100px;
}

footer{
	bottom: 0;
	left: 0;
	position: fixed;
	width: 100%;
	justify-content: center;
	font-size: 12px;
	display: flex;
	height: 30px;
	background-color: #333;
	color: #fff;
}
a,
a:link {
	color: #444;
	text-decoration: none;
}

a:active,
a:focus {
	color: #444;
	text-decoration: none;
}

/* Edgeのパスワード目ボタンを非表示にする   */
input[type="password"]::-ms-reveal {
	display: none;
}

.no-transition {
	transition: none !important;
}
.contentsAnime {
	-webkit-animation: fadeIn 1.5s ease 0s 1 normal;
	animation: fadeIn 1.5s ease 0s 1 normal;
}


@keyframes fadeIn {
	0% {
		opacity: 0
	}

	100% {
		opacity: 1
	}
	from {
		opacity: 0;
		transform: translateY(20px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}


.delay1 {
	transition-delay: 0.1s !important;
}

.delay2 {
	transition-delay: 0.2s !important;
}

.delay3 {
	transition-delay: 0.3s !important;
}

.delay4 {
	transition-delay: 0.4s !important;
}

.delay5 {
	transition-delay: 0.5s !important;
}

.delay6 {
	transition-delay: 0.6s !important;
}

.js-2nd,
.js-3rd{
	animation-name:delayAREA;
	animation-duration:5s; 
}
@keyframes delayAREA {
	0% {
		max-height:0;
	}
	100% {
		max-height:1000px;
	}
}

.js-TIME{
	animation-name:delayAREA_TIME;
	animation-duration:1s; 
}
@keyframes delayAREA_TIME {
	0% {
		max-height:0;
	}
	100% {
		max-height:3000px;
	}
}

.j_sans,
*[id^="reserve"] .reserve-info p a,
*[id^="reserve"] .reserve-slider_foot h4,
*[id^="reserve"] .reserve-confirm .col>dl dd span {
	font-family: 'Josefin Sans', sans-serif;
	font-weight: bold;
}

.oxygen,
.reserve-time table th,
#calendar.fc .fc-day-number,
#calendar .fc-content-skeleton .fc-today::after {
	font-family: 'Oxygen', sans-serif;
}


.gray {
	color: #878787 !important;
	font-size: 15px;
}



.under_page .page_title {
text-align: center;
letter-spacing: 0.16em;
text-align: center;
}

.under_page h2 {
text-align: center;
letter-spacing: 0.08em;
font-weight: 600;
}

.under_page h2 span {
display: inline-block;
font-weight: 400;
}

.under_page h3 {
font-weight: 600;
}

.under_page .box_first_line {
display: block;
margin: 0 auto;
height: 98px;
}

.under_page .box_first_line.on span{
height: 98px;
}

.under_page .box_first_line span {
display: block;
background: #313131;
margin: 0 auto;
width: 3px;
transition: height 0.5s cubic-bezier(0.42, 0, 0.58, 1);
transform-origin: center top;
height: 0;
}

.under_page .box_line span {
display: block;
background: #313131;
margin: 0 auto;
transition: height 0.4s cubic-bezier(0.42, 0, 0.58, 1);
height: 0;
}

.under_page .box{
box-sizing: border-box;
}

.under_page .annotation_link,
.remodal .annotation_link {
text-align: center;
}

.under_page .annotation_link a,
.under_page .annotation_link span {
padding-bottom: 1px;
border-bottom: 1px solid #acacac;
}

.under_page form p,
.sub-txt-line {
font-weight: 600;
}

.contact-cont-title {
margin-bottom: 2em !important;
}

.sub-txt-line {
margin-bottom: 1em;
}

.under_page .alert {
font-weight: 400;
color: #f15051;
height: 0;
opacity: 0;
transition: height 0.4s ease, opacity 0.4s ease;
text-align: left;
}

.under_page .alert.show {
opacity: 1;
}

.cssINPUTBIRTH {
	width: 150px;
	position: relative;
}

.cssTARGET {
	font-size: 20px;
	font-weight: bold;
}

.cssCONTACT_INFO{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: center;
	align-items: center;
}

.cssCONTACT_INFO p:not(.cssCONTACT_TITLE){
	width: 85%;
	line-height: 60px;
}

.cssCONTACT_INFO .form_text:not(.form_contactname){
	margin:0 0 5px 0!important;
	width: 85%!important;
}

.cssCONTACT_TITLE{
	width		: 180px;
	font-size	: 16px;
}

.cssCONTACT_NAME {
	display			: flex;
	width			: 85%;
	justify-content	: space-between;
}


.cssCONTACT_BIRTH {
	margin-bottom: 0!important;
}


.form_contactname {
	margin-bottom	: 5px!important;
	width			: 49%!important;
}

.cssLINEID {
	margin-bottom		:0!important;
	align-items: center;

}

.cssCENTER {
	display: flex;
	justify-content: flex-start;
	margin-bottom: 10px;
	align-items: center;
}

.cssBETWEEN {
	display: flex;
	justify-content: space-between;
}

.width45p {
	width: 45%!important;
}

.cssTEXTAREA {
	width: 97%;
	height: 110px;
	margin-top: 10px;
}

.css休日{
	background: #eb666214!important;
}
.label-danger {
	background-color: #d9534f;
	display: inline;
	padding: .2em .6em .3em;
	font-size: 75%;
	font-weight: 700;
	line-height: 1;
	color: #fff;
	text-align: center;
	white-space: nowrap;
	vertical-align: baseline;
	border-radius: .25em;
}

.label-nini {
	background-color: #008040;
	display: inline;
	padding: .2em .6em .3em;
	font-size: 75%;
	font-weight: 700;
	line-height: 1;
	color: #fff;
	text-align: center;
	white-space: nowrap;
	vertical-align: baseline;
	border-radius: .25em;
}

.box_area {
	border: 3px solid #313131;
	margin: 0 auto 20px;
	width: 550px;
	padding: 60px 115px;
}
.box_area .btn {
	margin: 30px auto 0;
}
.under_page .page_title {
	font-size: 32px;
	padding-top: 240px;
	line-height: 32px;
	margin-bottom: 55px;
}
.under_page .box_line {
	height: 98px;
}
.under_page .box_line span {
	width: 3px;
}
.under_page .box_line.on span {
	height: 98px;
}
.under_page .box_area {
	border: 3px solid #313131;
	margin: 0 auto 20px;
	width: 650px;
	padding: 85px 115px 100px;
}

.under_page h2 {
	font-size: 24px;
	margin-bottom: 30px;
}
.under_page h2 span {
	padding-top: 15px;
	font-size: 18px;
}
.under_page h3 {
	font-size: 20px;
	margin-bottom: 15px;
}
.under_page h4 {
	font-size: 16px;
	margin: 0 0 15px;
	text-align:center;
}
.under_page .subtext {
	margin-bottom: 48px;
}
.under_page .alert {
	height: 0;
}
.under_page .alert.show {
	height: 30px;
}
.under_page .form_search input {
	display: block;
	width: 100%;
	border: 3px solid #313131;
	box-sizing: border-box;
	font-size: 16px;
	line-height: 54px;
	text-indent: 1em;
	margin-bottom: 20px;
}


#ID_来店契機備考_DIV{
	margin-bottom: 20px;
	margin-left: 165px;
}
#ID_来店契機詳細{
	margin-left: 165px;
}

.under_page .form_btn {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 8;
	display: block;
	padding: 20px;
	width: 60px;
	height: 60px;
	text-align: center;
	background: #313131;
	box-sizing: border-box;
}

.under_page .form_btn:hover {
	cursor: pointer;
}
.under_page .form_btn path {
	fill: #fff;
}
.under_page .form_btn .icon-search {
	width: 20px;
	height: 20px;
}
.under_page .form_btn .icon-dropdown {
	margin: 5px 4px;
	width: 12px;
	height: 10px;
}
.under_page .form_text, .under_page .form_pass {
	display: block;
	width: 100%;
	border: 3px solid #313131;
	box-sizing: border-box;
	font-size: 15px;
	line-height: 54px;
	text-indent: 1em;
	margin-bottom: 20px;
	padding: 0 8px;
	align-items: center;
	height: 54px;
}
.under_page .form_pass {
	display: flex;
	align-items: center;
	position: relative;
}

.under_page .form_text input{
	width: 88%;
	margin-top: -2px;
}
.under_page .form_pass input{
	flex-grow: 1;
	margin-top: -2px;
	margin-left: 7%;
}

.under_page .form_pass span#view {
	text-indent: 0;
}

.under_page .form_name .form_text {
	width: calc(100% / 2 - 10px);
}
.under_page .form_post .shortt {
	width: 160px;
}
.under_page .form_post .long {
	width: 220px;
}
.under_page .form_post .annotation_link {
	margin: 0 0 20px 25px;
}
.under_page .form_phone .form_text {
	width: 158px;
}
.under_page .reserve-slider_head .form_check label {
	margin-left: 0;
	margin-right: 0;
}
.under_page .form_check input[type="checkbox"],
.under_page .form_check input[type="radio"] {
	display: none;
}
.under_page .form_check label {
	display: inline-block;
	position: relative;
	width: 36px;
	height: 36px;
	border: 3px solid #313131;
	box-sizing: border-box;
	margin-left: 25px;
	margin-right: 5px;
	cursor: pointer;
}
.under_page .form_check input[type="checkbox"]:checked+label::after,
.under_page .form_check input[type="radio"]:checked+label::after{
	position: absolute;
	top: -3px;
	left: -3px;
	content: '';
	background: url(../img/checked.png) center center no-repeat;
	background-size: 22px auto;
	width: 36px;
	height: 36px;
}
#ID_LAVEL_CHKPASSWORD::after {
	width: 30px;
	height: 30px;
	filter: invert(50%) sepia(0%) saturate(11%) hue-rotate(143deg) brightness(101%) contrast(93%);
}
.under_page .form_sex,
.under_page .form_birth {
	margin-bottom: 40px;
}
.under_page .form_sex p:not(.alert),
.under_page .form_birth p:not(.alert){
	font-size: 18px;
}
 
.under_page .form_birth {
	display: flex;
	align-items: center;
}
.under_page .form_birth p:not(.alert) {
	font-size: 18px;
}
.under_page .form_child_num {
	display: flex;
	align-items: center;
	margin-bottom: 45px;
}
.under_page .form_child_num select {
	width: 54px;
	margin-left: 20px;
	margin-right: 5px;
}
.under_page .form_child_num p:not(.alert){
	font-size: 20px;
}

.under_page .form_submit {
	margin-left: 5px;
	width: 120px;
	height: 60px;
	font-size: 16px;
	color: white;
	background: #313131;
}
.under_page .form_submit:hover {
	cursor: pointer;
}
.under_page .inner_block {
	padding-bottom: 50px;
	border-bottom: 2px solid #e5e5e5;
	margin-bottom: 50px;
}
.under_page .bar {
	width: 15px;
	height: 4px;
	background: #313131;
	display: block;
	margin: 0 8px 20px;
}

#register.under_page h2 {
	margin-top: 60px;
	line-height: 1.4em;
}
#register.under_page .note {
	letter-spacing: 0.02em;
}
#register.under_page .mail {
	margin-bottom: 65px;
}
#register.under_page .pass_note {
	margin-top: 45px;
	font-size: 20px;
	margin-bottom: 15px;
}
#register.under_page .btn {
	width: 200px;
}

#ID_LAVEL_CHKPASSWORD {
	border: 1px solid gray;
	width: 25px;
	height: 25px;
	margin-left: 165px;
}

.form-group {
	margin-bottom: 20px;
}

.cssLINE_TEXT {
	font-weight: normal!important;
	color: #878787;
}

input[id^="ID_生年月日"] {
	border : 2px solid #313131;
	font-size: 14px;
	padding: 0 1em;
	line-height: 44px;
	height: 44px;
	width: 50%;
	margin-bottom: 6px;
}

.col-sm-10 {
	width: 83.33333333%;
	float: left;
}
.control-label {
 font-size: 16px;
 float: left;
 width: 165px;
}
.label-input {
 line-height: 60px;
}
.cssRAITENKEIKI {
display: flex;
}
.label-check {
 line-height: 36px;
}
input[type="date"]::-webkit-inner-spin-button{
/*	-webkit-appearance: none;*/
	height: 54px;
}
input[id^="ID_生年月日"]::-webkit-inner-spin-button{
/*-webkit-appearance: none;*/
	height: 30px;
}
.css時間選択中{
	color: #ffffff!important;
	background-color: #333333!important;
}
.cssTEXT{
	height: 54px;
	border : 3px solid #313131;
	font-size: 16px;
	padding: 0 1em;
}
.cssTEXT_FULL {
	width: 63%;
}
.cssPASS {
	display: flex;
	align-items: center;
	width: 63%;
	height: 54px;
	border : 3px solid #313131;
	font-size: 16px;
	padding: 0 1em;
}
.cssPASS input {
	flex-grow: 1;
	height: 100%;
}
.decoCHANGE_PASS {
	width: 50%;
}
input[id^="ID_生年月日"] {
	border : 3px solid #313131;
	font-size: 16px;
	padding: 0 1em;
	line-height: 54px;
	height: 54px;
	width: 40%;
	margin-bottom: 6px;
}
.cssRAITENABOUT {
	width: 125px;
}
.reserve-box img {
	width: 200px;
	height: auto;
	object-fit: cover;
	display: block;
	margin: auto;
	padding: 0;
}
.cssCONTACT_NOTES {
	font-size: 15px;
}
.br-sp {
	display: none;
}

.hover_border {
	position: relative;
}
.hover_border:hover:before {
	right: 0;
}
.hover_border:before {
	content: "";
	position: absolute;
	z-index: -1;
	left: 0;
	right: 100%;
	bottom: -3px;
	background: #313131;
	height: 1px;
	transition: right 0.4s cubic-bezier(0.77, 0, 0.175, 1);
}
.hover_border.gray:before {
	background: #878787;
}
.btn_hover {
	position: relative;
	display: block;
	overflow: hidden;
	transition: 0.5s ease-in-out;
	z-index: 0;
}
input[type="submit"]:hover .btn_hover:after {
	transform: translateX(0);
}
.btn_hover input[type="submit"]:hover {
	cursor: pointer;
	color: #fff;
	background: transparent;
}
input[type="submit"] .btn_hover {
	position: relative;
	display: block;
	overflow: hidden;
	transition: 0.5s ease-in-out;
	z-index: 0;
}
input[type="submit"] .btn_hover:after {
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: #313131;
	transform: translateX(-101%);
	transition: 0.4s ease-in-out;
	z-index: -1;
}
input[type="submit"] .btn_hover:hover {
	color: #fff;
	background: transparent;
}
input[type="submit"] .btn_hover:hover:after {
	transform: translateX(0);
}
.btn_hover path,
.btn_hover polygon {
	transition: 0.5s ease-in-out;
	fill: #313131;
}
.btn_hover:after {
	content: '';
	width: 100%;
	height: 99%;
	position: absolute;
	top: 0;
	left: 0;
	color: #ffffff;
	background-color: #ef5350;
	transform: translateX(-101%);
	transition: 0.4s ease-in-out;
	z-index: -1;
}
.btn_hover:hover {
	color: #fff;
	background: transparent;
	cursor: pointer;
}
.btn_hover:hover:after {
	transform: translateX(0);
}
.btn_hover:hover path,
.btn_hover:hover polygon {
	fill: #fff;
}
.btn_hover_black:after {
	background-color: #fff;
}
.btn_hover_black:hover {
	color: #313131;
	background: transparent;
}
.for_sp {
	display: none !important;
}
.for_pc {
	display: block !important;
}

.pankuzu {
	position: fixed;
	right: 4px;
	top: 0;
	z-index: 2;
	font-size: 10px;
	transform: rotate(-90deg) translateY(30px);
	transform-origin: right bottom;
	line-height: 10px;
	width: 100vh;
	text-align: center;
	letter-spacing: 0.16em;
	/*transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.8s, opacity 0.3s ease 0.8s;*/
	opacity: 0;
}
.pankuzu.on {
	opacity: 1;
	transform: rotate(-90deg) translateY(0);
}
.btn {
	width: 170px;
	height: 54px;
	border: 3px solid #313131;
	box-sizing: border-box;
}
.btn a {
	display: block;
	width: 100%;
	line-height: 44px;
	font-size: 14px;
	letter-spacing: 0.14em;
	text-align: center;
	background: #fff;
	vertical-align: unset;
	padding-top: 4px;
}

.btn a.selected {
	color:#fff;
	background:#ef5350;
}

.btn_black a {
	background: #313131;
	color: #fff;
}
.btn input[type="submit"] {
	display: block;
	width: 100%;
	line-height: 45px;
	font-size: 14px;
	letter-spacing: 0.14em;
	text-align: center;
	vertical-align: unset;
	padding-top: 3px;
	background: #fff;
	transition: 0.5s ease-in-out;
	font-weight: 600;
}
.reserve-btn .btn button {
	padding: 16px 0 12px;
	font-size: 16px;
	font-weight: 600;
	height: 100%;
	line-height: 1.5em;
}
.btn button {
	display: block;
	width: 100%;
	line-height: 44px;
	font-size: 14px;
	letter-spacing: 0.14em;
	text-align: center;
	background: #fff;
	vertical-align: unset;
	padding-top: 4px;
}
.btn button::after {
	background: #ef5350;
}
.cssinfomation{
	 font-size: 14px;
	 margin-top: 35px;
}

.cssinfomation p{
	letter-spacing: 0.01em;
	line-height: 18px;
	text-align: center;
}

.under_page .box_area, .remodal .box_area {
	padding: 60px 115px;
}

/*** IE11対応 ***/
*::-ms-backdrop, .under_page .form_search input{
	height: 60px;
	padding-top:4px;
}
*::-ms-backdrop, .remodal .form_search input{
	height: 60px;
	padding-top:4px;
}
*::-ms-backdrop{
	padding-top:5px;
}
*::-ms-backdrop{
	padding-top:5px;
}
*::-ms-backdrop, .under_page .form_text, .under_page .form_pass{
	height: 60px;
	padding-top:4px;
}

#ID_撮影予約{
	height	: 3em;
}
a:has(#ID_リピーターボタン){
	height	: 3em;
}
#ID_リピーターボタン{
	font-size: 0.8rem;
	transform:scale(0.9);
	height	: 3em;
}


/*** タブレット対応 ***/
@media screen and (min-width: 751px) and (max-width: 830px),
print {
.under_page .box_area {
	padding: 60px 65px;
}
}

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

}

#ID_来店契機備考_DIV{
	margin-bottom: 15px;
}


/* reserve */
.reserve-box {
	position: relative;
}

.reserve-box:after {
	content: '';
	width: calc(100% + 6px);
	height: calc(100% + 6px);
	background: #fff;
	position: absolute;
	bottom: -3px;
	left: -3px;
	transition: height 0.8s cubic-bezier(0.42, -0.01, 0.63, 0.18) 0.2s;
	transform-origin: center top;
	z-index: 9;
}

.reserve-box.reserve-btn:after {
	transition: height 0.4s cubic-bezier(0.42, -0.01, 0.63, 0.18) 0.1s;
}

.reserve-box.on:after {
	height: 0%;
}

.js-1st .reserve-box:after {
	content: none;
}


/* RESERVEページ用CSS */

.reserve-btn {
	text-align: center;
}

.reserve-btn .btn {
	display: inline-block;
	width: 315px;
	height: auto;
}


.reserve-btn .btn .btn_hover_red::after {
	color: #ffffff;
	background: #ef5350;
}

.reserve-btn .btn a {
	padding: 16px 0 12px;
	font-size: 16px;
	font-weight: 600;
	height: auto;
	line-height: 1.5em;
}
.reserve-btn .btn a span {
	display: block;
	font-weight: 300;
	font-family: sans-serif;
}


.reserve-btn .btn.is-active a {
	color: #ffffff;
	background: #ef5350;
}

.reserve-btn .btn.is-active a span {
	color: white;
}

.reserve-time {
	margin-top: 60px;
}


.reserve-time table {
	margin-top: 20px;
	width: 100%;
	border-bottom: 2px solid #e5e5e5;
}

.reserve-time table tr {
	border-top: 2px solid #e5e5e5;
}

.reserve-time table th,
.reserve-time table td {
	padding: 10px 0;
	vertical-align: middle;
}

.reserve-time table th {
	font-size: 20px;
	text-align: left;
}

.reserve-time table td {
	width: 260px;
}

.reserve-time .btn {
	margin: 5px 0;
}


.reserve-time .btn.is-disable {
border-color: #e5e5e5;
}

.reserve-time .btn.is-disable a {
color: #e5e5e5!important;
pointer-events: none;
}

*[id^="reserve"]{
	padding: 90px 0;
}

*[id^="reserve"] .reserve-step {
min-height: 121px;
margin-bottom: 42px;
text-align: center;
}

*[id^="reserve"] .reserve-step ul {
display: inline-block;
margin-bottom: 40px;
}


*[id^="reserve"] .reserve-step li {
position: relative;
float: left;
width: 46px;
height: 46px;
font-size: 17px;
line-height: 46px;
text-align: center;
color: white;
border-radius: 50%;
background: #e5e5e5;
}

*[id^="reserve"] .reserve-step li+li {
margin-left: 66px;
}

*[id^="reserve"] .reserve-step li:nth-of-type(n+2)::before {
content: "";
position: absolute;
left: -33px;
top: 50%;
display: block;
margin-top: -1.5px;
width: 30px;
height: 3px;
background: #e5e5e5;
transition: all 0.5s ease;
}

*[id^="reserve"] .reserve-step li:nth-last-of-type(n+2)::after {
	content: "";
	position: absolute;
	right: -33px;
	top: 50%;
	display: block;
	margin-top: -1.5px;
	width: 30px;
	height: 3px;
	background: #e5e5e5;
	transition: all 0.5s ease;
}


*[id^="reserve"] .reserve-step li.is-active {
	background: #eb6662;
}

*[id^="reserve"] .reserve-step li.is-after::after {
	background: #eb6662;
}

*[id^="reserve"] .reserve-step li.is-before::before {
	background: #eb6662;
}

*[id^="reserve"] .reserve-step li span {
	font-size: 14px;
}

*[id^="reserve"] .reserve-step p {
	font-size: 16px;
	font-weight: 600;
}

*[id^="reserve"] .reserve-step p a {
	font-weight: inherit;
	text-decoration: underline;
}

*[id^="reserve"] .reserve-step p a span {
	font-weight: 600;
}

*[id^="reserve"] .reserve-box {
	margin-bottom: 0;
	background-color: #fff;
}

*[id^="reserve"] .reserve-box h2 {
	margin-bottom: 20px;
}

*[id^="reserve"] .reserve-box h2+.inner_block {
	margin-top: 90px;
}

*[id^="reserve"] .reserve-box h2 span {
	display: inline-block;
	margin-right: 0.4em;
}

*[id^="reserve"] .reserve-box h2 span svg {
	position: relative;
	top: -2px;
	max-width: 32px;
	max-height: 32px;
	vertical-align: bottom;
}

*[id^="reserve"] .reserve-box h3 {
	margin-bottom: 10px;
	text-align: center;
}

*[id^="reserve"] .reserve-box h3+h2 {
	margin: 50px 0 40px;
}

*[id^="reserve"] .reserve-box h3.tleft {
	text-align: left;
}

*[id^="reserve"] .reserve-box+.reserve-box {
	margin-top: 20px;
}


*[id^="reserve"] .reserve-box .inner_block {
	margin: 0;
	padding: 0;
	border: none;
}

*[id^="reserve"] .reserve-box .inner_block+.inner_block {
	margin-top: 30px;
}

*[id^="reserve"] .reserve-box .inner_block h3 {
	margin-bottom: 15px;
}

*[id^="reserve"] .reserve-box .inner_block select,
*[id^="reserve"] .reserve-box .inner_block .form_text {
	margin: 0;
}

*[id^="reserve"] .reserve-inner {
	margin-top: 40px;
	padding-top: 40px;
	text-align: center;
	border-top: 2px solid #e5e5e5;
}


*[id^="reserve"] .reserve-inner h4 {
	font-size: 18px;
	font-weight: 600;
}

*[id^="reserve"] .reserve-inner p {
	font-size: 16px;
}

*[id^="reserve"] .reserve-step ul {
	padding-left: 0;
}

*[id^="reserve"] .reserve-form {
	margin-top: 50px;
}

*[id^="reserve"] .reserve-form p {
	font-weight: 600;
}

*[id^="reserve"] .reserve-form .reserve-input {
	position: relative;
	margin-bottom: 20px;
}

*[id^="reserve"] .reserve-form .reserve-input:last-of-type {
	margin: 0;
}

*[id^="reserve"] .reserve-form .reserve-input:last-of-type select {
	margin: 0;
}


*[id^="reserve"] .reserve-confirm {
	padding: 40px 0 60px;
	line-height: 1.5em;
}

*[id^="reserve"] .reserve-confirm:nth-of-type(n+2) {
	padding: 60px 0;
	border-top: 2px solid #e5e5e5;
}

*[id^="reserve"] .reserve-confirm a.for_pc {
	display: inline-block !important;
}

*[id^="reserve"] .reserve-confirm h3 {
	text-align: left;
}

*[id^="reserve"] .reserve-confirm a {
	margin-left: 2em;
	color: #878787;
	text-decoration: underline;
}

*[id^="reserve"] .reserve-confirm>dl {
	margin-top: 40px;
}

*[id^="reserve"] .reserve-confirm>dl dt {
	color: #878787;
}

*[id^="reserve"] .reserve-confirm .col>dl {
	margin-top: 40px;
	width: 266px;
}
*[id^="reserve"] .reserve-confirm .col>dl:nth-of-type(2n-1) {
	float: left;
}
*[id^="reserve"] .reserve-confirm .col>dl:nth-of-type(2n) {
	float: right;
}
*[id^="reserve"] .reserve-confirm .col>dl dt {
	color: #878787;
}

*[id^="reserve"] .reserve-confirm .col>dl dd img {
	display: block;
	margin: 10px 0;
	width: 100%;
}

*[id^="reserve"] .reserve-confirm_box {
margin-top: 40px;
	padding: 40px;
	font-size: 18px;
	line-height: 1.5em;
	border: 2px solid #e5e5e5;
}

*[id^="reserve"] .reserve-confirm_box h4 {
	font-weight: 600;
}

*[id^="reserve"] .reserve-confirm_box dl {
	display: table;
	padding: 0 0 12px;
	margin: 0 0 12px;
	width: 100%;
}

*[id^="reserve"] .reserve-confirm_box dl:nth-last-of-type(n+2) {
	border-bottom: 2px solid #e5e5e5;
}

*[id^="reserve"] .reserve-confirm_box dl:last-of-type {
	padding: 0;
	margin: 0;
}

*[id^="reserve"] .reserve-confirm_box dl dt,
*[id^="reserve"] .reserve-confirm_box dl dd {
	display: table-cell;
}

*[id^="reserve"] .reserve-confirm_box dl dd {
	text-align: right;
}

*[id^="reserve"] .reserve-confirm_box span {
	font-weight: 600;
}

*[id^="reserve"] .reserve-confirm_btn {
	margin-top: 20px !important;
}
*[id^="reserve"] .reserve-ttl {
	margin-bottom: 30px;
	text-align: center;
	font-size: 32px;
	font-weight: 600;
	letter-spacing: 0.2em;
}

.js-hidden {
	transition: max-height 0.8s ease;
	max-height: 0;
	overflow: hidden;
}

.js-hidden.on {
	max-height: 10000px;
}

.modal-box h2 span {
	margin-right: 10px;
}



.cssBTN_DBL{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-around;
	justify-content: space-around;
}

.css_TOP {
	margin: 20px auto;
}
/******************ログイン *********************************/
.cssメンバーログイン{
	display:flex;
	flex-direction:column;
	width: 100vw;
}
.cssメンバーログイン > .css戻るボタン{
	margin-bottom: 100px;
}
.cssログイン{
	height: 100vh;
	display: flex;
	justify-content: center;
}
.cssパスワード変更{
	color: #888;
}
.cssパスワード変更 > a{
	color: #ef5350;
}
.cssLOGIN {
	font-size: x-large;
	text-align: center;
}
img[class="cssLOGIN_IMG"]{
	width: 45px;
	height: auto;
	margin-bottom: 10px;
}


input[id^="ID_姓"],
input[id^="ID_名"] {
	width: 30%;
}

input[id^="ID_性別"] {
	position: relative;
	width: 100%;
	overflow: hidden;
	cursor: pointer;
}

/* 連絡者情報 */
.cssCAMPAIGN{
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
}

.css無効{
	border: none!important;
	cursor: default!important;
	pointer-events: none;
}


/*** ▼共通CSS　****/
.FS012{ font-size: 12px; }

.FW500{ font-weight: 500!important; }

.MT0{ margin-top: 0px!important; }
.MT015{ margin-top: 15px; }
.MT030{ margin-top: 30px; }


.MB0{ margin-bottom: 0px!important; }
.MB010{ margin-bottom: 10px; }
.MB015{ margin-bottom: 15px; }
.MB020{ margin-bottom: 20px; }
.MB030{ margin-bottom: 30px; }

.ML0{ margin-left: 0px!important; }


.PB015{ padding-bottom: 15px; }
.PB030{ padding-bottom: 30px; }

.WD0100{ width: 100px;}
.WD0120{ width: 120px;}

.DP_FLEX{
	display: flex;
	align-items: center;
}

.pc{
	display: block;
}
.sp{
	display: none;
}
header.cssメンバーヘッダ{
	background-color: rgba(000, 000, 000, 0.6);
	height: 50px;
	display: flex;
	width: 100%;
	align-items: center;
	font-size: 16px;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
}
.hd_logo{
	width		: 100px;
	margin		: 10px;
}

.cssメンバーヘッダ img:not(.hd_logo){
	width		: 30px;
	margin		: 0 auto;
}
.cssメンバーヘッダ p{
	color		: #fff;
}
.cssメンバーヘッダ > div > a{
	margin-left		: 20px;
}
.cssメンバーヘッダ .btn,
.cssメンバーヘッダ .btn a{
	border-radius		: 10px;
	background-color	: #ffffa8;
}

/* ハンバーガーメニュー */
#header{
	margin-right:60px;
}
#global-head {
  position: fixed;
  color: #fff;
  text-align: center;
  z-index: 100;
  width: 100%;
  /*ヘッダー横幅MAX*/
  height: 54px;
  background: rgba(0, 113, 164, 0.9);
  display: -webkit-flex;
  display: flex;
}

#ID_ヘッダーサイドバー {
  font-size: 15px;
  padding-top: 120px;
  height: 100%;
  position: fixed;
  color: #fff;
  text-align: center;
  position: fixed;
  top: 0;
  height: 100%;
  width: 400px;
  background: #666666;
  -webkit-transition: .35s ease-in-out;
  transition: .35s ease-in-out;
  right: -300px;
  width: 300px;
  padding-top: 95px;
}

#global-nav ul {
  list-style: none;
  margin-left: 0;
  padding: 0;
}

#global-nav>ul>li {
  position: relative;
}

#global-nav a {
  color: #fff;
  text-decoration: none;
  display: block;
  padding: 15px 0;
  -moz-transition: background-color .3s linear;
  -webkit-transition: background-color .3s linear;
  transition: background-color .3s linear;
}

#global-nav .sub-menu.is-active>a, #global-nav a:hover {
  color: rgb(0, 113, 164);
  background: #fff;
}

#global-nav .sub-menu-nav a, #global-nav .sub-menu:hover .sub-menu-nav {
  width: 230px;
}

/* sub-menu icon */

#global-nav .sub-menu-head {
  position: relative;
}

#global-nav .sub-menu-head:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 18px;
  margin: auto;
  vertical-align: middle;
  width: 8px;
  height: 8px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* nav-toggle */

#nav-toggle {
  display: none;
  position: fixed;
  top: 15px;
  right: 15px;
  height: 20px;
  align-items: center;
}

#nav-toggle>div {
  position: relative;
  width: 32px;
}

#nav-toggle span {
  width: 100%;
  height: 2px;
  left: 0;
  display: block;
  background: #fff;
  position: absolute;
  -webkit-transition: .35s ease-in-out;
  -moz-transition: .35s ease-in-out;
  transition: .35s ease-in-out;
}

#nav-toggle span:nth-child(1) {
  top: 0;
}

#nav-toggle span:nth-child(2) {
  top: 11px;
}

#nav-toggle span:nth-child(3) {
  top: 22px;
}

#overlay {
  display: none;
  position: fixed;
  background: rgba(0, 0, 0, .6);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

#global-nav .sub-menu-head:after, #global-nav .sub-menu-nav {
  display: none;
}

#nav-toggle {
  display: inline-flex;
}

/* nav open */

.open {
  overflow: hidden;
}

.open #overlay {
  display: block;
}

.open #ID_ヘッダーサイドバー {
  -webkit-transform: translate3d(-400px, 0, 0);
  transform: translate3d(-400px, 0, 0);
  -webkit-transform: translate3d(-300px, 0, 0);
  transform: translate3d(-300px, 0, 0);
}

/* #nav-toggle close */

.open #nav-toggle span:nth-child(1) {
  top: 11px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  transform: rotate(45deg);
}

.open #nav-toggle span:nth-child(2) {
  width: 0;
  left: 50%;
}

.open #nav-toggle span:nth-child(3) {
  top: 11px;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

/* z-index */

#overlay {
  z-index: 200;
}

#ID_ヘッダーサイドバー {
  z-index: 1;
}

#nav-toggle {
  z-index: 400;
}
/* メンバーページ */
.cssヘッダボタン{
	width				: 25px!important;
	height				: 25px!important;
}
.css予約内容{
	display				: flex;
	flex-direction		: column;
	border-radius		: 5px;
	background-color	: #fff;
	width				: 100%;
	padding				: 20px;
	margin				: 10px 0;
	font-size			: 16px;
}
.css予約内容 img{
	width				: 20px;
	height				: 20px;
	margin-right		: 10px;
}
.css予約コース名{
	font-weight			: bold;
	margin				: 15px 0 0;
	font-size			: 1.3rem;
	color				: #213a70;
}
.css予約確認変更{
	background-color	: ghostwhite;
	display				: flex;
	justify-content		: center;
	padding-bottom		: 60px;
}
.css予約確認変更 > div{
	width				: 50%;
}
.css予約確認変更 h3 {
	text-align: center;
	position: relative;
	margin-bottom: 40px;
	margin-top: 40px;
}
.css予約確認変更 h3::before {
	content: '';
	width: 11%;
	height: 1px;
	display: inline-block;
	background-color: #d2d2d2;
	position: absolute;
	bottom: 17px;
	left: calc(10% - 28px);
}
.css予約確認変更 h3::after {
	content: '';
	width: 11%;
	height: 1px;
	display: inline-block;
	background-color: #d2d2d2;
	position: absolute;
	bottom: 17px;
	right: calc(10% - 28px);
}
.css戻るボタン{
	margin			: 0 0 20px 100px;
}
@keyframes menu_on2 {
	0% {
		transform: skew(15deg);
		opacity: 0.4;
	}
	100% {
		transform: skew(0deg);
		opacity: 1;
	}
}

/*** スマホ対応 ***/
@media (max-width: 750px){
	.cssメンバーログイン{
		padding: 30px;
	}
	.cssメンバーログイン > .css戻るボタン{
		margin-bottom: 30px;
	}
	.cssパスワード変更{
		font-size: 14px!important;
	}
	#reserve
	 {
		overflow: auto;
		min-height: 100vh;
		-webkit-overflow-scrolling: touch;
	}
	select{
		border: 2px solid #313131;
		line-height: 44px;
		height: 44px;
	}
	.under_page .box_area{
		width: inherit;
	}
	.control-label {
	 margin-bottom: 5px;
	 font-size: 14px;
	 width: 100%;
	}
	input[type="date"]::-webkit-inner-spin-button{
		height: 44px;
	}
	.cssTEXT{
		height: 44px;
		border : 2px solid #313131;
		font-size: 14px;
		padding: 0 1em;
	}
	.cssTEXT_FULL {
		width: 95%;
	}
	.cssPASS {
		width: 95%;
		height: 44px;
		border : 2px solid #313131;
		font-size: 14px;
		padding: 0 1em;
	}
	.decoCHANGE_PASS {
		width: 90%;
	}

	input[id^="ID_BIRTH"],
	#ID_ADD_BIRTHDAY {
		border : 2px solid #313131;
		font-size: 14px;
		line-height: 44px;
	height: 44px;
	width: 40%;
		padding: 0 1em;
	}
	textarea[id="ID_BIKOU"] {
		font-size: 14px;
	}
	.cssRAITENABOUT {
		width: 160px;
	}
	.reserve-box img {
		width: 190px;
		height: 290px;
		object-fit: cover;
		display: block;
		margin: auto;
		padding: 0;
	}
	.cssTEXTDONE {
		font-size: 12px;
	}
	.disp-pc {
		display: none;
	}
	.disp-sp {
		padding: 0!important;
	}
	.cssCONTACT_NOTES {
		 font-size: 13px;
	}

	.br-sp {
		display: block;
	}
	
	.under_page .page_title{
		font-size: 16px;
		padding-top: 130px;
		line-height: 16px;
		margin-bottom: 40px;
	}
	.under_page .box_first_line{
		height: 49px;
	}
	.under_page .box_first_line.on span{
		height: 49px;
	}
	.under_page .box_first_line span{
		height: 0;
		width: 2px;
	}
	.under_page .box_line{
		height: 49px;
	}
	.under_page .box_line span{
		width: 2px;
	}
	.under_page .box_line.on span{
		height: 49px;
	}
	.under_page .box_area{
		border: 2px solid #313131;
		margin: 0 10px 0px;
		padding: 35px 30px;
		/* background: #FFF; */
	}
	
	.under_page h2{
		font-size: 14px;
		margin-bottom: 15px;
		line-height: 1.6em;
	}
	.under_page h2 span{
		font-size: 12px;
		margin-top: 5px;
	}
	.under_page h3{
		font-size: 13px;
		margin-bottom: 20px;
	}
	.under_page h4 {
		font-size: 12px;
		line-height: 1.5em;
		margin-bottom: 10px;
	}
	.under_page .subtext{
		margin-top: 40px;
		line-height: 1.6em;
		font-size: 13px;
		margin-bottom: 38px;
	}
	.under_page .alert{
		font-size: 11px;
		height: 0;
	}
	.under_page .alert.show{
		height: 25px;
	}
	
	.under_page .form_btn{
		position: absolute;
		top: 0;
		right: 0;
		z-index: -1;
		display: block;
		padding: 16.5px;
		width: 45px;
		height: 45px;
		text-align: center;
		background: #313131;
		box-sizing: border-box;
	}
	.under_page .form_btn{
		z-index: 20;
	}
	.under_page .form_btn:hover{
		cursor: pointer;
	}
	.under_page .form_btn path{
		fill: #fff;
	}
	.under_page .form_btn .icon-search{
		width: 12px;
		height: 12px;
	}
	.under_page .form_btn .icon-dropdown{
		margin: 2.75px 2.25px;
		width: 7.5px;
		height: 6.5px;
		vertical-align: top;
	}
	.under_page .form_text, .under_page .form_pass{
		display: block;
		width: 100%;
		border: 2px solid #313131;
		box-sizing: border-box;
		line-height: 44px;
		text-indent: 1em;
		margin-bottom: 15px;
		text-align: left;
	}
	.under_page .form_pass {
		display: flex;
		align-items: center;
	}

	.under_page .form_check input[type="checkbox"],
	.under_page .form_check input[type="radio"]{
		width: 30px;
		height: 30px;
		border: 2px solid #313131;
		box-sizing: border-box;
		margin-left: 5px;
		margin-right: 2px;
	}
	.under_page .form_check input[type="checkbox"]:checked,
	.under_page .form_check input[type="radio"]:checked{
		background: url(/reservation/common/img/checked.png) center center no-repeat;
		background-size: 14px auto;
	}
	.under_page .form_check span{
		font-size: 13px;
		margin-right: 20px;
	}
	
	.under_page .form_submit{
		margin-left: 5px;
		width: 80px;
		height: 44px;
		font-size: 13px;
		color: white;
		background: #313131;
	}
	.under_page .form_card .form_text+.form_text{
		margin-top: -2px !important;
	}
	.under_page .form_card2::after{
		content: "";
		display: block;
		clear: both;
		overflow: hidden;
	}
	
	.under_page .inner_block{
		padding-bottom: 50px;
		border-bottom: 2px solid #e5e5e5;
		margin-bottom: 40px;
	}
	.under_page .bar{
		width: 8px;
		height: 2px;
		background: #313131;
		display: block;
		margin: 0 4px 15px;
	}
	
	.under_page .pankuzu{
		margin: 50px 10px 10px;
		text-align: center;
	}
	.under_page .pankuzu span:not(.j_sans){
		display: inline-block;
		width: 9px;
		height: 2px;
		background: #e5e5e5;
		margin: 0px 5px 2px;
	}
	.under_page .footer{
		padding-top: 10px;
	}
	
	/*

	register
	
	*/
	#register.under_page .form_name.name2 {
		margin-bottom: 15px;
	}
	#register.under_page .mb {
		margin-bottom: 32px;
	}
	#register.under_page .note {
		font-size: 12px;
		line-height: 1.6em;
		margin-bottom: 2px;
		letter-spacing: 0.02em;
	}
	#register.under_page .pass_note {
		margin-top: -10px;
		font-size: 12px;
		margin-bottom: 15px;
	}
	#register.under_page .box_area .btn {
		margin: 50px auto 5px;
	}
	.reserve-btn .btn {
		display: block;
		max-width: 80%;
	}
	.reserve-btn .btn a {
		padding: 14px 0 8px;
		font-size: 12px;
		font-weight: 600;
		line-height: 1.3em;
	}
	
	.reserve-btn .btn button {
		padding: 14px 0 8px;
		font-size: 12px;
		font-weight: 600;
		height: 100%;
		line-height: 1.3em;
		width:100%;
	}
	
	.btn button {
		display: block;
		width: 100%;
		line-height: 34px;
		font-size: 14px;
		letter-spacing: 0.14em;
		text-align: center;
		background: #fff;
		color: #333;
		vertical-align: unset;
		padding-top: 4px;
	}
	.btn button::after {
		background: #ef5350;
		color: #fff;
	}
	.reserve-btn .btn a span {
		font-size: 18px;
		color: #878787;
		transform: scale(0.5);
	}
	.reserve-btn .btn+.btn {
		margin-top: 5px;
	}
	.reserve-time {
		margin-top: 30px;
	}
	.reserve-time h3 {
		margin-bottom: 0;
	}
	.reserve-time table {
		margin-top: 8px;
		border-width: 1px;
	}
	.reserve-time table tr {
		border-width: 1px;
	}
	.reserve-time table th,
	.reserve-time table td {
		padding: 8px 0;
	}
	.reserve-time table th {
		font-size: 13px;
	}
	.reserve-time table td {
		width: 160px;
	}
	.reserve-time .btn {
		max-width: 140px;
		display: inline-block;
	}
	.reserve-time .btn a {
		padding: 10px 0 4px;
	}
	*[id^="reserve"] {
		padding: 30px 0;
	}
	*[id^="reserve"] .reserve-step {
		margin-bottom: 0;
		min-height: 0;
		height: 122px;
	}
	*[id^="reserve"] .reserve-step ul {
		margin-bottom: 6px;
	}
	*[id^="reserve"] .reserve-step li {
		width: 27px;
		height: 27px;
		font-size: 10px;
		line-height: 27px;
	}
	*[id^="reserve"] .reserve-step li+li {
		margin-left: 40px;
	}
	*[id^="reserve"] .reserve-step li:nth-of-type(n+2)::before {
		left: -18px;
		margin-top: -1px;
		width: 17px;
		height: 2px;
	}
	*[id^="reserve"] .reserve-step li:nth-last-of-type(n+2)::after {
		right: -18px;
		margin-top: -1px;
		width: 16px;
		height: 2px;
	}
	*[id^="reserve"] .reserve-step li span {
		display: inline-block;
		margin: 0 -50%;
		width: 200%;
		font-size: 16px;
		transform: scale(0.5);
	}
	*[id^="reserve"] .reserve-step p {
		font-size: 12px;
		letter-spacing: 0;
		margin: 26px 0;
	}
	*[id^="reserve"] .reserve-step p a span {
		display: none;
	}
	*[id^="reserve"] .reserve-box h2 {
		margin-bottom: 0;
	}
	*[id^="reserve"] .reserve-box h2+h3 {
		font-weight: 600;
	}
	*[id^="reserve"] .reserve-box h2+.inner_block {
		margin-top: 40px;
	}
	
	*[id^="reserve"] .reserve-box h2 span svg {
		top: -3px;
		max-width: 17px;
		max-height: 17px;
	}
	*[id^="reserve"] .reserve-box h3 {
		margin-bottom: 20px;
		line-height: 1.5;
	}
	*[id^="reserve"] .reserve-box h3+h2 {
		margin-bottom: 20px;
	}
	*[id^="reserve"] .reserve-box+.reserve-box {
		margin-top: 15px;
	}
	*[id^="reserve"] .reserve-inner {
		margin-top: 24px;
		padding-top: 20px;
		border-top-width: 1px;
	}

	*[id^="reserve"] .reserve-box .inner_block h2 {
		display: none;
	}
	*[id^="reserve"] .reserve-confirm h3 {
		font-size: 13px;
		font-weight: 600;
	}
	*[id^="reserve"] .reserve-inner h4 {
		margin-bottom: 8px;
		font-size: 11px;
		line-height: 1.5em;
	}
	*[id^="reserve"] .reserve-inner p {
		margin-bottom: 16px;
		font-size: 10px;
		line-height: 1.5em;
		color: #878787;
	}
	*[id^="reserve"] .reserve-inner .reserve-btn .btn {
		margin: 30px auto 0;
	}
	*[id^="reserve"] .reserve-form {
		margin-top: 20px;
	}
	*[id^="reserve"] .reserve-confirm {
		font-size: 13px;
		padding: 30px 0 40px;
	}
	*[id^="reserve"] .reserve-confirm:nth-of-type(n+2) {
		padding: 50px 0;
		border-width: 1px;
	}
	*[id^="reserve"] .reserve-confirm:last-of-type {
		padding-bottom: 0;
	}
	*[id^="reserve"] .reserve-confirm a.for_sp {
		display: inline-block !important;
	}
	*[id^="reserve"] .reserve-confirm>dl {
		margin-top: 20px;
	}
	*[id^="reserve"] .reserve-confirm_box {
		margin-top: 20px;
		padding: 20px;
		font-size: 13px;
		border-width: 1px;
	}
	*[id^="reserve"] .reserve-confirm_box dl:nth-last-of-type(n+2) {
		border-width: 1px;
	}
	*[id^="reserve"] .reserve-box h2{
		margin-bottom: 6px;
	}
	*[id^="reserve"] .reserve-ttl {
		font-size: 14px;
	}
	*[id^="reserve"] .reserve-form .reserve-input {
		width: 100%;
	}
	.control-label + div{
		width: 100%;
	}
	
	.for_sp {
		display: block !important;
	}
	.for_pc {
		display: none !important;
	}
	header {
		background: #fff;
		width: 100%;
		display: flex;
		justify-content: space-between;
		padding: 14px 0;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 2;
	}
	/* 200422修正作業 */
	header .logo {
		/*margin-left: 10px;*/
	}
	header .logo a {
		display: block;
		/*height: 16px;*/
	}
	header .logo img {
		/*height: 10px;*/
		width: auto;
		/*margin-top: 4px;*/
	}
	
	.btn {
		width: 185px;
		height: 42px;
		border: 2px solid #313131;
		box-sizing: border-box;
		margin: 10px auto;
	}
	.btn a {
		display: block;
		width: 100%;
		line-height: 34px;
		font-size: 12px;
		letter-spacing: 0.14em;
		text-align: center;
		background: #fff;
		padding-top: 4px;
		font-weight: 600;
	}
	.btn_black a {
		background: #313131;
		color: #fff;
	}
	.btn input[type="submit"] {
		display: block;
		width: 100%;
		line-height: 36px;
		font-size: 12px;
		letter-spacing: 0.14em;
		text-align: center;
		background: #fff;
		padding-top: 2px;
		font-weight: 600;
	}
	.pankuzu {
		margin: 30px 10px 10px;
		font-size: 9px;
		line-height: 9px;
		letter-spacing: 0.16em;
	}
	
	.cssログイン{
		padding: 0;
	}
	
	.css生年月日入力欄{
		width: 100%;
	}
	.css生年月日入力欄 select{
		padding: 0 8px 0 0;
	}
	#ID_来店契機備考_DIV {
		margin-left: 0px;
	}
	#ID_来店契機詳細 {
		margin-left: 0px;
	}
	
	#ID_リピーターボタン{
		font-size: 0.6rem;
	}
	
	.css予約内容{
		width				: 90%;
		padding				: 20px;
		margin				: 5px 0;
		font-size			: 14px;
	}
	.css予約コース名{
		margin				: 5px 0 0;
		font-size			: 1.1rem;
	}
	.css予約確認変更 > div{
		width				: 90%;
	}
	.css予約確認変更 h3 {
/*		margin-bottom: 0;
		margin-top: 30px;*/
	}
	.css予約確認変更 h3::before {
		content: '';
		width: 15%;
		bottom: 10px;
	}
	.css予約確認変更 h3::after {
		content: '';
		width: 15%;
		bottom: 10px;
	}
	.css注意文{
		font-size: 0.7rem;
	}
	.cssメンバーヘッダ .btn{
		width		: 150px;
	}
	.css戻るボタン{
		margin-left		: 10px;
	}
	.css戻るボタン img{
		width			: 100px;
	}
	.css予約時間確認エリア{
		padding-left	: 20px!important;
		padding-right	: 20px!important;
	}
	.pc{
		display: none;
	}
	.sp{
		display: block;
	}
}
