/* -------------------------------------------------- */
/* top */
/* -------------------------------------------------- */
.top .top_h2 {
	font-size: 1.0rem;
	font-weight: 500;
	text-align: center;
	color: #666
}

.top .top_h2>span {
	display: block;
	margin-bottom: 8px;
	font-size: 1.8rem;
	color: #1d1d1d;
	font-weight: 300;
	letter-spacing: 0.08em;
	line-height: 1;
}

.top .slick-slide {
	height: auto;
}

.top #new-visiter {
	width: 92%;
	margin: 0 auto;
	padding: 10px 0 6px;
}

/* mv */
.top #mv {
	border-bottom: 1px solid #eee;
     position: relative;
  width: 100%;
}

.top #mv::before {
     content: "";
  display: block;
  padding-top: calc(((430 / 720) * 100%));
}

.top #mv .mv_wrap{
    position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.top #mv .mv_slider_area {
	overflow: hidden;
}

.top #mv .mv_slider_wide {
	max-width: 100%;
	margin: 0 auto;
}

.top #mv .mv_slider {
	margin: 0 auto;
	padding: 0;
    opacity: 0;
}

.top #mv .mv_slider.slick-initialized {
opacity: 1;
}

.top #mv .mv_slider .slick-list {
	overflow: visible;
}

.top #mv .mv_slider_img {
	overflow: hidden;
}

.top #mv .mv_slider_img img {
	display: block;
	height: auto;
	width: 100%;
}

.top #mv .mv_slider .slick-dots {
	position: relative;
	position: absolute;
	left: 50%;
	bottom: 15px;
	display: none !important;
	align-items: center;
	transform: translateX(-50%)
}

.top #mv .mv_slider .slick-dots>li {
	display: flex;
	align-items: center;
	height: 20px
}

.top #mv .mv_slider .slick-dots>li+li {
	margin-left: 30px
}

.top #mv .mv_slider .slick-dots>li {
	position: relative;
	width: 8px;
	height: 8px;
	background: #ccc;
	border-radius: 50%;
	text-align: center;
	overflow: hidden;
	z-index: 1;
	transition-duration: .3s
}

.top #mv .mv_slider .slick-dots>li>button {
	position: absolute;
	display: block;
	top: 50%;
	left: 50%;
	width: 6px;
	height: 6px;
	padding: 0;
	background: #f3edeb;
	z-index: 90;
	border: none;
	border-radius: 100%;
	transform: translateX(-50%) translateY(-50%);
	text-indent: -9999px;
	transition-duration: .3s
}

.top #mv .mv_slider .slick-dots>li.slick-active {
	width: 14px;
	height: 14px;
	background: #5ea8dd
}

.top #mv .mv_slider .slick-dots>li.slick-active::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: -7px;
	width: 14px;
	height: 14px;
	background: #ccc;
	transform-origin: right 7px;
	z-index: 2;
	animation: rotate-circle-left 5s linear forwards
}

.top #mv .mv_slider .slick-dots>li.slick-active::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 7px;
	width: 14px;
	height: 14px;
	background: #ccc;
	transform-origin: left 7px;
	z-index: 3;
	animation: rotate-circle-right 5s linear forwards
}

.top #mv .mv_slider .slick-dots>li.slick-active>button {
	width: 10px;
	height: 10px
}

.top .Button {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin-right: 5%;
	margin-top: 1em;
}

.top a:link {
	text-decoration: none;
}

.top .Button svg {
	fill: #5ea8dd;
	width: 18px;
	height: 18px;
	margin-right: 2%;
}

.top .Button__text {
	font-size: 1.4rem;
	padding-bottom: .5%;
	color: #5ea8dd;
}

@keyframes rotate-circle-right {
	0% {
		transform: rotate(0deg);
		background: #ccc
	}

	50% {
		transform: rotate(180deg);
		background: #ccc
	}

	50.01% {
		transform: rotate(360deg);
		background: #5ea8dd
	}

	100% {
		transform: rotate(360deg);
		background: #5ea8dd
	}
}

@keyframes rotate-circle-left {
	0% {
		transform: rotate(0deg);
	}

	50% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(180deg);
	}
}

@keyframes slider_dots {
	100% {
		transform: rotate(360deg);
	}
}


/* benefit */
.top #benefit {
	margin-top: -1px;
}

.top #benefit .benefit_block {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 18px 20px 18px 100px;
	background-color: #fdf8fa;
	border-top: 1px solid #f5c7d8;
	border-bottom: 1px solid #f5c7d8
}

.top #benefit .benefit_heading {
	position: absolute;
	bottom: 5px;
	left: 0;
	display: flex;
	align-items: center;
	height: 44px;
	padding: 0 14px;
	color: #fff;
	font-size: 1.1rem;
	line-height: 1.2;
	background-color: #ec6a8b
}

.top #benefit .benefit_heading:before,
.top #benefit .benefit_heading:after {
	content: "";
	position: absolute
}

.top #benefit .benefit_heading:before {
	right: 16px;
	top: -22px;
	width: 35px;
	height: 28px;
	background: url(/s/img/top/benefit_img_online.png) right top / cover no-repeat
}

.top #benefit .benefit_heading:after {
	right: -12px;
	top: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 22px 12px 22px 0;
	transform: rotate(180deg);
	border-color: transparent #ec6a8b transparent transparent
}

.top #benefit .benefit_list {
	display: flex;
	justify-content: space-between;
	width: 100%
}

.top #benefit .benefit_list>li {
	text-align: center;
	flex: 1;
	font-size: 1.2rem
}

.top #benefit .benefit_list>li+li {
	padding-left: 1vw
}

.top #benefit .svg {
	display: block;
	position: absolute;
	right: 5px;
}

.top #benefit .svg svg {
	fill: #ec6a8b;
	width: 15px;
	height: 15px;
}


/* topics */
.top #topics {
	padding: 15px 0
}

.top #topics .topics_list {
	max-width: 640px;
	margin: auto
}

.top #topics .topics_list>li {
	text-align: center
}

.top #topics .topics_list>li+li {
	margin-top: 10px
}

.top #topics .topics_list>li.column2 {
	display: flex;
	justify-content: space-between;
}

.top #topics .topics_list>li.column2 a {
	width: 49%;
	display: block;
}

/* 2つ横並び */

/* search */
.top #search {
	border-top: solid 1px #eee;
	border-bottom: solid 1px #eee;
	padding: 15px 0
}

.top #search .search-inner {
	display: flex;
	justify-content: center;
}

.top #search .search-inner form {
	position: relative;
	width: 100%;
	height: 40px
}

.top #search .search-inner input {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding: 0 50px 0 1em;
	border: 1px solid #ccc;
	border-radius: 4px;
}

.top #search .search-inner input[type="text"] {
	font-size: 1.6rem;
}

.top #search .search-inner button {
	position: absolute;
	top: 0;
	right: 0;
	width: 40px;
	height: 100%;
	border-top: none;
	border: 1px solid #ccc;
	background: url(/common/img/search_btn.png) center center / auto auto no-repeat #f7f7f7;
	border-radius: 0 4px 4px 0
}

.top #search .search-inner .btn {
	width: 50px;
	height: 40px;
	margin-left: 12px
}

.top #search .search-inner .btn a {
	width: 100%;
	height: 100%;
	display: block;
	padding: 25px 0 0;
	font-size: 1.1rem;
	text-align: center;
	color: #1d1d1d;
	line-height: 1;
	position: relative
}

.top #search .search-inner .btn-toggle {
	position: absolute;
	display: block;
	height: 30px;
	width: 35px;
	top: 0;
	left: 50%;
	transform: translateX(-50%)
}

.top #search .search-inner .btn-toggle span {
	display: block;
	background: #000;
	width: 15px;
	height: 2px;
	border-radius: 2px;
	position: absolute;
	top: 7px;
	left: 10px;
	transition-duration: .2s
}

.top #search .search-inner .btn-toggle span:nth-of-type(1) {
	transform: translateY(-7px) rotate(0);
	animation: close-menu-bar01 .5s forwards;
}

.top #search .search-inner .btn-toggle span:nth-of-type(2) {
	width: 10px;
	opacity: 1;
}

.top #search .search-inner .btn-toggle span:nth-of-type(3) {
	transform: translateY(7px) rotate(0);
	animation: close-menu-bar02 .5s forwards;
}

.top #search .nav_contents_search_keyword {
	display: flex;
	margin-top: 10px;
}

.top #search .nav_contents_search_keyword>li+li {
	margin-left: 10px;
}

.top #search .nav_contents_search_keyword>li>a {
	display: block;
	padding: 0 10px;
	color: #1d1d1d;
	text-decoration: none;
	line-height: 2;
	background-color: #ecf7fb;
	border-radius: 15px;
	font-size: 1.2rem
}

/* news */
.top #news {
	padding-top: 50px;
	padding-bottom: 20px;
}

.top .top-news {
	padding-top: 50px;
	padding-bottom: 20px;
}

.top .top-news .news_list {
	margin-top: 26px;
	border-bottom: 1px solid #ddd
}

.top .top-news .news_list>li {
	display: flex;
	align-items: baseline;
	padding: 13px 0;
	border-top: 1px solid #ddd;
	line-height: 1
}

.top .top-news .news_ttl {
	margin-left: 10px
}

.top .top-news .news_ttl .news_category {
	display: inline-block;
    margin-bottom: 7px;
    padding: 2px;
    background-color: #7dbce8;
    border-radius: 2px;
    width: 90px;
    text-align: center;
    font-size: 1rem;
    color: #fff;
}

.top .top-news .news_ttl>a {
	position: relative;
	display: block;
	padding-left: 20px;
	color: #1d1d1d;
	font-size: 1.3rem;
	line-height: 1.5;
	text-decoration: none
}


.top .top-news .news_date:before,
.top .top-news .news_date:after {
	content: "";
	position: absolute;
	top: 10px
}

.top .top-news .news_date:before {
	top: 6px;
	right: -21px;
	width: 14px;
	height: 14px;
	background-color: #b8b8b8;
	border-radius: 50%;
	transform: translateY(-50%)
}

.top .top-news .news_date:after {
	top: 6px;
	right: -15px;
	width: 4px;
	height: 4px;
	border-top: solid 1.5px #fff;
	border-right: solid 1.5px #fff;
	transform: translateY(-50%) rotate(45deg);
	z-index: 2
}

.top .top-news .news_date {
	position: relative;
	color: #888;
	font-size: 1.2rem
}

.top #news.top-news .news_list>li {
	justify-content: space-between;
}

.top #news.top-news .news_ttl {
    width: 78%
}

.top #news .news_ttl>a::after {
	position: relative;
	content: "";
	display: inline-block;
	width: 13px;
	height: 11px;
	background: url(/common/img/icon_external.png);
	margin-left: 6px;
	top: inherit;
	right: inherit;
}

.top #news .news_ttl>a.no_icon {
	pointer-events: none;
}

.top #news .news_ttl>a.no_icon::after {
	content: none;
}

.top #news .news_date .news_category {
    display: block;
    line-height: 1;
    padding: 5px;
    text-align: center;
	background-color: #7dbce8;
    font-size: 1rem;
    color: #fff;
}

.top #news.top-news .news_date {
	width: 18%;
    display: block;
    line-height: 2;
}

.top #news.top-news .news_date:before {
	top: 12px
}

.top #news.top-news .news_date:after {
	top: 12px
}

.top .top-news .news_btn {
	margin-top: 20px
}


/* lineup */
.top #lineup {
	padding: 60px 0 40px;
}

.top #lineup .lineup_block {
	max-width: 640px;
	margin: 20px auto 0
}

.top #lineup .lineup_brand_list {
	display: flex;
	flex-wrap: wrap
}

.top #lineup .lineup_brand_list>li {
	width: 46.875%;
}

.top #lineup .lineup_brand_list>li:nth-of-type(even) {
	margin-left: 6.25%
}

.top #lineup .lineup_brand_list>li:nth-of-type(n+3) {
	margin-top: 25px
}

.top #lineup .lineup_brand_list>li a {
	text-decoration: none;
	display: block;
	color: #1d1d1d
}

.top #lineup .lineup_brand_figrue {
	text-align: center;
	width: 130px;
	height: 130px;
	margin: auto
}

.top #lineup .lineup_brand_name {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 40px;
	font-size: 1.25rem
}

.top #lineup .lineup_brand_link {
	text-align: center
}

.top #lineup .lineup_brand_link>span {
	position: relative;
	display: inline-block;
	padding-left: 20px;
	color: #666;
	text-decoration: none;
	line-height: 1.5;
	text-align: left;
	font-size: 1.2rem
}

.top #lineup .lineup_brand_link>span:before,
.top #lineup .lineup_brand_link>span:after {
	content: "";
	position: absolute;
	top: 50%
}

.top #lineup .lineup_brand_link>span:before {
	left: 0;
	width: 14px;
	height: 14px;
	background-color: #b8b8b8;
	border-radius: 50%;
	transform: translateY(-50%)
}

.top #lineup .lineup_brand_link>span:after {
	left: 4px;
	width: 4px;
	height: 4px;
	border-top: solid 1.5px #fff;
	border-right: solid 1.5px #fff;
	transform: translateY(-50%) rotate(45deg);
	z-index: 2
}


.top #lineup .lineup_category {
	padding-top: 60px;
}

.top #lineup .lineup_category_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 15px 0px 0;
	gap: 25px 0;
}

.top #lineup .lineup_category_list>li {
	width: 33%;
	font-size: 1.2rem;
	line-height: 1.4;
	text-align: center;
}

.top #lineup .lineup_category_list>li a {
	color: #666666;
	text-decoration: none;
}

.top #lineup .lineup_category_list>li a img {
	width: 80%;
}

.top #lineup .lineup_category_list>li a p {
	margin-top: 5px;
}

