body .l-adslot-booking,
body .l-adslot-login,
body .l-adslot-mypage,
body .l-adslot-list {
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: none !important;
	color: #1f2937 !important;
	font-size: 14px !important;
	line-height: 1.6 !important;
	letter-spacing: 0 !important;
}

body .l-adslot-booking *,
body .l-adslot-login *,
body .l-adslot-mypage *,
body .l-adslot-list * {
	box-sizing: border-box !important;
	letter-spacing: 0 !important;
}

body .l-adslot-booking [hidden],
body .l-adslot-login [hidden],
body .l-adslot-mypage [hidden] {
	display: none !important;
}

body .l-adslot-booking {
	/* display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(320px, 0.9fr) !important; */
	display: flex !important;
	flex-direction: column !important;
	gap: 20px !important;
	margin: 0 !important;
	margin-top: 24px !important;
}

body .l-adslot-booking__calendar {
	width: 100% !important;
	background: #ffffff !important;
	border: 1px solid #d7dde7 !important;
	border-radius: 8px !important;
}

body .l-adslot-booking__calendar {
	padding: 18px !important;
}

body .l-adslot-booking__form .__panel,
body .l-adslot-mypage .__panel {
	width: 100% !important;
	margin: 0 0 16px !important;
	padding: 16px !important;
	border-radius: 8px !important;
}

body .l-adslot-booking__form .__panel:last-of-type,
body .l-adslot-mypage .__panel:last-child {
	margin-bottom: 0 !important;
}

body .l-adslot-booking__form .__panel--schedule {
	background: #f8fafc !important;
	border: 1px solid #d7dde7 !important;
}

body .l-adslot-booking__form .__panel--customer {
	background: #f8fafc !important;
	border: 1px solid #d7dde7 !important;
}

body .l-adslot-booking__calendar .__nav {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	margin: 0 0 14px !important;
	font-weight: 700 !important;
}

body .l-adslot-booking__calendar .__nav button,
body .l-adslot-booking__form button,
body .l-adslot-login .__button,
body .l-adslot-mypage button {
	min-height: 44px !important;
	padding: 10px 32px !important;
	border: 1px solid #1d4ed8 !important;
	border-radius: 6px !important;
	background: #2563eb !important;
	color: #ffffff !important;
	font-weight: 700 !important;
	text-decoration: none !important;
	cursor: pointer !important;
	margin: 0 auto;
	margin-top: 16px !important;
	display: block;
}
body .l-adslot-booking__calendar .__nav button,
body .l-adslot-booking__calendar .__nav span{
	font-size: 16px !important;
}

body .l-adslot-booking__calendar .__nav button:hover,
body .l-adslot-booking__form button:hover,
body .l-adslot-login .__button:hover,
body .l-adslot-mypage button:hover {
	background: #1d4ed8 !important;
}

body .l-adslot-booking__calendar .__grid {
	display: grid !important;
	grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
	gap: 6px !important;
	width: 100% !important;
}

body .l-adslot-booking__calendar .__cell {
	aspect-ratio: 1 / 0.82 !important;
	min-height: 46px !important;
	padding: 7px 4px !important;
	text-align: center !important;
	background: #ffffff !important;
	border: 1px solid #cfd8e6 !important;
	border-radius: 6px !important;
	color: #111827 !important;
	cursor: pointer !important;
	font-weight: 700 !important;
	font-size: 16px !important;
}

body .l-adslot-booking__calendar .__cell small {
	display: inline-block !important;
	margin-top: 2px !important;
	color: #64748b !important;
	font-size: 14px !important;
	font-weight: 700 !important;
}

body .l-adslot-booking__calendar .__cell--disabled {
	background: #e5e7eb !important;
	color: #94a3b8 !important;
	cursor: not-allowed !important;
}

body .l-adslot-booking__calendar .__cell--selected {
	background: #2563eb !important;
	color: #ffffff !important;
	border-color: #1d4ed8 !important;
}

