@charset "UTF-8";

#footerWrap #footer	#footerInfo h2 span.footer_yorozuname{
	font-size: 0.7em;
	display: inline-block;
}
#footerWrap #footer	#footerInfo h2 span.footer_seisanseiname{
	font-size: 1.0em;
	display: inline-block;
}

/********** フッター部分 よろず支援拠点へのリンク ********************************/

#footer_yorozu_link {
  text-align: center;
  margin: 30px 0 30px 0;
}
@media screen and (max-width: 768px){
	#footer_yorozu_link {
	  margin-top: 0;
	}
}

#footer_yorozu_link a {
  display: inline-block;
  position: relative;
  padding: 10px 22px;
  color: #fff;
  font-size: 14px;
  text-decoration: none;
  background: #2f5f9e; /* 落ち着いた青 */
  transform: skewX(-15deg);
  transition: 0.3s;
  box-shadow: 0 3px 6px rgba(0,0,0,0.15);
}

/* 文字は歪まないように戻す */
#footer_yorozu_link a span,
#footer_yorozu_link a {
  transform: skewX(-15deg);
}

#footer_yorozu_link a::before {
  content: "";
  position: absolute;
  top: 0;
  left: -6px;
  width: 6px;
  height: 100%;
  background: #f58a1f; /* オレンジアクセント */
}

/* ホバー */
#footer_yorozu_link a:hover {
  background: #244a7c;
  box-shadow: 0 5px 10px rgba(0,0,0,0.2);
  transform: skewX(-15deg) translateY(-2px);
}


/********** 固定ページの調整 ********************************/

.page-content.entry ol{
	padding-left: 30px;
}
.page-content.entry ol ul li::before{
	content: none;
	border: 1px solid #FF0000;
}

.page-content.entry .page_tel{
	font-size: 40px;
}
@media screen and (max-width: 700px){
	.page-content.entry .page_tel{
		font-size: 30px;
	}
}
@media screen and (max-width: 600px){
	.page-content.entry .page_tel{
		font-size: 27px;
	}
}

/* 支援申込ボタン */
a.btn-contact{
  display: inline-block;
  padding: 10px 28px;
  background: #d60000;
  color: #ffffff !important;
  text-decoration: none !important;
  font-weight: bold;
  text-align: center;

  border-radius: 8px;   /* 少し丸める */

  /* 既存の背景画像リセット */
  background: #d60000 !important;
  background-image: none !important;
}

/* ホバー */
a.btn-contact:hover{
  background: #b50000 !important;
  opacity: 0.95;
	text-decoration: underline !important;
}
a.btn-contact::before{content: none !important;}
a.btn-contact::after{content: none !important;}

/** 投稿ページのテーブル幅の調整 **/
.toukou_page_adjustment .wp-block-table{
	margin-left: 0;
	margin-right: 0;
}

/** ニュース一覧 ページネーションの上下余白 **/
.pageNaviWrap{
	margin-top: 60px;
	margin-bottom: 40px;
	text-align: center;
}

@media screen and (max-width: 768px){
	.pageNaviWrap{
		margin-top: 0px;
		margin-bottom: 0px;
	}
	.pageNaviWrap .wp-pagenavi .extend {
	  display: inline-block;
	  padding: 5px;
	  font-size: 14px;
	  color: #666; /* グレーで目立たないように */
	}
}

/************/

@media screen and (max-width: 768px){ body{ min-width: 300px; } }

/* #globalNaviWrap
---------------------------------------------------------------------------------------------------------*/

