
@charset "UTF-8";
/*================================================
 *  CSSリセット
 ================================================*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;font-weight:normal;}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}

/*================================================
 *  一般・共通設定
 ================================================*/
*{
    -webkit-box-sizing:border-box;
       -moz-box-sizing:border-box;
         -o-box-sizing:border-box;
        -ms-box-sizing:border-box;
            box-sizing:border-box;
}

#container {
  display: flex;
  flex-direction: column;
  
}

body {
	font-size:14px;
	color:#333;
	font-family:"メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	line-height:1.6;
	word-wrap: break-word;
}

/* margin
----------------------------------------------------------*/
/* Top */
.MG-T0 { margin-top: 0 !important; }
.MG-T5 { margin-top: 5px !important; }
.MG-T10 { margin-top: 10px !important; }
.MG-T15 { margin-top: 15px !important; }
.MG-T20 { margin-top: 20px !important; }
.MG-T25 { margin-top: 25px !important; }
.MG-T30 { margin-top: 30px !important; }
/* Bottom */
.MG-B0 { margin-bottom: 0 !important; }
.MG-B5 { margin-bottom: 5px !important; }
.MG-B10 { margin-bottom: 10px !important; }
.MG-B15 { margin-bottom: 15px !important; }
.MG-B20 { margin-bottom: 20px !important; }
.MG-B25 { margin-bottom: 25px !important; }
.MG-B30 { margin-bottom: 30px !important; }

/* padding
----------------------------------------------------------*/
/* Left */
.PD-L5 { padding-left: 5px !important; }
.PD-L10 { padding-left: 10px !important; }
.PD-L15 { padding-left: 15px !important; }
.PD-L20 { padding-left: 20px !important; }
.PD-L25 { padding-left: 25px !important; }
.PD-L30 { padding-left: 30px !important; }
/* Right */
.PD-R5 { padding-right: 5px !important; }
.PD-R10 { padding-right: 10px !important; }
.PD-R15 { padding-right: 15px !important; }
.PD-R20 { padding-right: 20px !important; }
.PD-R25 { padding-right: 25px !important; }

/*word-break:*/
.wb-all{
	word-break: break-all;
}

.inner {
	position:relative;
	width:1200px;
	margin:0 auto;
}

header {
	box-sizing:border-box;
	position:relative;
	width:100%;
	background:#fff;
	/*border-top:solid 5px #d0d8dc;*/
}

nav {
	width:100%;
/*	background:#fff;*/
/*	padding-top: 10px;
	padding-bottom: 10px;*/
}

nav:after {
	content:'';
	display:block;
	clear:both;
}

#contents {
	overflow:hidden;
	width:1200px;
	margin:10px auto;
	background:#fff;
	min-height: 90vh;
}


a {
	color:#3377ff;
	text-decoration:underline;
}
a:hover {
	color:#00bfff;
	text-decoration:none;
	cursor: pointer;
}


h1 {
	font-size:26px;
}


div.h2_box {
	border: 1px solid #1f5079;
	margin-bottom:15px;
}
div.h2_box div {
	margin: 0;
	padding: 8px 0 7px 8px;
	background-color: #F0F0F0;
}
div.h2_box h2 {
	margin: 0;
	padding: 1px 5px 0 10px;
	font-size:20px;
	line-height: 1.4em;
	color: #333333;
	border-left: 6px solid #1f5079;
	background-color: transparent;
	_height: 1%;
	font-weight: bold;
}

h2 span {
	margin-left:10px;
	font-size:16px;
	color: #1f5079;
}

h3 {
	padding: 5px 15px;
	font-size:18px;
	background-color: #1f5079;
	color: #fff;
	margin-bottom:15px;
}

h4 {
	padding:5px 15px;
	font-size:16px;
	color: #333;
	border-bottom: 1px solid #1f5079;
	margin-bottom:10px;
	font-weight: bold;
}

h4 {
  position: relative;
  padding-bottom:3px;
  border-bottom: 4px solid #5081bb;
}

h4::after {
  position: absolute;
  bottom: -4px;
  left: 0;
  z-index: 2;
  content: '';
  width: 20%;
  height: 4px;
  background-color: #325bae;
}

h5{
	font-size:14px;
	font-weight: bold;
	padding:5px 10px;
	color: #325bae;
	margin-bottom:5px;
}

h5 span{
	font-size:90%;
	font-weight:normal;
	margin-left:5px;
}

img {
    margin-bottom:5px;
    max-width: 100%;
    height: auto;
}

em {
	font-weight:bold;
	font-style: normal;
}

strong {
	font-weight:bold;
	color:#ff0000;
}

pre {
	margin:1em 0;
	padding:1em;
}

blockquote {
	margin-bottom:1em;
	padding:1em;
	border:1px dotted #ddd;
	border-left:5px solid #ddd;
}

ul,ol,dl {
	margin:0 0 1em 0;
}
ul li {
	list-style:disc;
}
ol li {
	list-style:decimal;
}
li {
	margin-left:2em;
}

dt {
	margin-bottom:0.5em;
	border-bottom:1px dotted #ddd;
}
dt:before {
	content:"\0025a0";
}
dd {
	margin-bottom:1em;
}

/* ラベルとチェックボックスの組み合わせ */
label,
input[type="checkbox"],
input[type="radio"]
{
	cursor: pointer; 
}
label {
	display: inline-block;
	vertical-align: middle;
}
label:hover {
	color : #00bfff;
}
label input[type="checkbox"],
label input[type="radio"] {
	top : 0 !important
}

::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    color:#b6b6b6;
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color:#b6b6b6;
}
::placeholder{ /* Others */
    color:#b6b6b6;
}

.br-pc {display:block;}
.br-sp {display:none;}



/*================================================
 *  ヘッダー
 ================================================*/
header {
	padding:15px 10px;
	background-color: #1f5079;
}

h1 a {
	text-decoration:none;
	color:#fff;
}

.inner p{
	margin:0px;
}

h1.top {
    font-size: 20px;
    position: absolute;
    top: 20px;
    left: 170px;
}


/*================================================
 *  フッター
 ================================================*/
footer {
	clear:both;
	width:100%;
	background:#1f5079;
}

.foot_box {
	overflow:hidden;
	background:#257DB7;
	display:flex;
	width: 1200px;
    margin: 0 auto;
	align-items:stretch;
	justify-content:space-around; 
	padding:20px 0;

}

.menu_box {
	width:25%;
	box-sizing:border-box;
}

.footmenu {
	position:relative;
	margin:0;
	padding:0;
}

.sav_footmenu {
	margin:0;
	padding:0;
}

.footmenu li {
	position:relative;
	list-style:none;
	margin:0;
	padding:0 15px;
	font-size:12px;
	text-align:left;
}

.footmenu a {
	color:#fff;
	text-decoration:none;
}

