﻿/* IMPORT CSS */
@import url("grid.css");

img {
	max-width:100%;
	height: auto;/*高さ自動*/
}


a {
    display:block;
    color: #333;
    text-decoration-line: none;
}


a:hover { 
    color: #999;
}


a img:hover {
	opacity: 0.8;
}


.subtitleback {
	background-color: #aa0055;
	color: #fff;
	padding: 1rem;
}


.underline {
	border-bottom: 3px solid #003399;
	padding-bottom: 0.5rem;
}


.center {
	text-align: center;
}






/*ヘッダー
-------------------------------------*/
.head {
	display: flex;
    flex-direction: row;
    padding: 1rem 0 0 0;
}

.head h1 { 
    padding: 1rem 0;
}
.telbox {
	margin-left: auto;
	font-size: 2.5rem;
	padding: 1rem 0 0 0;
}





.menu {
	background-color: #aa0055;
}
nav ul {
	display: flex;
    flex-direction: row;
    justify-content: space-around;
    list-style: none;
	margin-bottom: 0;
}
nav li {
    flex: 1 0 auto;
	margin-bottom: 0;
}
nav li a {
    text-decoration: none;
    text-align: center;
	color: #fff;
}
nav a:hover {
    background-color: #ff0080;    
	color: #fff;
}
nav a {
    padding: 2rem 1rem;
	display: block;
}






@media screen and (min-width: 768px){
/* PC時はMENUボタンを非表示 */
#open,#close {
    display: none !important;
}

#navi {
    display: block !important;
}
}



@media screen and (max-width: 768px){
.head {
	flex-direction: column;
    text-align: left;
    margin-bottom: 20px;
}


.telbox {
	margin-left: 0;
	text-align: center;
}


.head #open,#close  {
    position: absolute;
    top: 20px;
    right: 12px;
    }


nav ul {
	flex-direction: column;
}
nav li {
	padding-top: 0;
	border-bottom: 1px solid #ccc;
	margin-bottom: 0;
}



/* スマホ時はMENUボタンを表示 */
#open,#close  {
    display: block;
    width: 50px;
    border: none;
    position: absolute;
    top: 20px;
    right: 12px;
}


/* スマホ時はメニューを非表示 */
#navi {
    display: none;
}
}




/*メイン画像
-------------------------------------*/
.mainimg img {
	width: 100vw;
}

/*メインコンテンツ
-------------------------------------*/
main {
    margin: 5rem 0 5rem 0;
}

/*新着情報
-------------------------------------*/
.news h2 {
    background-color: #aa0055;
	color: #fff;
	padding: 1rem;
}
.news li {
    list-style-type: none;
	border-bottom: 1px solid #ccc;
	padding: 0.5rem 0;
}




/*キャッチコピー
-------------------------------------*/
.catch {
    text-align: center;
}
.catch h3 {
    padding-bottom: 1rem;
}
.under {
    border-bottom: 0.4rem solid #aa0055;
    padding:0 1rem 1rem 1rem;
}
.center {
	text-align: center;
	margin-bottom: 4rem;
}









/*container間の隙間
-------------------------------------*/
.grid-container {
    display:grid;
    grid-gap:10px 10%;
}





/*フッター
-------------------------------------*/
footer {
    background-color: #aa0055;
    padding: 5rem 0;
	color: #fff;
}
footer h5 {
    border-bottom: 2px solid #fff;
}

/*コピーライト
-------------------------------------*/
.copyright {
    text-align: center;
    padding: 1rem 0;
    background-color: #fff;
}
.copyright a {
    color: #000;
    text-decoration: none;
	display: inline-block;
}

/*ページトップへ戻るボタン
-------------------------------------*/
#pagetop {
    position: fixed;
    bottom: 15px;
    right: 15px;
}
#pagetop a {
    display: block;
    background: #003399;
    color: #fff;
    width: 50px;
    padding: 10px 5px;
    text-align: center;
}
#pagetop a:hover {
    background: #3366FF;
}
/*パンくずリスト
-----------------------------------*/
.breadcrumb {
    margin: 0 0 1em 0;
    padding: 0;	
}
.breadcrumb li {
    list-style-type: none;
}
.breadcrumb li a {
    display: inline-block;
    color: #959fa5;
}













