@charset "UTF-8";


@media screen {
	.print_disp {
		display : none;
	}
}


body {
	/* border-top : solid 13px #006633; */			/* 2021削除 */
	margin:0;										/* 2021追加 */
}

/*画面全体*/
.body {
	/*max-width: 1024px;*/							/* 2021削除 */
	/*margin : auto;*/								/* 2021削除 */
}

hr {
	margin: 20px 0 20px -20px;
	border: solid 0.5px gray;
	background: gray;
}


/*リンク*/
a {
	color: darkgreen;
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}
a.no-hover:hover {
	text-decoration: none;
}


/*ボタン*/
button {
	text-decoration: none;
	border-radius: 25px;
	outline: none;
}

.download_btn {
	border-radius: 25px;
	outline: none;
	padding: 5px 20px;
	color: #006633;
	background: white;
	margin: 0 20px 0 20px;
	border: 1px solid #006633;
	text-decoration:none;
	font-size: 13px;
	cursor: pointer;
}
.download_btn:hover {
	background: #339966;
	border: solid 1px #339966;
	color: #fff;
	text-decoration:none;
	font-size: 13px;
}

.download_btn a {
	text-decoration: none;
	color: white;
	font-weight: bold;
}

.download_off_btn {
	border-radius: 25px;
	outline: none;
	text-decoration:none;
	font-size: 13px;
	cursor: pointer;

	display: inline;
	margin: 1px 2px;
	padding: 5px 20px;
	color: #fff;
	background: #ddd;
	border: 1px solid #ccc;
	pointer-events: none;
}

.transition_btn {
	padding: 5px 20px;
	color: #006633;
	background: white;
	margin: 0 20px 0 20px;
	border: 1px solid #006633;
}

.transition_off_btn {
	padding: 5px 20px;
	color: #fff;
	background: #ddd;
	margin: 0 20px 0 20px;
	border: 1px solid #ccc;
	pointer-events: none;
}

.search_btn {
	padding: 2px 20px;
	color: #006633;
	background: white;
	margin: 0 10px 0 35px;
	border: 1px solid #006633;
}

.send_btn {
	padding: 12px 20px;
	color: #fff;
	background: #006633;
	margin: 10px 30px 5px 20px;
	border: solid 1px #006633;
}

.send_off_btn {
	padding: 12px 20px;
	color: #fff;
	background: #ddd;
	margin: 10px 30px 5px 20px;
	border: 1px solid #ccc;
	pointer-events: none;
}

.table_btn {
	display: inline;
	margin: 1px 2px;
	padding: 2px 20px;
	color: #fff;
	background: #006633;
	border: solid 1px #006633;
}

.table_off_btn {
	display: inline;
	margin: 1px 2px;
	padding: 2px 20px;
	color: #fff;
	background: #ddd;
	border: 1px solid #ccc;
	pointer-events: none;
}

.check_btn {
	padding: 2px 20px;
	color: #fff;
	background: #006633;
	border: solid 1px #006633;
	margin: 3px 10px 0 0;
}

.check_off_btn {
	padding: 2px 20px;
	color: #fff;
	background: #ddd;
	margin: 3px 10px 0 0;
	border: 1px solid #ccc;
	pointer-events: none;
}

.reset_btn {
	padding: 2px 20px;
	color: #000;
	background: #ddd;
	border: solid 1px #808080;
	margin: 15px 20px 0 20px;
}

.resetbtn_area button:hover {
	background: #808080;
	border: 1px solid #c0c0c0;
}

button:hover {
	background: #339966;
	border: solid 1px #339966;
	color: #fff;
}

.download_table_btn {
	text-decoration: none;
	border-radius: 25px;
	outline: none;
	display: inline-block;
	margin: 1px 2px;
	padding: 2px 20px;
	color: #fff;
	background: #006633;
	border: solid 1px #006633;
	font-size: 13px;
	cursor: default;
}

