/*=================

      content.scss

=======================*/
/*popup*/
.filter {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 1A00vh;
	z-index: 10000;
	background-color: rgba(0, 0, 0, 0.6);
	display: none;
}

.popup {
	position: fixed;
	top: 50%;
	left: 50%;
	-webkit-transform: translateX(-50%) translateY(-50%);
	transform: translateX(-50%) translateY(-50%);
	z-index: 20000;
	width: calc(100% - 32px);
	max-width: 560px;
}

.popup .popup_inner .popup_content {
	background-color: #FFF;
	border: 2px solid #EB7B9B;
	border-radius: 20px;
}

.popup .popup_inner .popup_content .popup_content_title {
	background-color: #EB7B9B;
	border-radius: 18px 18px 0 0;
	padding: 16px;
	text-align: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 18px;
	color: #FFF;
	line-height: 1.5;
	letter-spacing: 0.05em;
}

@media only screen and (max-width: 640px) {
	.popup .popup_inner .popup_content .popup_content_title {
		padding: 16px 8px;
		font-size: 16px;
	}
}

.popup .popup_inner .popup_content .popup_content_detail {
	padding: 20px 16px;
}

@media only screen and (max-width: 640px) {
	.popup .popup_inner .popup_content .popup_content_detail {
		padding: 20px 8px;
	}
}

.popup .popup_inner .popup_content .popup_content_detail .popup_content_btn_wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: 100%;
}

.popup .popup_inner .popup_content .popup_content_detail .popup_content_btn_wrap .popup_content_btn {
	width: calc((100% - 16px) /2);
	padding: 16px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	text-align: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 16px;
	color: #EB7B9B;
	line-height: 1.5;
	letter-spacing: 0.05em;
	border-radius: 40px;
	border: 1px solid #9D9D9D;
}

@media only screen and (max-width: 640px) {
	.popup .popup_inner .popup_content .popup_content_detail .popup_content_btn_wrap .popup_content_btn {
		width: calc((100% - 8px) /2);
		padding: 16px 8px;
		font-size: 14px;
	}
}

/*common*/
.common_wrap {
	padding: 0 8px;
}

.common_inner {
	max-width: 800px;
	margin: 0 auto;
	position: relative;
}

.common_error_msg {
	text-align: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 20px;
	color: #FB3C3C;
	line-height: 1.5;
	letter-spacing: 0.05em;
	margin: 20px 0 0;
}

@media only screen and (max-width: 640px) {
	.common_error_msg {
		font-size: 16px;
	}
}

.common_form_btn_block {
	position: relative;
	padding: 0 0 80px;
	margin: 60px 0 0;
}

@media only screen and (max-width: 640px) {
	.common_form_btn_block {
		padding: 0 0 60px;
		margin: 40px 0 0;
	}
}

.common_form_btn_block .common_form_btn_wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: 100%;
}

.common_form_btn_block .common_form_btn_wrap .common_form_back_btn {
	width: 36%;
	height: 60px;
	border-radius: 40px;
	background-color: #A6A6A6;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 20px;
	color: #FFF;
	line-height: 1.5;
	letter-spacing: 0.05em;
	text-align: center;
	-webkit-box-shadow: 0px 9px 10px rgba(0, 0, 0, 0.16);
	box-shadow: 0px 9px 10px rgba(0, 0, 0, 0.16);
}

@media only screen and (max-width: 640px) {
	.common_form_btn_block .common_form_btn_wrap .common_form_back_btn {
		height: 48px;
		font: 18px;
	}
}

.common_form_btn_block .common_form_btn_wrap .common_form_next_btn {
	width: 62%;
	height: 80px;
	border-radius: 50px;
	background-color: #B5B5B5;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 28px;
	color: #FFF;
	line-height: 1.5;
	letter-spacing: 0.05em;
	text-align: center;
	-webkit-box-shadow: 0px 9px 10px rgba(0, 0, 0, 0.16);
	box-shadow: 0px 9px 10px rgba(0, 0, 0, 0.16);
}

@media only screen and (max-width: 640px) {
	.common_form_btn_block .common_form_btn_wrap .common_form_next_btn {
		height: 64px;
		font-size: 24px;
	}
}