.footmenu a:hover {
	color:#00EE00;
	text-decoration:underline;
}

.company {
	clear:both;
	padding:20px 0;
	font-size:11px;
	text-align:center;
	color:#efede9;
	background:#2e2e2e;
	padding-bottom:0px;
}

.copyright {
	clear:both;
	padding:20px 0;
	font-size:11px;
	text-align:center;
	color:#efede9;
}
/*================================================
 *  ページトップへの戻り
 ================================================*/
.totop {
	position:absolute;
	bottom:55px;
	right:15px;
	padding:5px 15px;
	color:#efede9;
	background:#325bae;
	border-radius:4px;
	text-align:center;
}
.totop a{
	font-size:12px;
	color:#efede9;
}
.totop a:hover {
	font-size:12px;
	color:#00bfff;
	text-decoration:none;
}

/*================================================
 *  table
 ================================================*/
 table.table00 {
	width:100%;
	margin-bottom:1em;
	border-collapse:collapse;
	border:1px solid #87AF87;
	background:#fff;
	box-sizing:border-box;
}

table.table00 th {
	padding:5px;
	text-align:center;
	vertical-align:middle;
	border:1px solid #87AF87;
	background:#f0fff0;
}

table.table00 td {
	padding:5px;
	text-align:center;
	border:1px solid #87AF87;
	vertical-align:middle;
}

/* table01 */
table.table01 {
	width:100%;
	border-collapse:collapse;
	background:#fff;
	box-sizing:border-box;
	font-size:90%;
}

table.table01 p{
	margin-bottom:0px;
}

table.table01 th {
	padding:3px;
	text-align:center;
	vertical-align:middle;
	border:1px solid #ddd;
	background:#dbe6f0;
}

table.table01 td {
	padding:3px;
	text-align:center;
	border:1px solid #ddd;
	vertical-align: middle;
}

/* table02 */
table.table02 {
	width:100%;
	margin-bottom:5px;
	border-collapse:collapse;
	background:#fff;
	box-sizing:border-box;
}

table.table02 p{
	margin-bottom:0px;

}

table.table02 th {
	padding:5px;
	text-align:center;
	vertical-align:middle;
	border:1px solid #ddd;
	background:#eee;
	width:200px;
}

table.table02 td{
	padding:5px;
	text-align:left;
	border:1px solid #ddd;
}

/* form_table */
table.form_table {
	border-collapse: collapse;
	width: 100%;
	margin-bottom:10px;
	box-sizing:border-box;
}

table.form_table th,
table.form_table td {
	border: 1px solid #dbe1e8;
	padding: 8px;
	vertical-align:middle;
	background: #fff;
}
 
table.form_table th {
	background: #eee;
	text-align: left;
	width: 200px;
   
}

table.form_table th.th_spread
{
	width:230px;
}

/* form_table2 */
table.form_table2 {
	border-collapse: collapse;
	width: 100%;
	margin-bottom:10px;
	box-sizing:border-box;
}

table.form_table2 th,
table.form_table2 td {
	border: 1px solid #87AF87;
	padding: 8px 5px;
	vertical-align:middle;
	background: #fff;
}
 
table.form_table2 th {
	background: #f0fff0;
	text-align: left;
	width: 230px;   
}

/* form_table3 */
table.form_table3 {
	width: 1160px;
	border-collapse: collapse;
	margin-bottom:10px;
	box-sizing:border-box;
}

table.form_table3 th,
table.form_table3 td {
	border: 1px solid #87AF87;
	padding: 5px;
	vertical-align:middle;
	background: #fff;
}
 
table.form_table3 th {
	background: #f0fff0;
	text-align: center;
}

table.form_table3 td{
	text-align: center;
}

/* form_table4 */
table.form_table4 {
	width: 1160px;
	border-collapse: collapse;
	margin-bottom:10px;
	box-sizing:border-box;
}

table.form_table4 th,
table.form_table4 td {
	border: 1px solid #dbe1e8;
	padding: 5px;
	vertical-align:middle;
	background:#fff;
}
 
table.form_table4 th {
	background: #f0fff0;
	text-align: center;
	background:#eee;
}

table.form_table4 td{
	max-width: 50px;
	text-align: left;
}

table.fixed_table{
	table-layout: fixed;
}

/* kousa */
table.kousa {
	border-collapse: collapse;
	margin: 0px auto;
	padding: 0;
	width:100%;
	box-sizing: border-box;
}

table.kousa tr {
  background-color: #fff;
  border: 1px solid #ded5ef;
  padding: 5px;
}
table.kousa th,
table.kousa td {
  padding: 5px 10px;
  border-right: 1px solid #ded5ef;
}
table.kousa th {
  font-size: ;
}

table.kousa td {
	text-align: left;
}

table.kousa thead tr{
  background-color: #325bae;
	color:#fff;
}

table.kousa tr.void{
	background-color: #eee;
	color: #696969;
	font-weight: normal;
}

table.kousa tr.currently{
	background-color: #ffeeee;
	color: red;
	font-weight:bold;
}
table.kousa tr.currently th,
table.kousa tr.currently span{
	font-weight:bold;
}
.day{

}

.time{
   text-align:center;
}
.avai{
	text-align:center;
}
.kanou{
	color:#3377ff;
}

/* kousa */
table.entry_list {
  border-collapse: collapse;
  margin: 0px auto;
  padding: 0;
  width: 100%;
  /*table-layout: fixed;*/
	box-sizing: border-box;
}

table.entry_list tr {
  border: 1px solid #dbe1e8;
  padding: 5px;
}
table.entry_list th,
table.entry_list td {
  padding: 5px 10px;
  border-right: 1px solid #dbe1e8;
}
table.entry_list th {
  font-size: ;
}
table.entry_list thead tr{
  background-color: #325bae;
	color:#fff;
}

table.entry_list tr.void{
	background-color: #eee;
	color: #696969;
	font-weight: normal;
}


/* none */
table.none{
	border-collapse:collapse;
	width:100%;
	border: none;
	table-layout:fixed;
	margin:0 auto;
	box-sizing:border-box;
}

table.none tr {
  border: none;
  padding: 0px;
}

table.none th.nocol{
	background-color: transparent;
	width: 220px;
}

table.none th{
	border-collapse:collapse;
	padding:0px;
	text-align:center;
	vertical-align:middle;
	border: none;
}

table.none td{
	border-collapse:collapse;
	padding:0px;
	text-align:center;
	vertical-align:middle;
	border: none;
	word-break: break-all;

}

table.none td.base_line{
	vertical-align: baseline;
}



table.form_table3 .td_A,
table.form_table4 .td_A{
	text-align:center;
	background:#fafafa;
	color: #696969;
}

table tr .TDC {
	text-align:center;
}

table tr .TDL {
	text-align:left;
}

table tr .TDR {
	text-align:right;
}