@media screen and (min-width: 980px), print{
	#topWrap h1.sp{ display: none; }
	#globalNaviWrap{
		clear: both;
		width: 98%;
		width: auto;
		height: 95px;
		height: auto;
		position: fixed;
		position: relative;
		/** top: 20px; **/
		/** left: 0; **/
		/** right: 0; **/
		margin: auto;
		background-color: #FFF;
		padding: 0;
		z-index: 10;
		/** border-radius: 10px; 角を丸く */
		/** border: 1px solid #0F5C26; */
	}
	#globalNaviWrap #globalNavi{
		width: 100%;
		margin: 0 auto;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	#globalNaviWrap #globalNavi h1.pc{
		padding: 0 10px;
		font-size: 11px;
		line-height: 1.1em;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	#globalNaviWrap #globalNavi h1.pc a{
		display: block;
		padding: 2px 10px 0;
		color: #777;
	}
	#globalNaviWrap #globalNavi h1.pc img{
		display: block;
		/** max-width: 100%; **/
		height: auto;
		padding-bottom: 5px;
		padding-top: 13px;
	}
	#globalNaviWrap #globalNavi .globalNavi-list{
		/** background-color: #0f4c81; **/
		background-color: #1B2A63;
	}
	#globalNaviWrap .globalNavi-list{
		display: flex;
		justify-content: center;
	}
	#globalNaviWrap ul li.naviWrap{
		/** float: left; **/
		font-weight: bold;
		text-align: center;
		font-size: 13px;
		padding: 0;
		margin-top: 7px;
		margin-bottom: 3px;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	/********************************
	#globalNaviWrap #globalNavi ul li.navi01,
	#globalNaviWrap #globalNavi ul li.navi02 ,
	#globalNaviWrap #globalNavi ul li.navi03 {
		background: url(../img/common/globalnavi_line.gif) no-repeat right center;
		padding-right: 15px;
	}
	**************************************/
	#globalNaviWrap #globalNavi ul li.navibese{
		position: relative;
		padding-left: 20px;
		padding-right: 22px;
	}

	/* 縦線 */
	#globalNaviWrap #globalNavi ul li.navibese:not(:nth-last-child(2))::after{
		content: "";
		position: absolute;
		top: 45%;
		right: 0;
		transform: translateY(-50%);
		width: 1px;
		height: 40%; /* 線の長さ（お好みで） */
		background: linear-gradient(
			to bottom,
			rgba(255,255,255,0),
			rgba(255,255,255,0.9),
			rgba(255,255,255,0)
		);
	}

	/* 背景も含めてクリックできるように */
	#globalNaviWrap #globalNavi ul li a {
		display: block;
	}

	/********************************************
	#globalNaviWrap #globalNavi ul li.navi01{ width: 29%; }
	#globalNaviWrap #globalNavi ul li.navi02{ width: 14%; }
	#globalNaviWrap #globalNavi ul li.navi03{ width: 27%; }
	#globalNaviWrap #globalNavi ul li.navi04{ width: 9%; }
	#globalNaviWrap #globalNavi ul li.navi04 span{ display: none; }
	************************************************/
	#globalNaviWrap #globalNavi ul li.navi_entry{
		/** width: 24%; **/
		/** width: 30%; **/
		width: 190px;
		margin-top: 0;
		position: absolute;
		top: 16px;
		right: 40px;
	}
	#globalNaviWrap #globalNavi li a{
		display: block;
		/** height: 45px; **/
		height: 40px; /** メニューの高さ **/
		/** color: #AAA; **/
		color: #FFF;
	}
	#globalNaviWrap #globalNavi li a span{
		font-family: 'Roboto Condensed', sans-serif;
		display: block;
		/** font-size: 22px; **/
		color: #40526A;
		color: #FFF;
	}
	#globalNaviWrap #globalNavi li a span.japanese_menu{
		font-size: 20px;
		padding-top: 2px;
	}
	#globalNaviWrap #globalNavi li a span.english_menu {
		  display: none;
		}

	#globalNaviWrap #globalNavi ul li.navi04 a{
		padding-top: 20px;
		height: 55px;
	}
	#globalNaviWrap #globalNavi ul li.navi_entry a{
		/** height: 75px; **/
		height: 40px;
		/** background-color: #EF563D; **/
		/** background-color: #0f4c81; **/
		background: #BFA100;
		color: #FFF;
		/** padding-top: 20px; **/
		padding-top: 6px;
		padding-bottom: 3px;
		border-radius: 10px;
	}
	#globalNaviWrap #globalNavi ul li.navi_entry a span{
		color: #FFF;
		letter-spacing: 0.2em;
		font-size: 19px;
	}
	/****************************************************************************
	#about #globalNaviWrap #globalNavi ul li.navi01 a,
	#news #globalNaviWrap #globalNavi ul li.navi02 a,
	#process #globalNaviWrap #globalNavi ul li.navi03 a{
		 color: #EF563D;
		color: #0f4c81;ヘッダー サブタイトル  ナビの現在のページカラー
		color: #FFF;
		background: url(../img/common/icon_midashi1_ht6px_w.png) no-repeat center bottom;
	}
	*********************************************************************/
	#globalNaviWrap #globalNavi ul li.current:not(.navi_entry) a{
		color:#FFF;
		background: url(../img/common/icon_midashi1_ht6px_w.png) no-repeat center bottom;
		margin-bottom: 2px;
	}

	/** 
	#home #globalNaviWrap #globalNavi ul li.navi01 a span,
	#news #globalNaviWrap #globalNavi ul li.navi02 a span,
	#coordinator #globalNaviWrap #globalNavi ul li.navi03 a span{ color: #0f4c81; }
	
	ヘッダー ナビの現在のページカラー 
	#about #globalNaviWrap #globalNavi ul li.navi01 a span.japanese_menu,
	#supporter #globalNaviWrap #globalNavi ul li.navi02 a span.japanese_menu,
	#coordinator #globalNaviWrap #globalNavi ul li.navi03 a span.japanese_menu{
		color: #A7A7A7;
	}**/
}


@media screen and (min-width: 980px){
	#globalNaviWrap #globalNavi h1.pc{
		margin-top: 15px;
		margin-bottom: 15px;
	}
}