.common_form_btn_block .common_form_btn_wrap .common_form_next_btn.active {
	background-color: #B1E739;
}

.common_form_submit_btn_wrap .form_privacy_link_text {
	text-align: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 16px;
	color: #458dd5;
	line-height: 1.5;
	letter-spacing: 0.05em;
	margin: 0 0 20px;
}

.common_form_submit_btn_wrap .form_privacy_link_text a {
	color: #458dd5;
	text-decoration: underline;
}

.common_form_submit_btn_wrap .common_submit_btn {
	width: 100%;
	height: 80px;
	border-radius: 50px;
	margin: 0 auto 16px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	background-color: #B5B5B5;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 28px;
	color: #FFF;
	line-height: 1.5;
	letter-spacing: 0.05em;
	text-align: center;
	-webkit-box-shadow: 0px 9px 10px rgba(0, 0, 0, 0.16);
	box-shadow: 0px 9px 10px rgba(0, 0, 0, 0.16);
}

@media only screen and (max-width: 640px) {
	.common_form_submit_btn_wrap .common_submit_btn {
		height: 64px;
		font-size: 24px;
	}
}

.common_form_submit_btn_wrap .common_submit_btn.active {
	background-color: #B1E739;
}

.common_form_submit_btn_wrap .common_form_text_back_btn {
	display: block;
	text-align: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 16px;
	color: #333;
	line-height: 1.5;
	letter-spacing: 0.05em;
	text-decoration: underline;
	margin: 0 auto;
}

/*fv*/
.fv {
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
}

.fv .fv_img {
	width: 100%;
}

.fv .fv_img img {
	width: 100%;
}

/*form*/
.form {
	padding: 80px 0;
}

@media only screen and (max-width: 640px) {
	.form {
		padding: 48px 0;
	}
}

.form_step_list .form_step_item {
	position: relative;
}

.form_step_list .form_step_item .common_form_img {
	position: absolute;
	right: -10px;
	width: 100px;
	z-index: 2;
}

@media only screen and (max-width: 640px) {
	.form_step_list .form_step_item .common_form_img {
		width: 64px;
	}
}

.form_step_list .form_step_item .common_form_img.img_01 {
	top: 218px;
}

@media only screen and (max-width: 640px) {
	.form_step_list .form_step_item .common_form_img.img_01 {
		top: 146px;
	}
}

.form_step_list .form_step_item .common_form_img.img_02 {
	top: 970px;
}

@media only screen and (max-width: 640px) {
	.form_step_list .form_step_item .common_form_img.img_02 {
		top: 698px;
	}
}

.form_step_list .form_step_item .common_form_img.img_03 {
	top: 256px;
}

@media only screen and (max-width: 640px) {
	.form_step_list .form_step_item .common_form_img.img_03 {
		top: 248px;
	}
}

.form_step_list .form_step_item .common_form_img.img_04 {
	top: 820px;
}

@media only screen and (max-width: 640px) {
	.form_step_list .form_step_item .common_form_img.img_04 {
		top: 652px;
	}
}

.form_step_list .form_step_item .common_form_img.img_05 {
	top: 300px;
}

@media only screen and (max-width: 640px) {
	.form_step_list .form_step_item .common_form_img.img_05 {
		top: 182px;
	}
}

.form_step_list .form_step_item .common_form_img.img_06 {
	top: 1020px;
}

@media only screen and (max-width: 640px) {
	.form_step_list .form_step_item .common_form_img.img_06 {
		top: 736px;
	}
}

.form_step_list .form_step_item .common_form_img.img_07 {
	top: 514px;
}

@media only screen and (max-width: 640px) {
	.form_step_list .form_step_item .common_form_img.img_07 {
		top: 388px;
	}
}

.form_step_list .form_step_item .common_form_img.img_08 {
	top: 1682px;
}

@media only screen and (max-width: 640px) {
	.form_step_list .form_step_item .common_form_img.img_08 {
		top: 1372px;
	}
}

.form_step_list .form_step_item .common_form_img.img_09 {
	top: 458px;
}

@media only screen and (max-width: 640px) {
	.form_step_list .form_step_item .common_form_img.img_09 {
		top: 366px;
	}
}

.form_step_list .form_step_item .common_form_img.img_10 {
	top: 936px;
}

