@charset "UTF-8";

/*
 * Bootstrap v4.5.0 (https://getbootstrap.com/)
 * Copyright 2011-2020 The Bootstrap Authors
 * Copyright 2011-2020 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */

@import url(/takeuchi/fonts/style.css);
:root {
	--blue: #007bff;
	--indigo: #6610f2;
	--purple: #6f42c1;
	--pink: #e83e8c;
	--red: #dc3545;
	--orange: #fd7e14;
	--yellow: #ffc107;
	--green: #28a745;
	--teal: #20c997;
	--cyan: #17a2b8;
	--white: #fff;
	--gray: #6c757d;
	--gray-dark: #343a40;
	--primary: #0056b3;
	--secondary: #6c757d;
	--success: #28a745;
	--info: #17a2b8;
	--warning: #ffc107;
	--danger: #e12616;
	--light: #f8f9fa;
	--dark: #232323;
	--breakpoint-xs: 0;
	--breakpoint-lg: 992px;
	--font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	--font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace
}

*,
:after,
:before {
	box-sizing: border-box
}

html {
	font-family: sans-serif;
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

article,
aside,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section {
	display: block
}

body {
	margin: 0;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	font-size: 1rem;
	font-weight: 400;
	color: #212529;
	text-align: left;
	background-color: #fff
}

[tabindex="-1"]:focus:not(:focus-visible) {
	outline: 0!important
}

hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin-top: 0;
	margin-bottom: 0.5rem
}

p {
	margin-top: 0;
	margin-bottom: 1rem
}

abbr[data-original-title],
abbr[title] {
	text-decoration: underline;
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted;
	cursor: help;
	border-bottom: 0;
	text-decoration-skip-ink: none
}

address {
	margin-bottom: 1rem;
	font-style: normal;
	line-height: inherit
}

dl,
ol,
ul {
	margin-top: 0;
	margin-bottom: 1rem
}

ol ol,
ol ul,
ul ol,
ul ul {
	margin-bottom: 0
}

dt {
	font-weight: 700
}

dd {
	margin-bottom: .5rem;
	margin-left: 0
}

blockquote {
	margin: 0 0 1rem
}

b,
strong {
	font-weight: bolder
}

small {
	font-size: 80%
}

sub,
sup {
	position: relative;
	font-size: 75%;
	line-height: 0;
	vertical-align: baseline
}

sub {
	bottom: -.25em
}

sup {
	top: -.5em
}

a {
	color: #0056b3;
	text-decoration: none;
	background-color: transparent
}

a:hover {
	color: #003167;
	text-decoration: underline
}

a:not([href]) {
	color: inherit;
	text-decoration: none
}

a:not([href]):hover {
	color: inherit;
	text-decoration: none
}

code,
kbd,
pre,
samp {
	font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
	font-size: 1em
}

pre {
	margin-top: 0;
	margin-bottom: 1rem;
	overflow: auto;
	-ms-overflow-style: scrollbar
}

figure {
	margin: 0 0 1rem
}

img {
	vertical-align: middle;
	border-style: none
}

svg {
	overflow: hidden;
	vertical-align: middle
}

table {
	border-collapse: collapse
}

caption {
	padding-top: 0.75rem;
	padding-bottom: 0.75rem;
	color: #6c757d;
	text-align: left;
	caption-side: bottom
}

th {
	text-align: inherit
}

label {
	display: inline-block;
	margin-bottom: 0.5rem
}

button {
	border-radius: 0
}

button:focus {
	outline: 1px dotted;
	outline: 5px auto -webkit-focus-ring-color
}

button,
input,
optgroup,
select,
textarea {
	margin: 0;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit
}

button,
input {
	overflow: visible
}

button,
select {
	text-transform: none
}

[role=button] {
	cursor: pointer
}

select {
	word-wrap: normal
}

[type=button],
[type=reset],
[type=submit],
button {
	-webkit-appearance: button
}

[type=button]:not(:disabled),
[type=reset]:not(:disabled),
[type=submit]:not(:disabled),
button:not(:disabled) {
	cursor: pointer
}

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
	padding: 0;
	border-style: none
}

input[type=checkbox],
input[type=radio] {
	box-sizing: border-box;
	padding: 0
}

textarea {
	overflow: auto;
	resize: vertical
}

fieldset {
	min-width: 0;
	padding: 0;
	margin: 0;
	border: 0
}

legend {
	display: block;
	width: 100%;
	max-width: 100%;
	padding: 0;
	margin-bottom: .5rem;
	font-size: 1.5rem;
	line-height: inherit;
	color: inherit;
	white-space: normal
}

progress {
	vertical-align: baseline
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
	height: auto
}

[type=search] {
	outline-offset: -2px;
	-webkit-appearance: none
}

[type=search]::-webkit-search-decoration {
	-webkit-appearance: none
}

::-webkit-file-upload-button {
	font: inherit;
	-webkit-appearance: button
}

output {
	display: inline-block
}

summary {
	display: list-item;
	cursor: pointer
}

template {
	display: none
}

[hidden] {
	display: none!important
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
	margin-bottom: 0.5rem;
	font-weight: 500;
	line-height: 1.2
}

.h1,
h1 {
	font-size: 2.5rem
}

.h2,
h2 {
	font-size: 2rem
}

.h3,
h3 {
	font-size: 1.75rem
}

.h4,
h4 {
	font-size: 1.5rem
}

.h5,
h5 {
	font-size: 1.25rem
}

.h6,
h6 {
	font-size: 1rem
}

.lead {
	font-size: 1.25rem;
	font-weight: 300
}

.display-1 {
	font-size: 6rem;
	font-weight: 300;
	line-height: 1.2
}

.display-2 {
	font-size: 5.5rem;
	font-weight: 300;
	line-height: 1.2
}

.display-3 {
	font-size: 4.5rem;
	font-weight: 300;
	line-height: 1.2
}

.display-4 {
	font-size: 3.5rem;
	font-weight: 300;
	line-height: 1.2
}

hr {
	margin-top: 1rem;
	margin-bottom: 1rem;
	border: 0;
	border-top: 1px solid rgba(0, 0, 0, 0.1)
}

.small,
small {
	font-size: 80%;
	font-weight: 400
}

.mark,
mark {
	padding: 0.2em;
	background-color: #fcf8e3
}

.list-unstyled {
	padding-left: 0;
	list-style: none
}

.list-inline {
	padding-left: 0;
	list-style: none
}

.list-inline-item {
	display: inline-block
}

.list-inline-item:not(:last-child) {
	margin-right: 0.5rem
}

.initialism {
	font-size: 90%;
	text-transform: uppercase
}

.blockquote {
	margin-bottom: 1rem;
	font-size: 1.25rem
}

.blockquote-footer {
	display: block;
	font-size: 80%;
	color: #6c757d
}

.blockquote-footer:before {
	content: "\2014\00A0"
}

.img-fluid {
	max-width: 100%;
	height: auto
}

.img-thumbnail {
	padding: 0.25rem;
	background-color: #fff;
	border: 1px solid #dee2e6;
	border-radius: 0.25rem;
	max-width: 100%;
	height: auto
}

.figure {
	display: inline-block
}

.figure-img {
	margin-bottom: 0.5rem;
	line-height: 1
}

.figure-caption {
	font-size: 90%;
	color: #6c757d
}

.container {
	width: 100%;
	padding-right: 15px;
	padding-left: 15px;
	margin-right: auto;
	margin-left: auto;
	max-width: 1140px
}

.container-fluid,
.container-xl {
	width: 100%;
	padding-right: 15px;
	padding-left: 15px;
	margin-right: auto;
	margin-left: auto
}

.container,
.container-lg {
	max-width: 1140px
}

.row {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-right: -15px;
	margin-left: -15px
}

.no-gutters {
	margin-right: 0;
	margin-left: 0
}

.no-gutters>.col,
.no-gutters>[class*=col-] {
	padding-right: 0;
	padding-left: 0
}

.col,
.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12,
.col-auto,
.col-lg,
.col-lg-1,
.col-lg-2,
.col-lg-3,
.col-lg-4,
.col-lg-5,
.col-lg-6,
.col-lg-7,
.col-lg-8,
.col-lg-9,
.col-lg-10,
.col-lg-11,
.col-lg-12,
.col-lg-auto {
	position: relative;
	width: 100%;
	padding-right: 15px;
	padding-left: 15px
}

.col {
	-ms-flex-preferred-size: 0;
	flex-basis: 0;
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
	min-width: 0;
	max-width: 100%
}

.row-cols-1>* {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
	max-width: 100%
}

.row-cols-2>* {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 50%;
	flex: 0 0 50%;
	max-width: 50%
}

.row-cols-3>* {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 33.33333%;
	flex: 0 0 33.33333%;
	max-width: 33.33333%
}

.row-cols-4>* {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 25%;
	flex: 0 0 25%;
	max-width: 25%
}

.row-cols-5>* {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 20%;
	flex: 0 0 20%;
	max-width: 20%
}

.row-cols-6>* {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 16.66667%;
	flex: 0 0 16.66667%;
	max-width: 16.66667%
}

.col-auto {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
	width: auto;
	max-width: 100%
}

.col-1 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 8.33333%;
	flex: 0 0 8.33333%;
	max-width: 8.33333%
}

.col-2 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 16.66667%;
	flex: 0 0 16.66667%;
	max-width: 16.66667%
}

.col-3 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 25%;
	flex: 0 0 25%;
	max-width: 25%
}

.col-4 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 33.33333%;
	flex: 0 0 33.33333%;
	max-width: 33.33333%
}

.col-5 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 41.66667%;
	flex: 0 0 41.66667%;
	max-width: 41.66667%
}

