@charset "utf-8";

/* ------------------------------
 見出し&テキスト
------------------------------ */
/* -- H1 -- */
.mainimgPage {
	height: 220px;
	background: url(../img/h1_bg.png) repeat-x;
	background-size: 36px auto;
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
}
.mainimgPage h1 {
	font-size: 2.8rem;
	font-weight: bold;
	letter-spacing: .1em;
}
.mainimgPage h1:after {
	content: "";
	display: block;
	width: 50px;
	height: 10px;
	background: url(../img/h1_icon.png) no-repeat;
	background-size: 50px auto;
	margin: 0 auto;
	margin-top: 8px;
}
/* -- H2 -- */
.contents h2 {
	font-size: 2.5rem;
	font-weight: bold;
	margin-bottom: 20px;
	color: #006487;
}
.contents h2.mincho {
	font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
	font-size: 2.6rem;
	margin-bottom: 20px;
	color: #333333;
	line-height: 1.5;
}
.contents h2.mincho span{
	font-family: 'IM Fell English', serif !important;
	font-weight: normal;
	font-size: 1.4rem;
	color: #006487;
	display: block;
}
.lead {
	text-align: center;
}
.lead-mincho {
	font-size: 2.2rem;
	font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
	margin-bottom: 30px;
	text-align: center;
}
.blue {
	color: #006487;
}
/* ------------------------------
 スマホ用コード（見出し）
------------------------------ */
@media screen and (max-width: 767px) {
	/* -- H1 -- */
	.mainimgPage {
		height: 150px;
	}
	.mainimgPage h1 {
		font-size: 2.6rem;
		line-height: 1.4;
		padding: 0 20px;
		text-align: center;
	}
	.mainimgPage h1:after {
		width: 50px;
		height: 10px;
		background: url(../img/h1_icon.png) no-repeat;
		background-size: 50px auto;
	}
	/* -- H2 -- */
	.contents h2 {
		font-size: 2rem;
		margin-bottom: 10px;
	}
	.contents h2.mincho  {
		font-size: 2rem;
		margin-bottom: 10px;
	}
	.lead {
		text-align: left;
	}
	.lead-mincho {
		font-size: 2rem;
		margin-bottom: 20px;
	}
}

/* ------------------------------
 ボックス
------------------------------ */
/* -- 横並びボックス（flexbox） --- */
.flexBox {
	display: flex !important;
	flex-flow: row wrap;
}
.flexBox::after {
	display: none;
}
/* -- 横並びボックス（flexbox） センター揃え --- */
.flexBox.fb-tac {
	justify-content: center;
}
/* -- 横並びボックス（flexbox） 左右揃え --- */
.flexBox.fb-btw {
	justify-content: space-between;
}
/* -- 横並びボックス（flexbox） 縦センター揃え --- */
.flexBox.fb-vac {
	align-items: center;
}

/* ------------------------------
 横幅グリッド PC用限定CSS
------------------------------ */
@media print, screen and (min-width: 768px) {
	.flexBox > * {
		width: 100%;
	}
	
	/* -- 1/2 --- */
	.w546,
	.w1-2 {
		width: 546px;
	}

	/* -- 1/3 --- */
	.w1-3 {
	    width: 350px;
	}
	/* -- 2/3 --- */
	.w745,
	.w2-3 {
	    width: 745px;
	}

	/* -- 1/4 --- */
	.w258,
	.w1-4 {
		width: 258px;
	}
	/* -- 3/4 --- */
	.w846,
	.w3-4 {
		width: 846px;
	}
	/* -- 1/5 --- */
	.w208,
	.w1-5 {
		width: 208px;
	}
	.w4-5 {
		width: 907px;
	}
	
	/* flexbox 順番 */
	.order1 {
		order: 1;
	}
	.order2 {
		order: 2;
	}
}
/* ------------------------------
 スマホ用コード
------------------------------ */
@media screen and (max-width: 767px) {
	.w1-2,
	.w1-3,
	.w2-3{
		width: 100%;
	}
	/* -- 横並びボックス（flexbox） --- */
	.w1-4,
	.w258,
	.w1-5,
	.w208 {
		width: 49%;
	}
	
}



/* ------------------------------
 テーブル
------------------------------ */
.contents table{
	width: 100%;
}
.contents table th,
.contents table td{
	padding: 30px 20px;
    border-bottom: dotted 1px #ccc;
}
.contents table th{
	width: 20%;
	font-weight: bold;
}

@media (max-width: 767px) {
	.contents table th {
		width: 100%;
		display: block;
		padding: 15px 15px 0 15px;
		border-bottom: none;
	}
	.contents table td {
		width: 100%;
		display: block;
		padding: 0 15px 15px 15px;
	}
}