@media only screen and (max-width: 640px) {
	.form_step_list .form_step_item .common_form_img.img_10 {
		top: 764px;
	}
}

.form_step_list .form_step_item .common_form_img img {
	width: 100%;
}

.form_step_img {
	width: 100%;
	max-width: 720px;
	margin: 0 auto 40px;
}

.form_step_img img {
	width: 100%;
}

.form_step_item_title {
	text-align: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 36px;
	color: #333;
	line-height: 1.5;
	letter-spacing: 0.05em;
	margin: 0 0 32px;
}

@media only screen and (max-width: 640px) {
	.form_step_item_title {
		font-size: 23px;
	}
}

.form_step_item_title span {
	font-size: 24px;
}

@media only screen and (max-width: 640px) {
	.form_step_item_title span {
		font-size: 18px;
	}
}

.form_step_check_list_wrap {
	position: relative;
}

.form_step_check_list_wrap .form_step_check_list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 100%;
	margin: 0 0 -20px;
}

.form_step_check_list_wrap .form_step_check_list .form_step_check_item {
	width: calc((100% - 40px) /2);
	margin: 0 40px 20px 0;
}

@media only screen and (max-width: 640px) {
	.form_step_check_list_wrap .form_step_check_list .form_step_check_item {
		width: calc((100% - 20px) /2);
		margin: 0 20px 20px 0;
	}
}

.form_step_check_list_wrap .form_step_check_list .form_step_check_item:nth-of-type(2n) {
	margin: 0 0 20px 0;
}

.form_step_checkbox {
	display: none;
}

.form_step_checkbox_btn {
	border-radius: 10px;
	border: 1px solid #EB7B9B;
	background-color: #FFF;
	padding: 20px;
	width: 100%;
	height: 100%;
	-webkit-box-shadow: 8px 9px 10px rgba(0, 0, 0, 0.16);
	box-shadow: 8px 9px 10px rgba(0, 0, 0, 0.16);
}

@media only screen and (max-width: 640px) {
	.form_step_checkbox_btn {
		padding: 16px;
		padding: 12px 8px;
	}
}

.form_step_checkbox_btn .form_step_checkbox_btn_img {
	width: 100%;
	max-width: 120px;
	margin: 0 auto 8px;
}

@media only screen and (max-width: 640px) {
	.form_step_checkbox_btn .form_step_checkbox_btn_img {
		max-width: 80px;
		margin: 0 auto 4px;
	}
}

.form_step_checkbox_btn .form_step_checkbox_btn_img img {
	width: 100%;
}

.form_step_checkbox_btn .form_step_checkbox_btn_text {
	text-align: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 20px;
	color: #333;
	line-height: 1.5;
	letter-spacing: 0.05em;
}

@media only screen and (max-width: 640px) {
	.form_step_checkbox_btn .form_step_checkbox_btn_text {
		font-size: 16px;
	}
}

.form_step_checkbox:checked+.form_step_checkbox_btn {
	background-color: #FFF0E5;
}

.ball {
	animation: ball 0.4s alternate 4;
	-webkit-animation: ball 0.4s alternate 4;
	-moz-animation: ball 0.4s alternate 4;
}

@keyframes ball {
	0% {
		-webkit-transform: translate(0%, 0%) rotateX(25deg);
		transform: translate(0%, 0%) rotateX(25deg);
	}

	100% {
		-webkit-transform: translate(0%, -40px);
		transform: translate(0%, -40px);
	}
}

@-webkit-keyframes ball {
	0% {
		-webkit-transform: translate(0%, 0%) rotateX(25deg);
	}

	100% {
		-webkit-transform: translate(0%, -40px);
	}
}

.form_privacy_text {
	text-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 22px;
	color: #333;
	line-height: 1.5;
	letter-spacing: 0.05em;
	margin: 0 0 24px;
}

@media only screen and (max-width: 640px) {
	.form_privacy_text {
		font-size: 18px;
	}
}

.form_privacy_text img {
	width: 30px;
	margin: 0 16px 0 0;
}

@media only screen and (max-width: 640px) {
	.form_privacy_text img {
		width: 22px;
		margin: 0 8px 0 0;
	}
}

.form_agent_img {
	width: 100%;
	max-width: 500px;
	margin: 0 auto 24px;
}