.col-6 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 50%;
	flex: 0 0 50%;
	max-width: 50%
}

.col-7 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 58.33333%;
	flex: 0 0 58.33333%;
	max-width: 58.33333%
}

.col-8 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 66.66667%;
	flex: 0 0 66.66667%;
	max-width: 66.66667%
}

.col-9 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 75%;
	flex: 0 0 75%;
	max-width: 75%
}

.col-10 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 83.33333%;
	flex: 0 0 83.33333%;
	max-width: 83.33333%
}

.col-11 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 91.66667%;
	flex: 0 0 91.66667%;
	max-width: 91.66667%
}

.col-12 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
	max-width: 100%
}

.order-first {
	-webkit-box-ordinal-group: 0;
	-ms-flex-order: -1;
	order: -1
}

.order-last {
	-webkit-box-ordinal-group: 14;
	-ms-flex-order: 13;
	order: 13
}

.order-0 {
	-webkit-box-ordinal-group: 1;
	-ms-flex-order: 0;
	order: 0
}

.order-1 {
	-webkit-box-ordinal-group: 2;
	-ms-flex-order: 1;
	order: 1
}

.order-2 {
	-webkit-box-ordinal-group: 3;
	-ms-flex-order: 2;
	order: 2
}

.order-3 {
	-webkit-box-ordinal-group: 4;
	-ms-flex-order: 3;
	order: 3
}

.order-4 {
	-webkit-box-ordinal-group: 5;
	-ms-flex-order: 4;
	order: 4
}

.order-5 {
	-webkit-box-ordinal-group: 6;
	-ms-flex-order: 5;
	order: 5
}

.order-6 {
	-webkit-box-ordinal-group: 7;
	-ms-flex-order: 6;
	order: 6
}

.order-7 {
	-webkit-box-ordinal-group: 8;
	-ms-flex-order: 7;
	order: 7
}

.order-8 {
	-webkit-box-ordinal-group: 9;
	-ms-flex-order: 8;
	order: 8
}

.order-9 {
	-webkit-box-ordinal-group: 10;
	-ms-flex-order: 9;
	order: 9
}

.order-10 {
	-webkit-box-ordinal-group: 11;
	-ms-flex-order: 10;
	order: 10
}

.order-11 {
	-webkit-box-ordinal-group: 12;
	-ms-flex-order: 11;
	order: 11
}

.order-12 {
	-webkit-box-ordinal-group: 13;
	-ms-flex-order: 12;
	order: 12
}

.offset-1 {
	margin-left: 8.33333%
}

.offset-2 {
	margin-left: 16.66667%
}

.offset-3 {
	margin-left: 25%
}

.offset-4 {
	margin-left: 33.33333%
}

.offset-5 {
	margin-left: 41.66667%
}

.offset-6 {
	margin-left: 50%
}

.offset-7 {
	margin-left: 58.33333%
}

.offset-8 {
	margin-left: 66.66667%
}

.offset-9 {
	margin-left: 75%
}

.offset-10 {
	margin-left: 83.33333%
}

.offset-11 {
	margin-left: 91.66667%
}

@media (min-width:992px) {
	.col-lg {
		-ms-flex-preferred-size: 0;
		flex-basis: 0;
		-webkit-box-flex: 1;
		-ms-flex-positive: 1;
		flex-grow: 1;
		min-width: 0;
		max-width: 100%
	}
	.row-cols-lg-1>* {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 100%;
		flex: 0 0 100%;
		max-width: 100%
	}
	.row-cols-lg-2>* {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 50%;
		flex: 0 0 50%;
		max-width: 50%
	}
	.row-cols-lg-3>* {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 33.33333%;
		flex: 0 0 33.33333%;
		max-width: 33.33333%
	}
	.row-cols-lg-4>* {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 25%;
		flex: 0 0 25%;
		max-width: 25%
	}
	.row-cols-lg-5>* {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 20%;
		flex: 0 0 20%;
		max-width: 20%
	}
	.row-cols-lg-6>* {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 16.66667%;
		flex: 0 0 16.66667%;
		max-width: 16.66667%
	}
	.col-lg-auto {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
		width: auto;
		max-width: 100%
	}
	.col-lg-1 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 8.33333%;
		flex: 0 0 8.33333%;
		max-width: 8.33333%
	}
	.col-lg-2 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 16.66667%;
		flex: 0 0 16.66667%;
		max-width: 16.66667%
	}
	.col-lg-3 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 25%;
		flex: 0 0 25%;
		max-width: 25%
	}
	.col-lg-4 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 33.33333%;
		flex: 0 0 33.33333%;
		max-width: 33.33333%
	}
	.col-lg-5 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 41.66667%;
		flex: 0 0 41.66667%;
		max-width: 41.66667%
	}
	.col-lg-6 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 50%;
		flex: 0 0 50%;
		max-width: 50%
	}
	.col-lg-7 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 58.33333%;
		flex: 0 0 58.33333%;
		max-width: 58.33333%
	}
	.col-lg-8 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 66.66667%;
		flex: 0 0 66.66667%;
		max-width: 66.66667%
	}
	.col-lg-9 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 75%;
		flex: 0 0 75%;
		max-width: 75%
	}
	.col-lg-10 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 83.33333%;
		flex: 0 0 83.33333%;
		max-width: 83.33333%
	}
	.col-lg-11 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 91.66667%;
		flex: 0 0 91.66667%;
		max-width: 91.66667%
	}
	.col-lg-12 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 100%;
		flex: 0 0 100%;
		max-width: 100%
	}
	.order-lg-first {
		-webkit-box-ordinal-group: 0;
		-ms-flex-order: -1;
		order: -1
	}
	.order-lg-last {
		-webkit-box-ordinal-group: 14;
		-ms-flex-order: 13;
		order: 13
	}
	.order-lg-0 {
		-webkit-box-ordinal-group: 1;
		-ms-flex-order: 0;
		order: 0
	}
	.order-lg-1 {
		-webkit-box-ordinal-group: 2;
		-ms-flex-order: 1;
		order: 1
	}
	.order-lg-2 {
		-webkit-box-ordinal-group: 3;
		-ms-flex-order: 2;
		order: 2
	}
	.order-lg-3 {
		-webkit-box-ordinal-group: 4;
		-ms-flex-order: 3;
		order: 3
	}
	.order-lg-4 {
		-webkit-box-ordinal-group: 5;
		-ms-flex-order: 4;
		order: 4
	}
	.order-lg-5 {
		-webkit-box-ordinal-group: 6;
		-ms-flex-order: 5;
		order: 5
	}
	.order-lg-6 {
		-webkit-box-ordinal-group: 7;
		-ms-flex-order: 6;
		order: 6
	}
	.order-lg-7 {
		-webkit-box-ordinal-group: 8;
		-ms-flex-order: 7;
		order: 7
	}
	.order-lg-8 {
		-webkit-box-ordinal-group: 9;
		-ms-flex-order: 8;
		order: 8
	}
	.order-lg-9 {
		-webkit-box-ordinal-group: 10;
		-ms-flex-order: 9;
		order: 9
	}
	.order-lg-10 {
		-webkit-box-ordinal-group: 11;
		-ms-flex-order: 10;
		order: 10
	}
	.order-lg-11 {
		-webkit-box-ordinal-group: 12;
		-ms-flex-order: 11;
		order: 11
	}
	.order-lg-12 {
		-webkit-box-ordinal-group: 13;
		-ms-flex-order: 12;
		order: 12
	}
	.offset-lg-0 {
		margin-left: 0
	}
	.offset-lg-1 {
		margin-left: 8.33333%
	}
	.offset-lg-2 {
		margin-left: 16.66667%
	}
	.offset-lg-3 {
		margin-left: 25%
	}
	.offset-lg-4 {
		margin-left: 33.33333%
	}
	.offset-lg-5 {
		margin-left: 41.66667%
	}
	.offset-lg-6 {
		margin-left: 50%
	}
	.offset-lg-7 {
		margin-left: 58.33333%
	}
	.offset-lg-8 {
		margin-left: 66.66667%
	}
	.offset-lg-9 {
		margin-left: 75%
	}
	.offset-lg-10 {
		margin-left: 83.33333%
	}
	.offset-lg-11 {
		margin-left: 91.66667%
	}
}

.toast {
	max-width: 350px;
	overflow: hidden;
	font-size: 0.875rem;
	background-color: rgba(255, 255, 255, 0.85);
	background-clip: padding-box;
	border: 1px solid rgba(0, 0, 0, 0.1);
	-webkit-box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
	box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	opacity: 0;
	border-radius: 0.25rem
}

.toast:not(:last-child) {
	margin-bottom: 0.75rem
}

.toast.showing {
	opacity: 1
}

.toast.show {
	display: block;
	opacity: 1
}

.toast.hide {
	display: none
}

.toast-header {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 0.25rem 0.75rem;
	color: #6c757d;
	background-color: rgba(255, 255, 255, 0.85);
	background-clip: padding-box;
	border-bottom: 1px solid rgba(0, 0, 0, 0.05)
}

.toast-body {
	padding: 0.75rem
}

@-webkit-keyframes spinner-border {
	to {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg)
	}
}

@keyframes spinner-border {
	to {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg)
	}
}

.spinner-border {
	display: inline-block;
	width: 2rem;
	height: 2rem;
	vertical-align: text-bottom;
	border: 0.25em solid currentColor;
	border-right-color: transparent;
	border-radius: 50%;
	-webkit-animation: spinner-border .75s linear infinite;
	animation: spinner-border .75s linear infinite
}

.spinner-border-sm {
	width: 1rem;
	height: 1rem;
	border-width: 0.2em
}

