@charset "UTF-8";
/* =========================================================

PCページ別スタイル

========================================================= */
/* トップページ
--------------------------------------- */
/* メインビジュアル */
.lens_index .main_visual {
	margin-top: 32px;
}
.lens_index .main_visual .swiper-slide {
	width: 480px !important;
	text-align: center;
}
.lens_index .main_visual .swiper-slide img {
	border-radius: 16px;
}
.lens_index .main_visual .swiper-button-prev {
	top: calc(50% - 20px);
	left: 5%;
}
.lens_index .main_visual .swiper-button-next {
	top: calc(50% - 20px);
	right: 5%;
}

/* BANNER */
.lens_index .banners .aui_banner:last-child {
	margin-bottom: 0;
}

/* SEARCH */
.lens_index .serach_sec {
	padding: 0 0 66px 0;
	font-weight: 700;
}

/* RANKING */
.lens_index .ranking_sec {
	overflow: hidden;
	padding: 0 0 56px 0;
}
.lens_index .ranking_sec .aui_title_02 {
	margin-top: 0;
}

/* RECOMMEND */
.lens_index .rcmd_sec {
	overflow: hidden;
	padding: 0 0 56px 0;
}
.lens_index .rcmd_carousel_wrapper {
	overflow: hidden;
	padding: 0 20px;
}
.lens_index .rcmd_carousel_wrapper .aui_swiper {
	overflow: visible;
}
.lens_index .rcmd_carousel_wrapper .swiper-button-prev {
	top: 110px;
	left: -20px;
}
.lens_index .rcmd_carousel_wrapper .swiper-button-next {
	top: 110px;
	right: -20px;
}

/* TOPICS */
.lens_index .topics_sec {
	padding: 0 0 66px 0;
}

/* NEWS */
.lens_index .news_sec {
	overflow: hidden;
	padding: 0 0 66px 0;
}

/* ABOUT */
.lens_index .about_sec {
	padding: 0 0 0 0;
}
.lens_index .about_head_title {
	margin: 55px 0 15px;
	text-align: center;
}
.lens_index .about_head_text {
	margin-bottom: 95px;
}
.lens_index .brand_list > li {
	padding: 10px 0 30px;
}
.lens_index .brand_list > li + li {
	padding-top: 40px;
	border-top: 1px solid #D5D5D5;
}
.lens_index .brand_list .brand_name img {
	height: 28px;
}
.lens_index .brand_product_list {
	display: flex;
	flex-wrap: wrap;
	margin-top: 5px;
}
.lens_index .brand_product_list > li {
	width: 25%;
	padding-top: 20px;
	padding-right: 30px;
	font-size: 1.3rem;
	line-height: 1.6;
}
.lens_index .brand_product_list > li:nth-child(4n) {
	padding-right: 0;
}

/* 動画アコーディオン */
.lens_index .movie_acd .aui_accordion_title {
	margin: 0;
	padding: 0;
	border: 0;
	background-color: transparent;
}
.lens_index .movie_acd .aui_accordion_title::before,
.lens_index .movie_acd .aui_accordion_title::after {
	display: none;
}
.lens_index .movie_acd .aui_accordion_content {
	position: relative;
	width: 100%;
	margin: auto;
	padding: 56.25% 0 0 0;
}
.lens_index .movie_acd .aui_accordion_content iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}

/* メガネページ 共通パーツ
--------------------------------------- */
.glasses_cmn .p_glasses_btn01 {
	position: relative;
	margin: 28px 0 0;
	padding: 0;
}
.glasses_cmn .p_glasses_btn01:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 12px;
	-webkit-transform: translate(0, -50%);
	        transform: translate(0, -50%);
	width: 24px;
	height: 24px;
	border: 1px solid #ffffff;
	border-radius: 100%;
	z-index: 2;
	box-sizing: border-box;
}
.glasses_cmn .p_glasses_btn01_btn {
	position: relative;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: bold;
	font-size: 18px;
	line-height: 1.5;
	letter-spacing: 0.02em;
	display: block;
	background-color: #0097e7;
	color: #fff;
	padding: 14px;
	margin: 0;
	text-align: center;
}
.glasses_cmn .p_glasses_btn01_btn:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 18px;
	-webkit-transform: translate(0, -50%);
	        transform: translate(0, -50%);
	height: 1px;
	width: 12px;
	background-color: #fff;
	box-sizing: border-box;
}
.glasses_cmn .p_glasses_btn01_btn:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 19px;
	width: 7px;
	height: 7px;
	border: 1px solid #fff;
	-webkit-transform: translate(0, -50%) rotate(45deg);
	        transform: translate(0, -50%) rotate(45deg);
	border-left: 0;
	border-bottom: 0;
	box-sizing: border-box;
}
.glasses_cmn .p_glasses_marquee {
	width: 100%;
	height: 56px;
	background-repeat: repeat-x;
	background-size: auto 100%;
	background-position: 0 0;
	border: 1px solid #0097e7;
	border-right: 0;
	border-left: 0;
}
.glasses_cmn .p_glasses_marquee.is_all {
	-webkit-animation: glasses_marquee_animate_all 3s linear infinite;
	        animation: glasses_marquee_animate_all 3s linear infinite;
	background-image: url(/img/glasses/cmn/marquee_basic_smart_active.jpg);
}
.glasses_cmn .p_glasses_marquee.is_basic {
	-webkit-animation: glasses_marquee_animate_basic 0.95s linear infinite;
	        animation: glasses_marquee_animate_basic 0.95s linear infinite;
	background-image: url(/img/glasses/cmn/marquee_basic.jpg);
}
.glasses_cmn .p_glasses_marquee.is_smart {
	-webkit-animation: glasses_marquee_animate_smart 1.05s linear infinite;
	        animation: glasses_marquee_animate_smart 1.05s linear infinite;
	background-image: url(/img/glasses/cmn/marquee_smart.jpg);
}
.glasses_cmn .p_glasses_marquee.is_active {
	-webkit-animation: glasses_marquee_animate_active 1.058s linear infinite;
	        animation: glasses_marquee_animate_active 1.058s linear infinite;
	background-image: url(/img/glasses/cmn/marquee_active.jpg);
}
.glasses_cmn .p_glasses_wide_sup {
	margin: 32px 0 0;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}