@media screen and (min-width: 1581px){
	#globalNaviWrap #globalNavi h1.pc img{
		max-width: 350px;
		padding-top: 7px;
	}
	#globalNaviWrap #globalNavi li a span{
		font-size: 22px;
	}
	#globalNaviWrap #globalNavi li a span.japanese_menu{
		font-size: 19px;
	}
}
@media (min-width: 1381px) and (max-width: 1580px) {
	#globalNaviWrap #globalNavi h1.pc img{
		max-width: 330px;
		padding-top: 7px;
	}
	#globalNaviWrap #globalNavi li a span{
		font-size: 20px;
	}
	#globalNaviWrap #globalNavi li a span.japanese_menu{
		font-size: 18px;
	}
}
@media (min-width: 980px) and (max-width: 1380px) {
	#globalNaviWrap #globalNavi h1.pc img{
		max-width: 330px;
		padding-top: 7px;
	}
	#globalNaviWrap #globalNavi li a span{
		font-size: 16px;
	}
	#globalNaviWrap #globalNavi li a span.japanese_menu{
		font-size: 16px;
	}
	#globalNaviWrap #globalNavi li a{
		height: 32px;
	}
}


@media screen and (min-width: 980px){
	#globalNaviWrap #globalNavi h1.pc{
		/** width: 48%; **/
		/** width: auto; **/
		padding: 0 20px;
	}
	#globalNaviWrap #globalNavi h1.pc a{
		min-height: 76px;
		background: url(../img/common/h_mark4.png) no-repeat left center;
		padding: 2px 10px 0 90px;
	}
	#globalNaviWrap #globalNavi .globalNavi-list{
		/** width: 52%; **/
		/** max-width: 750px; **/
	}
}
/**********************************************************
@media screen and (min-width: 1481px){
	#globalNaviWrap #globalNavi .globalNavi-list{
		width: 900px;
		border: 10px solid #FF0000;
	}
}
@media (min-width: 1381px) and (max-width: 1480px) {
	#globalNaviWrap #globalNavi .globalNavi-list{
		width: 62%;
	}
}
@media (min-width: 1281px) and (max-width: 1380px) {
	#globalNaviWrap #globalNavi .globalNavi-list{
		width: 60%;
	}
}
@media (min-width: 1001px) and (max-width: 1280px) {
	#globalNaviWrap #globalNavi .globalNavi-list{
		width: 58%;
	}
	#globalNaviWrap #globalNavi li a span.japanese_menu{
		font-size: 13px;
		padding-top: 6px;
	}
}
@media (min-width: 980px) and (max-width: 1000px) {
	#globalNaviWrap #globalNavi .globalNavi-list{
		width: 550px;
	}
	#globalNaviWrap #globalNavi li a span.japanese_menu{
		font-size: 12px;
		padding-top: 7px;
	}
}
****************************************************/
@media screen and (max-width: 979px){
	#top{
		width: 100%;
		/** height: 60px; **/
		height: 65px;
		margin: auto;
		background-color: #FFF;
	}
	#naviWrap{
		max-width: 979px;
		margin: auto;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	#naviWrap h1{
		float: left;
		max-width: 240px;
		padding: 10px 10px 0;
		margin: 0;
	}
	#naviWrap h1 img{
		max-width: 100%;
		height: auto;
	}
	#globalNaviWrap #headerNavi{ display: none; }
	#globalNaviWrap.open #globalNavi{
		display: block;
		font-size: 14px;
	}
	#globalNaviWrap{
		margin: 0;
		padding: 0;
	}
	#globalNaviWrap #globalNavi h1,
	#globalNaviWrap .headerNavi-container li img,
	#globalNaviWrap .headerNavi-container li span{ display: none; }
	
	#globalNaviWrap, #globalNaviWrap *,
	#globalNaviWrap.enabled .headerNavi-container,
	#globalNaviWrap *:before,
	#globalNaviWrap *:after{
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	#globalNaviWrap .headerNaviHandle{
		cursor: pointer;
		display: none;
		margin: 0;
		padding: 0;
		position: absolute;
		-webkit-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
		user-select: none;
		top: 5px;
		height: 50px;
		width: 50px;
		z-index: 1000;
	}
	#globalNaviWrap .headerNaviHandle{ right: 5px; }
	#globalNaviWrap .headerNaviHandle:after{
		content: " ";
		display: inline-block;
		height: 50px;
		width: 50px;
		background: url("../img/common/btn_menu.png");    
		-moz-background-size: contain;
		background-size: contain;
		vertical-align: middle;
	}
	#globalNaviWrap.open .headerNaviHandle:after{
		content: " ";
		display: inline-block;
		height: 50px;
		width: 50px;
		background: url("../img/common/btn_menu_close.png");    
		-moz-background-size: contain;
		background-size: contain;
		vertical-align: middle;
	}
	#globalNaviWrap.enabled .headerNaviHandle{ display: block; }
	#globalNaviWrap.open.enabled .headerNavi-wrapper{ height: auto; }
	#globalNaviWrap.enabled .headerNavi-container{
		display: none;
		background-color: rgba(114, 133, 143, 0.9);
		position: absolute;
		width: 100%;
		z-index: 100;
		color: #FFF;
		top: 60px;
		left: 0;
		margin: 0;
	}
	#globalNaviWrap.enabled .headerNavi-container a{ color: #FFF; }
	#globalNaviWrap .headerNavi-container p.parent{ border-bottom: 1px solid #CCC; }
	#globalNaviWrap .headerNavi-container p.parent a{
		padding: 10px;
		display: block;
		margin: 0;
		width: 100%;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	#globalNaviWrap .headerNavi-container li.navi04 a span{ display: block; }
	
		#globalNaviWrap #globalNavi li a span.english_menu {
		  display: block;
		}

}


