@charset "utf-8";

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

ロゴカラー　#e50012

メインカラー？　#1aa4d7 

#53a7ca

基本色　#F27982        ピンク  #0d5fb0;
テキスト　　　　　#020202　黒  

ポイントで置きたい色　：　#529ced

ナビ、フッター　　#529ced　/*#529ced
子メニュー　　　　#F8BABE
子メニューホバｰ　　#F8BABE
孫メニュー　　　　#FBD5D8
孫メニューホバｰ　　#FBD5D8


レスポンシブ設定
・1080px ~ 大きい
・880px ~ 1079px 小さいPC
・879 ~ 645px　タブレット
・~ 644px　スマートフォン


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


/* =Reset default browser CSS.
Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6,p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {border: 0;font-family: inherit;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;}
:focus {outline: 0;}

ol, ul {list-style: none;}
table {border-collapse: separate;border-spacing: 0;}
caption, th, td {font-weight: normal;text-align: left;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
a img {border: 0;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}

*{box-sizing: border-box;}
body {
	font-size: 16px; /*font-size: 16px; */
	line-height: 1.8;
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	color:#020202;
	-webkit-text-size-adjust: none;
	

}

.s_bg{
	background: #FDE3E4; /* #F0FBFF  */
}

/* リンク設定
------------------------------------------------------------*/
a {
	text-decoration:none;
	color: inherit;
}

a:hover, a:active {
	color: inherit;
}


/* レイアウト
------------------------------------------------------------*/

#wrapper, .h_inner, .f_inner {
	width: 1080px;
	margin: 0 auto;	
}

#content {
	float: right;
	width: 800px;
	padding: 15px 0 50px 0;  /*	padding: 25px 0 50px 0; */
	background: #fff;

}

#sidebar {
	float: left;
	width: 250px; /* width: 250px;  */
	padding: 0;   /* padding: 25px 0 0;   */
	background: #fff;	
}




#header{
	/*background: url(../images/bg.png) repeat-x;
	min-height: 250px;   */
	  position: relative;
}


.bg-w-pink{
	/* background: #fff; TOPの斜めと同じ色 #FBD5D8 */

	background: #fff; /*水色 */
/* #cfdcf0 background:linear-gradient(#529CED, #E6F0FC); */	


}



#footer {
	clear: both;
	/* background-color: #529ced;   #fff# 227DE6 #F8BABE #F27982 20190313 shioda add #1e6a16 
	border-top: 2px solid #529ced;  */
	color: #020202;
	padding: 30px 0 0 0;
	/*background: #0d5fb0; /*#529ced; */
	border-top: 20px solid #1aa4d7; /*  30d5fb0 #79B2F2; */
	background:#fff;
	
} 






/* フッター
*****************************************************/

.fnav {
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	-webkit-justify-content: censpace-betweenter;
	justify-content: space-between;
	margin: 0 0px;  /*margin: 0 50px; */
	padding: 25px 0; /*padding: 20px 0; */
}

.fnav li span{font-size:120%;}

.fnav > ul {
	width: 33%;
	margin-bottom: 0;
	font-size: 13px; /*font-size: 12px;*/
	border-left: 1px solid #ccc;
	padding-left: 20px;
}

.fnav > ul li {
	text-align: left;
	list-style-type: none; /* 20190207 shioda add */
}

.fnav > ul li a{
	color: #020202;
	text-decoration: none; /* 20190207 shioda add */
}


.fnav > ul li a:hover{
	color: #1aa4d7;
	text-decoration: none; /* 20190207 shioda add */
}

.fnav ul li .subnav a{
  padding-left: 10px;
  list-style-type: decimal!important;
}


.copyright{
clear:both;
padding:0px 0 20px;
text-align:center;
color:#020202;
font-size:10px;
}


@media screen and (max-width:767px) {
	footer {
		/*margin-top: 40px;  20190320 shioda add */
	}

	.fnav {
		display: block;
		margin: 10px; /*margin: 0; */
	}

	.fnav > ul {
		width: 100%;
		border-bottom: 1px solid #ccc;
		padding: 10px 0;
		border-left: none;
	}
}





@media only screen and (max-width: 1079px){
	#wrapper, .h_inner, .f_inner {
		width: 94%;
		margin: 0 3%;
	}
	#content {
		width: 72%;
	}
	#sidebar {
		width: 25%;
	}
	#footer {padding: 20px 0 0;}
}

@media only screen and (max-width: 879px){
	#header{
		background-size: auto 100%;
		min-height: 0px; /* 20210330 add   min-height: 120px;*/
	}
	#content {
		float: none;
		width: auto;
		padding: 20px 0;
	}
	#sidebar {
		float: none;
		width: auto;
		padding: 20px 0 0;
	}
	

	
}

@media only screen and (max-width: 644px){
	#footer .sponsor{ 
	width:100%;
    font-size:100%;}
	
	#footer .inner p{	
    font-size:85% !important;
}
	
}



/* ヘッダー
*****************************************************/

/* サイトタイトル、ナビ
----------------------------------*/
.h_title {float: left;}

.h_title img {
	max-width: 100%;   /*  padding: 25px 0 20px;  */
	width: 200px;
	padding: 20px 0 10px;  /*  padding: 25px 0 20px;  */
}

.h_nav {
	float: right; 
	text-align: right;
	padding: 20px 0 10px; /*  padding: 25px 0 20px;  */
}

.h_search {float: right;
padding: 37px 0 20px;
}