table tr .TDLL {
	text-align:left;
}


table.table01 td.td_br {
	text-align:center;
	width:50%;
}

table th.THW_90{
	table-layout: auto;
	width:90%;
}

/*入力不可のグレーアウト*/
table.form_table2 tr  td.TD_gray,
table.form_table tr td.TD_gray{
	background: #dadada;
}

/*================================================
 *  button
 ================================================*/
 .btn00  {
	border-radius :3px;
	background-color: #696969;
	border: 1px solid #dbe1e8;
	width:80%;
	padding:10px 5px;
}

.btn01 {
	border-radius : 3px;
	background-color: #325bae;
	border: 1px solid #B3CCFF;
	width:80%;
	padding:10px 5px;
}

.btn02 {
	background-color: #696969;
	border: 1px solid #dbe1e8;
	width:80%;
	padding:10px 5px;
}

.btn03 {
	background-color: #FE972F;
	border: 1px solid #feb66d;
	width:200px;
	padding:10px 5px;
}

.btn04 {
	background-color: #696969;
	border: 1px solid #dbe1e8;
	width:200px;
	padding:10px 5px;
}

.btn05 {
	background-color: #325bae;
	border: 1px solid #B3CCFF;
	width:200px;
	padding:10px 5px;
}

.btn_s05 {
	background-color: #325bae;
	border: 1px solid #B3CCFF;
	width:90px;
	font-size:11px;
	padding:3px;
}

.btn06 {
	background-color: #FE972F;
	border: 1px solid #feb66d;
	width:80%;
	padding:10px 5px;
}

.btn07 {
	background-color: #325bae;
	border: 1px solid #B3CCFF;
	width:400px;
	padding:15px 10px;
	font-size: 18px;
}

.btn_ss05 {
	background-color: #FE972F;
	border: 1px solid #feb66d;
	width:90px;
	font-size:11px;
	padding:3px;
}

.btn08 {
	background-color: #325bae;
	border: 1px solid #B3CCFF;
	width:80%;
	padding:10px 5px;
	font-size: 20px;
}

.btn_s06 {
	background-color: #F91703;
	border: 1px solid #fc8b81;
	width:90px;
	font-size:12px;
	padding:3px;
}

.a_disable {
	color: #c7c5c5 !important;
	pointer-events: none;
}

.btn_top:hover,
.btn_info:hover,
.btn00:hover,
.btn01:hover,
.btn02:hover,
.btn03:hover,
.btn04:hover,
.btn05:hover,
.btn06:hover,
.btn07:hover,
.btn08:hover,
.btn_s05:hover,
.btn_s06:hover,
.btn_ss05:hover {
	color:#fff;
	background-color: #00bfff;
	border: 1px solid #B3CCFF;
}

.btn_top,
.btn_info,
.btn00,
.btn01,
.btn02,
.btn03,
.btn04,
.btn05,
.btn06,
.btn07,
.btn08,
.btn_s05,
.btn_s06,
.btn_ss05 {
	display:block;
	border-radius : 3px;
	color:#fff;
	text-decoration:none;
	text-align:center;
	margin: 5px auto;
}

.btn_ss05 {
	margin: 3px auto;
}

.btn_info {
	background-color: #18afda;
	border: 1px solid #B3CCFF;
	width:80%;
	padding:3px;
}

.btn_top {
	background-color: #FE972F;
	border: 1px solid #feb66d;
	width:190px;
	padding:3px;
	margin: 0 15px;
}

.btn_gray{
	background-color: #696969;
	border: 1px solid #dbe1e8;
	pointer-events: none;
	width: 300px;
	padding:3px;
	color: #c7c5c5;
	-moz-user-select: none;
	-webkit-user-select: none;
	-ms-user-select: none;
	text-decoration:none;
}

/* 左寄せ・右寄せ */

.btn_ML0 {
	margin-left: 0px;
}

.btn_MR0 {
	margin-right: 0px;
}

.btn_disable {
	pointer-events: none;
	color: #c7c5c5 !important;
}

/* button_radio */
.button_radio{
	display: flex;
	border: 1px solid #ccc;
}

.button_radio input{
	display: none;
}
.button_radio label{
	display: block;
	cursor: pointer;
	width: 80px;
	margin: 0;
	padding: 12px 5px;
	border-right: 1px solid #ccc;
	background: #eee;
	font-size: 14px;
	text-align: center;
	line-height: 1;
	transition: .2s;
	flex: 1;
}
.button_radio label:first-of-type{
	border-radius: 3px 0 0 3px;
}
.button_radio label:last-of-type{
	border-radius: 0 3px 3px 0;
	border-right: 1px solid #eee;
}
.button_radio input[type="radio"]:checked + label {
	background-color: #325bae;
	color: #fff;
}

/*================================================
 *  特殊メッセージ
 ================================================*/
 .error_box,
 .warn_box,
 .caution_box,
 .status_box,
 .info_box{
	position: relative;
	border: 1px solid red;
	border-radius: 2px;
	box-sizing: border-box;
	background: #ffeeee;
	padding: 10px 5px 10px 35px;
	width: 90%;
	margin: 1em auto;
	word-wrap: break-word;
 }
 .error_box::after,
 .warn_box::after,
 .caution_box::after,
 .status_box::after,
 .info_box::after{
	position: absolute;
	top: 7px;
	left: 0;
	font-size: 1.2em;
	font-family: FontAwesome;
	color: #333;
	width: 5%;
	text-align: center;
 }

 .warn_box p,
 .caution_box p,
 .status_box p,
 .info_box p{
	 margin-bottom: 0;
 }
 
.warn_box{
	border: 1px solid red;
}

.warn_box::after{
	content: "\f071";
	color: red;
}

.warn_msg{
	color: red;
	font-size: 90%;
}

.error_box{
	border: 3px solid red;
}
.error_msg{
	font-size: 90%;
	font-weight: bold;
}

.caution_box{
	border: 1px solid yellow;
	background: #fdf5d2;
	box-sizing: border-box;
	color: #E5411B;
}

.caution_box::after{
	content: "\f12a";
	color: red;
}

.status_box{
	border: 1px solid green;
	background: #d8ffd8;
	box-sizing: border-box;
}

.status_box::after{
	content: "\f00c";
}

.info_box{
	border: 1px solid #1a0dab;
	background: #ddddfd;
	box-sizing: border-box;
}

.info_box::after{
	content: "\f129";
}

.qt_box{
	border: 1px solid #1a0dab;
	background: #ddddfd;
	padding:5px;
	box-sizing: border-box;
	width:95%;
	margin:3px auto;
}

.low_box{
	box-sizing: border-box;
	width:80%;
	margin:3px auto;
}

