@charset "utf-8";
/*--------------------------------------------
  shoptop.css
  ショップトップの共通CSS
--------------------------------------------*/

.topGroupName {
	max-width: 100%;
	padding: 0;
}

/* 差込HTML */
#insertHtml{
	width:100%;
}

/*
	トップページ用パンくず
---------------------------------------------*/
#wrap > .panNav {
	padding-top: 80px;
}
@media screen and (max-width: 600px) {
  #wrap > .panNav ul {
    margin: 0;
  }
}
footer {
	margin-top: 30px;
}


/*-------------------------------------
	トップバナーエリア
--------------------------------------*/
.contents section.globalImage {
	position: relative;
	padding: 0 3%;
}
/* スライダー */
.gallery-main .swiper-slide img {
	display: block;
	border-radius: 30px;
	border: 1px solid #000;
}
.gallery-main .swiper-controler {
	display: flex;
	margin: 24px 0;
}
.gallery-main .swiper-pagination {
	position: static;
	width: auto;
	display: inline-block;
}
.swiper-pagination-bullet {
	width: 12px;
	height: 12px;
	opacity: 1;
	background-color: #fff;
	border: 1px solid #707070;
	margin: 0 6px;
}
.swiper-pagination-bullet-active {
	background-color: #000;
	border-color: #000;
}
.swiper-button-prev,
.swiper-button-next {
	display: inline-block;
	position: static;
	width: auto;
	height: auto;
	margin: 0;
	padding: 0 10px;
}
.swiper-button-next:after,
.swiper-button-prev:after {
	font-size: 1rem;
	color: #000;
}
.swiper-slide-sheets {
	display: inline-block;
}
.swiper-slide-sheets span {
	margin: 0 5px;
}

/* 重要なお知らせ */
.important_notice_list {
	position: relative;
	max-width: 600px;
	width: 100%;
	background-color: #fff;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
	padding: 5px 20px;
	margin-left: auto;
	margin-top: -100px;
	z-index: 900;
}
.important_notice_list li {
	padding: 10px 5px;
}
.important_notice_list li + li {
	border-top: 1px solid #707070;
}
.important_notice_list li .arrow_right::after {
	display: none;
}
.important_notice_list li .newsDate {
	display: none;
}
.important_notice_list li .newsTitle {
	font-weight: normal;
}


/*-------------------------------------
	コンテンツエリア
--------------------------------------*/
.contents_area {
	padding: 80px 2% 0;
}
.contents_wrap {
	padding-bottom: 80px;
	border-bottom: 1px solid #000;
}
.contents_area ul {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
}

.contents_two_columns {
	display: flex;
	max-width: 1240px;
	width: 100%;
	margin: 0 auto;
	padding: 80px 20px 0;
}
.contents_left_area {
	width: 35%;
}
.contents_right_area {
	width: 65%;
}

.goods_title {
	font-weight: bold;
}

/* コンテンツタイトル */
.level_h2 {
	text-align: center;
	font-size: 1rem;
	border: none;
	margin: 0 0 45px;
	padding: 0;
}
.contents_two_columns .level_h2 {
	text-align: left;
}
.level_h2 span {
	display: block;
}
.level_h2 .contents_title {
	font-size: 2.8rem;
	line-height: 1;
	font-weight: 300;
	margin-bottom: 10px;
}
.level_h2 .contents_small_title {
	font-size: 1.2rem;
	line-height: 1;
}


/* おすすめ商品：recommendIncludeArea */
.recommendIncludeArea {
	margin-top: 40px;
	padding-top: 60px;
}
.contents_area ul.recommendResults {
	display: flex;
	max-width: 1270px;
}
.recommendResults li {
	padding: 0 35px;
	width: 33.3333%;
}
.recommendResults li a {
	display: block;
}
.recommend_item {
	text-align: center;
}
.recommend_item img {
	width: 100%;
	max-height: 360px;
	object-fit: cover;
}
.recommend_goods_title {
	font-size: 18px;
	margin-top: 15px;
	margin-bottom: 5px;
}

