body.sd .style-dx,
body.sd .__dx {
	display: none !important;
}
body.dx .__sd {
	display: none !important;
}

body.dx main.top .__in-layouts {
	display: none !important;
}

/* SP店舗ポップアップ表示時背景スクロール禁止 */
body.modal-open {
  overflow: hidden !important;
}

/* 店舗TOP */
#Topslide {
	background-color: #FFF;
  padding-bottom: 20px;/* 0718 margin→padding修正 */
  overflow: hidden;
}

#Topslide .swiper {
  padding-bottom: 10px;
}

#Topslide .swiper-slide {
  aspect-ratio: 1020 / 437;/* ショップバナーの規定値 */
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

#Topslide .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  display: block;
}

.swiper-pagination {
  bottom: 0 !important;
}

@media screen and (max-width: 849px) {
  #Topslide {
    margin-top: 0;
  }

  #Topslide .swiper {
    border-radius: 0;
    padding-bottom: 20px;
  }
}

#sticky-header {
	display: none;
}
.popup-overlay { display: none;}
.block-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.8);
	z-index: 9900;
	display: none;
	transition: transform 0.2s;
}
#popup-search.block-window .popup-detail .popup-ttl {
	border-bottom: none;
}
#popup-search.block-window .popup-detail .txt {
	margin-bottom: 30px;
	text-align: center;
}
#popup-search.block-window .popup-detail .txt span {
	text-align: center;
	display: block;
	font-size: 15px;
	font-weight: bold;
	padding-bottom: 20px;
}
.side_bar .close-popup { display: none;}
.side_bar.shop {
	position: sticky;
	top: 90px;
}
.side_bar.shop .box .banner {
	margin-bottom: 10px;
	border-radius: 5px;
	overflow: hidden;
}
.side_bar.shop .box .detail .name {
	margin-bottom: 10px;
}
.side_bar.shop .box .detail .name .shop {
	font-size: 13px;
    font-weight: 700;
    color: var(--pink);
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}
.side_bar.shop .box .detail .name .area {
    font-size: 12px;
    color: #BEBEBE;
	font-weight: 400;
}
.side_bar.shop .box .btn.keep {
    max-width: 100%;
    width: 100%;
    height: 50px;
    box-shadow: 0px 0px 0px 0px;
	margin-bottom: 15px;
}
.side_bar.shop .box .btn.keep a,
.side_bar.shop .box .btn.keep a.unkeep-btn:hover {
    display: block;
    border: solid 4px #C9DCEA;
    text-align: center;
    padding: 0 10px;
    font-size: 14px;
    border-radius: 8px;
    font-weight: bold;
    box-sizing: border-box;
    line-height: 43px;
    height: 100%;
    transition: 0.1s;
}
.side_bar.shop .box .btn.keep a span {
    transition: 0.3s;
    background-image: url("/img/front/icon/icon20.svg");
    background-position: left center;
    background-repeat: no-repeat;
    padding-left: 20px;
}
.side_bar.shop .box .btn.keep a:hover,
.side_bar.shop .box .btn.keep a.unkeep-btn {
	border-color: var(--yellow);
}
.side_bar.shop .box .shop_contact_menu ul li {
    margin-bottom: 5px;
}
.side_bar.shop .box .shop_contact_menu ul li a {
	display: block;
    position: relative;
    background-color: var(--blue);
	border: solid 1px #FFF;
    border-radius: 8px;
    height: 40px;
	color: #FFF;
	font-size: 13px;
	font-weight: bold;
	text-align: center;
	line-height: 40px;
	transition: 0.1s;
}
.side_bar.shop .box .shop_contact_menu ul li.tel a {background-color: #FF839A;}
.side_bar.shop .box .shop_contact_menu ul li.chat a {background-color: #FFCA75;}
.side_bar.shop .box .shop_contact_menu ul li.line a {background-color: #62C8CC;}
.side_bar.shop .box .shop_contact_menu ul li.web a {background-color: #8A6C73;}
.side_bar.shop .box .shop_contact_menu ul li a:hover {
	opacity: 0.8;
}

.shop_swiper {
  position: relative;
  overflow: visible;
	padding-bottom: 30px;
}
.shop_swiper .swiper-slide {}
.shop_swiper.single-slide {
    padding-bottom: 0px;
}
.shop_swiper.single-slide .swiper-wrapper {}
.shop_swiper.single-slide .swiper-slide {}
.shop_swiper.single-slide .swiper-pagination {
  display: none;
}

.shop_info {
	padding: 0 30px 30px;
}
.shop_info .detail {
	display: flex;
	justify-content: space-between;
	margin-bottom: 10px;
}
.shop_info .detail .name {
    color: #BEBEBE;
    font-size: 12px;
	font-weight: 400;
	width: 80%;
}
.shop_info .detail .name span {
    color: #8A6C73;
	font-weight: 700;
    font-size: 20px;
	display: block;
}
.shop_info .detail .block_btn {
	border: solid 1px #EBEEF0;
	position: relative;
	border-radius: 18px;
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI0ZGODM5QSIgZD0iTTEyLjAwMyAyMWE4Ljc3MyA4Ljc3MyAwIDAgMS0zLjUxLS43MDkgOS4wOTUgOS4wOTUgMCAwIDEtMi44NTktMS45MjIgOS4wODEgOS4wODEgMCAwIDEtMS45MjUtMi44NTdBOC43NTIgOC43NTIgMCAwIDEgMyAxMi4wMDNjMC0xLjI0NC4yMzYtMi40MTQuNzA4LTMuNTFhOS4wOTYgOS4wOTYgMCAwIDEgMS45MjMtMi44NTkgOS4wODEgOS4wODEgMCAwIDEgMi44NTctMS45MjVBOC43NTIgOC43NTIgMCAwIDEgMTEuOTk3IDNjMS4yNDQgMCAyLjQxNC4yMzYgMy41MS43MDhhOS4wOTYgOS4wOTYgMCAwIDEgMi44NTkgMS45MjMgOS4wODIgOS4wODIgMCAwIDEgMS45MjUgMi44NTdBOC43NTIgOC43NTIgMCAwIDEgMjEgMTEuOTk3YTguNzcyIDguNzcyIDAgMCAxLS43MDkgMy41MSA5LjA5NSA5LjA5NSAwIDAgMS0xLjkyMiAyLjg1OSA5LjA4MiA5LjA4MiAwIDAgMS0yLjg1NyAxLjkyNSA4Ljc1MiA4Ljc1MiAwIDAgMS0zLjUwOS43MDlaTTEyIDIwYTcuOTUgNy45NSAwIDAgMCA1LjI4NS0yLjAwOEw2LjAwOCA2LjcxNUE4LjMwOCA4LjMwOCAwIDAgMCA0LjUyNCA5LjE4IDcuNzU5IDcuNzU5IDAgMCAwIDQgMTJjMCAyLjIzMy43NzUgNC4xMjUgMi4zMjUgNS42NzVDNy44NzUgMTkuMjI1IDkuNzY3IDIwIDEyIDIwWm01Ljk5Mi0yLjcxNWE3Ljk1IDcuOTUgMCAwIDAgMS40OTMtMi40NjRBNy44ODYgNy44ODYgMCAwIDAgMjAgMTJjMC0yLjIzMy0uNzc1LTQuMTI1LTIuMzI1LTUuNjc1QzE2LjEyNSA0Ljc3NSAxNC4yMzMgNCAxMiA0Yy0uOTgxIDAtMS45MjYuMTY4LTIuODM0LjUwNWE3LjM5NyA3LjM5NyAwIDAgMC0yLjQ1IDEuNTAzbDExLjI3NiAxMS4yNzdaIi8+PC9zdmc+");
	background-position: center;
	background-repeat: no-repeat;
	height: 44px;
	margin-left: auto;
}
.shop_info .detail .block_btn.on {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTAuMDAxNyAxOS41QzguNjg3NzUgMTkuNSA3LjQ1MjY3IDE5LjI1MDcgNi4yOTY1IDE4Ljc1MkM1LjE0MDMzIDE4LjI1MzMgNC4xMzQ2NyAxNy41NzY2IDMuMjc5NSAxNi43MjE4QzIuNDI0MzMgMTUuODY2OSAxLjc0NzI1IDE0Ljg2MTcgMS4yNDgyNSAxMy43MDZDMC43NDk0MTcgMTIuNTUwMyAwLjUgMTEuMzE1NiAwLjUgMTAuMDAxN0MwLjUgOC42ODc3NSAwLjc0OTMzMyA3LjQ1MjY3IDEuMjQ4IDYuMjk2NUMxLjc0NjY3IDUuMTQwMzMgMi40MjM0MiA0LjEzNDY3IDMuMjc4MjUgMy4yNzk1QzQuMTMzMDggMi40MjQzMyA1LjEzODMzIDEuNzQ3MjUgNi4yOTQgMS4yNDgyNUM3LjQ0OTY3IDAuNzQ5NDE3IDguNjg0NDIgMC41IDkuOTk4MjUgMC41QzExLjMxMjMgMC41IDEyLjU0NzMgMC43NDkzMzMgMTMuNzAzNSAxLjI0OEMxNC44NTk3IDEuNzQ2NjcgMTUuODY1MyAyLjQyMzQyIDE2LjcyMDUgMy4yNzgyNUMxNy41NzU3IDQuMTMzMDggMTguMjUyOCA1LjEzODMzIDE4Ljc1MTggNi4yOTRDMTkuMjUwNiA3LjQ0OTY3IDE5LjUgOC42ODQ0MiAxOS41IDkuOTk4MjVDMTkuNSAxMS4zMTIzIDE5LjI1MDcgMTIuNTQ3MyAxOC43NTIgMTMuNzAzNUMxOC4yNTMzIDE0Ljg1OTcgMTcuNTc2NiAxNS44NjUzIDE2LjcyMTggMTYuNzIwNUMxNS44NjY5IDE3LjU3NTcgMTQuODYxNyAxOC4yNTI4IDEzLjcwNiAxOC43NTE4QzEyLjU1MDMgMTkuMjUwNiAxMS4zMTU2IDE5LjUgMTAuMDAxNyAxOS41Wk0xMCAxOEMxMC45MzgyIDE4IDExLjg0MTcgMTcuODQxMyAxMi43MTA1IDE3LjUyNEMxMy41NzkyIDE3LjIwNjcgMTQuMzczMSAxNi43NDc0IDE1LjA5MjIgMTYuMTQ2MkwzLjg1Mzc1IDQuOTA3NzVDMy4yNTg5MiA1LjYyNjkyIDIuODAxMjUgNi40MjA4MyAyLjQ4MDc1IDcuMjg5NUMyLjE2MDI1IDguMTU4MzMgMiA5LjA2MTgzIDIgMTBDMiAxMi4yMzMzIDIuNzc1IDE0LjEyNSA0LjMyNSAxNS42NzVDNS44NzUgMTcuMjI1IDcuNzY2NjcgMTggMTAgMThaTTE2LjE0NjIgMTUuMDkyMkMxNi43NDc0IDE0LjM3MzEgMTcuMjA2NyAxMy41NzkyIDE3LjUyNCAxMi43MTA1QzE3Ljg0MTMgMTEuODQxNyAxOCAxMC45MzgyIDE4IDEwQzE4IDcuNzY2NjcgMTcuMjI1IDUuODc1IDE1LjY3NSA0LjMyNUMxNC4xMjUgMi43NzUgMTIuMjMzMyAyIDEwIDJDOS4wNTk1IDIgOC4xNTM4MyAyLjE1NzA4IDcuMjgzIDIuNDcxMjVDNi40MTIzMyAyLjc4NTI1IDUuNjIwNTggMy4yNDYwOCA0LjkwNzc1IDMuODUzNzVMMTYuMTQ2MiAxNS4wOTIyWiIgZmlsbD0id2hpdGUiLz48cGF0aCBkPSJNMTAuMDAxNyAxOS41QzguNjg3NzUgMTkuNSA3LjQ1MjY3IDE5LjI1MDcgNi4yOTY1IDE4Ljc1MkM1LjE0MDMzIDE4LjI1MzMgNC4xMzQ2NyAxNy41NzY2IDMuMjc5NSAxNi43MjE4QzIuNDI0MzMgMTUuODY2OSAxLjc0NzI1IDE0Ljg2MTcgMS4yNDgyNSAxMy43MDZDMC43NDk0MTcgMTIuNTUwMyAwLjUgMTEuMzE1NiAwLjUgMTAuMDAxN0MwLjUgOC42ODc3NSAwLjc0OTMzMyA3LjQ1MjY3IDEuMjQ4IDYuMjk2NUMxLjc0NjY3IDUuMTQwMzMgMi40MjM0MiA0LjEzNDY3IDMuMjc4MjUgMy4yNzk1QzQuMTMzMDggMi40MjQzMyA1LjEzODMzIDEuNzQ3MjUgNi4yOTQgMS4yNDgyNUM3LjQ0OTY3IDAuNzQ5NDE3IDguNjg0NDIgMC41IDkuOTk4MjUgMC41QzExLjMxMjMgMC41IDEyLjU0NzMgMC43NDkzMzMgMTMuNzAzNSAxLjI0OEMxNC44NTk3IDEuNzQ2NjcgMTUuODY1MyAyLjQyMzQyIDE2LjcyMDUgMy4yNzgyNUMxNy41NzU3IDQuMTMzMDggMTguMjUyOCA1LjEzODMzIDE4Ljc1MTggNi4yOTRDMTkuMjUwNiA3LjQ0OTY3IDE5LjUgOC42ODQ0MiAxOS41IDkuOTk4MjVDMTkuNSAxMS4zMTIzIDE5LjI1MDcgMTIuNTQ3MyAxOC43NTIgMTMuNzAzNUMxOC4yNTMzIDE0Ljg1OTcgMTcuNTc2NiAxNS44NjUzIDE2LjcyMTggMTYuNzIwNUMxNS44NjY5IDE3LjU3NTcgMTQuODYxNyAxOC4yNTI4IDEzLjcwNiAxOC43NTE4QzEyLjU1MDMgMTkuMjUwNiAxMS4zMTU2IDE5LjUgMTAuMDAxNyAxOS41Wk0xMCAxOEMxMC45MzgyIDE4IDExLjg0MTcgMTcuODQxMyAxMi43MTA1IDE3LjUyNEMxMy41NzkyIDE3LjIwNjcgMTQuMzczMSAxNi43NDc0IDE1LjA5MjIgMTYuMTQ2MkwzLjg1Mzc1IDQuOTA3NzVDMy4yNTg5MiA1LjYyNjkyIDIuODAxMjUgNi40MjA4MyAyLjQ4MDc1IDcuMjg5NUMyLjE2MDI1IDguMTU4MzMgMiA5LjA2MTgzIDIgMTBDMiAxMi4yMzMzIDIuNzc1IDE0LjEyNSA0LjMyNSAxNS42NzVDNS44NzUgMTcuMjI1IDcuNzY2NjcgMTggMTAgMThaTTE2LjE0NjIgMTUuMDkyMkMxNi43NDc0IDE0LjM3MzEgMTcuMjA2NyAxMy41NzkyIDE3LjUyNCAxMi43MTA1QzE3Ljg0MTMgMTEuODQxNyAxOCAxMC45MzgyIDE4IDEwQzE4IDcuNzY2NjcgMTcuMjI1IDUuODc1IDE1LjY3NSA0LjMyNUMxNC4xMjUgMi43NzUgMTIuMjMzMyAyIDEwIDJDOS4wNTk1IDIgOC4xNTM4MyAyLjE1NzA4IDcuMjgzIDIuNDcxMjVDNi40MTIzMyAyLjc4NTI1IDUuNjIwNTggMy4yNDYwOCA0LjkwNzc1IDMuODUzNzVMMTYuMTQ2MiAxNS4wOTIyWiIgZmlsbD0iI2IyYjJiMiIvPjwvc3ZnPg==");
}

.shop_info .detail .block_btn a {
	display: block;
	width: 44px;
	height: 44px;
}
.shop_info .detail .block_btn {}
.shop_info .data {
	display: flex;
    align-items: center;
	justify-content: space-between;
	margin-bottom: 10px;
}
.shop_info .data .location {
	display: flex;
	gap: 10px;
    align-items: center;
	font-size: 12px;
}
.shop_info .data .location span {
    padding: 8px;
    border-radius: 4px;
    outline: 1px rgba(255, 131, 154, 0.50) solid;
    color: #FF839A;
    font-weight: 700;
    line-height: 12px;
}
.shop_info .data .update {
    color: #BEBEBE;
    font-size: 12px;
}
.shop_info .feature {
	display: flex;
    flex-wrap: wrap;
	gap:5px;
}
.shop_info .feature li {
	position: relative;
	min-width: 144px;
	width: 144px;
    background-color: var(--blue);
    border-radius: 8px;
	height: 44px;
}
.shop_info .feature li span {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
	font-size: 12px;
    text-align: center;
    color: #FFF;
    font-weight: 700;
	width: 90%;
	line-height: 150%;
}

.free_space_area {
	padding: 10px 30px 30px;
}
.free_space_area .sd-ttl {
	font-size: 18px;
	font-weight: 700;
	color: var(--brown);
	background-image: url("/img/front/icon/icon40.svg");
	background-position: left 5px;
	background-repeat: no-repeat;
	padding-left: 30px;
	padding-bottom: 15px;
	border-bottom: solid 1px #EBEEF0;
	margin-bottom: 20px;
}

.free_space_area .item {}
.free_space_area .item .sub_ttl {
	font-size: 16px;
	font-weight: 700;
	color: var(--pink);
	margin-bottom: 8px;
	margin-top: 24px;
}

/* 最初のサブタイトルだけ、上の余白を消す */
.free_space_area .item .sub_ttl:first-of-type {
    margin-top: 0;
}

.free_space_area .item .txt {
	line-height: 150%;
	margin-bottom: 10px;
}

/* もっと見る表示 */
.more-toggle {
  display: none;
}

/* 共通スタイル */
.more-wrapper,
.more-wrapper-non {
  overflow: hidden;
  transition: max-height 0.5s ease;
  mask-image: linear-gradient(to bottom, black 70%, transparent 100%);
  -webkit-mask-image: linear-gradient(to bottom, black 70%, transparent 100%);
}
.free_space_area .toggle-label {
	/*margin-bottom: 10px;*/
}

/* 初期半分表示 */
.more-wrapper {
  max-height: 400px;
}

/* 初期非表示 */
/*
.free_space_area:has(.more-wrapper-non) {
		background-color: var(--white);
}*/

.more-wrapper-non {
  max-height: 30px;
}
/*
.more-wrapper-non.item + .toggle-label {
	background-color: var(--white);
}*/

/* 全部表示 */
.more-wrapper-all {
  max-height: 10000px;
}
.more-toggle:checked ~ .more-wrapper,
.more-toggle:checked ~ .more-wrapper-non {
  /* max-height: 10000px; */
  mask-image: none;
  -webkit-mask-image: none;
}

.free_space_area * + .space_comment {
	margin-top: 40px;
}

.toggle-label {
  display: block;
	text-align: center;
  cursor: pointer;
  color: #62C8CC;
	margin-top: 20px;
  transition: background-image 0.5s ease;
}
.toggle-label::before {
  content: "もっと見る";
}
.toggle-label::after {
	content: '';
	display: inline-block;
	vertical-align: middle;
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0iIzYyQzhDQyIgdmlld0JveD0iMCAtOTYwIDk2MCA5NjAiPjxwYXRoIGQ9Ik01MTcuODUtNDgwIDM1NC45Mi02NDIuOTJxLTguMy04LjMxLTguNS0yMC44OS0uMTktMTIuNTcgOC41LTIxLjI3IDguNy04LjY5IDIxLjA4LTguNjkgMTIuMzggMCAyMS4wOCA4LjY5bDE3OS43NyAxNzkuNzdxNS42MSA1LjYyIDcuOTIgMTEuODUgMi4zMSA2LjIzIDIuMzEgMTMuNDZ0LTIuMzEgMTMuNDZxLTIuMzEgNi4yMy03LjkyIDExLjg1TDM5Ny4wOC0yNzQuOTJxLTguMzEgOC4zLTIwLjg5IDguNS0xMi41Ny4xOS0yMS4yNy04LjUtOC42OS04LjctOC42OS0yMS4wOCAwLTEyLjM4IDguNjktMjEuMDhMNTE3Ljg1LTQ4MFoiLz48L3N2Zz4=");
	background-repeat: no-repeat;
	background-position: center;
	transform: rotate(90deg);
	transform-origin: center;
	width: 20px;
	height: 20px;
}
.more-toggle:checked ~ .toggle-label::before {
  content: "閉じる";
}
.more-toggle:checked ~ .toggle-label::after {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0iIzYyQzhDQyIgdmlld0JveD0iMCAtOTYwIDk2MCA5NjAiPjxwYXRoIGQ9Ik01MTcuODUtNDgwIDM1NC45Mi02NDIuOTJxLTguMy04LjMxLTguNS0yMC44OS0uMTktMTIuNTcgOC41LTIxLjI3IDguNy04LjY5IDIxLjA4LTguNjkgMTIuMzggMCAyMS4wOCA4LjY5bDE3OS43NyAxNzkuNzdxNS42MSA1LjYyIDcuOTIgMTEuODUgMi4zMSA2LjIzIDIuMzEgMTMuNDZ0LTIuMzEgMTMuNDZxLTIuMzEgNi4yMy03LjkyIDExLjg1TDM5Ny4wOC0yNzQuOTJxLTguMzEgOC4zLTIwLjg5IDguNS0xMi41Ny4xOS0yMS4yNy04LjUtOC42OS04LjctOC42OS0yMS4wOCAwLTEyLjM4IDguNjktMjEuMDhMNTE3Ljg1LTQ4MFoiLz48L3N2Zz4=");
	transform: rotate(-90deg);
}

.sd #qanda #qa.shopcont_area {
	padding: 0 30px;
}

.sd #qa.shopcont_area {
	padding: 30px;
}

.shopcont_area {
	padding: 0 30px;
	margin: 0 0 30px;
}
.shopcont_area .ttl {
	position: relative;
	font-size: 16px;
	font-weight: 700;
	margin-bottom: 10px;
}
.shopcont_area .ttl:before {
	content: '';
	width: 4px;
    height: 19px;
	border-radius: 10px;
	display: inline-block;
	vertical-align: text-bottom;
	background-color: var(--pink);
	margin-right: 5px;
}
.shopcont_area .box {
	border: solid 1px #EBEEF0;
	padding: 30px;
	border-radius: 8px;
}
.shopcont_area .more_btn {
	margin-top: 20px;
}


/* 求人情報 切替タブ */
.shopcont_area .tabs {
  margin: 0 auto;
}
.shopcont_area .tab-buttons {
    overflow-x: auto;
    display: flex;
    gap: 30px;
    border-top: 1px solid #EBEEF0;
    border-bottom: 1px solid #EBEEF0;
    background-color: rgba(98, 200, 204, 0.05);
    margin: 0 -30px;
    padding: 0 30px;
    justify-content: space-evenly;
}
.shopcont_area .tab-button {
    line-height: 56px;
	cursor: pointer;
	text-align: center;
	transition: background 0.2s;
	white-space: nowrap; /* 改行させない */
	width: auto;          /* ← これがポイント */
	flex: 0 0 auto;       /* ← 幅を固定：内容サイズに合わせる */
}
.shopcont_area .tab-button:hover,
.shopcont_area .tab-button.active {
  font-weight: bold;
	color: var(--blue);
  border-bottom: 4px solid var(--blue);
}
.shopcont_area .tab-content {
    display: none;
    padding: 30px 30px 5px;
    margin: 0 -30px;
	background-color: #FFF;
	background-size: 3px auto;
}
.shopcont_area #tab1.tab-content {}
.shopcont_area #tab2.tab-content {background-image: url("/img/front/bg_jobtab2.png");}
.shopcont_area #tab3.tab-content {background-image: url("/img/front/bg_jobtab3.png");}
.shopcont_area #tab4.tab-content {background-image: url("/img/front/bg_jobtab4.png");}
.shopcont_area #tab5.tab-content {background-image: url("/img/front/bg_jobtab5.png");}
.shopcont_area #tab6.tab-content {background-image: url("/img/front/bg_jobtab6.png");}
.shopcont_area .tab-content.active {
  display: block;
}

/* ===== 求人情報 ===== */
#job_info.shopcont_area .box { padding: 30px 30px 0;}
#job_info.shopcont_area .payment .list_table {
	border: solid 1px var(--blue);
	background-color: #FFF;
	padding: 20px 20px 0;
	border-radius: 8px;
	margin-bottom: 20px;
}
#job_info.shopcont_area .payment .list_table table .section-header th {
	border-bottom: none;
	text-align: center;
	background-color: var(--blue);
	padding: 10px;
}
#job_info.shopcont_area .payment .list_table table .alt-row {
    background-color: #FFF;
}
#job_info.shopcont_area .payment .price-table th,
#job_info.shopcont_area .payment .price-table td {
	border-bottom: dotted 1px var(--blue);
}