@media (min-width: 601px) and (max-width: 979px) {
	#topWrap #top #naviWrap .sp.h_logo_sp2_3{
		display: none;
	}
	#topWrap #top #naviWrap h1{
		max-width: 333px;
	}
}
@media screen and (max-width: 600px){
	#topWrap #top #naviWrap .sp.h_logo_sp2_4{
		display: none;
	}
}


/* #container
---------------------------------------------------------------------------------------------------------*/
#container{
	width: 100%;
	font-size: 1.6em;
	padding: 0;
	margin: 0;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
#container .contents{
	width: 100%;
	max-width: 1200px;
	padding: 20px;
	margin: 0 auto;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
#container .contents img{
	max-width: 100%;
	height: auto;
}
@media screen and (max-width: 768px){
	#container{ font-size: 1.4em; }
	#container .contents{ padding: 20px 10px; }
}

/* .normal
---------------------------------------------------------------------------------------------------------*/
.normal #pageTitle{
	width: 100%;
	background-image: url(../img/home/main_illust_sp.png), url(../img/home/main_bk.png);
	background-repeat: no-repeat, repeat;
	background-position: right center, left top;
}
.normal #pageTitle h2{
	font-size: 42px;
	/** color: #3F526A; **/
	/** margin-top: 200px; **/
	margin-bottom: 100px;
	color: #EE553D;
    text-shadow: 3px 3px 1px #FFFFFF;

	margin-top: 100px;/** 固定ページ 背景画像の高さを調整 **/
}
.normal #pageTitle h2 span{
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 22px;
	display: block;
	/** color: #EE553D; **/
	/** color: #0f4c81; **/
	color: #1B2A63;
	padding-left: 10px;
}
@media screen and (max-width: 1920px){
	.normal #pageTitle{
		/** -moz-background-size: 60% auto, auto; **/
		/** background-size: 60% auto, auto; **/
		-moz-background-size: 60% auto, auto;
		background-size: 60% auto, auto;
	}
}
@media screen and (max-width: 1500px){
	.normal #pageTitle{
		background-position: 150% top, left top;
		-moz-background-size: 1000px auto, auto;
		background-size: 1000px auto, auto;
	}
}
@media screen and (max-width: 1270px){
	.normal #pageTitle{
		background-position: 150% center, left top;
		-moz-background-size: 70% auto, auto;
		background-size: 70% auto, auto;
	}
}
@media screen and (max-width: 979px){
	.normal #pageTitle h2{
		font-size: 28px;
		margin-top: 20px;
		margin-bottom: 20px;
	}
	.normal #pageTitle h2 span{ font-size: 18px; }
}

/* .entry
-------------------------------------------------------------------------------*/
.entry h1,.entry h2{
	font-size: 35px;
}
@media screen and (max-width: 768px){
	.entry h1,.entry h2{
		font-size: 25px;
	}
}
.entry h1{
	color: #000;text-align: center;
}
.entry h2{color: #EE553D;}

.entry h3,
.entry h4,
.entry h5,
.entry h6{ clear: both; }

/******************************
.entry h3{
	font-size: 2em;
	margin: 0.8em 0;	
	color: #41536A;
	background: url(../img/common/icon_midashi4_ht8px.png) no-repeat left bottom;
	padding-bottom: 10px;
}
********************************************/
.entry h3 {
    font-size: 2em;
    margin: 0.8em 0;
    color: #0f4c81;
    position: relative; /* 疑似要素を配置するために必須 */
    padding-bottom: 2px; /* タイトル下の余白 */
}

.entry h3::after {
    content: '';
    position: absolute;
    bottom: 0; /* タイトルの下に配置 */
    left: 0;
    width: 100%; /* タイトル幅に応じる */
    height: 2px; /* 上の線の高さ */
    background-color: #0f4c81; /* 線の色 */
    box-shadow: 0px 5px 0px #0f4c81; /* 下にもう1本線を描画 */
}
/******************************
.entry h4{
	background: url(../img/common/icon_midashi2.gif) no-repeat left top;
	font-size: 1.5em;
	border-bottom: thin solid #DDD;
	padding-left: 20px;
	padding-bottom: 10px;
	margin: 1em 0 0.7em;
}
********************************************/
.entry h4 {
    font-size: 1.5em;
    border-bottom: thin solid #DDD; /* 下線をそのまま維持 */
    padding-left: 20px; /* 縦線の横に文字を配置するスペース */
    padding-bottom: 10px;
    margin: 1em 0 0.7em;
    position: relative; /* 疑似要素を配置するために必須 */
}

.entry h4::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0; /* 左側に配置 */
    width: 6px; /* 縦線の幅 */
    height: 100%; /* 見出しの高さに応じて縦線を調整 */
    background-color: #0f4c81; /* 縦線の色 */
}

