@charset "utf-8";
/* CSS Document */
 * {
    margin: 0 auto;
    padding: 0;
	 
  }
	
img {max-width:100%; width /***/:auto; /*IE8用ハック*/} /*画像サイズが横幅に合わせて可変します*/
 * {
    margin: 0 auto;
    padding: 0;
  }


/* pc */
@media screen and (min-width : 767px ){
/*ここにpc用スタイルを記述*/

#contents {
	margin:0 auto;
	padding: 0;
}



#container {
	width: 95%;
	max-width:900px;
	margin: 0 auto;
	padding: 0;
		 font-family: "Noto Sans Japanese", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}

.midashi{
padding: 0.25em 0.5em;/*上下 左右の余白*/
color: #494949;/*文字色*/
background: transparent;/*背景透明に*/
border-left: solid 5px #7db4e6;/*左線*/
border-bottom: solid 3px #cccccc;/*下線*/
font-size:24pt;/*フォントサイズ*/
font-weight:bold;
	margin-bottom: 10px;
	text-align: left;
}
	
	
	/*230922　サイトマップ仕様*/
.mainttl{
width: 93%;
	max-width: 900px;
height: auto;
color: #494949;/*文字色*/
background: transparent;/*背景透明に*/
border-left: solid 5px #7db4e6;/*左線*/
border-bottom: solid 3px #cccccc;/*下線*/
font-size:18pt;/*フォントサイズ*/
font-weight:bold;
padding: 25px 0 20px 15px;/*上下 左右の余白*/
margin: 0 0 0.5em 1em;
}
	
.mainttl2 {
	position: relative;
	width: 93%;
	height:50px;
	padding: 0.75em 1.5em;
	background: linear-gradient(to top, #E9E8E8, #E3E1E1);
	color: #000;
	font-size:18pt;/*フォントサイズ*/
font-weight:bold;
	}

.mainttl3 {
	position: relative;
	width: 93%;
	border-bottom: 5px solid #ddd;
	padding: 10px 0;
	font-size:18pt;/*フォントサイズ*/
font-weight:bold;
	}
.mainttl3:before {
	position: absolute;
	left: 0;
	bottom: -5px;
	width: 20%;
	height: 5px;
	content: '';
	background: #27acd9;
	}
	
	
.flexbox {
	 display: flex;
	 display: -webkit-flex;
	width: 100%;
      margin: 0 auto;
	  }

.ttl2{
	width:100%;
	display: inline-flex;
	justify-content:center;
	border: 1px solid #003399;
  	border-radius: 4px;
	color: #1F1F1F;
	background: #FFFFFF;
	text-align: left;
	margin: 0 0 0.5em 0.5em;
}
	
.ttl2 p{
	padding: 0.5em;
	font-size:1em;
		line-height: 1.3em;
		color:#003399;
	}

	
.infotxt{
	width:100%;
	display: block;
	text-align: left;
	margin:10px;
	padding-left: 0px;
	padding-bottom: 10px;
    color: #1F1F1F;
	font-size: 1em;
}
	
	.infotxt a {
    color: #1F1F1F;
	font-size: 1em;
}
	/*	*/	
.sitemap-wrap {
	display: inline-flex;
	display: -webkit-inline-flex;
	width: 95%;
	max-width: 900px;
    margin: 0 auto;
	padding: 0;
}

.row{
width:45%;
flex-wrap:wrap;
 color: rgba(0,0,0,0.40);
  padding: 2%;
  text-align: center;
}

.row:before, .row:after {
	content: "";
	display: table;
}

.row:after {
	clear: both;
}
	
p {
  text-align: left;
}


.arrow1 {
	text-align: left;
	margin-left: 1em;
	padding-left: 1em;
}

.arrow1 li{
	font-size:0.95em;
	line-height: 1.4em;
	list-style-type: none;
		padding-left: 0.5em
}
	
.arrow1 li::before {
  position: relative;
  top: -2px;
  left: -8px;
   display: inline-block;
   width: 6px;
  height: 6px;
   content: '';
   border-radius: 100%;
  background: #756FF0;
}

.arrow1 li:hover{
color: #00003E;
}

.arrow1 li:visited {
	color:#3E3E3E;
}

.arrow1 li:active {
	color:#3E3E3E;
}

	}