/* ------------------------------
 リスト
------------------------------ */
/*  ノーマルリスト */
ul.list li {
	padding: 0 0 0 11px;
	position: relative;
	border: none;
}
ul.list li::before {
	content: "";
	width: 8px;
	height: 8px;
	border-radius: 100%;
	background: #006487;
	vertical-align: top; 
	position: absolute;
	top: .65em;
	left: 0;
}
/* 横並びリスト */
.inline ul {
	display: flex;
	flex-flow: row wrap;
}
.inline ul li:not(:last-child) {
	margin-right: 15px;
}
/* ------------------------------
 数字リスト
------------------------------ */
ol{
  counter-reset: item;
  list-style-type: none;
  padding-left: 0;
}
ol li{
  text-indent: -1.3em;
  padding-left: 1.3em;
  margin-bottom: 20px;
}
ol li:before {
  counter-increment: item;
  content: counter(item)'.';
  /* 以下は自由に装飾... */
  padding-right: .5em;
  font-weight: bold;
  color: #006487;
}
/* ------------------------------
 ボタン
------------------------------ */
.btn a {
	font-size: 1.5rem;
	overflow: hidden;
	text-align: center;
	color: rgba(255, 255, 255, 1);
	text-decoration: none;
	background: #0196b4;
	border-radius: 8px;
	padding: 8px 10px;
	min-width: 200px;
	display: inline-block;
	vertical-align: bottom;
	position: relative;
	z-index: 2;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	font-family: 'IM Fell English', serif;
	letter-spacing: 1px;
}
.btn a:hover {
	background: #006487;
}
/* ------------------------------
 アイコン
------------------------------ */
.blank:after {
	content:"";
	width: 8px;
	height: 7px;
	display:inline-block;
	background: url(../img/icon_blank.png) no-repeat 0 center / 8px auto;
	margin-left: 5px;
}
.icon01{
	background: url(../img/icon_circle.png) no-repeat 0  10px / 13px auto;
	padding-left: 18px;
	font-size: 1.8rem;
	margin-bottom: 20px;
}
.icon02{
	padding-left: 10px;
	background: url(../img/icon_arrow02.png) no-repeat 0 center / 5px auto;
}
@media screen and (max-width: 767px) {
	.icon01{
		background: url(../img/icon_circle.png) no-repeat 0  8px / 13px auto;
		padding-left: 18px;
		font-size: 1.6rem;
		margin-bottom: 0;
	}
}

/* ------------------------------
 ページネーション
------------------------------ */
.pagination {
	width: 80%;
	margin: 0 auto;
	margin-top: 60px;
}
.pagination a{
	text-decoration: none;
	display: block;
}
.index {
	width: 5%;
}
.pagination .prev,
.pagination .next{
	width: 47.5%;
	line-height: 1.2;
}
.pagination .next{
	text-align: right;
}
.pagination .prev li:nth-child(1),
.pagination .next li:nth-child(2){
	width: 26%;
}
.pagination .prev li:nth-child(2),
.pagination .next li:nth-child(1){
	width: 74%;
}
.pagination p{
	font-size: 1.4rem;
	color:#0096B4;
	font-family: 'IM Fell English', serif;
	margin-bottom: 10px;
}
.pagination .prev p{
	background: url(../img/icon_prev.png) no-repeat 0 center;
	background-size: 3px auto;
	padding-left: 6px;
}
.pagination .next p{
	background: url(../img/icon_next.png) no-repeat right center;
	background-size: 3px auto;
	padding-right: 6px;
}
.pagination strong{
	display: block;
	font-size: 1.8rem;
}
@media screen and (min-width: 768px) {
	.pagination .index{
		width: 27px;
	}
}
@media screen and (max-width: 767px) {
	.pagination {
		width: 90%;
		margin-top: 30px;
	}
	.pagination p{
		font-size: 1.3rem;
	}
	.pagination strong{
		display: block;
		font-size: 1.4rem;
	}
	.pagination .f14{
		font-size: 1.1rem;
	}
	.pagination .prev li:nth-child(1){
		padding-right: 8px;
	}
	.pagination .next li:nth-child(2){
		padding-left: 8px;
	}
	.pagination .prev li:nth-child(2){
		padding-right: 5px;
	}
	.pagination .next li:nth-child(1){
		padding-left: 5px;
	}
	.pagination .prev li:nth-child(1),
	.pagination .next li:nth-child(2){
		width: 40%;
	}
	.pagination .prev li:nth-child(2),
	.pagination .next li:nth-child(1){
		width: 60%;
	}
}
/* ------------------------------
 ページ内リンク
------------------------------ */
.page-link {
	text-align: center;
	margin-bottom: 75px;
}
.page-link ul {
	font-size: 0;
}
.page-link li {
	display: inline-block;
	padding-right: 15px;
	margin-right: 15px;
	background: url(../img/page_link_border.png) no-repeat;
	background-size: 1px 15px;
	background-position: right 0 center;
}
.page-link li:first-child:before {
	content: '';
	display: inline-block;
	background: url(../img/page_link_border.png) no-repeat;
	width: 1px;
	height: 15px;
	vertical-align: middle;
	margin-right: 15px;
	margin-top: -2px;
}
.page-link li:last-child {
	margin-right: 0;
}
.page-link li a {
	text-align: center;
	text-decoration: none;
	display: inline-block;
	line-height: 1;
}
.page-link li a:before {
	content: '';
	background: url(../img/icon_arrow_page-link.png) no-repeat;
	background-size: 6px auto;
	display: inline-block;
	width: 6px;
	height: 3px;
	left: 0;
	margin-top: -3px;
	margin-right: 6px;
	vertical-align: middle;
}
@media screen and (max-width: 767px) {
	.page-link {
		margin: 0 auto;
		margin-bottom: 20px;
	}
	.page-link li {
		font-size: 1.2rem;
		padding: 0 10px;
		margin-right: 0;
		background: none;
		background-position: right 0 center;
		text-align: center;
		border-right: solid 1px #D6D1C4;
		margin-bottom: 3px;
	}
	.page-link li:first-child:before {
		content: none;
	}
	.page-link li:first-child{
		border-left: solid 1px #D6D1C4;
	}
	.page-link li a {
		width: 100%;
		padding: 3px 0;
	}
}
@media screen and (max-width: 320px) {
	.page-link {
		margin: 0 auto;
		margin-bottom: 20px;
	}
	.page-link li {
		font-size: 1.1rem;
		padding: 0 5px;
	}
}