/******************************
.entry h5{
	background: url(../img/common/icon_midashi3.gif) no-repeat left 0.3em;
	font-size: 1.3em;
	color: #EE553D;
	padding-left: 25px;
	margin: 0.8em 0 0.3em;
}
********************************************/
.entry h5 {
    font-size: 1.3em;
    color: #000; /* 文字色を黒に設定 */
    padding-left: 27px; /* 四角形と文字の間隔を確保 */
    margin: 0.8em 0 0.3em;
    position: relative; /* 疑似要素を配置するために必須 */
}

.entry h5::before {
    content: '';
    position: absolute;
    top: calc(50% + 1px); /* 見出しの中央に四角形を配置 */
    left: 0; /* 左側に配置 */
    transform: translateY(-50%); /* 四角形を縦方向に中央揃え */
    width: 16px; /* 四角形の幅 */
    height: 16px; /* 四角形の高さ */
    background-color: #9999FF;
}

.entry h6{
	font-size: 1.1em;
	background-color: #FDEEEB;
	padding: 5px 10px;
	margin: 1em 0;
}
.entry p{ padding: 0.5em 0; }
.entry ul,
.entry ol{
	padding-left: 0.4em;
	padding-bottom: 1em;
}
.entry ul ul,
.entry ul ol,
.entry ol ul,
.entry ol ol{
	font-size: 100%;
	padding-bottom: 0em;
}
.entry ol{ padding-left: 3em; }
.entry ol ol{ padding-left: 0; }

/*********************
.entry ul li{
	background: url(../img/common/icon_list.gif) no-repeat left 0.5em;
	padding-left: 18px;
}
***********************/
.entry ul li {
    list-style: none; /* デフォルトのリストアイコンを削除 */
    position: relative; /* 疑似要素を配置するために必須 */
    padding-left: 25px; /* 星アイコンとテキストの間にスペースを確保 */
}
@media screen and (max-width: 600px){
	.entry ul li {
		 padding-left: 22px;
	}
}

.entry ul li::before {
    content: '\f005'; /* Font Awesomeの星アイコン */
    font-family: 'Font Awesome 5 Free'; /* フォントファミリを指定 */
    font-weight: 900; /* アイコンを太字にする（Font Awesomeの設定） */
    color: #FFD700; /* 星に合うゴールド色 */
    position: absolute;
    left: 0; /* リストアイコンを左端に配置 */
    /* top: calc(50% + 1px); */
	top: 5px; /* 親要素（リスト項目）の上部に揃える */
    /* transform: translateY(-50%); 縦方向中央揃え */
	transform: none; /* 余分な中央揃えは解除 */
    line-height: 1; /* アイコンの高さを正確に調整 */
}

.entry ul ul li,
.entry ol ul li{
	background: url(../img/common/icon_list.gif) no-repeat left 0.5em;
	padding-left: 18px;
	list-style: none;
}
.entry ol li,
.entry ul ol li{
	list-style-type: decimal;
	list-style-position: outside;
	background-image: none;
	padding: 0px;
}
.entry ol ol li{
	list-style-type: none;
	list-style-position:inside;
	counter-increment: cnt;
	padding-left: 1.5em;
	text-indent: -1.5em;
}
.entry ol ol li:before{
      display: marker;
      content: "(" counter(cnt) ")";
    }
.entry ol ol ul li{
	list-style-type: circle;
	list-style-position: outside;
	padding: 0;
	text-indent: 0;
}
.entry ol ol ul li:before{ display: none; }
.entry dl{ margin: 0 0 1em; }
.entry dt{ font-weight: bold; }
.entry dd{ padding-left: 3em; }
.entry table{
	margin-bottom: 1em;
	border-top: 1px solid #DDD;
	border-left: 1px solid #DDD;
	width: 100%;
}
.entry table th,
.entry table td{
	padding: 15px;
	border-bottom: 1px solid #DDD;
	border-right: 1px solid #DDD;
	vertical-align: top;
}
.entry table th{
	font-weight: bold;
	background-color: #F5F7F8;
}
.entry th ol,
.entry td ol,
.entry th ul,
.entry td ul{ padding: 0; }
.entry ul th,
.entry ol th,
.entry ul td,
.entry ol td,
.entry ul p,
.entry ol p,
.entry th p,
.entry td p,
.entry dt p,
.entry dd p,
.entry th th,
.entry th td,
.entry td th,
.entry td td,
.entry th ol,
.entry td ol,
.entry th ul,
.entry td ul{ font-size: 100%; }