@-webkit-keyframes spinner-grow {
	0% {
		-webkit-transform: scale(0);
		transform: scale(0)
	}
	50% {
		opacity: 1;
		-webkit-transform: none;
		transform: none
	}
}

@keyframes spinner-grow {
	0% {
		-webkit-transform: scale(0);
		transform: scale(0)
	}
	50% {
		opacity: 1;
		-webkit-transform: none;
		transform: none
	}
}

.spinner-grow {
	display: inline-block;
	width: 2rem;
	height: 2rem;
	vertical-align: text-bottom;
	background-color: currentColor;
	border-radius: 50%;
	opacity: 0;
	-webkit-animation: spinner-grow .75s linear infinite;
	animation: spinner-grow .75s linear infinite
}

.spinner-grow-sm {
	width: 1rem;
	height: 1rem
}

.align-baseline {
	vertical-align: baseline!important
}

.align-top {
	vertical-align: top!important
}

.align-middle {
	vertical-align: middle!important
}

.align-bottom {
	vertical-align: bottom!important
}

.align-text-bottom {
	vertical-align: text-bottom!important
}

.align-text-top {
	vertical-align: text-top!important
}

.bg-primary {
	background-color: #0056b3!important
}

a.bg-primary:focus,
a.bg-primary:hover,
button.bg-primary:focus,
button.bg-primary:hover {
	background-color: #003d80!important
}

.bg-secondary {
	background-color: #6c757d!important
}

a.bg-secondary:focus,
a.bg-secondary:hover,
button.bg-secondary:focus,
button.bg-secondary:hover {
	background-color: #545b62!important
}

.bg-success {
	background-color: #28a745!important
}

a.bg-success:focus,
a.bg-success:hover,
button.bg-success:focus,
button.bg-success:hover {
	background-color: #1e7e34!important
}

.bg-info {
	background-color: #17a2b8!important
}

a.bg-info:focus,
a.bg-info:hover,
button.bg-info:focus,
button.bg-info:hover {
	background-color: #117a8b!important
}

.bg-warning {
	background-color: #ffc107!important
}

a.bg-warning:focus,
a.bg-warning:hover,
button.bg-warning:focus,
button.bg-warning:hover {
	background-color: #d39e00!important
}

.bg-danger {
	background-color: #e12616!important
}

a.bg-danger:focus,
a.bg-danger:hover,
button.bg-danger:focus,
button.bg-danger:hover {
	background-color: #b31e11!important
}

.bg-light {
	background-color: #f8f9fa!important
}

a.bg-light:focus,
a.bg-light:hover,
button.bg-light:focus,
button.bg-light:hover {
	background-color: #dae0e5!important
}

.bg-dark {
	background-color: #232323!important
}

a.bg-dark:focus,
a.bg-dark:hover,
button.bg-dark:focus,
button.bg-dark:hover {
	background-color: #0a0a0a!important
}

.bg-white {
	background-color: #fff!important
}

.bg-transparent {
	background-color: transparent!important
}

.border {
	border: 1px solid #dee2e6!important
}

.border-top {
	border-top: 1px solid #dee2e6!important
}

.border-right {
	border-right: 1px solid #dee2e6!important
}

.border-bottom {
	border-bottom: 1px solid #dee2e6!important
}

.border-left {
	border-left: 1px solid #dee2e6!important
}

.border-0 {
	border: 0!important
}

.border-top-0 {
	border-top: 0!important
}

.border-right-0 {
	border-right: 0!important
}

.border-bottom-0 {
	border-bottom: 0!important
}

.border-left-0 {
	border-left: 0!important
}

.border-primary {
	border-color: #0056b3!important
}

.border-secondary {
	border-color: #6c757d!important
}

.border-success {
	border-color: #28a745!important
}

.border-info {
	border-color: #17a2b8!important
}

.border-warning {
	border-color: #ffc107!important
}

.border-danger {
	border-color: #e12616!important
}

.border-light {
	border-color: #f8f9fa!important
}

.border-dark {
	border-color: #232323!important
}

.border-white {
	border-color: #fff!important
}

.rounded-sm {
	border-radius: 0.2rem!important
}

.rounded {
	border-radius: 0.25rem!important
}

.rounded-top {
	border-top-left-radius: 0.25rem!important;
	border-top-right-radius: 0.25rem!important
}

.rounded-right {
	border-top-right-radius: 0.25rem!important;
	border-bottom-right-radius: 0.25rem!important
}

.rounded-bottom {
	border-bottom-right-radius: 0.25rem!important;
	border-bottom-left-radius: 0.25rem!important
}

.rounded-left {
	border-top-left-radius: 0.25rem!important;
	border-bottom-left-radius: 0.25rem!important
}

.rounded-lg {
	border-radius: 0.3rem!important
}

.rounded-circle {
	border-radius: 50%!important
}

.rounded-pill {
	border-radius: 50rem!important
}

.rounded-0 {
	border-radius: 0!important
}

.clearfix:after {
	display: block;
	clear: both;
	content: ""
}

.d-none {
	display: none!important
}

.d-inline {
	display: inline!important
}

.d-inline-block {
	display: inline-block!important
}

.d-block {
	display: block!important
}

.d-table {
	display: table!important
}

.d-table-row {
	display: table-row!important
}

.d-table-cell {
	display: table-cell!important
}

.d-flex {
	display: -webkit-box!important;
	display: -ms-flexbox!important;
	display: flex!important
}

.d-inline-flex {
	display: -webkit-inline-box!important;
	display: -ms-inline-flexbox!important;
	display: inline-flex!important
}

@media (min-width:992px) {
	.d-lg-none {
		display: none!important
	}
	.d-lg-inline {
		display: inline!important
	}
	.d-lg-inline-block {
		display: inline-block!important
	}
	.d-lg-block {
		display: block!important
	}
	.d-lg-table {
		display: table!important
	}
	.d-lg-table-row {
		display: table-row!important
	}
	.d-lg-table-cell {
		display: table-cell!important
	}
	.d-lg-flex {
		display: -webkit-box!important;
		display: -ms-flexbox!important;
		display: flex!important
	}
	.d-lg-inline-flex {
		display: -webkit-inline-box!important;
		display: -ms-inline-flexbox!important;
		display: inline-flex!important
	}
}

@media print {
	.d-print-none {
		display: none!important
	}
	.d-print-inline {
		display: inline!important
	}
	.d-print-inline-block {
		display: inline-block!important
	}
	.d-print-block {
		display: block!important
	}
	.d-print-table {
		display: table!important
	}
	.d-print-table-row {
		display: table-row!important
	}
	.d-print-table-cell {
		display: table-cell!important
	}
	.d-print-flex {
		display: -webkit-box!important;
		display: -ms-flexbox!important;
		display: flex!important
	}
	.d-print-inline-flex {
		display: -webkit-inline-box!important;
		display: -ms-inline-flexbox!important;
		display: inline-flex!important
	}
}

.embed-responsive {
	position: relative;
	display: block;
	width: 100%;
	padding: 0;
	overflow: hidden
}

.embed-responsive:before {
	display: block;
	content: ""
}

.embed-responsive .embed-responsive-item,
.embed-responsive embed,
.embed-responsive iframe,
.embed-responsive object,
.embed-responsive video {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0
}

.embed-responsive-21by9:before {
	padding-top: 42.85714%
}

.embed-responsive-16by9:before {
	padding-top: 56.25%
}

.embed-responsive-4by3:before {
	padding-top: 75%
}

.embed-responsive-1by1:before {
	padding-top: 100%
}

.flex-row {
	-webkit-box-orient: horizontal!important;
	-webkit-box-direction: normal!important;
	-ms-flex-direction: row!important;
	flex-direction: row!important
}

.flex-column {
	-webkit-box-orient: vertical!important;
	-webkit-box-direction: normal!important;
	-ms-flex-direction: column!important;
	flex-direction: column!important
}

.flex-row-reverse {
	-webkit-box-orient: horizontal!important;
	-webkit-box-direction: reverse!important;
	-ms-flex-direction: row-reverse!important;
	flex-direction: row-reverse!important
}

.flex-column-reverse {
	-webkit-box-orient: vertical!important;
	-webkit-box-direction: reverse!important;
	-ms-flex-direction: column-reverse!important;
	flex-direction: column-reverse!important
}

.flex-wrap {
	-ms-flex-wrap: wrap!important;
	flex-wrap: wrap!important
}

.flex-nowrap {
	-ms-flex-wrap: nowrap!important;
	flex-wrap: nowrap!important
}

.flex-wrap-reverse {
	-ms-flex-wrap: wrap-reverse!important;
	flex-wrap: wrap-reverse!important
}

.flex-fill {
	-webkit-box-flex: 1!important;
	-ms-flex: 1 1 auto!important;
	flex: 1 1 auto!important
}

.flex-grow-0 {
	-webkit-box-flex: 0!important;
	-ms-flex-positive: 0!important;
	flex-grow: 0!important
}

.flex-grow-1 {
	-webkit-box-flex: 1!important;
	-ms-flex-positive: 1!important;
	flex-grow: 1!important
}

.flex-shrink-0 {
	-ms-flex-negative: 0!important;
	flex-shrink: 0!important
}

.flex-shrink-1 {
	-ms-flex-negative: 1!important;
	flex-shrink: 1!important
}

.justify-content-start {
	-webkit-box-pack: start!important;
	-ms-flex-pack: start!important;
	justify-content: flex-start!important
}

.justify-content-end {
	-webkit-box-pack: end!important;
	-ms-flex-pack: end!important;
	justify-content: flex-end!important
}

.justify-content-center {
	-webkit-box-pack: center!important;
	-ms-flex-pack: center!important;
	justify-content: center!important
}

