@charset "UTF-8";

/* ---------------------
 * FONTSIZE MODEL * 
 * ---------------------
 *  63% ->	10pxに相当
 *  70% ->	11pxに相当
 *  75% ->	12pxに相当
 *  82% ->	13pxに相当
 *  88% ->	14pxに相当
 *  94% ->	15pxに相当
 * 100% ->	16pxに相当
 * 107% ->	17pxに相当
 * 113% ->	18pxに相当
 * 119% ->	19pxに相当
 * 125% ->	20pxに相当
 * --------------------- */
 
 
/* ========BASIC======== */
* {
   font-family:"Hiragino Kaku Gothic Pro",HiraKakuPro-W3,"ヒラギノ角ゴ Pro W3","メイリオ", Meiryo,"MS P ゴシック",verdana,sans-serif;
   color:#333;
}

body {
   margin:0;
   padding:0;
   line-height:1.6;
   letter-spacing:1px;
   background:#fff;
}

br {
   letter-spacing:normal;
}

a {
   color:#333;
   text-decoration:none;
}

a.lightslategray {/* greyそのまま */
   color:lightslategray;
   text-decoration:none;
}

a:hover {
   color:#0172AB;
}

a.lightslategray:hover {/* greyそのまま */
   color:lightslategray;
}

img {
   border:0;
   vertical-align:bottom;
}

h1,h2,h3,h4,h5,h6 {
   margin:0;
}

.mb05{margin-bottom: 5px !important;}
.mb10{margin-bottom: 10px !important;}
.mb15{margin-bottom: 15px !important;}
.mb20{margin-bottom: 20px !important;}
.mb25{margin-bottom: 25px !important;}
.mb30{margin-bottom: 30px !important;}
.mb35{margin-bottom: 35px !important;}
.mb40{margin-bottom: 40px !important;}
.mb45{margin-bottom: 45px !important;}
.mt05{margin-top: 5px !important;}
.mt10{margin-top: 10px !important;}
.mt15{margin-top: 15px !important;}
.mt20{margin-top: 20px !important;}
.mt25{margin-top: 25px !important;}
.mt30{margin-top: 30px !important;}
.mt35{margin-top: 35px !important;}
.mt40{margin-top: 40px !important;}
.mt45{margin-top: 45px !important;}
.ml05{margin-left: 5px !important;}
.ml10{margin-left: 10px !important;}
.ml15{margin-left: 15px !important;}
.ml20{margin-left: 20px !important;}
.ml25{margin-left: 25px !important;}
.ml30{margin-left: 30px !important;}
.ml35{margin-left: 35px !important;}
.ml40{margin-left: 40px !important;}
.ml45{margin-left: 45px !important;}
.mr05{margin-right: 5px !important;}
.mr10{margin-right: 10px !important;}
.mr15{margin-right: 15px !important;}
.mr20{margin-right: 20px !important;}
.mr25{margin-right: 25px !important;}
.mr30{margin-right: 30px !important;}
.mr35{margin-right: 35px !important;}
.mr40{margin-right: 40px !important;}
.mr45{margin-right: 45px !important;}
.fnt100{font-size: 100% !important;}
.fnt82{font-size: 82% !important;}

h3.title {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 18px !important;
	text-align: center;
   color: #535D57;
   margin-top: 50px !important;
}

h3.title::before,
h3.title::after {
	content: '';
	width: 50px;
	height: 2px;
	background-color: #adb7bd;
}

h3.title::before {
	margin-right: 20px;
}
h3.title::after {
	margin-left: 20px;
}
h4.brd{
   border-bottom: 1px solid #a5a5a5;
   margin-bottom: 15px !important;
   }
blockquote {
   position: relative;
   padding: 20px 25px 10px 25px;
   box-sizing: border-box;
   font-style: italic;
   background: #efefef;
   color: #555;
}
blockquote cite {
   display: block;
   text-align: right;
   color: #888888;
}
p.indent{
   text-indent: -2.2em;
   padding-left: 2.2em;
}
.boxgry{
background: #dae0e0;
padding: 1.5em 1.5em 1em 1.5em;
margin:0 10px 30px 10px;
}
ul.list{padding-left:5px;margin:5px 0 15px 0;}
ul.list li{list-style: none;}