.glasses_cmn .p_glasses_wide_sup_txt {
	display: block;
	font-size: 14px;
	color: #222222;
	line-height: 1.8;
}
.glasses_cmn .p_glasses_wide_sup_img {
	margin: 0 14px 0 0;
	width: 49px;
}
.glasses_cmn .p_glasses_wide_sup_img img {
	display: block;
	margin: 0;
	padding: 0;
}
.glasses_cmn .p_glasses_point {
	background-color: #0097e7;
	padding: 78px 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
.glasses_cmn .p_glasses_point_ttl {
	font-family: "Zen Kaku Gothic New", sans-serif;
	padding: 0;
	margin: 0;
	line-height: 1.5;
	letter-spacing: 0.06em;
	font-size: 30px;
	font-weight: bold;
	color: #fff;
	text-align: center;
}
.glasses_cmn .p_glasses_point_list {
	margin: 30px 0 0;
}
.glasses_cmn .p_glasses_point_list_item {
	font-family: "Zen Kaku Gothic New", sans-serif;
	margin: 14px 0 0;
	padding: 0;
	line-height: 1.5;
	letter-spacing: 0.07em;
	font-size: 22px;
	font-weight: 500;
	color: #fff;
	counter-increment: num_counter;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
}
.glasses_cmn .p_glasses_point_list_item:first-of-type {
	margin-top: 0;
}
.glasses_cmn .p_glasses_point_list_item:before {
	font-family: "Bricolage Grotesque", sans-serif;
	content: counter(num_counter, decimal-leading-zero);
	display: block;
	color: #0097e7;
	background-color: #fff;
	border-radius: 100%;
	width: 36px;
	height: 36px;
	font-size: 18px;
	line-height: 1;
	letter-spacing: 0.06em;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
}
.glasses_cmn .p_glasses_point_list_item_in {
	flex: 1;
	margin-left: 0.5em;
}
.glasses_cmn .p_glasses_layoutbox01 {
	border-top: 1px solid #0097e7;
	border-bottom: 1px solid #0097e7;
	background-color: #f0ece5;
	margin: 44px auto 0;
	padding: 62px 0 80px;
	display: flex;
	align-items: stretch;
	justify-content: center;
}
.glasses_cmn .p_glasses_layoutbox01_item {
	margin: 0 24px;
	padding: 0;
	width: 312px;
	display: flex;
	flex-direction: column;
}
.glasses_cmn .p_glasses_layoutbox01_ttl01 {
	position: relative;
}
.glasses_cmn .p_glasses_layoutbox01_ttl01_main {
	font-family: "Bricolage Grotesque", sans-serif;
	text-align: center;
	display: block;
	margin: 0;
	padding: 0;
	font-size: 32px;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: 0.05em;
	color: #0097e7;
}
.glasses_cmn .p_glasses_layoutbox01_ttl01_sub {
	font-family: "Zen Kaku Gothic New", sans-serif;
	margin: -0.3em 0 0;
	text-align: center;
	display: block;
	font-size: 16px;
	font-weight: 500;
	color: #0097e7;
	line-height: 1.5;
	letter-spacing: 0.06em;
}
.glasses_cmn .p_glasses_layoutbox01_ttl01_new {
	position: absolute;
	bottom: 100%;
	left: 0;
	right: 0;
	display: block;
	font-size: 22px;
	font-weight: bold;
	line-height: 1.5;
	color: #ff0000;
	letter-spacing: 0.08em;
	text-align: center;
	margin: 0;
	padding: 0;
}
.glasses_cmn .p_glasses_layoutbox01_txt01 {
	font-family: "Zen Kaku Gothic New", sans-serif;
	text-align: center;
	margin: 24px 0 0;
	padding: 0;
	line-height: 1.45;
	letter-spacing: 0;
	font-size: 22px;
	font-weight: bold;
	color: #353535;
}
.glasses_cmn .p_glasses_layoutbox01_txt01_strong {
	color: #0097e7;
}
.glasses_cmn .p_glasses_layoutbox01_txt02 {
	font-family: "Zen Kaku Gothic New", sans-serif;
	margin: 2px 0 0;
	padding: 0;
	line-height: 1.5;
	letter-spacing: 0.08em;
	text-align: center;
	font-size: 15px;
	font-weight: 500;
	color: #353535;
}
.glasses_cmn .p_glasses_layoutbox01_txt03 {
	font-family: "Zen Kaku Gothic New", sans-serif;
	margin: 20px 0 0;
	padding: 0;
	line-height: 1.5;
	letter-spacing: 0.06em;
	text-align: center;
	font-size: 22px;
	font-weight: bold;
	color: #353535;
}
.glasses_cmn .p_glasses_layoutbox01_price {
	font-family: "Bricolage Grotesque", sans-serif;
	text-align: center;
	margin: 20px 0 0;
	padding: 0;
	line-height: 1.5;
	letter-spacing: 0.06em;
	font-size: 24px;
	font-weight: bold;
	color: #353535;
}
.glasses_cmn .p_glasses_layoutbox01_price_strong {
	font-size: 26px;
}
.glasses_cmn .p_glasses_layoutbox01_price_red {
	color: #da2a2d;
}
.glasses_cmn .p_glasses_layoutbox01_price.is_pricechange {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	line-height: 1;
}
.glasses_cmn .p_glasses_layoutbox01_price.is_pricechange + * {
	margin-top: 12px;
}
.glasses_cmn .p_glasses_layoutbox01_price_inactive {
	font-size: 18px;
	letter-spacing: 0.04em;
	margin-right: 1em;
	padding: 0 0.14em;
	position: relative;
}
.glasses_cmn .p_glasses_layoutbox01_price_inactive:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	border: 1px solid #222222;
}
.glasses_cmn .p_glasses_layoutbox01_price_inactive:after {
	content: "";
	position: absolute;
	top: 50%;
	-webkit-transform: translate(0, -50%);
	        transform: translate(0, -50%);
	left: calc(100% + 0.3em);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 8.7px;
	border-color: transparent transparent transparent #222222;
}
.glasses_cmn .p_glasses_layoutbox01_price_inactive_strong {
	font-size: 20px;
}
.glasses_cmn .p_glasses_layoutbox01_mainimg {
	margin: 40px 0 0;
	padding: 0 0 0;
	display: block;
}
.glasses_cmn .p_glasses_layoutbox01_mainimg img {
	margin: 0;
	padding: 0;
	width: 100%;
	max-width: 100%;
	vertical-align: bottom;
}
.glasses_cmn .p_glasses_layoutbox01_bottom {
	margin-top: auto;
}
.glasses_cmn .p_glasses_layoutbox01.is_column01 {
	margin: 0;
	padding: 48px 0;
}
.glasses_cmn .p_glasses_layoutbox01.is_column01 .p_glasses_layoutbox01_item {
	width: inherit;
	margin: 0;
}
.glasses_cmn .p_glasses_layoutbox01.is_column01 .p_glasses_layoutbox01_ttl01_main {
	font-size: 44px;
}
.glasses_cmn .p_glasses_layoutbox01.is_column01 .p_glasses_layoutbox01_ttl01_sub {
	margin-top: -0.6em;
	font-size: 17px;
}
.glasses_cmn .p_glasses_layoutbox01.is_column01 .p_glasses_layoutbox01_mainimg {
	margin-top: 38px;
}
.glasses_cmn .p_glasses_layoutbox01.is_column01 .p_glasses_layoutbox01_mainimg img {
	width: 764px;
	display: inline-block;
}
.glasses_cmn .p_glasses_layoutbox01.is_column01 .p_glasses_layoutbox01_txt01 {
	margin-top: 36px;
	font-size: 32px;
}
.glasses_cmn .p_glasses_layoutbox01_attention {
	margin-top: 20px;
	text-align: center;
}
.glasses_cmn .p_glasses_layoutbox01_attention_in {
	margin: 0;
	display: inline-block;
	line-height: 1.3;
	padding: 4px 8px 1px;
	font-weight: bold;
	font-size: 18px;
	background-color: #0097e8;
	color: #fff;
	letter-spacing: 0.06em;
}
.glasses_cmn .p_glasses_layoutbox01_attention + .p_glasses_layoutbox01_price {
	margin-top: 8px;
}
.glasses_cmn .p_glasses_layoutbox01_fukidashi_point {
	position: relative;
	background-color: #d10808;
	color: #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 100px;
	padding: 4px 0 2px;
	margin: 18px 0 0;
}
.glasses_cmn .p_glasses_layoutbox01_fukidashi_point:after {
	content: "";
	position: absolute;
	top: calc(100% - 1px);
	left: 50%;
	-webkit-transform: translate(-50%, 0);
	        transform: translate(-50%, 0);
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 7px solid transparent;
	border-left: 7px solid transparent;
	border-top: 12px solid #d10808;
	border-bottom: 0;
}
.glasses_cmn .p_glasses_layoutbox01_fukidashi_point_num {
	font-family: "Roboto", sans-serif;
	font-size: 30px;
	font-weight: bold;
	line-height: 1.2;
	letter-spacing: 0.02em;
}
.glasses_cmn .p_glasses_layoutbox01_fukidashi_point_txt01 {
	font-family: "Roboto", sans-serif;
	font-size: 20px;
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: 0.02em;
}
.glasses_cmn .p_glasses_layoutbox01_fukidashi_point_txt02 {
	font-size: 18px;
	line-height: 1.2;
	letter-spacing: 0.08em;
	padding: 0 0.1em;
	font-weight: bold;
	-webkit-transform: translate(0, 0.06em);
	        transform: translate(0, 0.06em);
}
.glasses_cmn .p_glasses_layoutbox01_fukidashi_point_txt03 {
	font-size: 16px;
	line-height: 1.2;
	letter-spacing: 0.06em;
	font-weight: bold;
}
.glasses_cmn .p_glasses_layoutbox01_fukidashi_point_txt03_strong {
	font-weight: bold;
}
.glasses_cmn .p_glasses_layoutbox01_fukidashi_point + .p_glasses_layoutbox01_mainimg {
	margin-top: 24px;
}
.glasses_cmn .p_glasses_layoutbox02 {
	margin: 64px 0 0;
}
.glasses_cmn .p_glasses_layoutbox02_item {
	padding: 72px 0 80px;
	border-bottom: 1px solid #0097e7;
}
.glasses_cmn .p_glasses_layoutbox02_item:first-of-type {
	padding-top: 0;
}
.glasses_cmn .p_glasses_layoutbox02_ttl01_main {
	text-align: center;
	display: block;
	margin: 10px 0 0;
	padding: 0;
	font-size: 32px;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: 0.06em;
	color: #0097e7;
}
.glasses_cmn .p_glasses_layoutbox02_ttl01_sub {
	font-family: "Zen Kaku Gothic New", sans-serif;
	margin: 0;
	padding: 0;
	text-align: center;
	display: block;
	font-size: 18px;
	font-weight: 500;
	color: #0097e7;
	line-height: 1.5;
	letter-spacing: 0.06em;
}
.glasses_cmn .p_glasses_layoutbox02_detail {
	position: relative;
	margin-top: 38px;
	height: 480px;
	overflow: hidden;
}
.glasses_cmn .p_glasses_layoutbox02_detail_point {
	position: absolute;
	margin: 0;
	top: 0;
	left: 50%;
	-webkit-transform: translate(-50%, 0);
	        transform: translate(-50%, 0);
	bottom: 0;
	z-index: 2;
	width: 764px;
	padding: 40px 84px;
}
.glasses_cmn .p_glasses_layoutbox02_detail_point_item {
	margin: 12px 0 0;
	counter-increment: num_counter;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	padding: 0;
}
.glasses_cmn .p_glasses_layoutbox02_detail_point_item:before {
	content: "Point " counter(num_counter) ".";
	font-family: "Bricolage Grotesque", sans-serif;
	font-size: 16px;
	line-height: 1.5;
	letter-spacing: 0.05em;
	color: #fff;
	-webkit-transform: translate(0, 0.25em);
	        transform: translate(0, 0.25em);
	margin-right: 1.2em;
}
.glasses_cmn .p_glasses_layoutbox02_detail_point_item:first-of-type {
	margin-top: 0;
}
.glasses_cmn .p_glasses_layoutbox02_detail_point_item_in {
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-size: 22px;
	font-weight: bold;
	color: #fff;
	line-height: 1.5;
	letter-spacing: 0.06em;
	display: block;
}
.glasses_cmn .p_glasses_layoutbox02_detail_img {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
.glasses_cmn .p_glasses_layoutbox02_detail_img img {
	position: absolute;
	left: 50%;
	width: 100%;
	height: auto;
	min-height: 480px;
	min-width: 1920px;
	-webkit-transform: translate(-50%, 0);
	        transform: translate(-50%, 0);
}
.glasses_cmn .p_glasses_other {
	margin: 100px 0 0;
}
.glasses_cmn .p_glasses_other_body {
	margin: 56px 0 0;
	padding: 0;
}
.glasses_cmn .p_glasses_other_ttl {
	padding: 0;
	margin: 0;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-size: 28px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	letter-spacing: 0.03em;
	color: #353535;
}
.glasses_cmn .p_glasses_other_products {
	position: relative;
	display: flex;
	align-items: stretch;
	justify-content: center;
	background-color: #f0ece5;
}
.glasses_cmn .p_glasses_other_products_item {
	position: relative;
	width: 380px;
	border-right: 1px solid #0097e7;
}
.glasses_cmn .p_glasses_other_products_item:first-of-type {
	border-left: 1px solid #0097e7;
}
.glasses_cmn .p_glasses_other_products_item:before {
	content: "";
	position: absolute;
	bottom: 0;
	right: 32px;
	margin-bottom: 30px;
	width: 32px;
	height: 32px;
	border: 1px solid #0097e7;
	border-radius: 100%;
	z-index: 2;
	box-sizing: border-box;
}
.glasses_cmn .p_glasses_other_products_link {
	position: relative;
	margin: 0;
	display: block;
	padding: 54px 0 80px;
	height: 100%;
}
.glasses_cmn .p_glasses_other_products_link:before {
	content: "";
	position: absolute;
	bottom: 0;
	right: 42px;
	margin-bottom: 46px;
	height: 1px;
	width: 14px;
	background-color: #0097e7;
	box-sizing: border-box;
}
.glasses_cmn .p_glasses_other_products_link:after {
	content: "";
	position: absolute;
	bottom: 0;
	right: 43px;
	margin-bottom: 42px;
	width: 9px;
	height: 9px;
	border: 1px solid #0097e7;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
	border-left: 0;
	border-bottom: 0;
	box-sizing: border-box;
}
.glasses_cmn .p_glasses_other_products_ttl_main {
	display: block;
	font-family: "Bricolage Grotesque", sans-serif;
	font-size: 32px;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: 0.02em;
	color: #0097e7;
	text-align: center;
}
.glasses_cmn .p_glasses_other_products_ttl_sub {
	margin-top: -0.3em;
	display: block;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-size: 16px;
	font-weight: 500;
	color: #0097e7;
	text-align: center;
	line-height: 1.5;
	letter-spacing: 0.04em;
}
.glasses_cmn .p_glasses_other_products_txt {
	margin: 28px 0 0;
	text-align: center;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: bold;
	font-size: 22px;
	color: #353535;
	line-height: 1.4;
	letter-spacing: 0.03em;
}
.glasses_cmn .p_glasses_other_products_txt_strong {
	color: #0097e7;
}
.glasses_cmn .p_glasses_other_products_img {
	margin: 36px auto 0;
	padding: 0 0;
	width: 200px;
}
.glasses_cmn .p_glasses_other_products_img img {
	width: 100%;
	height: auto;
	display: block;
}
.glasses_cmn .p_glasses_product_list01 {
	display: flex;
	flex-wrap: wrap;
	margin: 0 25px;
}
.glasses_cmn .p_glasses_product_list01 li {
	width: calc((100% - 270px) / 4);
	margin: 30px 90px 0 0;
	text-align: center;
}
.glasses_cmn .p_glasses_product_list01 li:nth-child(4n) {
	margin-right: 0;
}
.glasses_cmn .p_glasses_product_list01 .thumb {
	margin-bottom: 0.5rem;
	text-align: center;
	transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.glasses_cmn .p_glasses_product_list01 .thumb img {
	max-width: 90%;
}
.glasses_cmn .p_glasses_product_list01 a:hover .thumb {
	opacity: 0.6;
}
.glasses_cmn .p_glasses_product_list01 .name {
	margin-top: 10px;
}
.glasses_cmn .p_glasses_product_list02 {
	margin: 40px auto 0;
	width: 880px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.glasses_cmn .p_glasses_product_list02_item {
	width: calc((99.9% - 40px) / 2);
}
.glasses_cmn .p_glasses_product_list02_item:nth-of-type(n+3) {
	margin-top: 40px;
}
.glasses_cmn .p_glasses_product_list02_item.is_new .p_glasses_product_list02_img01 {
	position: relative;
}
.glasses_cmn .p_glasses_product_list02_item.is_new .p_glasses_product_list02_img01:before {
	content: "NEW";
	position: absolute;
	top: 0;
	left: 0;
	background-color: #d1080c;
	font-size: 18px;
	color: #fff;
	padding: 6px 28px;
	margin: 0;
	box-sizing: border-box;
	line-height: 1;
	letter-spacing: 0.08em;
	z-index: 2;
}
.glasses_cmn .p_glasses_product_list02_img01 {
	overflow: hidden;
	border-radius: 8px;
}
.glasses_cmn .p_glasses_product_list02_btnwrap {
	margin: 20px 0 0;
}
.glasses_cmn .p_glasses_product_list02_btn {
	display: block;
	margin: 0;
	padding: 0;
}
.glasses_cmn .p_glasses_product_list02_btn_btn {
	display: block;
	border-radius: 10px;
	background-color: #0092E5;
	text-align: center;
	padding: 10px;
	border: 1px solid #0092E5;
	text-decoration: none;
}
.glasses_cmn .p_glasses_product_list02_btn_btn:visited {
	color: #fff;
}
.glasses_cmn .p_glasses_product_list02_btn_txt01 {
	transition: all 0.2s ease-in;
	margin: 0;
	line-height: 1.5;
	color: #fff;
	display: block;
	font-size: 16px;
	font-weight: 500;
}
.glasses_cmn .p_glasses_product_list02_mainimg_ttl {
	box-sizing: border-box;
	padding: 0;
	margin: 0;
	font-size: 20px;
	font-weight: 500;
	color: #000000;
	background-color: #fff;
	line-height: 1.5;
	letter-spacing: 0.08em;
	padding-top: 31.355%;
	position: relative;
}
.glasses_cmn .p_glasses_product_list02_mainimg_ttl_in {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 4px solid #000000;
}
.glasses_cmn .p_glasses_product_list02_colorname {
	font-size: 16px;
	color: #000000;
	text-align: center;
	line-height: 1.5;
	padding: 0;
	margin: 0;
}
.glasses_cmn .p_glasses_product_list02_colorname + * {
	margin-top: 14px;
}
.glasses_cmn .p_glasses_product_list02.is_type02 {
	margin-top: 66px;
}
.glasses_cmn .p_glasses_product_list02.is_type02 + .is_type02 {
	margin-top: 100px;
}
.glasses_cmn .p_glasses_product_list02.is_type02 .p_glasses_product_list02_img01 {
	border-radius: 0;
}
.glasses_cmn .p_glasses_product_list02.is_type02 .p_glasses_product_list02_item:nth-of-type(n+3) {
	margin-top: 80px;
}
.glasses_cmn .p_glasses_product_list02 .aui_swiper .swiper-button-prev::after, .glasses_cmn .p_glasses_product_list02 .aui_swiper .swiper-button-next::after {
	border-top: 1px solid #222222;
	border-right: 1px solid #222222;
}
.glasses_cmn .p_glasses_fixed_btn01 {
	position: fixed;
	z-index: 101;
	bottom: 0;
	left: 50%;
	-webkit-transform: translate(-50%, 0);
	        transform: translate(-50%, 0);
	background-color: #0097ea;
	color: #ffffff;
	display: block;
	text-align: center;
	max-width: 1040px;
	width: 80vw;
	height: 120px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0.2% 0 0;
	margin: 0;
	box-sizing: border-box;
	box-shadow: 0px 1px 12px 0px rgba(0, 0, 0, 0.4);
}
.glasses_cmn .p_glasses_fixed_btn01_in {
	position: relative;
	display: block;
	font-size: 24px;
	color: #ffffff;
	line-height: 1.5;
	letter-spacing: 0.08em;
	padding: 0 52px 0 0;
	margin: 0;
	box-sizing: border-box;
}
.glasses_cmn .p_glasses_fixed_btn01_in:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 3px;
	width: 16px;
	height: 16px;
	border-top: 4px solid #fff;
	border-right: 4px solid #fff;
	-webkit-transform: translate(0, -50%) rotate(45deg);
	        transform: translate(0, -50%) rotate(45deg);
	box-sizing: border-box;
	padding: 0;
	margin: 0;
}
.glasses_cmn .links_container {
	width: 640px;
	margin: 0 auto;
	padding: 94px 0 0;
}
.glasses_cmn .links_title {
	padding: 18px 0;
	border: 3px solid currentColor;
	color: #222222;
	font-weight: 700;
	font-size: 20px;
	line-height: 1;
	letter-spacing: 0.16em;
	text-align: center;
}
.glasses_cmn .links_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0;
}
.glasses_cmn .links_list > li {
	margin: 30px 0 0;
}
.glasses_cmn .links_list > li:first-of-type {
	margin-top: 0;
}
.glasses_cmn .links_list > li.col1 {
	width: 100%;
}
.glasses_cmn .links_list > li.col2 {
	width: 48.5%;
}
.glasses_cmn .links_list .btn {
	display: block;
	position: relative;
	padding: 24px 0;
	border-radius: 5px;
	color: #fff;
	font-size: 18px;
	line-height: 1;
	letter-spacing: 0.16em;
	text-align: center;
}
.glasses_cmn .links_list .btn::before {
	content: "";
	position: absolute;
	top: calc(50% - 6px);
	right: 20px;
	width: 11px;
	height: 11px;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}
.glasses_cmn .links_list .btn_mporder {
	background-color: #ca1a1e;
}
.glasses_cmn .links_list .btn_1day {
	background-color: #1d90ce;
}
.glasses_cmn .links_list .btn_2week {
	background-color: #0dafc2;
}
.glasses_cmn .links_list .btn_color {
	background-color: #e07075;
}
.glasses_cmn .links_list .btn_toric {
	background-color: #9369a0;
}
@-webkit-keyframes glasses_marquee_animate_all {
	from {
		background-position: 0 0;
	}
	to {
		background-position: -216px 0;
	}
}
@keyframes glasses_marquee_animate_all {
	from {
		background-position: 0 0;
	}
	to {
		background-position: -216px 0;
	}
}
@-webkit-keyframes glasses_marquee_animate_basic {
	from {
		background-position: 0 0;
	}
	to {
		background-position: -68px 0;
	}
}
@keyframes glasses_marquee_animate_basic {
	from {
		background-position: 0 0;
	}
	to {
		background-position: -68px 0;
	}
}
@-webkit-keyframes glasses_marquee_animate_smart {
	from {
		background-position: 0 0;
	}
	to {
		background-position: -77px 0;
	}
}
@keyframes glasses_marquee_animate_smart {
	from {
		background-position: 0 0;
	}
	to {
		background-position: -77px 0;
	}
}
@-webkit-keyframes glasses_marquee_animate_active {
	from {
		background-position: 0 0;
	}
	to {
		background-position: -77px 0;
	}
}
@keyframes glasses_marquee_animate_active {
	from {
		background-position: 0 0;
	}
	to {
		background-position: -77px 0;
	}
}

/* メガネトップページ
--------------------------------------- */
.glasses_index {
	line-height: 1.5;
}
.glasses_index .sec_mv {
	background-color: #e4e0d9;
}
.glasses_index .sec_mv_in {
	width: 1040px;
	margin: 0 auto;
	padding: 0;
}
.glasses_index .sec_mv_mainimg {
	margin: 0;
	padding: 0;
}
.glasses_index .sec_mv_mainimg img {
	margin: 0;
	padding: 0;
	width: 100%;
}
.glasses_index .sec_lead {
	margin: 80px 0 0;
	padding: 0;
}
.glasses_index .sec_lead_ttl01 {
	font-family: "Zen Kaku Gothic New", sans-serif;
	margin: 0;
	padding: 0;
	font-size: 30px;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: 0.04em;
	text-align: center;
	color: #353535;
}
.glasses_index .sec_lead_ttl01_strong {
	color: #0097e7;
}
.glasses_index .sec_lead_txt01 {
	margin: 30px 0 0;
	padding: 0;
	font-family: "Zen Kaku Gothic New", sans-serif;
	text-align: center;
	font-size: 18px;
	font-weight: 500;
	line-height: 2.2;
	letter-spacing: 0.06em;
	color: #353535;
}
.glasses_index .sec_lead + .p_glasses_marquee {
	margin: 68px 0 0;
}
.glasses_index .sec_series {
	margin: 48px 0 0;
	padding: 0;
}
.glasses_index .sec_series_ttl01 {
	margin: 0;
	padding: 0;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height: 1.4;
	letter-spacing: 0.06em;
	font-size: 28px;
	font-weight: bold;
	color: #0097e7;
	text-align: center;
}
.glasses_index .sec_series_leadtxt01 {
	margin: 6px 0 0;
	padding: 0;
	text-align: center;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-size: 16px;
	font-weight: 500;
	color: #353535;
	letter-spacing: 0.06em;
	line-height: 1.5;
}
.glasses_index .sec_series + .p_glasses_marquee {
	border-top: 0;
}
.glasses_index .sec_campaign {
	text-align: center;
	margin: 60px 0 95px;
}
.glasses_index .sec_campaign .aui_accordion {
	margin-top: 0;
}
.glasses_index .sec_campaign .aui_accordion_title.icon_plus::before {
	display: none;
}
.glasses_index .sec_campaign .aui_accordion_title {
	border: 2px solid #ac3535;
	border-top: none;
	background-color: #fefdf5;
	color: #ac3535;
	font-size: 20px;
	font-weight: 700;
	padding: 13px 0;
	width: 960px;
	margin: 0 auto;
}
.glasses_index .sec_campaign .aui_accordion_title .campaign_check {
	display: inline-block;
	margin-right: 20px;
	vertical-align: middle;
}
.glasses_index .sec_campaign .aui_accordion_title::after {
	content: "▼";
	position: initial;
	display: inline-block;
	background-color: initial;
	color: #ac3535;
	font-size: 0.75em;
	width: 1em;
	height: 1em;
	margin-left: 14px;
	opacity: 1;
	vertical-align: text-top;
	-webkit-transform: scale(1.2, 1);
	        transform: scale(1.2, 1);
}
.glasses_index .sec_campaign .aui_accordion_title.is_opened.icon_plus::after {
	-webkit-transform: scale(1.2, 1);
	        transform: scale(1.2, 1);
}
.glasses_index .sec_campaign .aui_accordion_content {
	border: none;
	background-color: #fefef6;
	color: #353535;
	font-size: 17px;
	font-weight: 700;
	width: 960px;
	margin: 0 auto;
}
.glasses_index .sec_campaign .campaign_text {
	margin: 11px 0 23px;
	line-height: 1.8;
	letter-spacing: 0.08em;
}
.glasses_index .sec_campaign .campaign_attend {
	font-size: 14px;
	font-weight: 700;
	margin: 2% 0 4%;
}
.glasses_index .sec_campaign .campaign_cart a {
	display: block;
	width: 320px;
	margin: 0 auto;
	line-height: 72px;
	font-size: 20px;
	background-color: #ac3535;
	color: #fff;
	border-radius: 100px;
	font-weight: 500;
}
.glasses_index .sec_campaign .campaign_cart {
	padding-bottom: 20px;
}
.glasses_index .sec_staff_snap {
	width: 100%;
	overflow: hidden;
	margin: 80px 0 0;
	padding: 0;
}
.glasses_index .sec_staff_snap_ttl01_main {
	font-family: "Bricolage Grotesque", sans-serif;
	text-align: center;
	display: block;
	margin: 0;
	padding: 0;
	font-size: 32px;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: 0.05em;
	color: #0097e7;
}
.glasses_index .sec_staff_snap_ttl01_sub {
	font-family: "Zen Kaku Gothic New", sans-serif;
	margin: -0.3em 0 0;
	text-align: center;
	display: block;
	font-size: 16px;
	font-weight: 500;
	color: #0097e7;
	line-height: 1.5;
	letter-spacing: 0.06em;
}
.glasses_index .sec_staff_snap_slider {
	margin: 44px 0 0;
	padding: 0 0 9.58%;
}
.glasses_index .sec_staff_snap_slider .swiper-wrapper {
	transition-timing-function: linear;
}
.glasses_index .sec_staff_snap_slider .swiper-slide {
	width: calc(0.4979166667 * var(--contents_width));
	padding: 0 calc(0.025 * var(--contents_width));
}
.glasses_index .sec_staff_snap_slider_img {
	display: block;
	margin: 0;
	padding: 0;
}
.glasses_index .sec_staff_snap_slider_img img {
	display: block;
	margin: 0;
	padding: 0;
}
.glasses_index .sec_staff_snap_slider_txt {
	margin: 5% 0 0;
	text-align: center;
	padding: 0;
	line-height: 1.5;
	letter-spacing: 0.06em;
	font-size: calc(0.0364583333 * var(--contents_width));
	font-weight: bold;
	color: #000000;
}
.glasses_index .sec_staff_snap_slider_txt_min {
	font-size: calc(0.0302083333 * var(--contents_width));
	letter-spacing: 0.05em;
}
.glasses_index .sec_staff_snap_slider_link {
	display: block;
	margin: 0;
	padding: 0;
}
.glasses_index .aui_accordion_content .brand_product_list {
	display: flex;
	flex-wrap: wrap;
	margin-top: 5px;
}
.glasses_index .aui_accordion_content .brand_product_list .thumb {
	display: none;
}
.glasses_index .aui_accordion_content .brand_product_list .name {
	margin: 0;
}
.glasses_index .aui_accordion_content .brand_product_list > li {
	width: 25%;
	padding-top: 20px;
	padding-right: 30px;
	font-size: 1.3rem;
	line-height: 1.6;
}
.glasses_index .aui_accordion_content .brand_product_list > li:nth-child(4n) {
	padding-right: 0;
}
.glasses_index .aui_accordion_content .brand_product_list:first-of-type > li {
	padding-top: 0;
}
.glasses_index .aui_accordion_content .brand_product_list:first-of-type > li:nth-of-type(n+5) {
	padding-top: 20px;
}

/* メガネ ベーシックシリーズ
--------------------------------------- */
.glasses_indexbasic {
	line-height: 1.5;
}
.glasses_indexbasic .sec_lead_ttl01 {
	font-family: "Zen Kaku Gothic New", sans-serif;
	margin: 52px 0 0;
	padding: 0;
	font-size: 24px;
	text-align: center;
	letter-spacing: 0.04em;
	line-height: 1.6;
}
.glasses_indexbasic .sec_lead_ttl01_strong {
	color: #0097e7;
}
.glasses_indexbasic .sec_lead_txt01 {
	font-family: "Zen Kaku Gothic New", sans-serif;
	margin: 22px 0 0;
	padding: 0;
	font-size: 18px;
	letter-spacing: 0.04em;
	line-height: 1.8;
	color: #353535;
	text-align: center;
	font-weight: 500;
}
.glasses_indexbasic .sec_lead + .p_glasses_marquee {
	margin: 70px 0 0;
}
.glasses_indexbasic .sec_products {
	margin: 38px 0 0;
	padding: 0;
	overflow: hidden;
}
.glasses_indexbasic .sec_products_in {
	width: 1040px;
	margin: 0 auto;
}
.glasses_indexbasic .sec_products_price_main {
	display: block;
	text-align: center;
	margin: 0;
	padding: 0;
	font-size: 32px;
	line-height: 1.5;
	letter-spacing: 0.06em;
	font-weight: bold;
}
.glasses_indexbasic .sec_products_price_main_strong {
	font-size: 34px;
	font-family: "Bricolage Grotesque", sans-serif;
	padding: 0;
	margin: 0;
	letter-spacing: 0.04em;
}
.glasses_indexbasic .sec_products_price_sub {
	display: block;
	padding: 0;
	margin: 0.4em 0 0;
	font-family: "Zen Kaku Gothic New", sans-serif;
	color: #353535;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0.06em;
	text-align: center;
}
.glasses_indexbasic .sec_products_bnr {
	max-width: 1040px;
	margin: 40px auto 0;
	padding: 0;
	display: block;
}
.glasses_indexbasic .sec_products_bnr img {
	display: block;
}
.glasses_indexbasic .sec_products_ttl01 {
	margin: 66px 0 0;
	padding: 0;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-size: 32px;
	line-height: 1.5;
	letter-spacing: 0.02em;
	text-align: center;
	font-weight: bold;
	color: #353535;
}
.glasses_indexbasic .sec_products_head_detail_ttl {
	text-align: center;
	font-size: 26px;
	font-weight: bold;
	color: #353535;
	line-height: 1.5;
	letter-spacing: 0.08em;
	padding: 0;
	margin: 0;
}
.glasses_indexbasic .sec_products_head_detail_txt {
	font-size: 16px;
	font-weight: 500;
	color: #353535;
	line-height: 1.8;
	text-align: center;
	padding: 0;
	margin: 42px 0 0;
}
.glasses_indexbasic .sec_products_head_detail_txt_strong {
	font-size: 18px;
	font-weight: bold;
}
.glasses_indexbasic .sec_products_wrap {
	padding: 100px 0;
}
.glasses_indexbasic .sec_products_wrap.is_gray {
	position: relative;
	background-color: #f2eee8;
}
.glasses_indexbasic .sec_products_wrap.is_gray:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	right: 100%;
	width: 100vw;
	background-color: #f2eee8;
}
.glasses_indexbasic .sec_products_wrap.is_gray:after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 100%;
	width: 100vw;
	background-color: #f2eee8;
}
.glasses_indexbasic .sec_products .p_glasses_product_list01 + .sec_products_ttl01 {
	margin-top: 96px;
}

