@charset "UTF-8";

/* ----------------------------------
 LP レイアウト
---------------------------------- */
:root{
  --serif: 'Noto Serif JP',"YuMincho", "Hiragino Mincho ProN", "Yu Mincho", serif;
  --color_ttl: #B9830B; /* タイトル・強調など */
	--color_ttl2: #DF3040; /* タイトル・強調など */
  --color_sub: #DF3040; /* もっとみるボタン・ナビゲーションなど */
  --color_buy: #A90000; /* 購入ボタン */
  --color_bg1: #F5EBD4; /* 全体背景 */
	--color_btn1: #DD6600;
}

.pane-main {padding: 1px 0;background: #f9e4e4;}
html[data-browse-mode="P"] .pane-left-menu { display: none;}
html[data-browse-mode="P"] .page-event .pane-contents .container { width: 100% !important; padding: 0; min-width: unset; max-width: unset;}
html[data-browse-mode="P"] .page-event .pane-contents .container .pane-main { width: 100% !important; margin-bottom: 0;}
html[data-browse-mode="P"] #header.pane-header { margin: 0;}

html[data-browse-mode="S"] #footer_pagetop { bottom: 70px;}
html[data-browse-mode="S"] #footer_pagetop a { border-radius: 5px 0 0 5px; opacity: 0.7; background-color: var(--color_ttl);}

@media (min-width: 999px) {
	.event_lp .for-sp { display: none !important;}
}
@media (max-width: 1000px) {
	.event_lp .for-pc { display: none !important;}
}

/* 見出し - Style01
---------------------------------- */
.design-line-sub{
	font-size: 22px;
	font-weight: bold;
	text-align: center;
	margin: 0;
}
.design-line-sub span{
	color: var(--color_ttl);
}
.event_lp h2.design-line {
  padding: 0 0 20px 0;
  margin: 0 0 40px 0;	
  font-size: 40px;
  font-weight: bold;
	text-align: center;
	color: var(--color_ttl2);
  line-height: 1.267;
  position: relative;
}
.event_lp h2.design-line.design-deco::before {
	content: "";
	width: 74px;
	height: 36px;
	display: block;
	background: url(./deco_ttl.png) center center / contain no-repeat;
	margin: 0 auto 5px;
}
.event_lp h2.design-line::after {
  content: '';
  width: 56px;
	border-top: var(--color_ttl) 5px solid;
	display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  translate: -50%;
	border-radius: 5px;
}

@media (max-width: 1000px) {
	.event_lp h2.design-line {margin: 0 auto 20px;padding-bottom: 10px;font-size: 27px;}
	.design-line-sub {font-size: 18px; margin-bottom: 5px;}
}

/* 見出し - Style02
---------------------------------- */
.event_lp .design-title-frame { 
	max-width: 1200px;
	padding: 20px 12px 12px;
	margin: 0 auto 40px;
	background: #FFF;
	box-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.3);
	position: relative;
}
.event_lp .design-title-frame h2.design-title {
  padding: 0 0 14px 0;
  margin: 0 0 16px 0;	
	font-size: 28px;
	font-weight: 700;
	text-align: center;
  letter-spacing: .13em;
  line-height: 1.267;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
  position: relative;
}
.event_lp .design-title-frame h2.design-title::after {
  content: '';
  width: 46px;
	border-top: var(--color_ttl) 5px solid;
	display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  translate: -50%;
}
.event_lp .design-title-frame h2.design-title .sub  { font-size: 18px; font-weight: 700; color: var(--color_ttl);}
.event_lp .design-title-frame h2.design-title .main { font-size: 28px; font-weight: 700;}
.event_lp .design-title-frame .lead { font-size: 17px; font-weight: 400; text-align: center;}

@media (max-width: 1000px) {
	.event_lp .design-title-frame { margin: 0 10px 20px; position: relative;}
	.event_lp .design-title-frame .lead { font-size: 15px;}
}