/****************
.entry a{
	background: url(../img/common/icon_link.gif) no-repeat left 0.2em;
	color: #EF563D;
	padding-left: 23px;
	text-decoration: underline;
}
******************************/


.entry a:not(:has(img)) {
    position: relative;
    color: #EF563D;
    /** padding-left: 20px; **/
    text-decoration: underline;
}
/****************

.entry a:not(:has(img))::before {
    content: '\f152';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    color: #EF563D;
    position: absolute;
    left: 0;
     top: 14px;
    transform: translateY(-50%);
}

@media screen and (max-width: 600px){
	.entry a:not(:has(img))::before {
		top: 12px;
	}
}
******************************/


.entry a:hover{ text-decoration: none; }
/*****************
.entry a.blank:after{
	content: url(../img/common/icon_blank.gif);
	margin: 0 3px;
	vertical-align: middle;
}
***********************************/
.entry a.blank {
    position: relative; /* 疑似要素を配置するために必須 */
	padding-right: 26px;
}

.entry a.blank::after {
    content: '\f0c6'; /* Font Awesomeのアイコン（新しいタブ） */
    font-family: 'Font Awesome 5 Free'; /* フォントファミリを指定 */
    /** font-weight: 900; **/
    font-weight: 700;
    color: #6495ed; /* アイコンの色 */
    margin: 0 5px; /* テキストとアイコンの間にスペースを追加 */
    font-size: 1.2em; /* アイコンを少し大きく設定 */
    position: absolute;
    bottom: 0; /* 親要素の下端を基準に */
    transform: translateY(6px); /* 下に6px移動 */
}

/*****************
.entry a.pdf:after{
	content: url(../img/common/icon_pdf.gif);
	margin: 0 3px;
	vertical-align: middle;
}
.entry a.xls:after{
	content: url(../img/common/icon_xls.gif);
	margin: 0 3px;
	vertical-align: middle;
}
.entry a.doc:after{
	content: url(../img/common/icon_doc.gif);
	margin: 0 3px;
	vertical-align: middle;
}
***********************************/
.entry a.pdf,.entry a.xls,.entry a.doc {
    position: relative; /* 疑似要素を配置するために必須 */
}

.entry a.pdf::after,.entry a.xls:after,.entry a.doc:after {
    font-family: 'Font Awesome 5 Free'; /* フォントファミリを指定 */
    font-weight: 900; /* アイコンを太字に設定 */
    margin: 0 3px 0 5px; /* テキストとアイコンの間にスペースを追加 */
    font-size: 1.3em; /* アイコンを少し大きく設定 */
    position: absolute;
    bottom: 0; /* 親要素の下端を基準に */
    transform: translateY(6px); /* 下に6px移動 */
}
.entry a.pdf::after {
    content: '\f1c1'; /* Font AwesomeのPDFアイコン */
    color: #B22222; /* 濃い赤色（Firebrick） */
}
.entry a.xls:after{
    content: '\f1c3';
    color: #2e8b57;
}
.entry a.doc:after{
    content: '\f1c2';
    color: #191970;
}

@media screen and (max-width: 768px){
	.entry h3{
		font-size: 1.5em;
		margin: 0.6em 0 0.3em;
	}
	.entry h4{
		font-size: 1.35em;
		padding-bottom: 2px;
		padding-left: 15px;
		margin: 0.8em 0 0.7em;
	}
	.entry h5{
		font-size: 1.2em;
		margin: 0.6em 0 0.3em;
	}
	.entry table th,
	.entry table td{ padding: 5px 10px; }
	/*********************
	.entry a{
		background: url(../img/common/icon_link.gif) no-repeat left top;
		-moz-background-size: auto 14px;
		background-size: auto 14px;
	}
	*******************************/
	.entry a:not(:has(img)) {
    position: relative; /* 疑似要素を配置するために必須 */
    color: #EF563D; /* オレンジ色 */
    padding-left: 22px; /* アイコンとテキスト間のスペース */
    text-decoration: underline; /* リンクの下線を維持 */
	}
	.entry a:not(:has(img))::before {
		content: '\f152'; /* Font Awesomeのアイコン（リンク） */
		font-family: 'Font Awesome 5 Free'; /* フォントファミリを指定 */
		font-weight: 900; /* Font Awesomeのスタイル */
		color: #EF563D; /* アイコンもオレンジ色 */
		position: absolute;
		left: 0; /* リンクの左端にアイコンを配置 */
		 top: calc(50% + 2px);
		transform: translateY(-50%); /* 縦方向中央揃え */
	}
}