/* メガネ スマートシリーズ
--------------------------------------- */
.glasses_indexsmart {
	line-height: 1.5;
}
.glasses_indexsmart .sec_lead_ttl01 {
	font-family: "Zen Kaku Gothic New", sans-serif;
	margin: 52px 0 0;
	padding: 0;
	font-size: 24px;
	text-align: center;
	letter-spacing: 0.04em;
	line-height: 1.6;
}
.glasses_indexsmart .sec_lead_ttl01_strong {
	color: #0097e7;
}
.glasses_indexsmart .sec_lead_txt01 {
	font-family: "Zen Kaku Gothic New", sans-serif;
	margin: 22px 0 0;
	padding: 0;
	font-size: 18px;
	letter-spacing: 0.04em;
	line-height: 1.8;
	color: #353535;
	text-align: center;
	font-weight: 500;
}
.glasses_indexsmart .sec_lead + .p_glasses_marquee {
	margin: 70px 0 0;
}
.glasses_indexsmart .sec_products_lead {
	margin: 50px 0 0;
	padding: 0;
}
.glasses_indexsmart .sec_products_lead_attention {
	text-align: center;
}
.glasses_indexsmart .sec_products_lead_attention_main {
	display: inline-block;
	line-height: 1.3;
	margin: 10px 0 0;
	padding: 4px 8px;
	font-weight: bold;
	font-size: 24px;
	background-color: #0097e8;
	color: #fff;
	letter-spacing: 0.06em;
}
.glasses_indexsmart .sec_products_lead_attention_sub {
	line-height: 1.3;
	margin: 0;
	padding: 0;
	font-weight: 500;
	font-size: 18px;
}
.glasses_indexsmart .sec_products_lead_attention + .sec_products_lead_price {
	margin-top: 8px;
}
.glasses_indexsmart .sec_products_lead_price_main {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	margin: 0;
	padding: 0;
	font-size: 32px;
	line-height: 1;
	letter-spacing: 0.06em;
	font-weight: bold;
}
.glasses_indexsmart .sec_products_lead_price_main_strong {
	font-size: 34px;
	font-family: "Bricolage Grotesque", sans-serif;
	padding: 0;
	margin: 0;
	letter-spacing: 0.04em;
}
.glasses_indexsmart .sec_products_lead_price_main_red {
	color: #da2a2d;
}
.glasses_indexsmart .sec_products_lead_price_main_inactive {
	font-family: "Bricolage Grotesque", sans-serif;
	font-size: 22px;
	margin-right: 1em;
	padding: 0 0.14em;
	position: relative;
	letter-spacing: 0.04em;
}
.glasses_indexsmart .sec_products_lead_price_main_inactive:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	height: 1px;
	background-color: #222222;
}
.glasses_indexsmart .sec_products_lead_price_main_inactive:after {
	content: "";
	position: absolute;
	top: 50%;
	-webkit-transform: translate(0, -50%);
	        transform: translate(0, -50%);
	left: calc(100% + 0.3em);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 8.7px;
	border-color: transparent transparent transparent #222222;
}
.glasses_indexsmart .sec_products_lead_price_main_inactive_strong {
	font-size: 24px;
}
.glasses_indexsmart .sec_products_lead_price_sub {
	display: block;
	padding: 0;
	margin: 16px 0 0;
	font-family: "Zen Kaku Gothic New", sans-serif;
	color: #353535;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.9;
	letter-spacing: 0.04em;
	text-align: center;
}
.glasses_indexsmart .sec_products_lead_bnr {
	max-width: 1040px;
	margin: 40px auto 0;
	padding: 0;
	display: block;
}
.glasses_indexsmart .sec_products_lead_bnr img {
	display: block;
}
.glasses_indexsmart .sec_products {
	margin: 80px 0 0;
	padding: 0;
	overflow-x: hidden;
}
.glasses_indexsmart .sec_products_in {
	padding: 0 0;
	margin: 0;
}
.glasses_indexsmart .sec_products_cate_ttl {
	font-family: "Noto Sans JP", sans-serif;
	margin: 0;
	padding: 0;
	font-size: 20px;
	line-height: 1.6;
	font-weight: 500;
	color: #2F373B;
	text-align: center;
}
.glasses_indexsmart .sec_products_mainimg {
	margin: 18px 0 0;
	padding: 0;
	position: relative;
	text-align: center;
}
.glasses_indexsmart .sec_products_mainimg:before {
	content: "";
	width: 1px;
	height: 32px;
	position: absolute;
	top: 0;
	left: 50%;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	background-color: #2F373B;
}
.glasses_indexsmart .sec_products_mainimg img {
	display: inline-block;
	max-width: 1200px;
	width: 100%;
}
.glasses_indexsmart .sec_products_type_ttl {
	margin: 36px 0 0;
	line-height: 1.6;
	font-size: 20px;
	font-weight: 500;
	text-align: center;
}
.glasses_indexsmart .sec_products_detailtxt {
	margin: 40px 0 0;
	line-height: 1.8;
	font-size: 14px;
	text-align: center;
}
.glasses_indexsmart .sec_products_color_ttl {
	margin: 50px 0 0;
	line-height: 1.6;
	font-size: 18px;
	font-weight: 500;
	text-align: center;
}
.glasses_indexsmart .sec_products .p_glasses_product_list02 + .sec_products_color_ttl {
	margin-top: 50px;
}
.glasses_indexsmart .sec_products + .sec_products {
	margin-top: 140px;
}

/* メガネ アクティブシリーズ
--------------------------------------- */
.glasses_indexactive {
	line-height: 1.5;
}
.glasses_indexactive .sec_lead_ttl01 {
	font-family: "Zen Kaku Gothic New", sans-serif;
	margin: 52px 0 0;
	padding: 0;
	font-size: 24px;
	text-align: center;
	letter-spacing: 0.04em;
	line-height: 1.6;
}
.glasses_indexactive .sec_lead_ttl01_strong {
	color: #0097e7;
}
.glasses_indexactive .sec_lead_txt01 {
	font-family: "Zen Kaku Gothic New", sans-serif;
	margin: 22px 0 0;
	padding: 0;
	font-size: 18px;
	letter-spacing: 0.04em;
	line-height: 1.8;
	color: #353535;
	text-align: center;
	font-weight: 500;
}
.glasses_indexactive .sec_lead + .p_glasses_marquee {
	margin: 70px 0 0;
}
.glasses_indexactive .sec_products {
	margin: 48px 0 0;
	padding: 0;
}
.glasses_indexactive .sec_products_lead_main {
	display: block;
	text-align: center;
	margin: 0;
	padding: 0;
	font-size: 28px;
	line-height: 1.5;
	letter-spacing: 0.03em;
	font-weight: bold;
}
.glasses_indexactive .sec_products_lead_sub {
	display: block;
	padding: 0;
	margin: 0.4em 0 0;
	font-family: "Zen Kaku Gothic New", sans-serif;
	color: #353535;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0.03em;
	text-align: center;
}

/* 商品一覧
--------------------------------------- */
.productlist_sec .aui_title_03 {
	margin-top: 40px;
	margin-bottom: 88px;
}
.productlist_sec .search_result {
	display: flex;
}
.productlist_sec .search_result_count {
	margin: 0 30px 0 0;
	white-space: nowrap;
}
.productlist_sec .search_result_count .num {
	font-size: 1.7em;
	line-height: 1;
}
.productlist_sec .search_keyword {
	margin: 0;
}

.productlist_serach_sec {
	margin: 120px auto 0;
}

.productlist_topics_sec {
	margin: 120px auto 0;
}

/* スライダー */
.productlist_sec .aui_swiper {
	margin-bottom: 30px;
	padding-bottom: 44px;
}
.productlist_sec .aui_swiper .swiper-slide {
	width: 480px !important;
	text-align: center;
}
.productlist_sec .aui_swiper .swiper-slide img {
	border-radius: 16px;
}
.productlist_sec .aui_swiper .swiper-button-prev {
	top: calc(50% - 20px);
	left: 5%;
}
.productlist_sec .aui_swiper .swiper-button-next {
	top: calc(50% - 20px);
	right: 5%;
}
.productlist_sec .aui_swiper .swiper-pagination-bullets .swiper-pagination-bullet {
	background-color: #e6e6e6;
}
.productlist_sec .aui_swiper .swiper-pagination-bullets .swiper-pagination-bullet-active {
	background-color: #fdbaba;
}

/* 検索ツールバー上段 */
.productlist_sec .toolbar_upper {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 46px auto 16px;
	padding: 16px 0px;
	background-color: #f4f4f4;
}
.productlist_sec .toolbar_upper.is_toolbar_fixed {
	position: fixed;
	z-index: 10;
	left: 0;
	right: 0;
	margin-top: 0;
}
.productlist_sec .toolbar_upper .toolbar_col {
	margin: auto 7px;
}

/* 検索ツールバー下段 */
.productlist_sec .toolbar_lower {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	width: 1040px;
	margin: 0 auto 20px;
}