.text_box{
	width:100%;
	text-align: left;
	box-sizing: border-box;
	padding:10px;
}

 .add_text_box{
	border: 1px solid #152C78;
	box-sizing: border-box;
	padding: 10px;
	width: 90%;
	margin: 1em auto;
	word-wrap: break-word;
 }

.video_box{
	width:100%;
	text-align: center;
	box-sizing: border-box;
	padding:0px;
	margin: 15px auto;
}

/* dl_box */
.dl_box{
	width:100%;
	box-sizing: border-box;
	padding:0px;
	margin: 10px auto;
}

.dl_box dt:before{
	content:none;
}

.dl_box dt{
	font-size: 120%;
	font-weight:bold;
}

.warn_msg{
	color: red;
	font-size: 90%;
}
.case_msg{
	font-size: 90%;
}

.ex_date{
	font-size: 120%;
	font-weight:bold;
	color: red;
}

/* font-size */
.FB_120{
	font-size: 120%;
	font-weight:bold;
}

.FB_150{
	font-size: 150%;
	font-weight:bold;
}

/* photo_box */
div.photo_box ol {
	box-sizing:border-box;
	width:100%;
}
div.photo_box li {
	line-height:2em;
	width:100%;

}
div.photo_box div {
	box-sizing:border-box;
	margin:10px auto;
	width:100%;

}
div.sub_box {
	box-sizing:border-box;
	margin:0px auto;
	width:100%;
	display: flex;
	flex-wrap: wrap;

}

div.sub_box div {
	box-sizing:border-box;
	flex: 1;
}
.disp-block {
  display:inline-block;
  /*vertical-align: middle;*/
}
.blockcenter{
  margin-left: auto; 
  margin-right: auto; 
}
.img_h{
	height:350px;

}
div.photo_box div {
	box-sizing:border-box;
	margin:10px auto;
	width:100%;
}

/* alert_contents */
.alert_contents {
	width: 90%;
}
.alert_contents p{
	text-align: left;
}

.alert_warn,.alert_warn span{
	font-weight:bold;
	font-size: 100% !important;
}

/* menu */
div.menu_box {
	box-sizing:border-box;
	margin:0px auto;
	width:100%;
	display: flex;
	flex-wrap: wrap;
}

div.menu_box div {
	box-sizing:border-box;
	flex: 1;
}

/* news */
div.news_box {
	box-sizing:border-box;
	margin:0px auto;
	width:100%;
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 20px;
	align-items: center;
}

div.news01 {
	box-sizing:border-box;
	background:#1f5079;
	color:#fff;
	flex:1;
	border-radius: 10px;
	height: 100px;
	text-align: center;
	padding: 10px;
}

div.news02 {
	box-sizing:border-box;
	flex:3;
	height: 150px;
}

div.news01 p{
	font-size: 18px;
	/*font-weight: bold;*/
}

.news{
  box-sizing:border-box;
  width:100%;
}

.news li{
  border-bottom:1px dotted #000;
  list-style:none;
  padding:10px;
  width:100%;
}
.news a{
  color:#000;
  text-decoration:none;
}
span.categ{
	text-align: center;
	background:#2388b8;
	border-radius:3px;
	color:#fff;
	display:inline-block;
	margin-right:20px;
	padding: 2px 8px;
	font-size: 95%;
	width: 80px;
}

span.imp{
	background:#d10606;
}

span.time{
  display: inline-block;
  font-weight: bold;
  margin-right:40px;
}
.news p{
  color:#1c448d;
  display: inline-block;
  text-decoration:underline;
}
.new::after{
  content:"NEW";
  color: #d10606;
  font-size: 1.1rem;
  border: 1px solid #d10606;
  padding: 4px 8px;
  margin: 0 0 0 20px;
  display: inline-block;
  line-height: 1;
	font-size: 95%;
	width: 50px;
	text-align: center;
}

.info_A{
	box-sizing: border-box;
	margin-top: 10px;
	width: 100%;
	padding: 5px;
	padding-bottom: 10px;
	border-bottom: dotted 1px #1f5079;
}

.info_B{
	box-sizing: border-box;
	margin-top: 25px;
	margin-bottom: 25px;
	width: 100%;
	padding: 5px;
	padding-bottom: 10px;
	border-bottom: solid 1px #1f5079;
}

/*ページャー*/
.pager{
	display: flex;
	-webkit-box-pack: center;
	-ms-filx-pack: center;
	justify-content: center;
	margin-bottom: 5px;
	position: relative;
	margin:10px auto;
	box-sizing: border-box;
}

.pager div{
	width: 40px;
	height: 25px;
	box-sizing: border-box;
}


.pager div a{
	display: flex;
    flex-direction: column;
    justify-content: center;
	align-items: center;
	color: #333;
	width: 100%;
	height: 100%;
	font-size: 12px;
	text-decoration: none;
}

.pager div:hover a{
	background: #617589;
	color: #fff;
	transition: 0.2s;
}

.pager .current_page{
	pointer-events: none;
	background: #eee;
}

.pager .current_page a{
	pointer-events: none;
}

.pager .select_view{
	width: auto;
	height: auto;
	position: absolute;
	top: 0;
	left: 0;
}

.pager .select_view select {
	max-width : 90%;
	font-size : 100%;
	font-family : inherit;
	height: 2em;
	box-sizing:border-box;
}

/*header-img*/
.header-img {
  width: 100%;
  margin: 12px 0 12px 0;
  text-align: center;
	position: relative;
}

.header-img p {
  position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin:0;
  padding:0;
	font-size: 36px;
	color: #fff;
	background: #000;
	padding: 1rem;
	opacity:0.7;
  }

/*.header-img img {
  width: 100%;
  } */


/*================================================
 *  クラス
 ================================================*/
.req_mm {
	color: #ff0000;
	font-size:90%;
	font-weight:bold;
}
.req_mm_t {
	color: #ff0000;
	font-size:120%;
	font-weight:bold;
}
.req_mm_title {
	font-size:120%;
	font-weight:bold;
}
.warn_mm {
	color: #ff0000;
	font-size:90%;
	font-weight:bold;
}
.note_mm {
	color: #325bae;
	font-size:90%;
	margin:3px 0px;
}
.note_mmr {
	color: #0440d0;
	font-size:90%;
	margin:3px 0px;
}
.note_file {
	color: #325bae;
	font-size:90%;
	margin:3px 0px;
}

.sd_req_mm {
	color: #325bae;
	font-size:90%;
	font-weight:bold;
}

.sd_note_mm {
	color: #325bae;
	font-size:90%;
	font-weight:bold;
}

.red_mm {
	color: #ff0000;
	font-weight:bold;
}

.note_black {
	font-weight: bold;
}
.list {
	padding:0 0 0 0.5em;
}
.list li {
	margin:0;
	padding:0 0 0 15px;
	list-style:none;
	background:url(../images/check.png) 0 5px no-repeat;
}

