@charset "utf-8";

.SourceHanSerif-B{
	font-family: source-han-serif-japanese, serif;
	font-weight: 700;
	font-style: normal;
}

.SourceHanSerif-R{
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	font-style: normal;
}

.h-second{
	padding-bottom: 0;
}

.second-h-nav .drawer-nav-wrapper{
	display: none;/*Gnavメニュー一時的に非表示のため  block;*/
}

.shop-list .shop-nav-btn{
	display: none;/*Gnavメニュー一時的に非表示のため */
}

.second-h-nav .nav-close{
	display: none;
}

.second-h-nav{
	/*border-top: solid 1px #e5e5e5;*/
	border-bottom: solid 1px #e5e5e5;
	margin-top: 12px;/*10px;*/
}

.second-h-nav .cotainer{
	display: none;
}


.second-h-nav .drawer-nav{
	display:-webkit-box;
  display:-ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.second-h-nav .nav-inner{
	width: calc(100% + 10px);
  margin-left: -10px;
}

.second-h-nav .drawer-nav li{
	display:-webkit-box;
  display:-ms-flexbox;
	display: flex;
}

.second-h-nav .drawer-nav .n-sitemap{
	display: none;
}

.drawer-nav .active a{
	color:#E94D37;
}

.second-h-nav .drawer-nav a{
	font-size: 15px;
	font-weight: bold;
	padding: 10px;
}


/* topページ以外のheader下の画像指定部分 */
.second-main{
	display:-webkit-box;
  display:-ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 100%;
	height: 280px;
}

.second-main h2{
	font-size: 42px;
	font-family: source-han-serif-japanese, serif;
	font-weight: 700;
	font-style: normal;
	line-height: 1.4;
	margin-bottom: 0;
}

.feature-main{
	background: url('../images/bg/tokusyu_bg.png') no-repeat center;
	background-size: auto 100%;
}

.common-main{
	background: url('../images/bg/common_bg.png') no-repeat center;
	background-size: auto 100%;
}

.contact-main{
	background: url('../images/bg/contact_bg.png') no-repeat center;
	background-size: auto 100%;
}

.shop-main{
	background: url('../images/bg/shop_bg.png') no-repeat center;
	background-size: auto 100%;
}

/* パンくずリスト */
.l-breadcrumb{
	margin-bottom: 20px;
}
.l-breadcrumb .breadcrumb{
	display:-webkit-box;
  display:-ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding: 20px 0;
}

.breadcrumb li{
	padding-right: 26px;
}

.breadcrumb li:last-of-type a:before{
	content: none;
}

.breadcrumb a{
	position: relative;
}

.breadcrumb a:before{
	content: "";
	position: absolute;
	top: 50%;
	right: -16px;
	display: block;
	width: 6px;
	height: 6px;
	margin-top: -4px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.second-cotainer{
	display:-webkit-box;
  display:-ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 1024px;
  margin: 0 auto;
}

/* ページャー */
.pager-wrap{
	display:-webkit-box;
  display:-ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
  justify-content: center;
	margin: 30px auto 0;
}

.pager-wrap li:not(:last-of-type){
	margin-right: 10px;
}

.pager-wrap li{
	width: 46px;
	height: 46px;
}

.pager-wrap li a,
.pager-wrap li .active{
	display:-webkit-box;
  display:-ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
  justify-content: center;
	width: 100%;
	height: 100%;
	border-radius: 8px;
	border: solid 1px #E94D37;
}

.pager-wrap li p{
	margin-bottom: 0!important;
}

.pager-wrap li span{
	color:#E94D37;
}

.pager-wrap li .active{
	background:#E94D37;
}

.pager-wrap li .active span{
	font-weight: bold;
	color: #fff;
}

.pager-wrap li a:hover{
	background:#E94D37;
}

.pager-wrap li a:hover span{
	font-weight: bold;
	color: #fff;
}

.pager-wrap li .prev span,
.pager-wrap li .next span{
	width: 100%;
	height: 100%;
}

.pager-wrap li .prev span{
	background: url("../images/icon/pager_arrow_left_main_c.svg") no-repeat center;
}

.pager-wrap li .prev:hover span{
	background: url("../images/icon/pager_arrow_left_main_w.svg") no-repeat center;
	background-size: 21px auto;
}

.pager-wrap li .next span{
	background: url("../images/icon/pager_arrow_right_main_c.svg") no-repeat center;
}

.pager-wrap li .next:hover span{
	background: url("../images/icon/pager_arrow_right_main_w.svg") no-repeat center;
	background-size: 21px auto;
}

.pager-box{
	display:-webkit-box;
  display:-ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	border-top:solid 1px #E5E5E5;
	border-bottom:solid 1px #E5E5E5;
}

.link-item{
	width: 50%;
	padding: 24px 12px;
	position: relative;
}

.link-item p{
	font-size: 15px;
}

.link-item.prev-link{
	padding-left: 46px;
}

.link-item.prev-link:before{
	content: "";
	position: absolute;
	top:50%;
	left: 12px;
	background: url("../images/icon/pager_arrow_left_main_c.svg") no-repeat center;
	width: 22px;
	height: 6px;
	transform: translateY(-50%);
}

.link-item.prev-link:after{
	content: "";
	position: absolute;
	width: 1px;
	height: calc(100% - 20px);
	background: #E5E5E5;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}

.link-item.next-link{
	padding-right: 46px;
}

.link-item.next-link:after{
	content: "";
	position: absolute;
	top:50%;
	right: 12px;
	background: url("../images/icon/pager_arrow_right_main_c.svg") no-repeat center;
	width: 22px;
	height: 6px;
	transform: translateY(-50%);
}




/* メインカラム */
.main-wrap{
	width: calc(100% - 320px);
}

.column-wrap .column-box{
	display:-webkit-box;
  display:-ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 100%;
	margin-right: 0%;
}

.column-wrap .column-box{
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: solid 1px #E5E5E5;
}

.column-wrap .column-box:last-of-type{
	margin-bottom: 0;
}

.column-wrap .column-ph{
	width: 274px;
	line-height: 0;
}

.column-wrap .column-text{
	display:-webkit-box;
  display:-ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
  flex-wrap: wrap;
	width: calc(100% - 274px);
	padding-left: 16px;
}

.column-wrap .category-box.shop-tag-wrap{
	margin-top: auto;
}


/* 特集詳細 */
.column-detail time{
	margin-bottom: 4px;
}

.common-style p{
	font-size: 15px;
}

.common-style p{
	margin-bottom: 30px;
	width: 100%; /* 2021-02追加 */
}

.common-style h2{
	display: block;
	width: 100%;
	position: relative;
	padding-bottom: 19px;
	margin-bottom: 30px;
}

.common-style h2:before{
	content: "";
	position: absolute;
	bottom: 0;
	width: 56px;
	height: 4px;
	background:#E94D37;
}

.common-style h2.detail-title{
	padding-bottom: 0;
}

.common-style h2.detail-title:before{
	content: none;
}

.column-main-ph{
	display: block;
	margin:0 auto 30px auto;
}

.common-style h3{
	font-size: 20px;
	line-height: 1.4;
	color: #E94D37;
	margin-bottom: 10px;
	width: 100%; /* 2021-02追加 */
}

.common-style h4,
.common-style.one-column-style h3{
	font-size: 17px;
	line-height: 1.4;
	border-left: solid 4px #E94D37;
	padding-left: 10px;
	margin-bottom: 10px;
	width: 100%; /* 2021-02追加 */
}

.common-style.one-column-style h3{
	color: #333;
}

.common-style h5{
	line-height: 1.4;
	margin-bottom: 10px;
	width: 100%; /* 2021-02追加 */
}

.table-style { /* 2021-02追加 */
	width: 100%;
}


.table-style th, .table-style td,
.form-item .form-title, .form-item .form-date{
	font-size:15px;
	padding:12px;
}

.table-style tr,
.contact-form .form-item{
	display:-webkit-box;
  display:-ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	border-top: solid 1px #E5E5E5;
}

.table-style tr:last-of-type,
.contact-form .form-item:last-of-type{
	border-bottom: solid 1px #E5E5E5;
}

.table-style th,
.form-item .form-title{
	width: 26.128%;
	background: #F7F7F7;
	font-weight: normal;
}

.table-style td,
.form-item .form-date{
	width: 73.872%;
}

/* 2021-02追加 ▼ ここから ▼ -------------------- */
.message.error,
.error .form-error {
	border-color: #dc3545;
}
.message.error,
.error .error-message {
	padding: 1rem;
	background-color: #f2dede;
	color: #a94442;
}
.message.error {
	margin-bottom: 1rem;
}
/* 2021-02追加 ▲ ここまで ▲ -------------------- */


.second-category-box{
	margin-top: 30px;
}

.second-category-box h3{
	font-size: 18px;
	margin-bottom: 10px;
}

.second-category-box .title-box h4{
	font-size: 14px;
}

.second-category-box .category-block li{
	width: 23.71%;
  margin-right: 1.72%;
}

.second-category-box .category-block li:nth-of-type(4n){
	margin-right: 0;
}

.second-category-box .category-block li:nth-of-type(n + 5){
	margin-top: 1.72%;
}

.second-category-box .category-block li .ph-box{
	width: 44px;
}

.second-category-box .category-block li .ph-box img{
	width: 26px;
}

.second-category-box .category-block .title-box{
	width: calc(100% - 54px);
}

.second-category-box .title-box .f-hels-t{
	font-size: 13px;
	letter-spacing: -0.03rem;
}

.main-c-wrap{
	width: 100%;
}

.form-item .form-title{
	display: flex;
	align-items: center;
	position: relative;
	padding-right: 64px;
}

.form-item .form-title br{display: none;}

.form-date input,
.form-date textarea,
.form-date p{
	width: 100%;
	font-size: 15px;
	border: solid 1px #E5E5E5;
	line-height: 1.6;
  padding: 10px 12px;
}

.form-date p{
	border: none;
	padding: 11px 0;
	line-height: 1.4;
}

.form-date textarea{
	height: 180px;
	line-height: 1.6;
}

.form-date{
	line-height:0;
}

.required{
	position: absolute;
	background: #ff0000;
	padding: 5px;
	color: #fff;
	font-size: 11px;
	line-height: 1.2;
	font-weight: normal;
	top: 50%;
	right: 12px;
  transform: translateY(-50%);
}

.contact-button-wrap{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 30px auto 0 auto;
}

.contact-button-wrap .button-base{
	width: 42.5%;
	max-width: 360px;
	margin: 0;
}

.contact-button-wrap .button-base.return-button{
	margin-right: 1.706%;
}

.contact-button-wrap .button-base.return-button span{
	background-color: #9b9b9b;
}

.contact-button-wrap .button-base.return-button span:hover{
	background-color:#747474;
}

.button-base.return-button span:before{
	content: "";
	position: absolute;
	background: url(../images/icon/arrow_left.svg) no-repeat center;
	width: 33px;
	height: 6px;
	top: 50%;
	left: 10px;
	transform: translateY(-50%);
}

.completely-title{ text-align: center; }

.completely-title br{ display: none; }

.contact-form-completely p{ font-size: 15px; text-align: center; }

.contact-form-completely .button-base{
	margin-top: 45px;
}

.contact-tab-nav ul{
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 36px;
	border-bottom: solid 4px #E94D37;
}
.contact-tab-nav ul li{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	width: 50%;
	cursor: pointer;
	background: #f7f7f7;
}
.contact-tab-nav ul .active{
	position: relative;
	background: #E94D37;
	transition: all .3s;
}
.contact-tab-nav ul .active:before{
	content: "";
	position: absolute;
	border: 16px solid transparent;
	border-color: #e94c37 transparent transparent transparent;
	left: 50%;
	bottom: -36px;
	transform: translateX(-50%);
	/*
	bottom: -24px;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 17.3px 10px 0 10px;
	border-color: #e94c37 transparent transparent transparent;*/
}
.contact-tab-nav ul .active span{
	color: #fff;
	font-weight: bold;
}
.contact-tab-nav ul li span{
	display: block;
	width: 100%;
	font-size: 16px;
	text-align: center;
	padding: 12px;
	position: relative;
}
.contact-form-box.hide{
	display: none;
}

.publication-wrap{
	border-top: solid 1px #e5e5e5;
	border-bottom: solid 1px #e5e5e5;
	padding: 20px 0;
	margin-bottom: 40px;
}
.publication-wrap .button-base{
	margin-top: 0;
}
.publication-wrap .button-base span br{
	display: none;
}


/* 店舗一覧 */
.shop-wrap{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.shop-wrap .wrap_items{ /* 2023-10追加 */
	width: 100%;
}

.shop-wrap h3,
.shop-wrap h2{
	font-size: 24px;
	display: block;
	width: 100%;
	position: relative;
	margin-bottom: 20px;
}

.shop-wrap .shop-box:not(:last-of-type){
	margin-bottom: 24px;
}

.shop-box{
	display:-webkit-box;
  display:-ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 100%;
	box-shadow: 0 0 4px 0 rgba(51,51,51,.16);
}

.shop-header{
	display: block;
	width: 100%;
	background: #FEF4F2;
	border-top: solid 4px #E94D37;
	padding: 20px;
}

.shop-header h4,
.shop-header h3{
	font-size: 20px;
	color: #E94D37;
	font-weight: bold;
	line-height: 1.4;
}
.shop-box .shop-header h3{
	margin-bottom: 10px;
}

/* 2021-02追加 */
.shop-header h3 a{
	color: #E94D37;
}

.shop-header-bottom{
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.shop-header-bottom .shop-title-icon{
	position: relative;
	padding-left:28px;
	font-size: 14px;
	margin-top:6px;
}

.shop-header-bottom .shop-title-icon:before{
	content: "";
	width: 22px;
	height: 22px;
	display: block;
	position: absolute;
	left: 0;
}

.shop-header-bottom .shop-title-icon:not(:last-of-type){
	margin-right: 12px;
}

.shop-header-bottom .shop-title-icon.shop-price:before{
	background:url("../images/icon/icon_shop_price.svg") no-repeat center;
	background-size: contain;
}

.shop-header-bottom .shop-title-icon.shop-time:before{
	background:url("../images/icon/icon_shop_time.svg") no-repeat center;
	background-size: contain;
}

.shop-header-bottom .shop-title-icon.shop-category:before{
	background:url("../images/icon/icon_shop_category.svg") no-repeat center;
	background-size: contain;
}

.shop-box-main{
	display: flex;
	flex-wrap: wrap;
	padding: 20px;
	width: 100%; /* 2025-11追加 */
}

.shop-box-main .shop-ph{
	width: 324px;
	height: 324px;
	position:relative;
}

.shop-box-main .shop-ph a{
	display: flex;
	align-items: center;
	justify-content: center;
	/*height: 100%;*/
	width: 324px;
	height: 324px;
	overflow: hidden;
}
.shop-box-main .shop-ph a img{
	width: 100%;
}

.shop-box-main .shop-ph:hover a img{
	opacity: .7;
}

/* 公式HP 2024-10追加 ▼ ここから ▼ --------------- */
.shop-hp-link {
	transition: all .6s;
	opacity: 0;
	background: rgba(27,27,27,0.88);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.shop-ph a:hover .shop-hp-link{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-self: center;
	opacity: 1;
}
.shop-ph a .shop-hp-link  p {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	color: #fff;
	font-size: 18px;
	width: 80%;
	max-width: 98px;
	font-size: 18px;
	background: #ff0000;
	padding: 6px;
	border-radius: 12px;
	text-align: center;
}
/* 公式HP 2024-10追加 ▲ ここまで ▲ --------------- */

.shop-box-main .shop-text{
	display: flex;
	flex-wrap: wrap;
	width: calc(100% - 324px);
	padding-left: 16px;
}

.shop-box .category-box.shop-tag-wrap{
	margin-top: 0;
}

.shop-box-main .shop-text .category-box{
	width: calc(100% + 3px);
	margin-left: -3px;
}

.shop-box-main .shop-text .category-box li{
	margin:3px;
}

.shop-box-main .shop-text-box{
	/* margin-bottom: 15px; */
	width: 100%; /* 2023-10追加 */
}

.s-message{
	position: relative;
	font-size: 15px;
	font-weight: bold;
	/* padding-bottom: 8px; */ /* 2025-10修正 */
	/* margin-bottom: 8px; */ /* 2025-10修正 */
	padding-bottom: .25rem; /* 2025-10追加 */
	margin-bottom: 0; /* 2025-10追加 */
	top: -3px; /* 2025-10追加 */
	border-bottom: solid 1px #E5E5E5;
}

/* .s-message:before{
	content: "";
	position: absolute;
	left: 0;
	bottom: -1px;
	width: 40px;
	height: 1px;
	background:#E94D37;
} */ /* 2025-10修正 */

.shop-box-main .shop-text-box p{
	/* font-size: 14px; */ /* 2025-10修正 */
	font-size: 15px; /* 2025-10追加 */
	/* line-height: 1.5; */ /* 2025-10修正 */
}
.shop-box-main .shop-text-box p.s-message{ /* 2025-10追加 */
	color: #E94D37;
	font-size: 19px; /* 2025-10追加 */
/* テキストを1行化＆3点リーダーで省略 2025-10追加 ▼ ここから ▼ ----- ----------*/
   white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
/* テキストを1行化＆3点リーダーで省略 2025-10追加 ▲ ここまで ▲ --------------- */
}

.shop-box-main .shop-text-box p:not(.s-message){ /* 2025-10追加 */
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5; /* 行数 */
}
.shop-box-main .shop-text-box p.s-message+p{ /* 2025-10追加 */
    /* display: -webkit-box; */
    /* overflow: hidden; */
    /* -webkit-box-orient: vertical; */
    -webkit-line-clamp: 3; /* 行数 */
}

.shop-box-main .button-base{
	width: 100%;
	margin-top: auto;
	padding-top: 15px;
}

.other-shop-box .shop-header{
	background: #fff;
	border-top:none;
}

.other-shop-box .shop-header h4,
.other-shop-box .shop-header h3{
	color:#000;
	font-size: 18px;
	border-bottom: solid 1px #E5E5E5;
	padding-bottom: 10px;
	margin-bottom: 10px;
}

.other-shop-box .shop-header h4 a{ /* 2021-02追加 */
	color: #E94D37;
}

/* サイドメニュー */
.second-side-wrap{
	width: 280px;
	margin-left: auto;
}

.second-side-wrap .side-box:not(:last-of-type){
	margin-bottom: 20px;
}

.second-side-wrap h2{
	font-size: 18px;
	color:#E94D37;
	margin-bottom: 10px;
}

.column-ranking-inner{
	border: solid 1px #E5E5E5;
}

li.column-ranking-item{
	position: relative;
}

.column-ranking-item:not(:last-of-type){
	border-bottom:solid 1px #E5E5E5;
}

li.column-ranking-item a{
	display:-webkit-box;
  display:-ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding: 15px;
}

.column-ranking-item .ranking-ph{
	width: 96px;
}

.column-ranking-item .side-h3{
	width: calc(100% - 96px);
	padding-left: 10px;
	font-weight: normal;
}

.column-ranking-item .rank-item{
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top:-1px;
	left: -1px;
	width: 24px;
	height: 24px;
	background: #E94D37;
}

.column-ranking-item .rank-item.rank-1{
	background:#DCBC3A;
}

.column-ranking-item .rank-item.rank-2{
	background:#ABC1CA;
}

.column-ranking-item .rank-item.rank-3{
	background:#D1945F;
}

.column-ranking-item .rank-item span{
	color: #fff;
	font-size:13px;
	font-style: normal;
}

.side-ac-style{
	border-top: solid 1px #E5E5E5;
}

.side-ac-style li{
	border-bottom: solid 1px #E5E5E5;
}

.side-ac-style a{
	display: flex;
	flex-wrap: wrap;
	position: relative;
	width: 100%;
	font-size: 15px;
	padding: 10px 0;
}

.side-ac-style a:after{
	content: "";
	position: absolute;
	background: url("../images/icon/icon_side_arrow.svg") no-repeat;
	background-size: 21px auto;
	width: 21px;
	height: 6px;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
}

.side-ac-style a i{
	display: block;
	width: 20px;
	height: 20px;
	margin: 2px 0;
}

.side-ac-style a i svg{
	display: block;
}

.side-ac-style a span{
	width: calc(100% - 20px);
	padding-left: 4px;
}

.ac-sbox{
	pointer-events: none;
	display:block
}

.sitemap-wrap:not(:last-of-type){
	margin-bottom: 30px;
}

.sitemap-wrap h3{
	color: #E94D37;
	font-size: 20px;
	margin-bottom: 10px;
}

.sitemap-wrap ol{
	display: flex;
	flex-wrap: wrap;
}

.sitemap-wrap ol li{
	display: table;
	width: 31.81818181818182%;
  margin-right: 2.27272727272727%;
}

.sitemap-wrap ol li:nth-child(3n){
	margin-right: 0;
}

.sitemap-wrap ol li:nth-child(n + 4){
	margin-top: 2.27272727272727%;
}

.sitemap-wrap ol li a{
	display: block;
	width: 100%;
	font-size: 15px;
	padding: 12px;
	position: relative;
}

.sitemap-wrap ol li a:before{
	content: "";
	width: 6px;
	height: 6px;
	background: #000;
	display: block;
	position: absolute;
	top:20px;
	left: 0;
  border-radius: 50%;
}


/* メイン下テキスト部分 */
.l-text-section{
	margin-top: 60px;
}

.l-text-c{
	background:#FEEDEA;
}

.l-text-style h2, .l-text-style h3, .l-text-style h4{
	line-height: 1.4;
}

.l-text-style h3{
	font-size: 20px;
	color:#E94D37;
	margin-bottom: 10px;
}

.l-text-style h4{
	font-size: 17px;
	border-left: solid 4px #E94D37;
	padding-left: 10px;
	margin-bottom: 10px;
}

.l-text-style h5{
	font-size: 15px;
	margin-bottom: 10px;
}

.l-text-style p{
	font-size: 15px;
	margin-bottom: 30px;
	width: 100%; /* 2021-04追加 */
}

.l-text-style p:last-of-type{
	margin-bottom: 0;
}

/* footer */
.l-container + .l-footer.l-footer-n{
	margin-top: 0;
}

/* 掲載について */
.c-cotainer{
	padding-bottom: 60px;
}
.publication.c-cotainer{
	padding-bottom: 40px;
}
.publication .click-here{
	display: block;
	width: 100%;
	background: #FEF4F2;
	border: solid 2px #E94D37;
	padding: 40px;
}
.publication .click-here p{
	display:table;
	font-size: 28px;
	font-weight: bold;
	color: #E94D37;
	position: relative;
	padding-right: 43px;
	margin: 0 auto;
}
.publication .click-here p:before{
	content: "";
	position: absolute;
	background: url(../images/icon/arrow_right_m.svg) no-repeat center;
	width: 33px;
	height: 6px;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	transition: all .2s;
}
.publication .click-here:hover{
	background: #E94D37;
}
.publication .click-here:hover p{
	color: #fff;
}
.publication .click-here:hover p:before{
	right: -10px;
	background: url(../images/icon/arrow_right.svg) no-repeat center;
}

.media-materials{
	width: 100%;
	border: solid 2px #E5E5E5;
	padding: 30px;
}
.media-materials h2{
	font-size: 28px;
	width: 100%;
 text-align: center;
	margin-bottom: 10px;
}
.media-materials p{
	font-size: 16px;
	width: 100%;
 text-align: center;
}
.media-materials .button-base{
	margin-top: 20px;
}
.publication-flow{
	background:#F7F7F7;
}
.publication-style h2{
	display: table;
	font-size: 28px;
	margin: 0 auto 30px auto;
	padding: 0 10px;
	position: relative;
	z-index: 2;
}
.publication-style h2:after{
	content: "";
	position: absolute;
	width: 100%;
	height: 10px;
	background: #FFDAD5;
	left: 0;
	bottom: 2px;
	z-index: -1;
}
.p-flow-box:not(:last-of-type):after{
	content: "";
	width: 28px;
	height: 28px;
	position: absolute;
	background: url('../images/icon/flow-arrow.svg') no-repeat center;
	background-size: contain;
	right: -44px;
	top: 50%;
	transform: translateY(-50%);
}
.p-flow-wrap{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	width: calc(100% + 60px);
	margin-left: -30px;
}
.p-flow-box{
	width: calc(33.33333% - 60px);
	background: #fff;
	padding: 30px;
	margin: 0 30px;
	position: relative;
}
.p-flow-number{
	font-size: 42px;
	font-weight: bold;
	line-height: 1;
	color:#E94D37;
	position: absolute;
	top: -21px;
	left: 12px;
}
.p-flow-ph{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	width: 120px;
	height: 120px;
	background: #E94D37;
	border-radius: 50%;
	margin: 0 auto 20px auto;
}
.p-flow-box h3{
	color:#E94D37;
	font-size: 20px;
	text-align: center;
	margin-bottom: 10px;
}
.p-flow-box p{
	font-size: 15px;
}
.publication-form .contact-form-box{
	width: 100%;
}
.contact-form{
	margin-bottom: 40px;
}
/* .contact-form:nth-of-type(3){ */
.contact-form+.contact-form+.contact-form{ /* システムを通したら「:nth-of-type(3)」が効かなかったため修正 */
	margin-bottom: 0;
}
.contact-form h3{
	font-size: 20px;
	margin-bottom: 12px;
}
.publication-form .second-cotainer.t-cotainer{
	padding-bottom: 0;
}
.form-date-sub:not(:last-of-type){
	margin-bottom: 18px;
}
.form-date-sub input,
.form-date-sub .select-box{
	margin-top: 8px;
}
.form-date .form-date-sub .date-sub-title,
.form-date .form-date-sub .sub{
	padding: 0;
}
.form-date .form-date-sub .sub{
	font-size: 12px;
	margin-top: 2px;
}
.form-ul{
	display: flex;
	flex-wrap: wrap;
}
.form-ul li:not(:last-of-type){
	margin-right: 24px;
	position: relative;
}
.form-ul li:not(:last-of-type):after{
	content: "";
	width: 8px;
	height: 1px;
	background: #333;
	position: absolute;
	top: 50%;
	right: -16px;
	transform: translateY(-50%);
}
.form-ul li{
	width: 140px;
}
.form-date .form-date-sub .warning-text{
	color: #f00;
	font-size: 12px;
	background: #FEF4F2;
	padding: 4px 10px;
	margin-bottom: 8px;
}
.form-date-sub > p{
	padding: 6px 0 0 0;
}
.publish-firmation .form-ul li{
	width: inherit;
}
#publish-firmation.publication-form .second-cotainer.t-cotainer{
	padding-top: 0;
}

/* 店舗一覧、クーポン追加 */
.shop-box-main .shop-text-inner{
	display: flex;
	flex-wrap: wrap;
	/* height: 7.6rem; */
	/* align-items: flex-end */
	width: 100%; /* 2025-10追加 */
}
.shop-coupon-box{
	width: 100%;
	margin-top: auto;
	background: url(../images/shop/shop_list_cupon.svg) no-repeat;
  background-position: 98.6% bottom;
	background-size: 80px;
}
.shop-coupon-box:hover{
	opacity: .8;
	background: url(../images/shop/coupon/ikeuki_stamp.svg) no-repeat #F9F9F9;
	background-position: 98.6% bottom;
  background-size: 80px;
}
.shop-wrap .shop-coupon-box h3{
	margin-bottom: 0;
}
.shop-coupon-box .coupon-title{
	background:#E94D37;
	padding: 6px 12px;
}
.shop-coupon-box .coupon-title h3{
	font-size: 13px;
	color: #fff;
	text-align: center;
}
.shop-coupon-box .shop-tiket-wrap{
	display: flex;
	flex-wrap: wrap;
	border: solid 1px #E94D37;
	border-top: 0;
	padding: 12px;
}
.shop-coupon-box .off-box{
	display: flex;
	align-items: center;
	width: 52px;
	height: 52px;
	background: #E94D37;
}
.shop-coupon-box .off-number-box{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.shop-coupon-box .off-number-percent span{
	color: #fff;
	font-size: 12px;
	line-height: 1;
}
.shop-coupon-box .off-number-percent .nubers + span{
	margin-left: 1px;
}
.shop-coupon-box .off-t{
	line-height: 1;
}
.shop-coupon-box .off-number-percent .nubers,
.shop-coupon-box .off-t{
	color: #fff;
	font-size: 20px;
	font-weight: bold;
}
.shop-coupon-box .tiket-inner{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	width: calc(100% - 52px);
	padding-left: 10px;
}
.shop-coupon-box .tiket-inner .main-off-text p{
	line-height: 1.6;
}
.shop-coupon-box .price-time{
	line-height: 1.2;
	position: relative;
	padding-left: 18px;
}
.shop-coupon-box .price-time:before{
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 12px;
	border-color: transparent transparent transparent #E94D37;
}
.shop-coupon-box .price-time span{
	color: #E94D37;
	font-size: 22px;
	font-weight: bold;
	line-height: 1;
}
.shop-coupon-box .price-time .sub{
	color: #333;
	font-size: 14px;
	font-weight: normal;
}

.shop-text .shop-header-bottom{
	align-items: flex-start;
}
.shop-box.superior-shop .shop-tile-word{
	display: flex;
	flex-wrap: wrap;
}
.superior-shop .shop-header{
	position: relative;
}
.superior-shop .shop-tile-word i {
	width: 73px;
	height: 98px;
	position: absolute;
	top: -12px;
	left: 20px;
}
.superior-shop .shop-tile-word h3 {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	width: calc(100% - 228px);
	margin-left: auto;
	margin-bottom: 0;
	padding-right: 12px;
}
.shop-coupon-header {
	width: 148px;
}
.shop-coupon-header a {
	display: block;
	width: 100%;
	background: #fff;
	border: solid 1px #E94D37;
	border-radius: 12px;
	padding: 6px 8px;
}
.shop-coupon-header p {
	font-size: 13px;
	font-weight: bold;
	color: #E94D37;
	position: relative;
	padding-left: 25px;
}
.shop-coupon-header p:before {
	content: "";
	width: 21px;
	height: 18px;
	background: url(../images/icon/icon-c-tiket.svg) no-repeat center;
	background-size: cover;
	position: absolute;
	top: 2px;
	left: 0;
}
.shop-coupon-header a:hover {
	background: #E94D37;
}
.shop-coupon-header a:hover p {
  color: #fff;
}
.shop-coupon-header a:hover p:before {
  background: url(../images/icon/icon-c-tiket-w.svg) no-repeat center;
}
.superior-shop .shop-header-bottom .shop-title-icon:before{
	width: 21px;
	height: 21px;
}

.superior-shop .shop-box-main .shop-ph{
	width: 348px;
  line-height: 0;
}
.superior-shop .shop-box-main .shop-text{
	width: calc(100% - 348px);
}
.superior-shop .shop-header-bottom p{
	width: 100%;
	line-height: 1.5;
}
.superior-shop .shop-header-bottom .shop-price{
	font-size: 16px;
	font-weight: bold;
}
.superior-shop .shop-header-bottom .shop-title-icon{
	margin-top: 0;
}

.superior-shop .shop-header-bottom .shop-title-icon:not(:last-of-type){
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 8px;
}

.superior-shop .shop-box-main .shop-text-inner{
	margin-top: 20px;
}


.superior-shop .shop-coupon-box{
	display: flex;
	flex-wrap: wrap;
	color: #000;
	width: 100%;
	margin-top: 16px;
	padding-right: 12px;
	border: solid 1px #E94D37;
	background-image: none;
}
.superior-shop .coupon-off-box{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	width: 112px;
	background: #E94D37;
	padding: 12px;
}

.superior-shop .shop-tiket-wrap{
	border: none;
}
.superior-shop .coupon-off-box .off-number {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
}
.superior-shop .off-number p {
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.4;
}
.superior-shop .off-number .sub {
	font-size: 14px;
	font-weight: normal;
	margin: 0 2px 4px 2px;
}
.superior-shop .coupon-text {
	width: calc(100% - 280px);
	padding: 12px;
}
.superior-shop .shop-coupon-box .coupon-text h4 {
	font-size: 15px;
	color:  #E94D37;
}
.superior-shop .cupon-sec {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.superior-shop .cupon-sec p {
	display: table;
	font-size: 13px;
}
.superior-shop .cupon-sec .normal-price {
	text-decoration: line-through;
}
.superior-shop .cupon-sec .cupon-dis {
	position: relative;
	padding-left: 24px;
}
.superior-shop .cupon-sec .cupon-dis:before {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 0 4px 8px;
	border-color: transparent transparent transparent #E94D37;
	margin: 0 8px;
	position: absolute;
	top: 8px;
	left: 0;
}
.superior-shop .cupon-dis span {
	color: #E94D37;
	font-weight: bold;
}
.superior-shop .cupon-sec .cupon-time,
.superior-shop .cupon-sec .cupon-price {
	font-size: 18px;
	line-height: 1.2;
}
.more-btn {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 168px;
	height: 36px;
	background: #E94D37;
	border-radius: 12px;
	position: relative;
	margin: auto 0 auto auto;
}
.more-btn:before{
	content: "";
	position: absolute;
	width: 21px;
	height: 6px;
	background: url('../images/icon/icon_side_arrow_w.svg') no-repeat;
	background-size: 21px auto;
	right: 6px;
}
.more-btn p {
	font-size: 15px;
	color: #fff;
	text-align: center;
}


/* リンクについて */
.link-caution{
	background: #f7f7f7;
	padding: 20px;
}
.link-text-box{
	margin-bottom: 60px;
}
.link-caution li:not(:last-of-type){
	margin-bottom: 12px;
}
.link-caution li{
	position: relative;
	font-size: 15px;
	padding-left: 16px;
}
.link-caution li:before{
	content: "";
	width: 6px;
	height: 6px;
	position: absolute;
	top: 8px;
	left: 0;
	background:#333;
	border-radius: 50%;
}
.bnr-items:not(:last-of-type){
	margin-bottom: 40px;
}
.bnr-items .bnr-size-text{
	font-size: 15px;
	font-weight: bold;
	margin-bottom: 10px;
}
.bnr-items .bnr-image{
	display: block;
	line-height: 0;
	margin-bottom: 10px;
}
.bnr-items .bnr-code{
	font-size: 15px;
	padding: 5px;
	border: solid 1px #e7e7e7;
}
.bnr-code pre{
	display: flex;
	white-space: pre-wrap;
 word-break: break-all;
}

code{
	font-family: "Noto Sans JP","メイリオ", "Meiryo", verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
}


.marker { /* 2023-12追加  */
	background-color: yellow;
}

/* ここまで */


/* 基本情報 2024-09追加 ▼ ここから ▼ --------------- */
.shop-header {
	padding: 1rem 20px;
}
.shop-box .shop-header h3 {
	margin-bottom: 0;
/* テキストを1行化＆3点リーダーで省略 2025-10追加 ▼ ここから ▼ ----- ----------*/
   white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
/* テキストを1行化＆3点リーダーで省略 2025-10追加 ▲ ここまで ▲ --------------- */
}
/* .shop-box-main {
	padding-top: 0;
} */
.shop-box-main .shop-base-info {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	height: 74px;
	max-height: 74px;
	/* margin-bottom: 15px; */ /* 2025-10修正 */
	margin-bottom: 0; /* 2025-10追加 */
	font-size: 0;
	vertical-align: bottom;
}
.shop-box-main .shop-base-info .shop-info-list {
	/* display: inline-block; */
	width: 50%;
	height: 37px;
	max-height: 37px;
	/* border-right: 1px solid #E94D37; */
	/* border-bottom: 1px solid #E94D37; */
	padding-right: 1rem;
	padding-left: 1rem;
	font-size: 13px;
	line-height: 37px;
	vertical-align: bottom;
}
/* .shop-box-main .shop-base-info .shop-info-list:nth-child(odd) {
	border-left: 1px solid #E94D37;
} */
/* .shop-box-main .shop-base-info .shop-info-list:first-child,
.shop-box-main .shop-base-info .shop-info-list:nth-child(2) {
	border-top: 1px solid #E94D37;
} */
.shop-box-main .shop-title-icon {
	position: relative;
	padding-left: 28px !important;
	/* font-size: 14px; */
}
.shop-box-main .shop-title-icon:before {
	content: "";
	width: 22px;
	height: 22px;
	display: block;
	position: absolute;
	top: 8px;
	left: 0;
}
	/* 料金 */
.shop-box-main .shop-title-icon.shop-price:before {
	background: url("../images/icon/icon_shop_price.svg") no-repeat left top;
	background-size: contain;
}
/* 営業時間 */
.shop-box-main .shop-title-icon.shop-time:before {
	background: url("../images/icon/icon_shop_time.svg") no-repeat left top;
	background-size: contain;
}
/* 店舗カテゴリー */
.shop-box-main .shop-title-icon.shop-categorys:before {
	background: url("../images/icon/icon_shop_category.svg") no-repeat left top;
	background-size: contain;
}
/* 電話番号 */
.shop-box-main .shop-title-icon.shop-tel:before {
	background: url("../images/icon/icon_tel.svg") no-repeat left top;
	background-size: contain;
}
/* 基本情報 2024-09追加 ▲ ここまで ▲ --------------- */

/* 女の子を表示 2024-09追加 ▼ ここから ▼ --------------- */
.shop-box-main .shop-ph {
	width: 200px;
	height: auto;
}
.shop-box-main .shop-ph a {
	width: 100%;
	height: auto;
	/* border: 1px solid #E94D37; */ /* ガイド */
}
.shop-girls-ph-wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	width: calc(100% - 40px);
	/* padding: 0 20px 20px; */
	/* margin-top: -10px; */
	margin: 0 0 19px 20px;
}
/* .shop-text_sp {
	display: none;
} */
.shop-box-main .shop-text {
	width: calc(100% - 200px);
}
.shop-girls-ph-wrap .girls-ph {
	width: calc(100% / 5);
	/* margin-left: 5px; */
}
.shop-girls-ph-wrap .girls-ph:last-child {
	margin-right: 0;
}
.shop-girls-ph-wrap .girls-ph img {
	width: 100%;
	/* margin-right: 5px; */
	/* margin-left: 5px; */
	object-fit: cover;
	/* aspect-ratio: 1 / 1; */
	vertical-align: bottom;
	/* border: 1px solid #E94D37; */
}
/* .shop-girls-ph-wrap .girls-ph:not(:first-child) img {
	border-left: none;
} */
.is_pc {
	display: block !important;
}
.is_sp {
	display: none !important;
}
/* 女の子を表示 2024-09追加 ▲ ここまで ▲ --------------- */

@media (max-width: 1048px){
	.second-cotainer{
		width: 100%;
		padding: 0 15px;
	}

	.second-cotainer.t-cotainer{
		padding: 60px 15px;
	}

	.second-cotainer.c-cotainer{
		padding-bottom: 60px;
	}

	.l-breadcrumb .cotainer{
		padding: 0 15px;
	}

	.second-category-box .category-block li{
		width: 31.86666666666667%;
    margin-right: 2.2%;
	}

	.second-category-box .category-block li:nth-of-type(4n){
		margin-right: 2.2%;
		margin-top: 2.2%;
	}

	.second-category-box .category-block li:nth-of-type(3n){
		margin-right: 0;
	}

	.second-category-box .category-block li:nth-of-type(n + 5){
		margin-top: 2.2%;
	}

	.second-category-box .title-box .f-hels-t{
		font-size: 14px;
	}

	.contact-button-wrap .button-base.return-button{
		margin-right: 12px;
	}

	.sitemap-wrap ol li{
		width: 31.86490455212922%;
		margin-right: 2.20264317180617%;
	}

	.sitemap-wrap ol li:nth-child(n + 4){
		margin-top: 2.20264317180617%;
	}

	.shop-header, .shop-box-main{
		padding: 15px;
	}


	.shop-box-main .shop-ph{
		/*width: 47.05882352941176%;*/
		width: 288px;
		height: 288px;
	}
	.shop-box-main .shop-ph a{
		width: 288px;
		height: 288px;
	}

	.shop-box-main .shop-text{
		width: calc(100% - 288px);
		padding-left:15px;
	}

	.shop-box-main .shop-text .category-box{
		margin-bottom: 15px;
	}

	.shop-wrap h3,
	.shop-wrap h2{
		margin-bottom: 15px;
	}
	.publication .click-here,
	.media-materials{
		width: 80%;
		margin: 0 auto;
	}
	.publication .click-here{
		margin: 0 auto;
	}
	.publication-style h2{
		margin-bottom: 16px;
	}
	.publication-flow.publication-style h2{
		margin-bottom: 30px;
	}

	/* リンクについて */
	.bnr-items:not(:last-of-type){
		margin-bottom: 30px;
	}


/* 女の子を表示 2024-09追加 ▼ ここから ▼ --------------- */
	.shop-box-main .shop-text-inner {
		display: block;
	}
	.shop-box-main .shop-ph {
		display: inline-block;
		width: calc(70px + 16px + 2.5rem);
	}
	.shop-box-main .shop-ph a {
		width: 100%;
		height: calc(70px + 16px + 2.5rem);
	}
	.shop-box-main .shop-text {
		display: inline-block;
		width: calc(100% - calc(70px + 16px + 2.5rem));
		padding-left: 13px;
	}
	.shop-girls-ph-wrap {
		width: calc(100% - 30px);
		margin: 0 0 15px 15px;
	}
/* 女の子を表示 2024-09追加 ▲ ここまで ▲ --------------- */



}





@media (max-width: 899px){
	.l-breadcrumb{
		margin-bottom: 10px;
	}
	.second-h-nav .open .nav-inner{
		width: 100%;
		margin-left: inherit;
	}

	.publication.second-cotainer.c-cotainer{
		padding-bottom: 24px;
	}

	.second-h-nav .drawer-nav a{
		width: 100%;
	}

	.second-h-nav .drawer-nav .n-sitemap{
		display: block;
	}

	/* パンくずリスト */
	.l-breadcrumb .breadcrumb{
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		/*overflow-scrolling: touch;*/
		overflow: auto;
		white-space: nowrap;
		/* スクロールバー非表示 */
		-ms-overflow-style: none;    /* IE, Edge 対応 */
    scrollbar-width: none;       /* Firefox 対応 */
	}

	.l-breadcrumb .breadcrumb::-webkit-scrollbar {
		/* Chrome, Safari 対応 */
		display:none;
	}

	.l-breadcrumb .cotainer{
		padding-right: 0;
	}

	.second-main{
		height: 240px;
	}

	.h-second{
		padding-bottom: 10px;
	}

	.second-h-nav{
		border-top: 0;
		border-bottom:0;
		margin-top: 0;
	}

	.second-main h2{
		font-size: 32px;
	}

	.main-wrap{
		width: calc(100% - 280px);
	}

	.second-side-wrap{
		width: 250px;
	}

	.common-style h2:before {
    width: 40px;
	}

	.column-wrap .column-ph{
		width: 240px;
	}

	.column-wrap .column-box{
		margin-bottom: 15px;
		padding-bottom: 15px;
	}

	.column-wrap .column-text{
		width: calc(100% - 240px);
    padding-left: 12px;
	}

	.column-text-box time{
		display: block;
		font-size: 12px;
		margin-bottom: 4px;
	}

	.contact-button-wrap{
		margin-top: 20px;
	}

	.sitemap-wrap h3{
		font-size: 20px;
	}

	.contact-form-completely .button-base{ margin-top: 16px; }

	.sitemap-wrap ol li{
		width: 31.52501506931887%;
		margin-right: 2.7124773960217%;
	}

	.sitemap-wrap ol li:nth-child(n + 4){
		margin-top: 2.7124773960217%;
	}

	.sitemap-wrap ol li a{
		padding: 10px 12px;
	}

	.sitemap-wrap ol li a:before{
		top: 18px;
	}

	.shop-wrap h3,
	.shop-wrap h2{
		font-size: 22px;
	}

	.shop-box-main .shop-ph{
		display: flex;
		/*width: 46.2%;
		height: 100%;*/
		width: 234px;
		height: 234px;
	}
	.shop-box-main .shop-ph a{
		width: 234px;
		height: 234px;
	}
	.shop-box-main .shop-text{
		/*width: calc(100% - 46.2%);*/
		width: calc(100% - 234px);
		padding-left:13px;
	}
	.publication-wrap{
		padding: 15px 0;
		margin-bottom: 30px;
	}

	.second-cotainer.t-cotainer{
		padding: 45px 15px;
	}
	.second-cotainer.c-cotainer{
		padding-bottom: 45px;
	}
	.publication .click-here{
		padding: 30px;
	}
	.publication .click-here p,
	.media-materials h2,
	.publication-style h2{
		font-size: 24px;
	}
	.form-item .form-title br{display: block;}
	.p-flow-wrap{
		width: 100%;
		justify-content: space-between;
		margin-left: inherit;
	}
	.p-flow-box{
		width: calc(33.33333% - 30px);
		margin: 0;
		padding: 20px;
	}
	.p-flow-box:not(:last-of-type):after{
		right: -38px;
	}
	.p-flow-number{
		font-size: 38px;
	}
	.p-flow-ph{
		width: 112px;
		height: 112px;
		margin-bottom: 16px;
	}
	.p-flow-box h3{
		font-size: 18px;
	}
	.publication-style h2:after{
		bottom: -2px;
	}

	

/* 公式HP 2024-10追加 ▼ ここから ▼ --------------- */
	.shop-hp-link {
		opacity: 1;
		background-color: transparent;
	}
	.shop-ph a .shop-hp-link p{
		opacity: .6;
	}
/* 公式HP 2024-10追加 ▲ ここまで ▲ --------------- */



}



@media (max-width: 768px){
	.second-cotainer.t-cotainer{
		padding: 30px 15px;
	}

	.main-wrap{
		width: 100%;
	}

	.second-side-wrap{
		width: 100%;
		margin-left: inherit;
	}

	.second-side-wrap{
		margin-top: 30px;
	}

	.l-text-style p,
	.common-style p{
		margin-bottom: 24px;
	}

	.second-category-box .category-block li{
		width: 31.97831978319783%;
    margin-right: 1.72612197928654%;
	}

	.second-category-box .category-block li:nth-of-type(4n){
		margin-right: 1.72612197928654%;
		margin-top:1.72612197928654%;
	}

	.second-category-box .category-block li:nth-of-type(3n){
		margin-right: 0;
	}

	.second-category-box .category-block li:nth-of-type(n + 5){
		margin-top: 1.72612197928654%;
	}

	.contact-button-wrap{
		margin-top: 15px;
	}

	.sitemap-wrap ol li{
		width: 31.97831978319783%;
		margin-right: 2.03252032520325%;
	}

	.sitemap-wrap ol li:nth-child(n + 4){
		margin-top: 2.03252032520325%;
	}

	.shop-box-main .shop-ph {
		width: 280px;
		height: 280px;
	}
	.shop-box-main .shop-text {
		width: calc(100% - 280px);
	}
	.shop-box-main .shop-ph a{
		display: flex;
		align-items: center;
		width: 280px;
		height: 280px;
	}
	.shop-box-main .shop-ph a img{
		width: 100%;
	}


	.shop-header h4{
		font-size: 18px;
	}

	.other-shop-box .shop-header h4,
	.other-shop-box .shop-header h3{font-size: 16px;}

	.contact-form{
		margin-bottom: 30px;
	}

	/* リンクについて */
	.link-text-box{
		margin-bottom: 45px;
	}
	.link-caution{
		padding: 15px;
	}
	.link-caution li:not(:last-of-type){
		margin-bottom: 10px;
	}
	.bnr-items:not(:last-of-type){
		margin-bottom: 24px;
	}


}



@media (max-width: 599px){
	.second-main{
		height: 180px;
	}

	.second-main h2{
		font-size: 23px;
		margin-bottom: 0;
	}

	.second-main.detail-main h2{
		font-size: 23px;
		margin-bottom: 0;
	}

	.l-text-section{
		margin-top: 30px;
	}

	.column-wrap .column-ph{
		width: 38.54166666666667%;
	}

	.column-wrap .column-text{
		width: calc(100% - 38.54166666666667%);
	}

	.column-text-box time{
		font-size: 11px;
	}

	.column-wrap .column-text{
		padding-left: 10px;
	}

	.column-wrap .category-box.shop-tag-wrap{
		margin-top: 10px;
	}

	.pager-wrap{
		margin-top: 24px;
	}

	.pager-wrap li:nth-of-type(5){
		display: none;
	}

	/* サイドアコーディオン */
	.ac-sbox + .side-ac-style{
		display: none;
		opacity: 0;
	}

	.ac-sbox.open + .side-ac-style{
		display: block;
		opacity: 1;
	}

	.second-side-wrap .side-acbox.side-box:not(:last-of-type){
		margin-bottom: 0;
	}

	.second-side-wrap .side-acbox.side-box:last-of-type h2{
		border-bottom: solid 1px #E5E5E5;
	}

	.second-side-wrap .ac-sbox{
		font-size: 16px;
		position: relative;
		color:#000;
		padding: 10px 0;
		border-top: solid 1px #E5E5E5;
		margin-bottom: 0;
		pointer-events: all;
	}

	.second-side-wrap .ac-sbox:before{
		content: "";
		display: inline-block;
		position: absolute;
		top: 50.8%;
		right: 16px;
		width: 8px;
		height: 8px;
		border-right: 1px solid #E94D37;
		border-bottom: 1px solid #E94D37;
		transform: translateY(-52%) rotate(45deg);
		transition: .3s;
	}

	.second-side-wrap .ac-sbox.open:before{
		top: 52%;
		transform: translateY(-52%) rotate(-135deg);
	}

	.second-side-wrap .ac-sbox.open{
		color: #E94D37;
		margin-bottom: 0;
		border-bottom: 0!important;
	}

	.ac-sbox.open + .side-ac-style li{
		border-bottom: 0;
		position: relative;
	}


	.ac-sbox.open + .side-ac-style li::after {
			content: "";
			position: absolute;
			left: 0;
			bottom: 0;
			width: 100%;
			height: 1px;
			margin: auto;
			background-image: linear-gradient(to right, #E5E5E5, #E5E5E5 4px, transparent 4px, transparent 8px);
			background-size: 8px 1px;
			background-repeat: repeat-x;
	}

	.ac-sbox.open + .side-ac-style li:last-of-type::after {
		content: none;
	}

	.ac-sbox.open + .side-ac-style li:last-of-type{
		border-bottom: 0;
	}

	.side-acbox:last-of-type .ac-sbox.open + .side-ac-style{
		border-bottom: solid 1px #E5E5E5;
	}

	.l-text-style h3{
		font-size: 19px;
	}

	.l-text-style h4{
		font-size: 17px;
	}

	.l-text-style h5{
		font-size: 15px;
	}

	.column-main-ph{
		margin-bottom: 24px;
	}

	.common-style h2{
		font-size: 21px;
		padding-bottom:14px;
		margin-bottom:24px;
	}

	.common-style h2:before {
    width: 32px;
	}

	.common-style h3{
		font-size: 19px;
	}

	.common-style h4,
 .common-style.one-column-style h3{
		font-size:17px;
	}

	.pager-box{
		-webkit-box-orient: vertical;
  	-webkit-box-direction: reverse;
  	-ms-flex-direction: column-reverse;
		flex-direction: column-reverse;
	}

	.pager-box .link-item{
		width: 100%;
		padding: 15px 12px
	}

	.link-item.prev-link{
		padding-left: 46px;
	}

	.link-item.next-link{
		padding-right: 46px;
	}

	.link-item.prev-link:after{
		content: none;
	}

	.pager-box .link-item.next-link:before{
		content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    margin: auto;
    background-image: linear-gradient(to right, #E5E5E5, #E5E5E5 4px, transparent 4px, transparent 8px);
    background-size: 8px 1px;
    background-repeat: repeat-x;
	}

	.second-category-box .category-block li a{
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		height: 100%;
	}

	.second-category-box h3{
		font-size: 16px;
	}

	.second-category-box .category-block li .ph-box{
		width: 42px;
	}

	.second-category-box .category-block li .ph-box img{
		width: 28px;
	}

	.second-category-box .category-block .title-box{
		width: calc(100% - 52px);
	}

	.second-category-box .title-box h4,
	.second-category-box .title-box .f-hels-t{
		font-size: 13px;
		line-height: 1.4;
	}

	.second-category-box .category-block li{
		width: 48.4%;
    margin-right: 3.2%;
	}

	.second-category-box .category-block li:nth-of-type(4n){
		margin-right: inherit;
		margin-top:3.2%;
	}

	.second-category-box .category-block li:nth-of-type(3n){
		margin-right:3.2%;
	}

	.second-category-box .category-block li:nth-of-type(n + 3),
	.second-category-box .category-block li:nth-of-type(n + 5){
		margin-top: 3.2%;
	}

	.second-category-box .category-block li:nth-of-type(2n){
		margin-right: 0;
	}

	.table-style tr,
	.contact-form .form-item{
		border: solid 1px #E5E5E5;
		border-bottom: 0;
	}

	.table-style th,
	.table-style td,
	.form-item .form-title,
	.form-item .form-date{
		width: 100%;
	}

	.table-style th,
	.form-item .form-title{
		border-bottom: solid 1px #E5E5E5;
	}

	.contact-button-wrap{
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		-ms-flex-direction: column-reverse;
		flex-direction: column-reverse;
	}

	.contact-button-wrap .button-base{
		width: 80%;
		margin: 0 auto;
	}

	.contact-button-wrap .button-base.return-button{
		margin:12px auto 0 auto;
	}

	.completely-title br{ display: block; }

	.contact-form-completely p{
		text-align: left;
	}
	.form-date p{
		padding: 2px 0;
	}

	.contact-form-completely p br{ display: none; }

	.contact-form-completely .button-base{ margin-top: 15px; }

	.sitemap-wrap h3{
		font-size: 16px;
	}

	.sitemap-wrap:not(:last-of-type) {
    margin-bottom: 24px;
	}

	.sitemap-wrap ol li{
		width: 48.33333333333333%;
		margin-right: 3.33333333333333%;
	}

	.sitemap-wrap ol li:nth-child(3n){
		margin-right: 3.33333333333333%;
	}

	.sitemap-wrap ol li:nth-child(2n){
		margin-right: 0;
	}

	.sitemap-wrap ol li:nth-child(n + 3),
	.sitemap-wrap ol li:nth-child(n + 4){
		margin-top: 3.33333333333333%;
	}

	.sitemap-wrap ol li a{
		font-size: 14px;
		padding: 6px 0 6px 12px;
	}

	.sitemap-wrap ol li a:before{
		top: 15px;
	}


	.shop-wrap .shop-box:not(:last-of-type){
		margin-bottom: 15px;
	}
	.shop-wrap h3,
	.shop-wrap h2{
		font-size: 18px;
	}

	.shop-header h3{
		margin-bottom: 10px;
	}

	.shop-header h4,
	.shop-header h3{ font-size: 16px; }

	.shop-header-bottom .shop-title-icon{
		font-size: 13px;
		padding-left:24px;
		margin-top:4px;
	}

	.shop-header-bottom .shop-title-icon:before{
		width: 20px;
		height: 20px;
		top:2px;
	}

	.shop-box-main .shop-ph{
		width:100%; /*240px; /*68%;*/
		height: inherit;/*240px;*/
		margin: 0 auto 12px auto;
	}
	.shop-box-main .shop-ph a{
		width:100%; /*240px;*/
		height:inherit; /*240px; */
	}
	.shop-box-main .shop-ph a img{
		width: inherit;
	}

	.shop-box-main .shop-text{
		width: 100%;
		padding-left: 0;
	}

	/* .shop-box-main .shop-text-box{
		display: none;
		margin-bottom: 9px;
	} */
	.shop-box-main .shop-text-inner{
		width: 100%;
	}

	.shop-box-main .shop-text .category-box{
		display: none;
		margin-bottom: 0;
	}

	.shop-box-main .button-base{
		/* width: 82%; */ /* 2023-10修正 */
		margin: 0 auto;
		margin-top: 12px;
		padding-top: 0;
	}

	.other-shop-box .shop-header h4,
	.other-shop-box .shop-header h3{
		font-size: 14px;
	}
	.contact-tab-nav ul{
		margin-bottom: 26px;
	}
	.contact-tab-nav ul li span{
		font-size: 15px;
		padding: 10px;
		line-height: 1.4
	}
	.contact-tab-nav ul .active:before{
		border: 12px solid transparent;
		border-color: #e94c37 transparent transparent transparent;
		bottom: -28px;
	}

	.second-cotainer.c-cotainer{
		padding-bottom: 30px;
	}
	.publication-wrap .button-base span br{
		display:block;
	}
	.publication.second-cotainer.c-cotainer{
		padding-bottom: 15px;
		margin-bottom: 30px;
	}
	.media-materials h2,
	.publication-style h2{
		font-size: 20px;
	}
	.publication{
		width: calc(100% - 30px);
		border-top:solid 1px #E5E5E5;
		border-bottom:solid 1px #E5E5E5;
		padding: 15px;
		margin-bottom: 30px;
	}
	.publication .click-here{
		background-color: #E94D37;
		display: block;
		width: 87.6%;
		text-align: center;
		position: relative;
		padding: 8px 10px;
		line-height: 1.6;
		border-radius: 12px;
	}
	.publication .click-here p{
		color: #fff;
		font-size: 16px;
		padding-right: 0;
	}
	.publication .click-here:before{
		content: "";
		position: absolute;
		background: url('../images/icon/arrow_right.svg') no-repeat center;
		width: 33px;
		height: 6px;
		top: 50%;
		right: 10px;
		transform: translateY(-50%);
		transition: all .2s;
	}
	.publication .click-here p:before{
		content:none;
	}
	.form-item .form-title br{
		display: none;
	}

	.media-materials{
		width: 100%;
		border: solid 1px #E5E5E5;
	}
	.media-materials .button-base{
		width: 96.4%;
	}
	.p-flow-number{
		font-size: 32px;
	}
	.p-flow-box:not(:last-of-type){
		margin-bottom: 40px;
	}
	.p-flow-box{
		display:-webkit-box;
  display:-ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
  flex-wrap: wrap;
		width: 100%;
		padding: 15px;
	}
	.p-flow-ph{
		width: 110px;
		height: 110px;
		margin: 0;
	}
	.p-flow-text{
		width: calc(100% - 110px);
		padding-left: 15px;
	}
	.p-flow-box h3{
		font-size: 16px;
		margin-bottom: 6px;
		text-align: left;
	}
	.p-flow-box:not(:last-of-type):after{
		width: 20px;
		height: 20px;
		top: inherit;
		right: 50%;
		bottom: -30px;
		transform: rotate(90deg);
	}
	.contact-form h3{
		font-size: 16px;
		margin-bottom: 10px;
	}
	.contact-form{
		margin-bottom: 30px;
	}
	/*
	.contact-form:not(:last-of-type){
		margin-bottom: 30px;
	}*/
	.form-ul li{
		width: calc(33.33333% - 16px);
	}

	/* 店舗一覧、クーポン追加 */
	.shop-coupon-box .shop-tiket-wrap{
		padding:10px;
	}
	.shop-coupon-box{
		background-size: 70px;
	}
	.shop-coupon-box .off-box{
		width: 86px;
		height: auto;
		justify-content: center;
	}
	.shop-coupon-box .off-number-box{
		justify-content:inherit;
	}
	.shop-coupon-box .tiket-inner{
		width: calc(100% - 86px);
	}

	.superior-shop .shop-tile-word i{
		width: 64px;
    height: 86px;
    top: -14px;
    left: 15px;
	}
	.superior-shop .shop-tile-word h3{
		width: calc(100% - 70px);
		padding-right: 0;
	}
	.shop-coupon-header,
	.superior-shop .shop-box-main .shop-text-inner{
		display: none;
	}
	.superior-shop .shop-box-main .shop-ph{
		width: 38.4%;
    margin-bottom: 0;
	}
	.superior-shop .shop-box-main .shop-text{
		width: 61.6%;
    padding-left: 10px;
	}
	.shop-text .shop-header-bottom{
		display: block;
	}
	.superior-shop .shop-header-bottom .shop-title-icon:before {
    width: 16px;
    height: 16px;
    top: 2px;
	}
	.superior-shop .shop-header-bottom .shop-title-icon:not(:last-of-type){
		margin-bottom: 8px;
	}
	.superior-shop .shop-header-bottom .shop-price{
		font-size: 14px;
	}
	.superior-shop .shop-coupon-box{
		margin-top: 12px;
		position: relative;
	}
	.superior-shop .coupon-off-box{
		width: 46px;
    padding: 6px 3px 6px 1px;
	}
	.coupon-off-box .off-number {
    justify-content: center;
	}
	.superior-shop .coupon-off-box p {
    font-size: 18px;
    line-height: 1.2;
	}
	.superior-shop .off-number .sub {
    font-size: 11px;
    margin: 0;
		margin-left: 2px;
	}
	.superior-shop .coupon-text{
    width: calc(100% - 46px);
    padding-right: 32px;
	}
	.superior-shop .shop-coupon-box .coupon-text h4{
		font-size: 13px;
	}
	.superior-shop .more-btn {
    width: 20px;
    height: 100%;
    border-radius: 0;
    position: absolute;
    right: 0;
	}
	.superior-shop .more-btn p{
		display: none;
	}
	.superior-shop .more-btn:before{
		width: 18px;
		background-size: 18px auto;
		right: 5px;
	}
	.superior-shop .more-btn:after,
	.cupon-sec .normal-price .sub-ptext{
		display: none;
	}
	.superior-shop .cupon-sec .cupon-dis{
		padding-left: 20px;
	}
	/* ここまで */



/* 女の子を表示 2024-09追加 ▼ ここから ▼ --------------- */
	.shop-box-main {
		padding-top: 0;
	}
	.shop-box-main .shop-text-inner {
		display: block;
	}
	.shop-box-main .shop-ph {
		display: inline-block;
		width: calc(70px + 16px + 2.5rem);
		height: auto;
	}
	.shop-box-main .shop-ph a {
		width: 100%;
		aspect-ratio: 1 / 1;
		position: relative;
	}
	.shop-box-main .shop-ph a img {
		position: absolute;
		top: 0;
		left: 0;
	}
	.shop-girls-ph-wrap {
		width: calc(100% - 20px);
		/* padding: 0 10px 10px; */
		margin: 0 0 10px 10px;
	}
	.shop-girls-ph-wrap .girls-ph {
		margin-right: 5px;
		margin-left: 5px;
	}
	.shop-girls-ph-wrap .girls-ph:first-child {
		margin-left: 0;
	}
	.shop-girls-ph-wrap .girls-ph:last-child {
		margin-right: 0;
	}
	/* .shop-text_sp {
		display: inline-block;
		width: calc(100% - calc(70px + 16px + 2.5rem));
		padding-left: 13px;
	} */
	/* .shop-box-main .shop-text_sp .shop-text-box {
		display: block;
	} */
	.shop-box-main .shop-text {
		width:100%;
	}
	/* .shop-box-main .shop-text .shop-text-box {
		display: none;
	} */
	.shop-girls-ph-wrap {
		/* overflow-x: auto;
		white-space: nowrap;
		background: transparent; */
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		/* overflow: scroll; */
		overflow-x: scroll;
		align-items: center;
		/* height: 104px; */
		/* overflow: hidden; */
		padding-bottom: 5px;
	}
	.shop-girls-ph-wrap .girls-ph {
		/* display: inline-block; */
		width: calc(100% / 4);
		min-width: calc(100% / 4);
		margin-top: 0;
	}

	/* スクロールバーの見た目を変えている部分　*/
		.shop-girls-ph-wrap {
	  --sb-track-color: rgba(255,255,255, 0);
	  --sb-thumb-color: rgba(27, 27, 27, 0.4);
	  --sb-size: 8px;
	}
	
	.shop-girls-ph-wrap::-webkit-scrollbar {
	  width: var(--sb-size);
	  height: 8px;
	}
	
	.shop-girls-ph-wrap::-webkit-scrollbar-track {
	  background: var(--sb-track-color);
	  border-radius: 2px;
	}
	
	.shop-girls-ph-wrap::-webkit-scrollbar-thumb {
	  background: var(--sb-thumb-color);
	  border-radius: 2px;
	}
	
	@supports not selector(::-webkit-scrollbar) {
		.shop-girls-ph-wrap {
		  scrollbar-color: var(--sb-thumb-color)
						 var(--sb-track-color);
	  }
	}
/* ここまで */
	/* .shop-girls-ph-wrap .girls-ph:nth-child(5) {
		display: none;
	} */
	.main-wrap .shop-box {
		position: relative;
	}

	
	.second-cotainer {
		padding-right: 0;
		padding-left: 0;
	}
	.shop-wrap h2{
		padding-right: 15px;
		padding-left: 15px;
	}

	.shop-header {
		padding-right: 10px;
		padding-left: 122px;
	}
	.other-shop-box .shop-header {
		padding-left: 10px;
	}
	.shop-box-main {
		padding-right: 10px;
		padding-left: 10px;
		width: 100%; /* 2025-10追加 */
	}
	.shop-box-main .shop-ph {
		width: 102px;
		margin-bottom: 0;
		position: absolute;
		top: 15px;
		left: 10px;
	}
	.shop-box-main .shop-text {
		height: 60px;
	}
	.shop-box-main .shop-base-info {
		height: 60px;
		max-height: 60px;
		padding-left: 112px;
		margin-bottom: 0;
	}
	.shop-box-main .shop-base-info .shop-info-list {
		height: 30px;
		max-height: 30px;
		padding-right: .5rem;
		padding-left: .5rem;
		line-height: 30px;
	}
	.shop-box-main.is_sp {
		padding-top: 5px;
		width: 100%; /* 2025-10追加 */
	}
	.shop-box-main .shop-text-box p.s-message { /* 2025-10追加 */
		font-size: 15px;
	}
	.second-side-wrap {
		padding-right: 15px;
		padding-left: 15px;
	}
	.is_pc {
		display: none !important;
	}
	.is_sp {
		display: block !important;
	}
/* 女の子を表示 2024-09追加 ▲ ここまで ▲ --------------- */


}



@media (max-width: 340px){
	.sitemap-wrap ol li a {
		padding-left: 10px;
	}

	.sitemap-wrap ol li a:before{
		width: 5px;
		height: 5px;
	}
	/*
	.shop-box-main .shop-ph{
		width:220px;
		height: 220px;
	}
	.shop-box-main .shop-ph a{
		width:220px;
		height: 220px;
	}
	*/

	/* 店舗一覧、クーポン追加 */
	.shop-coupon-box .off-box{
		width: 52px;
		padding: 6px 3px;
	}
	.shop-coupon-box .tiket-inner{
		width: calc(100% - 52px);
	}
	.shop-coupon-box .price-time span{
		font-size: 20px;
	}
	/* ここまで */

}
