body {
	overscroll-behavior: none;
}

/*スマホ最適化*/
@media only screen and (max-width: 767.9px) {

	/*============================
#main_selector
============================*/
	.top_fixed {
		position: fixed;
		width: 100%;
		background-color: rgba(255, 255, 255, .7);
		border-bottom: 4px solid #F3F3F3;
		top: 54.3px;
		z-index: 1;
		transform: translateY(-100%);
		transition: transform 0.3s ease;
	}

	.top_fixed.show {
		transform: translateY(0);
	}

	section#main_selector {
		margin: 12px 0;
		text-align: center;
	}

	section#main_selector div.inner {
		display: inline-block;
	}

	section#main_selector div.inner ul {
		display: grid;
		gap: 15px;
		grid-template-columns: repeat(2, 165px);
	}

	section#main_selector div.inner ul li {
		text-align: center;
		border-radius: 8px;
		border: 1px solid #ccc;
		background-color: #fff;
	}

	section#main_selector div.inner ul li.active {
		background: linear-gradient(to right, #ab3a9d 0%, #e7407b 51.6%, #ff833d 76.98%, #fe963e 100%);
		font-family: "A-OTF-ShinGoPro-Medium";
		border: none;
	}

	section#main_selector div.inner ul li a {
		font-size: 16px;
		display: block;
		color: #000;
		padding: 7px 0;
	}

	section#main_selector div.inner ul li.active a {
		color: #fff;
	}

	/*============================
#sub_selector
============================*/
	.middle_fixed {
		margin-top: 25px;
	}

	.middle_fixed section#sub_selector {
		background-color: #fff;
		padding: 0;
		height: auto;
		margin: 12px 0;
	}

	.middle_fixed section#sub_selector div.inner ul li {
		width: 155px;
		border-radius: 8px;
		margin-bottom: 0;
		display: inline-block;
		height: 32px;
	}

	section#sub_selector {
		background-color: #F3F3F3;
		text-align: center;
	}

	section#sub_selector div.inner {
		display: inline-block;
	}

	section#sub_selector div.inner ul {
		display: inline-block;
		width: var(--content-width);
		box-sizing: border-box;
	}

	section#sub_selector div.inner ul.sub2 {
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.slick-initialized {
		white-space: nowrap;
		display: flex;
		max-width: none !important;
	}

	.slick-track {
		display: flex !important;
	}

	section#sub_selector div.inner ul li {
		display: block;
		width: 80px;
		min-width: 61px;
		border: 1px solid #CCC;
		padding: 0 10px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
    background-color: #fff;
    margin: 10px 7px;
		box-sizing: border-box;
		height: 32px;
	}

	.slick-slide {
  	min-width: fit-content !important;
		width: auto !important;
		display: block !important;
	}

	section#sub_selector div.inner ul li.active {
		background-color: #DB2888;
		color: #fff;
		font-weight: 600;
		border: none;
	}

	section#sub_selector div.inner ul li a {
		line-height: 23px;
		display: block;
		color: #000;
		height: 32px;
		padding-top: 3px;
		font-size: 15px;
	}

	section#sub_selector div.inner ul li.active a {
		color: #fff;
	}

	/*============================
#sns_modal
============================*/
	section#sns_modal {
		margin-top: 36px;
	}

	section#sns_modal div.inner h3.A-OTF-ShinGoPro-Light01 {
		margin-bottom: 24px;
	}

	section#sns_modal div.inner ul {
		width: var(--content-width);
		margin: 0 auto;
		margin-top: 6px;
		display: grid;
		row-gap: 6px;
		column-gap: 6px;
		grid-template-columns: repeat(3, 112px);
	}

	section#sns_modal div.inner ul li {
		cursor: pointer;
	}

	section#sns_modal div.inner ul li img {
		height: 112px;
		width: 112px;
		object-fit: cover;
	}

	.almanach02_view_button {
		cursor: pointer;
	}

	/*============================
#cast_ranking #shop_ranking
============================*/
	section.area_layout01 {
		margin-top: 58px;
	}

	section.area_layout01 div.inner div.top {
		text-align: center;
		margin-top: 24px;
	}

	section.area_layout01 div.inner div.top div.selector {
		display: inline-block;
	}

	section.area_layout01 div.inner div.top div.selector ul {
		display: grid;
		row-gap: 0px;
		column-gap: 0px;
		grid-template-columns: repeat(2, 132px);
	}

	section.area_layout01 div.inner div.top div.selector ul li {
		text-align: center;
		font-size: 16px;
		font-family: almanach, sans-serif;
		font-weight: 300;
		color: #000;
		padding-bottom: 12px;
	}

	section.area_layout01 div.inner div.top div.selector ul li.active {
		color: #FF833D;
		border-bottom: 2px solid #FF833D;
	}

	.new_line {
		display: block;
	}

	section.area_layout01 div.inner div.top div.rank {
		display: inline-block;
		margin-top: 30px;
	}

	section.area_layout01 div.inner div.top div.rank ol {
		display: grid;
		row-gap: 0px;
		column-gap: 15px;
		grid-template-columns: repeat(3, 106px);
	}

	section.area_layout01 div.inner div.top div.rank ol li img {
		width: 140%;
		margin: 0 -40%;
	}

	section.area_layout01 div.inner div.bottom {
		text-align: center;
		margin-top: 3px;
	}

	section.area_layout01 div.inner div.bottom div.wrap {
		display: inline-block;
	}

	section.area_layout01 div.inner div.bottom div.wrap ul {
		display: grid;
		row-gap: 0px;
		column-gap: 15px;
		grid-template-columns: repeat(3, 106px);
		height: 167px;
		overflow: hidden;
	}

	section.area_layout01 div.inner div.bottom div.wrap ul li div.thum_img img {
		object-fit: cover;
		height: 106px;
	}

	section.area_layout01 div.inner div.bottom div.wrap ul li h4.entry-title {
		margin-top: 6px;
		margin-bottom: 11px;
	}

	section.area_layout01 div.inner div.bottom div.wrap ul li h4.entry-title a {
		font-size: 12px;
		color: #B738B3;
		text-decoration: underline;
	}

	section.area_layout01 div.inner div.bottom div.wrap ul li h5 {
		font-size: 8px;
	}

	section.area_layout01 div.inner div.bottom div.wrap ul li h6 {
		margin-top: 5px;
		font-size: 8px;
	}
}