.download_table_btn:hover {
	background: #339966;
	border: solid 1px #339966;
	color: #fff;
	text-decoration:none;
	font-size: 13px;
}

.download_table_btn a {
	text-decoration: none;
	color: white;
}

.download_table_off_btn {
	text-decoration:none;
	border-radius: 25px;
	outline: none;
	display: inline;
	margin: 1px 2px;
	padding: 2px 20px;
	color: #fff;
	background: #ddd;
	border: solid 1px #ccc;
	font-size: 13px;
	cursor: pointer;

	pointer-events: none;
}

.off_btn {
	padding: 5px 20px;
	color: #fff;
	background: #ddd;
	margin: 0 20px 0 20px;
	border: 1px solid #ccc;
	pointer-events: none;
}

.off_btn button:hover {
	background: #ddd;
	border: 1px solid #ddd;
}

.check_off_btn button:hover {
	background: #ddd;
	border: 1px solid #ddd;
}

.table_off_btn button:hover {
	background: #ddd;
	border: 1px solid #ddd;
}

.send_off_btn button:hover {
	background: #ddd;
	border: 1px solid #ddd;
}

/*ヘッダー*/
header {
	width: 100%;							/* 2021変更 */
	/*margin: 10px 0 5px 0;*/				/* 2021削除 */
	/*border-bottom: solid 1px #006633;*/	/* 2021削除 */

	border-top : solid 13px #006633;		/* 2021追加 */
	background: #fff;						/* 2021追加 */
	position: fixed;						/* 2021追加 */
	z-index: 999;							/* 2021追加 */
}

div.content {								/* 2021追加 */
	padding-top: 162px;
	margin:auto auto;
	width: 1024px;
}

div.login_content {							/* 2021追加 */
	padding-top: 53px;
	margin:auto auto;
	width: 1024px;
}



.title_area {
	width: 1024px;
	display: table;
	margin:auto;							/* 2021追加 */
}

.title {
	display: table-cell;
	text-align: left;
}

.title h1 {
	font-size: 1em;
	font-weight: normal;
	/*margin: 0;*/							/* 2021削除 */
	margin-top: 10px;						/* 2021追加 */
	margin-bottom: 0px;						/* 2021追加 */
	padding-left: 25px;
}

.user {
	display: table-cell;
	text-align: right;
}

.user span {
	padding-right: 25px;
}

.logout {
	width: 1024px;							/* 2021追加 */
	text-align: right;
	/*margin: 5px 25px 0 0;*/				/* 2021削除 */
	margin: 5px auto;						/* 2021追加 */
}

.logout a{									/* 2021追加 */
	padding-right: 25px;
}

div.returnMenu {
	width: 1024px;
	display: table-cell;
	text-align: right;
}
div.returnMenuEnd {
	clear:both;
}

/*メニューバー*/
div.menu_area {								/* 2021追加 */
	background: #006633;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.5);	/* 2021追加 */
}

div.menu {									/* 2021追加 */
	width: 1024px;
	margin:auto;
}

ul.menu {
	width: 100%;							/* 2021変更 */
	list-style-type: none;
	padding: 0;
	margin: 0px auto 0 auto;				/* 2021変更 */
	/*background: #006633;*/				/* 2021削除 */
}

ul.menu p {
	color: #fff;
	margin: 10px 0 0 0;
}

ul.menu span {
	display: block;
	color: #fff;
	margin: 0 0 10px 0;
	font-size: 0.2em;
}

ul.menu li {
	display: inline-block;
	width: 170px;
	list-style-type: none;
	text-align: center;
	position: relative;
}

ul.menu li:hover {
	background: #339966;
}

ul.menu ul {
	display: none;
	padding: 0;
	margin-left:-1px;					/* 2021変更 */
	margin-top:-1px;					/* 2021変更 */
	position: absolute;
	border: solid 1px #339966;
}

ul.menu li:hover ul {
	display: block;
}

ul.menu_link {
	background: #fff;
}