.top #lineup .btn-list {
	margin-top: 20px;
	display: flex;
	justify-content: space-between
}

.top #lineup .btn-list>.btn {
	width: 100%;
	max-width: inherit
}

.top #lineup .btn-list>.btn:before {
	content: none
}

.top #lineup .btn-list>.btn+.btn {
	margin: 0;
	margin-left: 6.25%
}

.top #lineup .btn-list>.btn>a {
	padding: 14px;
}

.top #lineup .lineup_search_btn {
	margin-top: 30px
}

.top #lineup .lineup_search_btn .btn {
	width: 280px;
	margin: 0 auto
}



/* online */
.top #online {
	padding: 40px 0
}

.top #online .online_ttl {
	position: relative;
}

.top #online .online_h2 {
	position: relative;
	margin: auto
}

.top #online .online_btn {
	margin-top: 40px
}

.top #online .online_btn .btn {
	width: 280px
}

.top #online .online_benefit {
	padding: 0px 0;
	display: flex;
	justify-content: space-between;
	gap: 10px 0;
	flex-wrap: wrap;
	margin-top: 10px;
}

.top #online .online_benefit_list {
	width: 48%;
	position: relative;
}

.top #online .online_banner {
	margin-top: 30px;
	padding-top: 30px;
	border-top: 1px solid #ddd
}

.top #online .online_banner_heading {
	margin-bottom: 20px;
	text-align: center
}

.top #online .online_banner_block {
	text-align: center
}

.top #online .online_banner_block+.btn {
	margin-top: 30px
}

.top #online .btn-primary {
	margin-top: 20px;
}

/* line */

.top #line {
	padding: 40px 0;
}

.top #line .contents {
	text-align: center;
}


/* store */
.top #store {
	margin-top: 40px;
	margin-bottom: 40px;
	padding: 40px 0 40px;
	background: #ddedf7;
}

.top #store .store_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 15px 0px 0;
	gap: 25px 0;
}

.top #store .store_list>li {
	width: 33%;
	font-size: 1.2rem;
	line-height: 1.4;
	text-align: center;
}

.top #store .store_list>li a {
	text-decoration: none;
}

.top #store .store_list>li a img {
	width: 80%;
}

.top #store .store_list>li a p {
	margin-top: 10px;
}

/* baby */
.top #babyskincare {
	padding-top: 30px;
}

.top #maternity,
.top #kids,
.top #sensitive,
.top #aging,
.top #gift {
	padding-top: 60px;
}


/* skincare */
.top .skincare_slider_wrap {
	margin-top: 20px
}

.top .skincare_slider_area {
	overflow: hidden;
	padding-top: 12px;
	padding-bottom: 30px;
}

.top .skincare_slider_wide {
	max-width: 100%;
	margin: 0 auto
}

.top .skincare_slider {
	margin: 0 auto;
	padding: 0
}

.top .skincare_slider .slick-track {
	display: flex;
}

.top .skincare_slider .slick-list {
	overflow: visible
}

.top .skincare_slider .slick-slide {
	padding: 0 3vw
}

.top .skincare_slider_item {
	position: relative;
}

.top .skincare_slider_item>a {
	display: flex;
	flex-direction: column;
	text-decoration: none;
	margin: auto;
	height: 100%;
	justify-content: space-between;
}

.top .skincare_slider_img {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: auto;
	background-color: #fff;
	border-radius: 4px;
	border: 1px solid #eeeeee;
	position: relative;
	background: #fff
}

.top .skincare_slider_img_inner {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	margin: auto;
	width: 100%;
	height: 0;
	padding-bottom: 100%
}

.top .skincare_slider_img img {
	display: block;
}

.top .skincare_slider_item-new .pickup_slider_img:before {
	content: "";
	position: absolute;
	left: 10px;
	top: -10px;
	width: 46px;
	height: 21px;
	background: url(/s/img/top/icon_new.png) left top / 100% auto no-repeat;
	z-index: 1
}

.top .skincare_slider_detail {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	margin-top: 1em;
	height: 100%;
}

.top .skincare_slider_detail .name {
	color: #5ea8dd;
	font-size: 1.3rem;
	line-height: 1.375;
}

.top .skincare_slider_detail>div {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	justify-content: end;
	font-size: 1.2rem;
	color: #1d1d1d;
	margin-top: 8px;
}

.top .skincare_slider_detail>div.price-campaign {
	color: #ec6a8b;
}

.top .skincare_slider_detail>div>.price {
	font-size: 1.6rem;
}

.top .skincare_slider_detail .price-campaign .price-campaign-txt {
	width: 100%;
	text-align: right;
	margin-right: .5rem;
	line-height: 1.2
}

.top .skincare_slider .slick-dots {
	display: flex;
	justify-content: center;
	margin-top: 20px
}

.top .skincare_slider .slick-dots>li+li {
	margin-left: 20px
}

.top .skincare_slider .slick-dots>li button {
	width: 8px;
	height: 8px;
	padding: 0;
	text-indent: -9999px;
	background-color: #ddd;
	border: none;
	border-radius: 50%
}

.top .skincare_slider .slick-dots>li.slick-active button {
	background-color: #666
}


.top .skincare_bnr_wrap {
	margin: 0 auto;
	border-top: 1px solid #eeeeee;
}

.top .skincare_bnr_wrap .skincare_bnr_list {
	display: flex;
	margin: 0 auto;
	gap: 10px 10px;
	padding-top: 14px;
	flex-wrap: wrap;

}

.top .skincare_bnr_wrap .skincare_bnr_list li {
	width: 48%;
}

.top .skincare_bnr_wrap .skincare_bnr_list a {
	display: flex;
	flex-direction: column;
	text-decoration: none;
}

.top .skincare_bnr_wrap .skincare_bnr_list a img {
	margin-top: 8px;
}

.top .skincare_bnr_wrap .skincare_bnr_list-ttl {
	font-size: 13px;
	line-height: 20px;
	color: #333333;
}

.top .skincare_bnr_wrap .skincare_bnr_list-txt {
	margin-top: .5em;
	font-size: 12px;
	line-height: 18px;
	color: #888888;
}


/* pickup */
.top #pickup {
	margin-top: 120px;
	padding: 30px 0 10px;
}

.top #pickup>.contents {
	position: relative
}

.top #pickup>.contents .top_h2 {
	position: relative;
	max-width: 640px;
	margin: auto
}

.top #pickup>.contents .top_h2:after {
	content: "";
	position: absolute;
	top: -95px;
	right: 0;
	width: 177px;
	height: 98px;
	background: url(/s/img/top/pickup_pic.png) left top / 100% auto no-repeat
}

.top #pickup .pickup_slider_wrap {
	margin-top: 20px
}

.top #pickup .pickup_slider_area {
	overflow: hidden;
	padding-top: 12px
}

.top #pickup .pickup_slider_wide {
	max-width: 100%;
	margin: 0 auto
}

.top #pickup .pickup_slider {
	margin: 0 auto;
	padding: 0
}

.top #pickup .pickup_slider .slick-list {
	overflow: visible
}

.top #pickup .pickup_slider .slick-slide {
	padding: 0 15px
}

.top #pickup .pickup_slider_item {
	position: relative
}

.top #pickup .pickup_slider_item>a {
	display: block;
	text-decoration: none;
	max-width: 320px;
	/*max-width:240px;*/
	margin: auto
}

.top #pickup .pickup_slider_img {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: auto;
	background-color: #fff;
	border-radius: 4px;
	position: relative;
	margin: auto;
	padding: 30px;
	background: #fff
}

.top #pickup .pickup_slider_img_inner {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	margin: auto;
	width: 100%;
	height: 0;
	padding-bottom: 100%
}

.top #pickup .pickup_slider_img img {
	display: block;
	z-index: 1;
	transform: translateY(-50%) translateX(-50%);
	position: absolute;
	top: 50%;
	left: 50%;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%
}

.top #pickup .pickup_slider_item-new .pickup_slider_img:before {
	content: "";
	position: absolute;
	left: 10px;
	top: -10px;
	width: 46px;
	height: 21px;
	background: url(/s/img/top/icon_new.png) left top / 100% auto no-repeat;
	z-index: 1
}

.top #pickup .pickup_slider_detail {
	max-width: 240px;
	margin: 1em auto 0
}

.top #pickup .pickup_slider_detail .name {
	color: #1d1d1d;
	font-size: 1.4rem;
	line-height: 1.375
}

.top #pickup .pickup_slider_detail>div>p {
	color: #1d1d1d;
	font-size: 1.1rem
}

.top #pickup .pickup_slider_detail>div>.price-campaign {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	justify-content: end;
	font-size: 1.2rem
}

.top #pickup .pickup_slider_detail p.brand {
	display: block;
	margin-top: 1rem
}


.top #pickup .pickup_slider_detail .price-campaign {
	margin-top: 10px;
	color: #ec6a8b
}

.top #pickup .pickup_slider_detail p.price .num {
	font-size: 2.1rem
}

.top #pickup .pickup_slider_detail p.price .num,
.top #pickup .pickup_slider_detail p.tax {
	line-height: 2.1rem
}

.top .skincare_slider_detail>div {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	justify-content: end;
	font-size: 1.2rem;
	color: #1d1d1d;
	margin-top: 8px;
}

.top .pickup_slider_detail .price-campaign .price-campaign-txt {
	text-align: right;
	width: 100%;
	margin-right: .5rem;
}


.top #pickup .pickup_slider_recommend {
	position: relative;
	display: flex;
	justify-content: space-between;
	padding: 20px 10px;
	margin: 24px auto 0;
	color: #1d1d1d;
	border: 1px dashed #ec6a8b;
	background-color: #fff;
	border-radius: 8px;
	max-width: 240px
}

.top #pickup .pickup_slider_recommend:before {
	content: "";
	position: absolute;
	left: 50%;
	top: -17px;
	width: 32px;
	height: 18px;
	background: url(/s/img/top/pickup_balloon.png) center / cover no-repeat;
	transform: translateX(-50%)
}

.top #pickup .pickup_slider_recommend .manager {
	width: 70px;
	margin-top: -30px
}

.top #pickup .pickup_slider_recommend .manager_img {
	width: 55px;
	height: 55px;
	border-radius: 50%;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	margin: auto
}

.top #pickup .pickup_slider_recommend .manager_name {
	margin-top: 1em;
	font-size: 1.1rem;
	line-height: 1.45;
	text-align: center
}

.top #pickup .pickup_slider_recommend .comment {
	width: 155px;
	padding-left: 5px;
	font-size: 1.2rem;
	color: #484848
}

.top #pickup .pickup_slider_recommend .comment_heading {
	text-align: center
}

.top #pickup .pickup_slider_recommend .comment_heading span {
	position: relative;
	display: inline-block;
	color: #ec6a8b;
	font-size: 1.2rem
}

.top #pickup .pickup_slider_recommend .comment_heading span:before,
.top #pickup .pickup_slider_recommend .comment_heading span:after {
	content: "";
	position: absolute;
	top: 50%;
	width: 1px;
	height: 18px;
	background-color: #ec6a8b
}

.top #pickup .pickup_slider_recommend .comment_heading span:before {
	left: -15px;
	transform: translateY(-50%) rotate(-45deg)
}

.top #pickup .pickup_slider_recommend .comment_heading span:after {
	right: -15px;
	transform: translateY(-50%) rotate(45deg)
}

.top #pickup .pickup_slider .slick-dots {
	display: flex;
	justify-content: center;
	margin-top: 20px
}

.top #pickup .pickup_slider .slick-dots>li+li {
	margin-left: 20px
}

.top #pickup .pickup_slider .slick-dots>li button {
	width: 8px;
	height: 8px;
	padding: 0;
	text-indent: -9999px;
	background-color: #ddd;
	border: none;
	border-radius: 50%
}

.top #pickup .pickup_slider .slick-dots>li.slick-active button {
	background-color: #666
}












/* colmun */

.top #column {
	margin-top: 70px
}

.top #column>.contents {
	position: relative
}

.top #column .column_ttl {
	position: relative;
	max-width: 640px;
	margin: auto
}


.top #column .column_category {
	display: flex;
	justify-content: space-between;
	margin: 40px auto 70px
}

.top #column .column_category_list {
	position: relative;
	font-size: 1.3rem;
	text-align: center
}

.top #column .column_category_list+.column_category_list {
	margin-left: 15px
}

.top #column .column_category_list .img {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-size: auto auto;
	background-position: center center;
	background-repeat: no-repeat;
	background-color: #fff9d7;
	margin: auto;
	position: relative
}

.top #column .column_category_list .img:before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	width: 100%;
	height: 100%;
	background-size: 75% auto;
	background-position: center center;
	background-repeat: no-repeat;
	transform: translateX(-50%)
}

.top #column .column_category_list-movie .img:before {
	background-image: url(/s/img/top/column_icon_movie.png)
}

.top #column .column_category_list-baby .img:before {
	background-image: url(/s/img/top/column_icon_baby.png)
}

.top #column .column_category_list-kids .img:before {
	background-image: url(/s/img/top/column_icon_kids.png)
}

.top #column .column_category_list-offstage .img:before {
	background-image: url(/s/img/top/column_icon_offstage.png)
}

.top #column .column_category_list-mama .img:before {
	background-image: url(/s/img/top/column_icon_mama.png)
}

.top #column .column_category_list-beauty .img:before {
	background-image: url(/s/img/top/column_icon_beauty.png)
}

.top #column .column_category_list-health .img:before {
	background-image: url(/s/img/top/column_icon_health.png)
}

.top #column .column_category_list .txt {
	position: absolute;
	bottom: -25px;
	left: 50%;
	transform: translateX(-50%);
	width: 5em;
	color: #666666;
}

.top #column .column_category_list+.column_category_list {
	margin-left: 20px
}