#job_info.shopcont_area .payment .price-table tr.no-border td {
	border-bottom: none;
}

#job_info.shopcont_area .payment .price-table tr.no-border td.note {
	text-align: left;
}

#job_info .tab-content .salary_blk {
	border: solid 1px rgba(255, 131, 154, 0.15);
	background-color: rgba(255, 131, 154, 0.15);
	padding: 20px;
	border-radius: 8px;
	margin-bottom: 20px;
}
#job_info .tab-content .salary_blk .caption {
	background-color: var(--pink);
	border-radius: 8px;
	line-height: 36px;
	text-align: center;
	color: #FFF;
	font-weight: 700;
	margin-bottom: 15px;
}
#job_info .tab-content .salary_blk .summary {
	font-weight: 700;
	font-size: 16px;
	text-align: center;
	color: var(--pink);
}
#job_info .tab-content .salary_blk .summary span {
	font-weight: normal;
	color: var(--brown);
	padding-right: 5px;
}
#job_info .tab-content .salary_blk .note {
	margin-top: 15px;
}
#job_info .tab-content .salary_blk .note p {}
#job_info .tab-content .salary_blk.special {
	border: solid 1px #FFCA75;
	background-color: rgba(255, 202, 117, 0.05);
}
#job_info .tab-content .salary_blk.special .caption {
	background-color: #FFCA75;
	position: relative;
}
#job_info .tab-content .salary_blk.special .caption span {
	background-color: #FFF;
	color: #FFCA75;
	font-size: 12px;
	line-height: 20px;
	padding: 0 10px;
	border-radius: 50px;
	position: absolute;
	top: 8px;
	right: 10px;
}
#job_info .tab-content .salary_blk.exclusive_benefits {
	border: solid 1px var(--blue);
	background-color: #FFF;
}
#job_info .tab-content .salary_blk.exclusive_benefits .caption {
	background-color: var(--blue);
}
#job_info .tab-content .salary_blk.exclusive_benefits .summary { color: var(--blue);}
#job_info .tab-content .info-table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	border-radius: 8px;
	display: inline-table;
	overflow: hidden;
	border: 1px solid #EBEEF0;
	margin-bottom: 30px;
}

#job_info .tab-content .salary_blk.workaway { background-color: #FFF;}
#job_info .tab-content .salary_blk.workaway .summary {
    display: flex;
    gap: 3px;
    justify-content: center;
    align-items: center;
}
#job_info .tab-content .salary_blk.workaway .summary .day {
	background-color: var(--bg_pink);
	border-radius: 50px;
	font-size: 12px;
	padding: 0 10px;
}
#job_info .tab-content .salary_blk.workaway .summary .bold {
	font-weight: 700;
}
#job_info .tab-content .salary_blk.workaway .summary .assurance {
	border: solid 1px #FF839A;
	color: #FF839A;
	border-radius: 50px;
	font-size: 12px;
	padding: 0 10px;
}


#job_info .tab-content .info-table th,
#job_info .tab-content .info-table td {
	  border-bottom: 1px solid #EBEEF0;
	  border-right: 1px solid #EBEEF0;
	padding: 15px;
	text-align: left;
}
#job_info .tab-content .info-table th {
  width: 30%;
  background-color: #F9F9F9;
}
#job_info .tab-content .info-table td {
	background-color: #FFF;
}

