@charset "UTF-8";

a         {color: #333333; text-decoration: none;}
a:link    {color: #333333; text-decoration: none;}
a:visited {color: #292929; text-decoration: none;}
a:hover   {color: #666666; text-decoration: underline;}

body {
	font-size: 16px;
	letter-spacing: .025em;
	line-height: 1.8;
	word-break: break-all;
	margin: 0;
	min-width: 320px;
	overflow-x: hidden;
	-webkit-text-size-adjust: 100%;
  text-align: center;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;}
/*  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;*/
/*  font-family: "ＭＳ Ｐ明朝" , "平成明朝","Times New Roman" , serif;*/
  padding: 0;
  margin: 0;
}

table{
  margin:0;
  padding:0;
  border-collapse: collapse;
  font-size:1em;
}

th{
  margin:0px;
  padding:5px 8px;
  text-align:center;
  font-weight: normal;
  border:f3f3f3 1px solid;
}

td{
  margin:0px;
  padding:5px 8px;
  text-align:center;
  border:f3f3f3 1px solid;
}

ul,li{
  list-style:none;
}

img{border:0;}

.clear {
/*zoom: 100%;*/
  overflow: hidden;
}
.clear:after {
  content: "";
  clear: both;
  height: 0;
  display: block;
  visibility: hidden;
}


/* ------------------------------------- */
/* structure id,class */
/* ------------------------------------- */
#wrapper {
  width:100%;
  text-align: left;
  margin: 0;
}

.header_top{
	display: block; 
	width:100%;
	text-align: center;
}
.header_top a{
	display: block; 
	width:100px;
	margin:0 auto;
}
.header_top a img{ width: 100%; }

.form_tr{ width:100%; margin-top:30px; }
.form_th{ width:calc( 25% - 0px ); padding: 10px 8px; color:#fff; background:#005196; float:left; }
.form_td{ width:calc( 75% - 20px ); margin-left:20px; padding: 8px; color:#000; background:#efefef; float:right; }

.th_l3{
  flex-direction: column;
  justify-content: center;
  padding:38px 8px;
}
.th_l5{
  flex-direction: column;
  justify-content: center;
  padding:65px 8px;
}

footer{width:100%; margin:0 auto; padding:30px 0;}
#footerLink{ color:#fff; font-size:12px;}
#footerLink a{ color:#fff; }
#footerLink a:hover{ color:#fff; }
.footer01{ width:30%;float:left; }
.footer02{ width:23%;float:left; }
.footer03{ width:23%;float:left; }
.footer04{ width:23%;float:left; }

.footer_link_logoLine{
	vertical-align : bottom;
}
.footer_rix_logo{
	width: 48px;
	
	
}

.box1920{width:1920px; margin:0 auto; padding:0; border:#ccc solid 1px; }
.box1200{width:1200px; margin:0 auto; padding:0; }
.box800{width:800px; margin:0 auto; padding:0; }

.block2{width: calc( 50% - 0px ); float:left; margin:0px; padding:0px;}
.block3{width: calc( 33.33% - 0px ); float:left; margin:0px; padding:0px;}
.block4{width: calc( 25% - 0px ); float:left; margin:0px; padding:0px;}
.block5{width: calc( 20% - 0px ); float:left; margin:0px; padding:0px;}
.block6{width: calc( 16.66% - 0px ); float:left; margin:0px; padding:0px;}
.block8{width: calc( 12.5% - 0px ); float:left; margin:0px; padding:0px;}

.pconly{display:block;}
.sponly{display:none;}

.searchblock{ width:100%; }
.searchbox{ width:90%; float:left; }
.searchbutton{ width:10%; float:left; }

.news_tag_select{
	text-align:center;
	padding-bottom:30px;
}
.news_tag_select .tag_off{
	border-radius: 15px;
	display:inline-block;
	width: 120px;
	margin: 0 auto;
	padding:0 3px;
	text-align:center;
	line-height:1.2rem;
	background:#fff;
	color:#009259;
	font-size:0.8rem;
	border:solid #009259 1px;
}
.news_tag_select .tag_on{
	border-radius: 15px;
	display:inline-block;
	width: 120px;
	margin: 0 auto;
	padding:0 3px;
	text-align:center;
	line-height:1.2rem;
	background:#009259;
	color:#fff;
	font-size:0.8rem;
	border:solid #009259 1px;
}

.datalist{
  padding-top:30px;
}
.datalist_01{
  width: 10%;
  height:120px;
  float:left;
  flex-direction: column;
  justify-content: center;
  padding:38px 0px;
}
.datalist_02{
  width: 10%;
  height:120px;
  float:left;
}
.datalist_03{ width: 78%;  padding-left:24px; float:left; }

.datalist .tag{
border-radius: 15px;
display:inline-block;
width: 120px;
padding:0 3px;
float:right;
text-align:center;
line-height:1.2rem;
background:#eee;
color:#000;
font-size:0.8rem;
border:solid #eee 1px;
}

.gradation-box {
  min-height: 300px; /* 最低高さを300pxに指定 */
  background: linear-gradient(to bottom, rgba(240, 240, 240, 0.6), rgba(255, 255, 255, 0.6)); /* グラデーションの指定 */
}


/* ------------------------------------- */
/* table横スクロール */
/* ------------------------------------- */
/*--スマートフォン--*/
/*--メディアクエリの記述なし--*/
.table-area {
	width: 98%;
	margin: 0 auto;
	overflow-x: scroll;
}

table.sp-table {
	width: 100%;
	min-width: 700px;
	margin: 2em auto 2em;
}

/*--↓ 下記は装飾になります--*/
table.sp-table, 
table.sp-table td, 
table.sp-table th {
	border: 1px solid #f3f3f3;
	border-collapse: collapse;
}

table.sp-table td, 
table.sp-table th {
	font-size: .8rem;
	padding: 1em;
	box-sizing: border-box;
}

table.sp-table th {
	color: #111;
	background-color: #e2e2e2;
}
table.sp-table th.color2 {
	color: #111;
	background-color: #e5f4ee;
}
table.sp-table th.color2g {
	color: #111;
	background-color: #e5f4ee;
}
table.sp-table th.color2b {
	color: #111;
	background-color: #86c8fa;
}
table.sp-table td {
	color: #111;
	background-color: #fff;
}
table.sp-table th.table_dl_txt{ padding-top: 22px; }
table.sp-table td.table_dl_txt{ padding-top: 22px; }

/*--↓ ボタン--*/
table.sp-table td.more-btn a {
	color: #fff;
	display: block;
	width: 100%;
	padding: 1em 1em;
	text-align: center;
	background: #005196;
	border-radius: 2px;
}

/*--PC--*/
@media screen and (min-width: 1200px){
	.table-area {overflow-x: auto;}
	
	table.sp-table {width: 96%;}
}



/* ------------------------------------- */
/* スマホ閲覧時のハンバーガーメニュー */
/* ------------------------------------- */
#hanburger {
  display: none; /* チェックボックスを非表示 */
}

.menu_button { /* ボタンのスタイル */
  width: 50px; /* 幅 */
  height: 50px; /* 高さ */
  position: fixed;
  top: 20px;
  right: 20px;
  background: #e0e0e0; /* 背景色 */
  z-index: 300;
}

.menu_button::before { /* アイコンのスタイル */
  font-family: "Font Awesome 5 Free";
  content: "\f0c9"; /* アイコン「３本線」 */
  font-weight: 900;
  position: absolute;
  color: #111;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}

#hanburger:checked + .menu_button::before { /* アイコンのスタイル（チェック済み） */
  content: "\f00d"; /* アイコン「×印」 */
}

.global_menu { /* メニュー全体のスタイル */
  visibility: hidden; /* メニューを非表示 */
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  padding: 30px;
//  color: #333; /* 文字色 */
//  background: #ffc0cb; /* 背景色 */
  color: #111; /* 文字色 */
  background: #fff; /* 背景色 */
  overflow-y:  scroll;
  text-align: center;
  z-index:200;
}

#hanburger:checked ~ .global_menu { /* メニュー全体のスタイル（チェック済） */
  visibility: visible; /* メニューを表示 */
}

.global_menu a { /* 各項目のスタイル */
  display: block;
  width: 100%;
}

.global_menu a:hover { /* 各項目のスタイル（ホバー時） */
//  background: #ffb6c1;
  background: #fff;
  text-decoration: none;
}

.menu:not(:last-child) {
  margin-bottom: 20px;
}

.menu > a { /* 親項目のスタイル */
  font-weight: bold;
  padding: 10px 20px;
}

.child_menu {
  text-align: left;
}
.child_menu > li > a {
  padding: 10px 30px;
  font-size: 0.8em;
}

.navi_anker{transform: scale(1, 1.2);}

@media screen and (min-width: 720px) {
  /* PC閲覧時のメガメニュー */
  .menu_button {
    display: none; /* ハンバーガーメニューのボタンを非表示 */
  }

  .global_menu { /* メニュー全体のスタイル */
    position: relative;
    padding: 0;
//    color: #fff; /* 文字色 */
//    background: #e6a3ad; /* 背景色 */
    color: #111; /* 文字色 */
    background: #fff; /* 背景色 */
    visibility: visible;
    overflow-y: visible;
    z-index:100;
  }

  .menu, .child_menu > li {
    display: inline-block;
  }

  .menu:not(:last-child) {
    margin-bottom: 0;
  }

  .menu > a { /* 親項目のスタイル */
    font-weight: normal;
    padding: 20px 20px;
  }

  .menu:hover > a {
//    background: #ffb6c1;
    background: #fff;
  }

  .child_menu { /* 下層メニューのスタイル */
    width: 100%;
    position: absolute;
//    top: 0; /* topを0に(スライドしながらドロップダウン) */
    top: 100%; /* (フェードインしながらドロップダウン) */
    left: 0;
    padding: 30px;
//    color: #333; /* 文字色 */
//    background: #ffb6c1; /* 背景色 */
    color: #111; /* 文字色 */
    background: #fff; /* 背景色 */
    visibility: hidden; /* 下層メニューを非表示 */
    opacity: 0; /* 不透明度を最小に */
//    transition: 1.5s top, 1.5s opacity; /* アニメーション設定(スライドしながらドロップダウン) */
    transition: 1s opacity; /* アニメーション設定(フェードインしながらドロップダウン) */
  }

  .menu:hover .child_menu { /* 下層メニューのスタイル（親項目ホバー時） */
//    top: 100%; /* 定位置に戻す(スライドしながらドロップダウン) */
    opacity: 1; /* 不透明度を最大に */
    visibility: visible; /* 下層メニューを表示 */
  }

  .child_menu > li > a {
    padding: 10px 30px;
  }

  .child_menu > li > a:hover {
      background: unset;
      color: #222;
  }

}

/* ------------------------------------- */
/* default class */
/* ------------------------------------- */
.font-serif{
  font-family: "ＭＳ Ｐ明朝" , "平成明朝","Times New Roman" , serif;
}
.bold{font-weight:bold;}

.bgcolor01{ background:#fff; }
.bgcolor02{ background:#f1f1f1; }		//header navi
.bgcolor03{ background:#e8f5f0; }
.bgcolor04{ background:#212c34; }		//footer link
.bgcolor05{ background:#1a2831; }		//title
.bgcolor06{ background:#009259; }		//maingreen
.bgcolor07{ background:#1e5f4e; }		//uguisu
.bgcolor08{ background:#005196; }		//form,button

/* f1f1f1 -> ffffff 300px */

.fontcolorG{ color:#009259;}								//default green
.fontcolorW{ color:#fff;}										//default white

.pageTitle{
	position: relative;
	display:inline-block;
	margin:0 auto;
	padding:8px 16px;
	background:#1a2831;
	color:#fff;
}
/* title_3underline blue */
.title_border_b {
	position: relative;
	display: inline-block;
	font-weight:bold;
	border-bottom: solid 3px #cdcdcd;
	margin: 0 auto 50px;
	padding: 5px 0 5px 0;
}
.title_border_b:after {
	content: '';
	position: absolute;
	bottom: -3px;
	left: 50%;
	transform: translateX(-50%);
	width: 50px;
	height: 3px;
	background-color: #005196;
}

/* title_3underline green */
.title_border_g {
	position: relative;
	display: inline-block;
	font-weight:bold;
	border-bottom: solid 3px #cdcdcd;
	margin: 0 auto 50px;
	padding: 5px 0 5px 0;
}
.title_border_g:after {
	content: '';
	position: absolute;
	bottom: -3px;
	left: 50%;
	transform: translateX(-50%);
	width: 50px;
	height: 3px;
	background-color: #179966;
}

.shadowbox{
  box-shadow: 0 0 12px #999;
  border:#ccc solid 1px;
  border-radius: 5px;
}

/* googlefont */
.montserrat-title {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

.txtleft{ text-align: left; }
.txtcenter{ text-align: center; }
.txtright{ text-align: right; }

.table-responsive {
    display: table;
}

.br-sp {
	display: none;
}
.br-pc {
	display: inline;
}



@media screen and (max-width: 1200px) {
  .box1200{width:100%; margin:0 auto; padding:0; }
}
@media screen and (max-width: 800px) {
  .box1200{width:96%; margin:0 auto; padding:0; }
  .box800{width:96%; margin:0 auto; padding:0; }
  .block4{width: calc( 50% - 12px ); float:left; margin:5px;}
  .block5{width: calc( 50% - 12px ); float:left; margin:5px;}
  .block6{width: calc( 50% - 12px ); float:left; margin:5px;}
	.block8{width: calc( 25% - 0px ); float:left;}
  footer{width:100%; margin:0 auto; padding:0;}
  .footer01{ width:90%;float:none; margin: 0 auto; padding-top:30px; }
  .footer02{ width:90%;float:none; margin: 0 auto; }
  .footer03{ width:90%;float:none; margin: 0 auto; }
  .footer04{ width:90%;float:none; margin: 0 auto; padding-bottom: 60px; }
  .pconly{display:none;}
  .sponly{display:block;}
	.form_th{ width:calc( 96% - 16px ); margin:20px auto 0; padding: 10px 8px; float:none; }
	.form_td{ width:calc( 96% - 16px ); margin:0 auto; padding: 8px; float:none; }
}
@media screen and (max-width: 600px) {
	.mainBox{ width:94%;margin:0 auto; }
  .box1200{width:94%;margin:0 auto; padding:0; }
  .box800{width:94%;margin:0 auto; padding:0; }
  .table-responsive {
      display: block;
      overflow-x: auto;
      white-space: nowrap;
  }
	.br-sp {
		display: block;
	}
	.br-pc {
		display: none;
	}
}