div.news {
	margin: 10px auto;
	padding:0px;
	overflow-y: scroll;
	height:250px;
	box-sizing: border-box;
}
div.news dt {
	margin-bottom:0.5em;
	border-bottom:1px dotted #ddd;
}
div.news dt:before {
	content:"\0025a0";
}
div.news dd {
	margin-bottom:1em;
}

div.info dt {
	border-bottom:none;
}
div.info dd {
	padding-bottom:1em;
	border-bottom:1px solid #ddd;
}

.col_two_one {
	overflow:hidden;
}

.col_two_one ul {
	overflow:hidden;
	margin:2% -2% 0 0;
}
.col_two_one li {
	list-style:none;
	float:left;
	width:48%;
	margin:0 2% 2% 0;
}
.col_two_one li:nth-child(2n+1) {
	clear:both;
}
.col_two_one li img {
	width:100%;
	margin-bottom:2.5%;
}

.w_down{
	width: 80%;
	margin: 0 auto;
	box-sizing: border-box;
}

.overview{
	box-sizing: border-box;
	width: 100%;
	margin:15px 0px;
}

/*Q&A*/

.dati01{background: linear-gradient(to right, #ffffff, #F0F8FF); 
    margin-bottom: 0.5ex; 
	border: 1px solid #ddd;
	border-radius: 5px;
    box-sizing: border-box;
}

.dati01_02{padding: 10px 15px; 
    cursor: pointer; 
	position: relative; 
	display: flex; 
	align-items: center;
	}

.dati01_03{display: inline-block; 
    color: #2daffe; 
	margin-right: 12px; 
    text-align: center; 
    line-height: 25px; 
	font-size: 20px; 
	font-weight: bold;
	}

.dati01_04{color: #000000; 
    margin-left: 0px; 
	font-weight: bold; 
    padding-right: 10%;}

.dati01_05{margin-right: 10px; 
    color: #5d6d7e; 
	position: absolute; 
	left: 90%; 
	font-size: 25px;}

.deti02{padding: 10px 15px; 
    border-top: 1px solid #ddd;}

.deti02_02{ color: #ff8d8d; 
    font-size: 20px; 
	font-weight: bold; 
	margin-right: 12px;}


/*iframe*/
.term_iframe{
	position: relative;
	box-sizing: border-box;
	padding:0px;
	width: 800px;
	height: 400px;
	margin: 0 auto;
	border: solid 1px #325bae;
	text-align: left;
	margin-bottom:10px;
}

.term_wrap{
	box-sizing: border-box;
	overflow-y: scroll;
	padding: 0 5px 0 10px;
	width: 80%;
	height: 70px;
	margin: 0 auto;
	border: solid 1px #325bae;
	text-align: left;
	margin-bottom:10px;
}

.term_iframe p,
.term_wrap p{
	margin-bottom: 0;
}

.term_iframe iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height:100%;
	border: none;
	display: block;
}


#usg_box {
	margin:0 auto;
	box-sizing: border-box;
	font-size: 14px;
	word-wrap: break-word;
	line-height:1.3em;
	padding:5px;
}

#usg_box h3{
	padding:5px;
	font-size:18px;
	background-color: #fff;
	color: #333;
	margin:0px auto;
	background-color: #eee;
	padding:10px;
}

#usg_box ol {
	box-sizing: border-box;
	list-style-type: decimal;
	margin-bottom:0px;
}

#usg_box ol li {
	box-sizing: border-box;
	list-style-type: decimal;
	margin-bottom:0px;
}

#usg_box ol li ul {
	box-sizing: border-box;
	list-style-type: disc;
	margin-bottom:0px;
}

#usg_box ol li ul li {
	list-style-type: disc;
	margin-bottom:3px;

}

#usg_box ol span  {
	font-weight:bold;
	font-size:15px;

}









/*モーダル*/
.modal_open{
/*    display: inline-block;
    margin: 3vw;*/
}
 
.modal_box {
    position: fixed;
    display: none;
    z-index: 7777;
    width: 90%;
    max-width: 1200px;
    margin: 0;
    padding:15px 20px;
    border: 2px solid #aaa;
    background: #fff;
    box-sizing: border-box;
}
 
.modal_close {
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 42px;
    font-size: 40px;
    color: #000;
    line-height: 42px;
    text-align: center;
    background: #e6e6e6;
}
 
.modal_close i {
    line-height: 42px;
    vertical-align: bottom;
}
 
.modal_bg {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 6666;
    display: none;
    width: 100%;
    height: 120%;
    background-color: rgba(0,0,0,0.7);
}
 
.link_area {
    overflow: hidden;
    max-width: 410px;
    margin: 60px auto 0;
    text-align: center;
}
 
.link_area .modal_link {
    display: inline;
}
 
.link_area .modal_link a {
    display: inline-block;
    width: 180px;
    color: #000;
    line-height: 2.5;
    text-decoration: none;
    margin: 0 10px;
    background: #e6e6e6;
}
 
.link-area ul li.modal_link:first-child a {
    float: left;
}
 
.link-area ul li.modal_link:last-child a {
    float: right;
}

.modal_box_map {
    width: 50%;
}

/*注意事項*/
ul.parent {
	list-style: none;
	padding-left: 0px;
	margin-left: 0px;
	margin-bottom: 15px;
}
ul.parent li{
	list-style: none;
	padding-left: 0px;
	margin-left: 0px;
	margin-bottom: 10px;
}

ul.parent li > p{
	padding-left: 35px;
	text-align: left;
}

ul.parent li h5{
	margin-bottom: 0px;
}

.sub_item{
	text-indent: -1.5em;
}

.more_sub_item{
	text-indent: -1em;
}

ul.parent li p.note_indent{
	padding-left: 40px;
	text-indent: -0.5em;
}

ul li.style_none {
	list-style:none;
}

ul li.line_height{
	line-height: initial;
}

.input_change_color{
	background: #ffc0cb !important;
}

	nav {
		z-index:8888;
		position: sticky;
		top: 0;
	}	
	
header.top {
	padding:15px 10px;
	padding-bottom: 0px;
	background-color: #1f5079;
	background-color: #FFF;
}
	
.top_container{
	position: absolute;
    top: 50px;
	right : 20px;
	
}
	
	
.summary_container2{
	position: absolute;
    top: 5px;
    right: 20px;
    text-align: right;
}
	
ul.summary_container{
	position: absolute;
    top: 5px;
    right: 20px;
    text-align: right;
	margin: 0 0 1em 0;
	
	
}
.summary {
    position: relative;
    vertical-align: top;
    text-align: center;
    display: inline-block;
    font-size: 14px;
    border-radius: 2px;
    padding: 5px 15px;
    border: 1px solid #4bbba3;
    background: #388f7c;
    margin-left: 0;
    color: #fff;
    width: 150px;
    height: 35px;
}

