@charset "UTF-8";


/* ========BASIC======== */
html {
  overflow-y:scroll;
  scroll-behavior: smooth;
}

body {
  margin:0;
  padding:0;
  line-height:1.6;
  letter-spacing:1px;
  font-family:"メイリオ", Verdana, Helvetica, sans-serif;
  font-size:12px;
  color:#333;
  border-top:3px solid #0089a1;
  background:#fff;
}

br {
  letter-spacing:normal;
}

a {
  color:#0089a1;
  text-decoration:underline;
}

a:hover {
  color:#0089a1;
  text-decoration:none;
}

img {
  border:0;
  vertical-align:bottom;
}

h1,h2,h3,h4,h5,h6 {
  margin:0;
}


/* ========TEMPLATE LAYOUT======== */
#header {
  width:100%;
  margin:0 auto;
  position:relative;
  padding:0 5px;
}

#menu {
  width:100%;
  float:left;
  border-bottom:5px solid #0089a1;
}

#icatchIndexWrap {
  clear:both;
  position:relative;
  z-index:-1
  overflow:hidden;
  height:100px;
  background:#EEFFFF;
}

#icatchWrap {
  clear:both;
  position:relative;
  z-index:-1
  overflow:hidden;
  height:100px;
  background:#ccffff;
}

#icatch {
  width:100%;
  margin:0 auto;
}

#contents {
  clear:both;
  position:relative;
  z-index:100;
  overflow:hidden;
  width:100%;
  margin:0 auto 0 35px;
  background:#ffffff;
}

#main {
  float:right;
  width:100%;
  padding:10px;
  margin:0 auto 0 35px;
  background:#ffffff 100% 0 no-repeat;
}

#sub {
  float:left;
  width:220px;
  padding:10px;
  background:#ffffff 0 0 no-repeat;
}

#footer {
  clear:both;
  background:#EEFFFF;
}

#footMenu {
  clear:both;
  overflow:hidden;
  width:100%;
  margin:0 auto;
  padding:30px 10px 30px 40px;
}


/* ========HEADER CUSTOMIZE======== */
#header h1 {
  margin:0;
  padding:10px 0;
  font-size:24px;
  color:#fff;
  line-height:70px;
}

#header h1 a {
  color:#333;
}

#header h1 a:hover {
  color:#666;
}

#header #pr p {
  margin:0;
  padding:10px 0;
  font-size:11px;
}

#header #gNavi {
  position:absolute;
  top:0;
  right:0;
  margin:0;
  font-size:11px;
}


/*
========MENU CUSTOMIZE========
*/
#menu ul {
  overflow:hidden;
  width:100%;
  margin:0 auto;
  padding:0;
  border-right:1px solid #e5e5e5;
}

#menu li {
  float:left;
  color:#333;
  text-align:center;
  list-style-type:none;
}

#menu li a {
  display:block;
  width:155px;
  color:#333;
  line-height:50px;
  text-decoration:none;
  border-left:1px solid #e5e5e5;
}

#menu li a.active {
  color:#fff;
  text-decoration:none;
  background:#ffffff 0 0 repeat-x;
}

#menu li a:hover {
  color:#fff;
  text-decoration:none;
  background:#0089a1;
}


/*
========ICATCH CONTENTS CUSTOMIZE========
*/
#icatch h2 {
  padding-top:30px;
}


/*
========MAIN CONTENTS CUSTOMIZE========
*/
#main h2 {
  margin-bottom:8px;
  padding:2px 2px 2px 0;
  color:#5A5132;
  font-size:15px;
  font-weight:bold;
  border-bottom:3px double #5A5132;
}

#main h3 {
  margin-bottom:5px;
  padding:16px 10px 10px 10px;
  font-size:14px;
  border-bottom:1px dotted #ddd;
  background:#ffffff 0 0 repeat-x;
}

#main h4 {
  margin-bottom:5px;
  padding:5px;
  font-size:14px;
  border-left:5px solid #0089a1;
  border-bottom:1px dotted #ddd;
}

#main h5 {
  margin-bottom:5px;
  padding:5px;
  font-size:13px;
  color:#fff;
  background:#0089a1;
}

#main h6 {
  margin-bottom:5px;
  font-size:13px;
}

#main p {
  margin:0 0 1em 0;
}

#main dt {
  margin-bottom:3px;
}

#main dd {
  padding:0;
  margin:0 0 0.5em 1em;
  padding:3px;
  background:#eee;
}

/*
INFORMATION CUSTOMIZE
*/
* html body #main dl.information dd div {
  display:inline-block;
}