/* 検索窓
----------------------------------*/
.search_container{
  box-sizing: border-box;
  position: relative;	
  border: 1px solid #999;
  background: #fff;
  padding: 3px 10px;
  border-radius: 20px;
  height: 2.5em;  /* height: 2.3em; */
  width: 260px;
  overflow: hidden;
}
.search_container input[type="text"]{
  border: none;
  height: 2.0em;
}
.search_container input[type="text"]:focus {
  outline: 0;
}
.search_container input[type="submit"]{
  cursor: pointer;
  font-family: FontAwesome;
  font-size: 1.5em;  /* font-size: 1.3em;  */
  border: none;
  background: none;
  color: #F27982;
  position: absolute;
  width: 2.5em; 
  height: 2.7em;  /* height: 2.5em; */
  right: 0;
  top: -12px; /* top: -10px;  */
  outline : none;
}



@media only screen and (max-width: 644px){
	.h_title {width: 65%;}
	.h_nav img {width: 40px;}	/*.h_nav img {width: 50px;}	 */
	.h_search{float: none;
		       padding: 0px;}
    .search_container{
       width: 300px;
	  margin: 0 auto;
	}	
}



/* メインナビ 1080px以上でPC用
*****************************************************/
@media only screen and (min-width: 880px),print{
	.btn_open,.btn_close {display: none;}
	.mainnav {
		margin: 0;  /* margin: 0 0 15px;   */
		background: #1aa4d7;/* #0d5fb0; #529ced; #F25E68 background: #F27982;　 */ 
		/* border-bottom: 3px solid ##70D6D1; shioda*/
	}
	.mainnav .mainnav_inner {
		display: table;
		width: 94%;
		margin: 0 auto;
		background: #1aa4d7;/* #0d5fb0; #529ced;　#F25E68 background: #F27982;　 */ 
		/* border-left:1px solid #d5d6e1; */
	}	
	
	
	.mainnav li.category {
		position: relative;
		display: table-cell;
		vertical-align: middle;
		white-space: nowrap;
		width: 18%; /*  16.6666666666%; width: 20%;  */
		height: 50px; /* height: 52px;  mainnavにborder-bottom 3px　の為 　height: 55px;  shioda add　*/
		padding: 5px 10px;
		font-size: 18px;
		line-height: 1.4;
		text-align: center;
		/* border-right:1px solid #d5d6e1; */
		color: #ffffff;
	}
		.mainnav li.category:first-child {
		width: 10%;
		}
	
	/* 210317 子メニューが無い場合、リンクする場合　 */ 
		.mainnav li.category a {
		font-size: 18px;
	}
	
	
	
/* 210317 子メニューが無い場合、ホバｰする場合　 */ 
		.mainnav li.category:hover {
        background: #fff; /*#F97A80#F27982  */
    	border-bottom: 3px solid #ed2441;
    	position: relative;
		display: table-cell;
		vertical-align: middle;
		font-size: 18px;
		line-height: 1.4;
		padding: 5px 10px 2px 10px;
		text-align: center;	
		color: #020202;
	}
	
	
	
	/*子メニュー*/
	.mainnav li.category > ul {
		z-index: 10;
		position: absolute;
		top: 52px;   /* top: 55px; shioda add */
		width: 100%;
		font-size: 13px;
		background: #FBD5D8; 
		color:#020202;
		text-align: left;
	}

	.mainnav li.category > ul > li > a {
		display: block;
		padding: 10px 5px;
		border-right: 1px solid #d5d6e1;
		border-left: 1px solid #d5d6e1;
		border-bottom: 1px solid #d5d6e1;
	}
	.mainnav li.category > ul > li > a:hover {background: #F8BABE;}  

	/*孫メニュー*/
	.mainnav li.subcategory {
		position: relative;
		display: block;
		padding: 10px 30px 10px 5px;
		background: url("../images/h_ic01.png") no-repeat right 15px;
		border-right: 1px solid #d5d6e1;
		border-left: 1px solid #d5d6e1;
		border-bottom: 1px solid #d5d6e1;
	}
	.mainnav li.subcategory:hover {background-color: #F8BABE;}  


	.mainnav li.subcategory:hover > ul {
		z-index: 10;
		position: absolute;
		top: -1px;
		left: 100%;
		width: 100%;
		background: #FBD5D8;  /* ##7fe375 */
		color:#020202;
		border-top: 1px solid #d5d6e1;
	}

	.mainnav li.subcategory:hover > ul > li > a {
		display: block;
		padding: 10px 5px;
		border-right: 1px solid #d5d6e1;
		border-left: 1px solid #d5d6e1;
		border-bottom: 1px solid #d5d6e1;
	}
	.mainnav li.subcategory:hover > ul > li > a:hover {background: #F8BABE;} 

	/*hoverしていないときは非表示*/
	.mainnav li.category ul,
	.mainnav li.category li {display: none;}
	/*hoverしたら表示*/
	.mainnav li.category:hover > ul,
	.mainnav li.category:hover > ul > li,
	.mainnav li.subcategory:hover > ul,
	.mainnav li.subcategory:hover > ul > li {display: block;}
}

@media only screen and (min-width: 1080px) {
	.mainnav .mainnav_inner {width: 1080px;}
	.mainnav li.category{font-size: 16px;}
}

/* メインナビ 1079px以下でスマホ用
*****************************************************/
@media only screen and (max-width: 879px){
	.mainnav {
		position: fixed;
		top: 0;
		right: -230px;
		width: 230px;
		height: 100%; 
		overflow-x: hidden;
		-webkit-overflow-scrolling: touch;
		-webkit-transition: all .2s;
		transition: all .2s;
		background-color: #ffffff;
		background: #1aa4d7;/* 3AA4C3 #0d5fb0;*/ 
		border-left: 1px solid #f8f8f8;
		z-index: 10;
	}
	.mainnav.open {
		-webkit-transform: translate3d(-220px, 0, 0);
		transform: translate3d(-220px, 0, 0);
	}
	.mainnav_inner {
		margin: 10px 4px 20px;
	}
	.mainnav li.category > span {
		display: block;
		padding: 8px 40px 8px 15px;
		color: #ffffff;
		border-bottom: 1px solid #ffffff;
		/*background: url(../images/h_ic02.png) no-repeat 190px 15px;  */ /* 210317 子メニューが無い場合、ホバｰする場合　 */ 
	}
	/*子メニュー*/
	.mainnav li.category > ul > li {
		border-bottom: 1px solid #0d5fb0; 
	}
	.mainnav li.category > ul > li > a {
		display: block;
		background: #ffffff;
		padding: 8px 15px;
	}
	/*孫メニュー*/
	.mainnav li.subcategory > span {
		display: block;
		padding: 8px 40px 8px 15px;
		background: url(../images/h_ic03.png) no-repeat 190px 15px #ffffff;
	}
	.mainnav li.subcategory > ul {
		background: #ffffff;
		padding: 0 0 0 15px;
	}
	.mainnav li.subcategory > ul > li > a {
		display: block;
		padding: 8px 10px;
		border-top: 1px dashed #F27982 ; /* 20190313 shioda add #1e6a16; */
	}

	/*クリックしていないときは非表示*/
	.mainnav li.category ul,
	.mainnav li.subcategory ul {display: none;}
	/*クリックしたらopenクラスが付く(script.js)→表示*/
	.mainnav li.category ul.open,
	.mainnav li.subcategory ul.open  {display: block; margin-top: -3px;}   	
	
	/*closeボタン*/
	.btn_close {
		width: 100px;
		margin: 100px auto 50px;
		padding: 5px 10px;
		color: #ffffff;
		text-align: center;
		font-weight: bold;
		background: #1aa4d7;/* 3AA4C3 #0d5fb0;*/  	
		border: 2px solid #ffffff;
	}
}


/* パンくずナビ
----------------------------------*/
.Breadcrumb {
	width: 1080px;
	margin: 20px auto 0px; 
	font-size: 12px;
	text-align: right;
}

.Breadcrumb span {margin:0 10px;}
.Breadcrumb span.home {margin:0 10px 0 0;}
.Breadcrumb a:hover {text-decoration: underline;}

@media only screen and (max-width: 1079px){
	.Breadcrumb {
	width: 94%;
	margin: 10px 3%;
	text-align: left;
	}
}

/* フッター
*****************************************************/

/* 著作権
----------------------------------*/
#copyright{
	padding: 20px 0;
	text-align:center;
	font-size: 10px;
}

/* TOPに戻るボタン
----------------------------------*/
#pageTop {
	line-height: 0;
	position: fixed;
	right: 5%;   /* 400px right: 600px; right: 100px; */
	bottom: 3%; /* 100px bottom: 30px;  */
}

#pageTop img {width: 64px;}  /* width: 50px  */


@media only screen and (max-width: 879px){
#pageTop {
	line-height: 0;
	position: fixed;
	right: 200px;
	bottom: 100px;
}
#pageTop img {width: 50px;}

}


