@charset "UTF-8";
/* ------------------------------
  富士山サイダーLP（BtoC版）
------------------------------ */
/* ------------------------------
 全体（PC）
------------------------------ */
.site {
	overflow: clip;	/* stickyを使用するため */
	color: #46341f;
}
/* ------------------------------
  全体（SP）
------------------------------ */
@media screen and (max-width: 767px) {
	.site {
		font-size: 1.6rem;
	}
}

/* ------------------------------
  ヘッダー（PC）
------------------------------ */
/* -- ロゴ -- */
.header-block_logo a img {
	-webkit-transition: .25s;
	transition: .25s;
	opacity: 0;
}
.header-block_logo a::before {
	background-image: url(/shared/img/logo_w.svg);
	background-repeat: no-repeat;
	background-size: 100% 100%;
	content: "";
	height: 100%;
	left: 0;
	opacity: 1;
	position: absolute;
	top: 0;
	-webkit-transition: .25s;
	transition: .25s;
	width: 100%;
}
/* -- グローバルナビ -- */
.header-block .gnav .header-menu > li > p a::before,
.header-block .gnav .header-menu > li > p a::after,
.lineText::before,
.lineText::after {
	content: "";
	display: inline-block;
	width: 6px;
	height: 6px;
	background-color: #fff;
	border-radius: unset;
	margin: 4px;
	transform: rotate(45deg);
	position: static;
	transition: 0.3s ease-in-out;
	opacity: 1;
}
/* スクロール */
.header-area:hover .header-block .gnav .header-menu > li > p a::before,
.header-area:hover .header-block .gnav .header-menu > li > p a::after,
.header-fixed .header-block .gnav .header-menu > li > p a::before,
.header-fixed .header-block .gnav .header-menu > li > p a::after {
	background-color: #333333;
}
@media print, screen and (min-width: 768px) {
	/* -- ロゴ -- */
	.header-block_logo {
		width: 179px;
		margin-left: 15px;
    }
	/* -- グローバルナビ -- */
	.header-block .gnav .header-menu > li > p a {
		color: #fff;
		padding: 10px 0;
	}
	.header-navigation,
	.gnav,
	.header-block .gnav .header-menu {
		height: 100%;
	}
	.header-block .gnav .header-menu {
		margin-right: 15px;
	}
	.header-block .gnav .header-menu > li {
		font-size: 1.4rem;
	}
	.header-block .gnav .header-menu > li:not(:last-child) {
		padding: 0 10px;
	}
	.header-block .gnav .header-menu > li:not(:first-child) {
		padding: 0 5px;
	}
	.header-block .gnav .header-menu > li > p {
		height: auto;
	}
	.header-block .gnav .header-menu > li > p a {
		color: #fff;
		padding: 20px 0;
	}
	.header-block .gnav .header-menu > li:hover a::before,
	.header-block .gnav .header-menu > li:hover a::after,
	.header-block .gnav .header-menu > li.on a::before,
	.header-block .gnav .header-menu > li.on a::after,
	.header-block .gnav .header-menu > li a:focus::before,
	.header-block .gnav .header-menu > li a:focus::after {
		background-color: #0081cc !important;
	}
}
@media print, screen and (min-width: 1020px) {
	/* -- ロゴ -- */
	.header-block_logo {
		width: 230px;
		margin-left: 32px;
    }
	/* -- グローバルナビ -- */
	.header-block .gnav .header-menu {
		margin-right: 50px;
	}
	.header-block .gnav .header-menu > li {
		font-size: 1.6rem;
	}
	.header-block .gnav .header-menu > li:not(:last-child) {
		padding: 0 20px;
	}
	.header-block .gnav .header-menu > li:not(:first-child) {
		padding: 0 10px;
	}
}
/* ------------------------------
  ヘッダー（SP）
------------------------------ */
@media screen and (max-width: 767px) {
	.menu-icon,
	.menu-icon:before,
	.menu-icon:after {
		background-color: #fff;
		transition: .3s ease-in-out;
	}
	/* -- グローバルナビ -- */
	.header-block .gnav .header-menu > li > p a::before,
	.header-block .gnav .header-menu > li > p a::after {
		background-color: #333333;
	}
	.page-open-slidemenu .header-block .gnav {
		height: fit-content;
	}
}