#main dl.information dt {
  float:left;
  width:10em;
  margin:0;
  padding:0;
}

#main dl.information dd {
  margin:0 0 0.5em 10em;
  padding:0;
  background:transparent;
}

#main table {
  width:100%;
  border-collapse:collapse;
}

#main table th {
  padding:5px;
  font-size:12px;
  text-align:left;
  border:1px solid #ddd;
  background:#f0f7fc;
}

#main table td {
  padding:5px;
  font-size:12px;
  text-align:left;
  border:1px solid #ddd;
}


/*
========SUBCONTENTS CUSTOMIZE========
*/
#sub .section {
  margin-bottom:10px;
  border:1px solid #E8E8E8;
}

#sub h3 {
  padding:10px 5px;
  font-size:13px;
  font-weight:bold;
  color:#fff;
  text-align:center;
  border:1px solid #fff;
  border-bottom:none;
  background:#0089a1 0 0 repeat-x;
}

#sub ul {
  margin:0;
  padding:5px 5px 1px 5px;
  border:1px solid #fff;
  background:#E8E8E8;
}

#sub li {
  margin-bottom:5px;
  padding:5px;
  line-height:1.4;
  border:1px solid #b5b5b5;
  list-style:none;
  background:#ffffff 0 0 repeat-x;
}

#sub li a {
  display:block;
  padding-left:5px;
  line-height:3.0;
  border-left:5px solid #0089a1;
}

#sub2 ul {
  margin:0;
  padding:0;
}

#sub2 li {
  line-height:1.4;
  border-bottom:1px solid #ddd;
  list-style:none;
}

#sub2 li a {
  display:block;
  padding-left:20px;
  color:#333;
  line-height:3.0;
}


/*
========PAGETOP CUSTOMIZE=========

#pageTop {
  padding:20px 0 4px 0;
  text-align:right;
}

#pageTop a {
  padding:5px 5px 5px 17px;
  background:#ddd url("ime/bg_02.png") 7px 50% no-repeat;
  font-size:11px;
}
*/

/*
========FOOTMENU CUSTOMIZE========
*/
#footMenu .section {
  float:left;
  width:120px;
  margin-right:20px;
  padding:0;
}

#footMenu h3 {
  font-size:12px;
  border-bottom:1px dotted #999;
}

#footMenu ul {
  margin:0;
  padding:0;
}

#footMenu li {
  margin:0;
  padding:0;
  list-style:none;
}

#footMenu li a {
  padding-left:10px;
  font-size:11px;
  background:#ffffff 0 50% no-repeat;
}


/*
========FOOTER CUSTOMIZE========
*/
.copyright {
  clear:both;
  padding:10px 0;
  font-style:normal;
  font-size:11px;
  text-align:center;
}

/*
table
*/
table.type03 {
  border-collapse: separate;
  border-spacing: 1px;
  text-align: left;
}
table.type03 th {
  font-weight: bold;
  font-size:14px;
  color: #fff;
  background: #036;
}
table.type03 td {
  background: #e6f2ff;
}


table.type04{
  border-collapse:collapse;
}
table.type04 td,th{
  padding:10px;
}
table.type04 th{
  color:#fff;
  background:#008080;
}
table.type04 tr:nth-child(odd){
  background:#e6f2ff;
}
table.type04 td{
  border-bottom:2px solid #80bcff;
}


table.type05{
  border-collapse:collapse;
}
table.type05 td,th{
  padding:10px;
}
table.type05 th{
  color:#fffafa;
  background:#005ab3;
}
table.type05 tr:nth-child(odd){
  background:#e6f2ff;
}
table.type05 td{
  border-bottom:2px solid #80bcff;
}


table.type06{
  border-collapse:collapse;
  font-size:14px;
  font-color:#fff;
}
table.type06 td,th{
  padding:10px;
}
table.type06 th{
  font-size:14px;
  color:#fff;
  background:#fff;
}
table.type06 tr:nth-child(odd){
  background:#fff;
}
table.type06 td{
  border-bottom:2px solid #005ab3;
}

/*スクロール用*/
table.type11{
  border-collapse:collapse;
}
table.type11 thead.scrollHead{
  display:block;
  font-size:12px;
  color:#fffafa;
  background:#005ab3;
}
table.type11 tbody.scrollBody{
  display:block;
  overflow-y:scroll;
  height:800px;
  background:#f0ffff;
}