.form_agent_img img {
	width: 100%;
}

.form_input_block_wrap .form_input_block {
	margin: 0 0 48px;
}

.form_input_block_wrap .form_input_block:last-child {
	margin: 0 0 0;
}

.form_select_birthday_wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: 100%;
}

.form_select_birthday_wrap .form_select_birthday {
	width: calc((100% - 32px) /3);
	background-color: #FFF0E5;
	border-radius: 40px;
	border: 1px solid #EB7B9B;
	padding: 16px 32px 16px 16px;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 18px;
	color: #333;
	line-height: 1.5;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-image: url(../images/content/icon_arrow_bottom.svg);
	background-repeat: no-repeat;
	background-size: 12px 8px;
	background-position: right 16px center;
}

@media only screen and (max-width: 640px) {
	.form_select_birthday_wrap .form_select_birthday {
		padding: 12px 28px 12px 12px;
		font-size: 16px;
		background-position: right 12px center;
	}
}

.form_input_wrap {
	width: 100%;
}

.form_input_wrap.mb_32 {
	margin: 0 0 32px;
}

.form_input_wrap .form_input_100 {
	width: 100%;
	background-color: #FFF0E5;
	border-radius: 40px;
	border: 1px solid #EB7B9B;
	padding: 16px;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 18px;
	color: #333;
	line-height: 1.5;
}

@media only screen and (max-width: 640px) {
	.form_input_wrap .form_input_100 {
		padding: 12px;
		font-size: 16px;
	}
}

.form_input_wrap .form_input_100::-webkit-input-placeholder {
	color: #9D9D9D;
}

.form_input_wrap .form_input_100::-ms-input-placeholder {
	color: #9D9D9D;
}

.form_input_wrap .form_input_100::placeholder {
	color: #9D9D9D;
}

.form_input_wrap .form_input_note {
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 18px;
	color: #333;
	line-height: 1.5;
	letter-spacing: 0.05em;
	margin: 0 0 16px;
}

@media only screen and (max-width: 640px) {
	.form_input_wrap .form_input_note {
		font-size: 16px;
		margin: 0 0 8px;
	}
}

.form_address_btn {
	margin: 8px 0 0;
	width: 100%;
	height: 56px;
	border-radius: 40px;
	background-color: #EB7B9B;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 18px;
	color: #FFF;
	line-height: 1.5;
	letter-spacing: 0.05em;
}

@media only screen and (max-width: 640px) {
	.form_address_btn {
		font-size: 16px;
		height: 50px;
	}
}

.form_address_btn img {
	width: 12px;
	margin: 0 0 0 8px;
}

.form_select_address_block {
	margin: 40px 0 0;
	width: 100%;
}

.form_select_100 {
	width: 100%;
	background-color: #FFF0E5;
	border-radius: 40px;
	border: 1px solid #EB7B9B;
	padding: 16px 32px 16px 16px;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 18px;
	color: #333;
	line-height: 1.5;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-image: url(../images/content/icon_arrow_bottom.svg);
	background-repeat: no-repeat;
	background-size: 12px 8px;
	background-position: right 16px center;
}

@media only screen and (max-width: 640px) {
	.form_select_100 {
		padding: 12px 28px 12px 12px;
		background-position: right 12px center;
		font-size: 16px;
	}
}

.form_select_100.mb_32 {
	margin: 0 0 32px;
}

@media only screen and (max-width: 640px) {
	.form_select_100.mb_32 {
		margin: 0 0 16px;
	}
}

/*thanks*/
.thanks_page {
	padding: 80px 0;
}

@media only screen and (max-width: 640px) {
	.thanks_page {
		padding: 48px 0;
	}
}

.thanks_title_wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin: 0 0 32px;
}

.thanks_title_wrap .thanks_title_img {
	width: 140px;
	margin: 0 20px 0 0;
}

@media only screen and (max-width: 640px) {
	.thanks_title_wrap .thanks_title_img {
		width: 80px;
		margin: 0 16px 0 0;
	}
}

.thanks_title_wrap .thanks_title_img img {
	width: 100%;
}

.thanks_title_wrap .thanks_title {
	max-width: calc(100% - 120px);
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 32px;
	color: #EB7B9B;
	line-height: 1.5;
	letter-spacing: 0.05em;
}