.summary2 {
	position: relative;
	vertical-align: top;
	text-align:center;
	display:inline-block;
	font-size: 14px;
	border-radius: 2px;
	padding: 5px 15px;
	border: 1px solid #cde701;
	background: #388f7c;
	background: #18afda;
	margin-left: 0;
	color: #fff;
	width: 180px;
	height: 35px;
}

.summary_logout {
	padding: 0px 0px;
	height: 35px;
}
.summary2 a,
.summary a {
	color: #fff;
	text-decoration: none;
}
.summary_logout a{
	/*--------*/
	width: 100%;
	height: 100%;
	display: flex; /* 子要素をflexboxで揃える */
    flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
    justify-content: center; /* 子要素をflexboxにより中央に配置する */
    align-items: center;  /* 子要素をflexboxにより中央に配置する */
	/*--------*/
}
.summary2:hover,
.summary:hover {
	background: #fff;
	color: #325bae;
	border: 1px solid #325bae;
}
.summary2:hover a,
.summary:hover a {
	color: #325bae;
}

.summary_container li {
	list-style: none;
}


.summary_container li:first-child {
	margin-right:5px;
	background: #fff;
	color: #333;
	width:200px;
	border: 1px solid #325bae;
}




.ST_02 {
	border: 1px solid #4bbba3;
	background: #388f7c;
	color: #fff;
}

.sengen {
	text-align: center;
	box-sizing:border-box;
	border: 1px solid #4bbba3;
	background: #388f7c;
	color: #fff;
	padding: 5px;
	width: 365px;
}	

/*================================================
 *  グローバルナビゲーション
 ================================================*/
 /*　画面サイズが961pxからはここを読み込む　*/
@media print, screen and (min-width:961px) {
	nav {
		
		background-color: #1f5079;
		background-color: #fff;
		background-color: #1f5079;
	}
	/* 共通 */
	nav ul {
		margin:0;
		padding:0;

	}


nav ul.gnav {
	box-sizing:border-box;
	margin:0;
	padding:0;
	display: flex;
	align-items: center;
}	
	
nav ul.gnav li {
		position:relative;
		margin:0;
		padding:0;
		list-style:none;
}

nav ul.gnav li a {
		display:block;
		margin:0 5px;
		padding:16px 0;
		color:#fff;
		/*color:#1f5079;*/
		font-size:16px;
		/*font-weight:bold;*/
		line-height:1;
		text-decoration:none;
		/*background:#5081bb;*/
		background:#FFF;
	background:#1f5079;
		/*border-radius: 5px;	*/
		/*border:1px solid #5081bb;*/
	border-left: 1px solid #5081bb;
	}
	
nav ul.gnav li a.lc {
	border-left: none;
	}	

nav ul.gnav li:hover > a {
		background:#5081bb;
	}

	/* 1段目 */
nav ul.gnav > li {
		position:relative;
		width:20%;
		float:left;
		margin:0;
		padding:0;
		text-align:center;
		list-style:none;
	}

nav ul.gnav > li:first-child {
		width:20%;
	}

nav ul.gnav > li.subnav a {
		padding-right:20px;
	}

nav ul.gnav > li.subnav > a:after {
		position:absolute;
		content:"";
		top:20px;
		width:0;
		height:0;
		margin-left:10px;
		border:5px solid transparent;
		border-top-color:#fff;
	}

	/* 2段目 */
nav ul.gnav li ul {
		position:absolute;
		z-index:3;
		top:100%;
		left:0;
		width:100%;
		margin:0;
		padding:0;
	}

nav ul.gnav li ul li {
		overflow:hidden;
		width:150%;
		height:0;
		color:#fff;
		transition:.2s;
	}

nav ul.gnav li ul li a {
		padding:13px 15px;
		text-align:left;
		background:#0C0C7C;
		font-weight:normal;
	}

nav ul.gnav li:hover > ul > li {
		overflow:visible;
		height:40px;
		border-bottom:1px solid #0E0E8C;
	}

nav ul.gnav li:hover ul li:last-child {
		border-bottom:none;
	}

nav ul.gnav > li:last-child > ul {
		left:-50%;
	}

nav ul.gnav li ul li ul:before {
		position:absolute;
		content:"";
		top:13px;
		left:-20px;
		width:0;
		height:0;
		border:5px solid transparent;
		border-left-color:#fff;
	}

nav ul.gnav > li:last-child ul li ul:before {
		position:absolute;
		content:"";
		top:13px;
		left:200%;
		margin-left:-20px;
		border:5px solid transparent;
		border-right-color:#fff;
	}


/*.gnav {
	display:block!important;
	}*/

	#spMenu {
		display:none;
	}
	
	
	.sub_menu {
		display:none;
	}

	.sub_open {
		display:none;
	}

	.fixed {
		position:fixed;
		top:0;
		left:0;
	}

}

/* 960pxまでの幅の場合に適応される */
/*---------------------------- タブレット・スマートフォン向けのスタイル ----------------------------*/
@media screen and (max-width:960px) {
	nav {
		padding-bottom: 0px;
		padding-top: 0px;
	}
	#contents {
		box-sizing:border-box;
		width:100%;
		padding:0 10px;
	}
	header{
		position: static;/*ナビなしの場合*/
	}


	.inner {
		width:100%;
	}

	header {
		height : auto;
	}


	h2 {
		font-size:80%;
	}

	.lock {
		overflow:hidden;
	}

	h1.top {
		position: relative;
		top: auto;
		right: auto;
	　　text-align: center;
	}

	div.news_box {
		display: block;

	}
	div.news01 {
		height : auto;
		padding: 10px;
		margin-bottom: 15px;
	}

	div.news02 {
		height : auto;
	}

	header {
		z-index:2;
		box-sizing:border-box;
		position: static;/*ナビなしの場合*/
		top:0;
		left:0;
		width:100%;
		padding:15px 10px;
		margin-bottom:10px;
	}

	header.top {
		position: fixed;
		padding:15px 10px;
		margin-bottom:10px;
	}
	.summary {
	position:relative;
		top:auto;
		right:auto;
		margin-top:15px;
		display: none;
	
	}	

.summary_container,
	.top_container{
		position: relative;
		top: auto;
		right: auto;
		width: 100%;
		text-align: center;
		margin-bottom: 0;
		/*font-size: 12px;*/
	}
	
 
/*.summary_container2,
	.summary2{
		display: none;
	}*/

.summary_container2{
		position: relative;
		top: auto;
		right: auto;
		text-align: center;
}	
	
	.summary{
		width: 40%;
		padding: 3px 5px;
		height: auto;
	}

	.summary2{
		width: 45%;
		padding: 10px;
		height: auto;
		margin: 5px auto;
	}	
	
	.summary_container li:first-child {
		width: 40%;
	}

