@charset "utf-8";
/*----------------------------------------------------------------------------------------------
for campaign
----------------------------------------------------------------------------------------------*/

/*
lvl 1
----------------------------------------------------------------------------------------------*/

/* lvl 2 -------------------------------------------------------------------------------------*/

/* lvl 3 */

.event-topimage, .campaign-topimage, .notice-topimage {
	height: 30vw;
	background-image: url("../cmn_img/topimage.svg");
	background-repeat: no-repeat;
	background-color: #e9f8fd;
	padding: 5.5vw 4vw;
	margin: 0;
	text-shadow: 0 0 1px #fff, 0 0 2px #fff, 0 0 3px #fff, 0 0 4px #fff, 0 0 4px #fff;
	color: #005686;
	overflow: hidden;
}

.event-topimage {
	background-size: auto 180%;
	background-position: left 20% top -20%;
}

.campaign-topimage {
	background-size: auto 140%;
	background-position: left 50% top -10%;
}

.notice-topimage {
	background-size: auto 120%;
	background-position: right top 0;
}

@media screen and (min-width:768px) {
	.event-topimage, .campaign-topimage, .notice-topimage {
		height: 20vw;
		padding: 7vw 1em;
	}
	.event-topimage {
		background-image: linear-gradient(90deg, rgba(233, 248, 253, 1) 0%, rgba(233, 248, 253, 1) 30%, rgba(233, 248, 253, 0) 30%, rgba(233, 248, 253, 0) 100%), url("../cmn_img/topimage.svg");
		background-size: 100% auto, auto 100%;
		background-position: left top, left 5% bottom 30%;
	}
	.campaign-topimage {
		background-size: auto 110%;
		background-position: left 65% bottom 10%;
	}
	.notice-topimage {
		background-size: auto 150%;
		background-position: right 0% top 30%;
	}
}

@media screen and (min-width:994px) {
	.event-topimage, .campaign-topimage, .notice-topimage {
		height: 120px;
		padding: 40px 0 40px calc(50% - 486px);
	}
	.event-topimage {
		background-image: linear-gradient(90deg, rgba(233, 248, 253, 1) 0%, rgba(233, 248, 253, 1) calc((50% - 486px) + 200px), rgba(233, 248, 253, 0) calc((50% - 486px) + 200px), rgba(233, 248, 253, 0) 100%), url("../cmn_img/topimage.svg");
		background-size: 100% auto, auto 160%;
		background-position: left top, right calc((50% - 486px) + 130px) bottom -3px;
	}
	.campaign-topimage {
		background-image: linear-gradient(90deg, rgba(233, 248, 253, 1) 0%, rgba(233, 248, 253, 1) calc((50% - 486px) + 100px), rgba(233, 248, 253, 0) calc((50% - 486px) + 100px), rgba(233, 248, 253, 0) 100%), url("../cmn_img/topimage.svg");
		background-size: 100% auto, auto 160%;
		background-position: left top, right calc((50% - 486px) + 535px) top 10%;
	}
	.notice-topimage {
		background-image: linear-gradient(90deg, rgba(233, 248, 253, 1) 0%, rgba(233, 248, 253, 1) 50%, rgba(233, 248, 253, 0) 50%, rgba(233, 248, 253, 0) 100%), url("../cmn_img/topimage.svg");
		background-size: 100% auto, auto 200%;
		background-position: left top, right calc((50% - 486px) + 935px) top 10%;
	}
}

.archive-list {
	list-style-type: none;
	padding: 0.1em 3vw;
	margin: 1em -3vw;
	background-color: #f5f5f5;
}

.archive-list li {
	position: relative;
	margin: 1em 0;
	background-color: #fff;
	border: 1px solid #dedede;
}

.archive-list-link {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}

.archive-list-thum {
	margin: 0;
	text-align: center;
}

.archive-list-thum-inner {
	display: block;
	background-color: #dedede;
	height: 60vw;
	overflow: hidden;
	position: relative;
}

.archive-list-thum-inner img {
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
}