@media only screen and (max-width: 644px){
	#pageTop {right: 15px;bottom: 15px;}
}

/* サイドバー（サブページのみ）
*****************************************************/

/* サイドメニュー
----------------------------------*/
.s_nav {
	
	/* background-color: #ffffff;
	box-shadow: 5px 5px 0 0 #d5d6e1;
	border: 1px solid #dedede; */
	
	min-height: 30vh; /* min-height: 50vh; min-height: 100vh; */	
	/*background: linear-gradient(-35deg, #fff 0%, #fff 50%, #EEEEEE 50%, #EEEEEE 100%);    /* background: linear-gradient(45deg, #8AD8F3 0%, #8AD8F3 50%, #DAF2FB 50%, #DAF2FB 100%); */	
	
    /* background: linear-gradient(-35deg, #DAF2FB 0%, #DAF2FB 50%, #FAFAFA 50%, #FAFAFA 100%);   
	min-height: 100vh; /*min-height: 25vh;  */

	 /* border: 1px solid #020202 */
/*　box-shadow: 5px 5px 0 0 #ccc; */

	
}

/*メニューカテゴリのタイトル部分*/

/*
.s_nav_title {
	padding: 12px 5px;
	background-color: #529ced;
	font-weight: bold;　
	letter-spacing: 0.02em;
	font-size:14px;
	border: 1px solid #529ced; 
	text-align: center;  
}
*/

.s_nav h1 {
  display: flex;
  align-items: center;/* 縦位置の調整 */
/*    justify-content: center;*/
  font-size:105%;
}

.s_nav h1::before,
.s_nav h1::after {
  content: '';
  flex-grow: 1;/* 余白を分け与える */
  height: 3px;
  background: #ed2441;
}

/* 見出しの文字と横棒の間隔を開ける */
.s_nav h1::before {
  margin-right: 30px;
}

.s_nav h1::after {
  margin-left: 30px;
}






.s_nav_title p {
  display: flex;
  align-items: center;/* 縦位置の調整 */
/*    justify-content: center;*/
}

.s_nav_title p::before,
.s_nav_title p::after {
  content: '';
  flex-grow: 1;/* 余白を分け与える */
  height: 3px;
  background: red;
}

/* 見出しの文字と横棒の間隔を開ける */
.s_nav_title p::before {
  margin-right: 30px;
}

