@charset "UTF-8";

.lpModal-ac {
	overflow: hidden;
}

.lpModal-ac .l-mainContainer {
	position: relative;
}

.lpModal-ac .mod-modalCashback {
	background: #000000cf;
	top: 0;
}

.lpModal-ac .mod-modalCashback .lpClose {
	top: calc(80vh - 2rem);
	display: block;
}

@media screen and (min-width: 767px) {
	.lpModal-ac .mod-modalCashback .lpClose {
		top: auto;
		bottom: 10px;
	}
}

.lpModal-ac .mod-modalCashback .modal-contentsInner {
	position: relative;
	top: 2rem;
	padding: 0 2rem 2rem 2rem;
	height: 72vh;
	overflow: scroll;
}

.mod-modalCashback {
	position: fixed;
	width: 100%;
	height: 100vh;
	top: 200%;
	background: #fff;
	overflow-y: auto;
	-webkit-transition: top 0.3s ease;
	transition: top 0.3s ease;
	z-index: 20;
}

.mod-modalCashback .spOnly {
	display: block;
}

.mod-modalCashback .pcOnly {
	display: none;
}

.mod-modalCashback .lpClose {
	display: none;
	bottom: 10px;
}

.mod-modalCashback .mainV img {
	width: 100%;
}

.mod-modalCashback .lpMain {
	background: #FFF;
	position: relative;
}

.mod-modalCashback .lpMain section {
	margin-bottom: 0;
}

.mod-modalCashback .lpMain .headTxtInner {
	padding: 2.5rem 2rem;
	color: #fff;
}

.mod-modalCashback .lpMain .headTxtInner .headTxtImg.spOnly {
	margin: auto;
	width: 100%;
}

.mod-modalCashback .lpMain .headTxtInner .headTtl {
	background: #000;
	line-height: 3.3rem;
	text-align: center;
	font-size: 1.4rem;
	color: #fff;
	font-weight: bold;
}

.mod-modalCashback .lpMain .headTxtInner .headInner {
	padding: 3rem 0;
}

.mod-modalCashback .lpMain .headTxtInner .headInner img {
	margin-left: 8px;
}

.mod-modalCashback .lpMain .headTxtInner .headList {
	margin: 3rem 0;
}

.mod-modalCashback .lpMain .headTxtInner .headList .listItem {
	margin-bottom: 1rem;
	line-height: 2rem;
	font-size: 1.3rem;
	color: #262626;
	padding-left: 1em;
}

.mod-modalCashback .lpMain .headTxtInner .headList em {
	color: #fe0032;
}

.mod-modalCashback .lpMain .headTxtInner .headTable {
	margin-bottom: 1.7rem;
	border-radius: 0.8rem;
	background: #fff4f7;
	overflow: hidden;
}

.mod-modalCashback .lpMain .headTxtInner .headTable .tableTtl {
	text-align: center;
	background: #fd1d5d;
	line-height: 3.8rem;
	font-size: 1.1rem;
	color: #fff;
	font-weight: bold;
}

.mod-modalCashback .lpMain .headTxtInner .headTable .innerList {
	line-height: 2rem;
	padding: 2.4rem 1.6rem;
	font-size: 1.4rem;
	color: #262626;
}

.mod-modalCashback .lpMain .headTxtInner .headTable .innerList p {
	line-height: 17px;
	margin-bottom: 20px;
}

.mod-modalCashback .lpMain .headTxtInner .headTable .innerList li {
	margin-bottom: 10px;
	padding-left: 1em;
	text-indent: -1em;
}

.mod-modalCashback .lpMain .headTxtInner .headTable .innerList em {
	color: #FD1D5D;
}

.mod-modalCashback .lpMain .headTxtInner .headTable .listItem {
	margin-bottom: 1rem;
	padding-left: 1.2rem;
	position: relative;
}

.mod-modalCashback .lpMain .headTxtInner .headTable .listItem:before {
	content: "";
	position: absolute;
	top: 0.6rem;
	left: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4.5px 0 4.5px 7px;
	border-color: transparent transparent transparent #fd1d5c;
}

.mod-modalCashback .lpMain .headTxtInner .headTable .listItem:last-child {
	margin-bottom: 0;
}

.mod-modalCashback .lpMain .headTxtInner .cautionTxtList {
	color: #262626;
}

.mod-modalCashback .lpMain .headTxtInner .cautionTxtList .listItem {
	margin-bottom: 0.8rem;
	line-height: 1.5rem;
	font-size: 1rem;
	padding-left: 1em;
	text-indent: -1em;
}

.mod-modalCashback .lpMain .headTxtInner .cautionTxtList .adjustLine {
	line-height: 1.7rem;
}

.mod-modalCashback .lpMain .headTxtInner .cautionTxtList .brPc {
	display: none;
}

.mod-modalCashback .lpMain .headTxtInner .cautionTxtList em {
	color: #fe0033;
}

.mod-modalCashback .lpMain .headTxtInner .periodTxt {
	margin-bottom: 2rem;
	font-size: 0.9rem;
	color: #262626;
	text-align: center;
}

.mod-modalCashback .lpMain .headTxtInner .periodTxt em {
	font-size: 1.2rem;
	font-weight: bold;
}

.mod-modalCashback .lpMain .headTxtInner .periodTxt .color-pink {
	color: #FD1D5D;
}

.mod-modalCashback .lpMain .headTxtInner .periodTxtS {
	padding-left: 1em;
	line-height: 1.5rem;
	text-indent: -1em;
	font-size: 0.8rem;
	color: #838383;
}

.mod-modalCashback .lpMain .headTxtInner .notesList {
	height: 90px;
	overflow: hidden;
	color: #505050;
}

.mod-modalCashback .lpMain .headTxtInner .notesList .listItem {
	margin-bottom: 0.6rem;
	line-height: 1.4em;
	font-size: 1rem;
	padding-left: 1em;
	text-indent: -1em;
}

.mod-modalCashback .lpMain .headTxtInner .mod-acTxt {
	position: relative;
}

.mod-modalCashback .lpMain .headTxtInner .mod-acTxt .txtAcBt {
	z-index: 0;
	position: absolute;
	right: 0;
	bottom: -1.2em;
	font-size: 1rem;
	color: #3492ff;
}

.mod-modalCashback .lpMain .headTxtInner .mod-acTxt .txtAcBt::before {
	content: "すべて見る";
}

.mod-modalCashback .lpMain .headTxtInner .mod-acTxt .notesList {
	position: relative;
	overflow: hidden;
	height: 16rem;
}

.mod-modalCashback .lpMain .headTxtInner .mod-acTxt .notesList:before {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 15rem;
	content: "";
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), color-stop(50%, rgba(255, 255, 255, 0.9)), color-stop(50%, rgba(255, 255, 255, 0.9)), to(#fff));
}

.mod-modalCashback .lpMain .headTxtInner .mod-acTxt .acTxt {
	display: none;
}

.mod-modalCashback .lpMain .headTxtInner .mod-acTxt .acTxt:checked ~ .txtAcBt {
	bottom: -2.6em;
	padding-left: 4rem;
}

.mod-modalCashback .lpMain .headTxtInner .mod-acTxt .acTxt:checked ~ .txtAcBt::before {
	content: "閉じる";
}

.mod-modalCashback .lpMain .headTxtInner .mod-acTxt .acTxt:checked ~ .notesList {
	height: auto;
}

.mod-modalCashback .lpMain .headTxtInner .mod-acTxt .acTxt:checked ~ .notesList::before {
	display: none;
}

.mod-modalCashback .lpMain .f-cashBack {
	padding: 5rem 0;
	background: #fff4f7;
}

.mod-modalCashback .lpMain .f-cashBack .cashBackTtl {
	text-align: center;
	font-size: 1.8rem;
	font-weight: bold;
	background: #fff4f7;
	color: #000;
}

.mod-modalCashback .lpMain .f-cashBack .cashBackTtl-notice {
	font-size: 14px;
	color: #FD1D5D;
	line-height: 1.5rem;
	text-align: center;
	font-weight: bold;
	margin-bottom: 2.4rem;
}

.mod-modalCashback .lpMain .f-cashBack .flowListSlider {
	position: relative;
	overflow-x: scroll;
	margin-left: 2rem;
}

