@charset "utf-8";

/* page.css */

/* 基本 */
main {
	line-height: 1.8;
}

main h1 {
	font-size: 2.8rem;
	margin-bottom: 0.4em;
}

main h2 {
	position: relative;
	padding-bottom: 0px;
	border-bottom: 2px solid #ccc;
	font-size: 3.0rem;
	margin: 1.5em 0 0.6em 0;
	padding: 0 0 0 0.2em;
}

main h2::after {
	position: absolute;
	bottom: -2px;
	left: 0;
	z-index: 2;
	content: '';
	width: 20%;
	height: 2px;
	background-color: #1eb0e1;
}

main h3 {
	margin: 1.0em 0 0.3em 0;
	font-size: 2.4rem;
	color: #1eb0e1;
}

main p {
	margin-bottom:1em;
}

main ul {
	list-style-type: disc;
	margin-bottom:1em;
	margin-left: 1.5em;
}

main ol {
	list-style-type: decimal;
	margin-bottom:1em;
	margin-left: 1.5em;
}

main li {
	margin-bottom: 0.5em;
}

main strong {
	font-weight: bold;
}

main .mgAuto {
	margin-right: auto;
	margin-left: auto;
}

main .mb0 {
	margin-bottom:0;
}

main .mb20 {
	margin-bottom:20px;
}

main .mb40 {
	margin-bottom:40px;
}

main .mb40_20 {
	margin-bottom:40px;
}

/* 2カラム */
.flex2 {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}

.flex2 > div,
.flex2 > li,
.flex2 > dl {
	width: 49%;
	margin-bottom: 20px;
}

/* 3カラム */
.flex3 {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}

.flex3 > div,
.flex3 > li,
.flex3 > dl {
	width: 32%;
	margin-bottom: 20px;
}

/* 4カラム */
.flex4 {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}

.flex4 > div,
.flex4 > li,
.flex4 > dl {
	width: 24%;
	margin-bottom: 20px;
}

/* 目次（ページ内リンク） */
.linkLabel {
	padding: 0;
	margin-left: 0;
	margin-bottom: 0;
}

.linkLabel li {
	list-style-type: none!important;
}

.linkLabel li a {
	line-height: 1.5;
	padding: 0.5em 0.5em 0.5em 1.7em;
	background: -webkit-linear-gradient(top, skyblue 0%, #5aade6 100%);/*グラデーション*/
	background: linear-gradient(to bottom, skyblue 0%, #5aade6 100%);/*グラデーション*/
	color: #fff;
}

.linkLabel li a:before {/*疑似要素*/
	font-family: FontAwesome;
	content: "\f138";
	left : 0.5em;
	padding-right:0.5em;
}

/* テーブル　th上・左 */

.resTbl01 {
	width:96%;
	margin:0 auto;
	border-top: 1px solid #444;
	border-left: 1px solid #444;
}

.resTbl01 th,
.resTbl01 td{
	padding:6px;
	border-right:1px solid #444;
	border-bottom:1px solid #444;
	text-align:center;
	color:#333333;
	vertical-align:middle;
	box-sizing:border-box;
}

.resTbl01 th{
	background-color: #61c5bb;
	color: #fff;
}

.resTbl01 th span{
	display:block;
	font-size:1.1rem;
}

.resTbl01 td span{
	display:inline-block;
	font-size:1.2rem;
}

/* タイル一覧 */
.tileList {
	list-style: none;
}

.tileList p {
	margin-bottom: 0;
}

.tileList div img {
	background-size: cover;
	background-position: center center;
}

.tileList p a {
	text-decoration: none;
	font-size: 1.4rem;
	color: #333333;
}

@media (max-width: 640px) {

main .mb40_20 {
	margin-bottom:20px;
}

/* 2カラム */
.flex2 > div,
.flex2 > li {
	width: 100%;
}

/* 3カラム */
.flex3 > div,
.flex3 > li {
	width: 49%;
}

/* 4カラム */
.flex4 > div,
.flex4 > li {
	width: 49%;
}

/* 1カラム */
.flex1sp > div,
.flex1sp > li {
	width: 100%;
}

/* 目次（ページ内リンク） */

.linkLabel li {
	margin-bottom:0.5em;
}

/* テーブル　th上・左 */

.resTbl01 {
	width:96%;
}

.resTbl01.baseCharge thead {
	display:none;
}

.resTbl01.baseCharge tbody tr th,
.resTbl01.baseCharge tbody tr td {
	display:block;
	width:100%;
}

.resTbl01.baseCharge tbody tr td {
	text-align:right;
}

.resTbl01.baseCharge tbody tr td br {
	display:none;
}

.resTbl01.baseCharge tbody tr td::before {
	content: attr(data-label);
	float: left;
	font-weight: bold;
	font-size:1.4rem;
}

}