.justify-content-between {
	-webkit-box-pack: justify!important;
	-ms-flex-pack: justify!important;
	justify-content: space-between!important
}

.justify-content-around {
	-ms-flex-pack: distribute!important;
	justify-content: space-around!important
}

.align-items-start {
	-webkit-box-align: start!important;
	-ms-flex-align: start!important;
	align-items: flex-start!important
}

.align-items-end {
	-webkit-box-align: end!important;
	-ms-flex-align: end!important;
	align-items: flex-end!important
}

.align-items-center {
	-webkit-box-align: center!important;
	-ms-flex-align: center!important;
	align-items: center!important
}

.align-items-baseline {
	-webkit-box-align: baseline!important;
	-ms-flex-align: baseline!important;
	align-items: baseline!important
}

.align-items-stretch {
	-webkit-box-align: stretch!important;
	-ms-flex-align: stretch!important;
	align-items: stretch!important
}

.align-content-start {
	-ms-flex-line-pack: start!important;
	align-content: flex-start!important
}

.align-content-end {
	-ms-flex-line-pack: end!important;
	align-content: flex-end!important
}

.align-content-center {
	-ms-flex-line-pack: center!important;
	align-content: center!important
}

.align-content-between {
	-ms-flex-line-pack: justify!important;
	align-content: space-between!important
}

.align-content-around {
	-ms-flex-line-pack: distribute!important;
	align-content: space-around!important
}

.align-content-stretch {
	-ms-flex-line-pack: stretch!important;
	align-content: stretch!important
}

.align-self-auto {
	-ms-flex-item-align: auto!important;
	-ms-grid-row-align: auto!important;
	align-self: auto!important
}

.align-self-start {
	-ms-flex-item-align: start!important;
	align-self: flex-start!important
}

.align-self-end {
	-ms-flex-item-align: end!important;
	align-self: flex-end!important
}

.align-self-center {
	-ms-flex-item-align: center!important;
	-ms-grid-row-align: center!important;
	align-self: center!important
}

.align-self-baseline {
	-ms-flex-item-align: baseline!important;
	align-self: baseline!important
}

.align-self-stretch {
	-ms-flex-item-align: stretch!important;
	-ms-grid-row-align: stretch!important;
	align-self: stretch!important
}

@media (min-width:992px) {
	.flex-lg-row {
		-webkit-box-orient: horizontal!important;
		-webkit-box-direction: normal!important;
		-ms-flex-direction: row!important;
		flex-direction: row!important
	}
	.flex-lg-column {
		-webkit-box-orient: vertical!important;
		-webkit-box-direction: normal!important;
		-ms-flex-direction: column!important;
		flex-direction: column!important
	}
	.flex-lg-row-reverse {
		-webkit-box-orient: horizontal!important;
		-webkit-box-direction: reverse!important;
		-ms-flex-direction: row-reverse!important;
		flex-direction: row-reverse!important
	}
	.flex-lg-column-reverse {
		-webkit-box-orient: vertical!important;
		-webkit-box-direction: reverse!important;
		-ms-flex-direction: column-reverse!important;
		flex-direction: column-reverse!important
	}
	.flex-lg-wrap {
		-ms-flex-wrap: wrap!important;
		flex-wrap: wrap!important
	}
	.flex-lg-nowrap {
		-ms-flex-wrap: nowrap!important;
		flex-wrap: nowrap!important
	}
	.flex-lg-wrap-reverse {
		-ms-flex-wrap: wrap-reverse!important;
		flex-wrap: wrap-reverse!important
	}
	.flex-lg-fill {
		-webkit-box-flex: 1!important;
		-ms-flex: 1 1 auto!important;
		flex: 1 1 auto!important
	}
	.flex-lg-grow-0 {
		-webkit-box-flex: 0!important;
		-ms-flex-positive: 0!important;
		flex-grow: 0!important
	}
	.flex-lg-grow-1 {
		-webkit-box-flex: 1!important;
		-ms-flex-positive: 1!important;
		flex-grow: 1!important
	}
	.flex-lg-shrink-0 {
		-ms-flex-negative: 0!important;
		flex-shrink: 0!important
	}
	.flex-lg-shrink-1 {
		-ms-flex-negative: 1!important;
		flex-shrink: 1!important
	}
	.justify-content-lg-start {
		-webkit-box-pack: start!important;
		-ms-flex-pack: start!important;
		justify-content: flex-start!important
	}
	.justify-content-lg-end {
		-webkit-box-pack: end!important;
		-ms-flex-pack: end!important;
		justify-content: flex-end!important
	}
	.justify-content-lg-center {
		-webkit-box-pack: center!important;
		-ms-flex-pack: center!important;
		justify-content: center!important
	}
	.justify-content-lg-between {
		-webkit-box-pack: justify!important;
		-ms-flex-pack: justify!important;
		justify-content: space-between!important
	}
	.justify-content-lg-around {
		-ms-flex-pack: distribute!important;
		justify-content: space-around!important
	}
	.align-items-lg-start {
		-webkit-box-align: start!important;
		-ms-flex-align: start!important;
		align-items: flex-start!important
	}
	.align-items-lg-end {
		-webkit-box-align: end!important;
		-ms-flex-align: end!important;
		align-items: flex-end!important
	}
	.align-items-lg-center {
		-webkit-box-align: center!important;
		-ms-flex-align: center!important;
		align-items: center!important
	}
	.align-items-lg-baseline {
		-webkit-box-align: baseline!important;
		-ms-flex-align: baseline!important;
		align-items: baseline!important
	}
	.align-items-lg-stretch {
		-webkit-box-align: stretch!important;
		-ms-flex-align: stretch!important;
		align-items: stretch!important
	}
	.align-content-lg-start {
		-ms-flex-line-pack: start!important;
		align-content: flex-start!important
	}
	.align-content-lg-end {
		-ms-flex-line-pack: end!important;
		align-content: flex-end!important
	}
	.align-content-lg-center {
		-ms-flex-line-pack: center!important;
		align-content: center!important
	}
	.align-content-lg-between {
		-ms-flex-line-pack: justify!important;
		align-content: space-between!important
	}
	.align-content-lg-around {
		-ms-flex-line-pack: distribute!important;
		align-content: space-around!important
	}
	.align-content-lg-stretch {
		-ms-flex-line-pack: stretch!important;
		align-content: stretch!important
	}
	.align-self-lg-auto {
		-ms-flex-item-align: auto!important;
		-ms-grid-row-align: auto!important;
		align-self: auto!important
	}
	.align-self-lg-start {
		-ms-flex-item-align: start!important;
		align-self: flex-start!important
	}
	.align-self-lg-end {
		-ms-flex-item-align: end!important;
		align-self: flex-end!important
	}
	.align-self-lg-center {
		-ms-flex-item-align: center!important;
		-ms-grid-row-align: center!important;
		align-self: center!important
	}
	.align-self-lg-baseline {
		-ms-flex-item-align: baseline!important;
		align-self: baseline!important
	}
	.align-self-lg-stretch {
		-ms-flex-item-align: stretch!important;
		-ms-grid-row-align: stretch!important;
		align-self: stretch!important
	}
}

.float-left {
	float: left!important
}

.float-right {
	float: right!important
}

.float-none {
	float: none!important
}

@media (min-width:992px) {
	.float-lg-left {
		float: left!important
	}
	.float-lg-right {
		float: right!important
	}
	.float-lg-none {
		float: none!important
	}
}

.user-select-all {
	-webkit-user-select: all!important;
	-moz-user-select: all!important;
	-ms-user-select: all!important;
	user-select: all!important
}

.user-select-auto {
	-webkit-user-select: auto!important;
	-moz-user-select: auto!important;
	-ms-user-select: auto!important;
	user-select: auto!important
}

.user-select-none {
	-webkit-user-select: none!important;
	-moz-user-select: none!important;
	-ms-user-select: none!important;
	user-select: none!important
}

.overflow-auto {
	overflow: auto!important
}

.overflow-hidden {
	overflow: hidden!important
}

.position-static {
	position: static!important
}

.position-relative {
	position: relative!important
}

.position-absolute {
	position: absolute!important
}

.position-fixed {
	position: fixed!important
}

.position-sticky {
	position: -webkit-sticky!important;
	position: sticky!important
}

.fixed-top {
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	z-index: 1030
}

.fixed-bottom {
	position: fixed;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1030
}

@supports ((position:-webkit-sticky) or (position:sticky)) {
	.sticky-top {
		position: -webkit-sticky;
		position: sticky;
		top: 0;
		z-index: 1020
	}
}

.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0
}

.sr-only-focusable:active,
.sr-only-focusable:focus {
	position: static;
	width: auto;
	height: auto;
	overflow: visible;
	clip: auto;
	white-space: normal
}

.shadow-sm {
	-webkit-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075)!important;
	box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075)!important
}

.shadow {
	-webkit-box-shadow: 0 3px 0 rgba(0, 0, 0, 0.15)!important;
	box-shadow: 0 3px 0 rgba(0, 0, 0, 0.15)!important
}

.shadow-lg {
	-webkit-box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175)!important;
	box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175)!important
}

.shadow-none {
	-webkit-box-shadow: none!important;
	box-shadow: none!important
}

.w-25 {
	width: 25%!important
}

.w-50 {
	width: 50%!important
}

.w-75 {
	width: 75%!important
}

.w-100 {
	width: 100%!important
}

.w-auto {
	width: auto!important
}

.h-25 {
	height: 25%!important
}

.h-50 {
	height: 50%!important
}

.h-75 {
	height: 75%!important
}

.h-100 {
	height: 100%!important
}