.s_nav_title p::after {
  margin-left: 30px;
}




/*子メニュー*/
.s_nav ul.s_nav_inner {
	padding: 20px 0px;
	color: #020202;　
	
}

/*

.s_nav ul.s_nav_inner > li > a,
.s_nav ul.s_nav_inner > li > span {
	padding: 15px 20px;
	background: url(../images/s_ic01.png) no-repeat left 20px;
	border-bottom: 1px solid #ccc;
*/
}



ul.s_nav_inner{
  counter-reset:list;
  list-style-type:none;
   /* font: 14px/1.6; 'arial narrow', sans-serif */
  font-size: 18px/1.6;
  padding:0;
}
ul.s_nav_inner li{
  position:relative;
  padding: 0 0 0 40px;　  /* padding: 0 0 0 20px; */
  margin: 7px 0 7px 0px;  /* margin: 7px 0 7px 0px; */
  line-height: 50px;      /*  line-height: 30px;   */
  /*border-bottom: solid 1px #529ced;  /*#529ced; *#D6AC04;  #76aed4 */	
 border-bottom: solid 1px #1aa4d7;  /* #3AA4C3; #529ced; */	

}
ul.s_nav_inner li:before{
  counter-increment: list;
  content: "";
  display: block;
  position: absolute;
  left: 20px;  /*  left: 0px;   */
  height: 15px;
  width: 15px;
  border-radius: 50%;
  background: #3AA4C3;  /*#529ced;  #529ced; #D6AC04;  #76aed4 */
  top: 50%;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
ul.s_nav_inner li:after{
  content: "";
  display: block;
  position: absolute;
  left: 26px;  /*  left: 6px;   */
  height: 0;
  width: 0;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 5px solid #fff;
  top: 50%;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}


.s_nav ul.s_nav_inner li a{
	text-decoration: none;
	color: #1aa4d7; /* #3AA4C3;  /*#529ced; #529ced #D6AC04;  #76aed4 */
		font-size:110%;
		letter-spacing: 0.05em;
	
}
.s_nav ul.s_nav_inner li a:hover{
	text-decoration: none;
	color: #020202; /* #529ced; #D6AC04;  #76aed4 */
}




.s_nav ul.s_nav_inner > li > a,
.s_nav ul.s_nav_inner > li > span {
	padding: 8px 0 8px 8px;  /* 	padding: 5px 0 8px 10px;  */
	font-size:15px;
    font-weight: bolder;
    letter-spacing: 0.03em;	
	text-decoration: none !important;
}


/* 追加ここから　 右サイドバーの表示しているページのボタン、アンダーバー、テキストの色が変わる 201117　shioda*/

.s_nav ul.s_nav_inner li.on a {
	color: #fff;   /*#D6AC04; #529ced; #D6AC04;  #76aed4 */
	background: #1aa4d7; /* #3AA4C3; #529ced;  #020202 */
}

.s_nav ul.s_nav_inner li.on{
  position:relative;
  padding: 0 0 0 40px;　  /* padding: 0 0 0 20px; */
  margin: 7px 0 7px 0px;  /* margin: 7px 0 7px 0px; */
  font-weight: bold;
  font-size:14px;
  line-height: 50px;      /*  line-height: 30px;   */
  /*border-bottom: solid 1px #8AD8F3;   /*#D6AC04; #529ced; *#D6AC04;  #76aed4 */
  background: #1aa4d7; /* #3AA4C3;*#529ced;  #020202 */
  /*border-left: 5px solid #8AD8F3; */
}


.s_nav ul.s_nav_inner li.on:before{
  counter-increment: list;
  content: "";
  display: block;
  position: absolute;
  left: 20px; /*  left: 0px;   */
  height: 15px;
  width: 15px;
  border-radius: 50%;
  background: #fff;  /* #529ced; #D6AC04;  #76aed4 */
  top: 50%;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.s_nav ul.s_nav_inner li.on:after{
  content: "";
  display: block;
  position: absolute;
  left: 26px; /*  left: 6px;   */
  height: 0;
  width: 0;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 5px solid #3AA4C3;  /*#529ced; */
  top: 50%;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}


/* 追加ここまで */








/*孫メニュー*/
.s_nav ul.s_nav_inner  ul {
	padding: 15px;
}

.s_nav ul.s_nav_inner ul a {
	padding: 15px 20px;
	background: url(../images/s_ic02.png) no-repeat left 20px;
}

/*　その他のメニュー　サイトマップとか*/
.s_nav ul.s_nav_inner2 {
	padding: 5px 15px;
}

.s_nav ul.s_nav_inner2 > li > a,
.s_nav ul.s_nav_inner2 > li > span {
	padding: 15px 20px;
}


/*子メニュー・孫メニュー共通*/
.s_nav a,.s_nav span {display: block;}
.s_nav a:hover { text-decoration: underline;}





/* メイン（サブページ）
*****************************************************/

/* コンテンツ部分
----------------------------------*/

.post p {margin: 0 0 10px;}
.post strong {font-weight: bold;}
.post a{text-decoration: underline;}
.post a:hover {text-decoration: none;}

/*linkはorangeかgreenと一緒に記述してください*/
.post a.link {
	display: inline-block;
	padding: 8px 15px 8px 30px;
	box-shadow: 5px 5px 0 0 #d5d6e1;
	text-decoration: none;
}
.post a.link.orange {background: url(../images/m_ic01.png) no-repeat 10px 15px #f0cf65;}
.post a.link.green {background: url(../images/m_ic02.png) no-repeat 10px 15px #F27982 ;color: #ffffff;}　/* 20190313 shioda add #1e6a16; */
.post a.link.orange:hover{background-color: #ddae16;}
.post a.link.green:hover{background-color: #3d9b33;}

.post ul {margin: 0 0 10px 30px;}
.post ul li{list-style: disc;}
.post ul ul {margin: 0 0 0 18px;}
.post ul ul li{list-style: circle;}
.post ol {margin: 0 0 10px 30px;}
.post ol ol {margin: 0 0 0 18px;}
.post ol li{list-style:decimal;}
.post ol ol li {list-style: lower-alpha;}


.post hr {
	border: 0;
	height: 0;
	border-bottom: 1px solid #9c9c9c;
	margin:30px 0;
}




.post img {	max-width:100%;	height:auto;}
img.aligncenter {display: block;margin: 15px auto;}
img.alignright {margin:0 0 15px 20px;}
img.alignleft {margin:0 20px 15px 0;}
.alignright{float:right;}
.alignleft{float:left;}
.link.aligncenter {margin: 0 auto;}
.post .hidden {overflow: hidden;}

/* 見出し
----------------------------------*/

/* 各ページタイトル　大見出し*/

.post h2 {
	font-size: 20px;
}

.post .head_text {
    margin:  0;                 /* デフォルトCSS打ち消し */
    position:  relative;        /* 位置調整 */
    font-weight:  normal;       /* 文字の太さ調整 */
    font-size: 22px;            /* 文字サイズ指定 */
	letter-spacing: 0.05em;
    background-color: #1aa4d7;     /* #3AA4C3　背景色指定 　#3AA4C3 #529ced; #D6AC04; 　#76aed4; #A4B0B6;  */
    color:  #fff;              /* 文字色指定     */
    padding: 5px 0 5px 40px;  /* 余白指定     padding: 11px 0 11px 40px; */
    margin-bottom: 50px;       /* 周りの余白指定  margin-bottom:  30px; */
}

.post .head_text:before {
    content: '';                /* 空の要素を作る */
    height: 110%;               /* 高さ指定 */
    width: 3px;                 /* 幅指定 */
    display:  block;            /* ブロック要素にする */
    position:  absolute;        /* 位置調整 */
    left: 14px;                 /* 位置調整 */
    top: -3px;                  /* 位置調整 */
    margin:  auto;              /* 位置調整 */
    background-color:  #fff;   /* 背景色指定 */
    transform: rotate(3deg);    /* 回転 */
}
.post .head_text:after {
    content: '';                /* 空の要素を作る */
    height: 116%;               /* 高さ指定 */
    width: 3px;                 /* 幅指定 */
    display:  block;            /* ブロック要素にする */
    position:  absolute;        /* 位置調整 */
    left: 14px;                 /* 位置調整 */
    top: -6px;                  /* 位置調整 */
    margin:  auto;              /* 位置調整 */
    background-color:  #fff;   /* 背景色指定 */
    transform: rotate(-15deg);  /* 回転 */
}



/* 各ページタイトル　 大見出し

.post h2 {
	margin: 0 0 30px;
	font-size:24px;
	font-weight: bold;
	position: relative;
	display: inline-block;
	letter-spacing: 0.1em;
}

.post h2:after {
	position: absolute;
	bottom: -5px;
	left: 0;
	width: 100%;
	height: 4px;
	content: "";
	border-radius: 3px;
	background: #F27982; 
}

*/

/* 各ページタイトル　 中見出し
.post h3 {margin: 30px 0 30px 0;} 

.post h3 span {
  padding: 0.25em 0.25em 0.25em 0.5em;
  border-radius: 0px;
  border-left: solid 5px #F27982;
  font-size:18px;
  font-weight: bold;
  letter-spacing: 0.05em;		
}


.post h3 {
	margin-bottom: 0.25em;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 0.1em;
}


 .post .cp_h3title {
	position: relative;
	padding: .0em .3em .0em .5em;
	border-left: 15px solid #8AD8F3; 
	margin: 20px 0 30px 0;
}

.post .cp_h3title::before {
	position: absolute;
	content: '';
	left: -15px;
	bottom: 0;
	width: 15px;
	height: 50%;
	background-color: #529ced; 
}

.post .cp_h3title::after {
	position: absolute;
	content: '';
	left: 0;
	bottom: 0;
	width: 100%;
	height: 0;
}

*/


.post h3{
    font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.05em; /* letter-spacing: 0.2em;  */
	margin: 10px 0 20px 0;

}

.post .heading1{
	position:relative;
	padding: 0px 0 10px 27px;
	line-height: 30px;
}
 
.post .heading1:before{
	content:''; 
	height:12px; 
	width:12px; 
	display:block; 
	background:#8AD8F3;  /* #6ca937 #3F710A */ 
	box-shadow: 0 0 5px rgba(255, 255, 255, 0.3) inset;
	-box-shadow: 0 0 5px rgba(255, 255, 255, 0.3) inset;
	-webkit-box-shadow: 0 0 5px rgba(255, 255, 255, 0.3) inset;
	-moz-box-shadow: 0 0 5px rgba(255, 255, 255, 0.3) inset; 
	position:absolute; 
	top:-0px; 
	left:5px;
	transform:rotate(-50deg);
	-webkit-transform:rotate(-50deg);
	-moz-transform:rotate(-50deg);
	-o-transform:rotate(-50deg);
	-ms-transform:rotate(-50deg);
}
.post .heading1:after{
	content:''; 
	height:8px; 
	width:6px; 
	display:block; 
	background:#529ced;  /* #3F710A */ 
	box-shadow: 0 0 5px rgba(255, 255, 255, 0.3) inset;
	-box-shadow: 0 0 5px rgba(255, 255, 255, 0.3) inset;
	-webkit-box-shadow: 0 0 5px rgba(255, 255, 255, 0.3) inset;
	-moz-box-shadow: 0 0 5px rgba(255, 255, 255, 0.3) inset; 
	position:absolute; 
	top:16px; 
	left:2px;
	transform:rotate(-90deg);
	-webkit-transform:rotate(-90deg);
	-moz-transform:rotate(-90deg);
	-o-transform:rotate(-90deg);
	-ms-transform:rotate(-75deg);
}



.post h4 {
	margin: 20px 0;
	padding: 5px 0px;
	font-size: 16px;	
	font-weight: bold;
	
}


.post h5{
font-size: 110%;
font-weight: bold;
margin: 0 0 10px 30px;	
}

.post h5 span{
position: relative;
}


.post h5 span::after {
  display: block;
  content: '';
  position: absolute;
  top: .2em;  /* .5em;  */
  left: -1.5em;
  width: 12px;
  height: 7px;
  border-left: 2px solid #000;
  border-bottom: 2px solid #000;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}



.post h6 {
	margin: 5px 0;
	padding: 0px;
	font-size: 15px;	
	font-weight: bold;
}


.tx-r{
	font-size: 100%;
	text-align: right;
}


/* 上付き文字　*/

sup {
vertical-align:super;	
font-size:70%;
}



/* 簡単な表　*/


th,td {
    border: solid 1px; 	/* 枠線指定 */
	padding: 7px 10px;	
}
 
.post table{
    border-collapse:  collapse;     /* セルの線を重ねる */
	 margin: 20px auto;
　font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}



/* 複雑？な表　*/


 
.post table .chart00　 {
border-collapse:  collapse;     /* セルの線を重ねる */
margin: 20px auto;
font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}


.post table.chart00 th {
	padding: 7px 10px;
	vertical-align: middle;	
	border: none;
}

.post table.chart00 td {
	padding: 7px 10px;
	word-break: break-all;
	border: none;
}





/* 表　上のタイトルあり */
.post table.chart01 {
	margin: 10px 0 20px;
	border-spacing: 0;
	border-collapse: collapse;
	border: #529ced 1px solid; /* #ddae16 solid; */
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}

.post table.chart01 th {
	padding: 7px 10px;
	vertical-align: middle;
	border: #529ced 1px solid; /* #ddae16 solid; */
	border-width: 0 0 1px 1px;
	
}

.post table.chart01 td {
	padding: 7px 10px;
	border:  #529ced 1px solid; /* #ddae16 solid; */
	border-width: 0 0 1px 1px;

	word-break: break-all;
}



/* 表　上のタイトル無し　スマホで縦並びになる*/
.post table.chart02 {
	margin: 10px 0 10px;
	border-spacing: 0;
	border-collapse: collapse;
　　 font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}

.post table.chart02 th {
	padding: 7px 10px;
	text-align: left;
	vertical-align: middle;	
	border-width: 0 0 1px 1px;
	background: none;
}

.post table.chart02 tr {
	
	border-top: 1px #529ced solid;
	border-bottom: 1px #529ced solid;
}

.post table.chart02 td {
	padding: 7px 10px;
	border-width: 0 0 1px 1px;
	background: none;
	word-break: break-all;
}




@media only screen and (max-width: 644px){
	.post table.chart01.sp_block td, .post table.chart01.sp_block th {display: block;width: auto !important;}
	table.chart01.sp_block {border-left: 0px none transparent; border-bottom: 0px none transparent;}
}





@media only screen and (max-width: 644px){
	.post h2 {font-size: 18px;}
	.post h3 span,.post h4 {font-size: 15px;}
	.alignright,.alignleft {float: none;}
	img.alignright,img.alignleft {display: block;margin: 10px auto;}
	.post table.default.sp_block td, .post table.default.sp_block th {display: block;width: auto !important;}
	table.default.sp_block {border-left: 0px none transparent; border-bottom: 0px none transparent;}
}



/* テキストを右側へ */

.text-r{
	text-align: right;
	font-size:95%;
}


/* リンクに番号や・などを付けない場合　*/

.nodot ul li {
	list-style-type: none;
    display:block;
	padding: 0px 0px;
}




/* テーブル2 保守サポートプラン */

table.support1 {
	width: 100%;
	margin:1em 0 4em;
	border-spacing:0px;

	}
table.support1 tr th,table.support1 tr td {
	text-align: left;
	
	border-top: 1px solid #999999;
	border-left: 1px solid #999999;
	border-bottom: 1px solid #999999;
	border-right: 1px solid #999999;
	padding: 5px;
	font-size:85%;
	}
table.support1 thead tr {
	background: #F7F7F7;
	}

table.support1 tbody.areaA tr {
	background: #fff;
	}
table.support1 tbody.areaB tr {
	background: #fff;
	}

	
@media only screen and (max-width: 644px){
table.support1 {
	border:none
	}
table.support1 thead {
	display: none;   /*theadは非表示に*/
	}
table.support1 tr {
	display: block;  /*trをブロックレベルに*/
	margin-bottom:.5em;
	border-bottom:1px solid #020202;
	box-shadow:0 2px 2px #ddd;
	}
table.support1 tr td {
	display:block;  /*tdをブロックレベルに（セルをやめる）*/
	border-top: 1px solid #020202;
	border-left: 1px solid #020202;
	border-right: 1px solid #020202;
	border-bottom:none;
	text-align: center;	
	padding: 5px;
	}
table.support1 tr td::before {   /*tdに擬似要素 ::before*/
	content: attr(aria-label);  /*aria-label属性の値をコンテンツに*/
	float: left;                /*テキストを左寄せにする*/
	font-weight:bold;
	padding-left:0; /*padding-left:.7em */
	}
table.support1 tr td::after {   /*クリアフィックス（コレは不要かもしれません）*/
	content:"";
	display:table;
	clear:both;
	}
table.support1 tbody th {
	display:block;  /*tbody内の thをブロックレベルに（セルをやめる）*/
	border:none;
	background:#F7F7F7;/*　薄いブルー */
	border-top: 1px solid #020202;
	border-left: 1px solid #020202;
	border-right: 1px solid #020202;
	text-align: center;
	padding: 5px;
	}
table.support1 tbody th::before {
	content:""  /*tbody内の thの前に 年 と追加*/
	}
table.support1 tbody.areaA th {

    }
table.support1 tbody.areaB th {

    }
}












/* サブページのヘッダーを固定  */

/* fixed menu */
body {
	padding-top: 150px;
}
div#fixedheader {
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	z-index: 100;
}
div#sidebar {
	position: relative;
	/*margin-top: -30px;*/ /* 固定ナビの高さ分のネガティブマージン*/
　padding-top: 30px; /* 打ち消し用のパディング*/
}
div#sidebar.fixed {
    position: fixed;
	top: 150px!important;
}
@media only screen and (max-width: 879px){
	body {
		padding-top: 0px;
	}
	div#fixedheader {
		position: static;
	}
	div#sidebar {
		position: static;
	}
}
/* fixed menu end */

a.anchor{
    display: block;
    padding-top: 100px;
    margin-top: -100px;
}

#title3 {
   margin-top:-100px;
  padding-top:100px;
}


/* 準備中ページ */

.pre01{
 padding: 20px;
 margin: 0 auto;	
 text-align: center;
}


/* 申し込み */

.b-admission{
  background-color: #F27982;
  border: 2px solid #F27982;
  color: #fff;
  line-height: 50px;
  padding: 20px;
	
}

.b-admission:a{
text-decoration: none !important;
	
}
.b-admission:hover {
  background-color: #fff;
  border-color: #F27982;
  color: #F27982
}




/*表2　日本がん・生殖医療登録システム（JOFR）への主な登録項目 の並び*/
.regi {
  display: flex;
}

.regi div.t_regi {
  width: calc(50% - 10px);
  margin: 5px;
}





/* リンク集　*/

.links_flexbox {
    background-color: none;     /* 背景色指定 */
    display: flex;            /* 余白指定 */
	margin: 0px auto 20px auto;
}

.links_flexitem:hover {
   color: #F27982; 
}
 
.links_flexitem {
	width: 33.3333%;  /* 4分割する時は　25％に変更 */
    padding: 10px;

    margin:  0px;              /* 外側の余白 */
    text-align: left;	
}


.links_flexitem a{
	text-decoration: underline;
	font-size:100%;
}

.links_flexitem:nth-child(1) {
    background-color:   none; /* 背景色指定 */
} 

.links_flexitem:nth-child(2) {
    background-color:   none; /* 背景色指定 */
}

.links_flexitem:nth-child(3) {
    background-color:  none; /* 背景色指定 */
}
 

@media screen and (max-width: 644px) {
.links_flexbox {
    flex-direction: column;
  }
  .links_flexbox .links_flexitem{
    width: 100%;
  }
}






/* flex-box レギュラーパターン　4分割 アンカーリンクのタグの中に入れ、1ページとするカテゴリ 　*/


.flex-box {
    background-color: none;     /* 背景色指定 */
    display: flex;            /* 余白指定 */
	margin: 0px auto 20px auto;

}

.flex-item:hover {
  color: #F27982; 
}
 
.flex-item {
	width: 25%;  
    padding: 10px;
    color:  #020202;               /* 文字色 */
    margin:  0px;              /* 外側の余白 */
    border-radius:  0px;        /* 角丸指定 */
	text-align: left;
	font-weight: bold;
	font-size:105%; /* 200414 shioda add */
}


.flex-item a{
	text-decoration: underline;
	font-size:100%;
}


.flex-item:nth-child(1) {
    background-color:  none; /* 背景色指定 */
} 

.flex-item:nth-child(2) {
    background-color:   none; /* 背景色指定 */

}


.flex-item:nth-child(3) {
    background-color:  none; /* 背景色指定 */
	
}
 
.flex-item:nth-child(4) {
    background-color: none;  /* 背景色指定 */
}

/* flex-box1 アンカーリンクのタグの中に入れ、1ページとするカテゴリ ※3カテゴリの場合　*/

.flex-box1 {
    background-color: none;     /* 背景色指定 */
    display: flex;            /* 余白指定 */
	margin: 0px auto 20px auto;
}

.flex-item1:hover {
   color: #F27982; 
}
 
.flex-item1 {
	width: 33.3333%;  /* 4分割する時は　25％に変更 */
    padding: 10px;
    color:  #020202;               /* 文字色 */
    margin:  0px;              /* 外側の余白 */
    border-radius:  0px;        /* 角丸指定 */
	text-align: left;
	font-weight: bold;
	font-size:105%; /* 200414 shioda add */
}


.flex-item1 a{
	text-decoration: underline;
	font-size:100%;
}


.flex-item1:nth-child(1) {
    background-color:   none; /* 背景色指定 */
} 

.flex-item1:nth-child(2) {
    background-color:   none; /* 背景色指定 */

}


.flex-item1:nth-child(3) {
    background-color:  none; /* 背景色指定 */
}
 



/* flex-box2 アンカーリンクのタグの中に入れ、1ページとするカテゴリ ※9カテゴリの場合　*/

.flex-box2 {
    background-color: none;     /* 背景色指定 */
    display: flex;            /* 余白指定 */
	margin: 0px auto 0px auto;
}

.flex-item2:hover {
   color: #F27982; 
}
 
.flex-item2 {
	width: 33.3333%;  /* 4分割する時は　25％に変更 */
    padding: 10px;
    color:  #020202;               /* 文字色 */
    margin:  0px;              /* 外側の余白 */
    border-radius:  0px;        /* 角丸指定 */
	text-align: left;
	font-weight: bold;
	font-size:105%; /* 200414 shioda add */
}


.flex-item2 a{
	text-decoration: underline;
	font-size:100%;
}

.flex-item2:nth-child(1) {
    background-color:  none; /* 背景色指定 */

} 

.flex-item2:nth-child(2) {
    background-color:   none; /* 背景色指定 */

}


.flex-item2:nth-child(3) {
    background-color:  none; /* 背景色指定 */

}
 

/* flex-box3 アンカーリンクのタグの中に入れ、1ページとするカテゴリ ※2カテゴリの場合　*/

.flex-box3 {
    background-color: none;     /* 背景色指定 */
    display: flex;            /* 余白指定 */
	margin: 0px auto 20px auto;
}

.flex-item3:hover {
   color: #F27982; 
}
 
.flex-item3 {
	width: 50%;  /* 4分割する時は　25％に変更 */
    padding: 10px;
    color:  #020202;               /* 文字色 */
    margin:  0px;              /* 外側の余白 */
    border-radius:  0px;        /* 角丸指定 */
	text-align: left;
	font-weight: bold;
	font-size:105%; /* 200414 shioda add */
}

.flex-item3 a{
	text-decoration: underline;
	font-size:100%;
}



.flex-item3:nth-child(1) {
    background-color:  none; /* 背景色指定 */
} 

.flex-item3:nth-child(2) {
    background-color:  none; /* 背景色指定 */


}


/* 各種ご案内 ：リンクを赤字に 200909 shioda add */

.red-links a{
	color: #ff0000 !important; 
}


.red-links a:hover{
	color: #ff0000 !important; 
}


video {
	max-width: 100%;
	height: auto;
	width: 100%\9;
	/* IE8のみ適用 */
}





.movie-wrap {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
}
 
.movie-wrap iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}