body .l-adslot-booking__calendar .__cell--in-range {
	background: #dbeafe !important;
	color: #1e3a8a !important;
	border-color: #93c5fd !important;
}

body .l-adslot-booking__calendar .__cell--range-end {
	background: #2563eb !important;
	color: #ffffff !important;
	border-color: #1d4ed8 !important;
}

body .l-adslot-booking__calendar .__cell--selected small,
body .l-adslot-booking__calendar .__cell--range-end small {
	color: #dbeafe !important;
}

body .l-adslot-booking__calendar .__cell--in-range small {
	color: #1d4ed8 !important;
}

body .l-adslot-booking__calendar .__grid[aria-busy="true"] {
	opacity: 0.7 !important;
	pointer-events: none !important;
}

body .l-adslot-booking__calendar .__cell--blank {
	background: transparent !important;
	border-color: transparent !important;
}

body .l-adslot-booking__calendar .__legend,
body .l-adslot-mypage__intro,
body .l-adslot-login__message {
	margin: 12px 0 0 !important;
	color: #475569 !important;
	font-size: 14px !important;
}

body .l-adslot-booking__form fieldset,
body .l-adslot-mypage .__replace-form fieldset {
	margin: 14px 0 !important;
	padding: 14px !important;
	border: 1px solid #d7dde7 !important;
	border-radius: 8px !important;
	background: #f8fafc !important;
}

body .l-adslot-booking__form legend,
body .l-adslot-mypage .__replace-form legend {
	padding: 0 6px !important;
	font-weight: 700 !important;
	color: #111827 !important;
}

body .l-adslot-booking__form label,
body .l-adslot-login label,
body .l-adslot-mypage label {
	display: block !important;
	margin: 0 0 10px !important;
	color: #1f2937 !important;
	font-weight: 600 !important;
	font-size: 14px !important;
}

body .l-adslot-booking__form input[type="text"],
body .l-adslot-booking__form input[type="email"],
body .l-adslot-booking__form input[type="url"],
body .l-adslot-booking__form input[type="number"],
body .l-adslot-login input[type="text"],
body .l-adslot-login input[type="email"],
body .l-adslot-login input[type="password"],
body .l-adslot-mypage input[type="text"],
body .l-adslot-mypage input[type="url"],
body .l-adslot-mypage input[type="file"],
body .l-adslot-mypage textarea {
	display: block !important;
	width: 100% !important;
	margin-top: 6px !important;
	padding: 11px 12px !important;
	border: 1px solid #cbd5e1 !important;
	border-radius: 6px !important;
	background: #ffffff !important;
	color: #111827 !important;
	font: inherit !important;
}

body .l-adslot-booking__form input::placeholder,
body .l-adslot-login input::placeholder,
body .l-adslot-mypage input::placeholder,
body .l-adslot-mypage textarea::placeholder {
	color: #aaa !important;
	font-weight: 500 !important;
}

body .l-adslot-booking__form input[type="radio"],
body .l-adslot-booking__form input[type="checkbox"],
body .l-adslot-login input[type="checkbox"],
body .l-adslot-mypage input[type="radio"] {
	margin-right: 6px !important;
	margin-top: 0 !important;
}

body .l-adslot-booking__form .__selected-date {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 10px 16px !important;
	margin: 0 0 14px !important;
	padding: 12px !important;
	background: #eef6ff !important;
	border: 1px solid #bfdbfe !important;
	border-radius: 8px !important;
	color: #1e3a8a !important;
	font-size: 14px !important;
}

body .l-adslot-booking__form .__selected-date strong {
	color: #111827 !important;
}

body .l-adslot-booking__form .__selected-end-date {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
}

body .l-adslot-booking__form .__selected-end-date[hidden] {
	display: none !important;
}

body .l-adslot-booking__form .__days-input {
	display: block !important;
	margin-left: 0 !important;
}