.top #column .column_list {
	max-width: 640px;
	margin: auto;
}

.top #column .column_article {
	position: relative;
}

.top #column .column_article a {
	display: flex;
	justify-content: space-between
}

.top #column .column_article a {
	text-decoration: none;
}

.top #column .column_article+.column_article {
	margin-top: 25px
}

.top #column .column_article-new:before {
	content: "";
	position: absolute;
	left: -10px;
	top: -8px;
	width: 50px;
	height: 50px;
	background: url(/img/top/column_icon_new.png) left top / 100% auto no-repeat;
	z-index: 1
}

.top #column .column_article .column_img {
	object-fit: cover;
	object-position: bottom;
	font-family: 'object-fit: cover; object-position: bottom;';
	width: 28vw;
	height: 28vw;
	display: block;
	border-radius: 5px;
}

.top #column .column_img>div {
	width: 100%;
	height: 0;
	padding-bottom: 64%;
	background-size: cover;
	background-position: center center;
	border-radius: 4px;
	position: relative;
}

.top #column .column_detail {
	width: 64%
}

.top #column .column_detail .date {
	display: flex;
	align-items: center;
	font-size: 1.1rem
}

.top #column .column_detail .date .category {
	position: relative;
	padding-left: 34px;
	color: #1d1d1d;
}

.top #column .column_detail .date .category:before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 28px;
	height: 28px;
	background-size: 75% auto;
	background-position: center center;
	background-repeat: no-repeat;
	background-color: #fff9d7;
	transform: translateY(-50%);
	border-radius: 50%
}

.top #column .column_article-movie .column_detail .date .category:before {
	background-image: url(/s/img/top/column_icon_movie.png)
}

.top #column .column_article-baby .column_detail .date .category:before {
	background-image: url(/s/img/top/column_icon_baby.png)
}

.top #column .column_article-kids .column_detail .date .category:before {
	background-image: url(/s/img/top/column_icon_kids.png)
}

.top #column .column_article-offstage .column_detail .date .category:before {
	background-image: url(/s/img/top/column_icon_offstage.png)
}

.top #column .column_article-mama .column_detail .date .category:before {
	background-image: url(/s/img/top/column_icon_mama.png)
}

.top #column .column_article-beauty .column_detail .date .category:before {
	background-image: url(/s/img/top/column_icon_beauty.png)
}

.top #column .column_article-health .column_detail .date .category:before {
	background-image: url(/s/img/top/column_icon_health.png)
}

.top #column .column_detail .date .num {
	margin-left: 1em;
	color: #888
}

.top #column .column_detail .ttl {
	margin-top: 1em;
	font-size: 1.2rem
}

.top #column .column_detail .ttl span {
	background: linear-gradient(transparent 80%, rgba(236, 106, 139, 0.3) 0);
	color: #1d1d1d;
}

.top #column .column_detail .lead {
	display: none;
	margin-top: 1em;
	color: #888;
	font-size: 1.2rem
}

.top #column .column_list+.btn {
	margin-top: 25px
}

/* event */
.top #event {
	margin-top: 40px
}

.top #event .event_block {
	margin-top: 25px;
	padding-bottom: 10px;

}

.top #event .event_article {
	position: relative;
	border-top: 1px solid #eee
}

.top #event .event_article>a {
	display: block;
	padding: 25px 0 20px;
	text-decoration: none;
	max-width: 640px;
	margin: auto
}


.top #event .event_date {
	position: relative;
	padding-left: 25px;
	font-size: 1.2rem;
	color: #1d1d1d
}

.top #event .event_date:before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 17px;
	height: 15px;
	background: url(/s/img/top/event_icon_date.png) left top / 100% auto no-repeat;
	transform: translateY(-50%)
}

.top #event .event_date>span {
	font-size: 1.6rem
}

.top #event .event-inner {
	display: flex;
	align-items: flex-start;
	justify-content: space-between
}

.top #event .event-inner .event_detail {
	width: 65%
}

.top #event .event_img {
	position: relative;
}

.top #event .event_img img {
	display: block;
	object-fit: cover;
	object-position: bottom;
	font-family: 'object-fit: cover; object-position: bottom;';
	width: 28vw;
	height: 28vw;
	border-radius: 5px;
}

.top #event .event_img:before {
	position: absolute
}

.top #event .event_article-recruitment .event_img:before {
	content: "募集中";
	bottom: -4vw;
	left: -2vw;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #ec6a8b;
	width: 12vw;
	height: 12vw;
	font-size: 2vw;
	z-index: 999;
	background: url(/img/top/event_bg_reruitment.png) left top / 100% auto no-repeat
}

.top #event .event_article-end .event_img:before {
	content: "";
	bottom: 0;
	left: 0;
	width: 85px;
	height: 20px;
	z-index: 999;
	background: url(/s/img/top/event_icon_finish.png) center / 65px auto no-repeat #666;
	border-radius: 0 4px 0 4px
}

.top #event .event_detail .ttl {
	margin-top: 5px;
	;
	font-size: 1.2rem;
	line-height: 1.5
}

.top #event .event_detail .place {
	position: relative;
	margin-top: 5px;
	padding-left: 20px;
	color: #1d1d1d;
	font-size: 1.2rem
}

.top #event .event_detail .place:before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 16px;
	height: 20px;
	background: url(/s/img/top/event_icon_place.png) left top / 100% auto no-repeat;
	transform: translateY(-50%)
}

.top #event .event_more {
	padding: 20px 0;
	text-align: center;
	border-top: 1px solid #eee;
	border-bottom: 1px solid #eee
}

.top #event .event_more>a {
	position: relative;
	display: inline-block;
	color: #1d1d1d;
	padding-left: 30px;
	text-decoration: none
}

.top #event .event_more>a:before,
.top #event .event_more>a:after {
	content: "";
	position: absolute;
	top: 50%
}

.top #event .event_more>a:before {
	left: 0;
	width: 18px;
	height: 18px;
	background-color: #ec6a8b;
	border-radius: 50%;
	transform: translateY(-50%)
}

.top #event .event_more>a:after {
	left: 6px;
	width: 4px;
	height: 4px;
	border-top: solid 1.5px #fff;
	border-right: solid 1.5px #fff;
	transform: translateY(-50%) rotate(45deg);
	z-index: 2
}


/* about */

.top #about {
	margin-top: 60px
}

.top #about .about_block {
	position: relative;
	margin-top: 20px
}

.top #about .about_main .lead {
	margin-top: 25px
}

.top #about .about_detail {
	margin: 30px auto 0;
}

.top #about .about_detail a {
	text-decoration: none;
}

.top #about .about_link {
	position: relative;
	padding-left: 20px;
	color: #1d1d1d;
	font-size: 1.4rem;
}

.top #about .about_list {
	position: relative;
	font-size: 1.2rem;
	padding-left: 90px;
	min-height: 75px
}

.top #about .about_list+.about_list {
	margin-top: 30px
}

.top #about .about_list:before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 75px;
	height: 75px;
	background-size: 100% auto;
	background-repeat: no-repeat
}

.top #about .about_list-01:before {
	background-image: url(/img/top/about_list1.png)
}

.top #about .about_list-02:before {
	background-image: url(/img/top/about_list2.png)
}

.top #about .about_list-03:before {
	background-image: url(/img/top/about_list3.png)
}

.top #about .about_list-04:before {
	background-image: url(/img/top/about_list4.png);
}

.top #about .about_list-05:before {
	background-image: url(/img/top/about_list5.png);
}

.top #about .about_link:before,
.top #about .about_link:after {
	content: "";
	position: absolute;
	top: 50%
}

.top #about .about_link:before {
	left: 0;
	width: 14px;
	height: 14px;
	background-color: #b8b8b8;
	border-radius: 50%;
	transform: translateY(-50%)
}

.top #about .about_link:after {
	left: 4px;
	width: 4px;
	height: 4px;
	border-top: solid 1.5px #fff;
	border-right: solid 1.5px #fff;
	transform: translateY(-50%) rotate(45deg);
	z-index: 2
}

.top #about .about_txt {
	margin-top: 5px;
	color: #666;
	font-size: 1.2rem;
	line-height: 1.7
}

.top #about .about_list-02 .about_link {
	padding-left: 0;
}

.top #about .about_list-02 .about_link:after,
.top #about .about_list-02 .about_link:before {
	display: none;
}

.top #about .about_list-link {
	display: flex;
	flex-direction: column;
}

.top #about .about_list-link a {
	position: relative;
	color: #666;
	font-size: 1.2rem;
	text-decoration: none;
	padding-left: 20px;
	margin-top: 5px;
}

.top #about .about_list-link a:before,
.top #about .about_list-link a:after {
	content: "";
	position: absolute;
	top: 50%;
}

.top #about .about_list-link a:before {
	left: 0;
	width: 16px;
	height: 16px;
	background-color: #b8b8b8;
	border-radius: 50%;
	transform: translateY(-50%);
}

.top #about .about_list-link a:after {
	left: 5px;
	width: 4px;
	height: 4px;
	border-top: solid 1.5px #fff;
	border-right: solid 1.5px #fff;
	transform: translateY(-50%) rotate(45deg);
	z-index: 2;
}

/* others */
.top #others {
	margin-top: 40px;
	padding: 40px 0 60px;
	background: #ddedf7;
}

.top #others .others_list {
	display: flex;
	justify-content: space-between;
	margin: 10px auto 0;
}

.top #others .others_list li {
	width: 22%;
}

/* feature */
.top #feature {
	margin-top: 35px;
	padding-bottom: 82px
}

.top #feature .feature_block {
	margin-top: 20px
}

.top #feature .feature_article {
	position: relative;
	padding: 10px 0 0
}

.top #feature .feature_article a {
	display: block;
	text-decoration: none;
	padding: 0 5%;
	margin: auto;
	max-width: calc(10% + 170px)
}

.top #feature .feature_article_img {
	width: 100%;
	padding-top: 100%;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	border: 1px solid #eee;
	border-radius: 4px;
	position: relative
}

.top #feature .feature_article-new .feature_article_img:before {
	content: "";
	position: absolute;
	left: 10px;
	top: -10px;
	width: 46px;
	height: 21px;
	background: url(/s/img/top/icon_new.png) left top / 100% auto no-repeat;
	z-index: 1
}

.top #feature .feature_article_txt {
	position: relative;
	padding-top: 25px
}

.top #feature .feature_article_txt:before {
	position: absolute;
	top: -20px;
	left: -10px;
	display: flex;
	align-items: center;
	width: 115px;
	height: 32px;
	padding-left: 45px;
	color: #1d1d1d;
	font-size: 1.3rem;
	border-radius: 4px;
	background-size: 22px 19px;
	background-position: left 15px center;
	background-repeat: no-repeat
}

.top #feature .feature_article-reading .feature_article_txt:before {
	content: "読みもの";
	background-image: url(/s/img/top/feature_icon_reading.png);
	background-color: #ecf7fb
}

.top #feature .feature_article-shopping .feature_article_txt:before {
	content: "買いもの";
	background-image: url(/s/img/top/feature_icon_shopping.png);
	background-color: #faeaee
}

.top #feature .feature_article-movie .feature_article_txt:before {
	content: "動画";
	background-image: url(/s/img/top/feature_icon_movie.png);
	background-color: #f1f8e6
}

.top #feature .slick-dots {
	display: flex;
	justify-content: center;
	margin-top: 15px
}

.top #feature .slick-dots>li+li {
	margin-left: 20px
}

.top #feature .slick-dots>li button {
	width: 8px;
	height: 8px;
	padding: 0;
	text-indent: -9999px;
	background-color: #ddd;
	border: none;
	border-radius: 50%
}

.top #feature .slick-dots>li.slick-active button {
	background-color: #666
}

.top #feature .feature_article_txt .ttl {
	color: #1d1d1d;
	font-size: 1.3rem;
	line-height: 1.5
}

.top #feature .feature_article_txt .lead {
	margin-top: 1em;
	color: #888;
	font-size: 1.2rem
}

.top #feature .feature-bnr_block {
	border-top: 1px solid #eee;
	margin-top: 20px;
	padding-top: 20px
}

.top #feature .feature_slider_wrap {
	max-width: 640px;
	margin: auto
}

.top #feature .feature-bnr_block .feature_slider {
	overflow: hidden
}

.top #feature .js-feature_slider {
	width: calc(100% + 10px);
	margin-left: -5px
}

.top #feature .feature_slider_banner>a {
	display: block;
	padding: 5px
}

.top #feature .feature_slider_banner img {
	margin: 0 auto;
	width: 100%
}


.top #history {
	padding: 40px 0;
	border-top: 1px solid #eee;
	border-bottom: 1px solid #eee
}

.top #history .history_slider_wrap {
	margin-top: 10px;
	margin-left: -10px;
	width: calc(100% + 20px);
	overflow: hidden
}

.top #history .product_img .product_icon .product_icon_img {
	width: auto;
	height: auto;
	background: none;
}

.top #history .product_img .product_icon {
	top: -10px;
	left: 10px;
}

.top #history .product_img .product_icon .product_icon-new:before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 46px;
	height: 21px;
	background: url(/s/img/top/icon_new.png) left top / 100% auto no-repeat;
	z-index: 1;
	transform: none;
}

.top #history .products_list_item>a {
	display: block;
	text-decoration: none;
	padding-top: 10px;
	max-width: 150px;
	margin: auto
}

.top #history .products_list_img {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: auto;
	background-color: #fff;
	border-radius: 4px;
	position: relative;
	margin: auto;
	padding: 20px;
	background: #fff
}

.top #history .history_slider_img_inner {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	margin: auto;
	width: 100%;
	height: 0;
	padding-bottom: 100%
}