/*　役員　210311　shioda add */

.c_txt dt{
  float: left;
}

.c_txt dd{
  margin-left: 150px;
}

@media only screen and (max-width: 644px){
.c_txt dt{
   float: left;
}

.c_txt dd{
 margin-left: 120px;
}
}


/*　SSMS-BASIC */
.sys_l{
	float: left;
	padding: 10px;
	width: 380px;
}

.sys_r{
	float: right;
	padding: 10px;
	width: 380px;
}

@media only screen and (max-width: 644px){
.sys_l .sys_r{
  float: none;
  padding: 0 auto;	
  width: 100%;	
}
}



/*　導入作業例 */

.t_blue{
padding: 10px;
background: #5688d8;
color: #fff;	
}
.t_green{
padding: 10px;
background: #9fce63;
color: #fff;		
}
.t_orange{
padding: 10px;
background: #e99b56;
color: #fff;		
}
.t_purple{
padding: 10px;
background: #c06df7;
color: #fff;		
}



.t_work1{
padding: 10px;
background: #8eb4e3;
color: #fff;

}
.t_work2{
padding: 10px;
background: #8eb4e3;
color: #fff;
	
}
.t_work3{
padding: 10px;
background: #c3d79c;
color: #fff;

}
.t_work4{
padding: 10px;
background: #b3a1c7;
color: #fff;

}