/* ツールバー共通ボタン */
.productlist_sec .toolbar_button {
	display: inline-block;
	position: relative;
	z-index: 2;
	height: auto;
	padding: 0.7em 10px 0.7em;
	border: 1px solid #222222;
	border-radius: 2px;
	background-color: #fff;
	color: #222222;
	font-weight: 400;
	font-size: 1.4rem;
	line-height: 1;
	letter-spacing: 0.06em;
	cursor: pointer;
	transition: all 0.2s ease;
	box-shadow: #fdbabd 3px 3px 0px -1px, #222222 3px 3px 0px 0px;
}
.productlist_sec .toolbar_button_text {
	display: inline-block;
	overflow: hidden;
	text-align: left !important;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.productlist_sec .toolbar_button:hover {
	opacity: 1;
	background-color: #fff5f6;
	border-color: #222222;
}
.productlist_sec .toolbar_button::before {
	content: "";
	display: none;
	width: 1.4em;
	height: 1.4em;
	margin-right: 0.2em;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: -0.2em;
}

/* ツールバー共通ボタン（固定時） */
.productlist_sec .is_toolbar_fixed.toolbar_upper {
	padding-top: 15px;
	padding-bottom: 15px;
}
.productlist_sec .is_toolbar_fixed.toolbar_upper .toolbar_button {
	padding-top: 8px;
	padding-bottom: 8px;
	box-shadow: none;
}

/* 絞り込み検索ボタン */
.productlist_sec .toolbar_button.product_filter {
	padding-left: 30px;
	padding-right: 30px;
}
.productlist_sec .toolbar_button.product_filter::before {
	display: inline-block;
	background-image: url(/img/common/icon/icon_filter.svg);
	background-size: 90%;
}

/* レンズ画像切替ボタン */
.productlist_sec .toolbar_button.img_switcher {
	padding-left: 18px;
	padding-right: 18px;
}
.productlist_sec .toolbar_button.img_switcher::before {
	display: inline-block;
	margin-right: 0;
}
.productlist_sec .toolbar_button.img_switcher[data-btn-id="1"]::before {
	background-image: url(/img/common/icon/icon_lens.svg);
	background-size: 90%;
}
.productlist_sec .toolbar_button.img_switcher[data-btn-id="2"]::before {
	background-image: url(/img/common/icon/icon_eye.svg);
	background-size: 100%;
}
.productlist_sec .toolbar_button.img_switcher[data-btn-id="3"]::before {
	background-image: url(/img/common/icon/icon_model.svg);
	background-size: 90%;
}

/* 順番並び替えボタン */
.productlist_sec .toolbar_button.product_sorter {
	padding-left: 28px;
	padding-right: 28px;
}
.productlist_sec .toolbar_button.product_sorter::before {
	display: inline-block;
	background-image: url(/img/common/icon/icon_sort.svg);
	background-size: 70%;
}
.productlist_sec .toolbar_button.product_sorter::after {
	display: none;
}
.productlist_sec .toolbar_button.product_sorter .current {
	display: inline-block;
	width: auto;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
	text-align: left !important;
}
.productlist_sec .toolbar_button.product_sorter .list {
	border: 1px solid #000;
	box-shadow: none;
	border-radius: 2px;
	-webkit-transform: scale(1) translate(-1px, -4px);
	        transform: scale(1) translate(-1px, -4px);
}
.productlist_sec .toolbar_button.product_sorter.open .list {
	-webkit-transform: scale(1) translate(-1px, -4px);
	        transform: scale(1) translate(-1px, -4px);
}
.productlist_sec .toolbar_button.product_sorter .list .option {
	min-height: initial;
	margin: 0;
	padding: 13px 16px 11px;
	line-height: 1;
}
.productlist_sec .toolbar_button.product_sorter .list .option.selected {
	font-weight: 400;
}
.productlist_sec .toolbar_button.product_sorter .list .option:hover,
.productlist_sec .toolbar_button.product_sorter .list .option.focus,
.productlist_sec .toolbar_button.product_sorter .list .option.selected.focus {
	background-color: #f4f4f4;
}

/* ツールチップ */
.productlist_sec .toolbar_tip {
	position: relative;
}
.productlist_sec .toolbar_tip .toolbar_tip_text {
	visibility: hidden;
	opacity: 0;
	position: absolute;
	top: calc(-50% - 7px);
	left: 50%;
	z-index: 1;
	-webkit-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
	padding: 8px 12px 6px;
	border-radius: 3px;
	background: #fdbabd;
	font-weight: 500;
	font-size: 1.1rem;
	line-height: 1.8;
	white-space: nowrap;
	transition: 0.2s ease-out;
}
.productlist_sec .toolbar_tip .toolbar_tip_text::before {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -8px;
	border: 6px solid transparent;
	border-top: 8px solid #fdbabd;
}
.productlist_sec .toolbar_tip.is_opened .toolbar_tip_text {
	visibility: visible;
	opacity: 1;
}

/* 絞り込みタグ */
.productlist_sec .filter_tag_group {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.productlist_sec .filter_tag {
	-webkit-appearance: none;
	        appearance: none;
	display: inline-flex;
	align-items: center;
	margin: 0 10px 10px 0;
	padding: 7px 12px 6px;
	border: 1px solid #cccccc;
	border-radius: 50px;
	background-color: #fff;
	font-size: 1.4rem;
	line-height: 1.4;
	letter-spacing: 0.02em;
	transition: background-color 0.2s ease;
	cursor: pointer;
}
.productlist_sec .filter_tag .delete {
	-webkit-user-select: none;
	    -ms-user-select: none;
	        user-select: none;
	-webkit-appearance: none;
	        appearance: none;
	display: inline-block;
	position: relative;
	height: 0.8em;
	width: 0.8em;
	margin: 0 -0.2em 0 0.2em;
	border: none;
	background-color: transparent;
	outline: 0;
	vertical-align: 0.35em;
	pointer-events: auto;
	cursor: pointer;
}
.productlist_sec .filter_tag .delete::after,
.productlist_sec .filter_tag .delete::before {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	top: 50%;
	height: 80%;
	width: 1px;
	background-color: #222222;
	-webkit-transform-origin: center center;
	        transform-origin: center center;
}
.productlist_sec .filter_tag .delete::after {
	-webkit-transform: translate(-50%, -50%) rotate(45deg);
	        transform: translate(-50%, -50%) rotate(45deg);
}
.productlist_sec .filter_tag .delete::before {
	-webkit-transform: translate(-50%, -50%) rotate(-45deg);
	        transform: translate(-50%, -50%) rotate(-45deg);
}
.productlist_sec .filter_tag:hover {
	background-color: #f4f4f4;
}

/* 検索結果数 */
.productlist_sec .search_result_count {
	margin: 5px 0 0 0;
}

/* ヒント */
.productlist_sec .product_hint {
	width: 1040px;
	margin: 0 auto 32px;
	font-size: 1.3rem;
}
.productlist_sec .product_hint > a {
	margin-right: 10px;
}

/* 商品一覧、カラコン商品一覧 共通モーダル
--------------------------------------- */
/* 項目説明モーダル */
.productlist_modal_hint.mfp-dialog-block {
	max-width: 800px;
	padding: 50px 60px;
}
.productlist_modal_hint .hint_title {
	margin: 10px auto 20px;
	font-weight: 700;
	font-size: 2rem;
	text-align: center;
	letter-spacing: 0.1em;
}
.productlist_modal_hint .hint_icon {
	margin-left: 0.1em;
}
.productlist_modal_hint .hint_icon::after {
	content: "";
	display: inline-block;
	width: 1.3em;
	height: 1.3em;
	vertical-align: -0.25em;
	background-image: url(/img/common/icon/icon_question_ol.svg);
	background-size: auto 100%;
	background-repeat: no-repeat;
	background-position: center center;
}
.productlist_modal_hint .hint_text {
	font-size: 1.6rem;
}

/* 項目説明モーダル 閉じるボタン上書き */
.mfp-close-btn-in .productlist_modal_hint button.mfp-close {
	top: 48px;
	right: 60px;
	width: 20px;
	height: 20px;
	background-color: transparent;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.mfp-close-btn-in .productlist_modal_hint button.mfp-close::before, .mfp-close-btn-in .productlist_modal_hint button.mfp-close::after {
	background-color: #222222;
	width: 20px;
	height: 2px;
}

/* 絞り込み検索 */
.productlist_modal_filter.mfp-dialog-block {
	max-width: 800px;
	padding: 30px 0 0;
}
.productlist_modal_filter .filter_title {
	margin: 0 auto 30px;
	font-weight: 700;
	font-size: 2rem;
	text-align: center;
	letter-spacing: 0.1em;
}
.productlist_modal_filter .filter_item {
	margin-top: -1px;
}
.productlist_modal_filter .aui_accordion_title {
	padding: 40px 48px 38px;
	font-size: 1.8rem;
	line-height: 1.2;
}
.productlist_modal_filter .aui_accordion_content {
	padding: 40px 48px 38px;
	background-color: #f4f4f4;
	font-size: 1.6rem;
	line-height: 1;
}
.productlist_modal_filter .aui_accordion_title.icon_plus::before,
.productlist_modal_filter .aui_accordion_title.icon_plus::after {
	right: 48px;
	width: 16px;
	height: 2px;
}
.productlist_modal_filter .aui_form_table > .aui_form_field > .aui_form_head {
	padding: 40px 48px 38px;
	font-size: 1.8rem;
	line-height: 1.2;
	border-right-width: 0;
	vertical-align: middle;
}
.productlist_modal_filter .aui_form_table > .aui_form_field > .aui_form_body {
	padding: 40px 48px 38px;
	font-size: 1.6rem;
	line-height: 1;
	border-left-width: 0;
	text-align: right;
}
.productlist_modal_filter .aui_form_table > .aui_form_field > .aui_form_body .aui_form_control {
	margin-left: 30px;
}
.productlist_modal_filter .aui_form_control {
	margin: 0;
	padding: 0;
}
.productlist_modal_filter .aui_form_control_label::before {
	width: 30px;
	height: 30px;
}
.productlist_modal_filter .aui_form_control_label::after {
	top: calc(50% - 11px);
	left: 4px;
	width: 22px;
	height: 22px;
}
.productlist_modal_filter .aui_columns.is_col3 .aui_form_control:nth-of-type(n+4) {
	margin-top: 30px;
}
.productlist_modal_filter .aui_columns.is_col4 .aui_form_control:nth-of-type(n+6) {
	margin-top: 30px;
}
.productlist_modal_filter .aui_columns.is_col5 .aui_form_control:nth-of-type(n+6) {
	margin-top: 30px;
}
.productlist_modal_filter .filter_item.word_filter {
	padding: 30px 0;
	border-top: 1px solid #D5D5D5;
}
.productlist_modal_filter .filter_item.word_filter .aui_word_search {
	width: 480px;
	margin: auto;
}
.productlist_modal_filter .filter_item.word_filter .aui_form_input {
	height: 56px;
}
.productlist_modal_filter .filter_item.color_filter .aui_columns > * {
	width: 12.5%;
}
.productlist_modal_filter .filter_item.color_filter .aui_columns .aui_form_control:nth-of-type(n+9) {
	margin-top: 30px;
}
.productlist_modal_filter .filter_item.color_filter .aui_columns .aui_form_control_label {
	flex-direction: column;
	font-size: 1.5rem;
}
.productlist_modal_filter .filter_item.color_filter .aui_columns .aui_form_control_label::before {
	width: 40px;
	height: 40px;
	margin: 0 0 14px 0;
	border: 0;
	border-radius: 50%;
	box-shadow: 0 0 0 4px #f4f4f4, 0 0 0 5px #cccccc;
}
.productlist_modal_filter .filter_item.color_filter .aui_columns .aui_form_control_label::after {
	top: 10px;
	left: calc(50% - 10px);
	width: 20px;
	height: 20px;
}
.productlist_modal_filter .filter_item.color_filter .aui_columns .aui_form_control_label.is_brown::before {
	background-color: #725032;
}
.productlist_modal_filter .filter_item.color_filter .aui_columns .aui_form_control_label.is_hazel::before {
	background-color: #b6a175;
}
.productlist_modal_filter .filter_item.color_filter .aui_columns .aui_form_control_label.is_gray::before {
	background-color: #aaaaaa;
}
.productlist_modal_filter .filter_item.color_filter .aui_columns .aui_form_control_label.is_black::before {
	background-color: #000000;
}
.productlist_modal_filter .filter_item.color_filter .aui_columns .aui_form_control_label.is_pink::before {
	background-color: #eda6bf;
}
.productlist_modal_filter .filter_item.color_filter .aui_columns .aui_form_control_label.is_perple::before {
	background-color: #ba98c0;
}
.productlist_modal_filter .filter_item.color_filter .aui_columns .aui_form_control_label.is_bule::before {
	background-color: #7899c6;
}
.productlist_modal_filter .filter_item.color_filter .aui_columns .aui_form_control_label.is_green::before {
	background-color: #7dbd87;
}
.productlist_modal_filter .filter_item.color_filter .aui_columns .aui_form_control_label.is_yellow::before {
	background-color: #e8d25a;
}
.productlist_modal_filter .filter_item.color_filter .aui_columns .aui_form_control_label.is_orange::before {
	background-color: #ef9749;
}
.productlist_modal_filter .filter_item.color_filter .aui_columns .aui_form_control_label.is_red::before {
	background-color: #da5858;
}
.productlist_modal_filter .filter_item.color_filter .aui_columns .aui_form_control_label.is_white::before {
	background-color: #ffffff;
}
.productlist_modal_filter .filter_item.color_filter .aui_columns .aui_form_control_label.is_gara::before {
	background: repeating-linear-gradient(-45deg, #e5e5e5, #e5e5e5 2px, #fff 0, #fff 7px);
	background-position: center;
}
.productlist_modal_filter .filter_item.color_filter .aui_columns .aui_form_control_label.is_white::after, .productlist_modal_filter .filter_item.color_filter .aui_columns .aui_form_control_label.is_gara::after {
	background-image: url("data:image/svg+xml,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20xmlns%3Axlink%3D%22http%3A//www.w3.org/1999/xlink%22%20x%3D%220%22%20y%3D%220%22%20width%3D%22512%22%20height%3D%22512%22%20viewBox%3D%220%200%20512%20512%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpath%20fill%3D%22%23666666%22%20d%3D%22M461.6%2C109.6l-54.9-43.3c-1.7-1.4-3.8-2.4-6.2-2.4c-2.4%2C0-4.6%2C1-6.3%2C2.5L194.5%2C323c0%2C0-78.5-75.5-80.7-77.7c-2.2-2.2-5.1-5.9-9.5-5.9c-4.4%2C0-6.4%2C3.1-8.7%2C5.4c-1.7%2C1.8-29.7%2C31.2-43.5%2C45.8c-0.8%2C0.9-1.3%2C1.4-2%2C2.1c-1.2%2C1.7-2%2C3.6-2%2C5.7c0%2C2.2%2C0.8%2C4%2C2%2C5.7l2.8%2C2.6c0%2C0%2C139.3%2C133.8%2C141.6%2C136.1c2.3%2C2.3%2C5.1%2C5.2%2C9.2%2C5.2c4%2C0%2C7.3-4.3%2C9.2-6.2L462%2C121.8c1.2-1.7%2C2-3.6%2C2-5.8C464%2C113.5%2C463%2C111.4%2C461.6%2C109.6z%22/%3E%3C/svg%3E");
}
.productlist_modal_filter .filter_item.color_filter .aui_columns .aui_form_control_input:checked + .aui_form_control_label::before {
	outline-color: #666666;
}
.productlist_modal_filter .filter_buttons_row {
	padding: 40px 48px;
	background-color: #f4f4f4;
}
.productlist_modal_filter .mfp-close {
	top: 30px;
	right: 5%;
}

/* 絞り込み検索モーダル 閉じるボタン上書き */
.mfp-close-btn-in .productlist_modal_filter button.mfp-close {
	top: 40px;
	right: 48px;
	width: 20px;
	height: 20px;
	background-color: transparent;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.mfp-close-btn-in .productlist_modal_filter button.mfp-close::before, .mfp-close-btn-in .productlist_modal_filter button.mfp-close::after {
	background-color: #222222;
	width: 20px;
	height: 2px;
}

/* カラコン商品一覧
--------------------------------------- */
.p_productlist_colorcontact_btn01 {
	margin: 0;
	padding: 0;
}
.p_productlist_colorcontact_btn01_btn {
	display: block;
	margin: 0 auto;
	border: 2px solid #dc5f89;
	color: #dc5f89;
	font-weight: 500;
	width: 745px;
	padding: 13px;
	text-align: center;
	line-height: 1.5;
	letter-spacing: 0.08em;
	border-radius: 4px;
	font-size: 20px;
}
.p_productlist_colorcontact_btn01_btn:visited, .p_productlist_colorcontact_btn01_btn:hover, .p_productlist_colorcontact_btn01_btn:active {
	color: #dc5f89;
}

.p_productlist_colorcontact_ttl01 {
	display: block;
}
.p_productlist_colorcontact_ttl01_in {
	z-index: 2;
	position: relative;
	display: inline-block;
	font-size: 27px;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0.08em;
	color: #0c0c0c;
	padding: 0;
}
.p_productlist_colorcontact_ttl01_in:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: -2px;
	left: 0;
	right: 0;
	background-image: url(/img/productlist/colorcontact/ttl_bg01.png);
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: 100% auto;
	z-index: -1;
}

[class^=p_productlist_colorcontact_] .colorcontactlist_dn_pc {
	display: none !important;
}

.p_productlist_colorcontact_mv .aui_swiper .swiper-pagination-bullets .swiper-pagination-bullet-active {
	background-color: #303030;
}

.p_productlist_colorcontact_sec_ranking {
	margin: 80px 0 0;
	overflow: hidden;
}
.p_productlist_colorcontact_sec_ranking_in {
	width: 1040px;
	margin: 0 auto;
}
.p_productlist_colorcontact_sec_ranking_tab01 {
	margin: 50px 0 0;
}
.p_productlist_colorcontact_sec_ranking_tab01_head {
	position: relative;
}
.p_productlist_colorcontact_sec_ranking_tab01_head:before {
	content: "";
	position: absolute;
	bottom: 0;
	right: -100vw;
	left: -100vw;
	height: 4px;
	background-color: #bab9b9;
}
.p_productlist_colorcontact_sec_ranking_tab01_head_in {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.p_productlist_colorcontact_sec_ranking_tab01_head_item {
	background-color: #dfdfdf;
	width: 330px;
	text-align: center;
	font-size: 34px;
	font-style: italic;
	font-weight: bold;
	color: #8c7b80;
	border-radius: 10px 10px 0 0;
	border: 4px solid #fff;
	border-bottom: 0;
	cursor: pointer;
}
.p_productlist_colorcontact_sec_ranking_tab01_head_item:hover {
	opacity: 1;
}
.p_productlist_colorcontact_sec_ranking_tab01_head_item.is_active {
	z-index: 2;
	position: relative;
	background-color: #ffffff;
	border-color: #bab9b9;
	color: #f4b5b5;
}
.p_productlist_colorcontact_sec_ranking_tab01_body {
	margin: 60px 0 0;
}
.p_productlist_colorcontact_sec_ranking_tab01_body_item {
	display: none;
}
.p_productlist_colorcontact_sec_ranking_tab01_body_item.is_active {
	display: block;
	-webkit-animation: fade_animation01 1.5s ease 0s 1 normal;
	        animation: fade_animation01 1.5s ease 0s 1 normal;
}
.p_productlist_colorcontact_sec_ranking .aui_product_list {
	counter-reset: colorcontact_ranking_num;
}
.p_productlist_colorcontact_sec_ranking .aui_product_list .aui_product_box_v {
	position: relative;
	padding-top: 70px;
	counter-increment: colorcontact_ranking_num;
}
.p_productlist_colorcontact_sec_ranking .aui_product_list .aui_product_box_v:before {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	content: "No." counter(colorcontact_ranking_num);
	display: block;
	font-size: 25px;
	font-weight: bold;
	line-height: 1;
	letter-spacing: 0.02em;
	color: #b4b4bb;
}
.p_productlist_colorcontact_sec_ranking .aui_product_list .aui_product_box_v:nth-of-type(1):before {
	color: #d49149;
}
.p_productlist_colorcontact_sec_ranking .aui_product_list .aui_product_box_v:nth-of-type(2):before {
	color: #9fb9dc;
}
.p_productlist_colorcontact_sec_ranking .aui_product_list .aui_product_box_v:nth-of-type(3):before {
	color: #b79471;
}
.p_productlist_colorcontact_sec_ranking .aui_product_list .aui_product_box_v .aui_product_icons_upper {
	top: 70px;
	-webkit-transform: translate(0, -50%);
	        transform: translate(0, -50%);
}

.p_productlist_colorcontact_sec_update {
	margin: 110px 0 0;
	overflow: hidden;
}
.p_productlist_colorcontact_sec_update .p_productlist_colorcontact_ttl01_in:before {
	background-image: url(/img/productlist/colorcontact/ttl_bg02.png);
}
.p_productlist_colorcontact_sec_update_in {
	width: 1040px;
	margin: 0 auto;
}
.p_productlist_colorcontact_sec_update_list01 {
	margin: 32px 0 0;
	position: relative;
	z-index: 2;
	padding: 34px 0 30px;
	background-color: #fff2f5;
}
.p_productlist_colorcontact_sec_update_list01:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	right: 100%;
	width: 100vw;
	background-color: #fff2f5;
	z-index: -1;
}
.p_productlist_colorcontact_sec_update_list01:after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 100%;
	width: 100vw;
	background-color: #fff2f5;
	z-index: -1;
}
.p_productlist_colorcontact_sec_update_list01_in {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 40px 20px;
}
.p_productlist_colorcontact_sec_update_list01_img {
	border-radius: 10px;
	overflow: hidden;
}

.p_productlist_colorcontact_sec_search {
	margin: 90px 0 0;
}
.p_productlist_colorcontact_sec_search .p_productlist_colorcontact_ttl01 {
	width: 1040px;
	margin: 0 auto;
}
.p_productlist_colorcontact_sec_search .p_productlist_colorcontact_ttl01_in:before {
	bottom: 2px;
	background-image: url(/img/productlist/colorcontact/ttl_bg05.png);
}
.p_productlist_colorcontact_sec_search_freesearch {
	width: 1040px;
	margin: 28px auto 0;
	border: 2px solid #dc5f89;
	border-radius: 6px;
}
.p_productlist_colorcontact_sec_search_freesearch .aui_word_search .aui_word_search_input {
	background-color: #ffffff;
	color: #bbb4b4;
	font-size: 18px;
	padding: 0 0 0 24px;
	height: 54px;
}
.p_productlist_colorcontact_sec_search_freesearch .aui_word_search .aui_word_search_button {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: inherit;
	width: 100px;
	height: auto;
	background-color: #dc5f89;
	-webkit-transform: none;
	        transform: none;
	background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='search' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath d='M40.707,39.293l-7.427-7.427c2.398-2.735,3.721-6.195,3.721-9.865,0-4.006-1.56-7.773-4.393-10.607s-6.6-4.394-10.606-4.394h0c-4.006,0-7.773,1.56-10.606,4.393-2.833,2.833-4.394,6.6-4.394,10.606,0,8.271,6.728,15,15,15.001,1.323,0,2.641-.174,3.917-.515,.533-.142,.851-.689,.708-1.224s-.69-.85-1.224-.708c-1.108,.295-2.253,.445-3.402,.446-7.168,0-13-5.833-12.999-13.001,0-3.472,1.353-6.737,3.808-9.192s5.72-3.807,9.192-3.807h0c3.473,0,6.737,1.353,9.192,3.808s3.807,5.72,3.807,9.193-1.353,6.736-3.808,9.192c-.391,.391-.391,1.023,0,1.414l8.1,8.1c.195,.195,.451,.293,.707,.293s.512-.098,.707-.293c.391-.391,.391-1.023,0-1.414Z' fill='%23ffffff' stroke='%23ffffff' stroke-width='0.5'/%3E%3C/svg%3E");
	background-size: auto 37px;
}
.p_productlist_colorcontact_sec_search_popular {
	width: 1040px;
	margin: 8px auto 0;
	display: flex;
}
.p_productlist_colorcontact_sec_search_popular_ttl01 {
	font-size: 13px;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0.2em;
	color: #5b5959;
}
.p_productlist_colorcontact_sec_search_popular_list01 {
	margin: 0 0 0 0.7em;
	display: flex;
	flex-wrap: wrap;
	flex: 1;
	font-weight: 500;
	font-size: 13px;
	line-height: 1.5;
	letter-spacing: 0.2em;
}
.p_productlist_colorcontact_sec_search_popular_list01_item {
	margin: 0 0 0 0.5em;
}
.p_productlist_colorcontact_sec_search_popular_list01_item:first-of-type {
	margin-left: 0;
}
.p_productlist_colorcontact_sec_search_popular_list01_link {
	display: block;
}
.p_productlist_colorcontact_sec_search_advancedsearch {
	margin: 106px auto 0;
}
.p_productlist_colorcontact_sec_search_advancedsearch_accordion01_head {
	padding: 37px 0 0;
}
.p_productlist_colorcontact_sec_search_advancedsearch_accordion01_head_btn {
	font-size: 21px;
	display: block;
	color: #dc5f89;
	border: 2px solid #dc5f89;
	line-height: 1.5;
	letter-spacing: 0.08em;
	text-align: center;
	width: 745px;
	margin: 0 auto;
	border-radius: 4px;
	cursor: pointer;
}
.p_productlist_colorcontact_sec_search_advancedsearch_accordion01_head_btn:visited, .p_productlist_colorcontact_sec_search_advancedsearch_accordion01_head_btn:hover, .p_productlist_colorcontact_sec_search_advancedsearch_accordion01_head_btn:active {
	color: #dc5f89;
}
.p_productlist_colorcontact_sec_search_advancedsearch_accordion01_head_btn_btn {
	position: relative;
	padding: 12px 48px;
	display: inline-block;
}
.p_productlist_colorcontact_sec_search_advancedsearch_accordion01_head_btn_btn:before {
	content: "";
	position: absolute;
	top: 29%;
	right: 0;
	width: 16px;
	height: 16px;
	border-top: 3px solid #dc5f89;
	border-right: 3px solid #dc5f89;
	-webkit-transform: rotate(135deg);
	        transform: rotate(135deg);
}
.p_productlist_colorcontact_sec_search_advancedsearch_accordion01_head.is_active .p_productlist_colorcontact_sec_search_advancedsearch_accordion01_head_btn_btn:before {
	-webkit-transform: rotate(-45deg);
	        transform: rotate(-45deg);
	top: 43%;
}
.p_productlist_colorcontact_sec_search_advancedsearch_accordion01_body {
	height: 0;
	overflow: hidden;
	transition: height 0.6s ease-in;
}
.p_productlist_colorcontact_sec_search_advancedsearch_cleared_btn_wrap {
	background-color: #f4f4f4;
	padding: 26px 0;
	margin: 0;
	border-bottom: 2px solid #cccccc;
}
.p_productlist_colorcontact_sec_search_advancedsearch_cleared_btn {
	display: block;
	background-color: #ffffff;
	width: 745px;
	margin: 0 auto;
	padding: 12px 0;
	border: 3px solid #e9e9e9;
	font-size: 20px;
	font-weight: 500;
	color: #3f3f3f;
	text-align: center;
	line-height: 1.5;
	letter-spacing: 0.08em;
}
.p_productlist_colorcontact_sec_search_advancedsearch_cleared_btn:visited, .p_productlist_colorcontact_sec_search_advancedsearch_cleared_btn:hover, .p_productlist_colorcontact_sec_search_advancedsearch_cleared_btn:active {
	color: #3f3f3f;
}
.p_productlist_colorcontact_sec_search_advancedsearch_search_btn {
	display: block;
	font-size: 24px;
	color: #ffffff;
	font-weight: 500;
	background-color: #dc5f89;
	line-height: 1.5;
	letter-spacing: 0.08em;
	text-align: center;
	width: 745px;
	margin: 27px auto 0;
	border-radius: 4px;
	border: none;
	padding: 12px 0;
}
.p_productlist_colorcontact_sec_search_advancedsearch .aui_accordion_title {
	width: 1040px;
	margin: 0 auto;
	font-size: 24px;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0.08em;
	color: #3f3f3f;
	padding: 28px 0;
	border: none;
	background: none;
}
.p_productlist_colorcontact_sec_search_advancedsearch .aui_accordion_title.icon_plus:before, .p_productlist_colorcontact_sec_search_advancedsearch .aui_accordion_title.icon_plus:after {
	display: none;
}
.p_productlist_colorcontact_sec_search_advancedsearch .aui_accordion_content {
	overflow: inherit;
	position: relative;
	height: auto !important;
	padding: 40px 0 36px 0 !important;
	border-top: 2px solid #cccccc;
	border-bottom: 2px solid #cccccc;
}
.p_productlist_colorcontact_sec_search_advancedsearch .productlist_modal_filter .filter_item.color_filter .aui_columns {
	width: 1040px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(70px, 1fr));
	gap: 24px 20px;
}
.p_productlist_colorcontact_sec_search_advancedsearch .productlist_modal_filter .filter_item.color_filter .aui_columns > * {
	width: auto;
}
.p_productlist_colorcontact_sec_search_advancedsearch .productlist_modal_filter .filter_item.color_filter .aui_columns .aui_form_control:nth-of-type(n+9) {
	margin-top: 0;
}
.p_productlist_colorcontact_sec_search_advancedsearch .productlist_modal_filter .aui_columns {
	width: 1040px;
	margin: 0 auto;
}
.p_productlist_colorcontact_sec_search_advancedsearch .productlist_modal_filter .aui_form_table {
	border-bottom: 2px solid #cccccc;
}
.p_productlist_colorcontact_sec_search_advancedsearch .productlist_modal_filter .aui_form_table > .aui_form_field {
	display: flex;
	align-items: center;
	width: 1040px;
	margin: 0 auto;
}
.p_productlist_colorcontact_sec_search_advancedsearch .productlist_modal_filter .aui_form_table > .aui_form_field > .aui_form_head {
	display: block;
	border: 0;
	padding: 34px 70px 34px 0;
	margin: 0;
}
.p_productlist_colorcontact_sec_search_advancedsearch .productlist_modal_filter .aui_form_table > .aui_form_field > .aui_form_body {
	margin: 0;
	display: block;
	border: 0;
	padding: 34px 0;
}
.p_productlist_colorcontact_sec_search_advancedsearch .productlist_modal_filter .aui_form_table > .aui_form_field > .aui_form_body .aui_form_control {
	margin-left: 54px;
}

.p_productlist_colorcontact_sec_search_modelsearch {
	margin: 126px 0 0;
}
.p_productlist_colorcontact_sec_search_modelsearch .p_productlist_colorcontact_ttl01_in:before {
	background-image: url(/img/productlist/colorcontact/ttl_bg02.png);
}
.p_productlist_colorcontact_sec_search_modelsearch_list01 {
	width: 1040px;
	margin: 30px auto 0;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 30px 20px;
}
.p_productlist_colorcontact_sec_search_modelsearch_list01_link {
	border: 1px solid #cccccc;
	border-radius: 8px;
	overflow: hidden;
	display: block;
	margin: 0;
	padding: 0;
	height: 100%;
}
.p_productlist_colorcontact_sec_search_modelsearch_list01_grid {
	display: flex;
	align-items: center;
}
.p_productlist_colorcontact_sec_search_modelsearch_list01_grid_txt01 {
	margin: 0;
	padding: 0;
	font-weight: 500;
	font-size: 20px;
	line-height: 1.5;
	letter-spacing: 0.08em;
	color: #0a0a0a;
}
.p_productlist_colorcontact_sec_search_modelsearch_list01_grid_txt02 {
	margin: 10px 0 0;
	padding: 0;
	font-weight: 500;
	font-size: 16px;
	line-height: 1.5;
	letter-spacing: 0.08em;
	color: #0a0a0a;
}
.p_productlist_colorcontact_sec_search_modelsearch_list01_grid_txt03 {
	margin: 0;
	padding: 0;
	font-weight: normal;
	font-size: 14px;
	line-height: 1.5;
	letter-spacing: 0.08em;
	color: #0a0a0a;
}
.p_productlist_colorcontact_sec_search_modelsearch_list01_grid_item:nth-of-type(1) {
	width: 264px;
}
.p_productlist_colorcontact_sec_search_modelsearch_list01_grid_item:nth-of-type(2) {
	flex: 1;
	margin: 0;
	padding: 0 14px;
}
.p_productlist_colorcontact_sec_search_modelsearch_list01_item {
	display: none;
}
.p_productlist_colorcontact_sec_search_modelsearch_list01_item.is_view {
	display: block;
	-webkit-animation: fade_animation01 1.5s ease 0s 1 normal;
	        animation: fade_animation01 1.5s ease 0s 1 normal;
}
.p_productlist_colorcontact_sec_search_modelsearch_list01_morebtn {
	font-size: 21px;
	display: block;
	color: #dc5f89;
	border: 2px solid #dc5f89;
	line-height: 1.5;
	letter-spacing: 0.08em;
	text-align: center;
	width: 745px;
	margin: 42px auto 0;
	border-radius: 4px;
	cursor: pointer;
}
.p_productlist_colorcontact_sec_search_modelsearch_list01_morebtn:visited, .p_productlist_colorcontact_sec_search_modelsearch_list01_morebtn:hover, .p_productlist_colorcontact_sec_search_modelsearch_list01_morebtn:active {
	color: #dc5f89;
}
.p_productlist_colorcontact_sec_search_modelsearch_list01_morebtn_btn {
	position: relative;
	padding: 12px 48px;
	display: inline-block;
}

.p_productlist_colorcontact_sec_history {
	margin: 106px 0 0;
}
.p_productlist_colorcontact_sec_history .p_productlist_colorcontact_ttl01 {
	width: 1040px;
	margin: 0 auto;
}
.p_productlist_colorcontact_sec_history .p_productlist_colorcontact_ttl01_in:before {
	bottom: -4px;
	background-image: url(/img/productlist/colorcontact/ttl_bg03.png);
}
.p_productlist_colorcontact_sec_history_products {
	margin: 32px 0 0;
	padding: 46px 0 36px;
	background-color: #fff2f5;
}
.p_productlist_colorcontact_sec_history .aui_product_box_v.is_color_box .aui_product_icons_upper {
	top: 0;
}
.p_productlist_colorcontact_sec_history .aui_product_box_v a {
	padding-top: 15px;
}
.p_productlist_colorcontact_sec_history .aui_product_box_v .aui_product_setnum {
	height: 18px;
	font-size: 1.1rem;
	margin-top: 8px;
	text-align: left;
}
.p_productlist_colorcontact_sec_history .aui_product_box_v .aui_product_setnum > span {
	background-color: #dc143c;
	color: #fff;
	padding: 0.1em 1em 0;
	box-sizing: border-box;
	height: 18px;
	line-height: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.p_productlist_colorcontact_sec_history .aui_product_box_v .aui_product_setnum > span + span {
	margin-left: 5px;
}
.p_productlist_colorcontact_sec_history .aui_product_box_v.is_color_box .aui_product_name {
	margin-top: 5px;
}
.p_productlist_colorcontact_sec_history .aui_product_list {
	gap: unset;
}
.p_productlist_colorcontact_sec_history .aui_swiper {
	margin-bottom: 0;
	padding-bottom: 0;
}
.p_productlist_colorcontact_sec_history .aui_swiper .swiper-slide {
	width: 230px !important;
}

.p_productlist_colorcontact_sec_campaign {
	position: relative;
	margin: 104px 0 0;
}
.p_productlist_colorcontact_sec_campaign .aui_swiper .swiper-pagination-bullets .swiper-pagination-bullet-active {
	background-color: #303030;
}
.p_productlist_colorcontact_sec_campaign .p_productlist_colorcontact_ttl01 {
	width: 1040px;
	margin: 0 auto;
}
.p_productlist_colorcontact_sec_campaign .p_productlist_colorcontact_ttl01_in:before {
	bottom: -4px;
	background-image: url(/img/productlist/colorcontact/ttl_bg03.png);
}
.p_productlist_colorcontact_sec_campaign_slider {
	margin: 46px 0 0;
}
.p_productlist_colorcontact_sec_campaign_morebtn {
	position: absolute;
	top: 0;
	right: 50%;
	-webkit-transform: translate(520px, 0);
	        transform: translate(520px, 0);
	display: block;
	min-width: 245px;
	border: 2px solid #de6a91;
	border-radius: 4px;
	font-size: 22px;
	line-height: 1.5;
	letter-spacing: 0.08em;
	text-align: center;
	color: #dc5f89;
	padding: 6px 10px;
}
.p_productlist_colorcontact_sec_campaign_morebtn:visited, .p_productlist_colorcontact_sec_campaign_morebtn:hover, .p_productlist_colorcontact_sec_campaign_morebtn:active {
	color: #dc5f89;
}

.p_productlist_colorcontact_sec_review {
	margin: 90px 0 0;
}
.p_productlist_colorcontact_sec_review .p_productlist_colorcontact_ttl01 {
	width: 1040px;
	margin: 0 auto;
}
.p_productlist_colorcontact_sec_review .p_productlist_colorcontact_ttl01_in:before {
	bottom: 0;
	background-image: url(/img/productlist/colorcontact/ttl_bg03.png);
}
.p_productlist_colorcontact_sec_review_in {
	width: 1040px;
	margin: 34px auto 0;
}
.p_productlist_colorcontact_sec_review_fixed_btn {
	display: none;
	z-index: 1000;
	position: fixed;
	right: calc(8% + 46px);
	bottom: 25px;
	width: 276px;
}
.p_productlist_colorcontact_sec_review_fixed_btn.is_active {
	display: block;
	-webkit-animation: fade_animation01 0.5s ease 0s 1 normal;
	        animation: fade_animation01 0.5s ease 0s 1 normal;
}

.p_productlist_colorcontact_sec_topic {
	margin: 80px 0 0;
}
.p_productlist_colorcontact_sec_topic .p_productlist_colorcontact_ttl01 {
	width: 1040px;
	margin: 0 auto;
}
.p_productlist_colorcontact_sec_topic .p_productlist_colorcontact_ttl01_in:before {
	bottom: 4px;
	background-image: url(/img/productlist/colorcontact/ttl_bg04.png);
}
.p_productlist_colorcontact_sec_topic_thumb {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	width: 1040px;
	margin: 32px auto 0;
}
.p_productlist_colorcontact_sec_topic_thumb_item {
	cursor: pointer;
}
.p_productlist_colorcontact_sec_topic_parent_slider {
	width: 450px;
	overflow: hidden;
}
.p_productlist_colorcontact_sec_topic_parent_slider > .swiper > .swiper-wrapper > .swiper-slide {
	opacity: 0 !important;
}
.p_productlist_colorcontact_sec_topic_parent_slider > .swiper > .swiper-wrapper > .swiper-slide.swiper-slide-active {
	opacity: 1 !important;
}
.p_productlist_colorcontact_sec_topic_parent_slider > .swiper > .swiper-button-prev-parent,
.p_productlist_colorcontact_sec_topic_parent_slider > .swiper > .swiper-button-next-parent {
	margin: 0;
	position: fixed;
	top: 50%;
	width: 36px;
	height: 36px;
	background-color: #fff;
	border-radius: 100px;
	box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
}
.p_productlist_colorcontact_sec_topic_parent_slider > .swiper > .swiper-button-prev-parent:after,
.p_productlist_colorcontact_sec_topic_parent_slider > .swiper > .swiper-button-next-parent:after {
	display: none;
}
.p_productlist_colorcontact_sec_topic_parent_slider > .swiper > .swiper-button-prev-parent:before,
.p_productlist_colorcontact_sec_topic_parent_slider > .swiper > .swiper-button-next-parent:before {
	content: "";
	position: absolute;
	top: 50%;
	width: 11px;
	height: 11px;
	border-top: 2px solid #000;
	border-right: 2px solid #000;
	-webkit-transform: translate(90%, -50%) rotate(45deg);
	        transform: translate(90%, -50%) rotate(45deg);
}
.p_productlist_colorcontact_sec_topic_parent_slider > .swiper > .swiper-button-prev-parent {
	left: calc(50% - 16px);
	-webkit-transform: translate(-46vw, -50%);
	        transform: translate(-46vw, -50%);
	right: inherit;
}
.p_productlist_colorcontact_sec_topic_parent_slider > .swiper > .swiper-button-prev-parent:before {
	-webkit-transform: translate(124%, -50%) rotate(-135deg);
	        transform: translate(124%, -50%) rotate(-135deg);
}
.p_productlist_colorcontact_sec_topic_parent_slider > .swiper > .swiper-button-next-parent {
	right: calc(50% - 16px);
	-webkit-transform: translate(46vw, -50%);
	        transform: translate(46vw, -50%);
	left: inherit;
}
.p_productlist_colorcontact_sec_topic_parent_slider > .swiper a {
	opacity: 1;
}
.p_productlist_colorcontact_sec_topic_parent_slider > .swiper a:visited, .p_productlist_colorcontact_sec_topic_parent_slider > .swiper a:hover, .p_productlist_colorcontact_sec_topic_parent_slider > .swiper a:active {
	opacity: 1;
}
.p_productlist_colorcontact_sec_topic_child_slider {
	overflow: hidden;
}
.p_productlist_colorcontact_sec_topic_child_slider > .swiper {
	position: relative;
}
.p_productlist_colorcontact_sec_topic_child_slider > .swiper > .swiper-button-prev-child,
.p_productlist_colorcontact_sec_topic_child_slider > .swiper > .swiper-button-next-child {
	position: absolute;
	top: 50%;
	margin: 0;
	opacity: 0.8;
	width: 32px;
	height: 32px;
	background-color: #fff;
	border-radius: 100px;
	box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
	-webkit-transform: translate(0, -50%);
	        transform: translate(0, -50%);
	z-index: 2;
}
.p_productlist_colorcontact_sec_topic_child_slider > .swiper > .swiper-button-prev-child:after,
.p_productlist_colorcontact_sec_topic_child_slider > .swiper > .swiper-button-next-child:after {
	display: none;
}
.p_productlist_colorcontact_sec_topic_child_slider > .swiper > .swiper-button-prev-child:before,
.p_productlist_colorcontact_sec_topic_child_slider > .swiper > .swiper-button-next-child:before {
	content: "";
	position: absolute;
	top: 50%;
	width: 10px;
	height: 10px;
	border-top: 2px solid #000;
	border-right: 2px solid #000;
	-webkit-transform: translate(90%, -50%) rotate(45deg);
	        transform: translate(90%, -50%) rotate(45deg);
}
.p_productlist_colorcontact_sec_topic_child_slider > .swiper > .swiper-button-prev-child {
	left: 4px;
}
.p_productlist_colorcontact_sec_topic_child_slider > .swiper > .swiper-button-prev-child:before {
	-webkit-transform: translate(124%, -50%) rotate(-135deg);
	        transform: translate(124%, -50%) rotate(-135deg);
}
.p_productlist_colorcontact_sec_topic_child_slider > .swiper > .swiper-button-next-child {
	right: 4px;
}
.p_productlist_colorcontact_sec_topic_child_slider > .swiper > .swiper-pagination {
	margin: 8px 0 0;
	position: inherit;
}
.p_productlist_colorcontact_sec_topic_child_slider > .swiper > .swiper-pagination > .swiper-pagination-bullet {
	background-color: #fff;
	opacity: 1;
}
.p_productlist_colorcontact_sec_topic_child_slider > .swiper > .swiper-pagination > .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background-color: #dc5f89;
}
.p_productlist_colorcontact_sec_topic_child_slider > .swiper a {
	display: block;
	opacity: 1;
}
.p_productlist_colorcontact_sec_topic_child_slider > .swiper a:visited, .p_productlist_colorcontact_sec_topic_child_slider > .swiper a:hover, .p_productlist_colorcontact_sec_topic_child_slider > .swiper a:active {
	opacity: 1;
}
.p_productlist_colorcontact_sec_topic_modal {
	position: relative;
	z-index: 200010;
	visibility: hidden;
	pointer-events: none;
	opacity: 0;
}
.p_productlist_colorcontact_sec_topic_modal_in {
	position: fixed;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}
.p_productlist_colorcontact_sec_topic_modal_overlay {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: #0b0b0b;
	opacity: 0.88;
}
.p_productlist_colorcontact_sec_topic_modal_overlay:before, .p_productlist_colorcontact_sec_topic_modal_overlay:after {
	content: "";
	position: absolute;
	top: 38px;
	right: 40px;
	width: 40px;
	height: 1px;
	background-color: #fff;
}
.p_productlist_colorcontact_sec_topic_modal_overlay:before {
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}
.p_productlist_colorcontact_sec_topic_modal_overlay:after {
	-webkit-transform: rotate(-45deg);
	        transform: rotate(-45deg);
}
.p_productlist_colorcontact_sec_topic_modal.is_active {
	-webkit-animation: fade_animation01 0.6s ease 0s 1 normal forwards;
	        animation: fade_animation01 0.6s ease 0s 1 normal forwards;
	pointer-events: auto;
}

.is_pc_hidden {
	display: none;
}

@-webkit-keyframes fade_animation01 {
	0% {
		visibility: visible;
		opacity: 0;
	}
	100% {
		opacity: 1;
		visibility: visible;
	}
}

@keyframes fade_animation01 {
	0% {
		visibility: visible;
		opacity: 0;
	}
	100% {
		opacity: 1;
		visibility: visible;
	}
}
/* メガネ商品一覧
--------------------------------------- */
.ploductlist_glasses .aui_product_imgbox img {
	width: 70%;
}

/* 送料無料一覧ページ
--------------------------------------- */
#productlist_category_1 .productlist_category_1day,
#productlist_category_2 .productlist_category_2week,
#productlist_category_4 .productlist_category_color,
#productlist_category_5 .productlist_category_toric,
#productlist_category_13 .productlist_category_multi,
#productlist_category_6 .productlist_category_care {
	background: #CB0005;
	color: #fff;
}

/* 商品詳細
--------------------------------------- */
/* ----- 商品ボックス ----- */
.goods {
	width: 1040px;
	margin: auto;
}

.goods_row {
	display: flex;
	justify-content: space-between;
}

/* 1列目カラム */
.goods_col:nth-child(1) {
	width: 600px;
	margin: 0 0 80px 0;
}

/* 2列目カラム */
.goods_col:nth-child(2) {
	width: 400px;
	margin: 0 0 80px 0;
}

/* ----- 商品画像 ----- */
.goods_visual {
	position: relative;
	margin: 0 0 40px 0;
}
.goods_visual .goods_img {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 65%;
	-webkit-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}

/* ----- snowman専用レイアウト調整 ----- */
.goods_visual.snowman .goods_visual_main .swiper .swiper-slide > img {
	width: 100%;
	margin: auto;
}
.goods_visual.snowman .goods_badge_right {
	display: none;
}

/* ----- 商品画像スライダー ----- */
.goods_visual_main {
	position: relative;
	padding: 50% 0;
	background-color: #F6F6F6;
}
.goods_visual_main .swiper {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	margin-bottom: 0;
	padding-bottom: 0;
	-webkit-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
	overflow: hidden;
}
.goods_visual_main .swiper .swiper-wrapper {
	align-items: center;
}
.goods_visual_main .swiper .swiper-slide {
	position: static;
}
.goods_visual_main .swiper .swiper-slide > img {
	display: block;
	width: 70%;
	margin: auto;
}
.goods_visual_main .swiper .swiper-slide > img.full_size {
	width: 100%;
}
.goods_visual_main .swiper .swiper-button-prev,
.goods_visual_main .swiper .swiper-button-next {
	width: 70px;
	height: 70px;
	border-radius: 50%;
	background-color: rgba(255, 255, 255, 0.75);
	transition: all 0.2s ease-in-out;
}
.goods_visual_main .swiper .swiper-button-prev:hover,
.goods_visual_main .swiper .swiper-button-next:hover {
	opacity: 0.75;
}
.goods_visual_main .swiper .swiper-button-next {
	right: -36px;
}
.goods_visual_main .swiper .swiper-button-prev {
	left: -36px;
}
.goods_visual_main .swiper .swiper-button-next:hover {
	right: -40px;
}
.goods_visual_main .swiper .swiper-button-prev:hover {
	left: -40px;
}
.goods_visual_main .swiper .swiper-button-prev::after,
.goods_visual_main .swiper .swiper-button-next::after {
	position: relative;
	content: "";
	width: 14px;
	height: 14px;
	border-top: 2px solid #222222;
	border-right: 2px solid #222222;
}
.goods_visual_main .swiper .swiper-button-next::after {
	margin-right: 32px;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}
.goods_visual_main .swiper .swiper-button-prev::after {
	margin-left: 32px;
	-webkit-transform: rotate(225deg);
	        transform: rotate(225deg);
}
.goods_visual_main .swiper .swiper-pagination-fraction {
	display: inline-block;
	width: auto;
	bottom: 40px;
	left: 50%;
	background: rgba(0, 0, 0, 0.4);
	color: #ffffff;
	padding: 4px 8px;
	border-radius: 1em;
	font-size: 1.2rem;
	line-height: 1;
	-webkit-transform: translateX(-50%);
	        transform: translateX(-50%);
	opacity: 0;
	transition: opacity 0.5s ease-in-out 2.5s;
}
.goods_visual_main .swiper.slide-change-start .swiper-pagination-fraction {
	opacity: 1;
	transition: opacity 0s ease-in-out 0s;
}
.goods_visual_main .swiper.slide-change-end .swiper-pagination-fraction {
	opacity: 0;
	transition: opacity 0.5s ease-in-out 1.5s;
}
.goods_visual_main [class^=goods_badge] {
	display: flex;
	position: absolute;
	top: 7%;
	width: 100%;
	padding: 0 7%;
}
.goods_visual_main [class^=goods_badge] img {
	width: 19.8%;
}
.goods_visual_main .goods_badge_left {
	justify-content: flex-start;
}
.goods_visual_main .goods_badge_left img {
	margin-right: 10px;
}
.goods_visual_main .goods_badge_right {
	justify-content: flex-end;
}
.goods_visual_main .goods_badge_right img {
	margin-left: 10px;
}

/* ----- 商品画像サムネイル ----- */
.goods_visual_thumb {
	margin: 16px 0 0 0;
}
.goods_visual_thumb .thumb_list {
	padding: 15px 15px 0;
	display: flex;
	flex-wrap: wrap;
	background-color: #f6f6f6;
}
.goods_visual_thumb .thumb_list .thumb_list_item {
	width: calc((100% - 42px) / 4);
	margin-left: 14px;
}
.goods_visual_thumb .thumb_list .thumb_list_item:nth-child(4n+1) {
	margin-left: 0;
}
.goods_visual_thumb .thumb_list_item {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 15px;
	padding: 0;
	border: 1px solid #f6f6f6;
	aspect-ratio: 1/1;
	background-color: #fff;
}
.goods_visual_thumb .thumb_list_item.active {
	border: 1px solid #cccccc;
}
.goods_visual_thumb .thumb_list_item img {
	width: 100%;
}
.goods_visual_thumb .goods_badge_right {
	display: none;
}

/* ----- 商品情報 ----- */
.goods_detail {
	margin: 0 0 30px;
	padding: 0;
}
.goods_detail .goods_brand_type {
	margin-bottom: 5px;
	font-size: 1.4rem;
}
.goods_detail .goods_brand_img {
	height: 30px;
	vertical-align: middle;
}
.goods_detail .goods_type_img {
	height: 20px;
	margin-left: 10px;
	vertical-align: middle;
}
.goods_detail .goods_name {
	margin-top: 0;
	font-size: 1.5rem;
	font-weight: 500;
}
.goods_detail .goods_price_box {
	display: flex;
	align-items: baseline;
	margin: 5px 0 15px;
}
.goods_detail .goods_price {
	font-weight: 500;
	font-size: 2.4rem;
	letter-spacing: 0;
}
.goods_detail .goods_price .zeikomi {
	font-weight: 500;
	font-size: 1.4rem;
	letter-spacing: 0.1em;
}
.goods_detail .goods_perbox {
	font-size: 1.4rem;
	letter-spacing: 0.04em;
}
.goods_detail .goods_devide_price {
	color: #CB0005;
}
.goods_detail .goods_point {
	margin-top: 0;
	color: #AAAAAA;
	font-size: 1.3rem;
}
.goods_detail .aui_yotpo_star {
	margin-top: 2px;
	font-size: 1.2rem;
}
.goods_detail .goods_exp_link {
	margin-top: 4px;
	font-size: 1.3rem;
}
.goods_detail .goods_label {
	display: inline-block;
	margin-top: 4px;
	padding: 0;
	color: #CB0005;
	font-weight: 500;
	font-size: 1.3rem;
	letter-spacing: 0.06em;
}

#modal_lensdata_howto {
	max-width: 800px;
	padding: 5% 5%;
	background-color: #f6f6f6;
	text-align: center;
}