.top #history .products_list_img img {
	display: block;
	z-index: 1;
	transform: translateY(-50%) translateX(-50%);
	position: absolute;
	top: 50%;
	left: 50%;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%
}

.top #history .products_list_detail {
	margin-top: 1em
}

.top #history .products_list_detail .comment {
	font-size: 1.1rem
}

.top #history .products_list_detail .name {
	color: #1d1d1d;
	font-size: 1.2rem
}

.top #history .products_list_detail .bottom {
	display: flex;
	justify-content: space-between;
	align-items: center
}

.top #history .products_list_detail .bottom .capacity {
	color: #888;
	font-size: 1.1rem
}

.top #history .products_list_detail .bottom .price {
	color: #1d1d1d;
	font-size: 1.7rem;
	display: block;
	width: auto;
	margin: 0
}

.top #history .products_list_detail .bottom .price .tax {
	font-size: 1.1rem;
	font-feature-settings: 'palt'
}

.top #history .slick-dots {
	display: flex;
	justify-content: center;
	margin-top: 15px
}

.top #instagram {
	padding: 30px 0 35px
}

.top #instagram .instagram_h2 .instagram_h2_ttl {
	position: relative;
	padding-left: 30px;
	font-size: 1.8rem;
	font-weight: 300
}

.top #instagram .instagram_h2 .instagram_h2_ttl:before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 20px;
	height: 20px;
	background: url(/s/img/top/instagram_icon.png) left top / 100% auto no-repeat;
	transform: translateY(-50%)
}

.top #instagram .instagram_h2 .instagram_h2_account {
	margin-left: 12px;
	display: inline-block;
	font-size: 1.2rem;
	text-decoration: none
}

.top #instagram .instagram_slider_wrap {
	margin: 18px auto 0;
	max-width: 280px;
}

.top #instagram .slick-slide {
	line-height: 0;
}

.top #instagram .instagram_slider_img>a {
	position: relative;
	display: block;
	width: 100%;
	height: 0;
	padding-bottom: 100%;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat
}

.top #instagram .instagram_slider_img>a:before {
	content: "";
	position: absolute;
	right: 10px;
	bottom: 10px;
	width: 18px;
	height: 18px;
	background: url(/s/img/top/instagram_icon.png) left top / 100% auto no-repeat
}

.top #instagram .slick-dots {
	display: flex;
	justify-content: center;
	margin-top: 15px
}

.top #instagram .slick-dots>li+li {
	margin-left: 20px
}

.top #instagram .slick-dots>li button {
	width: 8px;
	height: 8px;
	padding: 0;
	text-indent: -9999px;
	background-color: #ddd;
	border: none;
	border-radius: 50%
}

.top #instagram .slick-dots>li.slick-active button {
	background-color: #666
}

.top #instagram .instagram_btn {
	margin-top: 15px
}

.top #instagram .instagram_btn .btn {
	width: 200px;
	margin: 0 auto
}

.top #instagram .instagram_btn .btn>a {
	height: 44px;
	font-size: 1.3rem
}

/* feature */
.top #feature {
	margin-top: 35px;
	padding-bottom: 82px
}

.top #feature .feature_block {
	margin-top: 20px
}

.top #feature .feature_article {
	position: relative;
	padding: 10px 0 0
}

.top #feature .feature_article a {
	display: block;
	text-decoration: none;
	padding: 0 5%;
	margin: auto;
	max-width: calc(10% + 170px)
}

.top #feature .feature_article_img {
	width: 100%;
	padding-top: 100%;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	border: 1px solid #eee;
	border-radius: 4px;
	position: relative
}

.top #feature .feature_article-new .feature_article_img:before {
	content: "";
	position: absolute;
	left: 10px;
	top: -10px;
	width: 46px;
	height: 21px;
	background: url(/s/img/top/icon_new.png) left top / 100% auto no-repeat;
	z-index: 1
}

.top #feature .feature_article_txt {
	position: relative;
	padding-top: 25px
}

.top #feature .feature_article_txt:before {
	position: absolute;
	top: -20px;
	left: -10px;
	display: flex;
	align-items: center;
	width: 115px;
	height: 32px;
	padding-left: 45px;
	color: #1d1d1d;
	font-size: 1.3rem;
	border-radius: 4px;
	background-size: 22px 19px;
	background-position: left 15px center;
	background-repeat: no-repeat
}

.top #feature .feature_article-reading .feature_article_txt:before {
	content: "読みもの";
	background-image: url(/s/img/top/feature_icon_reading.png);
	background-color: #ecf7fb
}

.top #feature .feature_article-shopping .feature_article_txt:before {
	content: "買いもの";
	background-image: url(/s/img/top/feature_icon_shopping.png);
	background-color: #faeaee
}

.top #feature .feature_article-movie .feature_article_txt:before {
	content: "動画";
	background-image: url(/s/img/top/feature_icon_movie.png);
	background-color: #f1f8e6
}

.top #feature .slick-dots {
	display: flex;
	justify-content: center;
	margin-top: 15px
}

.top #feature .slick-dots>li+li {
	margin-left: 20px
}

.top #feature .slick-dots>li button {
	width: 8px;
	height: 8px;
	padding: 0;
	text-indent: -9999px;
	background-color: #ddd;
	border: none;
	border-radius: 50%
}

.top #feature .slick-dots>li.slick-active button {
	background-color: #666
}

.top #feature .feature_article_txt .ttl {
	color: #1d1d1d;
	font-size: 1.3rem;
	line-height: 1.5
}

.top #feature .feature_article_txt .lead {
	margin-top: 1em;
	color: #888;
	font-size: 1.2rem
}

.top #feature .feature-bnr_block {
	border-top: 1px solid #eee;
	margin-top: 20px;
	padding-top: 20px
}

.top #feature .feature_slider_wrap {
	max-width: 640px;
	margin: auto
}

.top #feature .feature-bnr_block .feature_slider {
	overflow: hidden
}

.top #feature .js-feature_slider {
	width: calc(100% + 10px);
	margin-left: -5px
}

.top #feature .feature_slider_banner>a {
	display: block;
	padding: 5px
}

.top #feature .feature_slider_banner img {
	margin: 0 auto;
	width: 100%
}





@media screen and (max-width:320px) {
	.top #benefit .benefit_block {
		padding: 18px 90px 18px 20px
	}

	.top #benefit .benefit_heading {
		padding: 10px 5px;
		font-size: 1.1rem;
		height: 30px
	}

	.top #benefit .benefit_heading:after {
		left: -23px;
		border: 15px solid transparent;
		border-right: 8px solid #ec6a8b
	}

	.top #benefit .benefit_list>li+li {
		padding-left: 5px
	}

	.top #benefit .benefit_list>li {
		font-size: 1.1rem
	}

	.top #online .online_benefit {
		padding: 10px 0 30px
	}

	.top #pickup .pickup_slider_detail p.price .num {
		margin-left: 0;
		display: block
	}

	.top #lineup .btn-list>.btn a {
		padding: 6px
	}

	.top #column .column_category_list {
		font-size: 1rem;
		letter-spacing: -.1em
	}

	.top #column .column_category_list+.column_category_list {
		margin-left: 10px
	}

	.top #column .column_detail .date .num {
		margin-left: .5em
	}

	.top #column .column_detail .date .category {
		font-size: 1rem;
		letter-spacing: -.05rem;
		font-feature-settings: 'palt'
	}

	.top #about .about_main {
		padding: 35px 25px 20px;
		background: url(/img/top/about_main.jpg) center left / cover no-repeat
	}

	.top #about .about_main .lead {
		margin-top: 15px
	}

	.top #about .about_btn {
		margin-top: 15px
	}

	.top #history .history_slider_detail .bottom {
		display: block
	}
}


#top-pagetop {
	position: fixed;
	right: 2vw;
	bottom: 2vw;
	transform: rotate(-90deg);
	background: #ffffff;
	border-radius: 50%;
	z-index: 99;
	width: 13vw;
	height: 13vw;
	transition: none;
}

#top-pagetop:hover {
	opacity: 1;
}

#top-pagetop svg {
	fill: #F8CBAD;
	width: 100%;
	height: 100%;
}

/* -------------------------------------------------- */
/* brand */
/* -------------------------------------------------- */
.brand .top_h2 {
	font-size: 1.2rem;
	font-weight: 500;
	text-align: center;
	color: #666
}

.brand .top_h2>span {
	display: block;
	margin-bottom: 8px;
	font-size: 2.4rem;
	color: #1d1d1d;
	font-weight: 300;
	letter-spacing: 0.08em;
	line-height: 1;
}

.brand .slick-slide {
	height: auto;
}

.brand .top_h2_2 {
	font-weight: 400;
	font-size: 1.2rem
}

.brand .top_h2_2 span {
	font-size: 2rem;
	display: block;
	line-height: 1.2
}

.brand .index_h3 {
	font-size: 2.4rem;
	font-weight: 400;
	text-align: center
}

.brand #mv.mama {
	display: flex;
	align-items: center;
	height: 240px;
	background: url(/s/img/brand/mamakids/mv.jpg) center / 100% auto no-repeat #ece8bb
}

.brand #mv .mv_inner {
	width: 360px;
	height: 100%;
	padding: 18px 0 12px;
	margin: auto;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center
}

@media screen and (min-width:360px) {
	.brand #mv.mama {
		background-size: 360px auto
	}

	.brand #mv .mv_inner:before,
	.brand #mv .mv_inner:after {
		content: "";
		position: absolute;
		top: 0;
		left: 50%;
		width: 360px;
		height: 100%;
		-webkit-transform: translate(-50%, 0);
		transform: translate(-50%, 0)
	}

	.brand #mv .mv_inner:before {
		background: linear-gradient(90deg, rgba(236, 232, 187, 1) 0%, rgba(236, 232, 187, 0) 10%)
	}

	.brand #mv .mv_inner:after {
		background: linear-gradient(270deg, rgba(236, 232, 187, 1) 0%, rgba(236, 232, 187, 0) 10%)
	}
}

.brand #mv+.btn_list {
	display: flex;
	justify-content: center;
	border-bottom: solid 1px #eee
}

.brand #mv+.btn_list .btn {
	margin: 15px 0 20px;
	max-width: 310px;
	width: 100%
}

.brand #mv+.btn_list .btn+.btn {
	margin-left: 10px
}

.brand #mv+.btn_list .btn button {
	padding: 12px 30px 11px 20px;
	justify-content: flex-start;
	font-size: 1.2rem
}

.brand #mv+.btn_list .btn.btn-primary:before {
	right: 10px
}

.brand #mv+.btn_list .btn.btn-primary:after {
	right: 17px
}

.brand #mv+.btn_list .btn.btn-brand>button {
	background: #ebab3d
}

.brand #mv+.btn_list .btn.btn-brand:after {
	border-top: solid 1.5px #ebab3d;
	border-right: solid 1.5px #ebab3d
}

.brand #feature {
	margin-top: 30px;
}

.brand #feature .feature_block {
	margin-top: 20px
}

.brand #feature .feature_article {
	position: relative;
	padding: 10px 0 0
}

.brand #feature .feature_article a {
	display: block;
	text-decoration: none;
	padding: 0 5%;
	margin: auto;
	max-width: calc(10% + 170px)
}

.brand #feature .feature_article_img {
	width: 100%;
	padding-top: 100%;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	border: 1px solid #eee;
	border-radius: 4px;
	position: relative
}

.brand #feature .feature_article-new .feature_article_img:before {
	content: "";
	position: absolute;
	left: 10px;
	top: -10px;
	width: 46px;
	height: 21px;
	background: url(/s/img/top/icon_new.png) left top / 100% auto no-repeat;
	z-index: 1
}

.brand #feature .feature_article_txt {
	position: relative;
	padding-top: 25px
}

.brand #feature .feature_article_txt:before {
	position: absolute;
	top: -20px;
	left: -10px;
	display: flex;
	align-items: center;
	width: 115px;
	height: 32px;
	padding-left: 45px;
	color: #1d1d1d;
	font-size: 1.3rem;
	border-radius: 4px;
	background-size: 22px 19px;
	background-position: left 15px center;
	background-repeat: no-repeat
}

.brand #feature .feature_article-reading .feature_article_txt:before {
	content: "読みもの";
	background-image: url(/s/img/top/feature_icon_reading.png);
	background-color: #ecf7fb
}

.brand #feature .feature_article-shopping .feature_article_txt:before {
	content: "買いもの";
	background-image: url(/s/img/top/feature_icon_shopping.png);
	background-color: #faeaee
}

.brand #feature .feature_article-movie .feature_article_txt:before {
	content: "動画";
	background-image: url(/s/img/top/feature_icon_movie.png);
	background-color: #f1f8e6
}

.brand #feature .slick-dots {
	display: flex;
	justify-content: center;
	margin-top: 15px
}

.brand #feature .slick-dots>li+li {
	margin-left: 20px
}

.brand #feature .slick-dots>li button {
	width: 8px;
	height: 8px;
	padding: 0;
	text-indent: -9999px;
	background-color: #ddd;
	border: none;
	border-radius: 50%
}

.brand #feature .slick-dots>li.slick-active button {
	background-color: #666
}

.brand #feature .feature_article_txt .ttl {
	color: #1d1d1d;
	font-size: 1.3rem;
	line-height: 1.5
}

.brand #feature .feature_article_txt .lead {
	margin-top: 1em;
	color: #888;
	font-size: 1.2rem
}

.brand #feature .feature_slider_wrap {
	max-width: 640px;
	margin: auto
}

.brand #feature .js-feature_slider {
	width: calc(100% + 10px);
	margin-left: -5px
}

.brand #feature .feature_slider_banner>a {
	display: block;
	padding: 5px
}

.brand #feature .feature_slider_banner img {
	margin: 0 auto;
	width: 100%
}

.brand #brand_info {
	padding-top: 30px
}