.mod-modalCashback .lpMain .f-cashBack .flowList {
	padding-top: 2rem;
	white-space: nowrap;
	min-width: 100%;
	font-size: 0;
}

.mod-modalCashback .lpMain .f-cashBack .flowList .listItem img {
	height: 208px;
}

.mod-modalCashback .lpMain .f-cashBack .listItem {
	display: inline-block;
	margin-right: 2rem;
	padding: 4rem 3rem 0;
	width: 24.1rem;
	-webkit-box-shadow: 0, 0.3rem, 1.6rem, rgba(0, 0, 0, 0.06);
	box-shadow: 0, 0.3rem, 1.6rem, rgba(0, 0, 0, 0.06);
	position: relative;
	border-radius: 1.2rem;
	background: #fff;
}

.mod-modalCashback .lpMain .f-cashBack .flowTtl {
	margin-bottom: 1.6rem;
	text-align: center;
	font-size: 1.7rem;
	font-weight: bold;
	color: #000;
}

.mod-modalCashback .lpMain .f-cashBack .flowTxt {
	height: 10rem;
	line-height: 1.4em;
	font-size: 1rem;
	color: #5a5a5a;
}

.mod-modalCashback .lpMain .f-cashBack .flowTxt p {
	line-height: 14px;
}

.mod-modalCashback .lpMain .f-cashBack .flowTxt em {
	color: #fd1d5d;
}

.mod-modalCashback .lpMain .f-cashBack .cautionTxt {
	margin-top: 0.6rem;
	font-size: 1rem;
	color: #fd1d5d;
}

.mod-modalCashback .lpMain .f-cashBack .step {
	padding: 0.7rem 1.3rem;
	background: #fd1d5d;
	font-size: 1.5rem;
	color: #fff;
	font-weight: bold;
	display: inline-block;
	position: absolute;
	top: -2rem;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.mod-modalCashback .lpMain .f-cashBack .step em {
	position: relative;
	font-size: 2.5rem;
}

.mod-modalCashback .lpMain .f-cashBack .step em:after {
	content: "";
	position: absolute;
	top: -5px;
	right: -2.1rem;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 1.85rem 0 1.85rem 0.8rem;
	border-color: transparent transparent transparent #fd1d5c;
}

.mod-modalCashback .btmTxt {
	background: #FFF;
	padding: 5rem 2.5rem 15rem;
	line-height: 2em;
	font-size: 0.7rem;
	text-align: center;
}

.mod-modalCashback .btmTxt a {
	color: #fe0033;
}

.lpClose {
	position: fixed;
	bottom: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	color: #fff;
	z-index: 12;
}

@media screen and (min-width: 767px) {
	.lpClose {
		bottom: 5%;
		cursor: pointer;
	}

	.lpModal-ac .mod-modalCashback {
		width: 100%;
		height: 100%;
		left: 0;
		z-index: 2100;
	}

	.lpModal-ac .mod-modalCashback:before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		padding: 62px 0;
		background: rgba(0, 0, 0, 0.8);
	}

	.lpModal-ac .mod-modalCashback .modal-contentsInner {
		top: 50%;
	}

	.lpModal-ac .mod-modalCashback .lpClose {
		opacity: 1;
		z-index: 2110;
	}

	.mod-modalCashback .spOnly {
		display: none;
	}

	.mod-modalCashback .pcOnly {
		display: block;
	}

	.mod-modalCashback .lpClose {
		opacity: 0;
	}

	.mod-modalCashback .modal-contentsInner {
		position: fixed;
		width: 1080px;
		height: 600px;
		top: 200%;
		left: 50%;
		-webkit-transform: translateX(-50%) translateY(-50%);
		transform: translateX(-50%) translateY(-50%);
		background: #fff;
		overflow-y: auto;
		-webkit-transition: top 0.3s ease;
		transition: top 0.3s ease;
		z-index: 2110;
	}

	.mod-modalCashback .modal-contentsInner .headTxtInner {
		padding: 48px 0;
	}

	.mod-modalCashback .modal-contentsInner .headTxtInner .u-mainContainer {
		margin: auto;
		width: 700px;
	}

	.mod-modalCashback .modal-contentsInner .headTxtInner .u-mainContainer .headTtl {
		line-height: 33px;
		font-size: 14px;
	}

	.mod-modalCashback .modal-contentsInner .headTxtInner .u-mainContainer .headInner {
		padding: 26px 90px;
	}

	.mod-modalCashback .modal-contentsInner .headTxtInner .u-mainContainer .headList {
		margin: 30px 0;
	}

	.mod-modalCashback .modal-contentsInner .headTxtInner .u-mainContainer .headList .listItem {
		margin-bottom: 10px;
		line-height: 20px;
		font-size: 15px;
		text-align: center;
	}

	.mod-modalCashback .modal-contentsInner .headTxtInner .u-mainContainer .headTable {
		margin: 0 20px;
		margin-bottom: 17px;
	}

	.mod-modalCashback .modal-contentsInner .headTxtInner .u-mainContainer .headTable .tableTtl {
		line-height: 38px;
		text-align: center;
		font-size: 16px;
	}

	.mod-modalCashback .modal-contentsInner .headTxtInner .u-mainContainer .headTable .innerList {
		line-height: 1;
		padding: 24px 16px;
		font-size: 14px;
	}

	.mod-modalCashback .modal-contentsInner .headTxtInner .u-mainContainer .headTable .listItem {
		margin-bottom: 10px;
		padding-left: 1.4rem;
		position: relative;
	}

	.mod-modalCashback .modal-contentsInner .headTxtInner .u-mainContainer .headTable .listItem:before {
		top: 3px;
	}

	.mod-modalCashback .modal-contentsInner .headTxtInner .u-mainContainer .cautionTxtList .listItem {
		margin-bottom: 10px;
		margin-left: 20px;
		line-height: 1;
		font-size: 12px;
	}

	.mod-modalCashback .modal-contentsInner .headTxtInner .u-mainContainer .cautionTxtList .adjustLine {
		line-height: 1.6;
	}

	.mod-modalCashback .modal-contentsInner .headTxtInner .u-mainContainer .cautionTxtList .brPc {
		display: block;
	}

	.mod-modalCashback .modal-contentsInner .headTxtInner .u-mainContainer .periodTxt {
		margin-bottom: 20px;
		text-align: center;
		font-size: 14px;
	}

	.mod-modalCashback .modal-contentsInner .headTxtInner .u-mainContainer .periodTxt em {
		font-size: 17px;
	}

	.mod-modalCashback .modal-contentsInner .headTxtInner .u-mainContainer .periodTxtS {
		text-align: center;
		line-height: 15px;
		font-size: 10px;
	}

	.mod-modalCashback .modal-contentsInner .headTxtInner .u-mainContainer .mod-acTxt .txtAcBt {
		font-size: 10px;
		cursor: pointer;
	}

	.mod-modalCashback .modal-contentsInner .headTxtInner .u-mainContainer .notesList .listItem {
		font-size: 10px;
	}

	.mod-modalCashback .modal-contentsInner .f-cashBack .flowListSlider {
		margin: auto;
		width: 1065px;
		overflow-x: hidden;
	}

	.mod-modalCashback .modal-contentsInner .f-cashBack .flowList {
		padding-top: 2rem;
		white-space: normal;
	}

	.mod-modalCashback .modal-contentsInner .f-cashBack .listItem {
		margin-right: 33px;
		padding: 4rem 20px 0;
		width: 241px;
		-webkit-box-shadow: 0, 0.3rem, 1.6rem, rgba(0, 0, 0, 0.06);
		box-shadow: 0, 0.3rem, 1.6rem, rgba(0, 0, 0, 0.06);
	}

	.mod-modalCashback .modal-contentsInner .f-cashBack .listItem:last-child {
		margin-right: 0;
	}

	.mod-modalCashback .modal-contentsInner .f-cashBack .flowTtl {
		margin-bottom: 16px;
		font-size: 20px;
	}

	.mod-modalCashback .modal-contentsInner .f-cashBack .flowTxt {
		height: 110px;
		font-size: 10px;
		padding-left: 10px;
	}

	.mod-modalCashback .modal-contentsInner .f-cashBack .flowTxt p {
		line-height: 1rem;
	}

	.mod-modalCashback .modal-contentsInner .f-cashBack .flowTxt em {
		color: #fd1d5d;
	}

	.mod-modalCashback .modal-contentsInner .f-cashBack .cautionTxt {
		margin-top: 0.2rem;
		font-size: 10px;
		line-height: 0.9rem;
	}

	.mod-modalCashback .modal-contentsInner .f-cashBack .cautionTxt p {
		line-height: 0.8rem;
	}

	.mod-modalCashback .modal-contentsInner .f-cashBack .step {
		padding: 7px 13px;
		font-size: 15px;
		top: -20px;
	}

	.mod-modalCashback .modal-contentsInner .f-cashBack .step em {
		font-size: 25px;
	}

	.mod-modalCashback .modal-contentsInner .f-cashBack .step em:after {
		right: -21px;
		border-width: 19px 0 19px 8px;
	}

	.mod-modalCashback .modal-contentsInner .btmTxt {
		display: none;
	}
}