@media only screen and (max-width: 640px) {
	.thanks_title_wrap .thanks_title {
		max-width: calc(100% - 96px);
		font-size: 24px;
	}
}

.thanks_text {
	text-align: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 18px;
	color: #333;
	line-height: 2;
	letter-spacing: 0.05em;
	margin: 0 0 40px;
}

.thanks_text span {
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	color: #EB7B9B;
}

@media only screen and (max-width: 640px) {
	.thanks_text {
		font-size: 16px;
		margin: 0 0 24px;
	}
}

.thanks_tel_box {
	background-color: #FFF;
	border: 2px solid #EB7B9B;
	border-radius: 20px;
}

.thanks_tel_box .thanks_tel_box_title {
	padding: 16px;
	background-color: #EB7B9B;
	text-align: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 18px;
	color: #FFF;
	line-height: 1.5;
	letter-spacing: 0.05em;
	border-radius: 18px 18px 0 0;
}

@media only screen and (max-width: 640px) {
	.thanks_tel_box .thanks_tel_box_title {
		font-size: 16px;
		padding: 16px 8px;
	}
}

.thanks_tel_box .thanks_tel_box_detail {
	padding: 20px 16px;
}

@media only screen and (max-width: 640px) {
	.thanks_tel_box .thanks_tel_box_detail {
		padding: 16px 8px;
	}
}

.thanks_tel_box .thanks_tel_box_detail .thanks_tel_box_text {
	text-align: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 500;
	font-style: normal;
	font-size: 16px;
	color: #333;
	line-height: 1.5;
	letter-spacing: 0.05em;
	margin: 0 0 8px;
}

.thanks_tel_box .thanks_tel_box_detail .thanks_tel_link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 28px;
	color: #EB7B9B;
	line-height: 1.5;
	margin: 0 0 16px;
}

.thanks_tel_box .thanks_tel_box_detail .thanks_tel_link img {
	width: 20px;
	margin: 0 10px 0 0;
}

.thanks_tel_box .thanks_tel_box_detail .thanks_tel_box_note {
	text-align: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 14px;
	color: #333;
	line-height: 2;
}

@media only screen and (max-width: 640px) {
	.thanks_tel_box .thanks_tel_box_detail .thanks_tel_box_note {
		font-size: 13px;
	}
}

.thanks_line_banner {
	display: block;
	margin: 40px auto 0;
	width: 100%;
	max-width: 400px;
}

.thanks_line_banner img {
	width: 100%;
}

/*reservation*/
.reservation_wrap .reservation_title {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin: 0 0 24px;
	text-align: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 24px;
	color: #EB7B9B;
	line-height: 1.5;
	letter-spacing: 0.05em;
}

@media only screen and (max-width: 640px) {
	.reservation_wrap .reservation_title {
		font-size: 20px;
		margin: 0 0 16px;
	}
}

.reservation_wrap .reservation_title img {
	width: 32px;
	margin: 0 16px 0 0;
}

.reservation_wrap .reservation_text {
	text-align: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 18px;
	color: #333;
	line-height: 2;
	letter-spacing: 0.05em;
	margin: 0 0 24px;
}

@media only screen and (max-width: 640px) {
	.reservation_wrap .reservation_text {
		font-size: 16px;
		margin: 0 0 16px;
	}
}

.reservation_wrap .reservation_step_list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin: 0 0 40px;
}

@media only screen and (max-width: 640px) {
	.reservation_wrap .reservation_step_list {
		margin: 0 0 24px;
	}
}

.reservation_wrap .reservation_step_list .reservation_step_item {
	padding: 0 40px;
	position: relative;
}

.reservation_wrap .reservation_step_list .reservation_step_item::before {
	content: "";
	position: absolute;
	top: 8px;
	left: 0;
	width: 100%;
	height: 3px;
	background-color: #9D9D9D;
	z-index: 0;
	-webkit-transform: translate(-50%, 0px);
	transform: translate(-50%, 0px);
}

.reservation_wrap .reservation_step_list .reservation_step_item:first-child::before {
	content: none;
}