.h-auto {
	height: auto!important
}

.mw-100 {
	max-width: 100%!important
}

.mh-100 {
	max-height: 100%!important
}

.min-vw-100 {
	min-width: 100vw!important
}

.min-vh-100 {
	min-height: 100vh!important
}

.vw-100 {
	width: 100vw!important
}

.vh-100 {
	height: 100vh!important
}

.m-0 {
	margin: 0!important
}

.mt-0,
.my-0 {
	margin-top: 0!important
}

.mr-0,
.mx-0 {
	margin-right: 0!important
}

.mb-0,
.my-0 {
	margin-bottom: 0!important
}

.ml-0,
.mx-0 {
	margin-left: 0!important
}

.m-1 {
	margin: 0.25rem!important
}

.mt-1,
.my-1 {
	margin-top: 0.25rem!important
}

.mr-1,
.mx-1 {
	margin-right: 0.25rem!important
}

.mb-1,
.my-1 {
	margin-bottom: 0.25rem!important
}

.ml-1,
.mx-1 {
	margin-left: 0.25rem!important
}

.m-2 {
	margin: 0.5rem!important
}

.mt-2,
.my-2 {
	margin-top: 0.5rem!important
}

.mr-2,
.mx-2 {
	margin-right: 0.5rem!important
}

.mb-2,
.my-2 {
	margin-bottom: 0.5rem!important
}

.ml-2,
.mx-2 {
	margin-left: 0.5rem!important
}

.m-3 {
	margin: 1rem!important
}

.mt-3,
.my-3 {
	margin-top: 1rem!important
}

.mr-3,
.mx-3 {
	margin-right: 1rem!important
}

.mb-3,
.my-3 {
	margin-bottom: 1rem!important
}

.ml-3,
.mx-3 {
	margin-left: 1rem!important
}

.m-4 {
	margin: 1.5rem!important
}

.mt-4,
.my-4 {
	margin-top: 1.5rem!important
}

.mr-4,
.mx-4 {
	margin-right: 1.5rem!important
}

.mb-4,
.my-4 {
	margin-bottom: 1.5rem!important
}

.ml-4,
.mx-4 {
	margin-left: 1.5rem!important
}

.m-5 {
	margin: 3rem!important
}

.mt-5,
.my-5 {
	margin-top: 3rem!important
}

.mr-5,
.mx-5 {
	margin-right: 3rem!important
}

.mb-5,
.my-5 {
	margin-bottom: 3rem!important
}

.ml-5,
.mx-5 {
	margin-left: 3rem!important
}

.p-0 {
	padding: 0!important
}

.pt-0,
.py-0 {
	padding-top: 0!important
}

.pr-0,
.px-0 {
	padding-right: 0!important
}

.pb-0,
.py-0 {
	padding-bottom: 0!important
}

.pl-0,
.px-0 {
	padding-left: 0!important
}

.p-1 {
	padding: 0.25rem!important
}

.pt-1,
.py-1 {
	padding-top: 0.25rem!important
}

.pr-1,
.px-1 {
	padding-right: 0.25rem!important
}

.pb-1,
.py-1 {
	padding-bottom: 0.25rem!important
}

.pl-1,
.px-1 {
	padding-left: 0.25rem!important
}

.p-2 {
	padding: 0.5rem!important
}

.pt-2,
.py-2 {
	padding-top: 0.5rem!important
}

.pr-2,
.px-2 {
	padding-right: 0.5rem!important
}

.pb-2,
.py-2 {
	padding-bottom: 0.5rem!important
}

.pl-2,
.px-2 {
	padding-left: 0.5rem!important
}

.p-3 {
	padding: 1rem!important
}

.pt-3,
.py-3 {
	padding-top: 1rem!important
}

.pr-3,
.px-3 {
	padding-right: 1rem!important
}

.pb-3,
.py-3 {
	padding-bottom: 1rem!important
}

.pl-3,
.px-3 {
	padding-left: 1rem!important
}

.p-4 {
	padding: 1.5rem!important
}

.pt-4,
.py-4 {
	padding-top: 1.5rem!important
}

.pr-4,
.px-4 {
	padding-right: 1.5rem!important
}

.pb-4,
.py-4 {
	padding-bottom: 1.5rem!important
}

.pl-4,
.px-4 {
	padding-left: 1.5rem!important
}

.p-5 {
	padding: 3rem!important
}

.pt-5,
.py-5 {
	padding-top: 3rem!important
}

.pr-5,
.px-5 {
	padding-right: 3rem!important
}

.pb-5,
.py-5 {
	padding-bottom: 3rem!important
}

.pl-5,
.px-5 {
	padding-left: 3rem!important
}

.m-n1 {
	margin: -0.25rem!important
}

.mt-n1,
.my-n1 {
	margin-top: -0.25rem!important
}

.mr-n1,
.mx-n1 {
	margin-right: -0.25rem!important
}

.mb-n1,
.my-n1 {
	margin-bottom: -0.25rem!important
}

.ml-n1,
.mx-n1 {
	margin-left: -0.25rem!important
}

.m-n2 {
	margin: -0.5rem!important
}

.mt-n2,
.my-n2 {
	margin-top: -0.5rem!important
}

.mr-n2,
.mx-n2 {
	margin-right: -0.5rem!important
}

.mb-n2,
.my-n2 {
	margin-bottom: -0.5rem!important
}

.ml-n2,
.mx-n2 {
	margin-left: -0.5rem!important
}

.m-n3 {
	margin: -1rem!important
}

.mt-n3,
.my-n3 {
	margin-top: -1rem!important
}

.mr-n3,
.mx-n3 {
	margin-right: -1rem!important
}

.mb-n3,
.my-n3 {
	margin-bottom: -1rem!important
}

.ml-n3,
.mx-n3 {
	margin-left: -1rem!important
}

.m-n4 {
	margin: -1.5rem!important
}

.mt-n4,
.my-n4 {
	margin-top: -1.5rem!important
}

.mr-n4,
.mx-n4 {
	margin-right: -1.5rem!important
}

.mb-n4,
.my-n4 {
	margin-bottom: -1.5rem!important
}

.ml-n4,
.mx-n4 {
	margin-left: -1.5rem!important
}

.m-n5 {
	margin: -3rem!important
}

.mt-n5,
.my-n5 {
	margin-top: -3rem!important
}

.mr-n5,
.mx-n5 {
	margin-right: -3rem!important
}

.mb-n5,
.my-n5 {
	margin-bottom: -3rem!important
}

.ml-n5,
.mx-n5 {
	margin-left: -3rem!important
}

.m-auto {
	margin: auto!important
}

.mt-auto,
.my-auto {
	margin-top: auto!important
}

.mr-auto,
.mx-auto {
	margin-right: auto!important
}

.mb-auto,
.my-auto {
	margin-bottom: auto!important
}

.ml-auto,
.mx-auto {
	margin-left: auto!important
}