/*!
 * ress.css • v1.2.2
 * MIT License
 * github.com/filipelinhares/ress
 */
.mod-modalCashback {
	background: #000000cf;
}

.mod-modalCashback .modal-contentsInner {
	position: relative;
	top: 2rem;
	padding: 0 2rem 2rem 2rem;
	height: 72vh;
	overflow: scroll;
}

.l-main {
	position: relative;
	z-index: 3;
	padding: 0;
	margin-top: 0px !important;
}

.l-content {
	padding: 0 1.4rem;
	margin: auto;
}

@media screen and (min-width: 992px) {
	.l-content {
		width: 1280px;
		margin: auto;
		padding: 0;
	}
}

.c-sec {
	padding: 5rem 0;
}

.c-sec__title {
	max-width: 60rem;
	margin: auto;
	padding: 0 0 4rem;
	text-align: center;
}

.c-sec__content img {
	padding-left: 1rem;
	padding-right: 1rem;
	margin-bottom: 3rem;
}

.c-sec__content img:last-child {
	margin-bottom: 0;
}

.cpVisual {
	position: relative;
	width: 100%;
	background: #ff3d3d;
}

.cpVisual .cpVisual__img {
	padding: 0;
}

.cpVisual img {
	display: block;
	max-width: 88rem;
	width: 100%;
	margin: auto;
}

.sec-0 {
	background: #fffec4;
}

.cp-doubling__inner {
	padding: 0 1rem;
}

.cp-doubling__inner .cp-doubling-accordion {
	width: 100%;
	border: 0.3rem solid #000000;
	border-radius: 0.8rem;
	overflow: hidden;
	text-align: left;
}

.cp-doubling__inner .cp-doubling-accordion-head {
	background-color: #F50B09;
	height: 6rem;
	line-height: 6.3rem;
	padding-left: 2rem;
	position: relative;
}

.cp-doubling__inner .cp-doubling-accordion-head p {
	color: #FFFFFF;
	font-size: 1.4rem;
	font-weight: bold;
}

.cp-doubling__inner .cp-doubling-accordion-head::before {
	content: "";
	position: absolute;
	top: 30%;
	right: 3.5%;
	width: 2.6rem;
	height: 2.6rem;
	background-color: #f8f66b;
	border-radius: 50%;
	pointer-events: none;
}

.cp-doubling__inner .cp-doubling-accordion-head::after {
	content: "";
	position: absolute;
	top: 40%;
	right: 6.2%;
	width: 0.8rem;
	height: 0.8rem;
	border-bottom: 0.3rem solid #F07074;
	border-right: 0.3rem solid #F07074;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	pointer-events: none;
}

.cp-doubling__inner .cp-doubling-accordion-head.rotate-up::after {
	top: 47%;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}

.cp-doubling__inner .cp-doubling-accordion-contents.disabled {
	display: none;
}

.cp-doubling__inner .cp-doubling-accordion-content {
	background-color: #FFFFFF;
	height: 5.1rem;
	border-top: 0.1rem solid #DBDBDB;
	line-height: 5.1rem;
	padding-left: 3.5rem;
	position: relative;
}

.cp-doubling__inner .cp-doubling-accordion-content a {
	display: block;
	color: #000000;
	font-size: 1.3rem;
	font-weight: bold;
}

.cp-doubling__inner .cp-doubling-accordion-content::after {
	content: "";
	position: absolute;
	top: 40%;
	right: 6.5%;
	width: 0.8rem;
	height: 0.8rem;
	border-bottom: 0.3rem solid #F07074;
	border-right: 0.3rem solid #F07074;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	pointer-events: none;
}

.cp-doubling__inner .cp-doubling-accordion-content:first-child {
	height: 5.5rem;
	line-height: 5.3rem;
	border-top: 0.3rem solid #000000;
}

.sec-1 {
	background-size: 100% 100%;
	background-position: top center;
}

.cpAbout {
	padding-top: 3rem;
}

@media screen and (min-width: 992px) {
	.cpAbout {
		padding-top: 5rem;
	}
}

.cpAbout .cpAbout__title {
	padding: 0 1.4rem;
	text-align: center;
}

@media screen and (min-width: 992px) {
	.cpAbout .cpAbout__title {
		padding: 0;
	}
}

.cpAbout .c-sec__title {
	padding-bottom: 3rem;
}

.sec-2 {
	background: #fffec4;
}

.sec-2 .sec-2-title {
	width: 80%;
}

.sec-3 {
	background: #fef5f0;
}

.sec-3 .sec-3-title {
	width: 40%;
}

.register-button {
	text-align: center;
	padding: 5rem 5rem 0;
}

.sec-4 {
	background: #fffec4;
}

.sec-4 .sec-4-title {
	width: 40%;
}

.cpTargetStore {
	text-align: center;
}

.cpTargetStore .cpTargetStore__content img {
	margin-bottom: 0;
}

.lpClose {
	top: calc(80vh - 2rem);
}

@media screen and (min-width: 992px) {
	.lpClose {
		bottom: 10px;
	}
}

.l-header {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 100%;
	height: 4.4rem;
	padding: 0 0.5rem;
	color: #000;
	border-bottom: 2px solid #afafaf;
	-webkit-box-shadow: 0 0 0.2rem rgba(0, 0, 0, 0.15);
	box-shadow: 0 0 0.2rem rgba(0, 0, 0, 0.15);
	background-color: #fff;
}

.l-header .wrap-l {
	width: 16rem;
}

.l-header .search-wrap-l {
	height: 2rem;
}

.l-header .anchor-logo {
	height: 2rem;
	font-size: 0;
	width: 6rem;
	z-index: 100;
}

.l-header .anchor-logo-img {
	margin-right: 0.4rem;
	width: 5.8rem;
	height: 1.8rem;
}

.l-header .anchor-logo-right {
	display: inline-block;
	height: 2rem;
	padding: 0 0.2rem;
	border: 0.1rem solid #000;
	border-radius: 0.2rem;
	vertical-align: middle;
	line-height: 2rem;
	font-size: 1.4rem;
}

.l-header .txt-ranking {
	font-size: 1.1rem;
	position: absolute;
	top: 2.2rem;
	width: 15.5rem;
}

.l-header .wrap-r {
	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-right: 0.5rem;
	margin-left: auto;
}

.l-header .icon-text {
	font-size: 0.85rem;
	text-align: center;
	color: #000;
}

.l-header .mypageLink {
	position: relative;
	width: 5rem;
	height: 4.1rem;
	margin-top: 0.8rem;
}

.l-header .mypageLink img {
	width: 2rem;
	height: 2rem;
	display: block;
	margin: 0.1rem auto 0.3rem auto;
}

.l-header .mypageLink .counter {
	display: none;
	position: absolute;
	top: -0.2rem;
	right: 0.8rem;
	width: 1.3rem;
	line-height: 1.2rem;
	border-radius: 50%;
	background-color: #f00;
	color: #fff;
	font-size: 0.7rem;
	text-align: center;
}

.l-header .mypageLink .counter.show {
	display: block;
}

.l-header .anchor-keep {
	width: 3.8rem;
	height: 4rem;
	position: relative;
	margin-top: 0.7rem;
}

.l-header .anchor-keep img {
	width: 2rem;
	height: 2rem;
	display: block;
	margin: 0.1rem auto 0.3rem auto;
}