/*幅調整*/
table.type11 td,th{
  table-layout:fixed;
}
table.type11 td{
  border-bottom:2px solid #b0e0e6;
}
table.type11 td.no{
  width:100px;
}
table.type11 td.na{
  width:75px;
  text-align: right;
}
table.type11 td.d200{
  width:200px;
}
table.type11 td.d190{
  width:190px;
}
table.type11 td.d180{
  width:180px;
}
table.type11 td.d170{
  width:170px;
}
table.type11 td.d160{
  width:160px;
}
table.type11 td.d150{
  width:150px;
}
table.type11 td.d140{
  width:140px;
}
table.type11 td.d130{
  width:130px;
}
table.type11 td.d120{
  width:120px;
}
table.type11 td.d110{
  width:110px;
}
table.type11 td.d100{
  width:100px;
}
table.type11 td.d90{
  width:90px;
}
table.type11 td.d80{
  width:80px;
}
table.type11 td.d70{
  width:70px;
}
table.type11 td.d60{
  width:60px;
}

table.type11 th.noo{
  width:100px;
}
table.type11 th.nam{
  width:55px;
}
table.type11 th.h150{
  width:150px;
}
table.type11 th.h140{
  width:140px;
}
table.type11 th.h130{
  width:130px;
}
table.type11 th.h120{
  width:120px;
}
table.type11 th.h110{
  width:110px;
}
table.type11 th.h100{
  width:100px;
}
table.type11 th.h90{
  width:90px;
}
table.type11 th.h80{
  width:80px;
}
table.type11 th.h70{
  width:70px;
}
table.type11 th.h60{
  width:60px;
}

/*
ボタン
*/
.cp_btn01 {
  display: block;
  width: 100px;
  height:40px;
  padding: 0.8em;
  text-align: center;
  text-decoration: none;
  color: #4169e1;
  background: #ffffff;
  border: 2px solid #4169e1;
  border-radius: 3px;
  transition: .4s;
}
.cp_btn01:hover {
  background: #4169e1;
  color: #fff;
}
.cp_btn02 {
  display: block;
  width: 100px;
  height:40px;
  padding: 0.8em;
  text-align: center;
  text-decoration: none;
  color: #191970;
  background: #ffffff;
  border: 2px solid #191970;
  border-radius: 3px;
  transition: .4s;
}
.cp_btn02:hover {
  background: #191970;
  color: #fff;
}
.cp_btn03 {
  display: block;
  width: 100px;
  height:40px;
  padding: 0.8em;
  text-align: center;
  text-decoration: none;
  color: #006400;
  background: #ffffff;
  border: 2px solid #006400;
  border-radius: 3px;
  transition: .4s;
}
.cp_btn03:hover {
  background: #006400;
  color: #fff;
}
.cp_btn04 {
  display: block;
  width: 100px;
  height:40px;
  padding: 0.8em;
  text-align: center;
  text-decoration: none;
  color: #00552e;
  background: #ffffff;
  border: 2px solid #00552e;
  border-radius: 3px;
  transition: .4s;
}
.cp_btn04:hover {
  background: #00552e;
  color: #fff;
}
.cp_btn05 {
  display: block;
  width: 100px;
  height:40px;
  padding: 0.8em;
  text-align: center;
  text-decoration: none;
  color: #522886;
  background: #ffffff;
  border: 2px solid #522886;
  border-radius: 3px;
  transition: .4s;
}
.cp_btn05:hover {
  background: #522886;
  color: #fff;
}
.cp_btn06 {
  display: block;
  width: 100px;
  height:40px;
  padding: 0.8em;
  text-align: center;
  text-decoration: none;
  color: #b6007a;
  background: #fffff0;
  border: 2px solid #b6007a;
  border-radius: 3px;
  transition: .4s;
}
.cp_btn06:hover {
  background: #b6007a;
  color: #fff;
}
.cp_btn07 {
  display: block;
  width: 100px;
  height:40px;
  padding: 0.8em;
  text-align: center;
  text-decoration: none;
  color: #e60012;
  background: #fffff0;
  border: 2px solid #e60012;
  border-radius: 3px;
  transition: .4s;
}
.cp_btn07:hover {
  background: #e60012;
  color: #fff;
}
.cp_btn08 {
  display: block;
  width: 100px;
  height:40px;
  padding: 0.8em;
  text-align: center;
  text-decoration: none;
  color: #EC407A;
  background: #fffff0;
  border: 2px solid #EC407A;
  border-radius: 3px;
  transition: .4s;
}
.cp_btn08:hover {
  background: #EC407A;
  color: #fff;
}
.cp_btn09 {
  display: block;
  width: 100px;
  height:40px;
  padding: 0.8em;
  text-align: center;
  text-decoration: none;
  color: #9c5e31;
  background: #ffffff;
  border: 2px solid #9c5e31;
  border-radius: 3px;
  transition: .4s;
}
.cp_btn09:hover {
  background: #9c5e31;
  color: #fff;
}
.cp_btn10 {
  display: block;
  width: 100px;
  height:40px;
  padding: 0.8em;
  text-align: center;
  text-decoration: none;
  color: #800000;
  background: #ffffff;
  border: 2px solid #800000;
  border-radius: 3px;
  transition: .4s;
}
.cp_btn10:hover {
  background: #800000;
  color: #fff;
}
.cp_btn11 {
  display: block;
  width: 100px;
  height:40px;
  padding: 0.8em;
  text-align: center;
  text-decoration: none;
  color: #556b2f;
  background: #ffffff;
  border: 2px solid #556b2f;
  border-radius: 3px;
  transition: .4s;
}
.cp_btn11:hover {
  background: #556b2f;
  color: #fff;
}
.cp_btn12 {
  display: block;
  width: 100px;
  height:40px;
  padding: 0.8em;
  text-align: center;
  text-decoration: none;
  color: #663300;
  background: #ffffff;
  border: 2px solid #663300;
  border-radius: 3px;
  transition: .4s;
}
.cp_btn12:hover {
  background: #663300;
  color: #fff;
}