#job_info .tab-content .info-table td:last-child,
#job_info .tab-content .info-table th:last-child {
  border-right: none;
}
#job_info .tab-content .info-table tr:last-child th,
#job_info .tab-content .info-table tr:last-child td {
  border-bottom: none;
}
#job_info .tab-content .info-table td .conditions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
	gap: 8px;
}
#job_info .tab-content .info-table td .conditions li {
	border-radius: 50px;
	padding: 6px 15px;
	text-align: center;
	color: #FFF;
}
#job_info .tab-content .info-table td .conditions li:after {
	display: inline-block;
	margin-left: 5px;
}
#job_info .tab-content .info-table td .conditions li.on  {background-color: #62C8CC;}
#job_info .tab-content .info-table td .conditions li.off {background-color: #BBBBBB;}
#job_info .tab-content .info-table td .conditions li.on:after {content: '〇';}
#job_info .tab-content .info-table td .conditions li.off:after {content: '✖';}
#job_info .tab-content p.pink {
	color: var(--pink);
}
#job_info .tab-content .head_image {
	background-color: var(--gray);
	width: 100%;
	height: 100%;
	aspect-ratio: 1020/437;
	border-radius: 8px;
	overflow: hidden;
	margin-bottom: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
}
#job_info .tab-content img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: 100%;
  object-fit: contain;
}
#job_info .tab-content .welcome_point {
	margin-bottom: 20px;
}
#job_info .tab-content .welcome_point .speech-bubble {
    background-color: var(--pink);
    position: relative;
    text-align: center;
	color: #FFF;
	font-size: 16px;
	font-weight: 700;
    line-height: 55px;
    border-radius: 8px;
    margin-bottom: 20px;
}
#job_info .tab-content .welcome_point .speech-bubble:before {
    margin: 0 0 0 -7px;
    content: "";
    position: absolute;
    left: 50%;
    bottom: -8px;
    background: var(--pink);
    width: 18px;
    height: 18px;
    transform: rotate(45deg);
    z-index: 1;
}
#job_info .tab-content .welcome_point .speech-bubble:before {}
#job_info .tab-content .welcome_point ul {
	display: flex;
    flex-wrap: wrap;
	gap: 8px;
}
#job_info .tab-content .welcome_point ul li {
    background-color: #fff9fa;
    border: solid 1px var(--pink);
    padding: 0 12px;
	line-height: 33px;
    border-radius: 8px;
	font-size: 14px;
	font-weight: 700;
	color: var(--pink);
}
#job_info .tab-content .highlight {
	border: solid 1px #EBEEF0;
	border-radius: 8px;
	padding: 20px;
	margin-bottom: 30px;
	background-color: #FFF;
}
#job_info .tab-content .highlight h4 {
	background: #F9F9F9;
	line-height: 35px;
    border-radius: 8px;
	text-align: center;
	font-weight: 700;
	font-size: 14px;
	margin-bottom: 10px;
}
#job_info .tab-content .highlight ul {
	display: grid;
	gap: 15px;
	grid-template-columns: 1fr 1fr;
}
#job_info .tab-content .highlight ul li {
	position: relative;
	padding-left: 17px;
	font-size: 14px;
}
#job_info .tab-content .highlight ul li:before {
	content: '';
	position: absolute;
	left: 0;
	top: 4px;
	width: 13px;
	height: 13px;
	border: 3px solid var(--pink);
	border-radius: 50%;
	margin-right: 8px;
}
#job_info .tab-content .highlight ul.flex {
	display: flex;
    flex-wrap: wrap;
}
#job_info .tab-content .motivation {
	margin-bottom: 30px;
}
#job_info .tab-content .section_heading_ttl {
	text-align: center;
	font-weight: 700;
	font-size: 16px;
	margin-bottom: 20px;
}
#job_info .tab-content .motivation .interview {
    display: flex;
    gap: 15px;
    width: 80%;
    align-items: center;
    margin: 0 auto 8px;
}
#job_info .tab-content .motivation .interview .icon {}
#job_info .tab-content .motivation .interview .speech-bubble {
	background-color: var(--blue);
	color: #FFF;
	padding: 12px 16px;
	border-radius: 8px;
	position: relative;
	width: 100%;
}
#job_info .tab-content .motivation .interview .speech-bubble:before {
	content: '';
	position: absolute;
	left: -15px;
	top: 50%;
	transform: translateY(-50%);
	border: 8px solid transparent;
	border-right-color: var(--blue);
}
#job_info .tab-content .motivation.novice .interview .speech-bubble:before {
	display: none;
}
#job_info .tab-content .cast_prof {
	padding-bottom: 30px;
}
#job_info .tab-content .cast_prof .cast_list {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}
#job_info .tab-content .cast_prof .cast_list .blk {
	border: solid 1px rgba(255, 131, 154, 0.15);
	border-radius: 8px;
	background-color: #FFF;
	padding: 15px;
  width: calc((100% / 2) - 8px);
	overflow: hidden;
}
#job_info .tab-content .cast_prof .cast_list .blk .info {
	display: flex;
    align-items: center;
    gap: 15px;
	padding-bottom: 10px;
}
#job_info .tab-content .cast_prof .cast_list .blk .info .photo {
    width: 60px;
	min-width: 60px;
	height: 60px;
	min-height: 60px;
    text-align: center;
    padding: 3px;
    background: linear-gradient(135deg, #FEEFDB 0%, #FFC7BA 39%, #CDABE9 54%, #ACDAF3 74%, #ADEFED 100%);
    border-radius: 180px;
    box-sizing: border-box;
    overflow: hidden;
}
#job_info .tab-content .cast_prof .cast_list .blk .info .photo img {
    width: 100%;
    height: auto;
    aspect-ratio: 1;
    border-radius: 180px;
    box-sizing: border-box;
    display: block;
    overflow: hidden;
    object-fit: cover;
}
#job_info .tab-content .cast_prof .cast_list .blk .info .prof p {
	font-size: 13px;
    margin-bottom: 3px;
}
#job_info .tab-content .cast_prof .cast_list .blk .data {
    clear: both;
    display: flex;
    column-gap: 10px;
    justify-content: space-between;
	margin-top: 10px;
}
#job_info .tab-content .cast_prof .cast_list .blk .data p {
    width: 100%;
    font-size: 12px;
    background-color: rgba(255,131,154,0.15);
    border-radius: 90px;
    display: flex;
    line-height: 22px;
    align-items: center;
    justify-content: space-between;
    padding-right: 13px;
    font-weight: bold;
}
#job_info .tab-content .cast_prof .cast_list .blk .data p span {
    padding: 5px 10px;
    background: var(--pink);
    color: #FFF;
    font-weight: normal;
    border-radius: 90px;
}
#job_info .tab-content .cast_prof .cast_list .blk .info .prof .age span {
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20fill%3D%22%23FF839A%22%20viewBox%3D%220%20-960%20960%20960%22%3E%3Cpath%20d%3D%22M160-120q-33%200-56.5-23.5T80-200v-440q0-33%2023.5-56.5T160-720h160v-80q0-33%2023.5-56.5T400-880h160q33%200%2056.5%2023.5T640-800v80h160q33%200%2056.5%2023.5T880-640v440q0%2033-23.5%2056.5T800-120H160Zm0-80h640v-440H160v440Zm240-520h160v-80H400v80ZM160-200v-440%20440Z%22%2F%3E%3C%2Fsvg%3E');
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 16px auto;
    margin-left: 15px;
    padding-left: 20px;
}
#job_info .tab-content .cast_prof .cast_list .blk .info .prof .child {
	font-size: 12px;
	color: var(--pink);
}
#job_info .tab-content .cast_prof .cast_list .blk .info .prof .child span { font-weight: 700;}
#job_info .tab-content .cast_prof .cast_list .blk .schedule {
	border-top: dotted 1px #FF839A;
	padding-top: 15px;
	padding-bottom: 10px;
}
#job_info .tab-content .cast_prof .cast_list .blk .schedule dt {
	position: relative;
	padding-left: 20px;
	font-size: 14px;
	font-weight: 700;
	color: var(--pink);
}
#job_info .tab-content .cast_prof .cast_list .blk .schedule dt:before {
	content: '';
	position: absolute;
	left: 0;
	top: 3px;
	width: 13px;
	height: 13px;
	border: 3px solid var(--pink);
	border-radius: 50%;
	margin-right: 8px;
}
#job_info .tab-content .cast_prof .cast_list .blk .schedule dd {
	padding-left: 20px;
	margin-bottom: 10px;
}
#job_info .tab-content .cast_prof .cast_list .blk .pay {
	border: solid 1px rgba(255, 131, 154, 0.15);
	border-radius: 8px;
	padding: 10px;
	text-align: center;
	color: var(--pink);
	font-weight: 700;
	font-size: 16px;
}
#job_info .tab-content .cast_prof .cast_list .blk .pay span {
	font-weight: 18px;
	padding-left: 5px;
}
#job_info .tab-content .cast_prof .cast_list .blk .items {
	width: 100%;
}
#job_info .tab-content .cast_prof .cast_list .blk .items th,
#job_info .tab-content .cast_prof .cast_list .blk .items td {
    border-top: solid 1px rgba(255,131,154,0.2);
    padding: 15px 5px;
    font-size: 14px;
	font-weight: 700;
}
#job_info .tab-content .cast_prof .cast_list .blk .items th {
	text-align: left;
}
#job_info .tab-content .cast_prof .cast_list .blk .items td {
	text-align: right;
	color: var(--pink);
}

#job_info .tab-content .welcome_point .body-type {
    display: flex;
    justify-content: center;
    gap: 40px;
}
#job_info .tab-content .welcome_point .body-type .type {
	background-image: url("/img/front/body_glamour.svg");
	background-position: center top;
	background-repeat: no-repeat;
	padding-top: 50px;
  min-width: 45px;
}
#job_info .tab-content .welcome_point .body-type .type.curvy {
	background-image: url("/img/front/body_curvy.svg");
}
#job_info .tab-content .welcome_point .body-type .type.plump {
	background-image: url("/img/front/body_plump.svg");
}
#job_info .tab-content .welcome_point .body-type .type.chubby {
	background-image: url("/img/front/body_chubby.svg");
}
#job_info .tab-content .welcome_point .body-type .type p {
	font-size: 11px;
	font-weight: 700;
	text-align: center;
}
#job_info .tab-content .first_timer_rate {
	background-color: var(--pink);
	color: #FFF;
	padding: 20px;
	border-radius: 8px;
	margin-bottom: 20px;
}
#job_info .tab-content .first_timer_rate p {
	text-align: center;
	font-size: 16px;
	font-weight: 700;
}
#job_info .tab-content .first_timer_rate p span {
	font-size: 32px;
	display: inline-block;
	vertical-align: sub;
	padding: 0 5px;
}
#job_info .tab-content .bonus {
    background-color: #FFCA75;
    color: #FFF;
    padding: 20px;
    border-radius: 8px;
    margin-bottom: 20px;
}
#job_info .tab-content .bonus p {
	position: relative;
    text-align: center;
    font-size: 16px;
    font-weight: 700;
}
#job_info .tab-content .bonus p span {
	position: absolute;
	left: 0;
	top: -8px;
	background-color: #FFF;
	color: #FFCA75;
	font-size: 14px;
	width: 40px;
	height: 40px;
	line-height: 40px;
	border-radius: 50px;
}
#job_info .tab-content .staff_accommodation {
	padding-top: 20px;
}
#job_info .tab-content .staff_accommodation #accommod {}
#job_info .tab-content .staff_accommodation #accommod .recoSlide {
    position: relative;
    overflow: hidden;
    padding-bottom: 30px;
}
#job_info .tab-content .staff_accommodation #accommod .recoSlide .swiper-pagination-bullet {
	border: solid 1px var(--pink);
}
#job_info .tab-content .staff_accommodation #accommod .recoSlide .swiper-pagination-bullet-active {
    background: var(--pink);
}
.shopcont_area .price-table {
  width: 100%;
	margin-bottom: 20px;
  border-collapse: collapse;
}
.shopcont_area .price-table th,
.shopcont_area .price-table td {
  padding: 12px;
  text-align: left;
}
.shopcont_area .price-table td:not(.note):last-child,
.shopcont_area .price-table th:last-child {
	text-align: right;
}
.shopcont_area .price-table td:not(.note):last-child {
	text-align: right;
	font-size: 16px;
	font-weight: 700;
	font-variant-numeric: tabular-nums;
}
.shopcont_area .section-header {
	background-color: var(--pink);
	color: white;
	font-weight: bold;
}
.shopcont_area .section-header th:first-child {
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
}
.shopcont_area .section-header th:last-child {
  border-top-right-radius: 8px;
  border-bottom-right-radius: 8px;
}
.shopcont_area .price-table .alt-row {
  background-color: #F9F9F9;
}
.shopcont_area #everyone_pay,
.shopcont_area #qanda,
.shopcont_area #cast_interview {
	padding: 0;
}
.shopcont_area #everyone_pay .pay_list,
.shopcont_area #qanda .qa_list,
.shopcont_area #cast_interview .int_list {
	margin: auto !important;
}
.shopcont_area #everyone_pay .blk .cast {
    margin-bottom: 0;
}

#feature .feature_data {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.feature_data .age-wrapper {
  width: calc((100% / 2) - 5px);
	padding: 20px;
	border: 1px solid #eee;
	border-radius: 8px;
}

@media screen and (max-width: 1199px) {
	.sd .feature_data .age-wrapper {
		width: 100%;
	}
}

.feature_data .age-title {
	background-color: #F9F9F9;
	display: block;
	width: 100%;
	padding: 12px;
	text-align: center;
	border-radius: 8px;
	font-weight: 700;
	margin-bottom: 32px;
}
.feature_data .age-chart {
  display: flex;
	align-items: center;
  justify-content: space-around;
  position: relative;
}

.feature_data .age-chart::before {
	content: "";
	position: absolute;
	top: 15px;
	transform: translate(-50%, -50%);
	left: 50%;
	width: 80%;
	height: 2px;
	background: #eee;
	z-index: 0;
}