@media screen and (max-width: 600px){
	.entry a:not(:has(img))::before {
		top: 12px;
	}
}

/* .wp-pagenavi
---------------------------------------------------------------------------------------------------------*/
#container .wp-pagenavi{
	font-family: 'Montserrat', sans-serif;
	text-align: center;
	padding-top: 50px;
	padding-bottom: 30px;
}
#container .wp-pagenavi span,
#container .wp-pagenavi a{
	color: #878787;
	background: #FFF;
	border: thin solid #E4E8EB;
	padding: 8px 15px;
	margin: 5px;
}
#container .wp-pagenavi span.current,
#container .wp-pagenavi a:hover{
	color: #FFF;
	/** background-color: #EF563D; **/
	background-color: #0f4c81;
	border: thin solid #E4E8EB;
}
@media screen and (max-width: 768px){
	#container .wp-pagenavi{
		padding-top: 30px;
		padding-bottom: 0;
	}
	#container .wp-pagenavi span,
	#container .wp-pagenavi a{ padding: 5px 10px; }
}

/* #pageTop
---------------------------------------------------------------------------------------------------------*/
#pageTop{
	position: fixed;
	top: 80%;
	right: 0;
	z-index: 100;
	height: 45px;
	width: 45px;
}

/* #contactWrap
---------------------------------------------------------------------------------------------------------*/
#contactWrap{
	background: url(../img/common/f_bk3.jpg) no-repeat center bottom;
	-moz-background-size: cover;
	background-size: cover;
	width: 100%;
	/** color: #40526A; **/
	text-align: center;
	font-size: 18px;
	font-weight: bold;
	padding: 70px 0 100px;

	color: #fff;
	text-shadow: 2px 2px 3px #555555;
}
#contactWrap .contents{
	width: 100%;
	max-width: 1200px;
	padding: 20px;
	margin: 0 auto;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
#contactWrap .contents h3{
	font-size: 1.3em;
	margin-bottom: 1.5em;
}
#contactWrap .contents p.tel,
#contactWrap .contents p.fax,
#contactWrap .contents p.mail{
	display: inline-block;
	vertical-align: top;
	font-size: 0.8em;
	line-height: 1.4em;
	margin: 0 1em;
}
#contactWrap .contents p.mail{ display: none; }

#contactWrap .contents p.mail a{
	color: #fff;
}

#contactWrap .contents p.tel a{
	/** color: #40526A; **/
	color: #FFFFFF;
}
#contactWrap .contents .font{
	font-family: 'Montserrat', sans-serif;
	font-size: 1.6em;
}
#contactWrap .contents .font strong{ font-size: 1.6em; }
#contactWrap .contents p.btn{
	display: inline-block;
	width: 100%;
	max-width: 360px;
	margin: 1em;
}
/** リンクボタン **/
#contactWrap .contents .btn a{
	display: block;
	color: #FFF;
	/** background-color: #EF563D; **/
	background-color: #fd9535;
	border-bottom: solid 2px #d27d00;/*少し濃い目の色に*/
	-moz-border-radius: 30px;
	-webkit-border-radius: 30px;
	border-radius: 30px;
}

#contactWrap .contents .btn a#nagahama_btn{
	background-color: #06306A;
	border-bottom: solid 2px #000033;
}


#contactWrap .contents .btn span{
	display: inline-block;
	padding: 15px 10px 15px 40px;
}
#contactWrap .contents .btn span span.destination{
	/** width: 124px; **/
	/** padding: 0; **/
	max-width: 124px;
	padding: 0 4px 0 0;
	font-size: 12px;
	line-height: 24px;
	overflow: hidden;
	white-space:nowrap;
	text-align: left;
	vertical-align: bottom;
}
#contactWrap .contents .btn span span.destination.nagahama{
	font-size: 14px;
}

#contactWrap .contents .btn .mail{ background: url(../img/common/f_mail.png) no-repeat left center; }
#contactWrap .contents .btn .access{ background: url(../img/common/f_access.png) no-repeat left center; }
@media screen and (max-width: 768px){
	#contactWrap{
		font-size: 16px;
		padding: 10px 0 20px;
	}
	#contactWrap .contents{ padding: 10px; }
	#contactWrap .contents h3{
		font-size: 1em;
		margin-bottom: 1em;
	}
	#contactWrap .contents p.tel,
	#contactWrap .contents p.fax,
	#contactWrap .contents p.mail{ margin: 0.5em; }
	#contactWrap .contents p.mail{ font-size: 0.8em; }
	#contactWrap .contents .font,
	#contactWrap .contents .font strong{ font-size: 1.4em; }
	#contactWrap .contents p.btn{
		/** max-width: 270px; **/
		max-width: 320px;
		margin: 1em 0.5em 0;
	}
	#contactWrap .contents .btn span{ padding: 15px 5px 15px 40px; }
	
}