/* ----- アラート ----- */
.goods_alert {
	margin: 0 auto 40px;
	padding: 24px 10px;
	border: 1px solid #CB0005;
	color: #CB0005;
	text-align: center;
}

/* ----- Instagram投稿 ----- */
.goods_loka_sec {
	margin: 0 auto 40px;
}
.goods_loka_sec .goods_loka_title {
	margin-bottom: 10px;
	font-weight: 700;
	font-size: 15px;
	letter-spacing: 0.2em;
}

/* ----- キャッチ ----- */
.goods_catch {
	margin: 0 auto 40px;
}

/* ----- アテンション ----- */
.goods_attention {
	margin: 0 auto 48px;
}

/* ----- おまけ入力 ----- */
.goods_omake {
	margin-top: 30px;
}
.goods_omake .goods_omake_title {
	margin-top: 30px;
	padding-bottom: 6px;
	font-size: 1.4rem;
	border-bottom: 1px solid #222222;
}
.goods_omake .goods_omake_content {
	margin-top: 20px;
	font-size: 1.3rem;
}

/* ----- まとめ買い情報 ----- */
.goods_bulksale {
	margin-top: 20px;
}
.goods_bulksale .goods_bulksale_title {
	padding: 6px 0 5px;
	border: 1px solid #CB0005;
	font-weight: 500;
	color: #CB0005;
	text-align: center;
}
.goods_bulksale .goods_bulksale_item {
	margin-top: 20px;
}
.goods_bulksale .goods_bulksale_item:nth-of-type(1) {
	margin-top: 10px;
}
.goods_bulksale .goods_bulksale_item_title {
	cursor: pointer;
}
.goods_bulksale .goods_bulksale_item_title .more_text {
	color: #0094E1;
}
.goods_bulksale .goods_bulksale_item_content {
	display: none;
	margin: 0;
	padding: 0;
	transition: none;
}
.goods_bulksale .goods_bulksale_text {
	padding-top: 5px;
}
.goods_bulksale .goods_bulksale_linkbox {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 10px;
	padding: 16px 10px 16px 10px;
	background-color: #F6F6F6;
	color: #222222;
	opacity: 1;
}
.goods_bulksale .goods_bulksale_linkbox > .thumb {
	width: 150px;
	padding: 0 10px;
	text-align: center;
}
.goods_bulksale .goods_bulksale_linkbox > .aui_button {
	flex: 1;
	width: 160px;
	height: 62px;
	margin: 0 28px 0 10px;
	padding: 0;
	text-align: center;
	background-color: #fff;
}
.goods_bulksale .goods_bulksale_linkbox:hover > .aui_button {
	background-color: #CB0005;
	color: #fff;
}