.l-header .anchor-keep.has-keep::before {
	content: "";
	position: absolute;
	top: 0.3rem;
	right: 1rem;
	width: 0.8rem;
	height: 0.8rem;
	border-radius: 50%;
	background-color: #f00;
}

.l-header .btn-search {
	background-color: #fff;
	width: 3.4rem;
	height: 3rem;
}

.l-header .btn-search img {
	width: 1.8rem;
	height: 1.8rem;
	margin-bottom: 0.2rem;
}

.l-header .btn-menu {
	position: relative;
	width: 3.2rem;
	height: 4rem;
	background: #fff;
}

.l-header .btn-menu span {
	position: absolute;
	display: inline-block;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 75%;
	left: 0.9rem;
	height: 0.2rem;
	background-color: #666;
}

.l-header .btn-menu span:nth-of-type(1) {
	top: 1rem;
}

.l-header .btn-menu span:nth-of-type(2) {
	top: 1.8rem;
}

.l-header .btn-menu::after {
	position: absolute;
	content: "MENU";
	font-size: 0.8rem;
	top: 2.7rem;
	left: 0.8rem;
	white-space: nowrap;
}

.is-headerMenuOpen .btn-menu span {
	width: 70%;
	left: 1rem;
}

.is-headerMenuOpen .btn-menu span:nth-of-type(1) {
	top: 0.9rem;
	-webkit-transform: translateY(0.6rem) rotate(-45deg);
	transform: translateY(0.6rem) rotate(-45deg);
}

.is-headerMenuOpen .btn-menu span:nth-of-type(2) {
	top: 2.1rem;
	-webkit-transform: translateY(-0.6rem) rotate(45deg);
	transform: translateY(-0.6rem) rotate(45deg);
}

.is-headerMenuOpen .btn-menu::after {
	content: "閉じる";
}

.is-headerMenuOpen {
	overflow: hidden;
}

.is-headerMenuOpen .mod-fixedBottomMenu {
	display: none !important;
}

.is-headerMenuOpen .mod-headerMenuOuter {
	top: 4.4rem;
}

.is-headerMenuOpen .l-mainContainer,
  .is-headerMenuOpen .mod-diaryNavigation {
	position: relative;
	-webkit-filter: blur(18px);
	filter: blur(18px);
}

.is-headerMenuOpen .l-mainContainer::before,
    .is-headerMenuOpen .mod-diaryNavigation::before {
	content: "";
	position: absolute;
	background: rgba(0, 0, 0, 0.25);
	top: 5rem;
	left: -5%;
	width: 110%;
	height: 110%;
	z-index: 10;
}

.is-headerMenuOpen .mod-headerMenu {
	z-index: 10;
}

.is-headerMenuOpen .mod-headerMenu .menuClose {
	display: block;
	position: fixed;
	margin-left: -3.7rem;
	bottom: 1.5rem;
	left: 50%;
}

.mod-headerMenuOuter {
	position: fixed;
	z-index: 15;
	top: 200%;
	width: 100%;
	height: 100%;
	overflow-y: scroll;
	-webkit-transition: top 0.3s ease;
	transition: top 0.3s ease;
}

.mod-headerMenu {
	font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", sans-serif;
	padding-bottom: 15rem;
	width: 100%;
	font-size: 1.3rem;
	background: #fff;
}

.mod-headerMenu .menu-member-link-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	padding: 1.2rem 1rem;
}

.mod-headerMenu .menu-member-link-wrap .member-link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	border: 0.1rem solid #f17074;
	border-radius: 0.6rem;
	height: 3rem;
	line-height: 3rem;
	font-size: 1.15rem;
	width: 15rem;
}

.mod-headerMenu .menu-member-link-wrap .member-link--login {
	color: #fff;
	background: #f17074;
	margin-right: 1rem;
}

.mod-headerMenu .menu-member-link-wrap .member-link--new {
	color: #f17074;
	background: #fff;
}

.mod-headerMenu .menu-wrap__title {
	color: #9a9a9a;
	background: #f4f4f4;
	padding: 0.6rem 0.8rem;
	font-size: 1.15rem;
}

.mod-headerMenu .menu-wrap__select-list {
	position: relative;
	margin-bottom: 1rem;
}

.mod-headerMenu .menu-wrap__select-list::after {
	content: "";
	position: absolute;
	top: 30%;
	right: 3%;
	width: 0.7rem;
	height: 0.7rem;
	border-bottom: 2px solid #f07074;
	border-right: 2px solid #f07074;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.mod-headerMenu .menu-wrap__select {
	width: 100%;
	height: 3.5rem;
	line-height: 3.5rem;
	color: #000;
	background-color: #fff;
	font-size: 1.15rem;
	padding-left: 0.8rem;
	border: 0.1rem solid #e5e5e5;
	border-radius: 0.4rem;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.mod-headerMenu .menu-wrap__select:last-child {
	margin-bottom: 0;
}

.mod-headerMenu .menu-wrap__content {
	text-align: center;
	padding: 1.2rem;
}

.mod-headerMenu .menu-wrap__content.search-btns {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.mod-headerMenu .menu-wrap__search-btn {
	font-size: 1.15rem;
	width: 48.5%;
	height: 3.8rem;
	line-height: 3.8rem;
	color: #000;
	background: #fff;
	border: 0.1rem solid #e5e5e5;
	border-radius: 0.6rem;
}

.mod-headerMenu .menu-wrap__search-icon {
	width: 1.2rem;
	height: 1.4rem;
	vertical-align: middle;
}

.mod-headerMenu .menu-wrap .shop-icon {
	margin-right: 0.4rem;
}

.mod-headerMenu .menu-wrap__content-list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: 1.2rem;
	border-top: 0.1rem solid #e5e5e5;
	border-left: 0.1rem solid #e5e5e5;
}

.mod-headerMenu .menu-wrap__content-item {
	position: relative;
	color: #000;
	font-size: 1.15rem;
	width: calc(100% / 2);
	height: 3.8rem;
	line-height: 3.8rem;
	padding-left: 1.2rem;
	border-bottom: 0.1rem solid #e5e5e5;
	border-right: 0.1rem solid #e5e5e5;
}

.mod-headerMenu .menu-wrap__content-item::after {
	content: "";
	position: absolute;
	margin-top: -1rem;
	top: 64%;
	right: 1.2rem;
	width: 0.7rem;
	height: 0.7rem;
	border-bottom: 2px solid #f07074;
	border-right: 2px solid #f07074;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.mod-headerMenu .menu-wrap__content-item a {
	display: block;
	width: 100%;
}

.mod-headerMenu .menu-wrap__link-list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: 1.2rem;
	border: 0.1rem solid #e5e5e5;
}

.mod-headerMenu .menu-wrap__link-item {
	position: relative;
	width: 100%;
	padding: 1.3rem;
	border-bottom: 0.1rem solid #e5e5e5;
}

.mod-headerMenu .menu-wrap__link-item::after {
	content: "";
	position: absolute;
	margin-top: -1.6rem;
	right: 1.2rem;
	width: 0.7rem;
	height: 0.7rem;
	border-bottom: 2px solid #f07074;
	border-right: 2px solid #f07074;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.mod-headerMenu .menu-wrap__link-item:last-child {
	border-bottom: 0;
}

.mod-headerMenu .menu-wrap__link-title {
	color: #000;
	font-size: 1.15rem;
	margin-bottom: 0.5rem;
}

.mod-headerMenu .menu-wrap__link-lead {
	color: #9a9a9a;
	font-size: 0.78rem;
}

.js-no-selected-text {
	color: #BEBEBE;
}

.checkbox-none {
	display: none;
}

.shop-girl-select-modal-wrap {
	position: relative;
	width: 100%;
	z-index: 16;
}

.shop-girl-select-modal-wrap .shop-girl-select-modal {
	position: fixed;
	top: 110%;
	right: 3%;
	width: 95%;
	height: 19rem;
	padding: 2rem;
	color: #000;
	background-color: #FFFFFF;
	border-radius: 1rem;
	font-size: 1.5rem;
	font-weight: bold;
	text-align: center;
}

.shop-girl-select-modal-wrap .shop-girl-select-modal .shop-girl-select-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: 1.2rem;
}