/*カード
-----------------------------------*/
#cardlayout-wrap {

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    margin: 2em auto;
    max-width: 1150px;
    width: 100%;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    justify-content: space-between;
}



/* リンクテキストの下線を非表示 */

a.card-link {
    text-decoration: none;
}



/* カードレイアウト内の画像を幅いっぱいに表示 */

#cardlayout-wrap img {
    display: block;
    width: 100%;
    height: auto;
}



.card-figure {
    margin: 0;
    padding: 0;
}



/* カードレイアウトのタイトル部分 */

.card-title {
    margin: 0.6em 0 0;
    color: #333;
    text-align: center;
    font-size: 1.3em;
}



/* カードレイアウトの説明文部分 */

.card-text-tax {
    margin: 0;
    padding: 1em;
    color: #333;
}



/* カードレイアウトを1カラムで配置 */

.card-list {
    margin: 0.5em auto;
    padding: 0;
    width: 96%;
    background: #f0f0f0;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.08);
}



/* 画面幅768px以上の場合カードレイアウトを2カラムで配置 */

@media all and (min-width: 768px) {
    .card-list {
        width: calc(96% / 2); /* 96%幅を2で割るという指定 */
    }
}



/* 画面幅992px以上の場合カードレイアウトを3カラムで配置 */

@media all and (min-width: 992px) {
    .card-list {
        width: calc(96% / 3); /* 96%幅を3で割るという指定 */
}



/* 最後の行が3列より少ない場合左寄せにレイアウトさせる */

    #cardlayout-wrap::after{
        content: "";
        display: block;
        width: calc(96% / 3);
    }
}






/*listブロック
---------------------------------------------------------------------------*/
/*ブロック全体*/
.list {
	overflow: hidden;position: relative;
	border-top: 1px solid #ccc;	/*上の線の幅、線種、色*/
	padding: 10px 20px 5px;	/*上、左右、下へのボックス内の余白*/
	line-height: 1.5;			/*行間を少し狭く*/
}
/*最後のブロックに下線を入れる*/
.list:last-of-type {
	border-bottom: 1px solid #ccc;	/*下の線の幅、線種、色*/
}
/*ブロック内の画像*/
.list p.img {
	padding: 0px !important;
	float: left;		/*左に回り込み*/
	width: 20%;			/*画像の幅*/
	margin-right: 1%;	/*画像の右側へ空けるスペース*/
}
/*右側ブロック*/
.list .text {
	float: right;	/*ブロックを右寄せ*/
	width: 78%;		/*幅*/
}
/*ブロック内の段落(p)タグ*/
.list p {
	padding: 0 !important; 
}
/*ブロック内の見出し(h4)*/
.list h4 {
	font-size: 20px;	/*文字サイズ*/
}
/*ブロック内の見出し(h4)にリンクを貼った場合の設定*/
.list h4 a {
	color: #6fbfd1;		/*文字色*/
}
/*ボックス内のサイト名*/
.list p.name {
	position: absolute;
	right: 20px;	/*ボックスの右から20pxの場所に配置*/
	bottom: 5px;	/*ボックスの下から5pxの場所に配置*/
}


.mb10 {margin-bottom: 10px !important;}


.btn_more{
	text-align: right;
	margin-top: -10px;
}

.btn_more a{
	display: inline-block;
	color: #333;
	font-size: 0.9em;
}