/* ----- 注釈 ----- */
.goods_note_text {
	margin: 10px auto 24px;
	font-size: 1.1rem;
}
.goods_note_text span {
	color: #CB0005;
}

/* ----- セット数ボタン ----- */
.goods_set_btn {
	margin: 16px auto 16px;
}
.goods_set_btn .aui_button {
	font-size: 1.5rem;
}

/* ----- おすすめ商品 ----- */
.goods_rcmd_sec {
	margin-top: 40px;
	padding: 48px 24px 48px;
	background-color: #F6F6F6;
}
.goods_rcmd_sec .aui_title_02 {
	margin: 0 20px 40px;
}
.goods_rcmd_sec .aui_title_02 .en {
	margin-bottom: 14px;
	font-size: 2.4rem;
	letter-spacing: 0.28rem;
}
.goods_rcmd_sec .aui_title_02 .ja {
	font-size: 1.4rem;
	letter-spacing: 0.24rem;
}

/* ----- 販売停止アラート ----- */
.goods_lens_stop {
	margin-bottom: 40px;
	padding: 20px;
	border: 1px solid #D5D5D5;
}

/* ----- 商品コメント、アドキット ----- */
.goods_comment_sec {
	margin: 0 auto;
}
.goods_comment_sec .goods_comment_title {
	font-weight: 700;
	font-size: 15px;
	letter-spacing: 0.2em;
}
.goods_comment_sec .goods_comment {
	padding: 20px 0;
	line-height: 2;
	letter-spacing: 0.06em;
}

/* ----- レビュー ----- */
.goods_review_sec {
	background-color: #F6F6F6;
	padding: 38px 0 100px;
}
.goods_review_sec .goods_review_content {
	width: 1040px;
	margin: auto;
	padding: 80px 80px;
	background-color: #FFFFFF;
}

/* ----- トピックス ----- */
.goods_topics_sec {
	padding: 40px 0 0;
}

/* 商品詳細（メガネ）
--------------------------------------- */
.goods_glasses {
	width: 1040px;
	margin: auto;
}

/* ----- レンズデータ入力 ----- */
.goods_glasses .aui_goods_data_box {
	width: 100%;
}
.goods_glasses .aui_goods_data_box .aui_goods_data_name {
	flex-basis: 35%;
}

/* ----- 商品カラー名 ----- */
.goods_glasses .goods_visual .goods_color_name {
	position: absolute;
	bottom: 64px;
	z-index: 2;
	width: 100%;
	text-align: center;
}
.goods_glasses .goods_visual .goods_color_name img {
	width: 280px;
}

/* ----- 商品カラーラインナップ ----- */
.goods_glasses .goods_color_lineup {
	width: 80%;
	margin: -5px auto 20px;
	text-align: center;
}
.goods_glasses .goods_color_lineup p {
	margin: 12px auto 0;
	font-size: 1.4rem;
}
.goods_glasses .goods_color_lineup ul {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	width: 100%;
	margin: auto;
	padding: 0 0 14px 0;
}
.goods_glasses .goods_color_lineup li {
	width: calc(12.5% - 32px); /* 1列に8個のサムネイルを表示 */
	margin: 16px 16px 0;
}
.goods_glasses .goods_color_lineup li:last-child {
	margin-bottom: 0;
}

/* ----- 商品詳細タブ ----- */
.goods_glasses .goods_comment_sec .aui_tab .aui_tab_nav li a {
	font-weight: 700;
	padding: 25px 0;
}
.goods_glasses .goods_comment_sec .aui_tab .aui_tab_nav li.is_active a {
	border-bottom-color: #222222;
	color: #222222;
}

/* ニュース一覧
--------------------------------------- */
.news_archives .archives_date_area {
	display: flex;
	align-items: center;
	width: 1040px;
	margin: auto;
	padding: 0 0 50px 0;
}
.news_archives .archives_date_area .months ul {
	display: flex;
	align-items: center;
	width: 100%;
}
.news_archives .archives_date_area .months ul li {
	margin: 0 0 0 30px;
	font-size: 1.4rem;
}
.news_archives .archives_date_area .months ul li a {
	color: #222222;
}
.news_archives .archives_date_area .months ul li a:hover {
	text-decoration: underline;
}
.news_archives .archives_date_area .months ul li span {
	color: #AAAAAA;
}
.news_archives .archives_date_area .months ul li.active span {
	color: #CB0005;
}
.news_archives .news_sec {
	overflow: hidden;
	padding: 60px 0;
	background-color: #F6F6F6;
}

/* クーパー処方箋についてモーダル
--------------------------------------- */
#modal_howto_formulation {
	width: 950px !important;
	padding: 50px 0 0 0 !important;
	background-color: transparent !important;
	font-size: 14px;
	line-height: 2;
	letter-spacing: 0.1em;
	font-weight: 500;
}
#modal_howto_formulation p, #modal_howto_formulation span, #modal_howto_formulation ol, #modal_howto_formulation ul {
	margin: 0;
	padding: 0;
}
#modal_howto_formulation ol, #modal_howto_formulation ul {
	list-style-type: none;
}
#modal_howto_formulation .red {
	color: #e50000 !important;
}
#modal_howto_formulation .title {
	color: #ffffff;
	font-weight: 700;
	font-size: 24px;
	letter-spacing: 0.14em;
	text-align: center;
}
#modal_howto_formulation .order_wrap {
	margin: 60px 0 0 0;
}
#modal_howto_formulation .order_item {
	position: relative;
	margin-top: 30px;
	padding: 34px 150px;
	background-color: #ffffff;
}
#modal_howto_formulation .order_item::before {
	content: "";
	display: block;
	position: absolute;
	top: -18px;
	left: 50%;
	width: 0;
	height: 0;
	margin-left: -6px;
	border-style: solid;
	border-width: 8px 6px 0 6px;
	border-color: #ffffff transparent transparent transparent;
}
#modal_howto_formulation .order_item:nth-child(1)::before {
	display: none;
}
#modal_howto_formulation .order_item:nth-child(1) {
	padding-right: 20px;
}
#modal_howto_formulation .order_summary {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: auto;
	min-height: 40px;
}
#modal_howto_formulation .order_summary .num {
	margin-right: 20px;
}
#modal_howto_formulation .order_summary .num .label {
	display: inline-block;
	width: 92px;
	height: 32px;
	background-color: #333333;
	color: #ffffff;
	font-weight: 700;
	line-height: 32px;
	letter-spacing: 0.22em;
	text-align: center;
}
#modal_howto_formulation .order_summary .icon {
	width: 28px;
	margin-right: 20px;
	text-align: center;
}
#modal_howto_formulation .order_summary .icon img {
	max-width: 100%;
}
#modal_howto_formulation .order_summary .icon .size_s {
	width: 22px;
}
#modal_howto_formulation .order_summary .text {
	flex: 1;
	line-height: 1.6;
}
#modal_howto_formulation .order_detail {
	margin: auto;
	padding: 34px 0 0;
}
#modal_howto_formulation .order_detail .check_list {
	padding: 30px 30px;
	background-color: #f9f9f9;
}
#modal_howto_formulation .order_detail .check_list .prescription_sample {
	text-align: center;
}
#modal_howto_formulation .order_detail .check_list .prescription_sample img {
	margin-bottom: 30px;
}
#modal_howto_formulation .order_detail .check_list li {
	margin-bottom: 10px;
	padding-left: 30px;
	background-image: url(/img/howto/formulation/icon_check.png);
	background-position: left 4px;
	background-repeat: no-repeat;
	background-size: 18px auto;
}
#modal_howto_formulation .order_detail .check_list small {
	font-weight: 500;
	font-size: 13px;
}
#modal_howto_formulation .order_detail .note {
	font-size: 13px;
	font-weight: 500;
}
#modal_howto_formulation .order_detail .note .red {
	font-weight: 500;
}

/* メガネ レンズについて
--------------------------------------- */
.howto_glasseslens .point_label {
	margin-right: 5px;
	padding: 0.1rem 0.4rem 0.2rem;
	background-color: #CB0005;
	color: #FFFFFF;
	line-height: 1;
}

/* メガネ レンズについて
--------------------------------------- */
#howto_kounyu .text_img_box {
	display: flex;
	justify-content: space-between;
}
#howto_kounyu .text_img_box > div:nth-child(1) {
	width: 470px;
}
#howto_kounyu .text_img_box > div:nth-child(2) {
	width: 520px;
}

/* PayPay決済ご利用ガイド
--------------------------------------- */
#howto_paypay {
	margin: 0 auto;
}

#howto_paypay .main {
	background: #f24f4f;
}

#howto_paypay .main_image {
	position: relative;
	display: block;
	width: 950px;
	height: 320px;
	margin: 0 auto 74px;
}

/*
how_to
*/
#howto_paypay .how_to {
	width: 880px;
	margin: 0 auto 164px;
}

#howto_paypay .how_to_titlewrap {
	text-align: center;
}

#howto_paypay .how_to_title {
	font-size: 40px;
	font-weight: bold;
	letter-spacing: 0.3em;
	margin: 0 auto 10px;
	color: #000;
}

#howto_paypay .how_to_subtitle {
	width: 98px;
	margin: 0 auto 80px;
}

/*
step
*/
#howto_paypay .step {
	position: relative;
	width: 880px;
	margin: 0 auto;
	padding: 40px 35px 40px 40px;
	background: #f1f1f1;
	border-radius: 10px;
}

#howto_paypay .step_title {
	position: absolute;
	left: 40px;
	top: -27px;
}

#howto_paypay .step_block {
	width: 803px;
	margin: 0 0 40px;
	display: flex;
	justify-content: space-between;
}

#howto_paypay .step_block.anchorwrap {
	display: block;
}

#howto_paypay .step_block:last-child {
	margin: 0 auto;
}

#howto_paypay .step_img {
	width: 420px;
	margin: 0;
}

#howto_paypay .step_text {
	width: 345px;
	margin: -1.2% 0 0;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 2.4;
}

#howto_paypay .step_text.step3 {
	width: auto;
	margin: 30px 0 0;
}

#howto_paypay .step_text span:nth-child(1) {
	display: block;
	margin: -1.2% 0 30px;
}

#howto_paypay .step_text span:nth-child(2) a {
	display: inline-block;
	color: #fd0131;
	border-bottom: solid 1px #fd0131;
}

#howto_paypay .step_choice {
	width: 746px;
	margin: 0 auto 40px;
	display: flex;
	justify-content: flex-start;
}

#howto_paypay .step_choice li {
	width: auto;
	margin: 0;
}

#howto_paypay .step_choice li:first-child {
	margin-right: 70px;
}

#howto_paypay .anchor {
	position: relative;
	color: #fd0131;
	display: block;
	text-decoration: none;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.2em;
}

#howto_paypay .anchor::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

#howto_paypay .anchor_icon::before {
	left: -30px;
	width: 23px;
	height: 23px;
	background: url(/img/howto/paypay/pay_icon_arrow.png) no-repeat center center;
}

#howto_paypay .pay_cont {
	width: 800px;
	margin: 0 auto 40px;
	background: #fff;
}

#howto_paypay .pay_cont:last-child {
	margin: 0 auto;
}

#howto_paypay .pay_wrap {
	width: 720px;
	margin: 0 auto;
	padding: 29px 0 2px;
}

#howto_paypay .pay_title {
	display: block;
	color: #000;
	font-size: 20px;
	font-weight: 700;
	margin: 0 0 33px;
	padding: 0 0 23px;
	text-align: center;
	border-bottom: solid 1px #000;
	letter-spacing: 0.2em;
}

#howto_paypay .pay_catch {
	font-size: 15px;
	font-weight: 500;
	margin: 0 0 46px;
	letter-spacing: 0.1em;
}

#howto_paypay .pay_subtitle {
	display: block;
	background: #ffeff2;
	color: #f24f4f;
	font-size: 16px;
	font-weight: 500;
	border-radius: 10px;
	margin: 0 0 22px;
	padding: 12px 0 12px 20px;
	letter-spacing: 0.125em;
}

#howto_paypay .pay_text {
	font-size: 15px;
	font-weight: 500;
	line-height: 2.1;
	letter-spacing: 0.125em;
	margin: 0 0 29px;
	text-indent: -0.6em;
	padding-left: 1em;
}

#howto_paypay .pay_stepwrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	margin-bottom: 40px;
}

#howto_paypay .pay_stepwrap.type2 {
	margin-bottom: 0;
}

#howto_paypay .pay_stepwrap.type3 {
	margin-bottom: 0;
}

#howto_paypay .pay_stepwrap.type3.first {
	margin-bottom: 47px;
}

#howto_paypay .pay_step_box {
	width: 222px;
	margin-right: 39px;
	margin-bottom: 30px;
}

#howto_paypay .pay_step_box:nth-child(3n) {
	width: 198px;
	margin-right: 0;
}

#howto_paypay .pay_step_img {
	width: 222px;
	margin: 0 auto 15px;
}

#howto_paypay .type2 .pay_step_box {
	width: 222px;
	margin-right: 27px;
	margin-bottom: 30px;
}