@media (min-width:992px) {
	.m-lg-0 {
		margin: 0!important
	}
	.mt-lg-0,
	.my-lg-0 {
		margin-top: 0!important
	}
	.mr-lg-0,
	.mx-lg-0 {
		margin-right: 0!important
	}
	.mb-lg-0,
	.my-lg-0 {
		margin-bottom: 0!important
	}
	.ml-lg-0,
	.mx-lg-0 {
		margin-left: 0!important
	}
	.m-lg-1 {
		margin: 0.25rem!important
	}
	.mt-lg-1,
	.my-lg-1 {
		margin-top: 0.25rem!important
	}
	.mr-lg-1,
	.mx-lg-1 {
		margin-right: 0.25rem!important
	}
	.mb-lg-1,
	.my-lg-1 {
		margin-bottom: 0.25rem!important
	}
	.ml-lg-1,
	.mx-lg-1 {
		margin-left: 0.25rem!important
	}
	.m-lg-2 {
		margin: 0.5rem!important
	}
	.mt-lg-2,
	.my-lg-2 {
		margin-top: 0.5rem!important
	}
	.mr-lg-2,
	.mx-lg-2 {
		margin-right: 0.5rem!important
	}
	.mb-lg-2,
	.my-lg-2 {
		margin-bottom: 0.5rem!important
	}
	.ml-lg-2,
	.mx-lg-2 {
		margin-left: 0.5rem!important
	}
	.m-lg-3 {
		margin: 1rem!important
	}
	.mt-lg-3,
	.my-lg-3 {
		margin-top: 1rem!important
	}
	.mr-lg-3,
	.mx-lg-3 {
		margin-right: 1rem!important
	}
	.mb-lg-3,
	.my-lg-3 {
		margin-bottom: 1rem!important
	}
	.ml-lg-3,
	.mx-lg-3 {
		margin-left: 1rem!important
	}
	.m-lg-4 {
		margin: 1.5rem!important
	}
	.mt-lg-4,
	.my-lg-4 {
		margin-top: 1.5rem!important
	}
	.mr-lg-4,
	.mx-lg-4 {
		margin-right: 1.5rem!important
	}
	.mb-lg-4,
	.my-lg-4 {
		margin-bottom: 1.5rem!important
	}
	.ml-lg-4,
	.mx-lg-4 {
		margin-left: 1.5rem!important
	}
	.m-lg-5 {
		margin: 3rem!important
	}
	.mt-lg-5,
	.my-lg-5 {
		margin-top: 3rem!important
	}
	.mr-lg-5,
	.mx-lg-5 {
		margin-right: 3rem!important
	}
	.mb-lg-5,
	.my-lg-5 {
		margin-bottom: 3rem!important
	}
	.ml-lg-5,
	.mx-lg-5 {
		margin-left: 3rem!important
	}
	.p-lg-0 {
		padding: 0!important
	}
	.pt-lg-0,
	.py-lg-0 {
		padding-top: 0!important
	}
	.pr-lg-0,
	.px-lg-0 {
		padding-right: 0!important
	}
	.pb-lg-0,
	.py-lg-0 {
		padding-bottom: 0!important
	}
	.pl-lg-0,
	.px-lg-0 {
		padding-left: 0!important
	}
	.p-lg-1 {
		padding: 0.25rem!important
	}
	.pt-lg-1,
	.py-lg-1 {
		padding-top: 0.25rem!important
	}
	.pr-lg-1,
	.px-lg-1 {
		padding-right: 0.25rem!important
	}
	.pb-lg-1,
	.py-lg-1 {
		padding-bottom: 0.25rem!important
	}
	.pl-lg-1,
	.px-lg-1 {
		padding-left: 0.25rem!important
	}
	.p-lg-2 {
		padding: 0.5rem!important
	}
	.pt-lg-2,
	.py-lg-2 {
		padding-top: 0.5rem!important
	}
	.pr-lg-2,
	.px-lg-2 {
		padding-right: 0.5rem!important
	}
	.pb-lg-2,
	.py-lg-2 {
		padding-bottom: 0.5rem!important
	}
	.pl-lg-2,
	.px-lg-2 {
		padding-left: 0.5rem!important
	}
	.p-lg-3 {
		padding: 1rem!important
	}
	.pt-lg-3,
	.py-lg-3 {
		padding-top: 1rem!important
	}
	.pr-lg-3,
	.px-lg-3 {
		padding-right: 1rem!important
	}
	.pb-lg-3,
	.py-lg-3 {
		padding-bottom: 1rem!important
	}
	.pl-lg-3,
	.px-lg-3 {
		padding-left: 1rem!important
	}
	.p-lg-4 {
		padding: 1.5rem!important
	}
	.pt-lg-4,
	.py-lg-4 {
		padding-top: 1.5rem!important
	}
	.pr-lg-4,
	.px-lg-4 {
		padding-right: 1.5rem!important
	}
	.pb-lg-4,
	.py-lg-4 {
		padding-bottom: 1.5rem!important
	}
	.pl-lg-4,
	.px-lg-4 {
		padding-left: 1.5rem!important
	}
	.p-lg-5 {
		padding: 3rem!important
	}
	.pt-lg-5,
	.py-lg-5 {
		padding-top: 3rem!important
	}
	.pr-lg-5,
	.px-lg-5 {
		padding-right: 3rem!important
	}
	.pb-lg-5,
	.py-lg-5 {
		padding-bottom: 3rem!important
	}
	.pl-lg-5,
	.px-lg-5 {
		padding-left: 3rem!important
	}
	.m-lg-n1 {
		margin: -0.25rem!important
	}
	.mt-lg-n1,
	.my-lg-n1 {
		margin-top: -0.25rem!important
	}
	.mr-lg-n1,
	.mx-lg-n1 {
		margin-right: -0.25rem!important
	}
	.mb-lg-n1,
	.my-lg-n1 {
		margin-bottom: -0.25rem!important
	}
	.ml-lg-n1,
	.mx-lg-n1 {
		margin-left: -0.25rem!important
	}
	.m-lg-n2 {
		margin: -0.5rem!important
	}
	.mt-lg-n2,
	.my-lg-n2 {
		margin-top: -0.5rem!important
	}
	.mr-lg-n2,
	.mx-lg-n2 {
		margin-right: -0.5rem!important
	}
	.mb-lg-n2,
	.my-lg-n2 {
		margin-bottom: -0.5rem!important
	}
	.ml-lg-n2,
	.mx-lg-n2 {
		margin-left: -0.5rem!important
	}
	.m-lg-n3 {
		margin: -1rem!important
	}
	.mt-lg-n3,
	.my-lg-n3 {
		margin-top: -1rem!important
	}
	.mr-lg-n3,
	.mx-lg-n3 {
		margin-right: -1rem!important
	}
	.mb-lg-n3,
	.my-lg-n3 {
		margin-bottom: -1rem!important
	}
	.ml-lg-n3,
	.mx-lg-n3 {
		margin-left: -1rem!important
	}
	.m-lg-n4 {
		margin: -1.5rem!important
	}
	.mt-lg-n4,
	.my-lg-n4 {
		margin-top: -1.5rem!important
	}
	.mr-lg-n4,
	.mx-lg-n4 {
		margin-right: -1.5rem!important
	}
	.mb-lg-n4,
	.my-lg-n4 {
		margin-bottom: -1.5rem!important
	}
	.ml-lg-n4,
	.mx-lg-n4 {
		margin-left: -1.5rem!important
	}
	.m-lg-n5 {
		margin: -3rem!important
	}
	.mt-lg-n5,
	.my-lg-n5 {
		margin-top: -3rem!important
	}
	.mr-lg-n5,
	.mx-lg-n5 {
		margin-right: -3rem!important
	}
	.mb-lg-n5,
	.my-lg-n5 {
		margin-bottom: -3rem!important
	}
	.ml-lg-n5,
	.mx-lg-n5 {
		margin-left: -3rem!important
	}
	.m-lg-auto {
		margin: auto!important
	}
	.mt-lg-auto,
	.my-lg-auto {
		margin-top: auto!important
	}
	.mr-lg-auto,
	.mx-lg-auto {
		margin-right: auto!important
	}
	.mb-lg-auto,
	.my-lg-auto {
		margin-bottom: auto!important
	}
	.ml-lg-auto,
	.mx-lg-auto {
		margin-left: auto!important
	}
}

.stretched-link:after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	pointer-events: auto;
	content: "";
	background-color: rgba(0, 0, 0, 0)
}

.text-monospace {
	font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace!important
}

.text-justify {
	text-align: justify!important
}

.text-wrap {
	white-space: normal!important
}

.text-nowrap {
	white-space: nowrap!important
}

.text-truncate {
	overflow: hidden;
	-o-text-overflow: ellipsis;
	text-overflow: ellipsis;
	white-space: nowrap
}

.text-left {
	text-align: left!important
}

.text-right {
	text-align: right!important
}

.text-center {
	text-align: center!important
}

@media (min-width:992px) {
	.text-lg-left {
		text-align: left!important
	}
	.text-lg-right {
		text-align: right!important
	}
	.text-lg-center {
		text-align: center!important
	}
}

.text-lowercase {
	text-transform: lowercase!important
}

.text-uppercase {
	text-transform: uppercase!important
}

.text-capitalize {
	text-transform: capitalize!important
}

.font-weight-light {
	font-weight: 300!important
}

.font-weight-lighter {
	font-weight: lighter!important
}

.font-weight-normal {
	font-weight: 400!important
}

.font-weight-bold {
	font-weight: 700!important
}

.font-weight-bolder {
	font-weight: bolder!important
}

.font-italic {
	font-style: italic!important
}

.text-white {
	color: #fff!important
}

.text-primary {
	color: #0056b3!important
}

a.text-primary:focus,
a.text-primary:hover {
	color: #003167!important
}

.text-secondary {
	color: #6c757d!important
}

a.text-secondary:focus,
a.text-secondary:hover {
	color: #494f54!important
}

.text-success {
	color: #28a745!important
}

a.text-success:focus,
a.text-success:hover {
	color: #19692c!important
}

.text-info {
	color: #17a2b8!important
}

a.text-info:focus,
a.text-info:hover {
	color: #0f6674!important
}

.text-warning {
	color: #ffc107!important
}

a.text-warning:focus,
a.text-warning:hover {
	color: #ba8b00!important
}

.text-danger {
	color: #e12616!important
}

a.text-danger:focus,
a.text-danger:hover {
	color: #9b1a0f!important
}

.text-light {
	color: #f8f9fa!important
}

a.text-light:focus,
a.text-light:hover {
	color: #cbd3da!important
}

.text-dark {
	color: #232323!important
}

a.text-dark:focus,
a.text-dark:hover {
	color: black!important
}

.text-body {
	color: #212529!important
}

.text-muted {
	color: #6c757d!important
}

.text-black-50 {
	color: rgba(0, 0, 0, 0.5)!important
}

.text-white-50 {
	color: rgba(255, 255, 255, 0.5)!important
}

.text-hide {
	font: 0/0 a;
	color: transparent;
	text-shadow: none;
	background-color: transparent;
	border: 0
}

.text-decoration-none {
	text-decoration: none!important
}

.text-break {
	word-wrap: break-word!important
}

.text-reset {
	color: inherit!important
}

.visible {
	visibility: visible!important
}

.invisible {
	visibility: hidden!important
}

footer,
header {
	padding: 0;
	margin: 0
}

footer dd,
footer dl,
footer dt,
footer h1,
footer li,
footer p,
footer ul,
header dd,
header dl,
header dt,
header h1,
header li,
header p,
header ul {
	padding: 0;
	margin: 0;
	list-style: none
}

button,
svg {
	margin: 0;
	padding: 0;
	border: none
}

nav li,
nav ul {
	list-style: none;
	padding: 0;
	margin: 0
}

nav a {
	text-decoration: none
}

dd,
dl,
dt {
	padding: 0;
	margin: 0
}

figure {
	margin: 0;
	text-align: center
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: top
}

mark {
	background: #F1FF5D
}

body,
html {
	font-size: 62.5%;
	scroll-behavior: smooth
}

body {
	font-size: 1.55rem;
	font-family: -apple-system, BlinkMacSystemFont, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "游ゴシック", meiryo, sans-serif;
	font-weight: 400
}

@media (min-width:992px) {
	body main {
		min-width: 1220px
	}
}

body section a {
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s
}