.reservation_wrap .reservation_step_list .reservation_step_item .reservation_step_item_dot {
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background-color: #9D9D9D;
	margin: 0 auto 8px;
	z-index: 1;
	position: relative;
}

.reservation_wrap .reservation_step_list .reservation_step_item .reservation_step_item_text {
	text-align: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 500;
	font-style: normal;
	font-size: 16px;
	color: #9D9D9D;
	line-height: 1.5;
	letter-spacing: 0.05em;
}

@media only screen and (max-width: 640px) {
	.reservation_wrap .reservation_step_list .reservation_step_item .reservation_step_item_text {
		font-size: 14px;
	}
}

.reservation_wrap .reservation_step_list .reservation_step_item.active .reservation_step_item_dot {
	background-color: #EB7B9B;
}

.reservation_wrap .reservation_step_list .reservation_step_item.active .reservation_step_item_text {
	color: #EB7B9B;
}

.reservation_wrap .reservation_box {
	padding: 24px;
	background-color: #FFF;
	border-radius: 20px;
}

@media only screen and (max-width: 640px) {
	.reservation_wrap .reservation_box {
		padding: 16px;
	}
}

.reservation_wrap .reservation_box .reservation_box_text {
	text-align: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 16px;
	color: #333;
	line-height: 1.5;
	letter-spacing: 0.05em;
}

.reservation_wrap .reservation_box .reservation_box_date {
	text-align: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 900;
	font-style: normal;
	font-size: 18px;
	color: #333;
	line-height: 1.5;
	letter-spacing: 0.05em;
	margin: 32px 0 8px;
}

.reservation_wrap .reservation_box .reservation_box_list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 100%;
	margin: 0 auto 8px;
}

.reservation_wrap .reservation_box .reservation_box_list.disabled {
	display: none;
}

.reservation_wrap .reservation_box .reservation_box_list .reservation_box_item {
	width: calc((100% - 104px) /4);
	margin: 0 8px 0 0;
}

@media only screen and (max-width: 640px) {
	.reservation_wrap .reservation_box .reservation_box_list .reservation_box_item {
		width: calc((100% - 88px) /4);
	}
}

.reservation_wrap .reservation_box .reservation_box_list .reservation_box_item:first-child {
	width: 72px;
}

@media only screen and (max-width: 640px) {
	.reservation_wrap .reservation_box .reservation_box_list .reservation_box_item:first-child {
		width: 56px;
	}
}

.reservation_wrap .reservation_box .reservation_box_list .reservation_box_item:nth-of-type(5n) {
	margin: 0 0 0 0;
}

.reservation_wrap .reservation_box .reservation_box_list .reservation_box_item .reservation_box_item_time_text {
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 16px;
	color: #333;
	line-height: 1.5;
	letter-spacing: 0.05em;
}

@media only screen and (max-width: 640px) {
	.reservation_wrap .reservation_box .reservation_box_list .reservation_box_item .reservation_box_item_time_text {
		font-size: 14px;
	}
}

.reservation_wrap .reservation_box .reservation_box_list .reservation_box_item .reservation_date_time_input {
	display: none;
}

.reservation_wrap .reservation_box .reservation_box_list .reservation_box_item .reservation_date_time_input:checked+.reservation_box_radio_label_text {
	border: 1px solid #EB7B9B;
	background-color: #EB7B9B;
	color: #FFF;
}