/*　会社概要 googlemap */

.gmap {
height: 0;
overflow: hidden;
padding-bottom: 56.25%;
position: relative;
}
.gmap iframe {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
}


/*　追加　*/


#title {
width: 1080px;
height: 300px;
max-width: 100%;
margin: 0 auto;
padding: 50px;
display: flex;
align-items: center;
background-image: url("../../img/title-bg.jpg");
background-size: cover;
background-repeat: no-repeat;
background-position: center;
}
#title img {
max-width: 90%;
width: 300px;
margin: 0;
}

footer .footer {
  background-color: #1aa4d7;
  color: #FFF;
  text-align: center;
  margin: 0;
  padding: 20px 0; }
  footer .footer ul {
    display: flex;
    justify-content: center;
    align-items: center;
    flex: none; }
    @media screen and (max-width: 960px) {
      footer .footer ul {
        display: block;
        width: 100%; } }
    footer .footer ul li {
      padding: 1em; }
      @media screen and (max-width: 960px) {
        footer .footer ul li {
          width: 100%;
          padding: 0.5em; } }
      footer .footer ul li a.btn {
	  display: block;
        width: 20em;
        max-width: 100%;
		border: 3px solid #FFF;
		color: #FFF;
		padding: 0.8em 1em;
		border-radius: 3em;
		font-weight: 600;
        margin: auto;
		transition: 0.5s;
		}
      footer .footer ul li a.btn:hover {
	  background-color: #FFF;
	  color: #1aa4d7;
	  }
footer .copy {
  text-align: center;
  font-size: 0.8em;
  padding: 20px;
  margin-bottom: 60px;
  background: #FFF;
  color: #1aa4d7; }
 