.shop-girl-select-modal-wrap .shop-girl-select-modal .shop-girl-select-wrap .select-tab {
	height: 11rem;
	width: 15rem;
	border: solid 2px #E5E5E5;
	border-radius: 1rem;
}

.shop-girl-select-modal-wrap .shop-girl-select-modal .shop-girl-select-wrap .select-tab p {
	font-size: 1.3rem;
}

.shop-girl-select-modal-wrap .shop-girl-select-modal .shop-girl-select-wrap .shop-select-tab {
	margin-right: 1rem;
	padding-top: 3.4rem;
}

.shop-girl-select-modal-wrap .shop-girl-select-modal .shop-girl-select-wrap .shop-select-tab img {
	width: 1.7rem;
	margin-bottom: 1.7rem;
}

.shop-girl-select-modal-wrap .shop-girl-select-modal .shop-girl-select-wrap .girl-select-tab {
	padding-top: 3.1rem;
}

.shop-girl-select-modal-wrap .shop-girl-select-modal .shop-girl-select-wrap .girl-select-tab img {
	width: 1rem;
	margin-bottom: 1.5rem;
}

.shop-girl-select-modal-wrap .view-pop-banner-search-main-modal-tab {
	position: fixed;
	top: 110%;
	right: 3%;
	width: 95%;
	height: 18rem;
	padding: 2rem;
	color: #000;
	background-color: #FFFFFF;
	border-radius: 1rem;
	font-size: 1.5rem;
	font-weight: bold;
	text-align: center;
}

.shop-girl-select-modal-wrap .view-pop-banner-search-main-modal-tab .shop-girl-select-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: 1.2rem;
}

.shop-girl-select-modal-wrap .view-pop-banner-search-main-modal-tab .shop-girl-select-wrap .select-tab {
	height: 11rem;
	width: 15rem;
	border: solid 2px #E5E5E5;
	border-radius: 1rem;
}

.shop-girl-select-modal-wrap .view-pop-banner-search-main-modal-tab .shop-girl-select-wrap .select-tab p {
	font-size: 1.3rem;
}

.shop-girl-select-modal-wrap .view-pop-banner-search-main-modal-tab .shop-girl-select-wrap .shop-select-tab {
	margin-right: 1rem;
	padding-top: 3.4rem;
}

.shop-girl-select-modal-wrap .view-pop-banner-search-main-modal-tab .shop-girl-select-wrap .shop-select-tab img {
	width: 1.7rem;
	margin-bottom: 1.7rem;
}

.shop-girl-select-modal-wrap .view-pop-banner-search-main-modal-tab .shop-girl-select-wrap .girl-select-tab {
	padding-top: 3.1rem;
}

.shop-girl-select-modal-wrap .view-pop-banner-search-main-modal-tab .shop-girl-select-wrap .girl-select-tab img {
	width: 1rem;
	margin-bottom: 1.5rem;
}

.reset-modal-wrap::before {
	content: "";
	position: fixed;
	top: 110%;
	left: 0;
	width: 100%;
	height: 100vh;
	background: rgba(0, 0, 0, 0.8);
	z-index: 17;
	-webkit-transition: top .3s ease;
	transition: top .3s ease;
}

.reset-modal-wrap .reset-modal {
	width: 95%;
	height: 11.2rem;
	padding: 1.5rem;
	background-color: #FFFFFF;
	border-radius: 1rem;
	font-size: 1.3rem;
	text-align: center;
	position: fixed;
	top: 110%;
	right: 2.5%;
	z-index: 18;
	-webkit-transition: top .3s ease;
	transition: top .3s ease;
}

.reset-modal-wrap .reset-modal .reset-notice {
	display: inline-block;
	margin: 0.9rem 0;
	color: #000;
	font-size: 1.15rem;
}

.reset-modal-wrap .reset-modal .reset-btn-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.reset-modal-wrap .reset-modal .reset-btn-wrap .reset-btn {
	width: 13rem;
	height: 3.4rem;
	border-radius: 0.5rem;
	font-size: 1.2rem;
}

.reset-modal-wrap .reset-modal .reset-btn-wrap .reset-cancel {
	color: #000;
	background-color: #DBDBDB;
}

.reset-modal-wrap .reset-modal .reset-btn-wrap .reset-approve {
	color: #fff;
	background-color: #000000;
}

.search-main-modal {
	color: #000;
	background-color: #fff;
	width: 100vw;
	position: fixed;
	top: 110%;
	z-index: 16;
}

.search-main-modal .position-standard {
	position: relative;
	padding-bottom: 10rem;
}

.search-main-modal-header {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	position: fixed;
	top: 110%;
	width: 100%;
	height: 4.4rem;
	background-color: #fff;
	border-bottom: 2px solid #F0F0F0;
	z-index: 1;
}

.search-main-modal-header .modal-close {
	position: absolute;
	top: 26%;
	left: 1.5rem;
	color: #000;
	font-size: 1.2rem;
}

.search-main-modal-header .modal-close::before {
	content: "";
	position: absolute;
	top: 17%;
	left: -9%;
	width: 0.7rem;
	height: 0.7rem;
	border-bottom: 0.2rem solid #F07074;
	border-right: 0.2rem solid #F07074;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}

.search-main-modal-tab {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding-top: 4.4rem;
}

.search-main-modal-tab .main-modal-tab {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 50%;
	height: 4.3rem;
	background-color: #F8F8F8;
	border-bottom: 2px solid #F07074;
}

.search-main-modal .view-header-banner-search-main-modal-tab {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.search-main-modal .view-header-banner-search-main-modal-tab .main-modal-tab {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 50%;
	height: 5rem;
	background-color: #F8F8F8;
	border-bottom: 2px solid #F07074;
}

.search-main-modal .name-input-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 6rem;
	padding: 1.2rem 0.8rem;
	position: relative;
}

.search-main-modal .name-input-wrap .name-input {
	height: 3.5rem;
	width: 23rem;
	font-size: 1.2rem;
	padding: 0.1rem 3.5rem 0 0.5rem;
	border: 2px solid #D8D8D8;
	border-right: none;
	border-radius: 0.5rem 0 0 0.5rem;
}

.search-main-modal .name-input-wrap .name-search-link {
	display: inline-block;
	color: #fff;
	background-color: #000000;
	width: 9rem;
	height: 3.5rem;
	text-align: center;
	font-size: 1rem;
	font-weight: bold;
	line-height: 3rem;
	border-radius: 0 0.5rem 0.5rem 0;
}

.search-main-modal .name-input-wrap .name-remove-btn {
	position: absolute;
	top: 2rem;
	right: 10rem;
	width: 2rem;
	height: 2rem;
	line-height: 2rem;
	padding: 0;
	border-radius: 50%;
	background: #C9C9C9;
	font-size: 2rem;
	color: #fff;
}

.search-main-modal .select-condition-wrap li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: relative;
	min-height: 4.6rem;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 1rem 1.7rem 1rem 0.7rem;
	border-bottom: 2px solid #F0F0F0;
}

.search-main-modal .select-condition-wrap.select-place-wrap {
	border-top: 13px solid #F0F0F0;
}

.search-main-modal .select-condition-wrap .select-condition-theme, .search-main-modal .select-condition-wrap .select-work-condition-theme, .search-main-modal .select-condition-wrap .select-condition-title {
	font-size: 1.15rem;
}

.search-main-modal .select-condition-wrap .select-condition-theme, .search-main-modal .select-condition-wrap .select-work-condition-theme {
	font-weight: bold;
	background-color: #F6F6F6;
	height: 2.2rem;
	line-height: 2.2rem;
	padding-left: 1rem;
}

.search-main-modal .select-condition-wrap .select-condition-val {
	display: inline-block;
	font-size: 1.2rem;
	max-width: 22rem;
	padding-right: 1.3rem;
	margin-left: auto;
	line-height: 1.8rem;
	max-height: calc(1.8rem * 4);
	overflow: hidden;
	display: -webkit-box !important;
	-webkit-box-orient: vertical !important;
	-webkit-line-clamp: 4;
}

.search-main-modal .select-condition-wrap .girl-profile-text {
	width: 9rem;
}