/* もっと見るボタン
---------------------------------- */
.design-more-button { width: 400px; margin: 50px auto 70px;}
.design-more-button a { 
	width: 100%;
	height: 60px;
	border: var(--color_sub) 2px solid;
	border-radius: 60px;
	font-size: 20px;
	font-weight: 700;
	color: #FFF;
	display: flex;
	justify-content: center;
	align-items: center;
	background: var(--color_sub);
	transition: 0.5s;
}
.design-more-button a:hover { color: var(--color_sub); background: #FFF;}

@media (max-width: 1000px) {
	.design-more-button { width: 300px; margin: 20px auto 60px;}
	.design-more-button a { height: 60px; border-radius: 45px; font-size: 17px;}
	#sec_message .design-more-button.for-secret {width: 300px;margin: 15px auto;}
	#sec_message .design-more-button.for-secret a{height: 60px;}
}
.design-more-button.for-page-top{
	margin-bottom: 50px;
}
.design-more-button.for-shop-top{
	margin: 0 auto;
}
.event_lp{background: url(./bg_202603.png) center top 23.96vw repeat;}
@media (max-width: 1000px) {
	.event_lp{background: url(./bg_202603.png) center top 100vw repeat;}
}
/* メイン
---------------------------------- */
#sec_main { position: relative;}
#sec_main .main-inner { position: relative; z-index: 2;}
#sec_main h1 { height: 0; padding: 0; margin: 0; font-size: 0; text-align: center;}
#sec_main h2 { font-size: 34px; font-weight: bold; color: var(--color_sub); margin-bottom: 30px;}
#sec_main .section-inner { max-width: 1200px; margin: 0 auto;}
#sec_main .main-visual img{width: 100%;vertical-align: bottom;}
#sec_main .main-visual-bttom{text-align: center;position: relative;padding: 20px 0;}
#sec_main .main-visual-bttom-img { position: absolute; top: -88px; left: 50%; transform: translateX(-50%); display: flex; justify-content: center; gap: 20px;}
#sec_main .main-visual-bttom-img a{display: block;}
#sec_main .main-visual-bttom p{font-size: 24px;color: #3D0101;line-height: 1.5;}
#sec_main .main-visual-bttom .mile-up {width: 766px;margin: 0 auto;position: relative;margin-top: 50px;padding-top: 30px;}
#sec_main .main-visual-bttom .mile-up dt{font-size: 26px;font-weight: bold;line-height: 1.2; color: #FFF;background: var(--color_sub);position: absolute;top: -5px;left: 50%;transform: translateX(-50%);padding: 5px 30px 10px;}
#sec_main .main-visual-bttom .mile-up dd{font-size: 22px;font-weight: 500;background: #ffffff;padding: 25px 20px 20px;}
#sec_main .main-visual-bttom .mile-up dd small{font-size: 11px;line-height: 1.4;display: block;margin: 10px auto 0;}
#sec_main .color-red{color: var(--color_sub);}
@media (max-width: 1000px) {
	#shop_header{background: #FFF;}
	#sec_main::before { display: none;}
	#sec_main .main-inner { background: none !important;}
	#sec_main h2 { font-size: 20px; font-weight: bold; color: var(--color_sub); margin-bottom: 30px;}
	#sec_main .main-visual-bttom p{font-size: 16px;font-weight: 500;padding: 0 10px;position: relative;}
	#sec_main .main-visual-bttom .mile-up {width: 100%;margin-top: 20px;padding: 0;}
	#sec_main .main-visual-bttom .mile-up dt {font-size: 17px;padding: 10px 14px;width: max-content; top:-9px;}
	#sec_main .main-visual-bttom .mile-up dd {font-size: 17px;padding: 44px 15px 20px;}
	#sec_main .main-visual-bttom {padding: 30px 15px;}
	#sec_main .main-visual-bttom-img { width: 100%; padding: 0 10px; gap:10px; top:-20vw;}
	#sec_main .main-visual-bttom-img > * { width: calc((100% - 20px) / 3); }
}

/* メッセージ・マイルアップ・ナビ
---------------------------------- */
#sec_message{background: #FFF;padding: 40px 0;}
#sec_message .section-inner { max-width: 1200px; margin: 0 auto;}
.event_lp #sec_message h2.design-line span{display: flex;align-items: center; justify-content: center;}
.event_lp #sec_message h2.design-line span::before{content: ""; width: 41px; height: 39px; background: url(./mile01.png) center center / contain no-repeat; display: block; margin-right: 15px;}
.event_lp #sec_message h2.design-line span::after{content: ""; width: 65px; height: 49px; background: url(./mile02.png) center center / contain no-repeat; display: block;}
#sec_message .message { margin: 0 0 40px 0; font-size: 20px; text-align: center; line-height: 1.5;}
#sec_message .message span { color: var(--color_ttl);}
#sec_message .message .check { color: var(--color_ttl);}

#sec_message .mile-up { max-width: 950px; padding: 25px 15px; margin: 0 auto 10px; border: var(--color_ttl) 1px solid; background: #FFF;}
#sec_message .mile-up dt { margin: 0 0 7px 0; font-size: 20px; font-weight: 700; text-align: center; color: var(--color_ttl);}
#sec_message .mile-up dd { font-size: 18px; font-weight: 700; text-align: center;}
#sec_message .mile-up dd + dt {margin: 25px 0 0;}
#sec_message .notice-text { max-width: 700px; padding-left: 1em; margin: 0 auto 20px; font-size: 14px; text-indent: -1em; text-align: center; font-family: "Noto Sans JP", sans-serif;}
#sec_message .notice-text a{ color: var(--color_sub); text-decoration: underline; font-family: "Noto Sans JP", sans-serif;}
#sec_message .notice-text a:hover{ text-decoration: none;}

#sec_message .nav-list-wrap { margin: 40px 0 0;}
#sec_message .nav-list-wrap .navi { display: flex; justify-content: center; align-items: center; gap: 24px;}
#sec_message .nav-list-wrap .navi li { width: calc((100% - (24px * 3))/4); height: 80px;}
#sec_message .nav-list-wrap .navi li a {
	width: 100%;
	height: 100%;
	border: var(--color_sub) 2px solid;
	font-size: 22px;
	font-weight: bold;
	text-align: center;
	line-height: 1.4;
	color: #FFF;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background: var(--color_sub);
	transition: 0.5s;
	border-radius: 5px;
}
#sec_message .nav-list-wrap .navi li a .small { font-size: 17px; display: block;}
#sec_message .nav-list-wrap .navi li a:hover {color: #a90000;background: #FFF;}