ul.menu_link li a {
	display : block;
	padding: 5px 0;
}

ul.menu_link li:hover {
	background: #e7f1e8;
}

ul.menu_link li a:hover {
	text-decoration: none;
}



/* メニュー切替用 */
div.for_pc {								/* 2021追加 */
	display: block;
}
div.for_phone {								/* 2021追加 */
	display: none;
}

span.for_pc {								/* 2021追加 */
	display: block;
}
span.for_phone {							/* 2021追加 */
	display: none;
}

/*パンくずリスト*/
.listaria {
	margin-bottom: 30px;
	font-size: 0.8em;
}

div.listaria {
	float: left;
}

.listaria ul {
	padding-left: 0px;
	margin: 0 0 0 25px;
}

.listaria li {
	display: inline;
	list-style: none;
}

.listaria li:after {
	content: '>';
	padding: 0 3px 0 10px;
	color: black;
}

.listaria li:last-child:after {
	content: '';
}

.listaria li a {
	text-decoration: none;
	color: darkgreen;
}

.listaria li a:hover {
	text-decoration: underline;
}

/*画面名*/
h2 {
	margin: 0 0 15px 5px;
	padding: 0px 0px 0px 10px;
	border-left: solid 13px #006633;
	border-bottom: solid 2px #006633;
	font-size: 1.2em;
}

/*メインコンテンツ*/
.main_content {
	margin-left: 25px;
}

/*テーブル見出し*/
h3 {
	font-size: 1em;
	font-weight: normal;
	margin: 0;
	border-left: solid 3px #006633;
	padding-left: 3px;
}

/*見出し*/
h4 {
	font-size: 1.1rem;
	font-weight: normal;
	padding-left: 15px;
}

/*申請番号*/
.num {
	text-align: right;
	margin: 5px 30px 0 0;
}

.num p {
	text-align: right;
	margin: 5px 0 0 0;
}

/*テーブル共通*/
table {
	margin-left: 15px;
}

table caption {
	text-align: left;
	font-size: 0.9em;
	margin: 8px 0 0 -5px;
}

table th {
	text-align: left;
	font-weight: normal;
}

table th, td {
	padding: 3px;
}


/* ヘッダー固定テーブル用 */
.sticky th {
	position: sticky;
	top: 140px;
	color: glay;
	background: #fff;
}
.sticky th:before {
	position: absolute;
	top: -1px;
	left: -1px;
	width: 100%;
	height: 100%;
	content: "";
	border: 1px solid gray;
}
.stickythead{
	position: sticky;
	top: 140px;
}


/* separate table用 枠ありアウトプットテーブル （2行ヘッダー固定用）*/
.border_separate {
	border-spacing:0;
	border-collapse: separate;
	width: 950px;
	margin-bottom: 40px;
}

.border_separate th, .border_separate td {
	background-color:#fff;
	border-right:1px solid gray;
	border-bottom:1px solid gray;
}
.border_separate tr:first-child th {
	border-top:1px solid gray;
}
.border_separate th:first-child,
.border_separate td:first-child {
	border-left:1px solid gray;
}

.border_separate tr:hover td {
	background: #e7f1e8;
}


/* table強調線 */
th.bLineR, td.bLineR {
	border-right : solid 2px;
}
th.doubleLineR, td.doubleLineR {
	border-right : double 3px black;
}
th.stripeCell, td.stripeCell {
	background : #EEEEEE;
	font-size:12px;
}


							/* 2021削除 */
/*table td span {
	padding-left: 35px;
}*/

.tr_space th, .tr_space td {
	padding-bottom: 20px;
}

/*インプットテーブルの項目*/
.input table th {
	width: 185px;
	font-size: 1.1em;
	vertical-align: top;
}

/*枠ありアウトプットテーブル*/
.border {
	border-collapse: collapse;
	width: 950px;								/* 2021変更 */
	border: solid 1px gray;
	margin-bottom: 40px;
}

.border th, .border td {
	border: solid 1px gray;
}