.search-main-modal .select-condition-wrap .select-range {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 1.3rem;
	height: 3.1rem;
	line-height: 3.1rem;
	white-space: nowrap;
}

.search-main-modal .select-condition-wrap .select-range::before {
	content: "";
	position: absolute;
	top: 36%;
	right: 49%;
	width: 0.7rem;
	height: 0.7rem;
	border-bottom: 2px solid #F07074;
	border-right: 2px solid #F07074;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.search-main-modal .select-condition-wrap .select-range::after {
	content: "";
	position: absolute;
	top: 36%;
	right: 18.5%;
	width: 0.7rem;
	height: 0.7rem;
	border-bottom: 2px solid #F07074;
	border-right: 2px solid #F07074;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.search-main-modal .select-condition-wrap .select-range select {
	display: block;
	width: 7rem;
	height: 3.1rem;
	font-size: 1rem;
	text-align: left;
	margin: 0 0.8rem;
	padding-left: 1rem;
	background: #fff;
	color: #000;
	border: 1px solid #D8D8D8;
	border-radius: 0.4rem;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.search-main-modal .select-condition-wrap .select-range select.js-errorSelect {
	background: #feedf7;
	border-color: #E83656 !important;
}

.search-main-modal .select-condition-wrap .select-range select.select-min + .error-message {
	left: 11.5rem;
}

.search-main-modal .select-condition-wrap .select-range select.select-max + .error-message {
	right: 1rem;
	max-width: 13.5rem;
}

.search-main-modal .select-condition-wrap .budget-select-range {
	margin-left: auto;
}

.search-main-modal .select-condition-wrap .budget-select-range::before {
	right: 57%;
}

.search-main-modal .select-condition-wrap .budget-select-range::after {
	right: 17%;
}

.search-main-modal .select-condition-wrap .budget-select-range select {
	width: 8.5rem;
}

.search-main-modal .select-condition-wrap .input-range {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 2.7rem;
	line-height: 2.7rem;
	font-size: 1.2rem;
}

.search-main-modal .select-condition-wrap .input-range input {
	width: 7rem;
	height: 100%;
	font-size: 1.2rem;
	text-align: left;
	margin: 0 0.8rem;
	padding: 0 0.4rem;
	border: 1px solid #D8D8D8;
	border-radius: 0.4rem;
}

.search-main-modal .select-condition-wrap .price-select-btn-wrap {
	margin-left: auto;
}

.search-main-modal .select-condition-wrap .condition-select-btn {
	display: inline-block;
	height: 3.1rem;
	width: 6.8rem;
	line-height: 3.1rem;
	font-size: 1rem;
	text-align: center;
	background-color: #fff;
	border: 1px solid #D8D8D8;
	border-radius: 0.5rem;
	margin-right: 0.8rem;
}

.search-main-modal .select-condition-wrap .condition-select-btn:last-child {
	margin-right: 0;
}

.search-main-modal .select-condition-wrap .work-select-btn-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: 100%;
}

.search-main-modal .select-condition-wrap .work-select-btn-wrap .condition-select-btn {
	width: 9rem;
	font-size: 1.1rem;
	margin-right: 0;
}

.search-main-modal .select-condition-wrap .work-select-btn-wrap .condition-select-btn.js-checkbox-disabled {
	color: #C7C7C7;
	background-color: #EBEBEB;
}

.search-main-modal .select-condition-wrap .select-work-date-wrap {
	margin-left: auto;
}

.search-main-modal .select-condition-wrap .select-work-date-wrap .select-work-date {
	position: relative;
	width: 11.9rem;
	height: 3.4rem;
	font-size: 1.3rem;
	padding-left: 1rem;
	border: 1px solid #D8D8D8;
	border-radius: 0.4rem;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.search-main-modal .select-condition-wrap .select-work-date-wrap::before {
	content: "";
	position: absolute;
	top: 34%;
	right: 9%;
	width: 0.8rem;
	height: 0.8rem;
	border-bottom: 2px solid #F07074;
	border-right: 2px solid #F07074;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	z-index: 1;
}

.search-main-modal .select-condition-wrap .select-work-date-wrap.select-disabled .select-work-date {
	color: #C7C7C7;
	background-color: #EBEBEB;
}

.search-main-modal .select-condition-wrap .select-work-date-wrap.select-disabled::before {
	border-bottom: 2px solid #C7C7C7;
	border-right: 2px solid #C7C7C7;
}

.search-main-modal .select-condition-wrap .add-shop-conditions {
	background-color: #F7F7F7;
	height: 4.3rem;
	font-size: 1.1rem;
	font-weight: bold;
	text-align: center;
	line-height: 4.3rem;
}

.search-main-modal .select-condition-wrap .has-sub-modal::before {
	content: "";
	position: absolute;
	margin-top: -1rem;
	top: 65%;
	right: 1.5rem;
	width: 0.7rem;
	height: 0.7rem;
	border-bottom: 2px solid #F07074;
	border-right: 2px solid #F07074;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.search-main-modal .input-params {
	color: #000;
}

.search-main-modal .input-params .error-message {
	display: none;
	opacity: 0;
}

.search-main-modal .input-params::-webkit-input-placeholder {
	color: #d5d5d5;
}

.search-main-modal .input-params::-moz-placeholder {
	color: #d5d5d5;
}

.search-main-modal .input-params:-ms-input-placeholder {
	color: #d5d5d5;
}

.search-main-modal .input-params::-ms-input-placeholder {
	color: #d5d5d5;
}

.search-main-modal .input-params::placeholder {
	color: #d5d5d5;
}

.search-main-modal .input-params.js-errorInput {
	background: #feedf7;
	border-color: #E83656 !important;
}

.search-main-modal .input-params.js-errorInput.input-min + .error-message {
	left: 13.5rem;
	top: 4.5rem;
}

.search-main-modal .input-params.js-errorInput.input-max + .error-message {
	right: 0;
	top: 4.5rem;
	max-width: 13.5rem;
}

.search-main-modal .input-params.js-errorAnotherInput {
	background: #feedf7;
	border-color: #E83656 !important;
}

.search-main-modal .btn-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	height: 6.3rem;
	text-align: center;
	padding: 1rem 0;
	font-size: 1.3rem;
	width: 100%;
	position: fixed;
	bottom: -10%;
	background-color: #fff;
	border-top: 2px solid #F0F0F0;
}

.search-main-modal .btn-wrap .reset-btn {
	width: 25%;
	height: 4.3rem;
	font-size: 1.1rem;
	color: #000;
	border: 2px solid #F6F6F6;
	border-radius: 0.7rem;
	margin-right: 0.8rem;
}

.search-main-modal .btn-wrap .search-link-btn {
	display: inline-block;
	font-size: 1.1rem;
	width: 63%;
	height: 4.3rem;
	line-height: 4.3rem;
	color: #fff;
	background-color: #000000;
	border: 2px solid #000000;
	border-radius: 0.7rem;
}

.search-main-modal .btn-wrap .search-link-btn.js-isDisabled {
	pointer-events: none;
	opacity: 0.6;
}

.search-main-modal .switch_area {
	position: relative;
	margin-left: auto;
	width: 4.2rem;
	background-color: #fff;
    /* === チェックボックス ==================================== */
    /* === チェックボックスのラベル（標準） ==================== */
    /* === チェックボックスのラベル（ONのとき） ================ */
    /* === 丸部分のSTYLE（標準） =============================== */
    /* === 丸部分のSTYLE（ONのとき） =========================== */
}

.search-main-modal .switch_area input[type="checkbox"] {
	display: none;
}

.search-main-modal .switch_area label {
	display: block;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	height: 2.3rem;
	border: 2px solid #D8D8D8;
	border-radius: 1.4rem;
	background-color: #D8D8D8;
}

.search-main-modal .switch_area input[type="checkbox"]:checked + label {
	border-color: #F07074;
	background-color: #F07074;
}

.search-main-modal .switch_area .sw_img {
	position: absolute;
	width: 1.8rem;
	height: 1.8rem;
	background-color: #fff;
	top: 0.2rem;
	left: 0.3rem;
	border-radius: 1rem;
	-webkit-transition: .2s;
	transition: .2s;
	pointer-events: none;
}

.search-main-modal .switch_area input[type="checkbox"]:checked ~ .sw_img {
	-webkit-transform: translateX(1.8rem);
	transform: translateX(1.8rem);
}