body section a[target=_blank]:after {
	content: "\e95f";
	font-family: "icomoon";
	margin-left: 5px;
	vertical-align: top;
	display: inline-block
}

body section a.btn:after,
body section a.has-banner:after {
	content: ""
}

body section p {
	font-size: 1.6rem;
	line-height: 1.75;
	margin-bottom: 1.5rem
}

body .en {
	font-family: "Barlow Condensed", Helvetica, sans-serif;
	font-style: oblique
}

.header {
	width: 100%
}

.header .inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between
}

.header__logo {
	width: 220px;
	margin-left: 10px;
	height: 60px;
	text-align: right;
	-webkit-transition: opacity 0.3s;
	-o-transition: opacity 0.3s;
	transition: opacity 0.3s;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center
}

@media (max-width:991.98px) {
	.header__logo {
		width: 200px
	}
}

.header__logo:hover {
	opacity: 0.5
}

.header a {
	color: #232323
}

.header a:hover {
	text-decoration: none
}

.sp-nav {
	background-color: #fff;
	position: fixed;
	left: 0;
	bottom: 0;
	width: 100%;
	z-index: 99;
	-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
	padding-bottom: calc(5px + env(safe-area-inset-bottom))
}

.sp-nav ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	padding-top: 5px
}

.sp-nav ul a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 100%;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	font-size: 1.2rem;
	color: #232323
}

.sp-nav ul a:hover {
	text-decoration: none
}

.sp-nav ul a i {
	font-size: 1.8rem;
	color: #e12616;
	margin-bottom: 5px
}

.sp-nav ul li {
	-webkit-box-flex: 1;
	-ms-flex: 1 1 25%;
	flex: 1 1 25%
}

.sp-nav ul li:not(:last-child) {
	border-right: solid 1px #ccc
}

@media (max-width:991.98px) {
	.gnav {
		position: fixed;
		top: 0;
		left: 100%;
		background-color: #fff;
		z-index: 98;
		width: 100%;
		height: 100%;
		padding: 20px 0 20px 0;
		-webkit-transition: all 0.3s;
		-o-transition: all 0.3s;
		transition: all 0.3s
	}
	.gnav.is-open {
		left: 0
	}
	.gnav__block {
		max-height: 90%;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch
	}
	.gnav__primary {
		border-top: solid 1px rgba(35, 35, 35, 0.2);
		padding: 11px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		font-weight: 600;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between
	}
	.gnav__primary:after {
		content: "\e914";
		font-family: "icomoon";
		color: #e12616
	}
	.gnav__secondary {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		margin-bottom: 5px;
		margin-left: 5px;
		margin-right: 5px
	}
	.gnav__secondary:after {
		content: "";
		display: block;
		width: 50.5%
	}
	.gnav__secondary li {
		-webkit-box-flex: 1;
		-ms-flex: 1 0 49%;
		flex: 1 0 49%;
		margin-bottom: 2px
	}
	.gnav__secondary li:nth-child(2n) {
		margin-left: 2px
	}
	.gnav__secondary a {
		padding: 8px 11px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		height: 100%;
		background-color: rgba(35, 35, 35, 0.05);
		font-size: 1.4rem
	}
	.gnav a {
		color: #232323
	}
}

@media (min-width:992px) {
	.header {
		height: 80px;
		padding-right: 10px
	}
	.header .inner {
		min-width: 1220px;
		max-width: 1600px;
		margin: 0 auto;
		height: 100%
	}
	.header__logo {
		width: 260px
	}
	.header.is-fixed {
		position: fixed;
		top: -80px;
		-webkit-animation: slidedown 0.5s 0.2s forwards;
		animation: slidedown 0.5s 0.2s forwards;
		z-index: 99;
		background-color: #fff;
		-webkit-box-shadow: 0 0 3px 3px rgba(0, 0, 0, 0.06);
		box-shadow: 0 0 3px 3px rgba(0, 0, 0, 0.06);
		height: 55px
	}
	.gnav .btn {
		width: 150px;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		height: 55px
	}
	.gnav__block {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		height: 100%
	}
	.gnav__primary {
		font-weight: 600;
		height: 100%;
		padding: 0 20px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-transition: all 0.3s;
		-o-transition: all 0.3s;
		transition: all 0.3s
	}
	.gnav__primary:hover {
		background-color: #eee
	}
	.gnav .has-secondary {
		position: relative
	}
	.gnav .has-secondary:hover .gnav__primary {
		color: #e12616
	}
	.gnav .has-secondary:hover .gnav__secondary {
		display: block;
		opacity: 1
	}
	.gnav__secondary {
		-webkit-transition: all 0.3s;
		-o-transition: all 0.3s;
		transition: all 0.3s;
		position: absolute;
		overflow: hidden;
		-webkit-box-shadow: 0 4px 3px 3px rgba(0, 0, 0, 0.05);
		box-shadow: 0 4px 3px 3px rgba(0, 0, 0, 0.05);
		background-color: #fff;
		padding: 0 0;
		z-index: 5;
		display: none;
		min-width: 150px;
		left: 50%;
		top: 55px;
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		transform: translateX(-50%);
		opacity: 0
	}
	.gnav__secondary li:not(:last-child) {
		border-bottom: solid 1px #eee
	}
	.gnav__secondary a {
		white-space: nowrap;
		display: block;
		padding: 12px 15px;
		-webkit-transition: all 0.3s;
		-o-transition: all 0.3s;
		transition: all 0.3s;
		font-size: 1.4rem
	}
	.gnav__secondary a:hover {
		background-color: #fdfdfd;
		color: #e12616
	}
	.gnav .active {
		color: #e12616
	}
}

@-webkit-keyframes slidedown {
	0% {
		top: -150px
	}
	to {
		top: 0
	}
}

@keyframes slidedown {
	0% {
		top: -150px
	}
	to {
		top: 0
	}
}

.trigger {
	height: 50px;
	-webkit-box-flex: 0;
	-ms-flex: 0 0 50px;
	flex: 0 0 50px
}

.trigger-btn {
	width: 100%;
	height: 50px;
	position: relative;
	z-index: 999
}

.trigger-btn:after {
	content: "メニュー";
	bottom: 5px;
	left: 0;
	position: absolute;
	font-size: 1.2rem;
	width: 100%;
	text-align: center
}

.trigger-btn span {
	position: absolute;
	display: block;
	width: 20px;
	height: 1.5px;
	background-color: #232323;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s
}

.trigger-btn span:first-child {
	top: 20%
}

.trigger-btn span:nth-child(2) {
	top: 32%
}

.trigger-btn span:nth-child(3) {
	top: 44%
}

.trigger.active .trigger-btn span:first-child {
	top: 30%;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	left: 50%;
	margin-left: -10px
}

.trigger.active .trigger-btn span:nth-child(2) {
	opacity: 0
}

.trigger.active .trigger-btn span:nth-child(3) {
	top: 30%;
	left: 50%;
	margin-left: -10px;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg)
}

@media (max-width:991.98px) {
	.trigger {
		display: block
	}
}

footer {
	padding-top: 30px;
	padding-bottom: 60px;
	background-color: #333;
	color: #fff
}

footer a {
	color: #fff
}

@media (min-width:992px) {
	footer {
		padding-top: 40px;
		padding-bottom: 0
	}
}

.footer-banner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap
}

.footer-banner a {
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s
}

.footer-banner a:hover {
	opacity: 0.7
}

.footer-banner li {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 48%;
	flex: 0 0 48%;
	margin-bottom: 10px
}

@media (min-width:992px) {
	.footer-banner {
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end
	}
	.footer-banner li {
		-webkit-box-flex: 1;
		-ms-flex: auto;
		flex: auto;
		-webkit-box-flex: 0;
		-ms-flex-positive: 0;
		flex-grow: 0;
		margin-left: 1rem
	}
}

.animation-link a {
	font-size: 1.4rem;
	text-decoration: none;
	padding: 0 1rem 0.5rem 0.5rem;
	position: relative;
	overflow: hidden;
	display: inline-block
}

.animation-link a:after,
.animation-link a:before {
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	content: "";
	position: absolute;
	bottom: 0;
	height: 2px;
	width: 100%
}

.animation-link a:after {
	background-color: rgba(255, 255, 255, 0.1);
	z-index: 2;
	left: 0
}

.animation-link a:before {
	background-color: rgba(255, 255, 255, 0.5);
	z-index: 3;
	left: -100%
}

.animation-link a:hover {
	color: #fff
}

.animation-link a:hover:before {
	left: 0
}

.footer-address {
	font-size: 1.4rem;
	padding: 15px 0
}

.footer-address h3 {
	font-size: 1.5rem;
	margin-top: 1rem
}

@media (min-width:992px) {
	.footer-address {
		padding: 0;
		-ms-flex-item-align: end;
		align-self: flex-end
	}
}

.footer-credit {
	border-top: solid 1px rgba(255, 255, 255, 0.2);
	text-align: center;
	padding: 15px 0
}

#pagetop {
	background-color: #232323;
	text-align: center;
	padding: 10px;
	color: #fff;
	cursor: pointer
}

#pagetop i {
	margin-right: 1rem
}

@media (min-width:992px) {
	#pagetop {
		display: none;
		position: fixed;
		right: 10px;
		bottom: 5px;
		width: 55px;
		height: 55px;
		font-size: 1.2rem;
		line-height: 1;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		z-index: 5;
		padding: 0;
		text-align: center
	}
	#pagetop i {
		margin-right: 0;
		line-height: 1;
		margin-top: -3px
	}
}

.has-padding {
	padding-top: 3rem;
	padding-bottom: 3rem
}

@media (min-width:992px) {
	.has-padding {
		padding-top: 80px;
		padding-bottom: 80px
	}
}