.border tr:hover td {
	background: #e7f1e8;
}
.borderTb {
	border-collapse: collapse;
	width: 950px;
	border: solid 1px gray;
	margin-bottom: 40px;
}

.borderTb th, .borderTb td {
	border: solid 1px gray;
	font-size:13px;
}

.borderTb tbody:hover td {
	background: #e7f1e8;
	font-size:13px;
}

.hover_none tr:hover td {
	background: #fff;
}

/*枠なしアウトプットテーブル*/
.none_border th {
	width: 150px;
	font-size: 1.1em;
	vertical-align: top;
}

/*テキストエリア*/
.text textarea {
	resize: none;
}

/*申請の外部実施場所*/
.place_gaibu {
	margin-left: 160px;
}

/* 指導者試験の実技・学科会場項目 */
.ex_place_lbl {
	font-weight:bold;
}


/*ボタンエリア*/
.btn_area {
	margin: 15px 0 40px 0;
}

.btn_area span {
	padding-left: 35px;
}

/*送信ボタンエリア*/
.sendbtn_area {
	text-align: right;
}

/*リセットボタンエリア*/
.resetbtn_area {
	text-align: right;
}

/*チェックボタンエリア*/
.checkbtn_area {
	text-align: right;
	margin-right: 25px;
}

/*出力ボタンエリア*/
.exportbtn_area {
	text-align: right;
	margin-right: 20px;
}

/*テーブルのチェックセル*/
.check {
	width: 40px;
	text-align: center;
}

/*テーブルの中央寄せセル*/
th.center, td.center {
	text-align: center;
}

/*ファイルボタン*/
label input[type="file"] {
	display: none;
}

.file_btn {
	display: inline;
	margin: 5px 10px 5px 0;
	padding: 2px 20px;
	color: #fff;
	background: #006633;
	border: solid 1px #006633;
	text-decoration: none;
	border-radius: 25px;
	outline: none;
	font-size: 12.8px;

}

/*ラジオボタン*/

/*ダウンロード*/
.downroad {
	text-align: right;
	margin: 15px 30px 0 0;
}

.downroad img {
	padding-left: 7px;
}

.downroad span {
	padding-left: 35px;
}

/* padding */
.pdl_50 {
	padding-left: 70px;
}

/* input */
.input_txt_SS {				/* 2021追加 */
	height: 21px;
	width: 20px;
}

.input_txt_S {				/* 2021追加 */
	height: 21px;
	width: 40px;
}

.input_txt_R {
	height: 21px;
	width: 200px;
}

.input_txt_L {
	height: 21px;
	width: 300px;
}

.input_txt_LL {
	height: 21px;
	width: 500px;
}
.input_txt_FULL {				/* 2021追加 */
    height: 100%;
	width: 100%;
	box-sizing:border-box;
}

/*アカウント情報（写真付き表示）*/
.idphoto_area {
	display: inline-block;
	margin: 10px 0 40px 15px;
	width: 150px;
	font-size: 0.8em;
}

.acctinfo_area {
	display: inline-block;
	margin: 0 0 0 15px;
	vertical-align: top;
}

.acctinfo_area table {

}

/*馬写真*/
.horse_photo_area {
	margin: 0 0 70px 0;
}

.horse_photo_area table {
	width: 970px;
	border-collapse: separate;
}

.horse_photo_area table th {
	padding-top: 20px;
}

.horse_photo_area table td {
	width: 50%;
	height: 470px;
	border: 1px solid gray;
}

.horse_photo_area img {
	max-width: 470px;
	max-height: 470px;
	width: auto;
	height: auto;
}

/*必須項目*/
.required:after {
	color: red;
	content: " *";
}

/*テーブルin*/
.tablein {
	margin: 0;
}

.tablein span {
	padding-left: 0;
}

.mgn {
	margin: 5px 0 0 10px;
}

.fpntsize_09em {
	font-size: 0.9em;
}