.brand #brand_info .brand_sec+.brand_sec {
	margin-top: 36px
}

.brand #brand_info .brand_head {
	position: relative;
	width: 100%;
	height: 0;
	padding-bottom: 38.9%
}

.brand #brand_info .brand_head_inner {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0
}

.brand #brand_info .brand_head a {
	width: 100%;
	height: 100%;
	z-index: 1;
	display: flex;
	align-items: center;
	text-decoration: none;
	color: inherit;
	padding: 10px 20px 0;
	position: relative
}

.brand #brand_info .brand_head a:after {
	content: "";
	position: absolute;
	right: 20px;
	top: 50%;
	width: 35px;
	height: 35px;
	background: url(/s/img/brand/icon_arrow.png) center / 8px auto no-repeat #fff;
	border-radius: 100%;
	transform: translateY(-50%);
	border: solid 1px #999;
}

.brand #brand_info .oligo .brand_head a:after {
	border-color: #f6b019
}

.brand #brand_info .mom .brand_head a:after {
	border-color: #ee7e7e
}

.brand #brand_info .baby .brand_head a:after {
	border-color: #64a1d1
}

.brand #brand_info .kids .brand_head a:after {
	border-color: #f29635
}

.brand #brand_info .brand_head .category {
	line-height: 1;
	position: absolute;
	top: 0;
	left: 20px
}

.brand #brand_info .brand_head .category span {
	display: inline-block;
	background: #999;
	color: #fff;
	min-width: 100px;
	text-align: center;
	border-radius: 0 0 4px 4px;
	font-size: 1.3rem;
	vertical-align: text-top;
	padding: 3px 5px
}

.brand #brand_info .brand_head .brand_link {
	font-size: 2rem;
	line-height: 1;
	position: relative
}

.brand #brand_info .brand_head .brand_link a:after {
	content: "";
	position: absolute;
	right: 0;
	top: 50%;
	width: 45px;
	height: 45px;
	background: url(/img/brand/icon_arrow.png) center / auto no-repeat #fff;
	border-radius: 100%;
	transform: translateY(-50%);
	border: solid 1px #999
}

.brand #brand_info .brand_head .brand_link small {
	font-size: 1.3rem;
	line-height: 1.4;
	margin-top: 10px;
	font-weight: 400;
	display: block
}

.brand #brand_info .brand_list {
	margin: 24px auto 0;
	padding: 0 35px
}

.brand #brand_info .brand_list .products_list_wrap {
	justify-content: flex-start
}

.brand #brand_info .brand_list .products_list_item {
	width: 31.48%;
	margin-top: 0
}

.brand #brand_info .brand_list .products_list_item+.products_list_item {
	margin-left: 2.5%
}

.brand #brand_info .brand_list .products_list_detail .name {
	font-size: 1.1rem;
	padding: 0 5px
}

.brand #brand_info .brand_list .products_list_wrap.act_slide .products_list_item {
	margin-left: 10px
}

.brand #brand_info .brand_list .products_list_wrap.act_slide .slick-list {
	margin-left: -12px;
}

.brand #brand_info .brand_list .slick-list .products_list_item>a {
	display: block
}

.brand #brand_info .brand_slider_arrow {
	position: absolute;
	top: 50%;
	width: 16px;
	height: 16px;
	cursor: pointer;
	z-index: 10;
	transform: translateY(-50%)
}

.brand #brand_info .brand_slider_arrow-prev {
	left: -20px;
	background: url(/s/img/brand/arrow_prev.png) center / 9px auto no-repeat
}

.brand #brand_info .brand_slider_arrow-next {
	right: -20px;
	background: url(/s/img/brand/arrow_next.png) center / 9px auto no-repeat
}

.brand #brand_info .oligo .brand_head {
	background: url(/s/img/brand/brand_head_oligo.jpg) center / 100% auto no-repeat #faf7f0
}

.brand #brand_info .oligo .brand_head .category span {
	;
	background: #f6b019;
}

.brand #brand_info .oligo .brand_head .brand_link a:after {
	border-color: #f6b019
}

.brand #brand_info .mom .brand_head {
	background: url(/s/img/brand/brand_head_mom.jpg) center / 100% auto no-repeat #f8f3f3
}

.brand #brand_info .mom .brand_head .category span {
	;
	background: #ee7e7e;
}

.brand #brand_info .mom .brand_head .brand_link a:after {
	border-color: #ee7e7e
}

.brand #brand_info .baby .brand_head {
	background: url(/s/img/brand/brand_head_baby.jpg) center / 100% auto no-repeat #f2f6f9
}

.brand #brand_info .baby .brand_head .category span {
	;
	background: #64a1d1;
}

.brand #brand_info .baby .brand_head .brand_link a:after {
	border-color: #64a1d1
}

.brand #brand_info .kids .brand_head {
	background: url(/s/img/brand/brand_head_kids.jpg) center / 100% auto no-repeat #faf8f5
}

.brand #brand_info .kids .brand_head .category span {
	;
	background: #f29635;
}

.brand #brand_info .kids .brand_head .brand_link a:after {
	border-color: #f29635
}

@media screen and (min-width:720px) {

	.brand #brand_info .oligo .brand_head,
	.brand #brand_info .mom .brand_head,
	.brand #brand_info .baby .brand_head,
	.brand #brand_info .kids .brand_head {
		height: 280px;
		padding-bottom: 0;
		background-size: 720px auto;
		background-position: right;
	}

	.brand #brand_info .brand_head:before {
		content: "";
		position: absolute;
		top: 0;
		right: 0;
		width: 720px;
		height: 100%
	}

	.brand #brand_info .oligo .brand_head:before {
		background: linear-gradient(90deg, rgba(250, 247, 240, 1) 0%, rgba(250, 247, 240, 0) 10%)
	}

	.brand #brand_info .mom .brand_head:before {
		background: linear-gradient(90deg, rgba(248, 243, 243, 1) 0%, rgba(248, 243, 243, 0) 10%)
	}

	.brand #brand_info .baby .brand_head:before {
		background: linear-gradient(90deg, rgba(242, 246, 249, 1) 0%, rgba(242, 246, 249, 0) 10%)
	}

	.brand #brand_info .kids .brand_head:before {
		background: linear-gradient(90deg, rgba(250, 247, 240, 1) 0%, rgba(250, 248, 245, 0) 10%)
	}
}

.brand #brand_info .btn-wrap {
	margin-top: 60px
}

.brand #brand_info .btn-wrap .btn {
	max-width: 320px
}

.brand #brand_info .btn-wrap .btn button {
	font-size: 1.2rem;
	padding: 16px 30px
}

.brand #search_block {
	margin: 40px 0 0;
	border-top: solid 1px #eee;
	border-bottom: solid 1px #eee
}

.brand #search_block .search_block_form {
	border-right: solid 1px #eee;
	padding: 15px 0
}

.brand #search_block .search_block_form form {
	position: relative;
	width: 100%;
	height: 50px;
	margin-top: 8px
}

.brand #search_block .search_block_form input {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding: 0 50px 0 1em;
	border: 1px solid #ccc;
	border-radius: 4px
}

.brand #search_block .search_block_form button {
	position: absolute;
	top: 0;
	right: 0;
	width: 50px;
	height: 100%;
	border-top: none;
	border: 1px solid #ccc;
	background: url(/common/img/search_btn.png) center center / auto auto no-repeat #f7f7f7;
	border-radius: 0 4px 4px 0
}

.brand #search_block .search_keyword_list {
	margin-top: 10px;
	margin-left: -10px
}

.brand #search_block .search_keyword_list>li {
	display: inline-block;
	margin-left: 10px;
	margin-top: 10px
}

.brand #search_block .search_keyword_list>li>a {
	display: inline-block;
	padding: 1px 15px;
	color: #1d1d1d;
	text-decoration: none;
	line-height: 2;
	background-color: #ecf7fb;
	border-radius: 15px
}

.brand #search_block .search_block_category {
	border-top: solid 1px #eee;
	padding: 30px 0 36px
}

.brand #search_block .search_block_category ul {
	display: flex;
	flex-wrap: wrap;
	margin-top: 24px;
	gap: 15px 30px
}

.brand #search_block .search_block_category li {
	line-height: 1.2;
	width: 7em
}

.brand #search_block .search_block_category li:nth-of-type(2n) {
	width: 11em
}

.brand #search_block .search_block_category li>a {
	color: inherit
}

.brand #search_block .search_block_category li>a:hover {
	text-decoration: none
}

@media screen and (min-width:400px) {
	.brand #search_block .search_block_category li {
		width: auto;
	}

	.brand #search_block .search_block_category li:nth-of-type(2n) {
		width: auto;
	}
}

.brand #about {
	background: #f7f7f7;
	overflow: hidden;
	padding: 45px 0
}

.brand #about .top_h2_2 span {
	font-size: 2rem;
	display: block;
	line-height: 1.2;
	margin-bottom: 4px
}

.brand #about .about_inner {
	position: relative;
	max-width: 640px;
	margin: auto;
}

.brand #about .title_head {
	position: relative;
	padding: 60px 0 0 20px
}

.brand #about .title_head:before {
	content: "";
	position: absolute;
	top: -20px;
	left: 0;
	width: 113px;
	height: 96px;
	background: url(/s/img/brand/mamakids/about_ttl.png) center / 100% auto no-repeat
}

.brand #about .title_head+h3 {
	padding-top: 45px
}

.brand #about .about_inner .img {
	position: absolute;
	top: 0;
	right: -10px
}

.brand #about .about_inner .desc {
	margin-top: 24px
}

.brand #about .about_inner .desc p {
	line-height: 2;
	font-size: 1.3rem
}

.brand #about .about_inner .desc p+p {
	margin-top: 32px
}

.brand #about .custom-btn {
	margin-top: 15px
}

.brand #about .custom-btn button {
	position: relative;
	display: block;
	width: 100%;
	max-width: 640px;
	height: 100px;
	margin: auto;
	text-align: center;
	background-color: #fa919c;
	transition-duration: .2s;
	text-decoration: none;
	border-radius: 4px;
	box-shadow: 5px 5px 0 #dd7781;
	top: 0;
	left: 0;
	border: none;
	padding: 0 0 6px
}

.brand #about .custom-btn button:hover {
	top: 4px;
	left: 4px;
	opacity: 1;
	box-shadow: 0 0 0 #dd7781
}

.brand #bnr {
	padding: 40px 0 50px;
}

.brand #bnr .bnr_list {
	display: flex;
	flex-wrap: wrap;
	max-width: 640px;
	margin: auto
}

.brand #bnr .bnr_list>li {
	width: 48.5%;
}

.brand #bnr .bnr_list>li:nth-of-type(2n) {
	margin-left: 3%
}

.brand #bnr .bnr_list>li:nth-of-type(n+3) {
	margin-top: 10px
}

.brand #bnr .bnr_list.pickup {
	margin-bottom: 20px
}

.brand #bnr .bnr_list.pickup>li {
	width: 100%
}

.brand #bnr .bnr_list.pickup>li+li {
	margin-top: 10px;
	margin-left: 0;
}

@media screen and (max-width:320px) {
	.brand #about .about_inner .img {
		right: -60px;
	}
}

.brand #voice {
	background: #fbf7ea;
	padding: 50px 0
}

.brand #voice .title_wrapper {
	text-align: center
}

.brand #voice .title_wrapper .top_h2 {
	display: inline-block;
	position: relative
}

.brand #voice .title_wrapper .top_h2:before,
.brand #voice .title_wrapper .top_h2:after {
	content: "";
	position: absolute
}

.brand #voice .title_wrapper .top_h2:before {
	top: -24px;
	left: -50px;
	width: 46px;
	height: 46px;
	background: url(/s/img/brand/voice_ttl_l.png) center / 100% auto no-repeat
}

.brand #voice .title_wrapper .top_h2:after {
	top: -12px;
	right: -46px;
	width: 34px;
	height: 37px;
	background: url(/s/img/brand/voice_ttl_r.png) center / 100% auto no-repeat
}

.brand #voice .voice_list {
	display: flex;
	margin-top: 26px
}

.brand #voice .voice_list li+li {
	margin-left: 20px
}

.brand #voice .voice_list .slick-list {
	margin-left: -20px
}

.brand #voice .voice_list.act_slide li {
	margin-left: 20px
}

.brand #voice .voice_list .voice_wrapper {
	border: solid 1px #fbac57;
	background: #fff;
	padding: 29px;
	border-radius: 24px;
	position: relative
}

.brand #voice .voice_list.act_slide li .voice_wrapper {
	border: dashed 1px #fbac57
}

.brand #voice .voice_list.act_slide li.slick-current .voice_wrapper {
	border: solid 1px #fbac57
}

.brand #voice .voice_list .voice_wrapper:before {
	content: "";
	position: absolute;
	bottom: -23px;
	left: -1px;
	width: 45px;
	height: 41px;
	background: url(/s/img/brand/voice_fukidashi_current.png) center / 100% auto no-repeat
}

.brand #voice .voice_list.act_slide li .voice_wrapper:before {
	background-image: url(/s/img/brand/voice_fukidashi.png)
}

.brand #voice .voice_list.act_slide li.slick-current .voice_wrapper:before {
	background-image: url(/s/img/brand/voice_fukidashi_current.png)
}

.brand #voice .voice_list .voice_wrapper h3 {
	line-height: 1.5;
	font-size: 1.4rem;
	margin-bottom: 10px;
	font-weight: 700
}

.brand #voice .voice_list .voice_wrapper p {
	line-height: 1.66;
	font-size: 1.2rem
}

.brand #voice .voice_list .voice_wrapper .use_item {
	margin-top: 16px
}

.brand #voice .voice_list .voice_wrapper .use_item dt span {
	font-size: 1.1rem;
	background: #f6e5d2;
	display: inline-block;
	padding: 4px 12px;
	line-height: 1;
	border-radius: 10px
}