.feature_data .age-item {
	position: relative;
	text-align: center;
	width: 100%;
	height: 70px;
	z-index: 1;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.feature_data .dot {
	width: 12px;
	height: 12px;
	background: #e7e7e7;
	border-radius: 50%;
	margin: 9px auto 0;
}
.feature_data .active .dot {
	width: 32px;
	height: 32px;
	background: url("/img/front/icon/icon41.svg") no-repeat center;
	margin: 0 auto;
	filter: drop-shadow(0 2px 6px rgba(255, 92, 131, 0.5));
}
.feature_data .label {
  font-size: 11px;
  margin-top: 4px;
}

.envi_list {
	margin-bottom: 15px;
}
.envi_list .ctgr {
    position: relative;
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 5px;
	color: var(--pink);
}
.envi_list ul {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}
.envi_list ul li {
    position: relative;
    width: 164px;
    background-color: #F9F9F9;
    border-radius: 8px;
    height: 44px;
}
.envi_list ul li span {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    font-size: 14px;
    text-align: center;
    font-weight: 700;
    width: 90%;
    line-height: 150%;
}

.shopcont_area .note {
	border-top: dotted 1px #FF839A;
	padding-top: 20px;
}
.shopcont_area .note p {
	line-height: 150%;
}
/*
.question-wrapper {
	border-bottom: solid 1px #EBEEF0;
	padding-bottom: 20px;
	margin-bottom: 20px;
}*/
.question-wrapper + .question-wrapper {
	border-top: solid 1px #EBEEF0;
	padding-top: 20px;
	margin-top: 20px;
}
@media screen and (min-width: 849px) {
	.style-dx .question-wrapper.only-one {
		margin-bottom: 0;
	}
}

.question-wrapper dl {}
.question-wrapper dl dt,
.question-wrapper dl dd {
	min-height: 50px;
	display: flex;
  align-items: center;
}
.question-wrapper dl dt {
	font-weight: 700;
	margin-bottom: 5px;
}
.question-wrapper dl dd {}
.question-wrapper dl dt:before,
.question-wrapper dl dd:before {
	content: 'Q';
	color: #FFF;
	font-size: 16px;
	font-weight: 700;
	text-align: center;
	display: inline-block;
	vertical-align: middle;
	background-color: var(--blue);
	border-radius: 8px;
	min-width: 30px;
	height: 60px;
	line-height: 60px;
	margin-right: 10px;
}
.question-wrapper dl dd:before {
	content: 'A';
	background-color: var(--pink);
}
.shopcont_area.detail .question-wrapper:last-child {
	border-bottom: none;
	padding-bottom: 0;
}
.gallery_list {
	display: flex;
	gap: 15px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch; /* iOS対応 */
  padding-bottom: 20px;
}
.gallery_list li {
	width: 300px;
	flex: 0 0 auto;
}
.gallery_list li .photo {
	border-radius: 8px;
	overflow: hidden;
	margin-bottom: 10px;
	width: 100%;
	aspect-ratio: 1020/437;
	background: var(--gray);
	display: flex;
	align-items: center; /* 縦中央 */
	justify-content: center; /* 横中央 */
	overflow: hidden;
}
.gallery_list li .photo img {
	width: 100%;
	height: 100%;
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	display: block;
}

.gallery_list li .title {
	margin-bottom: 5px;
	font-size: 16px;
    font-weight: 700;
    line-height: 150%;
    color: var(--pink);
}
.gallery_list li .description {
    line-height: 150%;
}

#waiting_area .free_blk {
	max-width: 680px;
	margin: 0 auto 15px;
}
#waiting_area .free_blk:last-child {
	margin-bottom: 0;
}
#waiting_area .free_blk .title {
    color: #FFF;
    font-size: 14px;
    font-weight: 700;
	text-align: center;
    background-color: var(--pink);
    border-radius: 8px;
    height: 35px;
	line-height: 35px;
	margin-bottom: 5px;
}
#waiting_area .gallery_list + .free_blk {
	margin-top: 15px;
}
#waiting_area .free_blk .txt {
	line-height: 150%;
}
#waiting_area .note {
	max-width: 680px;
	margin: 0 auto 30px;
}

#waiting_area .note:last-child {
	margin-bottom: 0;
}

.info_blk dt {
    font-size: 14px;
    font-weight: 700;
    color: var(--pink);
    margin-bottom: 8px;
}
.info_blk dd {
	line-height: 150%;
	border-bottom: dotted 1px #EBEEF0;
	padding-bottom: 10px;
  margin-bottom: 15px;
	word-break: break-all;
}
.info_blk dd:last-child {
	border-bottom: none;
	padding-bottom: 0;
	margin-bottom: 0;
}
.info_blk dd a {
	color: #2878C2;
	cursor: pointer;
}
.info_blk dd a:hover {
	text-decoration: underline;
}
.scroll_btn { display: none;}
.contact_area {
	scroll-margin-top: 70px;
	background-color: #F9F9F9;
	text-align: center;
	padding: 50px 60px;
}
.contact_area .rainbow_btn {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
	margin-bottom: 20px;
}
.contact_area .rainbow_btn li {
    width: calc((100% / 2) - 8px);
	background: linear-gradient(90deg, #ADEFED 0%, #ACDAF3 39%, #CDABE9 54%, #FFC7BA 74%, #FEEFDB 100%);
    border-radius: 50px;
    padding: 3px;
}
.contact_area .rainbow_btn li {}

.contact_area .rainbow_btn li a {
    display: block;
    width: 100%;
    padding: 13px;
    line-height: 25px;
    border-radius: 50px;
    background-color: #fff;
    font-weight: bold;
    text-align: center;
}

.promotion.foot {
	margin: 30px;
    border-radius: 8px;
}
.promotion.foot a {
	margin: 0;
	box-shadow: 0 0 0 rgba(0, 0, 0, 0.1);
}

.affiliated .job_list .job_blk .detail h3 {
	color: var(--blue);
}

.app_form_area {}
.app_form_area .ttl {
	background-color: var(--brown);
	color: var(--white);
	text-align: center;
	font-weight: 700;
	font-size: 16px;
	line-height: 60px;
}
.app_form_area .box {
    border: solid 1px #EBEEF0;
	margin: 30px;
    padding: 30px;
    margin-bottom: 30px;
    border-radius: 8px;
}

.app_form_area .login_btn:not(:has(a)) {
	margin: 0 auto 30px;
	border-radius: 10px;
	cursor: pointer;
	border: solid 1px var(--pink);
	font-weight: bold;
	padding: 20px 0;
	width: 100%;
	text-align: center;
	background-color: rgba(255, 131, 154, 0.05);
	color: var(--pink);
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0iI0ZGODM5QSIgdmlld0JveD0iMCAtOTYwIDk2MCA5NjAiPjxwYXRoIGQ9Ik01MTcuODUtNDgwIDM1NC45Mi02NDIuOTJxLTguMy04LjMxLTguNS0yMC44OS0uMTktMTIuNTcgOC41LTIxLjI3IDguNy04LjY5IDIxLjA4LTguNjkgMTIuMzggMCAyMS4wOCA4LjY5bDE3OS43NyAxNzkuNzdxNS42MSA1LjYyIDcuOTIgMTEuODUgMi4zMSA2LjIzIDIuMzEgMTMuNDZ0LTIuMzEgMTMuNDZxLTIuMzEgNi4yMy03LjkyIDExLjg1TDM5Ny4wOC0yNzQuOTJxLTguMzEgOC4zLTIwLjg5IDguNS0xMi41Ny4xOS0yMS4yNy04LjUtOC42OS04LjctOC42OS0yMS4wOCAwLTEyLjM4IDguNjktMjEuMDhMNTE3Ljg1LTQ4MFoiLz48L3N2Zz4=");
	background-position: right 15px center;
	background-repeat: no-repeat;
}

/* みんなの給与明細 */
.shopcont_area.detail #everyone_pay .pay_list {
	display: block;
}
.shopcont_area.detail #everyone_pay .blk {
	width: auto;
	margin-bottom: 20px;
}
.shopcont_area.detail #everyone_pay .blk .cast {
	padding: 30px;
}
.shop_page #everyone_pay .blk .cast .cmnt {
	border-top: solid 1px rgba(255, 131, 154, 0.2);
	padding-top: 10px;
	padding-bottom: 10px;
}
.shop_page #everyone_pay .breakdown {
	background-color: #FFF;
	padding: 15px;
    margin-bottom: -1px;
    position: relative;
}
.shop_page #everyone_pay .breakdown table {
	width: 100%;
}
.shop_page #everyone_pay .breakdown table .alt-row {
    background-color: #F9F9F9;
}
.shop_page #everyone_pay .breakdown table th,
.shop_page #everyone_pay .breakdown table td {
	padding: 10px;
}
.shop_page #everyone_pay .breakdown table th {
	font-weight: 400;
	text-align: left;
}
.shop_page #everyone_pay .breakdown table td {
	font-size: 12px;
	text-align: right;
}
.shop_page #everyone_pay .breakdown table td span {
	font-size: 14px;
	color: var(--brown);
	font-weight: 700;
    margin-left: 10px;
    width: 70px;
    display: inline-block;
}

.shop_page .shopcont_area.detail #everyone_pay .blk .cast .prof *:not(.name-title) {
	max-width: 30em;
}

/* エリアトップ＞キャストインタビュー・明細の打ち消し */
@media screen and (max-width: 1200px) and (min-width: 850px) {
  #cast_interview .int_list .blk .cast .prof *:not(.name-title),
  #everyone_pay .blk .cast .prof *:not(.name-title) {
    max-width: 16em;
  }
}

@media screen and (max-width: 550px) {
	.shop_page .shopcont_area.detail #everyone_pay .blk .cast .prof *:not(.name-title) {
    max-width: 16em;
  }
}


/* キャストインタビュー */
.shopcont_area.detail #cast_interview {
	margin: 0;
}
/*
.shop_page #cast_interview .int_list .blk .cast .prof *:not(.name-title),
.shop_page #everyone_pay .blk .cast .prof *:not(.name-title) {
	max-width: 16em;
}

.shop_page #cast_interview .int_list .blk .cast .prof *:not(.name-title),
.shop_page #everyone_pay .blk .cast .prof *:not(.name-title)
.shop_page .shopcont_area.detail * .blk .cast .prof *:not(.name-title) {
	max-width: 30em;
}

@media screen and (max-width: 550px) {
  .shop_page #cast_interview .int_list .blk .cast .prof *:not(.name-title),
  .shop_page #everyone_pay .blk .cast .prof *:not(.name-title) {
    max-width: 16em;
  }
}*/

#interview.detail {}
#interview.detail .photo {
	width: 100px;
	overflow: hidden;
	text-align: center;
    margin: 0 auto 15px;
    max-width: 136px;
    padding: 4px;
    background: linear-gradient(135deg, #FEEFDB 0%, #FFC7BA 39%, #CDABE9 54%, #ACDAF3 74%, #ADEFED 100%);
    border-radius: 180px;
    box-sizing: border-box;
    overflow: hidden;
}
#interview.detail .photo img {
    width: 100%;
    height: auto;
    aspect-ratio: 1;
    border-radius: 180px;
    box-sizing: border-box;
    display: block;
    overflow: hidden;
    object-fit: cover;
}
#interview.detail .name {
	font-size: 13px;
	margin-bottom: 15px;
	text-align: center;
}
#interview.detail .age {
	font-size: 13px;
	margin-bottom: 15px;
	text-align: center;
}
#interview.detail .name span {
	font-size: 16px;
	padding-right: 10px;
}
#interview.detail .data {
	display: flex;
    border-top: solid 1px #EBEEF0;
}
#interview.detail .data dl {
	width: 50%;
    padding: 15px;
}
#interview.detail .data dl dt,
#interview.detail .data dl dd {
	text-align: center;
}
#interview.detail .data dl dt {
    margin: 0 auto 10px auto;
    padding: 5px 10px;
    background: var(--blue);
	color: #FFF;
    border-radius: 90px;
    position: relative;
}
#interview.detail .data dl dd {
	font-size: 14px;
	font-weight: bold;
}
#interview.detail .note {
	padding: 20px 0;
	border-top: solid 1px #EBEEF0;
	border-bottom: solid 1px #EBEEF0;
	margin-bottom: 15px;
}

#interview.detail .qa {
	border-bottom: dotted 1px #EBEEF0;
	margin-bottom: 20px;
}

#interview.detail .qa:last-child {
	margin-bottom: 0px;
	border-bottom: none;
}

#interview.detail .qa dt,
#interview.detail .qa dd {
	display: flex;
  align-items: baseline;
	text-align: left;
	margin-bottom: 10px;
	line-height: 150%;
}
#interview.detail .qa dt {
	margin-top: 20px;
}
#interview.detail .qa dd {
	padding-bottom: 20px;
}
#interview.detail .qa dd:last-child {
	padding-bottom: 0;
	border-bottom: none;
}

#interview.detail .qa dt span,
#interview.detail .qa dd span {
	background: var(--blue);
    border-radius: 90px;
    color: #FFF;
    font-weight: bold;
    text-align: center;
    margin-right: 15px;
    line-height: 30px;
    min-width: 30px;
    width: 30px;
    height: 30px;
    font-size: 15px;
}
#interview.detail .qa dd span {
    background: var(--pink);
}

/* お悩みQ＆A*/
#qanda.shopcont_area.list .section_area,
#qanda.shopcont_area.detail .section_area {
  margin: 0 0 30px;
	padding: 0;
}
#qanda.shopcont_area.list .qa_list,
#qanda.shopcont_area.detail .qa_list {
    margin: 0px 0px;
}
#qanda.detail .box {
    padding: 30px 30px 0;
}
#qanda.detail .status p {
    display: block;
    text-align: center;
    width: 100%;
    background: #FF839A;
    border-radius: 90px;
    position: relative;
    color: #FFF;
    font-weight: bold;
    line-height: 35px;
    border: none;
    margin: 0 0 20px;
}
#qanda.detail .section_area .qa_list .block {
    background-color: #FFF;
    border: none;
    padding: 0px;
    border-radius: 0;
    overflow: hidden;
	width: 100%;
}
.shop_page #qa.detail {
  background: #fff;
	border-radius: 8px;
}
#qanda.detail .qa_list .block .ctgr {
	display: flex;
}
#qanda.detail .qa_list .block .ctgr li {
	background-color: var(--bg_pink);
	color: var(--pink);
}
#qanda.detail .qa_list .block .ctgr li.dating {
    padding: 0;
    margin-right: 0px;
    margin-left: auto;
	background-color: transparent;
	color: var(--brown);
}
#qanda.detail .qa_list .block .ctgr li.dating:before { display: none}
#qanda.detail .answer dt {
    color: #8A6C73;
    font-size: 14px;
    font-weight: bold;
    padding-bottom: 10px;
}
#qanda.detail .answer dd {
    border: solid 1px #EBEEF0;
    border-radius: 8px;
	font-size: 14px;
    width: 100%;
    padding: 20px;
	min-height: 122px;
}
#qanda.detail .answer dd p {
	line-height: 150%;
}
#qanda.detail .other_answer {
    padding-bottom: 20px;
}
.important_notice {
    border: none;
    border-radius: 0;
    margin: 0;
}

/* DX店舗layout */
.dx #header {
	position: absolute;
}
main.style-dx {
	background-position: center 0;
    background-repeat: repeat;
    background-size: 100%;
	padding: 0;
}
.style-dx .side_bar { display: none;}
.style-dx .dxshop_top {
	position: relative;
}
.style-dx #Topslide {
    margin-bottom: 0px;
}
.style-dx .swiper-pagination {
	display: none;
}
.style-dx .shop_swiper {
    padding-bottom: 0px;
}
.dx_shop_nav {
	position: sticky;
	top: 0;
	z-index: 700;
	background-color: rgba(255, 255, 255, 0.8);
	display: flex;
	justify-content: space-between;
    align-items: center;
	padding: 0 20px;
}