body .l-adslot-booking__form .__nudge,
body .l-adslot-mypage .__empty-state {
	margin: 12px 0 !important;
	padding: 12px !important;
	background: #fff7ed !important;
	border: 1px solid #fed7aa !important;
	border-radius: 8px !important;
	color: #9a3412 !important;
	font-weight: 600 !important;
	font-size: 14px !important;
}

body .l-adslot-booking__form .__price {
	margin: 14px 0 !important;
	padding: 14px !important;
	background: #ecfdf5 !important;
	border: 1px solid #bbf7d0 !important;
	border-radius: 8px !important;
	color: #065f46 !important;
	font-size: 18px !important;
}

body .l-adslot-booking__form .__price strong {
	font-size: 18px !important;
}

body .l-adslot-booking__form .__terms-text {
	height: 170px !important;
	overflow-y: auto !important;
	border: 1px solid #d7dde7 !important;
	border-radius: 8px !important;
	padding: 12px !important;
	margin-bottom: 10px !important;
	background: #ffffff !important;
	color: #334155 !important;
}

body .l-adslot-booking__form .__error,
body .l-adslot-login .__error,
body .l-adslot-mypage .__error {
	margin: 12px 0 !important;
	padding: 12px !important;
	background: #fef2f2 !important;
	border: 1px solid #fecaca !important;
	border-radius: 8px !important;
	color: #b91c1c !important;
	font-weight: 700 !important;
}

body .l-adslot-login .__success,
body .l-adslot-mypage .__success {
	margin: 12px 0 !important;
	padding: 12px !important;
	background: #ecfdf5 !important;
	border: 1px solid #bbf7d0 !important;
	border-radius: 8px !important;
	color: #047857 !important;
	font-weight: 700 !important;
}

body .l-adslot-login {
	margin: 0 !important;
	margin-top: 24px !important;
}

body .l-adslot-login__title {
	margin: 0 0 8px !important;
	color: #111827 !important;
	font-size: 24px !important;
	line-height: 1.3 !important;
}

body .l-adslot-login__form {
	margin-top: 18px !important;
	padding: 16px !important;
	background: #f8fafc !important;
	border: 1px solid #d7dde7 !important;
	border-radius: 8px !important;
}

body .l-adslot-login .__reset-link {
	margin: 8px 0 0 !important;
}

body .l-adslot-login .__reset-link a,
body .l-adslot-mypage a{
	color: #1d4ed8 !important;
	text-decoration: underline !important;
	text-underline-offset: 2px !important;
}

body .l-adslot-list__item .__caption-link {
	color: #000 !important;
	text-align:center;
	margin-top:.5em;
	font-weight:bold;
	text-decoration: underline;
	font-size: 16px !important;
}
body .l-adslot-list__item .__caption-link:after {
	content: ' ＞';
	margin-left:0em;
}

body .l-adslot-list__item .__caption-link:hover{
	text-decoration: none;
}

body .l-adslot-mypage {
	margin: 0 !important;
	margin-top: 24px !important;
}

body .l-adslot-mypage__header {
	display: flex !important;
	align-items: stretch !important;
	justify-content: space-between !important;
	gap: 12px !important;
	margin: 0 0 16px !important;
}

body .l-adslot-mypage__intro {
	flex: 1 1 auto !important;
	margin: 0 !important;
	padding: 12px !important;
	background: #eef6ff !important;
	border: 1px solid #bfdbfe !important;
	border-radius: 8px !important;
	color: #1e3a8a !important;
	font-weight: 600 !important;
	font-size: 18px !important;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}

body a.l-adslot-mypage__logout {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 48px !important;
	padding: 10px 18px !important;
	background: #334155 !important;
	border: 1px solid #1e293b !important;
	border-radius: 8px !important;
	color: #ffffff !important;
	font-weight: 800 !important;
	text-decoration: none !important;
	white-space: nowrap !important;
}