/* ========TEMPLATE LAYOUT======== */
div#top {
   width:899px;
   margin:0 auto;
   background:url("images/bg_contents_left.gif") 0 0 repeat-y;
}

div#wrapper {
   width:899px;
   background:url("images/bg_contents_right.gif") 100% 0 repeat-y;
}

div#header {
   position:relative;
   padding:0 5px;
}

div#pr {
   position:absolute;
   width:600px;/*元値460px*/
   left:245px;
   top:15px;/*22px,15*/
}

div#menu {
   float:left;
   padding:0 5px;
}

div#contents {
   clear:both;
   margin:0 5px;
   padding:20px 20px 0 20px;

}
div#contents .topVisl {
width: 100%;
max-width:899px ;
margin-bottom: 30px !important;
overflow: hidden;
}
div#contents .topVisl img{width: 100%;height: auto;}
div#contents ul#topapp{
   list-style-type: none;
   margin: 0 0 30px 0;
   padding: 0 0 10px 0;
   overflow: hidden;
   display:flex;
}
div#contents ul#topapp li{
box-sizing: border-box;
width: 31%;
float: left;
margin: 0 0 0 3.5%;
font-size: 15px;
	padding:2em 0.5em 1.2em 1.5em;/*内側の余白*/
	background: none;/*元のボックス背景色なし*/
	border:1px solid #ccc ;/*線の太さ・種類・色*/
	position: relative;/*配置（基準）*/
}
div#contents ul#topapp li::first-letter{
font-size: 24px;
font-weight: bold;
color: #0082c6;
padding-right: 2px;
}
div#contents ul#topapp li:after{
	background-color:#f1f1f1;/*ずらしたボックスの背景色*/
	border:none;
	content: '';
	position: absolute;/*配置（ここを動かす）*/
	top: 7px;/*上から7pxずらす*/
	left: 7px;/*左から7pxずらす*/
	width: 100%;
	height: 100%;
	z-index: -1;
}
div#contents ul#topapp li:first-child{margin: 0 0;}
div#contents ul#topapp li:last-child{margin-right:7px;}
div#contents ul#topapp li span{
position: absolute;
bottom:-7px;
line-height: 1.0;
right:0;
font-size: 34px;
font-weight: bold;
font-family: 'Courier New', Courier, monospace;
font-style: oblique;
color: #e0dfdf;
}
p.center{text-align: center;margin: 0 auto 2em auto !important;}
span a.btn {
	display: block;
	text-align: center;
	vertical-align: middle;
	margin: auto 20px;
   padding: 20px 0;
	font-weight: bold;
	border: 2px solid #f75757;
	background: #f75757;
   color: #fff !important;
	border-radius: 100vh;
	transition: 0.5s;
}
span a.btn:hover {
	color: #f75757 !important;
	background: #fff;
}
h1.vsnTxt{
font-size:20px;
line-height: 1.5;
padding: 1em 2em 0.5em 2em;
color: #0082c6;
--border-color:black;/*カッコの色*/
margin: 0.5em auto 1.2em auto;
position: relative;
}
h1.vsnTxt::before,
h1.vsnTxt::after {
	content: '';
	width: 20px;
	height: 30px;
	position: absolute;
}
h1.vsnTxt::before {
	border-left: solid 1px var(--border-color);
	border-top: solid 1px var(--border-color);
	top: 0;
	left: 0;
}
h1.vsnTxt::after {
	border-right: solid 1px var(--border-color);
	border-bottom: solid 1px var(--border-color);
	bottom: 0;
	right: 0;
}
ul.mssnTxt{
list-style-type: none;
padding: 0 0;
display: flex;
overflow: hidden;
margin-bottom: 50px;
}
ul.mssnTxt li{
   margin-right:10px;
   width: 200px;
   height: 200px;
   background:#ebebeb;
   border-radius: 50%;
   color: #444;
   text-align: center;
   position: relative;
}
ul.mssnTxt li:last-child{margin: 0 0;}
ul.mssnTxt li span{
   position: absolute;
   top: 50%; 
   left: 50%; 
   width: 80%;
   font-size: 14px;
   font-weight: bold;
   transform: translate(-50%,-50%);
}

div#main {
   float:left;
   overflow: hidden;
/*   width:811px;*/
   width:611px; 
}