@-webkit-keyframes fadeDownAnime {
	from {
		opacity: 0;
		-webkit-transform: translateY(-1rem);
		transform: translateY(-1rem);
	}

	to {
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

@keyframes fadeDownAnime {
	from {
		opacity: 0;
		-webkit-transform: translateY(-1rem);
		transform: translateY(-1rem);
	}

	to {
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

@-webkit-keyframes fadeOutAnime {
	from {
		opacity: 1;
	}

	to {
		opacity: 0;
	}
}

@keyframes fadeOutAnime {
	from {
		opacity: 1;
	}

	to {
		opacity: 0;
	}
}

.search-main-modal .error-message {
	position: absolute;
	display: none;
	opacity: 1;
	top: 5.5rem;
	right: 1rem;
	padding: 0.5rem 0.5rem 0.4rem 0.5rem;
	max-width: 37%;
	line-height: 1.3rem;
	border: #e83656 solid 1px !important;
	border-radius: 0.3rem;
	background: #ffffff;
	color: #e83656;
	font-size: 0.9rem;
	z-index: 1;
	-webkit-animation-name: fadeDownAnime;
	animation-name: fadeDownAnime;
	-webkit-animation-duration: 0.3s;
	animation-duration: 0.3s;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
}

.search-main-modal .error-message.js-fade-out {
	-webkit-animation-name: fadeOutAnime;
	animation-name: fadeOutAnime;
	-webkit-animation-duration: 0.3s;
	animation-duration: 0.3s;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
}

.search-main-modal .error-message:before {
	position: absolute;
	content: '';
	border: none;
	top: -0.7rem;
	left: 1.4rem;
	border-bottom: 0.7rem solid #e83656;
	border-right: 0.5rem solid transparent;
	border-left: 0.5rem solid transparent;
}

.search-main-modal .error-message:after {
	position: absolute;
	content: '';
	top: -0.6rem;
	left: 1.4rem;
	border-bottom: 0.7rem solid #FFF;
	border-right: 0.5rem solid transparent;
	border-left: 0.5rem solid transparent;
}

.search-main-modal .js-errorSelect + .error-message, .search-main-modal .js-errorInput + .error-message {
	display: block;
}

@media (max-width: 374px) {
	.search-main-modal .select-condition-wrap .budget-select-range select {
		width: 9rem;
		font-size: 1.3rem;
	}

	.search-main-modal .select-condition-wrap .budget-select-range::before {
		right: 60% !important;
	}

	.search-main-modal .select-condition-wrap .budget-select-range::after {
		right: 18% !important;
	}

	.search-main-modal .select-condition-wrap .input-range {
		white-space: nowrap;
	}

	.search-main-modal .select-condition-wrap .condition-select-btn {
		width: 7rem;
	}

	.search-main-modal .select-condition-wrap .work-select-btn-wrap .condition-select-btn {
		width: 8rem;
	}

	.search-main-modal .select-condition-wrap .select-work-date-wrap::before {
		right: 11%;
	}

	.search-main-modal .select-condition-wrap .girl-profile-text {
		width: 8rem;
	}

	.search-main-modal .select-condition-wrap .select-range .cup-select {
		width: 6.5rem;
	}

	.search-main-modal .select-condition-wrap .select-range::before {
		right: 51%;
	}

	.search-main-modal .select-condition-wrap .select-range::after {
		right: 21.5%;
	}
}

#sub-shop-region-modal, #sub-girl-region-modal {
	z-index: 17;
}

.place-list {
	padding-top: 4.3rem;
}

.place-list li {
	height: 4.3rem;
	border-bottom: 2px solid #F0F0F0;
	position: relative;
	padding: 0 1.2rem;
	line-height: 4.3rem;
	font-size: 1.2rem;
}

.place-list li p {
	display: inline-block;
	height: 100%;
	line-height: 100%;
	font-size: 1.2rem;
}

.place-list .has-child-modal::after {
	content: "";
	position: absolute;
	margin-top: -1rem;
	top: 2.8rem;
	right: 1.4rem;
	width: 0.7rem;
	height: 0.7rem;
	border-bottom: 2px solid #F07074;
	border-right: 2px solid #F07074;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.area-modal .area-select-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	height: 6.9rem;
	padding: 1rem;
	color: #000;
	background-color: #F8F8F8;
	margin-top: 4.3rem;
}

.area-modal .area-select-wrap button {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	color: #000;
	width: 9.4rem;
	height: 101%;
	font-size: 1rem;
	font-weight: bold;
	background-color: #fff;
	border: 2px solid #D6D6D6;
	border-radius: 0.5rem;
}

.area-modal .area-select-wrap button img {
	width: 1.3rem;
	height: 1.3rem;
	margin-bottom: 0.2rem;
}

.area-modal .area-select-wrap button.js-selected img {
	-webkit-filter: brightness(10000%);
	filter: brightness(10000%);
}

.area-modal .tabs-wrap {
	padding-bottom: 6rem;
	background-color: #fff;
}

.area-modal .tabs-wrap .condition-list {
	padding: 0 0 6rem 0;
}

.area-modal .tabs-wrap .condition-list li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 4.3rem;
	border-bottom: 2px solid #F0F0F0;
	position: relative;
	padding: 0 1rem;
	line-height: 4.3rem;
}

.area-modal .tabs-wrap .condition-list .child-station {
	padding-left: 4rem;
}

.area-modal .tabs-wrap .pulldown-station-list {
	padding-bottom: 0;
	overflow-x: hidden;
}

.area-modal .tabs-wrap .select-station-wrap .select-station-type {
	width: 100%;
	display: inline-block;
	padding: 0.6rem;
	font-size: 0.9rem;
	color: #fff;
	background-color: #000000;
}

.area-modal .tabs-wrap .select-station-wrap .select-station-menu {
	position: relative;
}

.area-modal .tabs-wrap .select-station-wrap .select-station-menu .arrow {
	content: "";
	position: absolute;
	top: 1.3rem;
	right: 1.4rem;
	width: 1rem;
	height: 1rem;
	border-bottom: 2px solid #F07074;
	border-right: 2px solid #F07074;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.area-modal .tabs-wrap .select-station-wrap .select-station-menu .wayside-arrow {
	position: relative;
}

.area-modal .tabs-wrap .select-station-wrap .select-station-menu .wayside-arrow:after {
	content: "";
	position: absolute;
	top: 1.1rem;
	left: 29.5rem;
	width: 0.8rem;
	height: 0.8rem;
	border-bottom: 2px solid #F07074;
	border-right: 2px solid #F07074;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.area-modal .tabs-wrap .select-station-wrap .select-station-menu .wayside-arrow.js-pulldown-rotate:after {
	top: 9.1rem;
	left: 5.3rem;
	-webkit-transform: rotate(0);
	transform: rotate(0);
}

.area-modal .tabs-wrap .select-station-wrap .select-station-menu .wayside-label {
	position: relative;
	width: auto;
}

.area-modal .tabs-wrap .select-station-wrap .pulldown-station {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	height: 4.3rem;
	line-height: 4rem;
	font-size: 1.2rem;
	color: #000;
	background-color: #F4F4F4;
	border-bottom: 2px solid #DBDBDB;
	text-align: left;
	padding: 0 1rem;
}

.area-modal .tabs-wrap .select-station-wrap .pulldown-station-list {
	display: none;
}

.sub-modal-wrap .condition-list {
	background-color: #fff;
	padding: 4.3rem 0 6rem 0;
}

.sub-modal-wrap .condition-list li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 4.3rem;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	border-bottom: 2px solid #F0F0F0;
	position: relative;
	padding: 0 1.2rem;
	line-height: 4.3rem;
}

.sub-modal-wrap .group-list {
	padding: 0 0 7rem 0;
	margin-bottom: 3rem;
}

.sub-modal-wrap .group-list li {
	height: 8.5rem;
	padding: 1rem;
}

.sub-modal-wrap .group-list li .shop-group-img {
	width: 9.4rem;
	height: 6.3rem;
	margin-left: 2.5rem;
}

.sub-modal-wrap .group-list li .custom-checkbox {
	top: 3rem;
	left: 0.5rem;
}

.girlgenre-list-wrap {
	width: 100%;
	padding: 4.3rem 0 6rem 0;
}

.girlgenre-list-wrap .sub-condition-theme {
	width: 100%;
	font-size: 1.1rem;
	font-weight: bold;
	background-color: #F6F6F6;
	height: 2.5rem;
	line-height: 2.5rem;
	padding-left: 1rem;
}

.girlgenre-list-wrap .condition-list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding: 0;
	font-size: 1.2rem;
}