.sengen {
	text-align: center;
	box-sizing:border-box;
	border: 1px solid #4bbba3;
	background: #388f7c;
	color: #fff;
	padding: 10px;
	width: 90%;
	margin: 5px auto;
}	
	
	.sub_menu {
		display:block;
	}
	
nav {
		background:#1f5079;
	}
nav ul.gnav {
		margin:0;
		padding:0;
	
		}

nav .inner > ul {
		z-index:2;
		overflow:auto;
		position:fixed;
		top:90px;
		right:0;
		width:100%;
		height:88%;
		height:-webkit-calc(100% - 53px);
		height:calc(100% - 53px);
	}
nav ul.gnav li {
		position:relative;
		width:100%;
		float:none;
		margin:0;
		text-align:left;
		list-style:none;
		border-bottom:1px solid #0E0E8C;
		background:#1f5079;
	}

nav ul.gnav li:first-child {
		border-top:0;
	}
nav ul.gnav li:last-child {
		border-bottom:0;
	}

nav ul.gnav li a {
		display:block;
		padding:10px 30px;
		color:#fff;
		text-decoration:none;
		background:#1f5079;
	}
nav ul.gnav li a:hover {
		color:#fff;
		background:#1f5079;
	}
nav ul.gnav ul ul {
		display:none;
		position:relative;
	}
nav ul.gnav li li a {
		box-sizing:border-box;
		width:100%;
		padding:10px 30px 10px 50px;
		text-align:left;
	}

nav ul.gnav li li li a {
		padding:10px 30px 10px 70px;
	}

	.subnav > a:before {
		display:block;
		content:"";
		position:absolute;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
		top:20px;
		right:30px;
		width:10px;
		height:10px;
		margin-top:-5px;
		background:#f1f1f1;
	}
	.subnav > a:after {
		display:block;
		content:"";
		position:absolute;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
		top:20px;
		right:30px;
		width:10px;
		height:10px;
		margin-top:-10px;
		background:#1f5079;
	}
	.subnav a:hover:after {
	  background:#1f5079;
	}

	.active > a:before {
		margin-top:0;
	}
	.active > a:after {
		margin-top:5px;
	}

	.gnav {
		display:none;
	}
	
	.sub_open {
		display:block;
	}
	

	#spMenu {
		display:block;
		z-index:2;
		position:fixed;
		top:10px;
		right:10px;
	}
	#spMenu:hover {
		cursor:pointer;
	}

	#navBtn {
		display:inline-block;
		position:relative;
		width:30px;
		height:30px;
		border-radius:5%;
		background:#1f5079;
	}
	#navBtnIcon {
		display:block;
		position:absolute;
		top:50%;
		left:50%;
		width:14px;
		height:2px;
		margin:-1px 0 0 -7px;
		background:#f1f1f1;
		transition:.2s;
	}
	#navBtnIcon:before,
	#navBtnIcon:after {
		display:block;
		content:'';
		position:absolute;
		top:50%;
		left:0;
		width:14px;
		height:2px;
		background:#f1f1f1;
		transition:0.3s;
	}
	#navBtnIcon:before {
		margin-top:-6px;
	}
	#navBtnIcon:after {
		margin-top:4px;
	}
	#navBtn .close {
		background:transparent;
	}
	#navBtn .close:before,
	#navBtn .close:after {
		margin-top:0;
	}
	#navBtn .close:before {
		transform:rotate(-45deg);
		-webkit-transform:rotate(-45deg);
	}
	#navBtn .close:after {
		transform:rotate(-135deg);
		-webkit-transform:rotate(-135deg);
	}	
	
	.btn00,
	.btn01,
	.btn02,
	.btn03,
	.btn04,
	.btn05,
	.btn07,
	.btn06 {
		font-size:90%;
		width:90%;
	}

	.btn07 {
	width:90%;
	padding:10px 10px;
	font-size: 16px;
}

.btn_ML0 {
	margin-left: auto;
}