div#main2 {
   float:left;
   width:851px;
}

div#sub {
   float:right;
   width:220px;
}

div#totop {
   clear:both;
}

div#footer {
   clear:both;
   background:#0283C4;
   margin:0 5px;
}


/* ========HEADER CUSTOMIZE======== */
div#header h1 {
   margin:0;
   padding:10px;
   font-size:150%;/* 24px相当 */
   color:#fff;
   line-height:70px;
}

div#header h1 a {
   color:#333;
}

div#header h1 a:hover {
   color:#666;
}

div#header #pr p {
   margin:0;
   font-size:82%;/* 12px相当 *//*defailt,75%*/
}


/* ========MENU CUSTOMIZE======== */
div#menu ul {
   margin:0;
   padding:0;
}

div#menu li {
   float:left;
   font-size:75%;/* 12px相当 */
   color:#333;
   text-align:center;
   list-style-type:none;
}

div#menu li a {
   display:block;
   width:177px;
   color:#333;
   line-height:40px;
   border-left:1px solid #DCDCDC;
   background:url("images/bg_menu.gif") 0 0 repeat-x;
}

div#menu li.home a {
   border:none;
}

div#menu li a.active {
   color:#333;
}

div#menu li a:hover {
   background:url("images/bg_menu.gif") 0 -40px repeat-x;
}


/* ========MAIN CONTENTS CUSTOMIZE======== */
div#main a {
   color:#0172AB;
}

div#main a:visited {/*付け加え*/
   color:#663399;
}

/*
div#main a:hover {
   text-decoration:underline;
}
*/

div#main a:hover {
   text-decoration:none;
}

div#main h2 {
   margin-bottom:8px;
   padding:2px 2px 2px 0;
   color:#333;
   font-size:94%;/* 15px相当 */
   font-weight:bold;
   border-bottom:3px double #535D57;
}

div#main h3 {
   margin-bottom:3px;
   font-size:82%;/* 13px相当 */
}

div#main h4 {
   margin-bottom:2px;
   font-size:82%;/* 13px相当 */
}

div#main h5 {
   margin-bottom:2px;
   font-size:82%;/* 13px相当 */
}

div#main h6 {
   margin-bottom:2px;
   font-size:82%;/* 13px相当 */
}

div#main p {
   margin:0 0 1em 0;
   font-size:82%;/* 13px相当 */
}

div#main ul,ol,dl {
   font-size:82%;/* 13px相当 */
}

div#main dt {
   margin-bottom:3px;
}

div#main dd {
   padding:0;
   margin:0 0 0.5em 1em;
   padding:3px;
   background:#f1f1f1;
}

/*
img {
   border:0;
   vertical-align:middle;
}
*/

div#main img {/*一応書いてみた*/
   border:0;
   vertical-align:middle;
}


div#main td,tr {/*2023-12-12*/
   font-size:90%;/* 13px相当 */
   text-align:left;/* デフォルトはcenter */
}



div#main td.left {/**//*表内右ゾロエ*/
   font-size:13px;/* 13px相当 */
   text-align:left;
   vertical-align:top;
}

div#main ul.link{list-style-type: none;}
div#main ul.link li{
margin-bottom: 5px;
text-indent:-1.3em;
}
div#main ul.link li a{transition: 0.5s;}
div#main ul.link li a:hover{opacity: .7;}

/* INFORMATION CUSTOMIZE */

div#main dl.information{
height: 470px;
overflow-x:auto;
overflow-y: scroll;
box-sizing:border-box;
margin-bottom: 40px;
}

* html body div#main dl.information dd div{
   display:inline-block;
}

div#main dl.information dt {
   float:left;
   width:8em;
   margin:0;
   padding:0;
}

div#main dl.information dd {
	margin: 0 0 0.5em 8em;
	padding: 0;
	background: transparent;
}

/* PHOTO CUSTOMIZE */
* html body div#main dl.photo dd div{
   display:inline-block;
}

div#main dl.photo dt {
   float:left;
   width:auto;
   clear:both;
   height:auto;
   margin:0;
   padding:5px;
}

div#main dl.photo dd {
   margin:0 0 0.5em 16.5em;
   padding:5px;
   background:transparent;
}


/* ========MAIN2 CONTENTS CUSTOMIZE======== */
div#main2 a {
   color:#0172AB;
}