.girlgenre-list-wrap .condition-list li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 4.3rem;
	border-bottom: 2px solid #F0F0F0;
	position: relative;
	padding: 0 1.2rem;
	line-height: 4.3rem;
	width: calc(100% / 2);
	border-right: 2px solid #F0F0F0;
}

#sub-girl-status-modal .condition-list, #sub-girl-looks-modal .condition-list {
	padding: 0;
}

#sub-girl-status-modal .condition-list:first-child, #sub-girl-looks-modal .condition-list:first-child {
	padding-top: 4.3rem;
}

.shop-girl-select-modal-wrap,
.reset-modal-wrap,
.search-main-modal,
.sub-modal-wrap {
	font-size: 1.4rem;
}

.shop-girl-select-modal-wrap button,
.reset-modal-wrap button,
.search-main-modal button,
.sub-modal-wrap button {
	background-color: #fff;
}

.js-none {
	display: none !important;
}

.js-event-none {
	pointer-events: none;
}

.js-selected {
	background-color: #f07074 !important;
	color: #fff !important;
	border: none !important;
}

.js-selected .modal-title {
	color: #fff !important;
}

.js-pulldown-rotate {
	-webkit-transform: rotate(-135deg) !important;
	transform: rotate(-135deg) !important;
	top: 1.5rem !important;
}

.position-standard {
	position: relative;
	padding-bottom: 4rem;
}

.custom-checkbox {
	border-radius: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	position: absolute;
	width: 1.8rem;
	height: 1.8rem;
	border: 2px solid #eaeaea;
	border-radius: 0.4rem;
}

.custom-checkbox:checked {
	background-color: #f07074;
	border: 1px solid #f07074;
}

.custom-checkbox:checked::before {
	position: absolute;
	top: 0.2rem;
	left: 0.5rem;
	-webkit-transform: rotate(40deg);
	transform: rotate(40deg);
	width: 0.5rem;
	height: 0.9rem;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	content: "";
}

.custom-label {
	width: 100%;
	margin-left: 2.6rem;
	font-size: 1.1rem;
}

.search-main-modal .modal-title,
.sub-modal-wrap .modal-title,
.reset-modal .modal-title {
	font-size: 1.3rem;
	font-weight: bold;
}

.reset-modal .modal-title {
	color: #000;
}

.sub-modal-wrap {
	position: fixed;
	overflow-x: hidden;
	top: 0;
	left: 110%;
	width: 100%;
	height: 100%;
	color: #000;
	background-color: #fff;
	z-index: 16;
	-webkit-transition: left 0.3s ease;
	transition: left 0.3s ease;
}

.search-modal-header {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	position: fixed;
	top: 0;
	left: 110%;
	width: 100%;
	height: 4.3rem;
	background-color: #fff;
	border-bottom: 2px solid #f0f0f0;
	z-index: 2;
}

.search-modal-header .change-region {
	font-size: 1.2rem;
	position: absolute;
	float: right;
	right: 1.3rem;
	color: #000;
}

.search-modal-header .modal-back {
	display: block;
	position: absolute;
	top: 30%;
	height: 2rem;
	width: 5rem;
	left: 1rem;
	color: #000;
	opacity: 1;
	font-size: 1.2rem;
}

.search-modal-header .modal-back::before {
	content: "";
	position: absolute;
	margin-top: -1rem;
	top: 1.5rem;
	left: 0;
	width: 0.7rem;
	height: 0.7rem;
	border-bottom: 2px solid #f07074;
	border-right: 2px solid #f07074;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}

.sub-condition-select-wrap {
	position: fixed;
	bottom: 0;
	left: 110%;
	width: 100%;
	height: 6rem;
	padding: 0.8rem;
	border-top: 2px solid #eaeaea;
	background-color: #fff;
}

.sub-condition-select-wrap .select-btn {
	width: 100%;
	height: 4.3rem;
	font-size: 1.2rem;
	color: #fff;
	background-color: #000000;
	border-radius: 0.5rem;
}

.over-lay {
	content: "";
	position: fixed;
	top: 110%;
	width: 100%;
	height: 140%;
	background: rgba(0, 0, 0, 0.8);
	z-index: 15;
}

.over-lay .banner-close-icon, .over-lay .view-pop-banner-close-icon {
	width: 1.1rem;
}

.over-lay .close-icon {
	width: 6rem;
}

.js-is-searchModalOpen {
	overflow: hidden;
	position: fixed;
	width: 100%;
}

.js-is-searchModalOpen .over-lay {
	top: 4.4rem !important;
}

.js-is-searchModalOpen .over-lay .view-pop-banner-close-icon {
	position: fixed;
	top: 20%;
	left: 94%;
}

.js-is-searchModalOpen .over-lay .banner-close-icon {
	position: fixed;
	top: 30.5%;
	left: 94%;
}

.js-is-searchModalOpen .over-lay .close-icon {
	position: fixed;
	bottom: 2%;
	left: 40%;
}

.js-is-searchModalOpen .shop-girl-select-modal {
	top: 34%;
	z-index: 12;
}

.js-is-searchModalOpen .view-pop-banner-search-main-modal-tab {
	top: 23%;
	z-index: 12;
}

.js-is-searchModalOpen .search-jack-pop-banner {
	position: relative;
	display: inline-block;
	width: 100%;
	padding-top: 20%;
}

.js-is-searchModalOpen .search-jack-pop-banner img {
	width: 25rem;
	height: 18.2rem;
	-o-object-fit: cover;
	object-fit: cover;
}

.js-is-searchModalOpen .js-searchModalOpen {
	overflow: auto;
	height: 100%;
}

.js-is-searchModalOpen .js-searchModalOpen.search-main-modal {
	position: fixed;
	top: 0;
	z-index: 16;
	overflow-x: hidden;
}

.js-is-searchModalOpen .js-searchModalOpen.search-main-modal .search-main-modal-header {
	position: fixed;
	top: 0;
	z-index: 17;
}

.js-is-searchModalOpen .js-searchModalOpen.search-main-modal .search-jack-header-banner img {
	padding: 5rem 0.8rem 0.8rem;
}

.js-is-searchModalOpen .js-searchModalOpen.search-main-modal .btn-wrap {
	bottom: 0;
}

.js-is-searchModalOpen .js-searchModalOpen.sub-modal-wrap {
	left: 0;
}

.js-is-searchModalOpen .js-searchModalOpen.sub-modal-wrap .search-modal-header {
	left: 0;
}

.js-is-searchModalOpen .js-searchModalOpen.sub-modal-wrap .sub-condition-select-wrap {
	left: 0;
}

.js-is-searchModalOpen .js-searchModalOpen.reset-modal-wrap::before {
	top: 0;
}

.js-is-searchModalOpen .js-searchModalOpen.reset-modal-wrap .reset-modal {
	top: 26rem;
}

@media screen and (max-width: 375px) {
	.js-is-searchModalOpen .over-lay .view-pop-banner-close-icon {
		top: 15%;
	}

	.js-is-searchModalOpen .view-pop-banner-search-main-modal-tab {
		top: 18%;
	}

	.js-is-searchModalOpen .search-jack-pop-banner {
		padding-top: 15%;
	}

	.js-is-searchModalOpen:has(.mod-prefecture-top-banner) .over-lay .view-pop-banner-close-icon {
		top: 22%;
	}

	.js-is-searchModalOpen:has(.mod-prefecture-top-banner) .shop-girl-select-modal-wrap .view-pop-banner-search-main-modal-tab {
		top: 25%;
		height: 18rem;
		padding: 1rem 2rem;
	}

	.js-is-searchModalOpen:has(.mod-prefecture-top-banner) .shop-girl-select-modal-wrap .view-pop-banner-search-main-modal-tab .search-jack-pop-banner {
		padding-top: 8%;
	}
}
