/* body {
  padding-top: 54px;
} */

.c-page-sub__content,
.c-nav-sitemap,
.c-footer {
	font-family: Noto Sans JP,sans-serif;
	font-size: 1.6rem;
	line-height: 1.7;
}
header {
    background-color: #fff;
}
header .container {
    border-bottom: 1px solid #e5e5e5;
}
a.header-brand {
	float: left;
	height: 50px;
	padding: 15px 15px;
	font-size: 18px;
	line-height: 20px;
}
.header-brand > img {
    display: block;
    max-width: 220px;
    float: left;
}
.header-logo img {
    margin: 20px 0;
    max-width: 100px;
}

h1,
h2 {
	font-weight: bold;
}

h2 {
	font-size: 1.3rem;
}

h2.m-0 {
	margin: 0 0 1.3em !important;
}

.mb-4 h2 {
	margin-bottom: 1em !important;
}

h2.text-center,
h3.text-center {
	text-align: left !important;
}

h3.m-0 {
	margin: 0 0 1em !important;
	font-size: 2.2rem !important;
}

h4.my-2 {
	margin: 0 0 1.5em !important;
}

.mb-4,
.my-4 {
	/*margin-bottom: 2em !important;*/
}

.d-block {
	margin-bottom: 2.5em;
}


.pull-right {
    float: right;
}

.card {
	border: none;
	text-align: left;
}

.card-body {
	/*margin: 2em 0 0;*/
	padding: 0 !important;
}

.card-body h4 {
	margin: 0;
	padding: 0;
	border: none;
	font-weight: bold;
}

.card-body h4::before,
.card-body h4::after{
	display: none;
}

.card-header {
	padding: 0 0 5px;
	background: none;
}

h4.card-header {
	margin-bottom: 0.5em !important;
	background: none;
}

.card-header.text-center {
	text-align: left !important;
}

.card-body h5 {
	margin: 0;
	padding: 10px 0 0;
	font-size: 1.6rem;
	font-weight: bold;
	background: none;
}

.soon-text {
	font-size: 1.2rem;
	line-height: 1.5;
}

.flex-pref, .flex-city {
    /*background-color: #20c997; /* green */
}
.flex-pref .collapsed {
    /*background-color: #fd7e14;*/ /* orange */
    /*background-color: #20c997; /* green */
}

.flex-area .p-2 {
    /*background-color: #fd7e14;*/ /* orange */
}
.flex-area .collapsed {
    background-color: #FFF;
}

.flex-pref h3 {
    font-size: 1.25rem;
}
.flex-pref {
    cursor: pointer;
}
/*.flex-area {
    border: 0.05rem solid #ccc;
}*/
.flex-area .p-2 {
	margin: 0 0 -1px -1px;
    border: 0.05rem solid #ccc;
    text-align: center;
    font-size: 15px;
    cursor: pointer;
}

h4.area-title {
    font-size: 1.25rem;
		font-weight: bold;
		padding: 0.25em 0.5em;
		background: transparent;
		border-left: solid 8px #fd7e14; /* orange */
		/*border-right: solid 1px #fd7e14; */ /* orange */
		/*border-top: 1px solid #fd7e14; */ /* orange */
		/*border-bottom: 1px solid #fd7e14; */ /* orange */
}

table.table {
	display: table;
}

table.table thead {
	display: table-header-group;
}

table.table tbody {
	display: table-row-group;
}

table.table tr {
	display: table-row;
}

table.table th,
table.table td {
	display: table-cell;
	vertical-align: middle;
	word-break: break-all;
}

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {
	.card-body {
	    padding: 1.25rem;
	}

	h2 { font-size: 2rem; }
	h4 { font-size: 1rem; }
	h5 { font-size: 0.9rem; }

	.flex-area .p-2 {
	    max-width: 20% !important;
	}

}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {

}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
    h2 { font-size: 2rem; }

}


/*管理画面*/

.container .row.justify-content-md-center .col-lg-8 > .alert.alert-success {
	margin-top: 4em;
}

@media (max-width: 768px) {
	.fixed-top .row {
		justify-content: space-between;
	}
	
	header .container {
		padding-bottom: 10px;
	}
	
	.fixed-top .text-right {
		display: none;
	}
	
	header .container > .row > .col-4 {
		flex: auto;
		width: 65%;
		max-width: 240px;
	}
	
	a.header-brand {
		padding: 20px 0;
	}
	
	.header-brand > img {
		max-width: 100%;
		float: left;
	}
	
	header .container .col-4.text-center {
		width: 30%;
	}
	
	header .container .col-4.text-center .mt-2.alert.alert-warning {
		padding: 10px !important;
	}
}