.reservation_wrap .reservation_box .reservation_box_list .reservation_box_item .reservation_box_radio_label_text {
	width: 100%;
	border: 1px solid #9D9D9D;
	padding: 8px;
	border-radius: 4px;
	text-align: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 14px;
	color: #9D9D9D;
	line-height: 1.5;
	letter-spacing: 0.05em;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

@media only screen and (max-width: 640px) {
	.reservation_wrap .reservation_box .reservation_box_list .reservation_box_item .reservation_box_radio_label_text {
		font-size: 13px;
	}
}

.reservation_wrap .reservation_box .reservation_box_list .reservation_box_item .reservation_box_radio_label_text.close {
	background-color: #9D9D9D;
	color: #FFF;
}

.hide_hour {
	display: none;
}

.reservation_toggle_btn {
	margin: 40px auto 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 100%;
	max-width: 400px;
	height: 60px;
	border-radius: 60px;
	padding: 0 40px;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 16px;
	color: #333;
	line-height: 1.5;
	position: relative;
	background-color: #FFF;
	border: 1px solid #333;
	-webkit-transition: -webkit-transform 0.3s ease;
	transition: -webkit-transform 0.3s ease;
	transition: transform 0.3s ease;
	transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.reservation_toggle_btn .reservation_toggle_btn_arrow {
	position: absolute;
	right: 16px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 16px;
	-webkit-transition: -webkit-transform 0.3s ease;
	transition: -webkit-transform 0.3s ease;
	transition: transform 0.3s ease;
	transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.reservation_toggle_btn .reservation_toggle_btn_arrow.active {
	-webkit-transform: translateY(-50%) rotate(180deg);
	transform: translateY(-50%) rotate(180deg);
}

.reservation_toggle_btn .reservation_toggle_btn_arrow img {
	width: 100%;
}

.reservation_submit_btn {
	margin: 40px auto 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 100%;
	max-width: 400px;
	height: 60px;
	border-radius: 60px;
	padding: 0 40px;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 16px;
	color: #FFF;
	line-height: 1.5;
	position: relative;
	background-color: #9D9D9D;
	-webkit-transition: -webkit-transform 0.3s ease;
	transition: -webkit-transform 0.3s ease;
	transition: transform 0.3s ease;
	transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.reservation_submit_btn.active {
	background-color: #EB7B9B;
}

.reservation_submit_btn .reservation_submit_btn_arrow {
	position: absolute;
	right: 16px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 10px;
}

.reservation_submit_btn .reservation_submit_btn_arrow img {
	width: 100%;
}

.fv_text_block {
	display: block;
	padding: 16px 0;
	background-color: #EB7B9B;
}

.fv_text_block .fv_text {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 24px;
	color: #FFF;
	line-height: 1.5;
	letter-spacing: 0.05em;
}

.fv_text_block .fv_text img {
	width: 20px;
	margin: 0 20px 0 0;
}

/*=================

      custom.scss

=======================*/
.fv_link {
	position: relative;
	display: block;
}

.fv_link .fv_link_btn {
	position: absolute;
	bottom: 18%;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.fv_link .fv_link_btn .fv_link_btn_inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 400px;
	height: 60px;
	background-color: #EB7B9B;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 18px;
	color: #FFF;
	line-height: 1.5;
	letter-spacing: 0.05em;
	position: relative;
	-webkit-box-shadow: 0 4px 0 rgba(0, 0, 0, 0.4);
	box-shadow: 0 4px 0 rgba(0, 0, 0, 0.4);
	border-radius: 10px;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.fv_link .fv_link_btn .fv_link_btn_inner:after {
	content: "";
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	right: 12px;
	width: 8px;
	height: 12px;
	background-image: url(../images/common/icon_arrow_w.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

.fv_link .fv_link_btn .fv_link_btn_inner:hover {
	opacity: 0.8;
}

/* ======================= BASE ====== */
* {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

html,
body {
	margin: 0;
	height: 100%;
	background-color: #fffeef;
}

.clearfix:after {
	content: "";
	clear: both;
	display: block;
}

.mb_0 {
	margin-bottom: 0;
}

.mb_10 {
	margin-bottom: 10px;
}

.mb_20 {
	margin-bottom: 20px;
}

.mb_30 {
	margin-bottom: 30px;
}

.mb_50 {
	margin-bottom: 50px;
}

.mt_0 {
	margin-top: 0;
}

.mt_10 {
	margin-top: 10px;
}

.mt_20 {
	margin-top: 20px;
}

.mt_30 {
	margin-top: 30px;
}

.mt_40 {
	margin-top: 40px;
}

.mt_50 {
	margin-top: 50px;
}

.mt_80 {
	margin-top: 80px;
}

.mr_5 {
	margin-right: 5px;
}

.mr_20 {
	margin-right: 20px;
}

@media only screen and (max-width: 999px) {
	.sp_mb_10 {
		margin-bottom: 10px;
	}
}

.common_pc {
	display: block;
}

@media only screen and (max-width: 999px) {
	.common_pc {
		display: none;
	}
}

.common_sp {
	display: none;
}

@media only screen and (max-width: 999px) {
	.common_sp {
		display: block;
	}
}

@media only screen and (max-width: 840px) {
	.common_pc840 {
		display: none;
	}
}

.common_sp840 {
	display: none;
}

@media only screen and (max-width: 840px) {
	.common_sp840 {
		display: block;
	}
}

.common_pc640 {
	display: block;
}

.common_pc640.height_100 {
	height: 100%;
}

@media only screen and (max-width: 640px) {
	.common_pc640 {
		display: none;
	}
}

.common_sp640 {
	display: none;
}

@media only screen and (max-width: 640px) {
	.common_sp640 {
		display: block;
	}
}

.mb_0 {
	margin-bottom: 0;
}

body {
	background-color: #fffeef;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	min-height: 100vh;
}

footer {
	margin-top: auto;
}

body ul {
	list-style: none;
}

body a {
	text-decoration: none;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

/*
@media only screen and (min-width:960px){
  body a:hover{
    opacity: 0.7;
  }
}
*/
button {
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}



/*=================

      footer.scss

=======================*/
.footer_wrap {
	background-color: #8e8e8e;
	padding: 40px 0 16px;
}

.footer_menu_list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 100%;
	margin: 0 0 8px;
}

.footer_menu_list .footer_menu_item {
	margin: 0 16px 16px;
}

.footer_menu_list .footer_menu_item .footer_menu_link {
	display: block;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 14px;
	color: #FFF;
	line-height: 1.5;
	text-decoration: underline;
}

.footer_copy {
	text-align: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 12px;
	color: #FFF;
	line-height: 1.5;
	letter-spacing: 0.05em;
}

/*20250627*/

.thanks_calendar_btn {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 100%;
	max-width: 400px;
	padding: 12px 24px;
	border-radius: 4px;
	background-color: #EB7B9B;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 18px;
	color: #FFF;
	line-height: 1.5;
	letter-spacing: 0.05em;
	margin: 0 auto 40px;
}

.thanks_calendar_btn img {
	width: 24px;
	margin: 0 8px 0 0;
	vertical-align: middle;
}

.thanks_calendar_popup {
	position: fixed;
	top: 50%;
	left: 50%;
	-webkit-transform: translateX(-50%) translateY(-50%);
	transform: translateX(-50%) translateY(-50%);
	z-index: 100000;
	display: none;
	width: 80%;
	max-width: 600px;
}

.thanks_calendar_popup_inner {
	width: 100%;
	margin: 0 auto;
	background-color: #fff;
	-webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
	border-radius: 10px;
	position: relative;
	padding: 40px;
}

.thanks_calendar_popup_close_btn {
	position: absolute;
	top: -20px;
	right: -20px;
	width: 40px;
}

.thanks_calendar_popup_close_btn img {
	width: 100%;
}

.thanks_calendar_popup_text {
	text-align: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 500;
	font-style: normal;
	font-size: 16px;
	color: #333;
	line-height: 1.5;
	margin: 0 0 24px;
}

.thanks_calendar_popup_add_btn_wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 100%;
	margin: 0 0 -16px;
}

.thanks_calendar_popup_add_btn {
	width: calc((100% - 16px) / 2);
	margin: 0 16px 16px 0;
	padding: 12px 24px;
	border-radius: 4px;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 16px;
	color: #fff;
	line-height: 1.5;
}

.thanks_calendar_popup_add_btn:nth-of-type(2n) {
	margin: 0 0 16px 0;
}

.thanks_calendar_popup_add_btn.google {
	background-color: #4caf50;
}

.thanks_calendar_popup_add_btn.apple {
	background-color: #000;
}

.thanks_calendar_popup_add_btn.outlook {
	background-color: #3373c3;
}

.thanks_calendar_popup_add_btn.yahoo {
	background-color: #f52f35;
}

@media only screen and (max-width: 640px) {
	.thanks_calendar_btn {
		font-size: 16px;
	}

	.thanks_calendar_popup {
		width: 90%;
	}

	.thanks_calendar_popup_inner {
		padding: 24px 16px;
	}

	.thanks_calendar_popup_add_btn {
		padding: 12px 12px;
		font-size: 14px;
	}

	.thanks_calendar_popup_close_btn {
		top: -16px;
		right: -16px;
		width: 32px;
	}
}