.fpntsize_08em {
	font-size: 0.8em;
}

.pt_12px{
	font-size: 14px;
}

.pt_20px{
	font-size: 20px;
}

/*セレクトボックス*/
select {
	height : 22px;							/* 2021変更 */
}

/*inputタグ*/
input[type="checkbox"] {
	width : 15px;
	height : 15px;
}

input[type="radio"] {
	width : 15px;
	height : 15px;
}

/*textareaタグ*/
textarea {								/* 2021追加 */
	font-size: 1.1em;
	width : 100%;
	height : 95%;
	box-sizing:border-box;
}

.hover_color:hover {
	color : #339966;
	font-weight : bold;
}

/*吹き出し (上)*/
.tooltip_top{
    display:  inline-block;
}
.tooltip_top:hover{								/* 2021追加 */
    position: relative;
    display:  inline-block;
}
.description_top {
    position: absolute;
	z-index: 1;
	bottom: 120%;
	left: 0;
	visibility: hidden;
	width: auto;
	white-space: nowrap;
    padding: 0.3em 0.5em;
    font-size: 12px;
    line-height: 1.6em;
    color: #fff;
    border-radius: 5px;
    background: #000;
	opacity: 0;
	transition: 0.5s all;						/* 2021追加 */
}

.description_top:after {
    content: " ";
    position: absolute;
    top: 100%;
    left: 20px;
    border: 5px solid transparent;
    border-top: 5px solid #000;
    margin-left: -5px;
}
.tooltip_top:hover .description_top{
	visibility: visible;
	opacity: 1;
}


/* ？マーク（2024改修追加） */
.container {           /* 親要素 */
  position: relative;  /* 子要素の位置を基準にする */
  display: inline-block; /* 横並びにするため */
  margin-right: 20px; /* 複数の .ques を並べるために余白を設定 */
}
.ques {
  font-size: 1.2em;
  color: #FFFFFF;
  background: #808080;    /* 背景色に灰色を指定 */
  width: 10px;;        /* 横幅を1.5文字分にする */
  line-height: 2.5em;  /* 文字が上下中央にくるように工夫 */
  text-align: center;  /* 文字が左右中央にくるように工夫 */
  border-radius: 50%;  /* 円形に変更 */
  position: relative;  /* 表示位置の基準値とする */
}
.ex {

	display: none;  /* 最初は非表示にする。 */
 	position: absolute;  /* .quesを基準に配置 */
 	top: -15px;   /* .quesの上に表示するため負の値を指定 */
 	left: 25px;    /* .quesの中央に揃えるため */
 	color: #fff;
	font-size: 12px;
	background: rgba(0,0,0,0.5);  /* 黒バックを半透明にするため、rgbaで指定 */
	padding: 2px 5px;             /* 余白を少々 */
	width:330px;
}
.ques:hover + .ex {
  display: inline-block;  /* quesの上にカーソルが乗っている時だけ表示 */
}

.container_qr {           /* 親要素 */
  position: relative;  /* 子要素の位置を基準にする */
  display: block;
  margin-right: 20px; /* 複数の .ques を並べるために余白を設定 */
}
.ques_qr {
  font-size: 1.2em;
  color: #FFFFFF;
  background: #808080;    /* 背景色に灰色を指定 */
  width: 10px;;        /* 横幅を1.5文字分にする */
  line-height: 2.5em;  /* 文字が上下中央にくるように工夫 */
  text-align: center;  /* 文字が左右中央にくるように工夫 */
  border-radius: 50%;  /* 円形に変更 */
  position: relative;  /* 表示位置の基準値とする */
}
.ex_qr {
	bottom: 80%;
	left: 5%;
	display: none;  /* 最初は非表示にする。 */
 	position: absolute;  /* .quesを基準に配置 */
 	color: #fff;
	font-size: 12px;
	background: rgba(0,0,0,0.7);  /* 黒バックを半透明にするため、rgbaで指定 */
	padding: 2px 5px;             /* 余白を少々 */
	width: 300px; 					/* 要素の幅をコンテンツに応じて自動調整 */
	transform: translateX(0); /* 初期状態では変換なし */
	z-index: 10; /* 他の要素より前面に表示 */

}
.ques_qr:hover + .ex_qr {
  display: block;  /* quesの上にカーソルが乗っている時だけ表示 */
}