.dx_shop_nav .info .shop_name {
	color: #FF839A;
	font-size: 13px;
	font-weight: bold;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

@media screen and (max-width: 1200px) {
	.dx_shop_nav .info {
		width: 50%;
	}
}
.dx_shop_nav .info {}
.dx_shop_nav .info .shop_name {
	color: #FF839A;
	font-size: 13px;
	font-weight: bold;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
.dx_shop_nav .info .area {
	font-size: 12px;
    color: #BEBEBE;
}
.dx_shop_nav .shop_menu {
}
.dx_shop_nav .shop_menu ul {
	display: flex;
    align-items: center;
}
.dx_shop_nav .shop_menu ul li {
	position: relative;
}
.dx_shop_nav .shop_menu ul li:after {
	content: '';
	background-color: #C9DCEA;
	display: block;
	width: 1px;
	height: 15px;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translate(-50%, -50%); /* Safari用 */
	transform: translate(-50%, -50%);
}
.dx_shop_nav .shop_menu ul li:last-child:after { display: none;}

.dx_shop_nav .shop_menu ul li a {
	position: relative;
	display: block;
	color: #8A6C73;
	font-size: 12px;
	font-weight: bold;
	padding: 25px 20px;
}

.dx_shop_nav .shop_menu ul li a.inactive {
	color: #BEBEBE;
}

.dx_shop_nav .shop_menu ul li a.active {
	color: #FF839A;
}

.dx_shop_nav .shop_menu ul li a:hover:before {
	content: '';
	border-bottom: 3px solid #FF839A;
	/*background-color: #C9DCEA;*/
	display: block;
	width: 100%;
	height: 3px;
	position: absolute;
	bottom: 0;
	left: 0;
}

.style-dx #contents {
	width: 100%;
	max-width: 100%;
	background-color:transparent;
	border-radius: 0;
}
.style-dx .shop_contact_menu {
	position: fixed;
	bottom: 0;
	right: 0;
	z-index: 800;
	padding: 5px;
}
.style-dx .shop_contact_menu ul {}
.style-dx .shop_contact_menu ul li {
	width: 190px;
	margin-bottom: 5px;
}
.style-dx .shop_contact_menu ul li a {
	display: block;
	position: relative;
	background-color: var(--blue);
	border: solid 1px #FFF;
	border-radius: 8px;
	height: 40px;
	color: #FFF;
	font-size: 13px;
	font-weight: bold;
	text-align: center;
	line-height: 40px;
	transition: 0.1s;
}
.style-dx .shop_contact_menu ul li.keep a {
	border: 4px solid rgb(201, 220, 234);
	text-align: center;
	padding: 0px 10px;
	box-sizing: border-box;
	background: var(--white);
	display: flex;
	justify-content: center;
	align-items: center;
}
.style-dx .shop_contact_menu ul li.keep a span {
	background-color: transparent;
	color: var(--brown);
	transition: 0.3s;
	background-image: url("/img/front/icon/icon20.svg");
	background-position: left center;
	background-repeat: no-repeat;
	padding-left: 20px;
}
.style-dx .shop_contact_menu ul li.keep a.unkeep-btn:hover {
	border: 4px solid rgb(201, 220, 234);
}
.style-dx .shop_contact_menu ul li.keep a.keep-btn:hover span {
	color: var(--yellow);
}
.style-dx .shop_contact_menu ul li.keep a.keep-btn:hover,
.style-dx .shop_contact_menu ul li.keep a.unkeep-btn {
  border: solid 4px var(--yellow);
}
.style-dx .shop_contact_menu ul li.tel a {background-color: #FF839A;}
.style-dx .shop_contact_menu ul li.chat a {background-color: #FFCA75;}
.style-dx .shop_contact_menu ul li.line a {background-color: #62C8CC;}
.style-dx .shop_contact_menu ul li.web a {background-color: #8A6C73;}
.style-dx .shop_contact_menu ul li a:hover {
	opacity: 0.8;
}
.style-dx #contents .cont_block {
	position: relative;
}
.style-dx #contents .movie_block {
	z-index: 800;
}
.style-dx #contents .cont_block::before {
  content: "";
  position: absolute;
	top: 0;
	left: 0;
  width: 100%;
  height: 100%;
  background: white;
  -webkit-mask-image: linear-gradient(to bottom,
    black 0%,
    black 0px,
    transparent 0px,
    transparent 300px,
    black 300px,
    black 0%
  );
  mask-image: linear-gradient(to bottom,
    black 0%,
    black 0px,
    transparent 0px,
    transparent 300px,
    black 300px,
    black 0%
  );
  mask-mode: alpha;
  mask-repeat: no-repeat;
  pointer-events: none;
}
.style-dx #contents .cont_block.ptn400::before {
  -webkit-mask-image: linear-gradient(to bottom,
    black 0%,
    black 0px,
    transparent 0px,
    transparent 500px,
    black 500px,
    black 0%
  );

  mask-image: linear-gradient(to bottom,
    black 0%,
    black 0px,
    transparent 0px,
    transparent 400px,
    black 400px,
    black 0%
  );

}

.style-dx #contents .cont_block.top {
	background-color: #FFF;
}
.style-dx #contents .cont_block.top,
.style-dx .cont_block .wrapper .item {
	z-index: auto; /* ブロック機能時要素が上に来ないようにする */
}
.style-dx #contents .cont_block.top:before {
	display: none;
}
.style-dx #contents .cont_block.top .wrapper {
	padding: 20px 0;
}
.style-dx #contents .top .wrapper {
	padding: 30px 0;
}
.style-dx #contents .wrapper {
	margin: auto;
	max-width: 800px;
	position: relative;
	padding: 40px 0 0;
}
.style-dx.top #contents .wrapper {
	padding: 50px 0 5px;
}
.style-dx .shop_info {
    padding: 0 0 20px;
}
.style-dx .shop_info .feature li {
    min-width: 156px;
}
@media screen and (min-width: 850px) {
	.style-dx .promotion {
		border-radius: 10px;
	}
}
.style-dx .free_space_area {
  padding: 0;
	position: relative;
}
@media screen and (max-width: 849px) {
	.style-dx .free_space_area {
		background: inherit;
	}
}

.style-dx .free_space_area .ttl {
	font-size: 20px;
	text-align: center;
	background-image: none;
	padding-left: 0px;
	padding-bottom: 15px;
	border-bottom: none;
	margin-bottom: 30px;
}
.style-dx .free_space_area.accordion .ttl {
	margin-bottom: 40px;
	padding-bottom: 0;
}
.sd .circle-animation-overlay {
	display: none !important;
}
/* アニメーションが被らないように追加 */
.circle-animation-overlay + .ttl {
  position: relative;
  z-index: 2;
}

/* 白丸アニメーションのオーバーレイコンテナ */
.circle-animation-overlay {
  /* h3 の位置に重ねるために絶対配置 */
  position: absolute;

  /* h3 の位置に合わせるための調整 */
  top: 0px; /* .free_space_area の上端 */
  left: 0; /* .free_space_area の左端 */
  width: 100%;

  /* h3のテキストとその上下パディング領域を覆うように調整 */
  height: 132px; /* h3の行の高さとpadding(15px*2)を考慮した仮の高さ */

  /* h3 とオーバーレイの描画順を制御 */
  pointer-events: none; /* オーバーレイがクリックを邪魔しないように設定 */
	overflow: hidden;
}

@media screen and (max-width: 849px) {
  .circle-animation-overlay {
    /* top: 40px; */
  }
}

/* 白丸に共通の基本スタイル */
.circle {
  position: absolute;
  top: 50%;
  left: 50%;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 1);
  transform: translate(-50%, -50%) scale(1);
  animation: expand-fade 3.5s infinite linear;
}

/* 個別の白丸の初期サイズ設定 */
.circle-1 {
  width: 110px;
  height: 110px;
}

.circle-2 {
  width: 160px;
  height: 160px;
  animation-delay: 1s;
  background-color: rgba(255, 255, 255, 0.5);
}

.circle-3 {
  width: 210px;
  height: 210px;
  animation-delay: 2s;
  background-color: rgba(255, 255, 255, 0.25);
}

/* アニメーションの定義 */
@keyframes expand-fade {
  /* 0% (出現開始): 完全に透明な状態から滑らかに立ち上げ */
  0% {
    opacity: 0;
  }

  /* 15% (濃さのピーク) */
  15% {
    opacity: 1;
  }

  /* 85% (消滅完了): 完全に消える */
  85% {
    opacity: 0;
  }

  /* 99.9% (待ち時間解消): ループ終了直前まで透明度0を維持 */
  99.9% {
    opacity: 0;
  }

  100% {
    opacity: 0;
  }
}

.style-dx .shopcont_area {
    padding: 30px;
    margin-bottom: 0;
	background-color: #FFF;
    border-radius: 8px;
}
.style-dx.top .shopcont_area {
    padding: 0px;
    margin-bottom: 30px;
	background-color: transparent;
}
.style-dx .shopcont_area .ttl {
  font-size: 19px;
	text-align: center;
  margin-bottom: 40px;
	z-index: 100;/* 1205 DX店舗>circleより上になるよう修正 */
}
.style-dx .shopcont_area .ttl:before {display: none;}
.style-dx .shopcont_area .box {
	padding: 40px;
	border-radius: 8px;
	background-color: #FFF;
}
.style-dx.top .shopcont_area .box {
	border: none;
	padding: 40px;
	border-radius: 8px;
	background-color: #FFF;
	position: relative;
	z-index: 100;
}

.style-dx.top .shopcont_area .box .empty {
	margin-top: -20px;
}

/*.style-dx .free_space_area:has(.more-wrapper-non) {
	background-color: #FFF;
	padding: 40px 40px 10px;
	border-radius: 20px;
}*/
/* .style-dx .free_space_area:not(:has(.more-wrapper-non)) .item*/
.style-dx .free_space_area .item {
	background-color: #FFF;
	padding: 40px;
	border-radius: 20px;
}

@media screen and (max-width: 849px) {
	/*.style-dx .free_space_area:has(.more-wrapper-non) {
		background-color: #FFF;
		padding: 0 0 10px;
		border-radius: 0;
	}*/
	.style-dx .free_space_area .item {
		border-radius: 0 !important;
	}
}

.shopcont_area .shop-pr {
	margin-bottom: 30px;
}

.style-dx .shopcont_area .shop-pr {
	max-width: 660px;
	margin-inline: auto;
}

.style-dx .shopcont_area .tab-buttons {
    justify-content: center;
    gap: 10px;
    border-top: none;
    border-bottom: none;
    background-color: transparent;
    padding: 0;
		margin: 0 0 30px;
}
.style-dx .shopcont_area .tab-button {
    line-height: 56px;
	font-weight: bold;
	padding: 0 15px;
    border-radius: 90px;
	border: solid 1px #FF839A;
	background-color: #FFF;
    color: #FF839A;
}
.style-dx .shopcont_area .tab-button:hover,
.style-dx .shopcont_area .tab-button.active {
	color: #FFF;
	background-color: #FF839A;
}
.style-dx .shopcont_area .tab-content {
	border-radius: 16px;
    padding: 40px 40px 20px;
    margin: 0 0px;
}
.style-dx .contact_area {
	padding: 10px 0 40px;
	border-top: solid 1px #EBEEF0;
	border-bottom: solid 1px #EBEEF0;
}
.style-dx .prom_area {
	background-color: rgba(255, 255, 255, 0);
	padding: 40px;
}
.style-dx .prom_area .promotion {
	max-width: 800px;
	margin: 0 auto;
}
.style-dx .app_form_area {
  background-color: var(--brown);
	padding-bottom: 40px;
}
.style-dx .app_form_area .ttl {
    line-height: 100px;
}
.style-dx .app_form_area .box {
    border: none;
	background-color: #FFF;
    margin: auto;
    padding: 40px;
    margin-bottom: 30px;
    border-radius: 16px;
	max-width: 800px;
}
.style-dx #recommend_job {
	background-color: #fff3f5;
}
.style-dx #recommend_job .job_list {
    justify-content: center;
}
.style-dx #shop_info {
	background-color: transparent;
	padding: 0px;
}
.style-dx #shop_info .box {
	border: none;
}
.style-dx .cont_top {
	margin: 0px auto 40px;
}
.style-dx .cont_top .area_ttl {
	margin: 0 auto;
}
.style-dx .cont_top .back-btn {}
.style-dx .cont_top .back-btn {
	background-color: #FFF;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	position: absolute;
	left: 0;
}
.style-dx .cont_top .back-btn img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%); /* Safari用 */
	transform: translate(-50%, -50%);
	width: 10px;
	height: auto;
}
.style-dx .area_ttl:before, .style-dx .area_ttl:after {
	display: none;
}
.style-dx .shopcont_area.detail .page_navi_top {
	margin-top: 10px;
}
.style-dx .pagination_box {
	margin:  0 auto 30px;
}
.style-dx #user_info {
	margin-top: 0 !important;
	padding: 20px 30px 30px;
}
.style-dx #recommend_job .job_list.center {
    justify-content: center;
}
.style-dx #sub_menu .other {
	max-width: 680px;
	margin: 0 auto;
}
.style-dx #search_area .pref-accordion .city-list {
	max-width: 680px;
	margin: auto;
}
.style-dx #contents .gallery .wrapper {
	z-index: auto;
}
.style-dx #qa.detail {
    margin: 0;
}
.style-dx .other_answer {
  padding-bottom: 0;
}

.style-dx .shopcont_area.detail #everyone_pay {
	padding: 0;
	margin-top: 20px;
}
.style-dx .important_notice {
	padding: 30px 100px;
}
.style-dx .shopcont_area.form {
	padding: 60px;
	margin-bottom: 50px;
}

/* 電話クリックでモーダル */
.popup-overlay {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  z-index: 9990;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
}
.popup-overlay.active {
  opacity: 1;
  visibility: visible;
}
.side_bar.shop-tel.active {
  opacity: 1;
  display: block;
}

@media screen and (min-width: 850px) {
  .side_bar.active .close-popup {
		display: block;
		position: absolute;
		top: 0px;
		right: -44px;
		z-index: 10;
		cursor: pointer;
	}
}

.side_bar .close-popup img {
  filter: var(--img_white);
}

.side_bar.shop-tel {
  z-index: 9999;
  transition: transform 0.2s ease, opacity 0.2s ease;
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 100%;
  max-width: 600px;
  transform: translate(-50%, -50%);
  opacity: 0;
}

@media screen and (max-width: 849px) {
	.side_bar.shop-tel .box {
		overflow-y: auto;
	}
}

.side_bar.shop-tel .box {
  border-radius: 10px;
  width: 100%;
  overflow: hidden;
  margin-bottom: 0;
}

.tel-contact__head--content {
  text-align: center;
  padding-bottom: 30px;
  position: relative;
}

.tel-contact__head--content::before {
  position: absolute;
  content: "";
  width: 100vw;
  height: 1px;
  background: var(--gray);
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
}

.tel-contact__head {
  font-size: 18px;
  font-weight: 700;
}

.convey-text {
  text-align: center;
  margin-top: 35px;
}

.side_bar.shop-tel .detail {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
}

.side_bar.shop-tel .detail {
  justify-content: center;
}

.side_bar.shop-tel .box .detail .name .area {
  text-align: center;
  margin-top: 50px;
  font-size: 12px;
  color: #bebebe;
  font-weight: 400;
}

.side_bar.shop-tel .box .detail .name .tel-shop {
  font-size: 18px;
  margin-top: 5px;
  display: inline-block;
  color: var(--pink);
}

.side_bar.shop-tel .tel-box .convey-text {
  text-align: center;
  margin-top: 30px;
}