.archive-list-txtarea {
	margin: 0;
	padding: 1em;
	background-color: #fff;
	/* border-width: 0 1px 1px 1px;
	border-color: #dedede;
	border-style: solid; */
}

.archive-list-lead {
	margin: 0 0 1em;
	font-weight: bold;
	font-size: 1.2em;
	line-height: 1.3;
}

.archive-list-sentences {
	margin: 1em 0;
	font-size: 0.9em;
}

.archive-list-detail {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.archive-list-detail dt {
	width: 2.6em;
	margin-bottom: 0.8em;
}

.archive-list-detail dd {
	width: calc(100% - 3em);
	margin-left: 0;
	line-height: 1.3;
	margin-bottom: 0.8em;
	display: flex;
	align-items: center;
}

.archive-list-detail-item {
	padding: 2.4em 0.2em 0.2em 0.2em;
	line-height: 1;
	position: relative;
	font-size: 0.9em;
	display: block;
	text-align: center;
	color: #626262;
	/* border: 1px solid #e3e3e3; */
	border-radius: 3px;
	background-color: #f7f7f7;
}

.archive-list-detail-item::before {
	content: "";
	background-repeat: no-repeat;
	background-position: center center;
	position: absolute;
	display: block;
	width: 2em;
	height: 2em;
	left: 0;
	top: 0.2em;
	margin: auto;
	background-size: contain;
	right: 0;
}

.archive-list-detail-item_usr::before {
	background: url("../cmn_img/icon_user_999.svg");
}

.archive-list-detail-item_store::before {
	background: url("../cmn_img/icon_store_999.svg");
}

.archive-list-detail-item_priod::before {
	background: url("../cmn_img/icon_calendar_999.svg");
}

@media screen and (min-width:768px) {
	.archive-list {
		list-style-type: none;
		padding: 1% 0 1% 1%;
		margin: 0;
		display: flex;
		flex-wrap: wrap;
	}
	.archive-list li {
		width: 31%;
		margin: 1%;
	}
	.archive-list-thum-inner {
		height: 165px;
	}
	.archive-list-txtarea {
		padding: 0.6em;
	}
	.archive-list-lead {
		font-size: 0.9em;
	}
	.archive-list-detail {
		font-size: 0.8em;
	}
}

@media screen and (min-width:994px) {
	.archive-list li {
		width: 23%;
		margin: 1%;
	}
	.archive-list-thum-inner {
		height: 160px;
	}
	.archive-list-detail {
		font-size: 0.7em;
	}
}

/*
calendar
----------------------------------------------------------------------------------------------*/

.cal-schedule {
	width: 100%;
}

.cal-schedule th, .cal-schedule td {
	background-color: #fff;
	border: 1px solid #b5b5b5;
	text-align: center;
	vertical-align: middle;
	line-height: 1.5;
	padding: 0.5em 0;
	font-size: 1.3em;
}

.cal-schedule td:empty {
	background-image: linear-gradient(to top left, transparent, transparent 49%, #999 49%, #999 51%, transparent 51%, transparent);
}

.cal-schedule .cal-schedule-month th, .cal-schedule .cal-schedule-month:first-child th {
	border: none;
	background-color: transparent;
}

.cal-schedule-month-txt_year {
	font-size: 1.2em
}

.cal-schedule-month-txt_month {
	font-size: 2.4em;
	color: #ff9e00;
	line-height: 1;
}

.cal-schedule .cal-schedule-week th {
	background-color: #666;
	color: #fff;
}

.cal-schedule th:first-child, .cal-schedule td:first-child, .cal-schedule tbody td.holiday, .cal-schedule .holiday.past:first-child {
	background-color: #ffdede;
}

.cal-schedule .cal-schedule-week th:first-child {
	background-color: #fb4848;
}

.cal-schedule th:nth-child(7), .cal-schedule td:nth-child(7), .cal-schedule .holiday.past:nth-child(7) {
	background-color: #def2ff;
}

.cal-schedule .cal-schedule-week th:nth-child(7) {
	background-color: #13567b;
}

.cal-schedule .past, .cal-schedule .holiday.past {
	background-color: #e1e1e1;
	color: #999;
}

.cal-schedule .past .cal-schedule-link-date {
	color: inherit;
	pointer-events: none;
}

.cal-schedule td.today {
	font-weight: bold;
	background-color: #ff9e00;
	color: #fff;
}

.today .cal-schedule-link-date {
	color: #fff;
}

.cal-schedule-link-date {
	text-decoration: underline;
	display: block;
	font-weight: bold;
}

/* calendar slack */

.cal-schedule-wrapper {
	margin-left: -6px;
	margin-right: -6px;
}

.cal-schedule-wrapper .cal-schedule-slide {
	padding: 0 6px;
}

.cal-schedule-wrapper .slick-arrow {
	position: absolute;
	background-color: #0056af;
	color: #fff;
	display: block;
	cursor: pointer;
	line-height: 1;
	font-size: 1.2em;
	top: 1em;
	z-index: 2;
	width: 2em;
	height: 2em;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
}

.cal-schedule-wrapper .slick-arrow.slick-disabled {
	background-color: #ccc;
	cursor: auto;
}

.cal-schedule-wrapper .prev-arrow {
	left: 6px;
}

.cal-schedule-wrapper .next-arrow {
	right: 6px;
}

/* calendar modal */

.cal-modal {
	width: 100%;
	position: fixed;
	height: 100vh;
	display: none;
	top: 0;
	left: 0;
	z-index: 999;
}

.cal-modal-inner {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 10vw auto 0;
	width: 80%;
	height: 70vh;
	background-color: #0056af;
	padding: 1em 0.6em;
	text-align: left;
	box-shadow: 0 0 6px rgba(0, 0, 0, 0.5);
	font-weight: normal;
}

.cal-modal-ttl {
	background-color: #0056af;
	color: #fff;
	font-size: 1.6rem;
	text-align: center;
	margin-top: 0.5em;
}

.cal-modal-list {
	padding-left: 0;
	list-style-type: none;
}

.cal-modal-list li {
	margin: 0.5em 0;
	line-height: 1.3;
	background-color: #fff;
	border-radius: 0.6em;
	padding: 0.8em 0.8em;
	font-weight: bold;
}

.cal-modal-bg {
	background: rgba(255, 255, 255, 0.6);
	height: 100vh;
	position: absolute;
	width: 100%;
}

.cal-modal-btn_close {
	text-align: right;
	margin: 0 0 0.5em 0;
}

.cal-modal-btn_close-icon {
	cursor: pointer;
}

.cal-modal-frame {
	width: 100%;
	height: 88%;
}

.page-cal-modal {
	font-size: 1.4rem;
}

.main-content_event-list-daylyschedule {
	font-size: 1.4rem;
	padding: 0 0.6em;
	height: 100%;
	margin: 0;
}

@media screen and (min-width:582px) {
	.page-cal-modal {
		/* font-size: 1.6rem; */
	}
}

@media screen and (min-width:768px) {
	.cal-schedule-wrapper {
		display: flex;
		justify-content: space-around;
		/* background-color: #f7f7f7;
		padding: 0.6em; */
	}
	.cal-schedule-wrapper .slick-arrow {
		top: 0.3em;
		height: 1.6em;
	}
	.slick-list {
		width: 100%;
	}
	.cal-schedule th, .cal-schedule td {
		font-size: 0.8em;
	}
	.cal-modal-inner {
		height: 50%
	}
}

@media screen and (min-width:768px) {
	.cal-modal-inner {
		height: 50%;
		width: 50%;
	}
}

/*
campaign detail
----------------------------------------------------------------------------------------------*/

.archive-detail-label {
	color: #fff;
	border-radius: 1.6em;
	line-height: 1;
	padding: 0.3em 0.8em;
	display: inline-block;
	margin: 0 0 1em;
}

.campaign-archive-detail-label {
	background-color: #e40f62;
}

.event-archive-detail-label {
	background-color: #1060c2;
}

.notice-archive-detail-label {
	background-color: #197a1d;
}

.archive-detail-pagetitle {
	font-size: 1.6em;
	line-height: 1.3;
	margin: 0 0 1em;
}

.archive-detail-store-title {
	font-size: 1.4em;
	line-height: 1.3;
}

.archive-detail-date {
	font-size: 0.9em;
	text-align: right;
	margin: 0.5em 0;
	color: #666;
	display: block;
}

.archive-detail-mainimage {
	margin: 0.5em 0;
	text-align: center;
}

.archive-detail-terms {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 0.8em 0.8em 0;
	background-color: #f7f7f7;
	margin: 2em 0;
}

.archive-detail-terms dt {
	width: 5em;
	margin-bottom: 0.8em;
}

.archive-detail-terms dd {
	width: calc(100% - 5.5em);
	margin-left: 0;
	line-height: 1.3;
	margin-bottom: 0.8em;
	display: flex;
	align-items: center;
}

.archive-detail-terms-item {
	padding: 2.4em 0.2em 0.2em 0.2em;
	line-height: 1;
	position: relative;
	font-size: 0.7em;
	display: block;
	text-align: center;
	color: #0056af;
	/* border: 1px solid #e3e3e3; */
	border-radius: 3px;
	background-color: #fff;
}

.archive-detail-terms-item::before {
	content: "";
	background-repeat: no-repeat;
	background-position: center center;
	position: absolute;
	display: block;
	width: 2em;
	height: 2em;
	left: 0;
	top: 0.2em;
	margin: auto;
	background-size: contain;
	right: 0;
}

.archive-detail-terms-item_usr::before {
	background-image: url("../cmn_img/icon_user.svg");
}

.archive-detail-terms-item_store::before {
	background-image: url("../cmn_img/icon_store.svg");
}

.archive-detail-terms-item_priod::before {
	background-image: url("../cmn_img/icon_calendar.svg");
}

.archive-detail-terms-item_link::before {
	background-image: url("../cmn_img/icon_arrow_up_fff.svg");
	background-color: #0056af;
	transform: rotate(90deg);
	border-radius: 2em;
	background-size: 80% auto;
	width: 1.8em;
	height: 1.8em;
	margin-top: 0.1em;
}

.archive-detail-store-dllist {
	margin: 1em 0;
	display: flex;
	flex-wrap: wrap;
}

.archive-detail-store-dllist-inner {
	margin-right: 1%;
	margin-bottom: 1%;
	flex-grow: 1;
	font-size: 0.8em;
}

.archive-detail-store-dllist dt {
	font-weight: bold;
	position: relative;
	top: 0.6em;
	left: -0.3em;
	line-height: 1;
	background-color: #fff;
	display: inline-block;
	padding: 0.3em 0.6em;
	border: 1px solid #eee;
	border-radius: 2em;
}

.archive-detail-store-dllist dd {
	margin-left: 0;
	padding: 1em 0.6em 0.6em;
	background-color: #f7f7f7;
}

.archive-detail-store-list {
	padding-left: 0;
	list-style-type: none;
	font-size: 0.9em;
}

.archive-detail-store-list li {
	display: inline-block;
	line-height: 1;
	word-break: keep-all;
}

.archive-detail-store-list li::after {
	content: "／";
}

.archive-detail-store-list li:last-child::after {
	content: none;
}

/*
edit area (.event-detail-article,.campaign-detail-article,.notice-detail-article)
----------------------------------------------------------------------------------------------*/

.archive-detail-article[class$="archive-detail-article"] h1, .archive-detail-article[class$="archive-detail-article"] h2 {
	font-size: 1.5em;
}

.archive-detail-article[class$="archive-detail-article"] h3 {
	font-size: 1.3em;
}

.archive-detail-article[class$="archive-detail-article"] h4 {
	font-size: 1.1em;
}

.archive-detail-article[class$="archive-detail-article"] h5 {
	font-size: 1em;
}

.archive-detail-article[class$="archive-detail-article"] h6 {
	font-size: 0.8em;
}

.archive-detail-article[class$="archive-detail-article"] pre {
	font-family: 'Roboto', -apple-system, BlinkMacSystemFont, "Helvetica Neue", Verdana, Meiryo, sans-serif;
	white-space: pre-wrap;
}

.archive-detail-article[class$="archive-detail-article"] blockquote {
	border-left: 3px solid #ccc;
	padding-left: 1em;
	color: #666;
}

.archive-detail-article[class$="archive-detail-article"] hr {
	border-width: 2px 0 0 0;
	border-style: solid;
	border-color: #c6c6c6;
	margin: 1em 0 2em;
}

.archive-detail-article[class$="archive-detail-article"] ul {
	margin: 1em 0 2em 1em;
	padding: 0;
}

.archive-detail-article[class$="archive-detail-article"] ul li {
	margin: 0.5em 0;
	line-height: 1.5;
}

.archive-detail-article[class$="archive-detail-article"] .noteslist {
	list-style-type: none;
	margin: 1em 0 2em;
}

.archive-detail-article[class$="archive-detail-article"] .noteslist li {
	margin: 0.5em 0;
	line-height: 1.5;
	text-indent: -1em;
	margin-left: 1em;
}

.archive-detail-article[class$="archive-detail-article"] .noteslist li:before {
	content: "※";
}

.archive-detail-article[class$="archive-detail-article"] .text-l {
	font-size: 1.3em;
}

.archive-detail-article[class$="archive-detail-article"] .text-xl {
	font-size: 1.5em;
}

.archive-detail-article[class$="archive-detail-article"] .text-xxl {
	font-size: 2em;
}

.archive-detail-article[class$="archive-detail-article"] .text-s {
	font-size: 0.9em;
}

.archive-detail-article[class$="archive-detail-article"] .text-xs {
	font-size: 0.8em;
}

.archive-detail-article[class$="archive-detail-article"] .text-xxs {
	font-size: 0.7em;
}

.archive-detail-article[class$="archive-detail-article"] .border-A {
	border: 2px solid #ccc;
	padding: 1em;
	margin: 1em 0 2em;
}

.archive-detail-article[class$="archive-detail-article"] .border-B {
	border: 2px dotted #ccc;
	padding: 1em;
	margin: 1em 0 2em;
}

.event-archive-detail-article .archive-detail-title_a {
	padding-left: 1.3em;
	background-image: url(../cmn_img/icon_title_star.svg);
	background-size: auto 1.2em;
	background-position: left top;
	background-repeat: no-repeat;
	border-bottom: 3px dotted #ccc;
	padding-bottom: 0.5em;
}

.campaign-archive-detail-article .archive-detail-title_a {
	padding-left: 1.3em;
	background-image: url(../cmn_img/icon_title_star_f01446.svg);
	background-size: auto 1.2em;
	background-position: left top;
	background-repeat: no-repeat;
	border-bottom: 3px dotted #ccc;
	padding-bottom: 0.5em;
}

.notice-archive-detail-article .archive-detail-title_a {
	padding-left: 1.3em;
	background-image: url(../cmn_img/icon_title_star_66bc29.svg);
	background-size: auto 1.2em;
	background-position: left top;
	background-repeat: no-repeat;
	border-bottom: 3px dotted #ccc;
	padding-bottom: 0.5em;
}

.archive-detail-title_b {
	border-left: 6px solid #acacac;
	border-bottom: 1px dotted #ccc;
	padding: 0.2em 0 0.3em 0.5em;
}

@media screen and (min-width:768px) {
	.detail-layout-imgR, .detail-layout-imgL {
		display: flex;
		justify-content: space-between;
	}
	.detail-layout-imgR-txt, .detail-layout-imgL-txt {
		width: 58%;
	}
	.detail-layout-imgL-txt {
		order: 2;
	}
	.detail-layout-imgR-img, .detail-layout-imgL-img {
		width: 40%;
	}
}