.ques_border {
	border: 2px dotted #ff0000;
	width: 99%;
	padding: 5px 0;
}
.photo_annotation {
	margin-bottom:20px;
	font-size:13px;
	font-weight:bold;
}



/* 表の数字列 */
.tblIntRow {
	text-align: right;
}

/* 注釈 */
.notes {
	font-size: 11px;
}


/* margin */
.ml5 {
    margin-left: 5px;
}
.ml20 {
    margin-left: 20px;
}
.ml25 {
    margin-left: 25px;
}
.ml50 {
    margin-left: 50px;
}
.ml70 {
    margin-left: 70px;
}
.mr0 {
    margin-right: 0px;
}
.mr10 {
    margin-right: 10px;
}
.mr50 {
    margin-right: 50px;
}
.mr100 {
    margin-right: 100px;
}
.mb0 {
    margin-bottom: 0;
}
.mb10 {
    margin-bottom: 10px;
}
.mb25 {
    margin-bottom: 25px;
}
.mb35 {
    margin-bottom: 35px;
}
.mb50 {
    margin-bottom: 50px;
}
.mt10 {
    margin-top: 10px;
}
.mt20 {
    margin-top: 20px;
}
.mt35 {
    margin-top: 35px;
}
.mt55 {
    margin-top: 55px;
}
.pt10 {
	padding-top: 10px;
}
.pt5 {
	padding-top: 5px;
}
.pb5 {
	padding-bottom: 5px;
}


/* selectがdisabled状態で半透明だとヘッダー部を透過してしまう課題の対策 */
select:disabled, input:disabled {				/* 2021追加 */
    opacity: 1;
}

div.error-message {								/* 2021追加 */
	height: 25px;
}



/* 角丸カッコ表現用 */
.parenthesis {
  position: relative;
  width: 500px;
  padding: 15px 20px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.parenthesis::before,
.parenthesis::after {
  position: absolute;
  top: 0;
  content: '';
  width: 20px;
  height: 100%;
  border-top: 1px solid #555;
  border-bottom: 1px solid #555;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.parenthesis::before {
  left: 0;
  border-left: 2px solid #555;
  border-radius: 8px 0 0 8px;
}
.parenthesis::after {
  right: 0;
  border-right: 2px solid #555;
  border-radius: 0 8px 8px 0;
}

.message_area {
	color: red;
}

.footer_area {
	padding-bottom: 50px;					/* 2021追加 */
}

/*フッター*/
footer {
	width: 100%;							/* 2021変更 */
}

/* 顔写真アップロード時プレビュー */
.faceimage {
	border: 1px #000000 solid;
	margin: 5px;
}

/* QRコード顔写真アップロード時プレビュー選択 */
.faceimage_selected {
	border: 2px #FF0000 solid;
	margin: 5px;
}

/* 詳細画面顔写真 */
.faceimage_detail {
	border: 1px #000000 solid;
}

/* 印刷時設定 */
@media print {
	header {
		display:none;
	}
	.listaria {
		display:none;
	}


	.print_hidden {
		display : none;
	}
	.newline {
		page-break-after: always;
	}
	.print_font {
		font-size : 10px;
	}
	.print_disp {
		display : block;
		margin-left : -20px;
	}
	div.returnMenu {								/* 2021追加 */
		display:none;
	}
	div.content {									/* 2021追加 */
		padding-top: 30px;
	}
	.border {										/* 2021追加 */
		margin-bottom: 10px;
	}
	.tr_space th, .tr_space td {					/* 2021追加 */
		padding-bottom: 0px;
	}

}