.brand #voice .voice_list .voice_wrapper .use_item dd {
	margin-top: 4px;
	font-size: 1.2rem
}

.brand #voice .voice_list .voice_wrapper .use_item dd a {
	color: inherit
}

.brand #voice .voice_list .voice_name {
	margin-left: 38px;
	margin-top: -10px;
	position: relative;
	z-index: 1
}

.brand #voice .voice_list .voice_name .voice_icon {
	display: inline-block;
	height: 50px;
}

.brand #voice .voice_list .voice_name .name {
	display: inline-block;
	margin-left: -.25rem;
	line-height: 1.2
}

.brand #voice .voice_list .voice_name .name span+span {
	margin-left: 1rem
}

.brand #qa {
	padding-top: 50px
}

.brand #qa .qa_list {
	margin-top: 24px
}

.brand #qa .qa_list dl {
	border-top: solid 1px #eee
}

.brand #qa .qa_list dl:last-of-type {
	border-bottom: solid 1px #eee
}

.brand #qa .qa_list dt,
#qa .qa_list dd {
	padding-left: 40px;
	padding-right: 20px;
	position: relative;
	line-height: 1.7
}

.brand #qa .qa_list dt {
	padding-top: 13px;
	padding-bottom: 13px;
	font-size: 1.3rem;
	font-weight: 700;
	cursor: pointer
}

.brand #qa .qa_list dd {
	padding-top: 15px;
	padding-bottom: 15px;
	background: #f9f9f9;
	display: none
}

.brand #qa .qa_list dt:before,
#qa .qa_list dd:before {
	font-size: 1.8rem;
	font-weight: 700;
	position: absolute;
	top: 1.5rem;
	left: 10px;
	line-height: 1
}

.brand #qa .qa_list dt:before {
	content: "Q.";
	color: #eaa459
}

.brand #qa .qa_list dd:before {
	content: "A.";
	color: #7f9ec4;
	top: 1.8rem;
	left: 11px
}

.brand #qa .qa_list dt i {
	position: absolute;
	right: 0;
	top: 2.4rem;
	width: 15px;
	height: 15px;
	border: solid 2px #eaa459;
	background-color: #fff;
	border-radius: 50%;
	cursor: pointer;
	z-index: 3;
	transform: translateY(-50%);
	transition-duration: .2s
}

.brand #qa .qa_list dt i:before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 4.5px;
	height: 4.5px;
	border-bottom: 2px solid #eaa459;
	border-left: 2px solid #eaa459;
	transform: translate(-50%, -60%) rotate(-45deg);
	transition-duration: .2s
}

.brand #qa .qa_list dt.open i {
	background: #eaa459
}

.brand #qa .qa_list dt.open i:before {
	border-color: #fff;
	transform: translate(-50%, -40%) rotate(135deg)
}

.brand #brand {
	padding-top: 60px
}

.brand #brand .brand_list a {
	text-decoration: none;
	color: #666;
	line-height: 1.5
}

.brand #brand .brand_list {
	margin-top: 30px;
	display: flex;
	flex-wrap: wrap
}

.brand #brand .brand_list li {
	padding: 20px 0;
	width: 100%;
	border-bottom: solid 1px #eee
}

.brand #brand .brand_list li:first-of-type {
	border-top: solid 1px #eee
}

.brand #brand .brand_list li>a {
	display: flex;
	align-items: center;
	position: relative
}

.brand #brand .brand_list li>a:after,
.brand #brand .brand_list li>a:before {
	content: "";
	position: absolute
}

.brand #brand .brand_list li>a:after {
	top: 50%;
	right: 0;
	width: 14px;
	height: 14px;
	background-color: #b8b8b8;
	border-radius: 50%;
	transform: translateY(-50%);
	z-index: 1
}

.brand #brand .brand_list li>a:before {
	top: 50%;
	right: 6px;
	width: 4px;
	height: 4px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: translateY(-50%) rotate(45deg);
	z-index: 2
}

.brand #brand .brand_list li .img {
	width: 100px
}

.brand #brand .brand_list li .txt {
	width: calc(100% - 100px);
	padding-left: 12px;
	padding-right: 25px;
	font-size: 1.2rem
}

.brand #brand .brand_list li .txt .name {
	color: #909090;
	font-size: 1.1rem;
}

.brand #brand .brand_list li .txt .name .logo {
	font-size: 1.6rem;
	line-height: 1;
	color: #1d1d1d;
	margin-bottom: 5px
}

.brand #brand .brand_list li .txt .name+p {
	margin-top: 10px
}

.brand #column {
	padding: 50px 0 30px
}

.brand #column>.contents {
	position: relative
}

.brand #column .column_ttl {
	position: relative;
	max-width: 640px;
	margin: auto
}

.brand #column .column_list {
	max-width: 640px;
	margin: 28px auto 0
}

.brand #column .column_article {
	position: relative;
	display: flex;
	justify-content: space-between
}

.brand #column .column_article a {
	text-decoration: none;
}

.brand #column .column_article+.column_article {
	margin-top: 25px
}

.brand #column .column_article-new:before {
	content: "";
	position: absolute;
	left: -10px;
	top: -8px;
	width: 50px;
	height: 50px;
	background: url(/img/top/column_icon_new.png) left top / 100% auto no-repeat;
	z-index: 1
}

.brand #column .column_article .column_img {
	width: 46.875%;
	display: block;
}

.brand #column .column_img>div {
	width: 100%;
	height: 0;
	padding-bottom: 64%;
	background-size: cover;
	background-position: center center;
	border-radius: 4px;
	position: relative;
}

.brand #column .column_detail {
	width: 50%
}

.brand #column .column_detail .date {
	display: flex;
	align-items: center;
	font-size: 1.1rem
}

.brand #column .column_detail .date .category {
	position: relative;
	padding-left: 34px
}

.brand #column .column_detail .date .category:before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 28px;
	height: 28px;
	background-size: 75% auto;
	background-position: center center;
	background-repeat: no-repeat;
	background-color: #fff9d7;
	transform: translateY(-50%);
	border-radius: 50%
}

.brand #column .column_article-movie .column_detail .date .category:before {
	background-image: url(/s/img/top/column_icon_movie.png)
}

.brand #column .column_article-baby .column_detail .date .category:before {
	background-image: url(/s/img/top/column_icon_baby.png)
}

.brand #column .column_article-kids .column_detail .date .category:before {
	background-image: url(/s/img/top/column_icon_kids.png)
}

.brand #column .column_article-offstage .column_detail .date .category:before {
	background-image: url(/s/img/top/column_icon_offstage.png)
}

.brand #column .column_article-mama .column_detail .date .category:before {
	background-image: url(/s/img/top/column_icon_mama.png)
}

.brand #column .column_article-beauty .column_detail .date .category:before {
	background-image: url(/s/img/top/column_icon_beauty.png)
}

.brand #column .column_detail .date .num {
	margin-left: 1em;
	color: #888
}

.brand #column .column_detail .ttl {
	margin-top: 1em;
	font-size: 1.2rem
}

.brand #column .column_detail .ttl span {
	background: linear-gradient(transparent 80%, rgba(236, 106, 139, 0.3) 0);
	color: #1d1d1d;
}

.brand #column .column_detail .lead {
	display: none;
	margin-top: 1em;
	color: #888;
	font-size: 1.2rem
}

.brand #column .column_list+.btn {
	margin-top: 25px
}

@media screen and (max-width:320px) {
	.brand #column .column_detail .date .num {
		margin-left: .5em
	}

	.brand #column .column_detail .date .category {
		font-size: 1rem;
		letter-spacing: -.05rem;
		font-feature-settings: 'palt'
	}
}

.brand #feature_item>.contents {
	padding: 26px 0 24px;
	margin: 0 20px;
	border-top: 1px solid #eee;
	border-bottom: 1px solid #eee
}

.brand #feature_item .feature_slider_wrap {
	margin-top: 25px
}

.brand #feature_item .product_img {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	border-radius: 4px;
	background: #fff;
	overflow: hidden
}

.brand #feature_item .products_list_detail {
	margin-top: 1rem;
	padding: 0;
}

.brand #feature_item .products_list_detail .comment {
	font-size: 1.2rem;
}

.brand #feature_item .products_list_detail .name {
	color: #1d1d1d;
}

.brand #feature_item .products_list_detail .bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.brand #feature_item .products_list_detail .bottom .capacity {
	color: #888;
	font-size: 1.2rem;
}

.brand #feature_item .products_list_detail .bottom .price {
	color: #1d1d1d;
	font-size: 2rem;
}

.brand #feature_item .products_list_detail .bottom .price .tax {
	font-size: 1.2rem;
}

.brand #feature_item .slider_arrow {
	position: absolute;
	top: 20%;
	width: 25px;
	height: 25px;
	background-color: #b8b8b8;
	border-radius: 50%;
	cursor: pointer;
	z-index: 10;
	transform: translateY(-50%);
}

.brand #feature_item .slick-dots {
	margin-top: 35px
}

.brand #instagram {
	padding: 30px 0 40px
}

.brand #instagram .instagram_h2 {
	text-align: center
}

.brand #instagram .instagram_h2 span {
	position: relative;
	padding-left: 30px;
	font-size: 2.4rem;
	font-weight: 300
}

.brand #instagram .instagram_h2 span:before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 20px;
	height: 20px;
	background: url(/s/img/top/instagram_icon.png) left top / 100% auto no-repeat;
	transform: translateY(-50%)
}

.brand #instagram .instagram_h2 small {
	display: block;
	font-size: 1.2rem;
	text-decoration: none
}

.brand #instagram .instagram_h2 small a {
	text-decoration: none
}

.brand #instagram .instagram_wrap {
	margin: 18px auto 0;
	max-width: 640px;
	display: flex;
	flex-wrap: wrap
}

.brand #instagram .instagram_wrap .img {
	width: 33.3333%
}

.brand #instagram .instagram_wrap .img>a {
	position: relative;
	display: block;
	width: 100%;
	height: 0;
	padding-bottom: 100%;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat
}

.brand #instagram .lead {
	line-height: 1.42;
	text-align: center;
	margin-top: 26px
}

.brand #instagram .lead p {
	display: inline-block;
	position: relative;
	font-size: 1.1rem;
	padding: 0 20px
}

.brand #instagram .lead p:before,
.brand #instagram .lead p:after {
	content: "";
	position: absolute;
	bottom: 8px;
	width: 19px;
	height: 1px;
	background: #1d1d1d
}

.brand #instagram .lead p:before {
	transform: rotate(58deg);
	left: 0
}

.brand #instagram .lead p:after {
	transform: rotate(122deg);
	right: 0
}

.brand #instagram .instagram_btn {
	margin-top: 26px
}

.brand #instagram .instagram_btn .btn {
	width: 100%;
	max-width: 280px;
	margin: 0 auto
}

.brand #instagram .instagram_btn .btn>a {
	height: 42px;
	font-size: 1.3rem
}

/* -------------------------------------------------- */
/* info */
/* -------------------------------------------------- */
.info {
	margin: auto;
}

.info .main {
	padding-bottom: 60px
}

.info .main .sec+.sec {
	margin-top: 3rem
}

.info .pagetitle_en {
	text-align: center;
	font-weight: normal;
	line-height: 1.2;
	padding-top: 3rem
}

.info .pagetitle_en .en {
	display: block;
	line-height: 1;
	font-size: 2.4rem;
	font-weight: 300;
	letter-spacing: 0.08em;
	margin-bottom: 8px
}

.info .pagetitle_en small {
	font-size: 1.2rem
}

.info .news_list {
	margin-top: 15px;
	border-bottom: 1px solid #ddd
}

.info .news_list li {
	display: flex;
	align-items: flex-start;
	padding: 13px 0;
	border-top: 1px solid #ddd;
	line-height: 1
}

.info .news_list .news_date {
	color: #888;
	font-size: 1.2rem;
	padding-top: 4px
}

.info .news_list .news_ttl {
	margin-left: 10px;
	padding-left: 24px;
	position: relative;
}

.info .news_list .news_ttl:before,
.news_ttl:after {
	content: "";
	position: absolute;
	top: 50%
}

.info .news_list .news_ttl:before {
	top: 3px;
	left: 0;
	width: 14px;
	height: 14px;
	background-color: #b8b8b8;
	border-radius: 50%;
}

.info .news_list .news_ttl:after {
	top: 8px;
	left: 4px;
	width: 4px;
	height: 4px;
	border-top: solid 1.5px #fff;
	border-right: solid 1.5px #fff;
	transform: rotate(45deg);
	z-index: 2
}

.info .news_list .news_ttl a {
	display: block;
	color: #5ea8dd;
	font-size: 1.4rem;
	text-decoration: none;
	line-height: 1.4
}

.info .news_list .news_ttl small {
	display: block;
	padding-top: 8px;
	font-size: 1.2rem;
	color: #888;
	line-height: 1.5
}

.info .products_list_pager {
	margin-top: 0;
	border-top: 0
}

.info article.news .news_date {
	color: #777;
	font-size: 1.3rem;
	text-align: right;
	margin-bottom: 25px
}

.info article.news .news_ttl {
	font-size: 1.8rem;
	line-height: 1.42;
	margin-bottom: 20px
}

.info article.news figure {
	margin-bottom: 20px;
	text-align: center
}

.info article.news .news_lead {
	font-size: 1.4rem;
	padding-bottom: 20px;
	margin-bottom: 30px;
	border-bottom: 1px solid #ddd
}

.info article.news .detail_heading {
	margin-bottom: 10px
}

.info article.news p+p {
	margin-top: 1em
}

.share-block {
	margin: 20px 0 0;
}

.share-block li {
	display: inline-block;
	margin: 5px 0;
}