@media (max-width: 1000px) {
	#sec_message{padding: 20px 0;}
	#sec_message .message { margin: 0 0 20px 0; font-size: 16px;}
	
	#sec_message .mile-up { padding: 10px; margin: 0 10px 10px;}
	#sec_message .mile-up dt { font-size: 18px;}
	#sec_message .mile-up dd { font-size: 16px;}
	#sec_message .notice-text { margin: 0 10px 20px; font-size: 11px;}
	
	#sec_message .nav-list-wrap { margin: 30px 0 0;}
	#sec_message .nav-list-wrap .navi { padding: 0 10px; margin: 0; flex-wrap: wrap; justify-content: space-between; gap: 0;}
	#sec_message .nav-list-wrap .navi li { width: calc(50% - 5px); height: 60px; margin: 0 0 10px 0;}
	#sec_message .nav-list-wrap .navi li a { font-size: 16px;}
	#sec_message .nav-list-wrap .navi li a .small { font-size: 14px;}
	#sec_message .mile-up dd + dt { margin-top: 10px;}
	.event_lp #sec_message h2.design-line span::before {width: 30px;height: 29px;}
	.event_lp #sec_message h2.design-line span::after { width: 46px;height: 35px;}
}

/* バイヤーおすすめ
---------------------------------- */
.event_lp .contents-wrapper {position: relative;padding-bottom: 100px;}
.event_lp .contents-wrapper section { position: relative; z-index: 2;}

/* 関連イベント
---------------------------------- */
#sec_event_frame {padding: 0 0 1px 0;}
.sec_event_inner{max-width: 1200px;margin: 0 auto;}
#sec_event_frame h2.block-top-event--header {
  display:none;
  padding: 0 0 14px 0;
  margin: 0 0 40px 0;
  font-size: 30px;
  font-weight: bold;
	text-align: center;
  letter-spacing: .13em;
  line-height: 1.267;
  position: relative;
}
#sec_event_frame h2.block-top-event--header span {font-family: var(--serif);font-size: 30px;font-weight: bold;}
#sec_event_frame h2.block-top-event--header::after {content: '';width: 46px;border-top: var(--color_ttl) 5px solid;display: block;position: absolute;bottom: 0;left: 50%;translate: -50%;}
#sec_event_frame .design-more-button {margin: 30px auto 100px;}
.block-ranking-r--items{gap: 15px;margin-bottom: 0;}
.page-genre .block-ranking-r--items > li, .page-event .block-ranking-r--items > li, .page-category .block-ranking-r--items > li{
	margin: 0;
	width
Specifies the width of the content area, padding area or border area (depending on 'box-sizing') of certain boxes.
詳細

表示しない: calc((100% - 96px) / 5);
	width
Specifies the width of the content area, padding area or border area (depending on 'box-sizing') of certain boxes.
詳細

表示しない: calc((100% - 96px) / 5);
	width: calc((100% - 75px) / 6);
}
.block-top-event--goods{
	margin-bottom: 0;
}
.page-genre .block-ranking-r, .page-event .block-ranking-r, .page-category .block-ranking-r{
	margin-right: 0;
}
@media (max-width: 1000px) {
	#sec_event_frame h2.block-top-event--header { margin: 0 0 20px 0; font-size: 27px;}
	#sec_event_frame h2.block-top-event--header span { font-size: 27px;}
	#sec_event_frame .design-more-button { margin: 0 auto 80px;}
}