/*ボックス全体*/
.switchbox {
    margin: 10px 0;
    padding: 0;
}
/*ラベル*/
.switchbox label {
    display: block;
    font-weight: bold;
    cursor :pointer;
}
/*チェックボックスを非表示にする*/
.switchbox input {
    display: none;
}
/*中身を非表示にしておく*/
.switchbox div {
    height: 0;
    overflow-y: hidden;
    transition: 0.8s;/*ゆっくり表示させる*/
    opacity: 0;
}
/*クリックで中身を表示*/
.switchbox input:checked + label + div {
    height: auto;
    opacity: 1;
}
/*アイコン*/
.switchbox label::before {
    content: '\f067';
    font-family: 'FontAwesome';
    padding-right: 8px;
}
/*クリックでアイコン入れ替え*/
.switchbox input:checked + label::before {
    content: '\f068';
}

/*吹き出し作成-上*/
.tooltip1{
  position: relative;
  cursor: pointer;
  display: inline-block;
}
.tooltip1 p{
  margin:0;
  padding:0;
}
.description1 {
  display: none;
  position: absolute;
  padding: 15px;
  font-size: 12px;
  line-height: 1.6em;
  color: #ffffff;
  border-radius: 5px;
  background: #191970;
  width: 200px;
}
.description1:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  border: 15px solid transparent;
  border-top: 15px solid #191970;
  margin-left: -15px;
}
.tooltip1:hover .description1{
  display: inline-block;
  top: -70px;
  left: 5px;
}

/*吹き出し作成-下*/
.tooltip3{
  position: relative;
  cursor: pointer;
  display: inline-block;
}
.tooltip3 p{
  margin:0;
  padding:0;
}
.description3 {
  display: none;
  position: absolute;
  padding: 10px;
  font-size: 12px;
  line-height: 1.6em;
  color: #ffffff;
  border-radius: 5px;
  background: #191970;
  width: 150px;
}
.description3:before {
  content: "";
  position: absolute;
  top: -24px;
  right: 60%;
  border: 15px solid transparent;
  border-top: 15px solid #191970;
  margin-left: -15px;
  transform: rotateZ(180deg);
}
.tooltip3:hover .description3{
  display: inline-block;
  top: 45px;
  left: 0px;
}



/*ドロップダウンメニュー*/
.gnav {
    display: flex;
    height: 2rem;
    margin: 0 auto;
    width: 300px;
}
.gnav > li {/*親階層のみ幅を25%にする*/
    width: 95%;
}
/*全てのリスト・リンク共通*/
.gnav li {
    list-style: none;
    position: relative;
}
.gnav li a {
    background: #add8e6;
    border-right: 1px solid #eee;
    color: #fff;
    display: block;
    height: 2rem;
    line-height: 2rem;
    text-align: center;
    text-decoration: none;
    width: 100%;
}
/*子階層以降共通*/
.gnav li li {
    height: 0;
    overflow: hidden;
    transition: .5s;
}
.gnav li li a {
    border-top: 1px solid #eee;
}
.gnav li:hover > ul > li {
    height: 2rem;
    overflow: visible;
}