/* ランキング：rankingIncludeArea */
.contents_area ul.rankingResults {
	display: flex;
	max-width: 1220px;
}
.rankingResults li {
	padding: 0 10px;
	width: 20%;
}
.rankingResults li a {
	display: block;
	margin-top: 5px;
}
.ranking {
	position: relative;
}
.ranking::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background-color: #252525;
	color: #fff;
	font-weight: 200;
	font-size: 1.5rem;
}
.ranking.ranking_01::before {
	content: "1";
	background-color: #D3B587;
	color: #222222;
}
.ranking.ranking_02::before {
	content: "2";
	background-color: #B9B9B9;
	color: #222222;
}
.ranking.ranking_03::before {
	content: "3";
	background-color: #BB8D71;
	color: #222222;
}
.ranking.ranking_04::before {
	content: "4";
}
.ranking.ranking_05::before {
	content: "5";
}
.ranking_item .rankingu_item_img {
	padding: 60px 10px 20px;
}
.ranking_goods_title {
	margin-top: 10px;
	margin-bottom: 5px;
}
.ranking_goods_caption {
	font-size: 0.875rem;
	display: none;
}

/* カテゴリから商品を探す：categoryArea */
.categoryArea .contents_wrap {
	border-bottom: none;
}
.contents_area ul.category_list {
	display: flex;
	flex-wrap: wrap;
	max-width: 1230px;
}
.category_list li {
	padding: 0 15px 35px;
	width: 33.3333%;
}
.category_list li a {
	display: block;
}
.category_item {
	position: relative;
}
.category_item img {
	max-height: 240px;
	object-fit: cover;
}
.category_title {
	position: absolute;
	top: 15px;
	display: block;
	width: 100%;
	padding: 0 15px;
	text-align: center;
	font-weight: bold;
	font-size: 1.25rem;
}
.category_caption {
	margin-top: 10px;
	text-align: center;
}

/* 森永ダイレクトストア定期お届け便：teikiotodokeArea */
.teikiotodokeArea {
	position: relative;
	padding: 80px 2%;
	background-color: #D3C8BD;
}
.teikiotodokeArea::before {
	content: "";
	position: absolute;
	right: 0;
	top: 0;
	height: 100%;
	width: 30vw;
	background: url(../images/top/teikiotodoke/bg_img.png) no-repeat right center;
	background-size: cover;
}
.teikiotodoke_contents {
	max-width: 1200px;
	width: 100%;
	padding-right: 400px;
	margin: 0 auto;
}
.teikiotodoke_title_wrap {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin-bottom: 30px;
}
.teikiotodoke_title_wrap .level_h2 {
	text-align: left;
	margin-bottom: 0;
}
.teikiotodoke_title_wrap .level_h2 .contents_title {
	font-size: 2.4rem;
	line-height: 1.2;
}
.teikiotodoke_benefits {
	display: flex;
	flex-wrap: wrap;
	margin-top: 45px;
}
.teikiotodoke_benefits li {
	width: 33.3333%;
	text-align: center;
}
.teikiotodoke_benefits li:nth-of-type(n+4) {
	border-top: 1px solid #707070;
	padding-top: 30px;
}
.teikiotodoke_benefits li:nth-of-type(3n+1),
.teikiotodoke_benefits li:nth-of-type(3n+2) {
	border-right: 1px solid #707070;
}
.teikiotodoke_benefits li > a {
	display: block;
	height: 100%;
	padding: 10px 10px 20px;
}
.benefit_num {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 80px;
	height: 80px;
	margin: 0 auto 15px;
	background-color: #fff;
	border: 1px solid #707070;
	border-radius: 50%;
	line-height: 1;
}
.benefit_num::before {
	content: "特典";
}
.benefit_num span {
	display: block;
	font-size: 1.875rem;
	margin-top: 5px;
	line-height: 0.8;
}
.benefit_content .row {
	display: block;
	line-height: 1;
	margin-top: 8px;
}
.xxx_large {
	font-size: 2.5rem;
}
.xx_large {
	font-size: 1.625rem;
}
.x_large {
	font-size: 1.5rem;
}
.large {
	font-size: 1.375rem;
}
.benefit:nth-child(5) .large {
	letter-spacing: -0.1rem;
}