#howto_paypay .type2 .pay_step_box:nth-child(3n) {
	width: 222px;
	margin-right: 0;
}

#howto_paypay .type3 .pay_step_box {
	width: 206px;
	margin-right: 51px;
	margin-bottom: 30px;
}

#howto_paypay .type3 .pay_step_box:nth-child(3n) {
	width: 206px;
	margin-right: 0;
}

#howto_paypay .pay_step_text {
	font-size: 14px;
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: 0.125em;
}

#howto_paypay .pay_step_text.caution {
	margin-top: 20px;
	position: relative;
	padding-left: 18px;
}

#howto_paypay .pay_step_text.caution::before {
	position: absolute;
	display: block;
	content: "";
	left: -4px;
	width: 20px;
	height: 20px;
	background: url(/img/howto/paypay/pay_caution.png) no-repeat center center;
	background-size: contain;
}

#howto_paypay .pay_step_text span {
	font-weight: bold;
}

/*
app
*/
#howto_paypay .app {
	width: 880px;
	margin: 0 auto;
	border-radius: 10px;
	border: solid 3px #f24f4f;
}

#howto_paypay .app_title {
	position: relative;
	color: #f24f4f;
	font-size: 26px;
	font-weight: bold;
	letter-spacing: 0.1em;
	display: block;
	margin: 0 0 13px;
	text-align: center;
	top: -23px;
}

#howto_paypay .app_title span {
	background: #fff;
	display: inline-block;
	padding: 0 25px 0 29px;
}

#howto_paypay .app_text {
	font-size: 18px;
	font-weight: 500;
	letter-spacing: 0.2em;
	display: block;
	margin-bottom: 35px;
	text-align: center;
}

#howto_paypay .app_imgwrap {
	width: 335px;
	margin: 0 auto 40px;
	display: flex;
	justify-content: space-between;
}

#howto_paypay .app_icon:nth-child(1) {
	margin: 0;
}

#howto_paypay .app_icon:nth-child(2) {
	margin: 0;
}

/*
arrow
*/
#howto_paypay .arrow {
	width: 24px;
	margin: 50px auto;
}

/* エポスかんたん決済
--------------------------------------- */
#howto_epos * {
	font-family: "Noto Sans JP", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ ゴシック", "MS Gothic", sans-serif;
	-webkit-font-feature-settings: "palt";
	        font-feature-settings: "palt";
}

#howto_epos div,
#howto_epos p,
#howto_epos span,
#howto_epos h1,
#howto_epos h2,
#howto_epos h3,
#howto_epos ul,
#howto_epos li,
#howto_epos a {
	box-sizing: border-box;
	text-decoration: none;
	color: #000;
}

#howto_epos {
	margin: 0 auto;
}

#howto_epos .main {
	background: #a5001e;
}

#howto_epos .main_image {
	position: relative;
	display: block;
	width: 950px;
	height: 320px;
	margin: 0 auto 50px;
}

#howto_epos .epos_bnr {
	width: 610px;
	margin: 0 auto 50px;
	border: solid 1px #595758;
	background: #fff9b1;
}

#howto_epos .epos_bnr img {
	display: block;
	height: auto;
	margin: 0 auto;
	max-width: 100%;
	width: auto;
}

#howto_epos .epos_bnr a {
	display: block;
	transition: all 0.3s;
}

#howto_epos .epos_bnr a:hover {
	opacity: 0.7;
}

#howto_epos .epos_text {
	position: relative;
	text-align: center;
	line-height: 1;
	margin: 0 auto;
	padding: 15px 0;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 0.15em;
	color: #595758;
}

#howto_epos .epos_link {
	position: relative;
	text-align: center;
	line-height: 1;
	margin: 0 auto;
	padding: 15px 0;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 0.15em;
	color: #595758;
}

#howto_epos .epos_link::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 25px;
	width: 10px;
	height: 10px;
	margin-top: -4px;
	border-top: 2px solid #595758;
	border-right: 2px solid #595758;
	border-left: 0;
	border-bottom: 0;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transition: all 0.3s;
}

#howto_epos a:hover .epos_link::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 25px;
	width: 10px;
	height: 10px;
	margin-top: -4px;
	border-top: 2px solid #595758;
	border-right: 2px solid #595758;
	border-left: 0;
	border-bottom: 0;
	-webkit-transform: translateX(5px) rotate(45deg);
	transform: translateX(5px) rotate(45deg);
	transition: all 0.3s;
}

/*
catch
*/
#howto_epos .catch {
	margin: 0 auto 80px;
}

#howto_epos .catch_text {
	font-size: 16px;
	text-align: center;
	letter-spacing: 0.15em;
	margin: 0 auto 24px;
}

#howto_epos .catch_text:last-of-type {
	margin: 0 auto 35px;
}

#howto_epos .catch_text span {
	font-size: 18px;
	font-weight: bold;
	color: #a5001e;
}

#howto_epos .catch_btn {
	width: 360px;
	margin: 0 auto;
}

#howto_epos .catch_btn a {
	position: relative;
	display: block;
	border-radius: 30px;
	color: #fff;
	background: #a5001e;
	font-size: 16px;
	font-weight: bold;
	letter-spacing: 1px;
	padding: 15px 0;
	text-align: center;
}

#howto_epos .catch_btn a::after {
	content: "";
	border: 6px solid transparent;
	border-left: 10px solid #fff;
	position: absolute;
	right: 14px;
	bottom: 25px;
	z-index: 2;
	transition: all 0.3s;
}

/*
how_to
*/
#howto_epos .how_to {
	width: 880px;
	margin: 0 auto 164px;
}

#howto_epos .how_to_titlewrap {
	text-align: center;
}

#howto_epos .how_to_title {
	font-size: 40px;
	font-weight: bold;
	letter-spacing: 0.3em;
	margin: 0 auto;
	line-height: 1.75;
	color: #000000;
}

#howto_epos .how_to_subtitle {
	width: 98px;
	margin: 0 auto 80px;
}

/*
step
*/
#howto_epos .step {
	position: relative;
	width: 880px;
	margin: 0 auto;
	padding: 40px 35px 40px 40px;
	background: #F1F1F1;
	border-radius: 10px;
}

#howto_epos .step.bottom {
	margin: 0 auto 80px;
}

#howto_epos .step_title {
	position: absolute;
	left: 40px;
	top: -27px;
}

#howto_epos .step_block {
	width: 803px;
	margin: 0 0 40px;
	display: flex;
	justify-content: space-between;
}

#howto_epos .step_block.anchorwrap {
	display: block;
}

#howto_epos .step_block:last-child {
	margin: 0 auto;
}

#howto_epos .step_img {
	width: 420px;
	margin: 0;
}

#howto_epos .step_text {
	width: 345px;
	margin: -1.2% 0 0;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 2.4;
}

#howto_epos .step_text span:nth-child(1) {
	display: block;
	margin: -1.2% 0 30px;
}

/*
アコーディオン
*/
#howto_epos .about_epos_container {
	width: 880px;
	margin: 0 auto;
	border-top: solid 1px #ccc;
}

#howto_epos .about_epos_title {
	position: relative;
	margin: 0;
	padding: 20px 30px;
	font-size: 20px;
	font-weight: bold;
	color: #000;
	background: #f8f8f8;
	border-bottom: solid 1px #ccc;
	cursor: pointer;
}

#howto_epos .about_epos_title:hover,
#howto_epos .about_epos_title:active,
#howto_epos .about_epos_title.open {
	background-color: #f8f8f8;
}

#howto_epos .about_epos_title.open {
	border-bottom: none;
}

#howto_epos .about_epos_title::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 30px;
	width: 16px;
	height: 4px;
	/*縦線に*/
	-webkit-transform: rotate(90deg);
	        transform: rotate(90deg);
	background: #aaa;
	transition: all 0.3s ease-in-out;
}

#howto_epos .about_epos_title::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 30px;
	/*横線*/
	width: 16px;
	height: 4px;
	background: #aaa;
	transition: all 0.2s ease-in-out;
}

#howto_epos .about_epos_title.open::before {
	-webkit-transform: rotate(180deg);
	        transform: rotate(180deg);
}

#howto_epos.about_epos_title.open::after {
	opacity: 0;
}

#howto_epos .about_epos_text {
	padding: 30px;
	font-size: 16px;
	border-bottom: solid 1px #ccc;
}

#howto_epos .about_epos_list {
	font-size: 16px;
	line-height: 1.5;
}

#howto_epos .about_epos_note {
	font-size: 16px;
	line-height: 1.5;
}

/*
arrow
*/
#howto_epos .epos_arrow {
	width: 24px;
	margin: 50px auto;
}

/* 【楽天ポイントが使える・貯まる】楽天ペイ */
#howto_rakutenpay {
	font-family: "Noto Sans JP", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	-webkit-text-size-adjust: 100%;
	min-width: 1040px;
	height: 100%;
	overflow: hidden;
}

#howto_rakutenpay * {
	box-sizing: border-box;
}

#howto_rakutenpay a {
	text-decoration: none;
}

#howto_rakutenpay .sec_mv {
	text-align: center;
	background-color: #bf0000;
}

#howto_rakutenpay .sec_mv_in {
	width: 1040px;
	margin: 0 auto;
}

#howto_rakutenpay .sec_mv_ttl {
	margin: 0 -230px;
}

#howto_rakutenpay .sec_install {
	padding: 60px 0 76px;
	background-color: #f1f1f1;
}

#howto_rakutenpay .sec_install_in {
	width: 1040px;
	margin: 0 auto;
}

#howto_rakutenpay .sec_install_ttl {
	font-size: 22px;
	font-weight: bold;
	color: #bf0000;
	text-align: center;
	letter-spacing: 0.1em;
}

#howto_rakutenpay .sec_install_layoutbox01 {
	margin: 24px auto 0;
	width: 800px;
	background-color: #ffffff;
	padding: 42px 0 52px;
	border-radius: 10px;
}

#howto_rakutenpay .sec_install_layoutbox01_ttl {
	font-size: 16px;
	font-weight: bold;
	color: #222222;
	text-align: center;
	letter-spacing: 0.08em;
}

#howto_rakutenpay .sec_install_layoutbox01_btn {
	margin-top: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
}

#howto_rakutenpay .sec_install_layoutbox01_btn_item {
	margin: 0;
}

#howto_rakutenpay .sec_install_layoutbox01_btn_item + * {
	margin-left: 64px;
}

#howto_rakutenpay .sec_install_layoutbox01_btn_btn img {
	width: auto;
	height: 51px;
}

#howto_rakutenpay .sec_install.is_red {
	margin-top: 120px;
	background-color: #bf0000;
}

#howto_rakutenpay .sec_install.is_red .sec_install_ttl {
	color: #ffffff;
}

#howto_rakutenpay .sec_use_step {
	padding: 120px 0 0;
}

#howto_rakutenpay .sec_use_step_in {
	width: 1040px;
	margin: 0 auto;
}

#howto_rakutenpay .sec_use_step_ttl {
	text-align: center;
}

#howto_rakutenpay .sec_use_step_ttl img {
	width: 185px;
	height: auto;
}

#howto_rakutenpay .sec_use_step .sec_use_step_grid {
	margin: 70px auto 0;
	width: 880px;
	counter-reset: counter01;
}

#howto_rakutenpay .sec_use_step .sec_use_step_grid > *:first-child {
	margin-top: 0 !important;
}

#howto_rakutenpay .sec_use_step .sec_use_step_grid > *:first-child:before {
	display: none !important;
}

#howto_rakutenpay .sec_use_step .sec_use_step_grid_item {
	position: relative;
	margin: 96px 0 0;
}

#howto_rakutenpay .sec_use_step .sec_use_step_grid_item_in {
	counter-increment: counter01;
	position: relative;
	background-color: #f1f1f1;
	padding: 40px 0 40px 40px;
	border-radius: 10px;
}

#howto_rakutenpay .sec_use_step .sec_use_step_grid_item_in > *:first-child {
	margin-top: 0 !important;
}

#howto_rakutenpay .sec_use_step .sec_use_step_grid_item_in:before {
	content: "";
	position: absolute;
	top: 0;
	left: 40px;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	width: 66px;
	height: 28px;
	background-image: url(/img/howto/rakutenpay/use_step_txt01.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 99% auto;
}

#howto_rakutenpay .sec_use_step .sec_use_step_grid_item_in:after {
	content: counter(counter01);
	position: absolute;
	top: 0;
	left: 114px;
	-webkit-transform: translate(0, -63%);
	transform: translate(0, -63%);
	line-height: 1;
	font-family: "Ubuntu", sans-serif;
	font-size: 40px;
	font-weight: bold;
	color: #bf0000;
}

#howto_rakutenpay .sec_use_step .sec_use_step_grid_item:before {
	position: absolute;
	content: "";
	top: 0%;
	left: 50%;
	-webkit-transform: translate(-50%, -180%);
	transform: translate(-50%, -180%);
	width: 26px;
	height: 37px;
	background-image: url(/img/howto/rakutenpay/use_step_arrow.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 99% auto;
}

#howto_rakutenpay .sec_use_step .sec_use_step_grid_txt {
	font-size: 15px;
	font-weight: 500;
	color: #222222;
	line-height: 2;
	letter-spacing: 0.08em;
}

#howto_rakutenpay .sec_use_step_layoutbox01 {
	margin-top: 30px;
	display: flex;
	align-items: flex-start;
	justify-content: center;
}

#howto_rakutenpay .sec_use_step_layoutbox01_item:last-of-type {
	flex: 1;
	margin-left: 38px;
}

/* 店舗情報
--------------------------------------- */
#shop_contents dt,
#shop_contents dd {
	margin: 0;
}

#shop_contents .sec_shop_content {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 1040px;
	margin: auto;
}

#shop_contents .shop_content_info {
	width: 40%;
	display: flex;
	flex-wrap: wrap;
	align-content: baseline;
}

#shop_contents .shop_content_info_title {
	font-weight: 500;
	width: 30%;
	min-height: 80px;
}

#shop_contents .shop_content_info_date {
	width: 70%;
}

#shop_contents .follow_sns {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin: -8px auto auto -8px;
	gap: 0 2px;
}

#shop_contents .follow_sns_item {
	margin: 0;
}

#shop_contents .follow_sns_item img {
	width: 40px;
}

#shop_contents .shop_content_img {
	width: 55%;
}

#shop_contents .shop_content_map {
	width: 100%;
	margin-top: 72px;
}

#shop_contents .shop_content_map_btn {
	text-align: center;
}

/* ログイン
--------------------------------------- */
.login_box {
	padding: 0 40px 40px;
	border: 1px solid #D5D5D5;
}
.login_box .login_box_title {
	margin: 0 -40px 48px;
	padding: 28px 0;
	background-color: #F6F6F6;
	text-align: center;
	font-size: 1.6rem;
	font-weight: 500;
}
.login_box .q {
	position: relative;
	padding-left: 1.5em;
	padding-right: 1.5em;
	font-size: 1.4rem;
	font-weight: bold;
}
.login_box .q::before {
	content: "Q.";
	position: absolute;
	top: 0;
	left: 0;
	font-size: 1em;
}
.login_box .a {
	position: relative;
	padding: 0 1.5em;
}
.login_box .a::before {
	content: "A.";
	position: absolute;
	top: 0;
	left: 0;
	font-size: 1em;
}

/* マイページ注文履歴詳細
--------------------------------------- */
.mporder_detail .order_data {
	display: block;
}
.mporder_detail .order_data dl {
	display: inline-block;
	margin: 0 45px 0 0;
}

/* マイページ注文履歴
--------------------------------------- */
.mporder_list_itembox {
	margin: 48px auto;
	padding: 48px;
	background-color: #ffffff;
}
.mporder_list_itembox .order_data {
	display: block;
}
.mporder_list_itembox .order_data dl {
	display: inline-block;
	margin: 0 45px 0 0;
}
.mporder_list_itembox:nth-of-type(1) {
	margin-top: 0;
}

/* 注文履歴スライダー&モーダル
--------------------------------------- */
/*スライドタイトル調整*/
#mporder_slider .aui_title_flex_wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 5vw;
	width: 1040px;
	margin: 0 auto;
}
#mporder_slider .aui_slider_title {
	margin: 40px auto 20px;
	padding: 0 0 0 80px;
}
#mporder_slider .aui_slider_title.ja {
	font-size: 1.8rem;
}
#mporder_slider .view_all_camp {
	margin: 3% 0 0 0;
}

/* スクロール固定 */
body.mporder_fixed {
	position: fixed;
	width: 100%;
	height: 100%;
	left: 0;
}

/* モーダル部分 */
#mporder_modal {
	background: #fff;
	padding: 20px 20px 200px;
	position: fixed;
	left: 0;
	right: 0;
	bottom: -120%;
	width: 50%;
	margin: 0 auto;
	height: 100vh;
	z-index: 200002;
	transition: all 0.6s;
	border-radius: 2em 2em 0 0;
	box-shadow: 0px 0px 15px -5px #777777;
}
#mporder_modal.active {
	bottom: -10%;
}
#mporder_modal .modal_close {
	z-index: 200010;
	position: absolute;
	top: 17px;
	right: 30px;
	width: 30px;
	height: 30px;
}
#mporder_modal .modal_close:before {
	content: "";
	position: absolute;
	display: block;
	background: #000;
	width: 1px;
	height: 30px;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%) rotate(-45deg);
	        transform: translate(-50%, -50%) rotate(-45deg);
}
#mporder_modal .modal_close:after {
	content: "";
	position: absolute;
	display: block;
	background: #000;
	width: 1px;
	height: 30px;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%) rotate(45deg);
	        transform: translate(-50%, -50%) rotate(45deg);
}
#mporder_modal .modal_inner {
	position: relative;
	height: 100%;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	margin-top: 5%;
	z-index: 200004;
	-ms-scroll-chaining: none;
	    overscroll-behavior: contain;
}
#mporder_modal .modal_inner ul li {
	margin-top: 2%;
}
#mporder_modal .modal_inner ul li:first-of-type {
	margin-top: 0;
}
#mporder_modal .modal_inner ul li img {
	display: block;
	width: 80%;
	margin: 0 auto;
}
#mporder_modal .all_camp_bnr_title {
	text-align: center;
	font-size: 1.8rem;
}

/* モーダルバナー下コメント */
#mporder_modal .swiper-comment {
	display: block;
	text-align: center;
	margin-top: 3px;
}

/* モーダル背景 */
#mporder_modal_overlay {
	background: rgba(0, 0, 0, 0.7);
	cursor: pointer;
	position: fixed;
	bottom: 0%;
	left: 0;
	height: 100%;
	width: 100%;
	bottom: -120%;
	z-index: 200001;
}
#mporder_modal_overlay.active {
	bottom: 0%;
}

/* スライダー下コメント */
#mporder_slider .swiper-comment {
	display: block;
	text-align: center;
	margin-top: 3px;
}

/*スライド部分パーツ調整*/
#mporder_slider .swiper {
	position: relative;
	width: 1040px;
	margin: 0 auto;
	overflow: hidden;
}
#mporder_slider .swiper-button-next,
#mporder_slider .swiper-button-prev {
	top: calc(50% - 20px);
	width: 30px;
	height: 56px;
	background-color: rgba(255, 255, 255, 0.6);
}
#mporder_slider .swiper-button-prev {
	left: 14.4%;
}
#mporder_slider .swiper-button-next {
	right: 14.4%;
}
#mporder_slider .swiper-button-prev::after,
#mporder_slider .swiper-button-next::after {
	position: relative;
	content: "";
	width: 11px;
	height: 11px;
	border-top: 2px solid #222222;
	border-right: 2px solid #222222;
	transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