html[data-browse-mode="P"] #sec_event_frame .block-thumbnail-t,
html[data-browse-mode="P"] #sec_event_frame .block-pickup-list-p--items {margin: 0;gap: 15px;}
html[data-browse-mode="P"] #sec_event_frame .block-thumbnail-t > li,
html[data-browse-mode="P"] #sec_event_frame .block-pickup-list-p--items > li {width: calc((100% - 75px) / 6);margin: 0;}
html[data-browse-mode="S"] #sec_event_frame .block-thumbnail-t--items ,
html[data-browse-mode="S"] #sec_event_frame .block-top-event--goods .block-ranking-r--items{padding: 0 20px 10px;justify-content: flex-start;align-items: flex-start;gap: 20px 10px;overflow-x: unset;display: flex;flex-wrap: wrap;}
html[data-browse-mode="S"] #sec_event_frame .block-thumbnail-t--items li ,
html[data-browse-mode="S"] #sec_event_frame .block-top-event--goods .block-ranking-r--items li{ width: calc((100% - 10px) / 2); min-width: 150px; padding: 0; margin: 0; vertical-align: top; font-size: 14px;}

/* カテゴリー
---------------------------------- */
#sec_category {padding: 40px 0 0;}
#sec_category .section-inner {max-width: 1400px;margin: 0 auto;}
#sec_category .sec-cate-list { margin: 60px 0 100px; display: flex; flex-wrap: wrap; justify-content: center; gap: 30px;}
#sec_category .sec-cate-list .sec-cate-box {width: calc((100% - (24px * 4))/4);}
#sec_category .sec-cate-list .sec-cate-box .image { width: 100%;}
#sec_category .sec-cate-list .sec-cate-box .image img { width: 100%; vertical-align: top;}
#sec_category .sec-cate-list .sec-cate-box .name { 
	width: 100%;
	height: 46px;
	border: var(--color_ttl) 2px solid;
	font-size: 18px;
	font-weight: 500;
	color: #FFF;
	display: flex;
	justify-content: center;
	align-items: center;
	background: var(--color_ttl);
	transition: 0.5s;
}
@media (max-width: 1000px) {
	#sec_category { /*margin: 0 0 50px 0;*/ padding: 25px 0 0;}
	#sec_category .sec-cate-list { padding: 0 10px; margin: 0; flex-wrap: wrap; justify-content: space-between; gap: 0;}
	#sec_category .sec-cate-list .sec-cate-box { width: calc(50% - 5px); margin: 0 0 20px 0;}
	#sec_category .sec-cate-list .sec-cate-box .name { height: 40px; font-size: 15px;}
}

#sec_bnr{
	width: 1200px;
	margin: 0 auto 100px;
}
.sec-bnr-list{
	display: flex;
	flex-wrap: wrap;
	gap: 80px;
}
.sec-bnr-item{
	text-align: center;
}
.sec-bnr-frame__name{
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	color: var(--color_ttl2);
	margin: 15px 0 0;
}
#sec_campaign{
	width: 1200px;
	margin: 0 auto 100px;
}
#sec_brand{
	width: 1200px;
	margin: 0 auto ;
}
#sec_brand h3{
	font-size: 20px;
	font-weight: bold;
	color: #FFF;
	text-align: center;
	background: var(--color_sub);
	padding: 5px;
	margin: 0 0 24px;
}
.sec-brand-list{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 16px;
	margin: 0 0 40px;
}
.sec-brand-list:has( + .sec-brand-list){
	margin-bottom: 10px;
}
.sec-brand-list li{
	width: 201px;
}

@media (max-width: 1000px) {
	#sec_bnr {width: 100%;margin: 0 auto 80px; padding: 0 10px;}
	.sec-bnr-list {display: block;padding: 0 10px;}
	.sec-bnr-list > * + *{margin-top: 80px;}
	.sec-bnr-item {width: 100%;}
	.sec-bnr-frame__name {font-size: 18px;}
	#sec_campaign {width: 100%;margin: 0 auto 80px;}
	#sec_brand {width: 100%;margin: 0 auto ;padding: 0 10px;}
	.sec-brand-list { justify-content: flex-start; gap: 8px;margin: 0 0 25px;}
	.sec-brand-list li {width: calc((100% - 8px) / 2);}
}