.side_bar.shop-tel .box .age-verification__content {
  margin-top: 17px;
  text-align: center;
  background-color: rgba(255, 131, 154, 0.05);
  border: solid 1px rgba(255, 131, 154, 0.2);
  border-radius: 8px;
  padding-top: 30px;
  padding-bottom: 40px;
  max-width: 518px;
  margin-inline: auto;
}

.side_bar.shop-tel .box .checkbox_flex input[type="checkbox"] + p::before {
  margin-right: 10px;
  width: 1.25rem;
  height: 1.25rem;
}

.side_bar.shop-tel .box .cautionary-notice {
  font-size: 12px;
}

.side_bar.shop-tel .box .submit {
  margin-top: 60px;
  text-align: center;
}

.side_bar.shop-tel .box .submit .submit-btn {
	display: flex;
	justify-content: center;
	align-items: center;
  cursor: not-allowed;
	pointer-events: none;
  box-sizing: border-box;
  width: 100%;
  max-width: 540px;
  height: 60px;
  background: var(--gray);
  border-radius: 8px;
  position: relative;
  transition: 0.1s;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  border: none;
  margin: 10px auto 0;
	box-shadow: none;
	align-items: center;
}

.side_bar.shop-tel .box .submit .submit-btn.active {
  background: var(--pink);
  cursor: pointer;
	pointer-events: initial;
}

/* 余白調整 */
.style-dx .other_answer .answer_list .answer_box .action_btn._goodanswer,
.sd .other_answer .answer_list .answer_box .action_btn._goodanswer {
  padding-top: 0;
}
/* ボーダー非表示 */
.style-dx .other_answer .answer_list .answer_box .action_btn._goodanswer::before,
.sd .other_answer .answer_list .answer_box .action_btn._goodanswer::before {
  display: none;
}

/* 画面幅850px以上のとき */
@media screen and (min-width: 850px) {
  .style-dx .pc-keep-btn__hidden {
    display: none;
  }

  .shop_info .btn.keep.pc-keep-btn__show {
    max-width: 100%;
    width: 100%;
    height: 50px;
    box-shadow: 0px 0px 0px 0px;
    margin-bottom: 5px;
  }

  .shop_info .btn.keep.pc-keep-btn__show a {
    display: block;
    border: 4px solid rgb(201, 220, 234);
    text-align: center;
    padding: 0px 10px;
    font-size: 14px;
    border-radius: 8px;
    font-weight: bold;
    box-sizing: border-box;
    line-height: 43px;
    height: 100%;
    background: var(--white);
  }

  .shop_info .btn.keep.pc-keep-btn__show a span {
    background-image: url(../img/icon/icon20.svg);
    background-position: left center;
    background-repeat: no-repeat;
    padding-left: 20px;
  }
}