.btn_MR0 {
	margin-right: auto;
}

	/* table */
	table.table01,
	table.table02 {
		width:100%;
		margin-bottom:5px;
		border-collapse:collapse;
		background:#fff;
	}
	table.table01 th,
	table.table02 th {
		width:auto;
		text-align:center;
	}
	table.table01 td,
	table.table02 td {
		width:auto;
		text-align:left;
	}
	table.table01 tr,
	table.table01 th,
	table.table01 td {
		display: block;
		width: auto;
	}
	table.table02 tr,
	table.table02 th,
	table.table02 td {
		display: block;
		width: auto;
	}
	table.table01 th,
	table.table02 th {
		border-top: none;
	}
	table.table01 td,
	table.table02 td {
		border-top: none;
		text-align: left;
	}
	table.table01 .thead,
	table.table02 .thead {
		display: none;
	}
	table.photo_box tr,
	table.table01 tr,
	table.table02 tr {
		width: 100%;
	}
	table.table01 .trhead,
	table.table02 .trhead {
		border-top: 1px solid #dbe1e8;
	}
	table.table02 td:first-child {
		background: #fbf5f5;
		text-align:center;
		font-weight:bold;
		font-size:14px;
	}
	table.table01 td:first-child {
		text-align:center;
		font-weight:bold;
	}
	table.table01 td::before {
		content: attr(data-label);
		float: left;
		font-weight: bold;
		margin-right: 5px;
	}
	table.table02 td::before {
		content: attr(data-label);
		float: left;
		font-weight: bold;
		margin-right: 5px;
	}
	table.table01 td.td_br::before {
		float: none;
	}

	/* form_table */
	table.form_table {
		width:100%;
		margin-bottom:1em;
		box-sizing:border-box;
	}
	table.form_table th {
		width:auto;
		text-align:center;
	}
	table.form_table td {
		width:auto;
		text-align:left;
	}
	table.form_table tr,
	table.form_table th,
	table.form_table td {
		display: block;
		width: auto;
	}
	table.form_table tr:first-child {
		border-top: 1px solid #dbe1e8;  
	}
	table.form_table th {
		border-top: none;
	}
	table.form_table td {
		border-top: none;
	}
	table.form_table dl dt {
		font-weight : normal;
	}

	/* form_table2 */
	table.form_table2 {
		width:100%;
		margin-bottom:1em;
		box-sizing:border-box;
	}
	table.form_table2 th {
		width:auto;
		text-align:center;
	}
	table.form_table2 td {
		width:auto;
		text-align:center;
	}
	table.form_table2 tr,
	table.form_table2 th,
	table.form_table2 td {
		display: block;
		width: auto;
	}
	table.form_table2 tr:first-child {
		border-top: 1px solid #87AF87;  
	}
	table.form_table2 th,
	table.form_table2 td {
		border-top: none;
	}

	/* kousa */
	table.kousa {
		border: 0;
		width:100%
	}
	table.kousa th{
		background-color: #f0fff0;
		display: block;
		border-right: none;
		font-size:120% ;
		font-weight: bold;
	}
	table.kousa thead {
		border: none;
		clip: rect(0 0 0 0);
		height: 1px;
		margin: -1px;
		overflow: hidden;
		padding: 0;
		position: absolute;
		width: 1px;
	}
	table.kousa tr {
		display: block;
		margin-bottom: 5px;
	}
	table.kousa td {
		border-bottom: 1px solid #87AF87;
		display: block;
		text-align: right;
		position: relative;
		padding: 5px 10px;
		border-right: none;
	}
	table.kousa td::before {
		content: attr(data-label);
		font-weight: bold;
		position: absolute;
		left: 10px;
	}
	table.kousa td:last-child {
		border-bottom: 0;
	}
	table.kousa tr.void th{
		background-color: #eee;
		color: #696969;
		font-weight: normal;
	}

	/* entry_list */
	table.entry_list {
		border: 0;
		width:100%
	}
	table.entry_list th{
		background-color: #f0fff0;
		display: block;
		border-right: none;
		font-size:120% ;
		font-weight: bold;
	}
	table.entry_list thead {
		border: none;
		clip: rect(0 0 0 0);
		height: 1px;
		margin: -1px;
		overflow: hidden;
		padding: 0;
		position: absolute;
		width: 1px;
	}
	table.entry_list tr {
		display: block;
		margin-bottom: 5px;
	}
	table.entry_list td {
		border-bottom: 1px solid #dbe1e8;
		display: block;
		text-align: right;
		position: relative;
		padding: 5px 10px;
		border-right: none;
	}
	table.entry_list td::before {
		content: attr(data-label);
		font-weight: bold;
		position: absolute;
		left: 10px;
	}

	table.entry_list td:first-child {
		background-color: #d6deee;
	}

	table.entry_list td:last-child {
		border-bottom: 0;
	}
	table.entry_list tr.void th{
		background-color: #eee;
		color: #696969;
		font-weight: normal;
	}

	/* none */
	table.none{
		width:100%;
	}
	table.none th.nocol{
		background-color: transparent;
		width: auto;
	}
	table.none th{
		display:block;
		width:100%;
		padding:3px 0px;
		text-align:center;
		vertical-align : middle;
	}
	table.none td{
		display:block;
		width:100%;
		padding:3px 0px;
		text-align:center;
		vertical-align:middle;
	}
	table.none tr:first-child {
		border-top: none;  
	}
	table.none3 tr:first-child {
		border-top: none;  
	}

	.warn_box::after,
	.caution_box::after,
	.status_box::after,
	.info_box::after{
		left: 10px;
	}
	table tr .TDL {
		text-align:center;
	}
	table tr .TDR {
		text-align:center;
	}
	table tr .TDLL {
		text-align:left;
	}
	table th.THW_90{
		text-align:left;
		table-layout: auto;
		width: auto;
	} 

	.br-pc { display:none; }
	.br-sp { display:block; }

	/*widthを縮める*/
	.w_down{
		width: auto;
		margin: 0 auto;
		box-sizing: border-box;
	}
	/*ページ概要*/
	.overview{
		width: auto;
	}
	.qt_box,
	.warn_box,
	.caution_box,
	.status_box,
	.info_box{
		width: auto;
	}
	form.box_form input[type="password"],
	form.box_form input[type="text"],
	form.box_form input[type="email"],
	form.kousa input[type="tel"],
	form.kousa input[type="fax"],
	form.box_form input[type="datetime-local"],
	form.box_form input[type=number]{
		font-size:16px;
	}
	span.s_br{
		display:block;
		margin-left:20px;
	}
	.picture_container table{
		margin: 0 auto;
		margin-bottom: 10px;
		width:270px;
	}
	div.photo_box,
	div.photo_box ol,
	div.photo_box li{
		width: auto;
	}
	div.photo_box li{
		margin-left:0px;
	}
	table.table01 td.td_br {
		text-align:center;
		width: auto;
	}
	.img_h{
		height:auto;

	}
	div.sub_box {
		width: auto;
		justify-content: flex-start;
		margin-left:auto;
		margin-right:auto;
	}
	div.menu_box {
		display: block;
		width: auto;
		margin-left:auto;
		margin-right:auto;
	}

.modal_box_map {
    width: 90%;
}

/*---------- メイン画像 ----------*/

.header-img {
  width: 100%;
  height: auto;
  margin: 10px 0 10px 0;
}

.header-img p {
	font-size: 90%;
  position: absolute;
  top: 50%;
  left:50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  }

} 

/* page_box */
.page_box {
	width: 100%;
	box-sizing: border-box;
	margin-bottom:10px;
	background:#efefef;
	font-size:12px;
	position:relative;
}

.spage {
	position:absolute;
	top:12px;
	left:10px;
	margin:0;

}

/* page_nav
------------------------------------------*/
.pageNav01 {
	width:100%;
	margin: 0px;
	padding: 10px 10px 5px;
	text-align: center;
}

ul.pageNav01 li {
	display: inline;
	margin: 0 2px;
	padding: 0;
}

ul.pageNav01 li span,
ul.pageNav01 li a {
	display: inline-block;
	margin-bottom: 5px;
	padding: 1px 8px;
	background: #fff;
	border: 1px solid #aaa;
	text-decoration: none;
	vertical-align: middle;
}

ul.pageNav01 li a:hover {
	background: #eeeff7;
	border-color: #00f;
}


/* table_dec 宣言用 */
table.table_dec {
	width:100%;
	margin-bottom:5px;
	border-collapse:collapse;
	background:#fff;
	box-sizing:border-box;
}

table.table_sd p{
	margin-bottom:0px;

}

table.table_sd th {
	padding:5px;
	text-align:left;
	vertical-align:top;
	border:1px solid #ddd;
	background:#fff;
}

table.table_sd td{
	padding:5px;
	text-align:left;
	border:1px solid #ddd;
	width: 90%;
}

table.table_sd td textarea {
	width: 100%;
}

.hidden_dec {
	visibility: collapse;
}

.disable_dec {
	display: none;
	visibility: collapse;
}

table.table_sd_otherr p{
	margin-bottom:0px;

}

table.table_sd_other th {
	padding:5px;
	text-align:left;
	vertical-align:top;
	border:1px solid #ddd;
	background:#fff;
}

table.table_sd_other td{
	padding:5px;
	text-align:left;
	border:1px solid #ddd;
	width: auto;
}

table.table_sd_other td textarea {
	width: 100%;
}

/*---------- 20251009 調整中 ----------*/

.dec_group {
	background:#C0ffC0 !important;
}

.c-header-link a {
	color:black;
}

.c-header-link a:link {
	color:black;
}

.c-header-link a:visited {
	color:black;
}

.del_row {
	background-color:#CCCCCC;
}