/* ------------------------------
  メインスビジュアル（PC）
------------------------------ */
/* -- スライド -- */
.cms_block.mainiSlide {
	width: 100%;
	height: 840px;
}
.wrapper.mainiSlide .swiper-slide {
	height: 100%;
}
/* -- 製品画像＆ロゴ -- */
.mainImg {
	position: relative;
	z-index: 2;
	width: 100%;
	margin-top: -628px;
}
.mainImg::before {
	content: "";
	width: 100%;
	height: 160px;
	background: #fdf8eb url(../img/fujisancider/bg_noise.png) repeat top left / 400px;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	z-index: -1;
}
.mainImg::after {
	content: "";
	width: 578px;
	height: 460px;
	background: url(../img/fujisancider/bg_soda_01.png) repeat center / 578px 460px;
	position: absolute;
	left: calc(50% - 1140px / 2 - 215px);
	bottom: -90px;
	z-index: 1;
}
.mainImg .cms_image {
	padding-left: 108px;
}
.mainImg .cms_text {
	position: relative;
}
.mainImg h1 {
	width: fit-content;
	height: 410px;
	font-family: "Kaisei Opti", serif;
	font-size: 5.4rem;
	font-weight: bold;
	color: #fff;
	line-height: 1.4;
	letter-spacing: 0.075em;
	writing-mode: vertical-rl;
}
@media print, screen and (min-width: 768px) {
	/* -- 製品画像＆ロゴ -- */
	.mainImg .cms_text {
		width: 1140px;
		margin-left: auto;
		margin-right: auto;
	}
	.mainImg h1 {
		position: absolute;
		left: 0;
	}
}
/* ------------------------------
  メインスビジュアル（SP）
------------------------------ */
@media screen and (max-width: 767px) {
	/* -- スライド -- */
	.cms_block.mainiSlide {
		height: 600px;
	}
	.wrapper.mainiSlide .swiper-slide img {
		object-position: top 10% right 50%;
	}
	/* -- 製品画像＆ロゴ -- */
	.mainImg {
		height: 580px;
		margin-top: -490px;
	}
	.mainImg::before {
		height: 91px;
	}
	.mainImg::after {
		width: 182px;
		height: 219px;
		background: url(../img/fujisancider/bg_soda_01_sp.png) repeat center / cover;
		left: -64px;
		bottom: -44px;
	}
	.mainImg .cms_image {
		width: 250px;
		height: 307px;
		padding-left: 0;
		position: absolute;
		left: calc(50% - 60px);
		bottom: 0;
	}
	.mainImg .cms_image img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: top;
	}
	.mainImg .cms_text {
		position: absolute;
		top: 0;
		left: 5%;
	}
	.mainImg h1 {
		height: 230px;
		font-size: 3.0rem;
		padding-top: 0;
		margin: 0;
	}
}