.sec-campaign-cont .campaign_list{
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
}
.sec-campaign-cont .campaign_list li{
	width: calc((100% - 48px) / 4);
	background: #FFF;
}
.sec-campaign-cont .campaign_list li figure img{
	vertical-align: bottom;
}
.sec-campaign-cont .list_item_detail{
	background: #FFF;
	padding: 10px;
}
.sec-campaign-cont .list_item_detail_comment1{
	font-weight: bold;
}
.sec-campaign-cont .text-period{
	display: block;
	font-size: 11px;
	color: #bb2d2d;
	line-height: 18px;
	padding: 0 4px 0 20px;
	background: url(/img/usr/freepage/campaign/2024/img/watch_red.png?2) no-repeat left 2px / 13px;
	margin: 5px auto;
	overflow: hidden;
	text-overflow: ellipsis;
}
.sec-campaign-cont .list_item_detail_comment2{
	font-size: 13px;
}
@media (max-width: 1000px) {
	.sec-campaign-cont .campaign_list{
		padding: 0 10px;
	}
	.sec-campaign-cont .campaign_list li{
		width: calc((100% - 16px) / 2);
	}
	.sec-campaign-cont .list_item_detail_comment1{
		font-size: 12px;
	}
	.sec-campaign-cont .text-period{
		font-size: 8px;
	}
	.sec-campaign-cont .list_item_detail_comment2{
		font-size: 10px;
	}
}

/* ----------------------------------
追従ナビ
---------------------------------- */
#sec_fixed_navi { display: none;}
#sec_fixed_navi .navi { display: flex; flex-direction: column; gap: 5px; position: fixed; right: 0; bottom: 140px; z-index: 9999;}
#sec_fixed_navi .navi li { width: 270px;}
#sec_fixed_navi .navi li a { display: block; height: 45px; padding: 0 0 0 20px; border-right: none; font-size: 16px; line-height: 1; color: #610100; display: flex; align-items: center; background: linear-gradient(to right,#FFECEE,#FF919B) ; box-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.3); transition: 0.3s;position: relative;}
html[data-browse-mode="P"] #sec_fixed_navi .navi li a::after { content: ""; width: 100%; height: 100%; border: 2px solid #FF919B;border-right: 0; position: absolute; top: 0;left: 0;pointer-events: none; transition: .3s;opacity: 0;}
html[data-browse-mode="P"] #sec_fixed_navi .navi li a:hover { color: var(--color_sub) ; border-right: 0; background: #FFF; opacity: 1;}
html[data-browse-mode="P"] #sec_fixed_navi .navi li a:hover::after { opacity: 1;}
@media (max-width: 768px) {
	#sec_fixed_navi .navi { flex-direction: row; justify-content: space-between; gap: 0; left: 0; right: 0; bottom: 0;}
	#sec_fixed_navi .navi li { flex: 1; width: auto;}
	#sec_fixed_navi .navi li:not(:first-child) { border-left: 1px solid #fff;}
	#sec_fixed_navi .navi li a { justify-content: center; height: 46px; padding: 5px 0; font-size: clamp(0.625rem, 0.199rem + 1.82vw, 0.688rem); text-align: center; box-shadow: none;}
}

/* ----------------------------------
カテゴリで探す
---------------------------------- */
#sec_category_list{
	margin: 0 0 100px;
}
#sec_category_list .sec-category-list{
	width: 1200px;
	display: flex;
	flex-wrap: wrap;
	gap: 36px 60px;
	margin: 0 auto;
}
#sec_category_list .sec-category-list + .sec-category-list{
	margin-top: 36px;
}
#sec_category_list .sec-category-list li{
	width: 150px;
}
#sec_category_list .sec-category-list li a{
	display: block;
}
#sec_category_list .sec-category-list li img{
	width: 100%;
	height: auto;
}
#sec_category_list .sec-category-list li p{
	font-size: 18px;
	font-weight: 500;
	line-height: 1.4;
	text-align: center;
	margin: 5px 0 0;
}
#sec_pickup{
	background: linear-gradient(45deg,#FFD8EF,#FFFBFD 40%,#FFF6FA 60%,#FFD2E7);
	margin: 0 0 75px;
	padding: 60px 0 70px;
}
#sec_pickup .design-more-button{
	margin-bottom: 0;
}
@media (max-width: 1000px) {
	#sec_category_list {
		margin-bottom: 80px;
	}
	#sec_category_list .sp-scroll{
		overflow-x: auto;
		padding: 0 20px;
	}
	#sec_category_list .sec-category-list {
    width: 100%;
		flex-wrap: nowrap;
    gap: 20px 15px;
	}
	#sec_category_list .sec-category-list li {
    min-width: 100px;
		width: 100px;
	}
	#sec_category_list .sec-category-list li:last-child {
    min-width: 120px;
		width: 120px;
		padding-right: 20px;
	}
	#sec_category_list .sec-category-list li p {
    font-size: 12px;
	}
}