/* #footerWrap
---------------------------------------------------------------------------------------------------------*/
#footerWrap{
	width: 100%;
	/** max-width: 1200px; **/
	max-width: 1250px;
	padding: 30px 20px 20px;
	margin: 0 auto;
	font-size: 16px;
	color: #31313F;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
#footerWrap #footer	#footerInfo{
	/** width: 39%; **/
	/** width: 370px; **/
	float: left;
	box-sizing: border-box;

		display: inline-block;
		width: calc(50% - 2px);
		padding-left: 18%;
}

	#footerWrap #footer	#footerInfo.nagahama{
		padding-left: 6%;
	}


#footerWrap #footer	#footerInfo a{ color: #31313F; }
#footerWrap #footer	#footerInfo h2 a{
	font-size: 1.2em;
	line-height: 1em;
}
#footerWrap #footer	#footerInfo h2 span{
	display: block;
	font-size: 0.8em;
	margin-bottom: 10px;
}

#footerWrap #footer	#footerInfo.nagahama h2{
	font-size: 1.3em;
	line-height: 1em;
}
#footerWrap #footer	#footerInfo.nagahama h2 span{
	font-size: 0.6em;
	font-weight: bold;
	margin-bottom: 0px;
	margin-top: -10px;
}

#footerWrap #footer	#footerInfo.nagahama p span.nagahama_add{
	display: block;
	font-size: 0.9em;
	line-height: 1.2em;
	margin-top: 10px;
	margin-bottom: 4px;
}

#footerWrap #footer	#footerNavi{
	/** width: 61%; **/
	/** width: 450px; **/
	/** float: right; **/
	box-sizing: border-box;
	
	width: 100%;
	display: block;

		border-top: 1px solid #D7D2D2;
		margin-top: 20px;
		padding-top: 20px;
		text-align: center;
}
#footerWrap #footer	#footerNavi ul{
	/** text-align: right; **/
	text-align: center;
}
#footerWrap #footer	#footerNavi li{
	display: inline-block;
	margin: 0 0.5em;
}
#footerWrap #footer	#footerNavi li a{
	font-weight: bold;
	color: #777;
}
#footerWrap #footer	#footerNavi h3{
	/** text-align: right; **/
	margin-top: 1em;
	text-align:center;
}
#footerWrap address{
	margin-top: 30px;
	color: #777;
	text-align: center;
	font-size: 0.7em;
}
@media screen and (max-width: 1350px){
	#footerWrap #footer	#footerInfo,
	#footerWrap #footer	#footerNavi{
		float: none;
		width: 100%;
	}
	#footerWrap #footer	#footerInfo{
		display: inline-block;
		width: calc(50% - 2px);
		padding-left: 18%;
		box-sizing: border-box;
	}
	#footerWrap #footer	#footerInfo.nagahama{
		padding-left: 6%;
	}
}
@media screen and (max-width: 1150px){
	#footerWrap #footer	#footerInfo{
		padding-left: 12%;
	}
	#footerWrap #footer	#footerInfo.nagahama{
		padding-left: 6%;
	}
}
@media screen and (max-width: 1000px){
	#footerWrap #footer	#footerInfo{
		padding-left: 4%;
	}
}

@media (min-width: 801px) and (max-width: 1350px) {
	#footerWrap #footer	#footerNavi{
		border-top: 1px solid #D7D2D2;
		margin-top: 20px;
		padding-top: 20px;
		text-align: center;
	}
	#footerWrap #footer	#footerNavi ul,#footerWrap #footer #footerNavi h3{
		text-align: center;
	}
}

@media screen and (max-width: 800px){
	#footerWrap #footer	#footerInfo,
	#footerWrap #footer	#footerNavi{
		float: none;
		width: 100%;
		margin-bottom: 20px;
		font-size: 14px;
		text-align: center;
	}
	#footerWrap #footer	#footerNavi ul{ display: none; }
	#footerWrap #footer	#footerNavi h3{ text-align: center; }
	#footerWrap #footer	#footerNavi h3 img{
		max-width: 100%;
		height: auto;
	}
	#footerWrap address{ margin-top: 10px; }
}

/* print.css
---------------------------------------------------------------------------------------------------------*/
@media print{
	#topWrap,
	#pageTop,
	#footerNavi{ display: none!important; }
	.normal #pageTitle h2{
		margin-top: 50px;
		margin-bottom: 50px;
	}
	#footerWrap #footer{ padding-bottom: 0; }
	#footerWrap #footer	#footerInfo{
		width: 100%;
		text-align: center;
		float: none;
		margin: auto;
	}
}