.js_fixedbanner {
	position: fixed;
	left: 0;
	right: 0;
	z-index: 2000;
	display: none;
	pointer-events: none;
}
.js_fixedbanner.is_visible {
	display: flex;
}
.js_fixedbanner *{
	box-sizing: border-box;
}
.js_fixedbanner.bottom_center {
	bottom: 0;
	justify-content: center;
}
.js_fixedbanner.bottom_right {
	bottom: 0;
	justify-content: flex-end;
}
.js_fixedbanner.bottom_left {
	bottom: 0;
	justify-content: flex-start;
}
.js_fixedbanner img {
	max-width: 100%;
	vertical-align: bottom;
	transition: opacity 0.2s ease;
}
.js_fixedbanner img:hover {
	opacity: 0.6;
}
.js_fixedbanner_inner {
	position: relative;
	display: flex;
	pointer-events: auto;
}
.js_fixedbanner_close_btn {
	position: absolute;
	top: -22px;
	right: 0px;
	width: 20px;
	height: 20px;
    border: 1px solid #ddd;
    border-radius: 50%;
	background-color: #fff;
	cursor: pointer;
	transition: opacity 0.2s ease;
}
.js_fixedbanner_close_btn::before,
.js_fixedbanner_close_btn::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 2px;
	height: 70%;
	background: #666;
}
.js_fixedbanner_close_btn::before {
	transform: translate(-50%,-50%) rotate(45deg);
}
.js_fixedbanner_close_btn::after {
	transform: translate(-50%,-50%) rotate(-45deg);
}
.js_fixedbanner_close_btn:hover {
	opacity: 0.6;
}

/* ===== 当サイト固有の調整 ここから ===== */

/* 素の z-index:2000 だと、シリーズモーダル（.c_modal01）やページトップボタン（ともに1000）、ヘッダー（100）より手前に出てしまうため、それらより下のレイヤーへ下げる */
.js_fixedbanner {
	z-index: 99;
}

/* SP表示は画面下端にピックアップメニュー（高さ72px）が固定されるため、塞がないようその高さぶん上へ逃がす */
body.sp_view .js_fixedbanner.bottom_center,
body.sp_view .js_fixedbanner.bottom_right,
body.sp_view .js_fixedbanner.bottom_left {
	bottom: 72px;
}

/* ハンバーガーメニュー展開中（body に is_fixed を付与中）はバナー側を隠す */
body.is_fixed .js_fixedbanner.is_visible {
	display: none;
}

/* ===== 当サイト固有の調整 ここまで ===== */