body .l-adslot-mypage__logout:hover {
	background: #1e293b !important;
	color: #ffffff !important;
	text-decoration: none !important;
}

body .l-adslot-mypage__booking {
	margin: 0 0 18px !important;
}

body .l-adslot-mypage__booking:last-child {
	margin-bottom: 0 !important;
}

body .l-adslot-mypage .__title {
	margin: 0 0 12px !important;
	color: #111827 !important;
	font-size: 20px !important;
	line-height: 1.35 !important;
	padding-bottom: 0 !important;
	border-bottom: none !important;
}

body .l-adslot-mypage .__period-range {
	margin: 0 0 12px !important;
	padding: 12px !important;
	background: #fff !important;
	border: 1px solid #e2e8f0 !important;
	border-radius: 8px !important;
	color: #111827 !important;
	font-size: 18px !important;
	font-weight: 800 !important;
}

body .l-adslot-mypage .__panel--period {
	background: #f8fafc !important;
	border: 1px solid #d7dde7 !important;
}

body .l-adslot-mypage .__panel--content {
	background: #f8fafc !important;
	border: 1px solid #d7dde7 !important;
}

body .l-adslot-mypage .__panel--submit {
	background: #f8fafc !important;
	border: 1px solid #d7dde7 !important;
}

body .l-adslot-mypage .__panel--cancel {
	background: #f8fafc !important;
	border: 1px solid #d7dde7 !important;
}

body .l-adslot-mypage .__meta {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 10px !important;
	margin: 0 0 16px !important;
	padding: 0 !important;
	list-style: none !important;
}

body .l-adslot-mypage .__meta li {
	margin: 0 !important;
	padding: 12px !important;
	background: #fff !important;
	border: 1px solid #e2e8f0 !important;
	border-radius: 8px !important;
	display: flex;
	align-items: center;
	justify-content: left;
	gap: 8px;
}

body .l-adslot-mypage .__section-title {
	margin: 0 0 10px !important;
	padding-top: 0 !important;
	border-top: none !important;
	color: #111827 !important;
	font-size: 17px !important;
	line-height: 1.4 !important;
}

body .l-adslot-mypage .__status-badge,
body .l-adslot-mypage .__review-badge {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 28px !important;
	padding: 4px 10px !important;
	border-radius: 999px !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	white-space: nowrap !important;
}

body .l-adslot-mypage .__status-badge--awaiting_content,
body .l-adslot-mypage .__review-badge--pending {
	background: #fff7ed !important;
	color: #9a3412 !important;
	border: 1px solid #fed7aa !important;
}

body .l-adslot-mypage .__status-badge--in_review,
body .l-adslot-mypage .__review-badge--auto_checking {
	background: #eff6ff !important;
	color: #1d4ed8 !important;
	border: 1px solid #bfdbfe !important;
}

body .l-adslot-mypage .__status-badge--scheduled,
body .l-adslot-mypage .__review-badge--approved {
	background: #ecfdf5 !important;
	color: #047857 !important;
	border: 1px solid #bbf7d0 !important;
}

body .l-adslot-mypage .__status-badge--live {
	background: #dcfce7 !important;
	color: #166534 !important;
	border: 1px solid #86efac !important;
}

body .l-adslot-mypage .__status-badge--finished,
body .l-adslot-mypage .__status-badge--cancelled,
body .l-adslot-mypage .__status-badge--suspended,
body .l-adslot-mypage .__review-badge--rejected {
	background: #f1f5f9 !important;
	color: #475569 !important;
	border: 1px solid #cbd5e1 !important;
}

body .l-adslot-mypage .__content-link,
body .l-adslot-mypage .__content-url,
body .l-adslot-mypage .__content-caption,
body .l-adslot-mypage .__content-status,
body .l-adslot-mypage .__revision-count,
body .l-adslot-mypage .__cancel-note {
	margin: 8px 0 !important;
	font-size: 14px !important;
}