/* 画面幅849px以下のとき */
@media screen and (max-width: 849px) {
	.cont_top .back-btn { display: none;}
	.cont_top.sp_header .back-btn { display: block;}

	.style-dx .layout-wrap {
		margin-top: 0;
	}

	/* 店舗TOP */
	body.sd #contents.__bg_blue {
		background-color: var(--bg_blue);
	}
	#sticky-header {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		height: 70px;
		background: #fff;
		box-shadow: 0 1px 2px rgba(0,0,0,0.1);
		display: flex;
		align-items: center;
		justify-content: center;
		transition: transform 0.1s ease;
		z-index: 6000;
	}
	#sticky-header.shopTop {transform: translateY(-100%);}
	#sticky-header.show {
		transform: translateY(0);
	}
	#sticky-header h2 {
		text-align: center;
		font-size: 18px;
		font-weight: 700;
		color: var(--brown);
		display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 1;
		width: 70%;
		overflow: hidden;
	}
	#sticky-header .btn {
		width: 44px;
		height: 44px;
		border-radius: 18px;
		position: absolute;
		right: 0;
		top: 0;
		bottom: 0;
		margin: auto;
		cursor: pointer;
	}
	#sticky-header .btn .toggle {
		position: absolute;
		top: 0;
		bottom: 0;
		right: 0;
		left: 0;
		margin: auto;
		width: 24px;
		height: 24px;
		background-image: url("/img/front/icon_hamburger_menu.svg");
		background-repeat: no-repeat;
		background-position: center;
	}
	.side_bar {
		transform: translateY(100%);
		transition: transform 0.2s;
		position: fixed;
        top: 20%;
        bottom: 0;
        left: 0;
        width: 100%;
        border-radius: 16px 16px 0 0;
        max-width: 100%;
		z-index: 9950;
	}
	.popup-overlay {
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: rgba(0, 0, 0, 0.8);
		z-index: 9990;
		opacity: 0;
		visibility: hidden;
		transition: opacity 0.2s ease, visibility 0.2s ease;
	}
	.popup-overlay.active {
		opacity: 1;
		visibility: visible;
	}
	#popup-search.block-window .popup-detail {
		top: auto;
	}
	#popup-search.block-window .popup-detail .txt span {
		padding-top: 20px;
	}
	#popup-search.block-window .popup-detail .txt {
		text-align: left;
	}

	.side_bar.shop {
		z-index: 9999;
		transition: transform 0.2s ease, opacity 0.2s ease;
		display: block;
		position: fixed;
		top: inherit;
		left: 0;
		right: 0;
		bottom: 0;
		width: 100%;
		/*max-height: 80vh;*/
		height: fit-content;
		transform: translateY(100%);
		opacity: 0;
		border-radius: 12px 12px 0 0;
	}
	.side_bar.shop.active {
		transform: translateY(0);
		opacity: 1;
	}
	.side_bar .close-popup {
		display: block;
		position: absolute;
		top: -40px;
		right: 5px;
		z-index: 10;
	}
	.side_bar .close-popup img {
		filter: var(--img_white);
	}
	.side_bar.shop .box {
		border-radius: 16px 16px 0 0;
	}
	.side_bar.shop-tel .box {
		border-radius: 16px 16px;
	}
  .side_bar.shop .box,
  .side_bar.shop-tel .box {
		margin-bottom: 0;
		overflow-x: hidden;
		overflow-y: auto !important;
		max-height: 80vh;
	}
  .side_bar.shop-tel .box {
		padding: 17px 15px;
		width: 100%;
  }
  .tel-contact__head--content {
    text-align: center;
    padding-bottom: 17px;
    position: relative;
  }

  .tel-contact__head--content::before {
    position: absolute;
    content: "";
    width: 100vw;
    height: 1px;
    background: var(--gray);
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
  }

  .tel-contact__head {
    font-size: 18px;
    font-weight: 700;
  }

  .convey-text {
    text-align: center;
    margin-top: 17px;
  }

	.side_bar.shop-tel.active {
		max-width: 350px;
	}
  .side_bar.shop .detail,
  .side_bar.shop-tel .detail {
		display: flex;
    align-items: center;
		justify-content: space-between;
		gap: 15px;
	}

  .side_bar.shop-tel .detail {
    justify-content: center;
  }

  .side_bar.shop-tel .box .detail .name .area {
    text-align: center;
    margin-top: 17px;
    font-size: 12px;
    color: #bebebe;
    font-weight: 400;
  }

  .side_bar.shop-tel .box .detail .name .tel-shop {
    font-size: 16px;
    margin-top: 5px;
    display: inline-block;
    color: var(--pink);
  }

  .side_bar.shop-tel .tel-box .convey-text {
    text-align: center;
    margin-top: 30px;
  }

  .side_bar.shop-tel .box .age-verification__content {
    margin-top: 17px;
    text-align: center;
    background-color: rgba(255, 131, 154, 0.05);
    border: solid 1px rgba(255, 131, 154, 0.2);
    border-radius: 8px;
    padding-top: 10px;
    padding-bottom: 10px;
  }

  .side_bar.shop-tel .box .checkbox_flex input[type="checkbox"] + p::before {
    margin-right: 10px;
    width: 1.25rem;
    height: 1.25rem;
  }

  .side_bar.shop-tel .box .submit {
    margin-top: 17px;
  }

  .side_bar.shop-tel .box .submit input {
    cursor: not-allowed;
    box-sizing: border-box;
    width: 100%;
    height: 60px;
    background: var(--gray);
    border-radius: 8px;
    position: relative;
    transition: 0.1s;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    border: none;
    margin: 10px 0 0;
  }

  .side_bar.shop-tel .box .submit input.active {
    background: var(--pink);
    cursor: pointer;
  }

	.side_bar.shop .box .detail .block_btn {
		border: solid 1px #EBEEF0;
		position: relative;
		border-radius: 18px;
		background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI0ZGODM5QSIgZD0iTTEyLjAwMyAyMWE4Ljc3MyA4Ljc3MyAwIDAgMS0zLjUxLS43MDkgOS4wOTUgOS4wOTUgMCAwIDEtMi44NTktMS45MjIgOS4wODEgOS4wODEgMCAwIDEtMS45MjUtMi44NTdBOC43NTIgOC43NTIgMCAwIDEgMyAxMi4wMDNjMC0xLjI0NC4yMzYtMi40MTQuNzA4LTMuNTFhOS4wOTYgOS4wOTYgMCAwIDEgMS45MjMtMi44NTkgOS4wODEgOS4wODEgMCAwIDEgMi44NTctMS45MjVBOC43NTIgOC43NTIgMCAwIDEgMTEuOTk3IDNjMS4yNDQgMCAyLjQxNC4yMzYgMy41MS43MDhhOS4wOTYgOS4wOTYgMCAwIDEgMi44NTkgMS45MjMgOS4wODIgOS4wODIgMCAwIDEgMS45MjUgMi44NTdBOC43NTIgOC43NTIgMCAwIDEgMjEgMTEuOTk3YTguNzcyIDguNzcyIDAgMCAxLS43MDkgMy41MSA5LjA5NSA5LjA5NSAwIDAgMS0xLjkyMiAyLjg1OSA5LjA4MiA5LjA4MiAwIDAgMS0yLjg1NyAxLjkyNSA4Ljc1MiA4Ljc1MiAwIDAgMS0zLjUwOS43MDlaTTEyIDIwYTcuOTUgNy45NSAwIDAgMCA1LjI4NS0yLjAwOEw2LjAwOCA2LjcxNUE4LjMwOCA4LjMwOCAwIDAgMCA0LjUyNCA5LjE4IDcuNzU5IDcuNzU5IDAgMCAwIDQgMTJjMCAyLjIzMy43NzUgNC4xMjUgMi4zMjUgNS42NzVDNy44NzUgMTkuMjI1IDkuNzY3IDIwIDEyIDIwWm01Ljk5Mi0yLjcxNWE3Ljk1IDcuOTUgMCAwIDAgMS40OTMtMi40NjRBNy44ODYgNy44ODYgMCAwIDAgMjAgMTJjMC0yLjIzMy0uNzc1LTQuMTI1LTIuMzI1LTUuNjc1QzE2LjEyNSA0Ljc3NSAxNC4yMzMgNCAxMiA0Yy0uOTgxIDAtMS45MjYuMTY4LTIuODM0LjUwNWE3LjM5NyA3LjM5NyAwIDAgMC0yLjQ1IDEuNTAzbDExLjI3NiAxMS4yNzdaIi8+PC9zdmc+");
		background-position: center;
		background-repeat: no-repeat;
		height: 44px;
	}

	.side_bar.shop .box .detail .block_btn.on {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTAuMDAxNyAxOS41QzguNjg3NzUgMTkuNSA3LjQ1MjY3IDE5LjI1MDcgNi4yOTY1IDE4Ljc1MkM1LjE0MDMzIDE4LjI1MzMgNC4xMzQ2NyAxNy41NzY2IDMuMjc5NSAxNi43MjE4QzIuNDI0MzMgMTUuODY2OSAxLjc0NzI1IDE0Ljg2MTcgMS4yNDgyNSAxMy43MDZDMC43NDk0MTcgMTIuNTUwMyAwLjUgMTEuMzE1NiAwLjUgMTAuMDAxN0MwLjUgOC42ODc3NSAwLjc0OTMzMyA3LjQ1MjY3IDEuMjQ4IDYuMjk2NUMxLjc0NjY3IDUuMTQwMzMgMi40MjM0MiA0LjEzNDY3IDMuMjc4MjUgMy4yNzk1QzQuMTMzMDggMi40MjQzMyA1LjEzODMzIDEuNzQ3MjUgNi4yOTQgMS4yNDgyNUM3LjQ0OTY3IDAuNzQ5NDE3IDguNjg0NDIgMC41IDkuOTk4MjUgMC41QzExLjMxMjMgMC41IDEyLjU0NzMgMC43NDkzMzMgMTMuNzAzNSAxLjI0OEMxNC44NTk3IDEuNzQ2NjcgMTUuODY1MyAyLjQyMzQyIDE2LjcyMDUgMy4yNzgyNUMxNy41NzU3IDQuMTMzMDggMTguMjUyOCA1LjEzODMzIDE4Ljc1MTggNi4yOTRDMTkuMjUwNiA3LjQ0OTY3IDE5LjUgOC42ODQ0MiAxOS41IDkuOTk4MjVDMTkuNSAxMS4zMTIzIDE5LjI1MDcgMTIuNTQ3MyAxOC43NTIgMTMuNzAzNUMxOC4yNTMzIDE0Ljg1OTcgMTcuNTc2NiAxNS44NjUzIDE2LjcyMTggMTYuNzIwNUMxNS44NjY5IDE3LjU3NTcgMTQuODYxNyAxOC4yNTI4IDEzLjcwNiAxOC43NTE4QzEyLjU1MDMgMTkuMjUwNiAxMS4zMTU2IDE5LjUgMTAuMDAxNyAxOS41Wk0xMCAxOEMxMC45MzgyIDE4IDExLjg0MTcgMTcuODQxMyAxMi43MTA1IDE3LjUyNEMxMy41NzkyIDE3LjIwNjcgMTQuMzczMSAxNi43NDc0IDE1LjA5MjIgMTYuMTQ2MkwzLjg1Mzc1IDQuOTA3NzVDMy4yNTg5MiA1LjYyNjkyIDIuODAxMjUgNi40MjA4MyAyLjQ4MDc1IDcuMjg5NUMyLjE2MDI1IDguMTU4MzMgMiA5LjA2MTgzIDIgMTBDMiAxMi4yMzMzIDIuNzc1IDE0LjEyNSA0LjMyNSAxNS42NzVDNS44NzUgMTcuMjI1IDcuNzY2NjcgMTggMTAgMThaTTE2LjE0NjIgMTUuMDkyMkMxNi43NDc0IDE0LjM3MzEgMTcuMjA2NyAxMy41NzkyIDE3LjUyNCAxMi43MTA1QzE3Ljg0MTMgMTEuODQxNyAxOCAxMC45MzgyIDE4IDEwQzE4IDcuNzY2NjcgMTcuMjI1IDUuODc1IDE1LjY3NSA0LjMyNUMxNC4xMjUgMi43NzUgMTIuMjMzMyAyIDEwIDJDOS4wNTk1IDIgOC4xNTM4MyAyLjE1NzA4IDcuMjgzIDIuNDcxMjVDNi40MTIzMyAyLjc4NTI1IDUuNjIwNTggMy4yNDYwOCA0LjkwNzc1IDMuODUzNzVMMTYuMTQ2MiAxNS4wOTIyWiIgZmlsbD0id2hpdGUiLz48cGF0aCBkPSJNMTAuMDAxNyAxOS41QzguNjg3NzUgMTkuNSA3LjQ1MjY3IDE5LjI1MDcgNi4yOTY1IDE4Ljc1MkM1LjE0MDMzIDE4LjI1MzMgNC4xMzQ2NyAxNy41NzY2IDMuMjc5NSAxNi43MjE4QzIuNDI0MzMgMTUuODY2OSAxLjc0NzI1IDE0Ljg2MTcgMS4yNDgyNSAxMy43MDZDMC43NDk0MTcgMTIuNTUwMyAwLjUgMTEuMzE1NiAwLjUgMTAuMDAxN0MwLjUgOC42ODc3NSAwLjc0OTMzMyA3LjQ1MjY3IDEuMjQ4IDYuMjk2NUMxLjc0NjY3IDUuMTQwMzMgMi40MjM0MiA0LjEzNDY3IDMuMjc4MjUgMy4yNzk1QzQuMTMzMDggMi40MjQzMyA1LjEzODMzIDEuNzQ3MjUgNi4yOTQgMS4yNDgyNUM3LjQ0OTY3IDAuNzQ5NDE3IDguNjg0NDIgMC41IDkuOTk4MjUgMC41QzExLjMxMjMgMC41IDEyLjU0NzMgMC43NDkzMzMgMTMuNzAzNSAxLjI0OEMxNC44NTk3IDEuNzQ2NjcgMTUuODY1MyAyLjQyMzQyIDE2LjcyMDUgMy4yNzgyNUMxNy41NzU3IDQuMTMzMDggMTguMjUyOCA1LjEzODMzIDE4Ljc1MTggNi4yOTRDMTkuMjUwNiA3LjQ0OTY3IDE5LjUgOC42ODQ0MiAxOS41IDkuOTk4MjVDMTkuNSAxMS4zMTIzIDE5LjI1MDcgMTIuNTQ3MyAxOC43NTIgMTMuNzAzNUMxOC4yNTMzIDE0Ljg1OTcgMTcuNTc2NiAxNS44NjUzIDE2LjcyMTggMTYuNzIwNUMxNS44NjY5IDE3LjU3NTcgMTQuODYxNyAxOC4yNTI4IDEzLjcwNiAxOC43NTE4QzEyLjU1MDMgMTkuMjUwNiAxMS4zMTU2IDE5LjUgMTAuMDAxNyAxOS41Wk0xMCAxOEMxMC45MzgyIDE4IDExLjg0MTcgMTcuODQxMyAxMi43MTA1IDE3LjUyNEMxMy41NzkyIDE3LjIwNjcgMTQuMzczMSAxNi43NDc0IDE1LjA5MjIgMTYuMTQ2MkwzLjg1Mzc1IDQuOTA3NzVDMy4yNTg5MiA1LjYyNjkyIDIuODAxMjUgNi40MjA4MyAyLjQ4MDc1IDcuMjg5NUMyLjE2MDI1IDguMTU4MzMgMiA5LjA2MTgzIDIgMTBDMiAxMi4yMzMzIDIuNzc1IDE0LjEyNSA0LjMyNSAxNS42NzVDNS44NzUgMTcuMjI1IDcuNzY2NjcgMTggMTAgMThaTTE2LjE0NjIgMTUuMDkyMkMxNi43NDc0IDE0LjM3MzEgMTcuMjA2NyAxMy41NzkyIDE3LjUyNCAxMi43MTA1QzE3Ljg0MTMgMTEuODQxNyAxOCAxMC45MzgyIDE4IDEwQzE4IDcuNzY2NjcgMTcuMjI1IDUuODc1IDE1LjY3NSA0LjMyNUMxNC4xMjUgMi43NzUgMTIuMjMzMyAyIDEwIDJDOS4wNTk1IDIgOC4xNTM4MyAyLjE1NzA4IDcuMjgzIDIuNDcxMjVDNi40MTIzMyAyLjc4NTI1IDUuNjIwNTggMy4yNDYwOCA0LjkwNzc1IDMuODUzNzVMMTYuMTQ2MiAxNS4wOTIyWiIgZmlsbD0iI2IyYjJiMiIvPjwvc3ZnPg==");
	}

	.side_bar.shop .box .detail .block_btn a {
		display: block;
		width: 44px;
		height: 44px;
	}
	.side_bar.shop .box .detail .name .shop {
		font-size: 20px;
		color: rgba(138, 108, 115, 1);
	}
	.side_bar.shop .box .data {
		display: flex;
		align-items: center;
		justify-content: space-between;
		margin-bottom: 20px;
	}
	.side_bar.shop .box .data .location {
		display: flex;
		gap: 10px;
		align-items: center;
		font-size: 12px;
	}
	.side_bar.shop .box .data .location span {
		padding: 8px;
		border-radius: 4px;
		outline: 1px rgba(255, 131, 154, 0.50) solid;
		color: #FF839A;
		font-weight: 700;
		line-height: 12px;
	}
	.side_bar.shop .box .data .update {
		color: #BEBEBE;
		font-size: 12px;
	}
	.side_bar.shop .shop_contact_menu {
    width: 100%;
		background-color: #FFF;
	}
	.side_bar.shop .box .shop_contact_menu ul {
		display: flex;
		justify-content: center;
		gap: 15px;
		margin: 15px 15px 0;
	}
	.side_bar.shop .shop_contact_menu ul li span { display: none;}
	.side_bar.shop .box .shop_contact_menu ul li a {
		height: 100px;
		background-color: transparent !important;
		color: rgba(138, 108, 115, 1);
		font-size: 12px;
		text-align: center;
	}
	.side_bar.shop .box .shop_contact_menu ul li a:before {
		content: '';
		display: block;
		width: 60px;
		height: 60px;
		background-image: url("/img/front/shop_cont_btn_tel.svg");
		background-position: center;
		background-repeat: no-repeat;
	}
	.side_bar.shop .box .shop_contact_menu ul li.tel a:before {background-image: url("/img/front/shop_cont_btn_tel.svg");}
	.side_bar.shop .box .shop_contact_menu ul li.chat a:before {background-image: url("/img/front/shop_cont_btn_chat.svg");}
	.side_bar.shop .box .shop_contact_menu ul li.line a:before {background-image: url("/img/front/shop_cont_btn_line.svg");}
	.side_bar.shop .box .shop_contact_menu ul li.web a:before {background-image: url("/img/front/shop_cont_btn_web.svg");}
	#Topslide {
		margin-bottom: 0;
		padding-bottom: 0;
	}
	.shop_swiper {
		position: relative;
		overflow: visible;
		padding-bottom: 30px;
	}
	.shop_swiper .swiper-slide {
		border-radius: 8px;
		overflow: hidden;
	}
	.shop_swiper.single-slide {
		padding-bottom: 0px;
	}

	.sd .shop_swiper.single-slide {
		margin-inline: 15px;
	}

	.shop_info {
		padding: 15px;
		background-color: var(--white);
	}
	.shop_info .feature li {
		min-width: 111px;
		width: auto;
	}
	.shop_info .detail .name { width: 80%;}
	.shop_info .btn.keep {
		max-width: 100%;
		width: 100%;
		height: 50px;
		box-shadow: 0px 0px 0px 0px;
		margin-top: 15px;
	}
	.shop_info .btn.keep a {
		display: block;
		border: 4px solid var(--keep_gray);
		text-align: center;
		padding: 0px 10px;
		font-size: 14px;
		border-radius: 8px;
		font-weight: bold;
		box-sizing: border-box;
		line-height: 43px;
		height: 100%;
	}
	.shop_info .btn.keep a:hover,
	.shop_info .btn.keep.comp a {
		border-color: var(--yellow);
	}
	.shop_info .btn.keep.comp a:hover {
		border-color: var(--keep_gray);
	}
	.shop_info .btn.keep a span {
		background-image: url("/img/front/icon/icon20.svg");
		background-position: left center;
		background-repeat: no-repeat;
		padding-left: 20px;
	}
	.promotion {
		background-color: var(--white);
	}
	.promotion + .free_space_area .sd-ttl {/* フリースペースが一番上に来た場合 */
		margin-top: 0;
		padding: 20px 20px 20px 30px;
		background-image: url("/img/front/icon/icon40.svg");
		background-position: left 24px;
		background-repeat: no-repeat;
	}
	.free_space_area {
		padding: 0 15px 20px;
		border-bottom: solid 1px #EBEEF0;
		background-color: var(--white);
	}
	.sd .free_space_area {
		padding-top: 20px;/* 1208 SD top */
	}
	.sd .free_space_area + .free_space_area,
	.sd .shopcont_area + .free_space_area {
		margin-top: 40px;
		/*padding-top: 20px;*/
	}
	.free_space_area .sd-ttl {
		font-size: 16px;
		color: var(--brown);
		background-image: url("/img/front/icon/icon40.svg");
		background-position: left 4px;
		background-repeat: no-repeat;
		padding-left: 30px;
		margin: 0 0 20px;
	}

	.sd #qanda.section_area {
		padding: 0;
	}
	.sd #qanda #qa.shopcont_area {
		padding: 30px 0;
	}

	.sd #qa.shopcont_area {
		padding: 20px 15px 0;
	}
	.shopcont_area {
		padding: 40px 0 0;
		margin: 0;
		background-color: var(--bg_blue);
	}
	.shopcont_area {
		padding: 40px 0 0;
		margin: 0;
		background-color: var(--bg_blue);
	}
	.shopcont_area.app {
		padding: 0;
	}
	.shopcont_area.detail {
		padding: 0 0 20px;
		margin-bottom: 0px;
		background-color: #FFF;
		border-bottom: solid 1px #EBEEF0;
	}
	.shopcont_area.detail .box {
		border: none;
		padding: 0px 15px 0;
	}
	.shopcont_area .ttl {
		margin: 0 15px 10px;
	}
	.shopcont_area .box {
		padding: 20px 15px 30px;
		border-right: none;
		border-left: none;
		background-color: #FFF;
		border-radius: 0px;
		margin-bottom: 0px;
	}
	.shopcont_area #everyone_pay .blk {margin: 0;}
	.shopcont_area .more_btn {}
	.shopcont_area .tab-content {
		padding: 20px 15px 10px;
		margin: 0 -15px;
	}
	.feature_data .age-wrapper {
		width: 100%;
	}
	.shopcont_area #everyone_pay .blk .cast {
		padding: 15px;
	}
	.shopcont_area #cast_interview .int_list .blk {margin: 0;}
	.shopcont_area .more_btn {}
	.envi_list ul li {
		width: calc((100% / 2) - 4px);
	}
	.scroll_btn {
		display: block;
		position: fixed;
		z-index: 999;
		box-shadow: 0 0 15px 1px rgba(104,71,161,.2);
		border-radius: 50px 0 0 50px;
		width: 70px;
		left: auto;
		right: 0;
		transform: translate(0%, 0%);
		bottom: 20px;
		height: 70px;
		background-color: var(--pink);
		overflow: hidden;
	}
	.scroll_btn a {}
	.scroll_btn p {
		background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIyNCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI0ZGRiIgZD0iTTkuNzE3IDIzLjI4MmMtLjQ1OCAwLS44NS0uMTYzLTEuMTc3LS40OWExLjYwNSAxLjYwNSAwIDAgMS0uNDktMS4xNzd2LTEuOTg3YzAtLjM4MS4xMy0uNy4zODctLjk1OS4yNTktLjI1OC41NzgtLjM4Ny45Ni0uMzg3aDMuMjY5di01LjQxN2MtLjkyLjE4LTEuODg0LjE3Ny0yLjg5Ni0uMDA4LTEuMDEyLS4xODQtMS44ODctLjU5LTIuNjI3LTEuMjE2YTEuNjEgMS42MSAwIDAgMS0uMzQ4LS40NiAxLjIyIDEuMjIgMCAwIDEtLjEzLS41NTZWOC44OTFINC44NDljLS4xNyAwLS4zMzUtLjAzMS0uNDk0LS4wOTNBMS4zMjYgMS4zMjYgMCAwIDEgMy45IDguNDlMLjY4NCA1LjI3NWMtLjI4Ni0uMjg2LS40MTItLjYxOS0uMzgtMSAuMDMyLS4zOC4yMDQtLjY5NC41MTYtLjk0Mi44MDUtLjU3IDEuNzI4LS45OTUgMi43NjktMS4yNzRhMTEuODU0IDExLjg1NCAwIDAgMSAzLjA3Ny0uNDE4YzEuMDY4IDAgMi4xMDYuMTUyIDMuMTE1LjQ1NWE5LjkxNiA5LjkxNiAwIDAgMSAyLjg4NSAxLjQyNnYtLjYwOWMwLS42ODMuMjM4LTEuMjYzLjcxMy0xLjczOGEyLjM2NiAyLjM2NiAwIDAgMSAxLjczOS0uNzEzaDExLjUzN2MuNzM2IDAgMS4zNjYuMjYzIDEuODkuNzkuNTI1LjUyOC43ODcgMS4xNjEuNzg3IDEuOTAydjE2Ljc5NWMwIC45NC0uMzIgMS43My0uOTYxIDIuMzcxLS42NDEuNjQyLTEuNDMyLjk2Mi0yLjM3Mi45NjJIOS43MTdabTQuNjE1LTVoOC43MThjLjM0NSAwIC42NDQuMTI4LjkuMzgzLjI1NS4yNTUuMzgzLjU1NS4zODMuOXYuMzg0YzAgLjQ3Mi4xNi44NjguNDc5IDEuMTg3LjMyLjMyLjcxNS40OCAxLjE4Ny40OC40NzIgMCAuODY4LS4xNiAxLjE4OC0uNDguMzItLjMyLjQ3OS0uNzE1LjQ3OS0xLjE4N1YzLjE1NGMwLS4zLS4wOTYtLjU0NS0uMjg4LS43MzdhMSAxIDAgMCAwLS43MzgtLjI4OUgxNS4zNThhMSAxIDAgMCAwLS43MzcuMjg5Ljk5OC45OTggMCAwIDAtLjI4OS43Mzd2MS42NDFsOC45MzMgOC45MzJhLjc2Ny43NjcgMCAwIDEgLjI0Mi40MjMuNzg5Ljc4OSAwIDAgMS0uMDYyLjQ3NS45MjUuOTI1IDAgMCAxLS4yOTcuMzc2LjguOCAwIDAgMS0uNDg2LjE0Ljc4Ljc4IDAgMCAxLS4zMjUtLjA3MS45MTQuOTE0IDAgMCAxLS4yNi0uMTcybC00LjgyOC00LjgyOC0uOTQyLjk0M2E3LjMyNCA3LjMyNCAwIDAgMS0uOTU3LjgxNyA2LjMyIDYuMzIgMCAwIDEtMS4wMTguNTh2NS44NzJaTTUuMDEyIDcuMjI0aDEuOTc0Yy4zODIgMCAuNzAxLjEzLjk2LjM4Ny4yNTcuMjU4LjM4Ni41NzguMzg2Ljk2djEuOTE2Yy41NjkuMzUgMS4wOTguNTg5IDEuNTg3LjcxNS40OS4xMjYuOTY1LjE4OSAxLjQyNi4xODkuNzU5IDAgMS40NDktLjEzIDIuMDctLjM4OC42Mi0uMjU4IDEuMjAyLS42NTkgMS43NDUtMS4yMDJsLjkxLS45MS0yLjkxLTIuOTFhOC45NCA4Ljk0IDAgMCAwLTIuOTk4LTIuMDA1IDkuMjc1IDkuMjc1IDAgMCAwLTMuNDk2LS42NjhjLS44MTIgMC0xLjYwMi4xMDUtMi4zNjkuMzE3YTkuMzM5IDkuMzM5IDAgMCAwLTIuMDYuODI0bDIuNzc1IDIuNzc1Wk0yMi42NjYgMTkuOTVIOS43MTd2MS42NjZoMTMuNDU1YTEuOTYzIDEuOTYzIDAgMCAxLS4zOTYtLjc3IDMuNTY5IDMuNTY5IDAgMCAxLS4xMS0uODk2WiIvPjwvc3ZnPg==");
		background-position: top left 14px;
		background-repeat: no-repeat;
		background-size: 30px;
		text-align: center;
		font-size: 10px;
		font-weight: bold;
		padding-top: 30px;
		color: #FFF;
		margin-top: 15px;
		margin-left: 7px;
	}
	.contact_area {
		padding: 30px 15px;
		background-color: var(--bg_blue);
	}
	.contact_area .rainbow_btn {
		gap: 10px;
	}
	.contact_area .rainbow_btn li {
		width: 100%;
	}
	.promotion.foot {
		background-color: var(--bg_blue);
		margin: 20px 15px;
	}
	.app_form_area .box {
		border: none;
		margin: 0;
		padding: 20px 15px;
		margin-bottom: 20px;
		border-radius: 0;
	}
	.style-dx #job_info.shopcont_area .box {
		padding: 20px 0px 0;
	}
	#job_info.shopcont_area .box {
		padding: 20px 15px 0;
	}
	#job_info .tab-content .welcome_point .speech-bubble {
		font-size: 15px;
        line-height: 40px;
	}
	#job_info .tab-content .highlight ul {
		grid-template-columns: auto;
	}
	#job_info .tab-content .motivation .interview {
		width: 100%;
	}
	#job_info .tab-content .cast_prof {
		padding-bottom: 20px;
	}
	#job_info .tab-content .cast_prof .cast_list .blk {
		width: 100%;
	}
	#recommend_job {
		background-color: var(--bg_blue);
	}
	#recommend_job .ttl {
		position: relative;
		font-size: 16px;
		font-weight: 700;
		color: var(--brown);
		margin: 0 15px 10px;
	}
	#recommend_job .ttl:before {
		content: '';
		position: static;
		width: 4px;
		height: 19px;
		border-radius: 10px;
		display: inline-block;
		vertical-align: text-bottom;
		background-color: var(--pink);
		margin-right: 5px;
	}
	#recommend_job .ttl:after {
		display: none;
	}
	#recommend_job .job_list {
		flex-wrap: wrap;
		padding: 20px 15px;
		background-color: #FFF;
	}
	.shop_page.sd #recommend_job .job_list {
		background-color: var(--bg_blue);
	}

