

body {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.2rem;
	line-height: 1.1em;
	letter-spacing: .02em;
	color: #000000;
	background-color: #f2f2f2;
	margin: 0;
	padding: 0;
	height: 100%;
	position: relative;
	word-wrap: break-word;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-smoothing: antialiased;
}

header {
	width: 100%;
	padding-top: .75rem;
	padding-bottom: 1.5rem;
}

.logo {
	height: 32px;
}
@media (min-width: 576px) {
	.logo {
		height: 50px;
	}
}
@media (min-width: 992px) {
	.logo {
		height: 62px;
	}
}

.wrapper {
	min-height: calc(100vh + 50px);
}



footer {
	position: sticky;
	bottom: 0;
	z-index: 10;
	width: 100%;
	padding-top: .75rem;
	padding-bottom: .75rem;
	background-color: #fff;
	font-size: 6.5pt;
}

.text-left {
  text-align: left !important;
}

.text-right {
  text-align: right !important;
}

.text-notes {
	width: 100%;
	margin-top: 0.25rem;
	font-size: 0.875em;
	color: #dc3545;
}

.col-20p {
	flex: 0 0 auto;
	width: 20%;
}

.col-80p {
	flex: 0 0 auto;
	width: 80%;
}

.footer_icon {
	font-size: 25pt;
}

.footer_link a {
	color: #000000;
	text-decoration: none;
}
.footer_link a :hover {
	color: #000000;
}

@media (min-width: 576px) {
	footer {
		font-size: 9pt;
	}
	.footer_icon {
		font-size: 30pt;
	}
}

@media (min-width: 768px) {
	footer {
		font-size: 12pt;
	}
	.footer_icon {
		font-size: 35pt;
	}
}

.ticket {
	width: 150px;
	margin:0 0 1px;
	vertical-align :bottom;
	/*
	width: 105px;
	vertical-align :bottom;
	*/
}

.quantity {
	display: inline;
	margin-left: 20px;
	font-size: 21pt;
}

.card-ticket {
	display: inline-block;
	width: 100px;
}
.card-ticket-50 {
	display: inline-block;
	width: 70px;
}

/* CUSTOMIZE THE CAROUSEL
-------------------------------------------------- */

/* Carousel base class */
.carousel {
	/*
	margin-bottom: 4rem;
	*/
}
/* Since positioning the image, we need to help out the caption */
.carousel-caption {
	/*
	bottom: 3rem;
	z-index: 10;
	*/
	bottom: 0.5rem;
	height: 1px;
}

/* Declare heights because of positioning of img element */
.carousel-item {
	/*
	height: 32rem;
	*/
	aspect-ratio: 39 / 10;
}
.carousel-item > img {
	position: absolute;
	top: 0;
	left: 0;
	min-width: 100%;
	/*
	height: 32rem;
	aspect-ratio: 4 / 3;
	*/
}

/* RESPONSIVE CSS
-------------------------------------------------- */
@media (min-width: 40em) {
	/* Bump up size of carousel content */
	.carousel-caption p {
		margin-bottom: 1.25rem;
		font-size: 1.25rem;
		line-height: 1.4;
	}
}


.bd-placeholder-img {
	font-size: 1.125rem;
	text-anchor: middle;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
}

@media (min-width: 768px) {
	.bd-placeholder-img-lg {
		font-size: 3.5rem;
	}
}



/*--------------------------------------------------------------
** OC
--------------------------------------------------------------*/
.form-signin {
	width: 100%;
	max-width: 330px;
	padding: 15px;
	margin: auto;
}

.form-signin input[type="text"] {
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}

.form-signin input[type="password"] {
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}


.signin_link a {
	color: #6c757d;
	text-decoration: none;
}
.signin_link a :hover {
	color: #6c757d;
}


.w-100m {
	margin: 0 auto;
	width: calc(100% - 10px) !important;
}



/*--------------------------------------------------------------
** privacy policy
--------------------------------------------------------------*/
.icon-list {
	padding-left: 20px;
	list-style: none;
}
.icon-list li {
	display: flex;
	align-items: flex-start;
	margin-bottom: .25rem;
}
.icon-list li::before {
	display: block;
	flex-shrink: 0;
	width: 1.5em;
	height: 1.5em;
	margin-right: .5rem;
	content: "";
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23212529' viewBox='0 0 16 16'%3E%3Cpath d='M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0zM4.5 7.5a.5.5 0 0 0 0 1h5.793l-2.147 2.146a.5.5 0 0 0 .708.708l3-3a.5.5 0 0 0 0-.708l-3-3a.5.5 0 1 0-.708.708L10.293 7.5H4.5z'/%3E%3C/svg%3E") no-repeat center center / 100% auto;
}

/*--------------------------------------------------------------
** Tab Nav
--------------------------------------------------------------*/
.nav-link {
	display: block;
	padding: 0.5rem 1rem;
	color: #000000;
	text-decoration: none;
	transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
	color: #495057;
	background-color: #f2f2f2;
	border-color: #dee2e6 #dee2e6 #f2f2f2;
}

.page-item.disabled .page-link {
	color: #6c757d;
	pointer-events: none;
	background-color: #f2f2f2;
	border-color: #dee2e6;
}