body .l-adslot-mypage .__content-image {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	margin: 8px 0 !important;
	border: 1px solid #d7dde7 !important;
	border-radius: 8px !important;
}

body .l-adslot-mypage .__youtube-fields,
body .l-adslot-mypage .__banner-fields {
	display: flex !important;
	flex-direction: column !important;
	gap: 12px !important;
	margin: 12px 0 !important;
}

body .l-adslot-mypage .__banner-fields[hidden],
body .l-adslot-mypage .__youtube-fields[hidden] {
	display: none !important;
}

body .l-adslot-mypage .__type-fields label {
	display: inline-flex !important;
	align-items: center !important;
	margin-right: 16px !important;
}

body .l-adslot-mypage .__cancel-button {
	background: #b91c1c !important;
	border-color: #991b1b !important;
}

body .l-adslot-mypage .__cancel-button:hover {
	background: #991b1b !important;
}

body .l-adslot-list {
	display: flex !important;
	flex-direction: column !important;
	gap: 20px !important;
}

body .l-adslot-list__item {
	width: 100% !important;
	overflow: hidden !important;
}

body .l-adslot-list__item .__video {
	position: relative !important;
	width: 100% !important;
	padding-top: 56.25% !important;
	background: #0f172a !important;
	overflow: hidden !important;
}

body .l-adslot-list__item .__video-poster,
body .l-adslot-list__item .__iframe {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100% !important;
	display: block !important;
	object-fit: cover !important;
	border: 0 !important;
}

body .l-adslot-list__item .__video-poster {
	z-index: 1 !important;
	background: #0f172a !important;
	opacity: 1 !important;
	transition: opacity 180ms ease !important;
}

body .l-adslot-list__item .__iframe {
	z-index: 2 !important;
	opacity: 0 !important;
}

body .l-adslot-list__item .__video--loaded .__video-poster {
	opacity: 0 !important;
	pointer-events: none !important;
}

body .l-adslot-list__item .__video--loaded .__iframe {
	opacity: 1 !important;
}

body .l-adslot-list__item noscript .__iframe {
	opacity: 1 !important;
}

body .l-adslot-list__item .__link {
	display: block !important;
	width: 100% !important;
}

body .l-adslot-list__item .__banner {
	display: block !important;
	width: 100% !important;
	height: auto !important;
}

body .l-adslot-list__item .__caption {
	margin: 7px 0 0 !important;
	color: #334155 !important;
	font-size: 13px !important;
	line-height: 1.5 !important;
	text-align: center !important;
}

body .l-adslot-list__item .__caption-text {
	color: #334155 !important;
}

body .l-adslot-list__item .__empty {
	display: none !important;
}

@media (max-width: 720px) {
	body .l-adslot-booking {
		grid-template-columns: 1fr !important;
		padding: 14px !important;
		gap: 14px !important;
	}

	body .l-adslot-booking__calendar,
	body .l-adslot-booking__form,
	body .l-adslot-login,
	body .l-adslot-mypage,
	body .l-adslot-mypage__booking {
		padding: 14px !important;
	}

	body .l-adslot-mypage__header {
		flex-direction: column !important;
	}

	body .l-adslot-mypage__logout {
		width: 100% !important;
	}

	body .l-adslot-booking__calendar .__grid {
		gap: 4px !important;
	}

	body .l-adslot-booking__calendar .__cell {
		min-height: 42px !important;
		padding: 5px 2px !important;
		font-size: 13px !important;
	}

	body .l-adslot-mypage .__meta,
	body .l-adslot-mypage .__youtube-fields,
	body .l-adslot-mypage .__banner-fields {
		grid-template-columns: 1fr !important;
	}

	body .l-adslot-mypage .__type-fields label {
		display: flex !important;
		margin-right: 0 !important;
	}
}