/* ⽬的別に商品を探す：searchPurposeArea */
.search_purpose_list {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -15px;
}
.search_purpose_list li {
	width: 50%;
	padding: 0 15px 30px;
}
.search_purpose_list li a {
	position: relative;
	display: block;
}
.search_purpose_item_img {
	position: relative;
}
.search_purpose_item_img img {
	max-height: 200px;
	object-fit: cover;
}
.search_purpose_item_img[class*="layer_"]::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.search_purpose_item_img.layer_gray::before {
	background-color: #B9B9B9;
	mix-blend-mode: multiply;
}
.search_purpose_item_img.layer_white::before {
	background-color: #fff;
	opacity: 0.4;
}
.search_purpose_title {
	position: absolute;
	top: 0;
	bottom: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.caption_left .search_purpose_title {
	left: 5%;
}
.caption_right .search_purpose_title {
	right: 5%;
}
.search_purpose_title.font_color_white {
	color: #fff;
}
.search_purpose_title.font_color_black {
	color: #252525;
}
.search_purpose_title span {
	display: block;
	text-align: center;

}
.search_purpose_small_title {

}
.search_purpose_main_title {
	font-size: 1.25rem;
	line-height: 1.5;
}

/* コラム：columnIncludeArea */
.contents_area ul.columnList {
	display: flex;
	justify-content: center;
	max-width: 1230px;
}
.columnList li {
	width: 33.3333%;
	padding: 0 15px 30px;
}
.column_img_wrap {
	position: relative;
}
.column_goods_title {
	position: absolute;
	top: 0;
	bottom: 0;
	display: flex;
	width: 100%;
	justify-content: center;
	align-items: center;
	text-align: center;
	padding: 15px;
	font-size: 1.125rem;
	letter-spacing: 0.1em;
	font-feature-settings: "palt";
}
.column_goods_caption {
	margin-top: 15px;
}
.column .detail_link {
	margin-top: 10px;
}
.column_cap {
  line-height: 1.6;
  letter-spacing: 0.03em;
  margin-top: 10px;
  padding: 0 3px;
}

/* お知らせ：info */
.info_list li a {
	display: block;
	padding: 25px 40px 25px 0;
	border-bottom: 1px solid #707070;
}
.info_list li:first-of-type a {
	padding-top: 0;
}
.info_list li a span {
	display: block;
}
.newsTitle {
	font-weight: bold;
	margin-top: 5px;
}

@media screen and (max-width: 960px) {
	.contents section.globalImage {
		padding: 20px 20px 0;
	}

	/*-------------------------------------
		トップバナーエリア
	--------------------------------------*/

	/* スライダー */
	.gallery-main .swiper-controler {
		justify-content: space-between;
		margin: 12px 0;
	}


	/* 重要なお知らせ */
	.important_notice_list {
		margin-top: 0;
	}

	/*-------------------------------------
		コンテンツエリア
	--------------------------------------*/
	.contents_area {
		padding: 50px 20px 0;
	}
	.contents_wrap {
		padding-bottom: 60px;
	}
	.contents_area ul {
	}

	.contents_two_columns {
		display: block;
		padding: 60px 20px 0;
	}
	.contents_two_columns .level_h2 {
		text-align: center;
	}
	.contents_left_area {
		width: 100%;
	}
	.contents_right_area {
		width: 100%;
	}

	/* コンテンツタイトル */
	.level_h2 {
		margin-bottom: 35px;
	}
	.level_h2 .contents_title {
		font-size: 2.125rem;
		line-height: 1.2;
	}
	.level_h2 .contents_small_title {
		font-size: 1rem;
	}


	/* おすすめ商品：recommendIncludeArea */
	.recommendIncludeArea {
		margin-top: 40px;
		padding-top: 50px;
	}
	.recommend_contents {
		position: relative;
	}
	.contents_area ul.recommendResults {
		max-width: none;
	}
	.recommendResults li {
		width: 100%;
		padding: 0;
	}
	.recommend_item {
		text-align: left;
	}
	.recommend_item img {
		max-height: 240px;
	}
	.contents_swiper_btn {
		position: absolute;
		top: 33%;
		width: 50px;
		height: 50px;
		margin-top: calc(-1 * var(--swiper-navigation-size)/ 2);
		z-index: 10;
		cursor: pointer;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.contents_swiper_prev_btn {
		left: -15px;
		right: auto;
		transform: rotate(-90deg);
	}
	.contents_swiper_next_btn {
		right: -15px;
		left: auto;
		transform: rotate(90deg);
	}
	.contents_swiper_btn.swiper-button-disabled {
		display: none;
	}
	.contents_swiper_btn:after {
		content: '';
		display: block;
		background: #252525 url(../images/arrow_top_white.svg) no-repeat center;
		background-size: 18px;
		height: 50px;
		width: 50px;
		border-radius: 50%;
	}


	/* ランキング：rankingIncludeArea */
	.ranking_contents {
		position: relative;
	}
	.rankingResults li {
		padding: 0;
	}

	/* カテゴリから商品を探す：categoryArea */
	.contents_area ul.category_list {
		width: auto;
		margin: 0 -7px
	}
	.category_list li {
		width: 50%;
		padding: 0 7px 25px;
	}
	.category_title {
		position: static;
		margin-top: 10px;
	}
	.category_caption {
		display: none;
	}
	.category_item img {
		max-height: 200px;
	}

	/* 森永ダイレクトストア定期お届け便：teikiotodokeArea */
	.teikiotodokeArea {
		padding: 50px 20px;
	}
	.teikiotodokeArea::before {
		display: none;
	}
	.teikiotodoke_contents {
		position: relative;
		padding: 0 0 50px;
	}
	.teikiotodoke_title_wrap {
		display: block;
		margin-bottom: 30px;
	}
	.teikiotodoke_title_wrap .level_h2 {
		text-align: center;
	}
	.teikiotodoke_title_wrap .level_h2 .contents_title {
		font-size: 1.6rem;
	}
	.teikiotodoke_title_wrap .link_view_more {
		position: absolute;
		bottom: 0;
		right: 0;
	}
	.teikiotodoke_info::after {
		content: "";
		display: block;
		width: 100%;
		height: 230px;
		background: url(../images/top/teikiotodoke/bg_img.png) no-repeat center center;
		background-size: cover;
		margin-top: 30px;
	}
	.teikiotodoke_benefits {
		margin-top: 30px;
	}

	/* ⽬的別に商品を探す：searchPurposeArea */
	.search_purpose_list {
		margin: 0 -10px;
	}
	.search_purpose_list li {
		padding: 0 10px 20px;
	}

	/* コラム：columnIncludeArea */
	.contents_area ul.columnList {
		display: block;
	}
	.columnList li {
		width: 100%;
		padding: 0 0 20px;
	}
	.column_img_wrap {
		width: 80%;
		margin: 0 auto;
	}
	.column_img_wrap img {
		width: 100%;
		max-height: 100px;
		object-fit: cover;
		border-radius: 24px;
	}
	.column_goods_title {
		font-size: 1.4rem;
	}
	.column_goods_caption,
	.column_cap,
	.column .detail_link {
		display: none;
	}

	/* お知らせ：info */
	.info .contents_two_columns {
		position: relative;
		padding-bottom: 50px;
	}
	.info .link_view_more {
		position: absolute;
		bottom: 0;
		right: 20px;
	}

}


@media screen and (max-width: 600px) {

	/*-------------------------------------
		トップバナーエリア
	--------------------------------------*/

	/* スライダー */
	#wrap .gallery-main .swiper-slide img {
		width: 100%;
	}


	/* 重要なお知らせ */
	.importantNoticesItemWrap {
		width: calc(100% + 20px);
	}
	.important_notice_wrap .swiper-controler {
		right: -20px;
	}
	.important_notice_list .swiper-slide {
		padding-right: 90px;
	}

	/*-------------------------------------
		コンテンツエリア
	--------------------------------------*/
	.contents_wrap {
		padding-bottom: 40px;
	}
	.contents_area {
		padding-top: 40px;
	}

	.contents_two_columns {
		padding-top: 40px;
	}

	/* コンテンツタイトル */


	/* おすすめ商品：recommendIncludeArea */
	.recommendIncludeArea {
		margin-top: 30px;
		padding-top: 40px;
	}
	.contents_swiper_btn {
		width: 30px;
		height: 30px;
	}
	.contents_swiper_btn:after {
		width: 30px;
		height: 30px;
		background-size: 14px;
	}

	/* ランキング：rankingIncludeArea */
	.ranking_item .rankingu_item_img {
		padding: 40px 10px 15px;
	}


	/* カテゴリから商品を探す：categoryArea */
	.category_list li {
		padding-bottom: 15px;
	}
	.category_title {
		font-size: 1rem;
		margin-top: 5px;
	}
	.category_item_img.img_border_wrap {
		border-radius: 18px;
	}

	/* 森永ダイレクトストア定期お届け便：teikiotodokeArea */
	.teikiotodokeArea {
		padding: 40px 20px;
	}
	.teikiotodoke_benefits {
		display: block;
		margin-top: 10px;
	}
	.teikiotodoke_benefits li {
		width: 100%;
		border-bottom: 1px solid #707070;
		text-align: left;
	}
	.teikiotodoke_benefits li:nth-of-type(3n+1),
	.teikiotodoke_benefits li:nth-of-type(3n+2) {
		border-right: none;
	}
	.teikiotodoke_benefits li:nth-of-type(n+4) {
		border-top: none;
		padding-top: 10px;
	}
	.teikiotodoke_benefits li > a {
		padding: 10px 0 10px 10px;
		display: flex;
		align-items: center;
		justify-content: flex-start;
	}
	.benefit_num {
		width: 64px;
		height: 64px;
		margin: 0;
		font-size: 0.825rem;
	}
	.benefit_num span {
		font-size: 1.5rem;
	}
	.contents p.benefit_content {
		margin: 0;
		padding-left: 12px;
		width: calc(100% - 64px);
	}
	.benefit_content .row {
		display: inline-block;
		margin-top: 0;
		vertical-align: middle;
	}
	.xxx_large {
		font-size: 2rem;
	}
	.xx_large {
		font-size: 1.4rem;
	}
	.x_large {
		font-size: 1.3rem;
	}
	.large {
		font-size: 1.2rem;
	}

	/* ⽬的別に商品を探す：searchPurposeArea */
	.search_purpose_list li {
		width: 100%;
	}
	.search_purpose_item_img img {
		max-height: 120px;
	}

	/* コラム：columnIncludeArea */
	.column_img_wrap {
		width: 100%;
	}
	.column_goods_title {
		font-size: 1rem;
	}
	.column_goods_caption,
	.column .detail_link {
		display: none;
	}

	/* お知らせ：info */
	.info .contents_two_columns {
		position: relative;
		padding-bottom: 50px;
	}
	.info .link_view_more {
		position: absolute;
		bottom: 0;
		right: 20px;
	}

}