/* スマートフォン  */
@media only screen and (max-width:767px){
		/*230922　サイトマップ仕様*/
#contents {
	margin:0 auto;
	padding: 0;
}
#container {

	width:100%;
margin: 0 auto;	
}
	
.mainttl{
width: 90%;
height: auto;
padding: 1em 0 0.5em 1em;/*上下 左右の余白*/
margin: 0 0 0.5em 0.5em;
color: #494949;/*文字色*/
background: transparent;/*背景透明に*/
border-left: solid 5px #7db4e6;/*左線*/
border-bottom: solid 3px #cccccc;/*下線*/
font-size:14pt;/*フォントサイズ*/
font-weight:bold;
}
	
.mainttl3 {
	position: relative;
	width: 93%;
	border-bottom: 5px solid #ddd;
	padding: 10px 0;
	font-size:14pt;/*フォントサイズ*/
font-weight:bold;
	}
.mainttl3:before {
	position: absolute;
	left: 0;
	bottom: -5px;
	width: 20%;
	height: 5px;
	content: '';
	background: #27acd9;
	}
	
		
.ttl2{
	width:91%;
	display: block;
	flex-direction: column;
	justify-content:center;
	margin:0.5em 0.5em 0.5em 1em; 
padding: 0.5em;
border: 1px solid #989898;
  border-radius: 4px;
	 color: #1F1F1F;
	background: #FFFFFF;
	text-align: left;
}
	
.ttl2 p{
	padding: 0.5em;
	font-size:0.9em;
	line-height: 1.3em;
	color:#003399;
	}
		
	
	
.subtitle02 {
display: inline-block;
border-left: solid 5px #003399;
	font-weight: bolder;
	padding-left:1em;
 	padding-bottom: 0em;
  	/*border-bottom: 2px solid #ccc;*/
    margin: 1em;
}
	
.subtitle02 p{
　overflow-wrap: break-word;
　　　word-wrap: break-word;
	line-height: 1.35em;
}
.subtitle02:first-letter {
  margin-right: .1em;
  font-size: 1.5em;
}

.midashi{
padding: 0.25em 0.5em;/*上下 左右の余白*/
color: #494949;/*文字色*/
background: transparent;/*背景透明に*/
border-left: solid 5px #7db4e6;/*左線*/
border-bottom: solid 3px #cccccc;/*下線*/
font-size:12pt;/*フォントサイズ*/
font-weight:bold;
	line-height: 1.3em;
margin-bottom: 10px;
	text-align: left;
}
		/*230922　サイトマップ仕様*/
.mainttl{
width: 90%;
height: auto;
padding: 1em 0 0.5em 1em;/*上下 左右の余白*/
margin: 0 0 0.5em 0.5em;
color: #494949;/*文字色*/
background: transparent;/*背景透明に*/
border-left: solid 5px #7db4e6;/*左線*/
border-bottom: solid 3px #cccccc;/*下線*/
font-size:14pt;/*フォントサイズ*/
font-weight:bold;
}
	

	
.sitemap-wrap {
	display: inline-block;
	display: -webkit-inline-block;
	width: 100%;
    margin: 0 auto;
}


	
	
.infotxt{
	width:91%;
	display: block;
	text-align: left;
	margin:1em 1.5em;
	padding-left: 0px;
	padding-bottom: 10px;
    color: #1F1F1F;
	font-size: 11pt;
}
	
	

.row {
	 flex: 1;
    -webkit-flex: 1;
    flex-direction: column;
	margin-bottom: 20px;
	}
	
p {
  text-align: left;
}
.arrow1 {
	text-align: left;
	margin-left: 1em;
	padding-left: 1em
}
.arrow1 li{
	font-size:0.95em;
	line-height: 1.4em;
	list-style-type: none;
	padding-left: 0.5em
	}
	
.arrow1 li::before {
  position: relative;
  top: -2px;
  left: -8px;
   display: inline-block;
   width: 6px;
  height: 6px;
   content: '';
   border-radius: 100%;
  background: #756FF0;
}
.arrow1 li{line-height: 1.5em;}
.arrow1 li:hover{color: darkblue;}
.arrow1 li:visited {color:#3E3E3E;}
.arrow1 li:active {color:#3E3E3E;}
	}