/* ------------------------------
  見出し・テキスト（PC）
------------------------------ */
/* -- h2 -- */
.cms_block h2 {
	font-family: "Kaisei Opti", serif;
	font-size: 4.8rem;
	line-height: 1.4;
	margin-bottom: 20px;
}
.cms_block h2::after {
	content: none;
}
/* 富士山と数字の画像 */
.h2Num {
	width: 86px;
	height: 68px;
	margin: 0 auto;
}
/* 背景画像・アイコン付き */
.h2Box {
	position: relative;
}
.h2Box .speech {
	width: 102px;
	height: 112px;
	position: absolute;
	top: -88px;
}
.kodawariBlock .h2Box .speech {
	right: -105px;
}
.giftBlock .h2Box .speech {
	left: -105px;
}
.h2Box .h2Num {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
}
.h2Box h2 {
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
	font-size: 3.3rem;
	text-align: left;
	letter-spacing: 0.05em;
	padding: 155px 20px 20px;
	margin-bottom: 0;
}
.h2Box .h2Num {
	top: 45px;
}
/* -- h3 -- */
.cms_block h3 {
	font-size: 2.3rem;
	line-height: 1.5;
	border-bottom: none;
	padding-bottom: 0;
	margin-bottom: 20px;
	font-feature-settings: normal;
	letter-spacing: 0;
}
/* -- ◇と線付きのテキスト -- */
.lineText {
	position: relative;
	width: fit-content;
	font-size: 2.1rem;
	font-weight: 500;
	color: #603813;
	line-height: 1.4;
	letter-spacing: 0.025em;
	border-bottom: solid 2px #603813;
	padding-bottom: 10px;
	margin: 30px auto 15px;
}
.lineText::before,
.lineText::after {
	width: 10px;
	height: 10px;
	background-color: #603813;
	margin-left: 0;
	margin-right: 0;
}
.lineText::before {
	margin-right: 8px;
}
.lineText::after {
	margin-left: 8px;
}
@media print, screen and (min-width: 768px) {
	/* 背景画像・アイコン付き */
	.h2Box {
		width: 216px;
		height: 514px;
		background: url(../img/fujisancider/h2_bg.svg) no-repeat;
		margin-bottom: 0;
	}
	.h2Box h2 {
		justify-content: center;
		align-items: flex-start;
		writing-mode: vertical-rl;
	}
}
/* ------------------------------
  見出し・テキスト（SP）
------------------------------ */
@media screen and (max-width: 767px) {
	/* -- h2 -- */
	.cms_block h2 {
		font-size: 3.0rem;
		margin-bottom: 10px;
	}
	/* 富士山と数字の画像 */
	.h2Num {
		width: 64px;
		height: 51px;
	}
	.h2Num img,
	.h2Box .speech img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	/* 背景画像・アイコン付き */
	.h2Box {
		width: 330px;
		height: 232px;
		background: url(../img/fujisancider/h2_bg_sp.svg) no-repeat;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 40px;
	}
	.h2Box .speech {
		width: 76px;
		height: 82px;
		top: -27px;
	}
	.kodawariBlock .h2Box .speech {
		right: -10px;
	}
	.giftBlock .h2Box .speech {
		left: -10px;
	}
	.h2Box h2 {
		font-size: 2.6rem;
		text-align: center;
		padding: 88px 20px 20px;
	}
	.h2Box .h2Num {
		top: 26px;
	}
	/* -- h3 -- */
	.cms_block h3 {
		text-align: center;
		margin-bottom: 10px;
	}
	/* -- ◇と線付きのテキスト -- */
	.lineText {
		width: 100%;
		font-size: 1.6rem;
		text-align: center;
		padding-bottom: 10px;
		margin: 15px auto 10px;
	}
	.lineText::before,
	.lineText::after {
		width: 8px;
		height: 8px;
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
	}
	.lineText::before {
		left: 0;
	}
	.lineText::after {
		right: 0;
	}
}

/* ------------------------------
  ボタン（PC）
------------------------------ */
.cms_block .btn a {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	min-width: 258px;
	min-height: 70px;
}
/* ------------------------------
  見出し・テキスト（SP）
------------------------------ */
@media screen and (max-width: 767px) {
	.cms_block .btn a {
		min-width: 230px;
		min-height: 62px;
		font-size: 1.6rem !important;
	}
}