#mporder_slider .swiper-button-prev::after {
	left: 2px;
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
}
#mporder_slider .swiper-button-next::after {
	right: 2px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
#mporder_slider .swiper-button-prev:hover::after {
	border-color: #BBBBBB;
}
#mporder_slider .swiper-button-next:hover::after {
	border-color: #BBBBBB;
}

/* マイページ定期購入
--------------------------------------- */
.mpsubsclist_table {
	width: 100%;
	margin: 0;
}
.mpsubsclist_table th, .mpsubsclist_table td {
	white-space: nowrap;
}
.mpsubsclist_table > tbody > tr {
	border-bottom: 1px solid #D5D5D5;
}
.mpsubsclist_table > thead > tr + tr {
	border-top: none;
}
.mpsubsclist_table > tbody > tr.border_no {
	border-top: none;
}
.mpsubsclist_table > thead > tr > th {
	padding: 16px 0;
	background-color: #F6F6F6;
	border-right: 2px solid #FFFFFF;
	font-weight: normal;
}
.mpsubsclist_table > thead > tr > th:last-child {
	border-right: none;
}
.mpsubsclist_table > thead > tr > th:nth-child(1) {
	width: 18%;
}
.mpsubsclist_table > thead > tr > th:nth-child(2) {
	width: 14%;
}
.mpsubsclist_table > thead > tr > th:nth-child(3) {
	width: 14%;
}
.mpsubsclist_table > thead > tr > th:nth-child(4) {
	width: 14%;
}
.mpsubsclist_table > thead > tr > th:nth-child(5) {
	width: 14%;
}
.mpsubsclist_table > thead > tr > th:nth-child(6) {
	width: 14%;
}
.mpsubsclist_table > thead > tr > th:nth-child(7) {
	width: 12%;
}
.mpsubsclist_table > thead > tr > th:last-child {
	border-right: none;
}
.mpsubsclist_table > tbody > tr > td {
	padding: 48px 0;
	vertical-align: middle;
	text-align: center;
}
.mpsubsclist_table .addr_box {
	display: flex;
	align-items: center;
}
.mpsubsclist_table .addr_box_button {
	position: relative;
	width: 20px;
	height: 20px;
	margin: auto 12% auto 10%;
	border: 1px solid #CCCCCC;
	border-radius: 50%;
	background-color: transparent;
	text-indent: -99999px;
}
.mpsubsclist_table .addr_box_button::after {
	display: none;
}
.mpsubsclist_table .addr_box.selected .addr_box_button::after {
	content: "";
	display: inline-block;
	position: absolute;
	top: 4px;
	left: 4px;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background-color: #666666;
}
.mpsubsclist_table .addr_box:hover .addr_box_button {
	border-color: #AAAAAA;
}
.mpsubsclist_table .addr_box_text {
	width: 70%;
}

.mpsubscexp_modal.mfp-popup-block {
	max-width: 1040px;
	padding: 5px 40px 40px;
}

/* ご注文完了
--------------------------------------- */
.order_complete .aui_title_04 {
	margin-top: 0;
	margin-bottom: 0;
}

/* ご注文内容確認
--------------------------------------- */
.order_confirm .aui_title_04 {
	margin-top: 60px;
	margin-bottom: 10px;
	border-bottom: 0;
}
.order_confirm .sec_content {
	padding: 35px 40px;
	background-color: #F6F6F6;
}

/* 会計 */
.order_confirm .order_price_sec .sec_content dd {
	font-size: 1.4rem;
}

/* ご注文商品 */
.order_confirm .order_products_sec .sec_content {
	padding: 0;
	background-color: transparent;
}

/* ご注文手続き
--------------------------------------- */
.order_delivery .sec_content {
	width: 100%;
	margin: 30px 0 70px;
}
.order_delivery .radio_content {
	display: none;
	margin-top: 15px;
	padding: 35px 40px;
	background-color: #F6F6F6;
}

/* お支払い方法選択 */
.order_delivery .pay_sec .pay_list > li {
	margin-bottom: 20px;
}
.order_delivery .pay_sec .pay_list > li .aui_form_control {
	display: block;
}
.order_delivery .pay_sec .pay_list > li .fee {
	font-size: 1em;
}
.order_delivery .pay_sec .card_input_data {
	padding-top: 10px;
}
.order_delivery .pay_sec .card_input_data dt {
	padding: 5px 3.5rem 5px 0;
}
.order_delivery .pay_sec .card_input_data dd {
	padding: 5px 0;
}
.order_delivery .pay_sec .aui_dlist.is_colon dt::before {
	top: 50%;
	right: 1.5rem;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
}

/* クーポンまたはポイント */
.order_delivery .discount_sec .sec_content {
	margin-top: 30px;
	padding: 40px;
	background-color: #F6F6F6;
}

/* お届け先住所 */
.order_delivery .addr_sec li {
	margin-bottom: 20px;
}
.order_delivery .addr_sec .radio_content {
	margin-top: 30px;
	padding: 0px 0;
	background-color: transparent;
}

/* 配送日時指定 */
.order_delivery .delivery_date_sec .sec_content {
	margin-top: 30px;
	padding: 40px;
	background-color: #F6F6F6;
}

/* お客さまサポート（よくあるご質問）
--------------------------------------- */
/* ----- トップ・下層ページ 共通タイトル ----- */
.faq_index .container_title,
.faq_pages .container_title {
	text-align: center;
}
.faq_index .container_title::before,
.faq_pages .container_title::before {
	content: "";
	display: inline-block;
	margin: 0 0 0px 0;
	padding: 0;
	width: 36px;
	height: 31px;
	background-image: url(/img/faq/icon_balloon.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% auto;
}
.faq_index .container_title .text,
.faq_pages .container_title .text {
	display: block;
	margin: 0;
	padding: 0;
	font-weight: 700;
	font-size: 26px;
	line-height: 1.4;
	letter-spacing: 0.16em;
}

/* ----- ヘッダー ----- */
.faq_index .faq_header_container {
	background-color: #ff7f37;
	text-align: center;
}

/* ----- ボット ----- */
.faq_index .faq_bot_container {
	margin-top: 100px;
}

/* ----- よく見られている質問 ----- */
.faq_popular_container {
	margin-top: 90px;
}
.faq_popular_container .popular_list {
	display: flex;
	flex-wrap: wrap;
	margin-top: 70px;
}
.faq_popular_container .popular_list > li {
	width: calc((100% - 24px) / 2);
	margin-left: 24px;
}
.faq_popular_container .popular_list > li:nth-child(2n+1) {
	margin-left: 0;
}
.faq_popular_container .popular_list > li {
	margin-bottom: 0;
}
.faq_popular_container .popular_list > li:nth-child(n+3) {
	margin-top: 24px;
}
.faq_popular_container .popular_list > li > a {
	display: flex;
	align-items: center;
	width: 100%;
	padding: 22px 1em;
	padding-left: 3em;
	text-indent: -1.3em;
	border: 3px solid #ff7f37;
	border-radius: 4px;
	background-color: #ff7f37;
	color: #ffffff;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.14em;
}
.faq_popular_container .popular_list > li > a:hover {
	opacity: 1;
	background-color: #ffffff;
	color: #ff7f37;
}

/* ----- よくある質問を探す ----- */
.faq_cate_container {
	margin-top: 100px;
	padding: 80px 0;
	background-color: #FEF5F1;
}
.faq_cate_container .cate_list {
	display: flex;
	flex-wrap: wrap;
	margin-top: 65px;
}
.faq_cate_container .cate_list > li {
	width: calc((100% - 80px) / 5);
	margin-left: 20px;
}
.faq_cate_container .cate_list > li:nth-child(5n+1) {
	margin-left: 0;
}
.faq_cate_container .cate_list > li {
	margin-bottom: 0;
}
.faq_cate_container .cate_list > li:nth-child(n+6) {
	margin-top: 24px;
}
.faq_cate_container .cate_list > li > a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 60px;
	padding: 0;
	border: 3px solid #ff7f37;
	border-radius: 60px;
	background-color: #ff7f37;
	color: #ffffff;
	font-weight: 700;
	line-height: 1.4;
	text-align: center;
	letter-spacing: 0.14em;
}
.faq_cate_container .cate_list > li > a:hover {
	opacity: 1;
	background-color: #ffffff;
	color: #ff7f37;
}

/* ----- チャットで質問する ----- */
.faq_botlink_container {
	padding: 110px 0;
	background-color: #ff7f37;
	text-align: center;
}
.faq_botlink_container .botlink_btn {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	position: relative;
	width: 640px;
	height: 80px;
	border: 3px solid #ffffff;
	border-radius: 4px;
	background-color: #ffffff;
	color: #ff7f37;
	font-weight: 700;
	font-size: 24px;
	letter-spacing: 0.16em;
	transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.faq_botlink_container .botlink_btn::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 5px);
	right: 24px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 8px;
	border-color: transparent transparent transparent currentColor;
}
.faq_botlink_container .botlink_btn:hover {
	background-color: #ff7f37;
	color: #ffffff;
	cursor: pointer;
}
.faq_botlink_container .botlink_btn:not(.active) .close_text {
	display: none;
}
.faq_botlink_container .botlink_btn.active .open_text {
	display: none;
}

.botlink_no .faq_botlink_container {
	display: none;
}

/* ----- 問い合わせ先 ----- */
.faq_inquiry_container {
	margin-top: 100px;
}
.faq_inquiry_container .text {
	font-weight: 500;
	font-size: 15px;
	letter-spacing: 0.14em;
	text-align: center;
}
.faq_inquiry_container .form_link_btn {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	position: relative;
	width: 320px;
	height: 64px;
	border: 3px solid #ff7f37;
	border-radius: 4px;
	background-color: #ff7f37;
	color: #ffffff;
	font-weight: 700;
	font-size: 16px;
	letter-spacing: 0.16em;
}
.faq_inquiry_container .form_link_btn::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 5px);
	right: 24px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 8px;
	border-color: transparent transparent transparent currentColor;
}
.faq_inquiry_container .form_link_btn:hover {
	opacity: 1;
	background-color: #ffffff;
	color: #ff7f37;
}
.faq_inquiry_container .free_dial {
	margin: 0;
	color: #ff7f37;
	font-weight: 700;
	line-height: 1;
}
.faq_inquiry_container .free_dial .small {
	vertical-align: 4px;
}
.faq_inquiry_container .free_dial .large {
	font-size: 28px;
	letter-spacing: 0.05em;
}
.faq_inquiry_container .free_dial_time {
	margin: 10px 0 0 0;
	font-weight: 500;
	letter-spacing: 0.08em;
}

/* ----- Q&A ----- */
.faq_pages .q {
	position: relative;
	padding-left: 1.5em;
	padding-right: 1.5em;
	font-size: 1.4rem;
}
.faq_pages .q::before {
	content: "Q.";
	position: absolute;
	top: 0;
	left: 0;
	font-size: 1em;
}
.faq_pages .a {
	position: relative;
	padding: 0 1.5em;
}
.faq_pages .a::before {
	content: "A.";
	position: absolute;
	top: 0;
	left: 0;
	font-size: 1em;
}

/* ポイントよくあるご質問
--------------------------------------- */
.pointfaq_contents .q {
	position: relative;
	padding-left: 1.5em;
	padding-right: 1.5em;
	font-size: 1.4rem;
}
.pointfaq_contents .q::before {
	content: "Q.";
	position: absolute;
	top: 0;
	left: 0;
	font-size: 1em;
}
.pointfaq_contents .a {
	position: relative;
	padding: 0 1.5em;
}
.pointfaq_contents .a::before {
	content: "A.";
	position: absolute;
	top: 0;
	left: 0;
	font-size: 1em;
}

/* サイトマップ
--------------------------------------- */
.sitemap_contents .page_list_box_wrap {
	display: flex;
}
.sitemap_contents .page_list_box {
	flex: 1 0 auto;
}
.sitemap_contents .page_list_box:last-child {
	flex: 0 0 auto;
	margin-right: 0;
}
.sitemap_contents .page_list_box .title {
	font-weight: 700;
	font-size: 1.5rem;
}
.sitemap_contents .page_list_box .aui_tree {
	margin-top: 5px;
}
.sitemap_contents .type_title {
	margin: 40px 0 0 0;
}
.sitemap_contents .type_list {
	margin-top: 20px;
}
.sitemap_contents .type_list > li > a {
	font-weight: bold;
	font-size: 1.4rem;
}
.sitemap_contents .brand_list {
	margin: 5px 0 0 0;
}
.sitemap_contents .brand_list > li:nth-child(n+2) {
	margin-top: 40px;
}
.sitemap_contents .brand_list > li > a {
	font-weight: bold;
	font-size: 1.4rem;
}
.sitemap_contents .product_list {
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 0 0;
}
.sitemap_contents .product_list > li {
	width: 42%;
	margin: 10px 8% 0 0;
	line-height: 1.6;
}
.sitemap_contents .product_list > li:nth-child(n+3) {
	margin-top: 0;
}
.sitemap_contents .product_list > li::before {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	margin: 0 4px 1px 0;
	border-style: solid;
	border-width: 4px 0 4px 6px;
	border-color: transparent transparent transparent #222222;
}
.sitemap_contents .product_list.lv3 {
	margin-top: -5px;
}
.sitemap_contents .product_list.lv3 > li {
	margin-top: 20px;
}
.sitemap_contents .product_setlist {
	display: flex;
	flex-wrap: wrap;
	margin: 5px 0 0 0;
}
.sitemap_contents .product_setlist > li {
	width: 20%;
	margin: 0;
}
.sitemap_contents .glasses_list > .title {
	margin-top: 20px;
	font-weight: bold;
	font-size: 1.4rem;
}
.sitemap_contents .glasses_list > ul {
	margin-top: 10px;
}
.sitemap_contents .glasses_list > ul > li > a {
	display: inline-block;
	padding-left: 10px;
	text-indent: -10px;
	line-height: 1.6;
}
.sitemap_contents .glasses_list > ul > li > a::before {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	margin: 0 4px 1px 0;
	border-style: solid;
	border-width: 4px 0 4px 6px;
	border-color: transparent transparent transparent #222222;
}

/* ショッピングカート
--------------------------------------- */
/* 新ケア剤バナーGTM用 202105*/
.new_care_banner {
	width: 1040px;
	margin: 100px auto 0;
}
.new_care_banner .sp {
	display: none;
}
.new_care_banner .new_care_ttl {
	background: #f6f6f6;
	text-align: center;
	color: #222222;
	letter-spacing: 2.2px;
	line-height: 1.8;
	font-size: 20px;
	margin: 0 auto;
	padding: 4% 0;
	position: relative;
}
.new_care_banner .new_care_ttl .raku_moji {
	color: #cb0005;
	font-weight: bold;
}
.new_care_banner .new_care_ttl .souryou_moji {
	color: #cb0005;
	font-weight: bold;
}
.new_care_banner .cp_product_box {
	padding-bottom: 1%;
	background: #f6f6f6;
}
.new_care_banner .cp_product_list {
	display: flex;
	justify-content: space-around;
	padding: 0 2%;
}
.new_care_banner .new_care_kabu {
	background: #f6f6f6;
	color: #222222;
	letter-spacing: 2.2px;
	font-weight: normal;
	line-height: 1.8;
	font-size: 18px;
	margin: 0 auto;
	padding: 2% 0 3%;
	text-align: center;
	position: relative;
}
.new_care_banner .new_care_kabu .kabu_btn {
	width: 300px;
	height: 50px;
	margin: 2% auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 56px;
	padding: 0 1rem;
	border: 1px solid #CCCCCC;
	border-color: #CB0005;
	background-color: #CB0005;
	color: #FFFFFF;
	font-family: inherit;
	font-size: 1.4rem;
	line-height: 1.6;
	letter-spacing: 0.1em;
	text-align: center;
	transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	cursor: pointer;
}
.new_care_banner .new_care_kabu .kabu_btn:hover {
	border-color: #CB0005;
	background-color: transparent;
	color: #CB0005;
}

/*  まとめ買い情報 20211215 */
.kago_bulksale {
	width: 1040px;
	margin: 0 auto 40px;
}
.kago_bulksale .kago_bulksale_title {
	margin: 0;
	padding: 1px 0 0px;
	border: 1px solid #CB0005;
	font-weight: 500;
	color: #CB0005;
	text-align: center;
}
.kago_bulksale .kago_bulksale_item {
	margin-top: 1px;
}
.kago_bulksale .kago_bulksale_item:nth-of-type(1) {
	margin-top: 0;
}
.kago_bulksale .kago_bulksale_item_linkbox {
	display: flex;
	align-items: center;
	margin: 0;
	padding: 18px 0 18px 0;
	background-color: #F6F6F6;
	color: #222222;
	opacity: 1;
}
.kago_bulksale .kago_bulksale_item_linkbox > .thumb {
	width: 100px;
	margin: 0 30px 0 50px;
	padding: 0;
	text-align: center;
}
.kago_bulksale .kago_bulksale_item_linkbox > .text {
	flex: 1;
}
.kago_bulksale .kago_bulksale_item_linkbox > .aui_button {
	width: 135px;
	height: 40px;
	margin: 0 70px 0 70px;
	padding: 0;
	text-align: center;
	background-color: #fff;
}
.kago_bulksale .kago_bulksale_item_linkbox:hover > .aui_button {
	background-color: #CB0005;
	color: #fff;
}

/* アキュビューリバイタ GTM用 202202 */
.banner_acuvue_revita {
	margin-bottom: 20px;
}
.banner_acuvue_revita .title {
	background-color: #C40001;
}
.banner_acuvue_revita .product {
	margin: 0;
	padding: 0;
	background-color: #F6F6F6;
}

/* ケア用品限定SALE GTM用 202202 */
.banner_care_limitedsale {
	margin-bottom: 20px;
}
.banner_care_limitedsale .title {
	background-color: #C40001;
}
.banner_care_limitedsale .products {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0;
	padding: 0;
	background-color: #F6F6F6;
}

/* マイページ RECOMMEND
--------------------------------------- */
.recommend_grid01 {
	max-width: 1040px;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	margin: 0 auto;
	padding: 0;
}
.recommend_grid01_item {
	width: 48.03%;
	margin: 0 0 0 3.84%;
	padding: 0;
}
.recommend_grid01_item:nth-of-type(2n+1) {
	margin-left: 0;
}
.recommend_grid01_item:nth-of-type(n+3) {
	margin-top: 3.84%;
}
.recommend_grid01_link {
	display: block;
	padding: 0;
	margin: 0;
}
.recommend_grid01_link img {
	width: 100%;
	height: auto;
}

.recommend_grid02 {
	max-width: 1040px;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	margin: 0 auto;
	padding: 0;
}
.recommend_grid02_item {
	width: 22.6725%;
	margin: 0 0 0 3.07%;
	padding: 0;
}
.recommend_grid02_item:nth-of-type(4n+1) {
	margin-left: 0;
}
.recommend_grid02_item:nth-of-type(n+5) {
	margin-top: 3.07%;
}
.recommend_grid02_link {
	display: block;
	padding: 0;
	margin: 0;
}
.recommend_grid02_link_product_img {
	margin: 0;
	padding: 0;
}
.recommend_grid02_link_product_img img {
	margin: 0;
	padding: 0;
	width: 100%;
	height: auto;
}
.recommend_grid02_link_product_name {
	margin: 6px 0 0;
	padding: 0;
	line-height: 1.6;
	letter-spacing: 0.06em;
	font-size: 13px;
	color: #1d1d1d;
}
.recommend_grid02_link_product_price {
	padding: 0;
	margin: 2px 0 0;
	line-height: 1.5;
	letter-spacing: 0.06em;
	font-size: 17px;
	font-weight: 500;
	color: #1d1d1d;
}/*# sourceMappingURL=pc_pages.css.map */