.share-block li+li {
	margin-left: 6px
}

.share-block .fb_iframe_widget span {
	vertical-align: baseline !important
}

.share-block .copy-url {
	border: none;
	background: no-repeat;
	padding: 0;
	margin: 0;
	font-size: 1.2rem;
	display: inline-block;
	vertical-align: 6px;
	color: #666;
	text-decoration: underline;
	position: relative;
}

.share-block .copy-url:hover {
	text-decoration: none
}

.share-block .copy-url:after {
	content: 'コピーしました';
	background: #555;
	display: inline-block;
	color: #fff;
	border-radius: .4rem;
	position: absolute;
	left: 50%;
	bottom: -3em;
	transform: translate(-50%, 0);
	font-size: .75rem;
	padding: 2px 5px 2px;
	width: 11em;
	opacity: 0;
	transition-duration: 1s;
}

.share-block .copy-url.tooltip::after {
	opacity: 1;
	transition-duration: 0.2s;
}

.info article.news .explanation_block {
	width: 100%;
	margin: 30px 0
}

.info article.news .contents_h4-line {
	margin: 40px 0 15px
}

.info article.news .link_list li {
	padding-left: 18px;
	position: relative
}

.info article.news .link_list li:before {
	content: "";
	display: block;
	width: 6px;
	height: 6px;
	border-top: solid 1.5px #000;
	border-right: solid 1.5px #000;
	transform: rotate(45deg);
	position: absolute;
	top: 9px;
	left: 0
}

.info article.news .link_list li+li {
	margin-top: 5px
}

/* info-event */
.info.event .event_ttl {
	font-size: 1.6rem;
	text-align: center;
	font-weight: normal;
	padding: 20px
}

.info.event .event_ttl.ttl1 {
	background: #FDF2F6;
	position: relative
}

.info.event .event_ttl.ttl1:before {
	content: "";
	width: 17px;
	height: 15px;
	background: url("/s/img/info/event_icon_date.png") 0 0/contain no-repeat;
	display: inline-block;
	margin-right: 5px;
	vertical-align: -1px
}

.info.event .event_ttl.ttl1:after {
	content: "";
	width: 115px;
	height: 48px;
	background: url("/s/img/info/event_ttl1.png") 0 0/contain no-repeat;
	display: block;
	position: absolute;
	top: -24px;
	left: 50%;
	margin-left: 50px
}

.info.event .event_ttl.ttl2 {
	background: #F7F7F7;
	margin: 35px 0;
}

.info.event .event_ttl.ttl2:before {
	content: "";
	width: 18px;
	height: 16px;
	background: url("/s/img/info/event_icon_report.png") 0 0/contain no-repeat;
	display: inline-block;
	margin-right: 5px;
	vertical-align: -2px
}

.info.event .event_article {
	position: relative;
	border-bottom: 1px solid #eee
}

.info.event .event_article>a {
	display: block;
	padding: 15px 0 20px;
	text-decoration: none;
	max-width: 640px;
	margin: auto
}

.info.event .event_article-recruitment>a {
	padding: 15px 0 30px
}

.info.event .event_date {
	position: relative;
	padding-left: 25px;
	font-size: 1.2rem;
	color: #1d1d1d
}

.info.event .event_date:before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 17px;
	height: 15px;
	background: url(/s/img/top/event_icon_date.png) left top / 100% auto no-repeat;
	transform: translateY(-50%)
}

.info.event .event_date>span {
	font-size: 1.6rem
}

.info.event .event-inner {
	display: flex;
	justify-content: space-between
}

.info.event .event-inner .event_img {
	width: 46.875%;
	height: 0;
	padding-bottom: 31%
}

.info.event .event-inner .event_detail {
	width: 50%
}

.info.event .event_img {
	position: relative;
	margin-top: 10px;
	width: 100%;
	height: 220px;
	background-size: cover;
	border-radius: 4px;
	background-position: center center;
	background-repeat: no-repeat
}

.info.event .event_img:before {
	position: absolute
}

.info.event .event_article-recruitment .event_img:before {
	content: "募集中";
	bottom: -25px;
	left: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #ec6a8b;
	width: 50px;
	height: 50px;
	font-size: 1rem;
	background: url(/img/top/event_bg_reruitment.png) left top / 100% auto no-repeat
}

.info.event .event_article-end .event_img:before {
	content: "";
	bottom: 0;
	left: 0;
	width: 85px;
	height: 20px;
	background: url(/s/img/top/event_icon_finish.png) center / 65px auto no-repeat #666;
	border-radius: 0 4px 0 4px
}

.info.event .event_detail {
	margin-top: 5px;
	font-size: 1.2rem
}

.info.event .event_detail .ttl {
	line-height: 1.5;
}

.info.event .event_detail .lead {
	color: #666;
	margin-top: 5px
}

.info.event .event_detail .place {
	position: relative;
	margin-top: 8px;
	padding-left: 20px;
	color: #1d1d1d;
}

.info.event .event_detail .place:before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 16px;
	height: 20px;
	background: url(/s/img/top/event_icon_place.png) left top / 100% auto no-repeat;
	transform: translateY(-50%)
}

.info.event .column_list {
	max-width: 640px;
	margin: auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 30px 0;
}

.info.event .column_article {
	position: relative;
	width: 46.875%;
}

.info.event .column_article a {
	color: inherit;
	text-decoration: none;
}

.info.event .column_article-new:before {
	content: "";
	position: absolute;
	left: -10px;
	top: -8px;
	width: 50px;
	height: 50px;
	background: url(/img/top/column_icon_new.png) left top / 100% auto no-repeat;
	z-index: 1
}

.info.event .column_article .column_img {
	display: block;
}

.info.event .column_img>div {
	width: 100%;
	height: 0;
	padding-bottom: 64%;
	background-size: cover;
	background-position: center center;
	border-radius: 4px;
	position: relative;
}

.info.event .column_detail {
	padding-top: 15px
}

.info.event .column_detail .date {
	display: flex;
	align-items: center;
	font-size: 1.1rem
}

.info.event .column_detail .date .category {
	position: relative;
	padding-left: 34px
}

.info.event .column_detail .date .category:before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 28px;
	height: 28px;
	background-size: 75% auto;
	background-position: center center;
	background-repeat: no-repeat;
	background-color: #fff9d7;
	transform: translateY(-50%);
	border-radius: 50%
}

.info.event .column_article-movie .column_detail .date .category:before {
	background-image: url(/s/img/top/column_icon_movie.png)
}

.info.event .column_article-baby .column_detail .date .category:before {
	background-image: url(/s/img/top/column_icon_baby.png)
}

.info.event .column_article-kids .column_detail .date .category:before {
	background-image: url(/s/img/top/column_icon_kids.png)
}

.info.event .column_article-offstage .column_detail .date .category:before {
	background-image: url(/s/img/top/column_icon_offstage.png)
}

.info.event .column_article-mama .column_detail .date .category:before {
	background-image: url(/s/img/top/column_icon_mama.png)
}

.info.event .column_article-beauty .column_detail .date .category:before {
	background-image: url(/s/img/top/column_icon_beauty.png)
}

.info.event .column_detail .date .num {
	margin-left: 1em;
	color: #888
}

.info.event .column_detail .ttl {
	margin-top: 1em;
	color: #1D1D1D;
	font-size: 1.2rem
}

.info.event .column_detail .lead {
	margin-top: 5px;
	color: #888;
	font-size: 1.2rem
}

.info.event .column_article .tag {
	flex-wrap: wrap;
	gap: 5px;
	margin-top: 10px
}

.info.event .column_article .tag>li {
	padding: 5px;
	font-size: 1rem
}

.info.event .column_article .tag>li+li {
	margin: 0;
}

.info.event .btn-more {
	margin-top: 40px;
}

.info.event .event-ttl-box {
	padding-top: 25px;
}

.info.event .event-ttl-box .event_ttl {
	font-size: 1.8rem;
	padding: 0;
	text-align: left;
	margin: 10px 0;
}

.info.event .event-info-box {
	margin-bottom: 35px;
	padding-bottom: 25px;
	border-bottom: 1px solid #eee;
}

.info.event .event-info-box .event_img {
	height: auto;
	background: none;
	margin: 15px 0;
	text-align: center;
}

.info.event .event-info-box .event_detail .place {
	margin-bottom: 5px;
}

.info.event .event-info-box .event_detail tr {
	vertical-align: top;
}

.info.event .event-info-box .event_detail th {
	padding-top: 10px;
}

.info.event .event-info-box .event_detail th span {
	display: inline-block;
	width: 65px;
	height: 32px;
	line-height: 32px;
	text-align: center;
	background: #FDF2F6;
	border-radius: 4px;
	font-size: 1.3rem;
	font-weight: normal;
}

.info.event .event-info-box .event_detail td {
	font-size: 1.3rem;
	padding: 16px 0 0 14px;
}

.info.event .event-info-box .event_detail .btn {
	width: 280px;
	margin-top: 20px;
}

.info.event .event-info-box .event_detail .btn>a {
	font-size: 1.4rem;
	height: 48px;
	line-height: 48px;
}

.info.event .event-info-box .event_detail .notice {
	font-size: 1.2rem;
	color: #666;
	line-height: 1.5;
	margin-top: 20px;
}

.info.event .event-contents-txt {
	margin: 20px 0;
	font-size: 1.3rem;
	line-height: 1.5;
}

.info.event .event-contents-txt p+p {
	margin-top: 1.2em;
}

.info.event .teacher-box {
	margin: 30px auto 0;
	padding: 25px 20px 20px;
	background: #FDF8FA;
	border-radius: 4px;
	text-align: center;
	max-width: 360px;
}

.info.event .teacher-box h2 {
	font-size: 1.4rem;
	font-weight: normal;
}

.info.event .teacher-box figure {
	margin: 15px 0 18px;
}

.info.event .teacher-box .detail {
	margin: 0;
}

.info.event .teacher-box .detail h3 {
	font-size: 1.5rem;
	font-weight: normal;
	margin-bottom: 12px;
}

.info.event .teacher-box .detail p {
	font-size: 1.2rem;
	color: #666;
	line-height: 1.66;
	text-align: left;
}

.info.event .teacher-box .detail .social-link {
	display: flex;
	justify-content: center;
	margin-top: 12px;
	gap: 12px;
}

.info.event .teacher-box .detail .social-link a:after {
	content: none;
}

.info.event .event-detail {
	margin-top: 35px;
}

.info.event .event-detail h2 {
	margin-bottom: 16px;
	font-size: 1.8rem;
}

.info.event .event-detail .table {
	width: 100%;
	border-radius: 0;
	border-bottom: 1px solid #ddd;
}

.info.event .event-detail .table:before {
	content: none;
}

.info.event .event-detail .table th:first-of-type,
.info.event .event-detail .table tbody tr:not(:last-of-type) {
	border: 0;
}

.info.event .event-detail .table th {
	border-top: 1px solid #ddd !important;
	padding: 14px 20px;
}

.info.event .event-detail .table td {
	padding: 25px 20px;
}

.info.event .event-detail .table td small {
	font-size: 1.2rem;
}

.info.event .event-detail .table td p+p {
	margin-top: 8px;
}

.info.event .event-detail .btn {
	width: 280px;
	margin-top: 40px;
}

.info.event .event-detail .btn>a {
	font-size: 1.4rem;
	height: 48px;
	line-height: 48px;
}

.info.event .event-detail .btn_list+.notice {
	margin-top: 32px;
}

.info.event .event-detail .btn_list+.notice p {
	font-size: 1.2rem;
	color: #666;
	line-height: 1.5;
}

/* -------------------------------------------------- */
/* column */
/* -------------------------------------------------- */
.column {
	margin: auto;
}

.column .main {
	padding-bottom: 60px
}

.column .main .sec+.sec {
	margin-top: 3rem
}

.column .column_ttl {
	position: relative;
	margin-top: 30px;
	padding-bottom: 25px;
	border-bottom: 1px solid #eee;
}

.column .column_ttl:after {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	margin-left: 100px;
	width: 66px;
	height: 86px;
	background: url(/img/top/column_pic.png) center / cover no-repeat
}

.column .column_ttl h1 {
	font-size: 1.2rem;
	font-weight: 500;
	text-align: center;
	color: #666
}

.column .column_ttl h1>span {
	display: block;
	margin-bottom: 8px;
	font-size: 2.4rem;
	color: #1d1d1d;
	font-weight: 300;
	letter-spacing: 0.08em;
	line-height: 1;
}

.column .column_list {
	max-width: 640px;
	margin: auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 30px 0;
}

.column .column_article {
	position: relative;
	width: 46.875%;
}

.column .column_article a {
	text-decoration: none;
	color: #1d1d1d;
}

.column .column_article .column_img {
	width: 100%;
	display: block;
}

.column .column_img>div {
	width: 100%;
	height: 0;
	padding-bottom: 64%;
	background-size: cover;
	background-position: center center;
	border-radius: 4px;
	position: relative;
}

.column .column_article-new .column_img>div:before {
	content: "";
	position: absolute;
	left: -10px;
	top: -8px;
	width: 50px;
	height: 50px;
	background: url(/img/top/column_icon_new.png) left top / 100% auto no-repeat;
	z-index: 1
}

.column .column_detail {
	padding-top: 15px
}

.column .column_article .date {
	display: flex;
	align-items: center;
	font-size: 1.1rem
}

.column .column_article .date .category {
	position: relative;
	padding-left: 34px;
	white-space: nowrap;
}

.column .column_article .date .category:before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 28px;
	height: 28px;
	background-size: 75% auto;
	background-position: center center;
	background-repeat: no-repeat;
	background-color: #fff9d7;
	transform: translateY(-50%);
	border-radius: 50%
}

.column .column_article-movie .date .category:before {
	background-image: url(/s/img/top/column_icon_movie.png)
}