/* ------------------------------
  コンテンツ（PC）
------------------------------ */
.heading {
	display: none;
}
/* -- こだわり -- */
.kodawariBlock {
	position: relative;
	z-index: 1;
	width: 100%;
	background-color: #fdf8eb;
	background-image: url(../img/fujisancider/text_kodawari.svg), url(../img/fujisancider/bg_noise.png);
	background-repeat: no-repeat, repeat;
	background-size: 52px 382px, 400px;
	background-position: top 126px left 1%, top left;
	padding: 126px 0;
}
/* KODAWARI01~04 */
.kodawariBlock .cms_image > img {
	aspect-ratio: 1 / 1;
}
.kodawariBlock .cms_image .cms_caption_b {
	position: relative;
	color: #46341f;
}
.kodawariBlock .cms_image .cms_caption_b img {
	display: block;
	width: 75px;
	height: 58px;
	margin-bottom: 30px;
}
/* -- お土産 -- */
.giftBlock {
	position: relative;
	z-index: 1;
	width: 100%;
	padding: 120px 0;
}
/* お土産スライド */
.giftSlide {
	position: relative;
	overflow: hidden;
	height: fit-content;
	padding-bottom: 50px;
}
.giftSlide .swiper-slide {
	height: fit-content;
	margin-bottom: 0;
}
.giftSlide .swiper-slide img {
	border-radius: 30px;
}
.giftSlide .swiper-slide .cms_caption_t {
	display: flex;
	align-items: center;
}
.giftSlide .swiper-slide .cms_caption_t .lineText {
	font-family: "Kaisei Opti", serif;
	font-size: 2.6rem;
	font-weight: bold;
	color: #46341f;
	letter-spacing: 0.05em;
	padding: 10px 5px;
}
.giftSlide .swiper-slide .cms_caption_t .lineText::after,
.giftSlide .swiper-slide .cms_caption_t .lineText::before {
	width: 9px;
	height: 9px;
	background-color: #46341f;
}
.giftSlide .swiper-slide .cms_caption_t .giftcate {
	font-family: "Roboto Slab", serif;
	font-size: 1.6rem;
	font-weight: 500;
	color: #fff;
	line-height: 1;
	background-color: #ebc458;
	border-radius: 15px;
	border: solid 1px #fff;
	outline: solid 3px #ebc458;
	padding: 12px 2px 12px 4px;
}
/* ページネーション */
.giftSlide .swiper-pagination {
	text-align: left;
	right: 0;
	left: auto;
	bottom: 12px !important;
}
.giftSlide .swiper-pagination-bullet {
	background: url(../img/fujisancider/giftslide_pagenation.svg) no-repeat !important;
	opacity: .4 !important;
	width: 14px !important;
	height: 12px !important;
	margin: 0 3px !important;
	transition: 0.2s ease-in-out;
}
.giftSlide .swiper-pagination-bullet-active {
	opacity: 1 !important;
}
/* 前へ／次へボタン */
.giftSlide .swiper-buttons {
	display: flex;
	justify-content: flex-end;
	gap: 12px;
	position: absolute;
	right: 0;
	bottom: 0;
}
.giftSlide .swiper-button-next,
.giftSlide .swiper-button-prev {
	position: relative;
	width: 36px !important;
	height: 36px !important;
	top: 0 !important;
	left: 0 !important;
	margin: 0;
}
.giftSlide .swiper-button-prev::after,
.giftSlide .swiper-button-next::after {
	position: absolute;
	width: 100% !important;
	height: 100% !important;
}
/* -- 販売店マップ -- */
.mapBlock {
	position: relative;
	z-index: 1;
	width: 100%;
	background: #fdf8eb url(../img/fujisancider/bg_noise.png) repeat top left / 400px;
	padding: 100px 0 110px;
}
/* 地図埋め込み */
.map {
	position: relative;
	width: 1176px;
	height: 626px;
	background: url(../img/fujisancider/map_frame.svg) no-repeat;
	padding: 13px;
	margin-left: auto;
	margin-right: auto;
}
.map iframe {
	width: 100% !important;
	height: 100% !important;
	clip-path: polygon(calc(0% + 25px) 0, calc(100% - 25px) 0, 100% calc(0% + 25px), 100% calc(100% - 25px), calc(100% - 25px) 100%, calc(0% + 25px) 100%, 0 calc(100% - 25px), 0 calc(0% + 25px));
}
/* -- Instagram -- */
.instaBlock h2 {
	width: fit-content;
	margin-left: auto;
	margin-right: auto;
}
.instaBlock h2::before {
	content: "";
	display: inline-block;
	width: 42px;
	height: 42px;
	background: url(../img/fujisancider/icon_instagram.png) no-repeat center / cover;
	vertical-align: middle;
	margin-right: 15px;
	margin-top: -10px;
}
/* 投稿スライド */
.instaSlide {
	position: relative;
	width: 100%;
}
.instaSlide::before,
.instaSlide::after {
	content: "";
	position: absolute;
	bottom: 0;
	margin: auto;
	z-index: 1;
	pointer-events: none;
}
.instaSlide::before {
	width: 544px;
	height: 674px;
	background: url(../img/fujisancider/bg_instagram_01.png) no-repeat;
	top: 15px;
	left: 145px;
}
.instaSlide::after {
	width: 652px;
	height: 604px;
	background: url(../img/fujisancider/bg_instagram_02.png) no-repeat;
	top: 20px;
	right: -15px;
}
.instaSlide .swiper-wrapper {
	transition-timing-function: linear !important;
}
.instaSlide .swiper-slide {
	width: 388px;
	height: 388px;
	aspect-ratio: 1 / 1;
	margin: 0 15px;
}
/* -- ラインナップ -- */
.lineupBlock {
	position: relative;
	z-index: 1;
	width: 100%;
	background: #e6f6fe url(../img/fujisancider/bg_noise.png) repeat top left / 400px;
	padding: 100px 0 110px;
}
/* 商品スライド */
.othersBox {
	position: relative;
}
.othersSwiper .swiper-slide {
	position: relative;
	margin-bottom: 0;
}
.othersSwiper .swiper-slide > a {
	position: relative;
	display: block;
	padding-left: 0;
	margin-bottom: 8px;
}
.othersSwiper .swiper-slide > a .img_hover {
	height: fit-content;
	border-radius: 25px;
	margin-bottom: 20px;
	box-shadow: 0px 0px 10px 0px rgba(16, 52, 76, 0.1);
}
.othersSwiper .swiper-slide img {
	border-radius: 15px;
}
.othersSwiper .swiper-slide > a p.title {
	font-size: 1.8rem;
	padding: 5px 0 5px 42px;
	color: #0081cc;
	font-weight: bold;
	z-index: 2;
	width: 100%;
	position: relative;
}
.othersSwiper .swiper-slide > a p.title::before {
	content: "";
	position: absolute;
	display: inline-block;
	width: 33px;
	height: 33px;
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	background: url(../img/icon_circlearrow.svg) no-repeat center / 100%;
}
.othersSwiper .swiper-slide a {
	color: #333333;
	font-weight: 500;
	text-decoration: none;
}
.othersSwiper .swiper-slide > p a {
	font-size: 1.8rem;
}
.othersSwiper .swiper-slide > p a::after {
	vertical-align: 0px !important;
}
/* 前へ／次へボタン */
.othersBox .swiper-button-next,
.othersBox .swiper-button-prev {
	top: 33%;
}
.othersBox .swiper-button-prev {
	left: 0 !important;
}
.othersBox .swiper-button-next {
	right: 0 !important;
}
@media print, screen and (min-width: 768px) {
	/* -- こだわり -- */
	.kodawariBlock {
		display: grid;
		justify-content: center;
		grid-template-columns: 810px 216px;
		gap: 30px 114px;
	}
	.kodawariBlock::before {
		content: "";
		width: 640px;
		height: 928px;
		background: url(../img/fujisancider/bg_soda_02.png) no-repeat;
		position: absolute;
		left: calc(50% + 180px);
		bottom: 220px;
		z-index: -1;
	}
	.kodawariBlock::after {
		content: "";
		width: 220px;
		height: 182px;
		background: url(../img/fujisancider/bg_soda_03.png) no-repeat;
		position: absolute;
		right: calc(50% + 1140px / 2 + 97px);
		bottom: 155px;
		z-index: -1;
	}
	/* 追従するh2 */
	.stickyItem {
		grid-row: 1 / 5;
		grid-column: 2 / 3;
		position: sticky;
		top: 240px;
	}
	/* KODAWARI01~04 */
	.kodawariBlock .cms_image {
		display: flex;
		align-items: center;
		gap: 0 80px;
		margin-bottom: 0;
	}
	.kodawariBlock .cms_image.kodawari01 {
		grid-row: 1 / 2;
		grid-column: 1 / 2;
	}
	.kodawariBlock .cms_image.kodawari02 {
		grid-row: 2 / 3;
		grid-column: 1 / 2;
	}
	.kodawariBlock .cms_image.kodawari03 {
		grid-row: 3 / 4;
		grid-column: 1 / 2;
	}
	.kodawariBlock .cms_image.kodawari04 {
		grid-row: 4 / 5;
		grid-column: 1 / 2;
	}
	.kodawariBlock .cms_image img {
		width: 380px;
	}
	.kodawariBlock .cms_image .cms_caption_b {
		width: 350px;
		margin-top: 0;
	}
	/* -- お土産 -- */
	.giftBlock {
		display: grid;
		justify-content: center;
		grid-template-columns: 216px 826px;
		grid-template-rows: max-content;
		gap: 20px 98px;
		height: 1015px;
		background-color: #fdf8eb;
		background-image: url(../img/fujisancider/gift_bg.svg), url(../img/fujisancider/bg_noise.png);
		background-repeat: no-repeat, repeat;
		background-size: 1840px 1015px, 400px;
		background-position: center, top left;
	}
	.cms_block.giftBlock::after {
		content: none;
	}
	.giftBlock .h2Box {
		grid-row: 1 / 3;
		grid-column: 1 / 2;
	}
	/* お土産スライド */
	.giftSlide {
		width: 826px;
	}
	.giftSlide .swiper-slide {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
	.giftSlide .swiper-slide img {
		border-radius: 20px;
	}
	.giftSlide .swiper-slide .cms_caption_t {
		writing-mode: vertical-rl;
		gap: 0;
		margin-bottom: 0;
	}
	.giftSlide .swiper-slide .cms_caption_t .lineText {
		border-bottom: none;
		border-right: solid 2px #46341f;
		border-left: solid 2px #46341f;
	}
	.giftSlide .swiper-slide .cms_caption_t .lineText::after,
	.giftSlide .swiper-slide .cms_caption_t .lineText::before {
		margin: 0;
	}
	.giftSlide .swiper-slide .cms_caption_t .lineText::before {
		margin-bottom: 6px;
	}
	.giftSlide .swiper-slide .cms_caption_t .lineText::after {
		margin-top: 6px;
	}
	/* ページネーション */
	.giftSlide .swiper-pagination {
		width: 700px;
		bottom: 12px !important;
	}
	/* 前へ／次へボタン */
	.giftSlide .swiper-buttons {
		width: 700px;
	}
	/* お土産ボタン */
	.giftBlock .btn {
		grid-column: 1 / 3;
	}
	/* -- 販売店マップ -- */
	/* 地図 */
	.map iframe {
		aspect-ratio: 23 / 12;
	}
	.map::before {
		content: "";
		width: 52px;
		height: 382px;
		background: url(../img/fujisancider/text_map.svg) no-repeat;
		position: absolute;
		top: 0;
		left: -65px;
	}
	/* -- ラインナップ -- */
	/* 商品スライド */
	.othersBox {
		width: 1200px;
		overflow: hidden;
		margin-left: auto;
		margin-right: auto;
    }
	.othersBox .swiper {
        overflow: visible;
        width: 1140px;
        margin: auto;
        padding-top: 30px;
    }
	.othersSwiper .swiper-slide > a:hover {
		opacity: 1;
	}
	.othersSwiper .swiper-slide > a p {
		font-size: 1.6rem;
	}
}
/* ------------------------------
  コンテンツ（SP）
------------------------------ */
@media screen and (max-width: 767px) {
	/* -- こだわり -- */
	.kodawariBlock {
		background-size: 28px 206px, 400px;
		background-position: top 330px left 1%, top left;
		padding: 65px 5% 60px;
	}
	/* KODAWARI01~04 */
	.kodawariBlock .cms_image .cms_caption_b img {
		width: 61px;
		height: auto;
		margin: 0 auto 15px;
	}
	/* -- お土産 -- */
	.giftBlock {
		background-color: #9addfc;
		padding: 60px 5%;
	}
	.giftBlock::before {
		content: "";
		width: 354px;
		height: 467px;
		background: url(../img/fujisancider/bg_soda_02_sp.png) no-repeat center / cover;
		position: absolute;
		top: -356px;
		right: -134px;
		z-index: -1;
		pointer-events: none;
	}
	/* お土産スライド */
	.giftSlide {
		padding-bottom: 45px;
		margin-bottom: 25px;
	}
	.giftSlide .swiper-slide .cms_caption_t {
		flex-direction: column;
	}
	.giftSlide .swiper-slide .cms_caption_t .lineText {
		font-size: 2.4rem;
		line-height: 1;
		border-top: solid 2px #603813;
		padding: 8px 15px 11px;
		margin-top: 0;
	}
	.giftSlide .swiper-slide .cms_caption_t .lineText::before {
		left: 5px;
	}
	.giftSlide .swiper-slide .cms_caption_t .lineText::after {
		right: 5px;
	}
	.giftSlide .swiper-slide .cms_caption_t .giftcate {
		font-size: 1.2rem;
		border-radius: 10px;
		padding: 2px 12px 4px 12px;
	}
	.giftSlide .swiper-button-next,
	.giftSlide .swiper-button-prev {
		width: 28px !important;
		height: 28px !important;
	}
	/* -- 販売店マップ -- */
	.mapBlock {
		padding: 50px 5% 60px;
		margin-bottom: 30px;
	}
	/* 地図埋め込み */
	.map {
		width: 332px;
		height: 368px;
		background: url(../img/fujisancider/map_frame_sp.svg) no-repeat;
		padding: 10px;
	}
	.map iframe {
		clip-path: polygon(calc(0% + 15px) 0, calc(100% - 15px) 0, 100% calc(0% + 15px), 100% calc(100% - 15px), calc(100% - 15px) 100%, calc(0% + 15px) 100%, 0 calc(100% - 15px), 0 calc(0% + 15px));
	}
	/* -- Instagram -- */
	.instaBlock h2::before {
		width: 26px;
		height: 26px;
		margin-right: 10px;
		margin-top: -6px;
	}
	/* 投稿スライド */
	.instaSlide::before {
		width: 44px;
		height: 435px;
		background: url(../img/fujisancider/bg_instagram_01_sp.png) no-repeat center / cover;
		top: 85px;
		left: -7px;
	}
	.instaSlide::after {
		width: 270px;
		height: 469px;
		background: url(../img/fujisancider/bg_instagram_02_sp.png) no-repeat center / cover;
		top: 45px;
		right: -9px;
	}
	.instaSlide .swiper-wrapper {
		transition-timing-function: linear !important;
	}
	.instaSlide .swiper-slide {
		width: 250px;
		height: 250px;
		margin: 0 10px;
	}
	/* -- ラインナップ -- */
	.lineupBlock {
		padding: 40px 5% 50px;
	}
	/* 商品スライド */
	.othersSwiper {
		padding: 20px 5% 0;
	}
	.othersSwiper .swiper-slide a .img_hover {
		margin-bottom: 10px;
	}
	.othersSwiper .swiper-slide a p.title {
		font-size: 1.6rem;
		padding: 2px 0 2px 30px;
	}
	.othersSwiper .swiper-slide a p.title::before {
		width: 24px;
		height: 24px;
	}
	.othersSwiper .swiper-slide > p a {
		font-size: 1.6rem;
	}
	/* 前へ／次へボタン */
	.othersBox .swiper-button-next::before,
	.othersBox .swiper-button-next::after {
		width: 30px !important;
		height: 30px !important;
	}
}

/* ------------------------------
  バナー（PC）
------------------------------ */
.bnrBlock,
.bnrBlock > * {
	width: fit-content;
	height: fit-content;
	margin-bottom: 0 !important;
}
.bnrBlock {
	visibility: visible;
	opacity: 1;
	position: fixed;
	right: 50px;
	bottom: 132px;
	z-index: 999;
	transition: .3s ease-in-out;
}
.bnrBlock .bnrClose {
	display: block;
	width: 24px;
	height: 24px;
	background-color: #603813;
	border-radius: 8px;
	transform: rotate(45deg);
	position: absolute;
	top: -10px;
	right: -10px;
	z-index: 1;
	cursor: pointer;
}
.bnrBlock .bnrClose::before,
.bnrBlock .bnrClose::after {
	content: "";
	position: absolute;
	width: 14px;
	height: 2px;
	background-color: #fff;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}
.bnrBlock .bnrClose::after {
	width: 2px;
	height: 14px;
}
.bnrBlock input[type=checkbox] {
	display: none;
}
.bnrBlock:has(input:checked) {
	visibility: hidden;
	opacity: 0;
}
/* ------------------------------
  バナー（SP）
------------------------------ */
@media screen and (max-width: 767px) {
	.bnrBlock {
		right: auto;
		left: 5%;
		bottom: 20px;
	}
	.bnrBlock img {
		width: 220px;
		height: 110px;
	}
	.bnrBlock .bnrClose {
		width: 18px;
		height: 18px;
		border-radius: 5px;
		top: -4px;
		right: -4px;
	}
	.bnrBlock .bnrClose::before,
	.bnrBlock .bnrClose::after {
		width: 12px;
		height: 2px;
	}
	.bnrBlock .bnrClose::after {
		width: 2px;
		height: 12px;
	}
}