.btn_more a:hover{color: #999;}


@media print, screen and (min-width:768px){ /* 表示領域が768px以上の場合に適用するスタイル */
	/*_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

	PC

	_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

	/* ------------------------------------------------------------

	お知らせ

	------------------------------------------------------------ */

	/* wordpress wp_contents
	---------------------------------------------- */
	.wp_contents{
		overflow:hidden;
		line-height: 2;
		margin-bottom: 30px;
	}

	.wp_contents p{margin-bottom: 1em;}
	.wp_contents p:last-child{margin-bottom: 0;}

	.wp_contents a{
		color: #00AC99;
		text-decoration:underline;
	}

	.wp_contents a:hover{text-decoration:none;}

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

	img.cl{
		width: 1px !important;
		height: 1px !important;
	}

	.wp_contents .alignleft{float:left;}
	.wp_contents .alignright{float:right;}
	.wp_contents .aligncenter{
		display: block;
		margin: auto;
	}

	.wp_contents iframe{max-width: 100%;}

	/*--太字、取り消し線--*/
	.wp_contents strong{font-weight: bold;}
	.wp_contents del{text-decoration: line-through;}

	/*--リスト--*/
	.wp_contents ol{margin-bottom: 1em;}

	.wp_contents ol li{list-style: decimal inside;}

	.wp_contents ul{margin-bottom: 1em;}

	.wp_contents ul li{list-style: disc inside;}

	/*--テーブル--*/
	.wp_contents table{width: 100%;}

	.wp_contents table th,
	.wp_contents table td{
		padding: 10px;
		border: 1px solid #CCC;
	}

	/*--キャプション--*/
	.wp-caption{max-width: 100% !important;}

	.wp-caption + p{margin-top: 25px;}

	.wp-caption img{margin-bottom: 10px;}

	.wp-caption .wp-caption-text{
		font-size: 1.4rem;
		line-height: 1.4;
	}

	/*--wordpress 引用--*/
	.wp_contents blockquote{
		max-width: 100%;
		display: inline-block;
		position: relative;
		padding: 0 0 0 40px;
		color: #999;
		margin-bottom: 1.3em;
	}

	.wp_contents blockquote p{margin-bottom: 1.3em;}
	.wp_contents blockquote p:last-child{margin-bottom: 0;}

	.wp_contents blockquote::before{
		content: "\201C"; /*Unicode for Left Double Quote*/

		/*フォント*/
		font-family: Georgia, serif;
		font-size: 30px;
		font-weight: bold;
		line-height: 1;

		/*ポジショニング*/
		position: absolute;
		left: 20px;
		top: 0;
	}

	/* wordpress ページネーション
	---------------------------------------------- */
	.wp-pagenavi{
		font-size: 1.4rem;
		line-height: 1.2;
		padding-top: 60px;
		margin-bottom: -5px;
		display:flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
	}

	.wp-pagenavi span{
		color: #FFF;
		background: #aa0055;
		border: 1px solid #aa0055;
		padding: 8px 13px;
		margin: 0 5px 5px;
	}

	.wp-pagenavi a{
		color: #aa0055;
		background: #FFF;
		border: 1px solid #aa0055;
		padding: 8px 13px;
		margin: 0 5px 5px;
	}

	.wp-pagenavi a:hover{
		color: #FFF;
		background: #aa0055;
	}

	.wp-pagenavi .first,
	.wp-pagenavi .last,
	.wp-pagenavi .pages,
	.wp-pagenavi .extend{display:none !important;}


}/*--@media--*/


@media only screen and (max-width:767px){ /* 表示領域が767px以下の場合に適用するスタイル */
	/*_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

	スマートフォン（iPhone,Android)

	_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

	/* wordpress wp_contents
	---------------------------------------------- */
	.wp_contents{
		overflow: hidden;
		line-height: 2;
		margin-bottom: 15px;
	}

	.wp_contents p{margin-bottom: 1em;}
	.wp_contents p:last-child{margin-bottom:0;}

	.wp_contents a{
		color: #00AC99;
		text-decoration:underline;
	}

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

	img.cl{
		width: 1px !important;
		height: 1px !important;
	}

/*	div.wp_contents .alignleft{float:left;}
	div.wp_contents .alignright{float:right;}
	div.wp_contents .aligncenter{
		display:block;
		margin:auto;
	}*/

	.wp_contents iframe{max-width: 100%;}

	/*--太字、取り消し線--*/
	.wp_contents strong{font-weight: bold;}
	.wp_contents del{text-decoration: line-through;}

	/*--リスト--*/
	.wp_contents ol{margin-bottom: 1em;}

	.wp_contents ol li{list-style: decimal inside;}

	.wp_contents ul{margin-bottom: 1em;}

	.wp_contents ul li{list-style: disc inside;}

	/*--テーブル--*/
	.wp_contents table{width: 100%;}

	.wp_contents table th,
	.wp_contents table td{
		padding: 10px;
		border: 1px solid #CCC;
	}

	/*--キャプション--*/
	.wp-caption{
		max-width: 100% !important;
		text-align: center;
	}

	.wp-caption + p{margin-top: 25px;}

	.wp-caption img{margin-bottom: 10px;}

	.wp-caption .wp-caption-text{
		text-align: left;
		font-size: 1.3rem;
		line-height: 1.4;
	}

	/*--wordpress 引用--*/
	.wp_contents blockquote{
		max-width: 100%;
		display: inline-block;
		position: relative;
		padding: 0 0 0 30px;
		color: #999;
		margin-bottom: 1.3em;
	}

	.wp_contents blockquote p{margin-bottom: 1.3em;}
	.wp_contents blockquote p:last-child{margin-bottom: 0;}

	.wp_contents blockquote::before{
		content: "\201C"; /*Unicode for Left Double Quote*/

		/*フォント*/
		font-family: Georgia, serif;
		font-size: 30px;
		font-weight: bold;
		line-height: 1;

		/*ポジショニング*/
		position: absolute;
		left: 10px;
		top: 0;
	}

	/* wordpress ページネーション
	---------------------------------------------- */
	.wp-pagenavi{
		line-height: 1;
		padding-top: 50px;
		margin-bottom: -5px;
		display:flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
	}

	.wp-pagenavi span{
		display: inline-block;
		color: #FFF;
		background: #aa0055;
		border: 1px solid #aa0055;
		padding: 6px 10px;
		margin: 0 5px 5px;
	}

	.wp-pagenavi a{
		display: inline-block;
		color: #aa0055;
		background: #FFF;
		border: 1px solid #aa0055;
		padding: 6px 10px;
		margin: 0 5px 5px;
	}

	.wp-pagenavi .first,
	.wp-pagenavi .last,
	.wp-pagenavi .pages,
	.wp-pagenavi .extend{display:none !important;}


}/*--@media--*/



/* reCAPTCHA v3　表示位置 */
.grecaptcha-badge{
    margin-bottom: 80px;
}




/* table_accessブロック for 固定ページ
tableの左のtdのみを#b3d4fcにして、枠線は下線のみとする。
---------------------------------------------------------------------------*/

.table_access{
}

.table_access table td{
	border: 0;
}

.table_access table td{
	padding:12px 15px;
	text-align: left;
	border-bottom: 1px solid #E1E1E1;
}

.table_access table td:first-child{
	padding-left: 0px;
	background: #f0f8ff;
	width: 150px;
	border-bottom: 1px solid #E1E1E1;
}



/*list_nブロック for 固定ページ
---------------------------------------------------------------------------*/

/*ブロック全体*/
.list_n {
	overflow: hidden;position: relative;
	border-top: 1px solid #ccc;	/*上の線の幅、線種、色*/
	padding: 10px 20px 5px;	/*上、左右、下へのボックス内の余白*/
	line-height: 1.5;			/*行間を少し狭く*/
}

/*最後のブロックに下線を入れる*/
.list_n:last-of-type {
	border-bottom: 1px solid #ccc;	/*下の線の幅、線種、色*/
}

/*ブロック内の画像*/
.list_n p.img {
	padding: 0px !important;
	float: left;		/*左に回り込み*/
	width: 20%;			/*画像の幅*/
	margin-right: 1%;	/*画像の右側へ空けるスペース*/
}

/*右側ブロック*/
.list_n .text {
	float: right;	/*ブロックを右寄せ*/
	width: 78%;		/*幅*/
}

/*ブロック内の段落(p)タグ*/
.list_n p {
	padding: 0 !important; 
}

/*ブロック内の見出し(h4)*/
.list_n h4 {
	font-size: 20px;	/*文字サイズ*/
}

/*ブロック内の見出し(h4)にリンクを貼った場合の設定*/
.list_n h4 a {
	color: #6fbfd1;		/*文字色*/
	text-decoration: none;	/*下線無し*/
}

/*ボックス内のサイト名*/
.list_n p.name {
	position: absolute;
	right: 20px;	/*ボックスの右から20pxの場所に配置*/
	bottom: 5px;	/*ボックスの下から5pxの場所に配置*/
}