.mb-50 {
	margin-bottom: 50px
}

.mb-80 {
	margin-bottom: 40px
}

@media (min-width:992px) {
	.mb-80 {
		margin-bottom: 80px
	}
}

.mb-100 {
	margin-bottom: 100px
}

.pt-80 {
	padding-top: 40px
}

@media (min-width:992px) {
	.pt-80 {
		padding-top: 80px
	}
}

.breadcrumb {
	background: #f5f5f5;
	width: 100%;
	padding: 4px 10px 4px 10px
}

.breadcrumb ul {
	padding: 0;
	margin: 0;
	font-size: 1.45rem
}

.breadcrumb li {
	display: inline;
	padding: 0;
	margin: 0
}

.breadcrumb li:not(:last-child):after {
	content: "/";
	margin: 0 2px 0 5px
}

.page-title {
	height: 100px;
	background-color: #eee;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	background-size: 100% auto;
	background-position: center;
	background-repeat: no-repeat;
	position: relative;
	text-shadow: 0 3px 3px rgba(0, 0, 0, 0.2)
}

.page-title:before {
	position: absolute;
	left: 0;
	top: 0;
	content: "";
	width: 100%;
	height: 100%;
	z-index: 1;
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.2)), to(rgba(0, 0, 0, 0)));
	background: -webkit-linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0));
	background: -o-linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0));
	background: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0))
}

.page-title__item {
	text-align: center;
	letter-spacing: 0.75rem;
	font-weight: 700;
	color: #fff;
	z-index: 2
}

.page-title .en {
	display: block;
	letter-spacing: 1px
}

@media (min-width:992px) {
	.page-title {
		height: 200px;
		background-position: center -300px
	}
	.page-title__item {
		font-size: 3.8rem
	}
}

.section-title {
	font-size: 3rem;
	font-weight: 700;
	position: relative;
	padding-top: 2rem;
	margin-bottom: 2rem
}

.section-title small {
	font-weight: bolder
}

.section-title .en {
	display: block;
	font-size: 2rem;
	line-height: 1;
	letter-spacing: 1px;
	margin-bottom: 0.75rem;
	font-weight: bolder
}

.section-title:before {
	content: "";
	width: 80px;
	height: 2px;
	background-color: #e12616;
	position: absolute;
	top: 0;
	left: 0
}

@media (min-width:992px) {
	.section-title {
		font-size: 4.2rem;
		margin-bottom: 4rem
	}
	.section-title .en {
		font-size: 2.8rem;
		letter-spacing: 2px;
		margin-bottom: 1.2rem
	}
}

.h3 {
	font-weight: 700;
	font-size: 1.8rem;
	margin-bottom: 2rem
}

.h3[class*=bg-] {
	padding: 15px;
	-webkit-box-shadow: 0 0 3px rgba(122, 64, 0, 0.2);
	box-shadow: 0 0 3px rgba(122, 64, 0, 0.2);
	margin-bottom: 2rem
}

@media (min-width:992px) {
	.h3 {
		font-size: 2.4rem
	}
	.h3[class*=bg-] {
		margin-bottom: 4rem;
		text-align: center
	}
}

.font-md {
	font-size: 1.65rem;
	line-height: 1.7;
	margin-bottom: 4rem
}

@media (min-width:992px) {
	.font-md {
		font-size: 1.7rem;
		line-height: 2;
		margin-bottom: 4rem
	}
}

.font-sm {
	font-size: 1.3rem;
	line-height: 1.4
}

@media (min-width:992px) {
	.font-sm {
		font-size: 1.4rem
	}
}

.h4 {
	font-size: 1.8rem;
	font-weight: 900
}

.h4.has-border {
	padding: 10px 10px;
	margin-top: 3.4rem;
	margin-bottom: 1.5rem;
	border-top: solid 1px #232323;
	border-bottom: solid 1px #232323
}

.h5 {
	font-size: 1.4rem;
	font-weight: 600
}

.bg-brown {
	background-color: rgba(243, 237, 231, 0.7)
}

.hr {
	border: none;
	border-top: solid 1px rgba(35, 35, 35, 0.3)
}

.list {
	padding-left: 3.2rem
}

.list li {
	margin-bottom: 0.75rem;
	line-height: 1.74
}

.text-denger {
	color: #e12616
}

.fade-in {
	display: block;
	opacity: 1!important
}

.fade-out {
	opacity: 0.5!important;
	display: none
}

button {
	background: none;
	-webkit-appearance: button;
	font-family: -apple-system, BlinkMacSystemFont, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "游ゴシック", meiryo, sans-serif;
	margin: 0;
	padding: 0;
	cursor: pointer
}

button:focus {
	outline: none
}

button img,
button i {
	vertical-align: middle
}

.btn {
	height: 50px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	position: relative;
	overflow: hidden;
	white-space: nowrap;
	position: relative;
	font-weight: 700
}

@media (min-width:992px) {
	.btn {
		height: 74px;
		max-width: 460px;
		font-size: 1.6rem
	}
}

.btn:before {
	position: absolute;
	content: "";
	left: -100%;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #232323;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s
}

.btn .icon-chevron-right {
	position: absolute;
	right: 5%;
	font-size: 2rem;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s
}

.btn .icon-chevron-left {
	position: absolute;
	left: 5%;
	font-size: 2rem;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s
}

.btn span {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	background-color: transparent;
	width: 100%;
	position: relative;
	z-index: 2
}

.btn [class^=icon] {
	margin-left: 2px
}

.btn:hover {
	text-decoration: none
}

.btn:hover:before {
	left: 0
}

.btn:hover .icon-chevron-right {
	right: 5px;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s
}

.btn:hover .icon-chevron-left {
	left: 5px;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s
}

.btn.btn-primary {
	background-color: #e12616;
	color: #fff
}

.btn.btn-dark {
	background-color: #232323;
	color: #fff
}

.btn.btn-dark:before {
	content: "";
	background-color: #e12616
}

.btn.btn-dark-o {
	background-color: transparent;
	color: #232323;
	border: solid 2px #232323
}

.btn.btn-dark-o:before {
	content: "";
	background-color: #232323
}

.btn.btn-dark-o:hover {
	color: #fff
}

.btn.btn-light {
	border: solid 2px #fff;
	background-color: #fff;
	color: #002171
}

.btn.btn-light:before {
	background-color: #fff
}

.btn.btn-light:hover {
	color: #002171
}

.btn.btn-sm {
	height: 35px;
	font-size: 1.4rem;
	width: 120px;
	text-indent: -1rem
}

.btn.btn-sm .icon-chevron-right {
	font-size: 1.6rem
}

.btn.btn-xs {
	height: 32px;
	font-size: 1.4rem;
	width: 70px;
	padding: 0
}

.btn.btn-md {
	height: 45px;
	font-size: 1.4rem;
	text-indent: -1rem;
	max-width: 100%
}

.btn.btn-md .icon-chevron-right {
	font-size: 1.6rem
}

@media (min-width:992px) {
	.btn.btn-md {
		height: 60px;
		max-width: 300px
	}
}

.btn.btn-readonly {
	pointer-events: none;
	background-color: #999;
	border-radius: 50px
}

.form-control {
	padding: 5px;
	width: 100%;
	border-radius: 3px;
	border: solid 1px rgba(35, 35, 35, 0.6)
}

.form-control:active,
.form-control:focus {
	outline: none
}

.error-item {
	background: rgba(255, 0, 0, 0.03)
}

@media (max-width:680px) {
	.page-nav {
		display: none;
		position: -webkit-sticky;
		position: sticky;
		top: 0;
		width: 100%;
		z-index: 80;
		padding: 5px 60px 5px 5px;
		background: #eee
	}
	.page-nav__list {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		overflow-x: scroll;
		white-space: nowrap
	}
	.page-nav__list a {
		padding: 15px;
		font-size: 1.2rem
	}
	.page-nav__list .is-current {
		border-left: solid 2px #e12616;
		color: #232323;
		font-weight: 700
	}
	.page-nav__list .is-current a {
		color: #232323
	}
}

@media (min-width:681px) {
	.wrapper {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between
	}
	.wrapper .content {
		width: calc(100%)
	}
	.page-nav {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 220px;
		flex: 0 0 220px;
		border-right: solid 1px #ccc
	}
	.page-nav__item {
		position: -webkit-sticky;
		position: sticky;
		top: 60px
	}
	.page-nav__title {
		font-size: 1.6rem;
		margin: 0;
		padding: 12px 10px;
		font-weight: 700;
		border-bottom: solid 1px #ccc
	}
	.page-nav__list {
		font-size: 1.5rem;
		font-weight: bold
	}
	.page-nav__list>li a {
		color: rgba(35, 35, 35, 0.4);
		padding: 10px 7px 10px 10px;
		display: block;
		position: -webkit-sticky;
		position: sticky;
		-webkit-transition: all 0.3s;
		-o-transition: all 0.3s;
		transition: all 0.3s
	}
	.page-nav__list>li a:hover {
		text-decoration: none;
		color: #232323
	}
	.page-nav__list>li.is-current a {
		color: #232323;
		border-left: solid 2px #e12616
	}
	.page-nav__list-primary.active>a {
		color: #e12616;
		color: #232323;
		border-left: solid 2px #e12616
	}
	.page-nav__list-primary.active .page-nav__list-secondary {
		display: block
	}
	.page-nav__list-primary.active .is-current a {
		color: #232323
	}
	
    .footer-contact .container .btn {
        -webkit-box-shadow: 0 10px 10px rgba(0, 0, 0, 0.1);
        box-shadow: 0 10px 10px rgba(0, 0, 0, 0.1)
    }
}