div#main2 a:visited {/*付け加え*/
   color:#663399;
}

/*
div#main2 a:hover {
   text-decoration:underline;
}
*/

div#main2 a:hover {
   text-decoration:none;
}

div#main2 h2 {
   margin-bottom:8px;
   padding:2px 2px 2px 0;
   color:#333;
   font-size:94%;/* 15px相当 */
   font-weight:bold;
   border-bottom:3px double #535D57;
}

div#main2 h3 {
   margin-bottom:3px;
   font-size:82%;/* 13px相当 */
}

div#main2 h4 {
   margin-bottom:2px;
   font-size:82%;/* 13px相当 */
}

div#main2 h5 {
   margin-bottom:2px;
   font-size:82%;/* 13px相当 */
}

div#main2 h6 {
   margin-bottom:2px;
   font-size:82%;/* 13px相当 */
}

div#main2 p {
   margin:0 0 1em 0;
   font-size:82%;/* 13px相当 */
}

div#main2 ul,ol,dl {
   font-size:82%;/* 13px相当 */
}

div#main2 dt {
   margin-bottom:3px;
}

div#main2 dd {
   padding:0;
   margin:0 0 0.5em 1em;
   padding:3px;
   background:#f1f1f1;
}

div#main2 img {/*一応書いてみた*/
   border:0;
   vertical-align:middle;
}

div#main2 td,tr {
   font-size:82%;/* 13px相当 */
   text-align:center;
}

div#main2 td.left {/*表内右ゾロエ*/
   font-size:82%;/* 13px相当 */
   text-align:left;
}

/* INFORMATION CUSTOMIZE */
* html body div#main2 dl.information dd div{
   display:inline-block;
}

div#main2 dl.information dt {
   float:left;
   width:10em;
   height:auto;
   margin:0;
   padding:0;
}

div#main2 dl.information dd {
   margin:0 0 0.5em 10em;
   padding:0;
   background:transparent;
}


/* ========SUBCONTENTS CUSTOMIZE======== */
div#sub .section {
   margin-bottom:8px;/* 10px */
}

div#sub h2 {
   padding:3px;/* 3px */
   font-size:82%;/* 13px相当 */
   font-weight:bold;
   color:#fff;
   background:url("images/bg_sub_h3_a.png") 50% 50%;/*元ファイルはbg_sub_h2.gif*/
}

div#sub h2 a {
   display:block;
   color:#FFFFFF;
/*
   padding-left:13px;
   background:url(images/bg_sub_h2.gif) 0 5px no-repeat;
*/
}

div#sub ul {
   margin:5px 0 0 5px;
   padding:0;
}

div#sub li {
   padding:5px 0 5px 0;
   font-size:75%;/* 12px相当 */
   line-height:1.4;
   list-style:none;
   background:url("images/bg_dotline.gif") 0 100% repeat-x;
}

div#sub li a {
   display:block;
   padding-left:12px;
   background:url(images/bg_list.gif) 0 5px no-repeat;
}


/* ========TOTOP CUSTOMIZE========= */
div#totop {
   margin:10px 0;
   text-align:right;
   font-size:75%;/* 12px相当 */
}

div#totop a {
   padding:0 0 0 12px;
   background:url("images/bg_totop.gif") 0 50% no-repeat;
}


/* ========FOOTMENU CUSTOMIZE======== */
div#footMenu ul {
   margin:0 0 10px 0;
   padding:10px 0 0 0;
   text-align:right;
   background:url("images/bg_dotline.gif") 0 0 repeat-x;
}

div#footMenu li {
   display:inline;
   margin:0 0 0 10px;
   font-size:75%;/* 12px相当 */
   list-style:none;
}

div#footMenu li a {
   padding-left:10px;
   background: url("images/bg_footmenu.gif") 0 50% no-repeat;
}


/* ========FOOTER CUSTOMIZE======== */
address {
   padding:10px 0;
   font-style:normal;
   font-size:75%;/* 12px相当 */
   color:#fff;
   text-align:center;
}

.uline{
text-decoration: underline;
color: green;
}

.tab1{
text-align: right;
margin-right: 50px;
}
.tab2{
text-align: left;
position: relative;
left: 45px;
line-height: 110%;
}
.lh{
line-height: 50%;
}