.column .column_article-baby .date .category:before {
	background-image: url(/s/img/top/column_icon_baby.png)
}

.column .column_article-kids .date .category:before {
	background-image: url(/s/img/top/column_icon_kids.png)
}

.column .column_article-offstage .date .category:before {
	background-image: url(/s/img/top/column_icon_offstage.png)
}

.column .column_article-mama .date .category:before {
	background-image: url(/s/img/top/column_icon_mama.png)
}

.column .column_article-beauty .date .category:before {
	background-image: url(/s/img/top/column_icon_beauty.png)
}

.column .column_article .date .num {
	margin-left: 1em;
	color: #888
}

.column .column_article .ttl {
	margin-top: 1em;
	font-size: 1.2rem;
}

.column .column_article .ttl+.lead {
	margin-top: 5px;
}

.column .column_article .lead {
	color: #888;
	font-size: 1.2rem
}

.column .column_article .tag {
	flex-wrap: wrap;
	gap: 5px;
	margin-top: 10px
}

.column .column_article .tag>li {
	padding: 6px 5px 5px;
	font-size: 1rem
}

.column .column_article .tag>li+li {
	margin: 0;
}

.column .column_article-pickup {
	width: 100%;
}

.column .column_article-pickup .column_img,
.column .column_article-pickup .column_detail {
	width: 100%
}

.column .column_article-pickup .column_img {}

.column .column_article-pickup.column_article-new .column_img>div:before {
	width: 70px;
	height: 70px
}

.column .column_article-pickup .ttl {
	font-size: 1.6rem;
	margin: 10px 0 15px;
}

.column .column_article-pickup .column_detail {
	padding-top: 10px
}

.column .btn-more {
	margin-top: 35px;
}

.column .sec-column-category {
	background: #F7F7F7;
	padding: 25px 0 30px;
}

.column .cat_ttl {
	font-size: 1.6rem;
	font-weight: normal;
	text-align: center;
	margin-bottom: 20px;
}

.column .cat_ttl span {
	font-weight: bold;
	color: #EC6A8B;
}

.column .cat_ttl:before {
	content: "";
	display: inline-block;
	width: 18px;
	height: 13px;
	background: url(/img/column/icon_cat.png) 0 0/contain no-repeat;
	margin-right: 5px;
}

.column .column_category {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 10px 0;
	max-width: 480px;
	margin: auto;
}

.column .column_category_list {
	width: 49%;
}

.column .column_category_list a {
	display: flex;
	align-items: center;
	height: 48px;
	padding: 6px 10px;
	background: #fff;
	border-radius: 4px;
	text-decoration: none;
	color: #1d1d1d;
	position: relative;
}

.column .column_category_list .img {
	width: 35px;
	height: 35px;
	border-radius: 50%;
	background-size: auto auto;
	background-position: center center;
	background-repeat: no-repeat;
	background-color: #fff9d7;
	margin-right: 10px;
	position: relative
}

.column .column_category_list .img:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 28px;
	height: 28px;
	background-size: 100% auto;
	background-position: center center;
	background-repeat: no-repeat;
	transform: translateX(-50%) translateY(-50%);
}

.column .column_category_list-movie .img:before {
	background-image: url(/s/img/top/column_icon_movie.png);
}

.column .column_category_list-baby .img:before {
	background-image: url(/s/img/top/column_icon_baby.png);
}

.column .column_category_list-kids .img:before {
	background-image: url(/s/img/top/column_icon_kids.png);
}

.column .column_category_list-offstage .img:before {
	background-image: url(/s/img/top/column_icon_offstage.png);
}

.column .column_category_list-mama .img:before {
	background-image: url(/s/img/top/column_icon_mama.png);
}

.column .column_category_list-beauty .img:before {
	background-image: url(/s/img/top/column_icon_beauty.png);
}

.column .column_category_list .txt {
	font-size: 1.1rem;
}

.column .column_category_list a:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 20px;
	width: 7px;
	height: 7px;
	border-top: solid 1.5px #000;
	border-right: solid 1.5px #000;
	transform: translateY(-50%) rotate(45deg);
}

.column .contents_h4-line {
	margin-bottom: 20px;
}

.column .recommend.column_list {
	gap: 20px;
}

.column .recommend .column_article {
	width: 100%;
	display: flex;
	justify-content: space-between
}

.column .recommend .column_article .column_img {
	width: 46.875%;
}

.column .recommend .column_detail {
	width: 50%;
	padding-top: 0
}

.column .column_category_ttl {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin-top: 20px;
}

.column .column_category_ttl .img {
	flex-shrink: 0;
	width: 45px;
	height: 45px;
	border-radius: 50%;
	background-size: auto auto;
	background-position: center center;
	background-repeat: no-repeat;
	background-color: #fff9d7;
	margin-right: 12px;
	position: relative
}

.column .column_category_ttl .img:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 28px;
	height: 28px;
	background-size: 100% auto;
	background-position: center center;
	background-repeat: no-repeat;
	transform: translateX(-50%) translateY(-50%);
}

.column .column_category_ttl .img.category_baby:before {
	background-image: url(/s/img/top/column_icon_baby.png);
}

.column .column_category_ttl .img.category_movie:before {
	background-image: url(/s/img/top/column_icon_movie.png);
}

.column .column_category_ttl .img.category_kids:before {
	background-image: url(/s/img/top/column_icon_kids.png);
}

.column .column_category_ttl .img.category_offstage:before {
	background-image: url(/s/img/top/column_icon_offstage.png);
}

.column .column_category_ttl .img.category_mama:before {
	background-image: url(/s/img/top/column_icon_mama.png);
}

.column .column_category_ttl .img.category_beauty:before {
	background-image: url(/s/img/top/column_icon_beauty.png);
}

.column .column_category_ttl h1 {
	font-size: 1.8rem;
	font-weight: normal;
	margin-right: 15px;
	white-space: nowrap;
}

.column .column_category_ttl .tag {
	gap: 10px;
}

.column .column_keyword {
	margin: 30px 0 20px;
	padding: 15px 10px;
	border: 1px solid #eee;
	border-radius: 4px;
}

.column .key_ttl {
	font-size: 1.3rem;
	font-weight: normal;
	margin-bottom: 15px;
}

.column .key_ttl span {
	font-weight: bold;
	color: #5EA8DD;
}

.column .key_ttl:before {
	content: "";
	display: inline-block;
	width: 14px;
	height: 14px;
	background: url(/img/column/icon_search.png) 0 0/contain no-repeat;
	margin-right: 8px;
	vertical-align: -2px
}

.column .column_keyword .tag {
	gap: 8px;
	flex-wrap: wrap;
}

.column .column_keyword .tag>li.tag_list {
	font-size: 1rem;
	border-radius: 4px;
}

.column .column_keyword .tag>li+li {
	margin: 0;
}

.column .tag a {
	text-decoration: none;
	color: #1d1d1d;
}

.column .products_list_pager {
	border: 0;
}

.column .column_header {
	margin: 30px 0;
}

.column .column_header .date {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 1.3rem;
}

.column .column_header .date .category {
	position: relative;
	padding-left: 34px;
}

.column .column_header .date .category:before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 28px;
	height: 28px;
	background-size: 75% auto;
	background-position: center center;
	background-repeat: no-repeat;
	background-color: #fff9d7;
	transform: translateY(-50%);
	border-radius: 50%;
}

.column .column_article-movie .column_header .date .category:before {
	background-image: url(/s/img/top/column_icon_movie.png);
}

.column .column_article-baby .column_header .date .category:before {
	background-image: url(/s/img/top/column_icon_baby.png);
}

.column .column_article-kids .column_header .date .category:before {
	background-image: url(/s/img/top/column_icon_kids.png);
}

.column .column_article-offstage .column_header .date .category:before {
	background-image: url(/s/img/top/column_icon_offstage.png);
}

.column .column_article-mama .column_header .date .category:before {
	background-image: url(/s/img/top/column_icon_mama.png);
}

.column .column_article-beauty .column_header .date .category:before {
	background-image: url(/s/img/top/column_icon_beauty.png);
}

.column .column_header .date .num {
	color: #888;
}

.column .column_header .ttl {
	font-size: 1.8rem;
	font-weight: normal;
	line-height: 1.5;
	margin: 20px 0 15px;
}

.column .column_header .ttl span {
	background: linear-gradient(transparent 90%, rgba(236, 106, 139, 0.3) 0);
}

.column .column_header .tag {
	gap: 10px;
}

.column .column_header .tag>li+li {
	margin: 0;
}

.column .column_header figure {
	margin: 20px 0;
	text-align: center;
}

.column .column_header .lead {
	margin-top: 20px;
	padding: 20px;
	font-size: 1.2rem;
	background: #fafafa;
	color: #666;
	line-height: 1.58
}

.column .column-contents-txt {
	text-align: center;
	padding: 20px 0 30px;
}

.column .column-contents-txt * {
	text-align: left;
	font-weight: normal;
}

.column .column-contents-txt h2 {
	margin-bottom: 15px;
	font-size: 1.6rem;
	color: #5EA8DD;
	line-height: 1.5
}

.column .column-contents-txt p {
	line-height: 1.75
}

.column .column-contents-txt p+p {
	margin-top: 1em;
}

.column .column-contents figure {
	margin: 20px 0;
	display: inline-block;
}

.column .column-contents figure figcaption {
	font-size: 1.2rem;
	color: #666;
	margin-top: 1em;
	text-align: left;
}

.column .related-items {
	margin-top: 25px;
	padding-top: 25px;
	border-top: 1px solid #E6E6E6;
}

.column .feature_slider_wrap {
	margin-top: 10px
}

.column .product_img {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	border-radius: 4px;
	background: #fff;
	overflow: hidden
}

.column .products_list_detail {
	margin-top: 1rem;
	padding: 0 10px;
}

.column .products_list_detail .comment {
	font-size: 1.2rem;
}

.column .products_list_detail .name {
	color: #1d1d1d;
}

.column .products_list_detail .bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.column .products_list_detail .bottom .capacity {
	color: #888;
	font-size: 1.2rem;
}

.column .products_list_detail .bottom .price {
	color: #1d1d1d;
	font-size: 2rem;
}

.column .products_list_detail .bottom .price .tax {
	font-size: 1.2rem;
}

.column .slider_arrow {
	position: absolute;
	top: 20%;
	width: 25px;
	height: 25px;
	background-color: #b8b8b8;
	border-radius: 50%;
	cursor: pointer;
	z-index: 10;
	transform: translateY(-50%);
}

.column .js_feature_slider .slider_arrow {
	top: 30%;
}

.column .slick-dots {
	margin-top: 35px
}

/* -------------------------------------------------- */
/* terms */
/* -------------------------------------------------- */
.terms {
	margin: auto;
}

.terms .main .contents_h2-bg.pagesubtitle {
	margin-bottom: 25px;
	margin-left: 20px;
	margin-right: 20px;
}

.terms .main .contents_h3 {
	margin-left: 20px;
	margin-right: 20px;
}

.terms .main .sec_inner {
	padding: 25px 20px 40px;
}

.terms .main .sec_inner .txt+.txt {
	margin-top: 1em;
}

.terms .main .sec_inner .txt+ol {
	margin-top: 1em;
}

.terms .main .sec_inner ol>li {
	list-style-type: decimal;
	list-style-position: inside;
}

.terms .main .update {
	padding: 0 20px 50px;
	color: #888;
}

/* -------------------------------------------------- */
/* guide */
/* -------------------------------------------------- */

/* -------------------------------------------------- */
/* introduction */
/* -------------------------------------------------- */
.lineconnect .single-container {
	padding: 20px 0 60px;
}

.lineconnect .contents_h1 {
	letter-spacing: 0.05em;
	background: none;
	font-size: 1.8rem;
}

.lineconnect h2.center {
	margin: 40px 0 20px;
}

.lineconnect .point {
	margin-top: 40px;
}

.lineconnect .point .item_block {
	border: 2px solid #e6e6e6;
	position: relative;
	padding: 20px;
}

.lineconnect .point .item_block+.item_block {
	margin-top: 40px;
}

.lineconnect .point .item_block:nth-child(3) {
	margin-top: 70px;
}

.lineconnect .point .item_block:before {
	content: "";
	display: block;
	width: 120px;
	height: 70px;
	position: absolute;
	top: -39px;
	left: 50%;
	transform: translateX(-50%);
}

.lineconnect .point .item_block:nth-child(1):before {
	background: url(/img/introduction/privilege/callout1.png) 0 0 no-repeat;
}

.lineconnect .point .item_block:nth-child(2):before {
	background: url(/img/introduction/privilege/callout2.png) 0 0 no-repeat;
}

.lineconnect .point .item_block:nth-child(3):before {
	background: url(/img/introduction/privilege/callout3.png) 0 0 no-repeat;
	width: 170px;
	height: 120px;
	top: -72px;
}

.lineconnect .point .item_inner {
	border: 0;
}

.lineconnect .point .item_heading {
	text-align: center;
	color: #00b800;
	margin-top: 10px;
	font-size: 1.8rem;
	font-weight: bold;
}

.lineconnect .point .item_figure {
	margin: 15px 0;
	display: flex;
	justify-content: center;
	align-items: center;
}

.lineconnect .point .notice {
	line-height: 1.4;
	margin-top: 1em;
}

.lineconnect .btn-line {
	margin: 0 0 40px;
}

.lineconnect .btn-line .btn {
	max-width: 100%;
}

.lineconnect .btn-line .btn>a {
	height: auto;
	padding: 20px 40px;
	background: #00b800;
}

.lineconnect .btn-line .btn:after {
	border-color: #00b800;
}

.lineconnect .btn-line .btn span span {
	padding-top: 5px;
	font-size: 1.8rem;
	font-weight: bold;
}