/* みんなの給与明細 */
	.shopcont_area.detail #everyone_pay {
		padding: 0 15px;
	}
	.shopcont_area.detail #everyone_pay .blk .cast {
		padding: 15px;
	}

	/* キャストインタビュー */
	.shopcont_area.detail #cast_interview {
		margin: 0 15px;
	}
	/* お悩みQ＆A*/
	#qanda.list.shopcont_area {
		margin: 0;
		padding: 20px 15px;
		background-color: var(--bg_blue);
		border-top: solid 1px rgba(235, 238, 240, 1);
		border-bottom: none;
	}
	#qanda.shopcont_area.list .section_area {
		margin: 0 -15px 30px;
		padding: 20px 15px 30px;
		background-color: #FFF;
	}
	.shopcont_area.list #qanda { padding: 0 15px;}
	#qanda.shopcont_area.detail {
		padding: 0;
		border-bottom: none;
	}
	#qanda.shopcont_area.detail .box {
		padding: 0px 15px;
	}
	#qanda.detail .other_answer {
		position: relative;
		margin-bottom: 30px;
		border-bottom: solid 1px rgba(235, 238, 240, 1);
	}
	#qanda.detail .other_answer:after {
		content: '';
		width: 100%;
		height: 1px;
		background-color: rgba(235, 238, 240, 1);
		position: absolute;
		left: 0;
		bottom: -30px;
	}
	.important_notice {padding: 20px 0;}

	/* DX店舗layout */
	.dx #header {}
	main.style-dx {
		background-position: center 0;
		background-repeat: repeat;
		background-size: 100%;
		padding: 0;
	}
	.style-dx .shop_swiper {
		background-color: rgba(255, 255, 255, 0.8);
		padding-bottom: 30px;
	}
	.style-dx .shop_swiper .swiper-slide {border-radius: 0;}
	.style-dx .swiper-pagination { display: block;}

	.dx_shop_nav {
		display: none;
	}
	.style-dx .shop_contact_menu.pc_parts {
		display: none !important;
	}
	.style-dx .shop_contact_menu.sp_parts {
		display: block;
	}
	.style-dx .shop_contact_menu ul li {
		width: auto;
	}
	.style-dx .shop_contact_menu.pc_parts { display: none !important;}
	.style-dx .shop_contact_menu.sp_parts {
		position: relative;
	}
	.style-dx #contents .wrapper {
		padding: 30px 0 10px;
	}
	.style-dx #contents .wrapper.info {
		padding-top: 40px;
	}
	.style-dx.top #contents .wrapper {
		padding: 50px 0 20px;
	}
	.style-dx #contents .wrapper {
		padding: 30px 0 10px;
	}
	.style-dx #contents.app .wrapper {padding: 0 0 10px;}
	.style-dx #contents .top .wrapper {
		padding: 20px 0 5px;
	}
	.style-dx #contents .cont_block.top {background-color: rgba(255, 255, 255, 0.8);}
	.style-dx #contents .cont_block.top .wrapper { padding: 0;}
	.style-dx .shop_info {
		padding: 0 15px 20px;
	}
	.style-dx .shop_info .feature li {
		min-width: 111px;
		width: auto;
	}
	.style-dx .promotion {}
	.style-dx .shopcont_area {
		border-radius: 0;
		padding: 20px 15px;
	}
	.style-dx .free_space_area .ttl {
		margin: 0 15px 5px;
	}
	.style-dx .shopcont_area .ttl {
		margin-bottom: 20px;
	}
	.style-dx .shopcont_area.top .ttl {
		margin-bottom: 30px;
	}
	.style-dx .shopcont_area .box {
		padding: 20px 0 30px;
		border-radius: 0;
		background-color: #FFF;
	}
	.style-dx.top .shopcont_area {
		margin-bottom: 0;
	}
	.style-dx.top .shopcont_area .box {
		border-radius: 0;
		padding: 20px 15px;
	}

	.style-dx .shopcont_area .tab-content {
		border-radius: 0;
		padding: 20px 15px 10px;
		margin: 0 0px;
	}
	.style-dx .free_space_ttl {
		margin-bottom: 15px;
	}
	.style-dx .free_space_area .item {
    background-color: #fff;
		padding: 20px 15px;
	}

	.style-dx .free_space_area {
		border-bottom: none;
	}
	.style-dx .shopcont_area .tab-buttons {
		overflow-x: auto;
		display: flex;
		gap: 30px;
		border-top: 1px solid #EBEEF0;
		border-bottom: 1px solid #EBEEF0;
		background-color: #FFF;
		margin: 0 0;
		padding: 0 15px;
		justify-content: space-evenly;
	}
	.style-dx .shopcont_area .tab-button {
		line-height: 56px;
		cursor: pointer;
		text-align: center;
		transition: background 0.2s;
		white-space: nowrap;
		width: auto;
		flex: 0 0 auto;
		padding: 0;
		border-radius: 0;
		border: none;
		color: var(--brown);
		font-weight: normal;
	}
	.style-dx .shopcont_area .tab-button:hover, .style-dx .shopcont_area .tab-button.active {
		color: #FF839A;
		background-color: #FFF;
		font-weight: bold;
		border-bottom: 4px solid var(--pink);
	}
	.style-dx .shopcont_area .tab-content {
		background-color: #FFF;
	}
	.style-dx #job_info .shop-pr {
		padding-inline: 15px;
		max-width: calc(770px + 15px * 2);
	}

	.style-dx #job_info #recruit_title {
		/* padding: 0 15px; */
	}
	.style-dx #job_info p.mb30 {
		background-color: #FFF;
		padding: 20px 15px;
		margin-bottom: 0 !important;
	}
	.style-dx.top .shopcont_area #everyone_pay .blk {margin: 0;}

	#faq.shopcont_area.detail {
		padding: 20px 0;
        border-top: solid 1px #EBEEF0;
	}
	#waiting_area .note {}
	.style-dx .contact_area {
		margin-top: 0;
		padding: 20px 15px 0;
		border-bottom: none;
		background-color: var(--bg_blue);
	}
	.style-dx .prom_area {
		padding: 20px 15px 30px;
		background-color: var(--bg_blue);
	}
	.style-dx .app_form_area {
		padding-bottom: 0;
	}
	.style-dx .app_form_area .ttl {
		line-height: 60px;
	}
	.style-dx.top .app_form_area {
		padding-bottom: 0px;
	}
	.style-dx .app_form_area .box {
		border: none;
		margin: auto;
		padding: 30px 15px;
		margin-bottom: 0;
		border-radius: 0;
	}
	.style-dx .shop_banner {
		display: none;
	}
	.style-dx .cont_top {
		margin: 0 auto 20px;
	}
	.style-dx .cont_top.sp_header .area_ttl { margin: 20px auto;}
	.style-dx .shopcont_area.detail .page_navi_top {
		margin-top: 20px;
	}
	.style-dx .pagination_box {
		margin-bottom: 30px;
	}
	.style-dx #user_info {}
	.style-dx #recommend_job {
		background-color: transparent;
	}
	.style-dx #recommend_job .ttl {
		font-size: 18px;
		margin: 0 auto 20px;
	}
	.style-dx #recommend_job .ttl:before { display: none;}
	.style-dx #sub_menu .other {
		margin: 0 auto 20px;
	}
	.style-dx #shop_info .box {
		padding: 20px 15px 0;
	}
	/*0106 店舗トップ＞ショップギャラリー
	.style-dx #contents .gallery .wrapper {
		padding: 50px 0 0;
	}*/
	.style-dx .shopcont_area.detail #everyone_pay {
		margin-top: 10px;
	}
	.style-dx .shopcont_area.detail #cast_interview {
		margin: 0;
	}
	.style-dx #qa.detail {
		padding: 20px 15px 0;
		border-radius: 0;
	}
	.style-dx #qa.detail .box {
		padding: 10px 0 0;
	}
	.style-dx #qa.detail .box.pc_mt20 {
		margin-bottom: 0px !important;
	}
	.style-dx .other_answer {
		padding-bottom: 15px;
		margin: 0 -15px;
	}
	.style-dx .important_notice {
		padding: 10px 0 20px;
	}
	.style-dx .shopcont_area.form {
		padding: 20px 15px;
		margin-bottom: 20px;
	}
	.style-dx #mypage_wrap {
		background-color: #FFF;
	}

	/* WEB応募 */
	.modal-sp .cont_top {
		display: none !important;
	}
  /* WEB応募完了画面 */
	.sd.modal-sp .shopcont_area {
		padding-top: 0;
	}

}

@media screen and (max-width: 849px) {
	.side_bar.shop {
    height: 80vh;
    max-height: 80vh;
  }
	.side_bar.shop .box {
		height: 100%;
	}
  .side_bar.shop .box,
  .side_bar.shop-tel .box {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
	}
}

/* ===== チャットでお問合せモーダル ===== */
/* 半透明のオーバーレイ */
.chat-overlay {
		font-family: "Hiragino Sans", "Helvetica Neue", Arial, sans-serif;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		display: none;
		align-items: center;
		justify-content: center;
		background: rgba(0, 0, 0, 0.4);
		z-index: 9999;
}

/* モーダル本体 */
.chat-overlay .chat-modal {
		position: relative;
		background: #fff;
		width: 90%;
		max-width: 400px;
		padding: 30px 20px;
		border-radius: 16px;
		box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
		text-align: center;
}

/* 閉じるボタン */
.chat-overlay .chat-close-btn {
		position: absolute;
		top: 15px;
		right: 15px;
		background: none;
		border: none;
		font-size: 28px;
		color: #999;
		cursor: pointer;
}

/* タイトル */
.chat-overlay .chat-modal-title {
		margin: 10px 0 20px;
		font-size: 18px;
		font-weight: bold;
		color: #6e5c5c;
}

/* フォーム部分 */
.chat-overlay .form-group {
		text-align: left;
		margin-bottom: 20px;
}

.chat-overlay .form-group label {
		font-weight: bold;
		color: #6e5c5c;
		display: block;
		margin-bottom: 5px;
}

.chat-overlay .required-dot {
		color: #f8a5b3;
		font-size: 14px;
		margin-left: 3px;
}

/* テキストエリア */
.chat-overlay textarea {
		width: 100%;
		height: 100px;
		border: 1px solid #eee;
		border-radius: 8px;
		padding: 10px;
		font-size: 14px;
		resize: none;
		outline: none;
		box-sizing: border-box;
}

/* 注意書き */
.chat-overlay .note {
		margin: 5px 0 0;
		font-size: 12px;
		color: #9c8585;
}

/* 送信ボタン */
.chat-overlay .submit-btn {
		width: 100%;
		padding: 15px 0;
		background: #ff7e9d;
		border: none;
		border-radius: 12px;
		font-size: 16px;
		font-weight: bold;
		color: #fff;
		cursor: pointer;
		box-shadow: 0 4px 10px rgba(255, 126, 157, 0.3);
}

.chat-overlay .submit-btn:hover {
		opacity: 0.8;
}
