@charset "shift_jis";

body {
  font-family: "?q???M?m?p?S Pro W3", "Hiragino Kaku Gothic Pro", "???C???I", Meiryo, Osaka, "MS P ?S?V?b?N",
    "MS P Gothic", sans-Serif;
  margin: 0;
  padding: 0;
  font-size: 12px;
  color: #333333;
  background-image: url(img/back.gif);
}

/* IE7 ?p */

*:first-child + html * {
  font-family: "???C???I", Meiryo, "MS P ?S?V?b?N", "MS P Gothic", sans-Serif;
}

/* IE6 ?p */
* html * {
  font-family: "???C???I", Meiryo, "MS P ?S?V?b?N", "MS P Gothic", sans-Serif;
}

a:link {
  color: #b96d14;
  font-size: 13px;
}

a:hover {
  color: #bb7b00;
  font-size: 13px;
}

a:visited {
  color: #804b00;
  font-size: 13px;
}

p {
  margin: 18px 0 18px 0;
  line-height: 180%;
  letter-spacing: 1px;
}

.center {
  text-align: center;
}

.left {
  text-align: left;
}

.right {
  text-align: right;
}

.ad {
  margin: 5px 0;
}

.b {
  font-weight: bold;
}

/*---------- ???C?? ----------*/

#main {
  width: 100%;
  margin: auto;
  padding: 0;
  text-align: center;
  background-color: #ffffff;
}

/*---------- ?w?b?_?[ ----------*/

#header {
  margin: 0;
  width: 100%;
  height: 80px;
  text-align: center;
  border-top: solid 3px #002361;
  background-image: url(img/header.jpg);
  background-repeat: repeat-x;
}

#header h1 {
  margin: 0;
  padding: 12px 10px 0 14px;
  width: 400px;
  text-align: left;
  font-size: 14px;
  color: #666666;
  letter-spacing: 1px;
}

#header p {
  margin: 0;
  padding: 4px 0 0 30px;
  text-align: left;
  font-size: 13px;
  color: #666666;
  letter-spacing: 1px;
}

#table-left {
  text-align: left;
  font-size: 13px;
  color: #666666;
  line-height: 150%;
  text-decoration: none;
}

#table-left a {
  font-size: 16px;
  color: #666666;
  text-decoration: none;
}

#table-left a:hover {
  font-size: 16px;
  color: #999999;
  text-decoration: none;
}

#table-right {
  text-align: right;
  margin: 0;
  padding: 22px 20px 2px 0;
  font-size: 16px;
  color: #c9171e;
  line-height: 150%;
  text-decoration: none;
}

#table-right a {
  font-size: 12px;
  color: #333333;
  text-decoration: none;
}

#table-right a:hover {
  font-size: 12px;
  color: #666666;
  text-decoration: none;
}

#header-menu {
  height: 24px;
  background-color: #333333;
  border-top: solid 3px #dddddd;
  border-bottom: solid 3px #dddddd;
  margin: 0 0 2px 0;
  padding: 9px 0 3px 15px;
  background: url(img/head_menu_back.gif);
  background-repeat: repeat-x;
  text-align: left;
  width: auto;
}

#header-menu ul {
  width: 1280px;
  text-align: left;
  margin: 0 auto 0 auto;
  padding: 0px;
}

#header-menu li {
  color: #ffffff;
  display: inline;
  padding-left: 15px;
  padding-right: 10px;
  background: url(img/l_icon.gif) no-repeat;
  background-position: left center;
}

#header-menu a {
  color: #ffffff;
  font-weight: bold;
  text-decoration: none;
}

#header-menu a:hover {
  color: #dddddd;
}

#header-img {
  width: 100%;
  height: 250px;
  margin: 0;
  text-align: center;
  background-color: #eeeeee;
}

#header-img-slim {
  width: 100%;
  height: 150px;
  margin: 0;
  text-align: center;
  background-color: #dddddd;
}

/*---------- ?R???e???c ----------*/

#container {
  width: 1270px;
  margin: 0 auto 0 auto;
  overflow: hidden;
  padding: 12px 0 6px 10px;
  background: #ffffff url(img/side_yback.jpg);
  background-repeat: repeat-y;
}

/*---------- ?~?h?? ----------*/

#middle {
  float: left;
  width: 1050px;
}

/*---------- ???C???R???e???c ----------*/

#contents {
  float: right;
  margin: 0;
  padding: 5px 10px 5px 0;
  font-size: 14px;
  line-height: 180%;
  width: 750px;
  letter-spacing: 1px;
  text-align: left;
}

#contents #pannavi {
  margin: 0;
  padding: 0 0 5px 0;
  font-size: 12px;
}

#contents h1 {
  font-size: 20px;
  color: #321901;
  border-bottom: 2px solid #002361;
  padding: 6px 0;
  margin: 0 0 20px 0;
}

#contents h2 {
  height: 27px;
  margin: 0 0 7px 0;
  padding: 6px 0 0 20px;
  font-size: 14px;
  color: #321901;
  background-image: url(img/titlebar.gif);
  background-repeat: no-repeat;
}

#contents h3 {
  margin: 12px 4px 10px 5px;
  padding: 9px 10px 4px 13px;
  line-height: 110%;
  font-size: 14px;
  color: #321901;
  border-bottom: solid 1px #aaaaaa;
  border-left: solid 4px #aaaaaa;
  background-color: #eeeeee;
}

#contents p {
  margin: 18px 0 18px 0;
  padding: 0 4px 0 4px;
  line-height: 180%;
  font-size: 14px;
}

#contents .red {
  color: #ff0000;
}

#contents a {
  font-size: 14px;
  color: #321901;
}

#contents a:hover {
  font-size: 14px;
  color: #005ebb;
}

#contents div.button {
  display: block;
  width: 100%;
  margin-bottom: 1.2rem;
}

#contents div.button a {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: auto;
  color: #fff;
  background: #f0853f;
  text-decoration: none;
  padding: 1rem;
  transition: 0.15s ease;
  box-shadow:
    0 3px 6px rgb(0 0 0 / 16%),
    0 3px 6px rgb(0 0 0 / 20%);
}

#contents div.button a.nolink {
  background: #cccccc;
  pointer-events: none;
}

#contents div.button a:hover {
  opacity: 0.8;
}

#contents div.flex__button {
  display: block;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
}

#contents div.flex__button a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc((100% - 60px) / 4);
  height: 56px;
  color: #fff;
  background: #f0853f;
  padding: 0 0.4rem;
  margin-right: 2rem;
  margin-bottom: 1.2rem;
  text-decoration: none;
  box-shadow:
    0 3px 6px rgb(0 0 0 / 16%),
    0 3px 6px rgb(0 0 0 / 20%);
  transition: 0.15s ease;
}

#contents div.flex__button a.nolink {
  background: #cccccc;
  pointer-events: none;
}

#contents div.flex__button a:hover {
  opacity: 0.8;
}

#contents img.head_photo {
  margin: 0 0 10px 0;
}

#contents img.photo {
  float: left;
  margin: 10px 20px 0 0;
}

#contents img.picture {
  margin: 0 10px 10px 0;
  float: left;
}

#contents p.photo {
  margin: 0 0 20px 0;
  padding: 0;
}

#contents .box__flex {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin: 20px auto;
}

#contents .box__flex .box__text {
  display: block;
  width: calc(100% - 300px -20px);
  margin-right: 20px;
}

#contents .box__flex .box__img {
  display: block;
  width: 300px;
}

table#t01 {
  border: solid 1px #999999;
  border-collapse: collapse;
}

td#t01 {
  border: solid 1px #999999;
  border-collapse: collapse;
}

td#head {
  padding: 6px;
  border: solid 1px #999999;
  border-collapse: collapse;
}

table.table_line {
  border-collapse: collapse;
  border: solid 1px #bbbbbb;
}

td.table_line {
  border-collapse: collapse;
  border: solid 1px #bbbbbb;
  padding: 8px 14px 8px 14px;
}

/*---------- ?�?T?C?h???j???[ ----------*/

#menu_left {
  float: left;
  margin: 0 0 15px 0;
  padding: 0;
  width: 250px;
  text-align: left;
  letter-spacing: 1px;
}

#menu_left h2 {
  height: 20px;
  margin: 0;
  padding: 7px 0 5px 12px;
  font-size: 13px;
  color: #fffffc;
  background-image: url(img/sidebar.gif);
  background-repeat: no-repeat;
}

#menu_left .menulist_left {
  margin: 0 0 15px 0;
  padding: 5px 2px 0px 5px;
  width: 250px;
  text-align: left;
}

#menu_left .menulist_left h2 {
  height: 20px;
  margin: 0;
  padding: 7px 0 5px 12px;
  font-size: 13px;
  color: #fffffc;
  background-image: url(img/sidebar.gif);
  background-repeat: no-repeat;
}

#menu_left .menulist_left a {
  color: #321901;
  display: block;
  border-right: solid 1px #bbbbbb;
  border-bottom: solid 1px #bbbbbb;
  border-left: solid 1px #bbbbbb;
  padding: 10px 4px 6px 20px;
  font-size: 13px;
  line-height: 160%;
  text-decoration: none;
  background-image: url(img/side_menu_bg.gif);
  background-repeat: no-repeat;
}

#menu_left .menulist_left a:hover {
  color: #005ebb;
  text-decoration: underline;
  background-image: url(img/side_menu_bg_hover.gif);
  background-repeat: no-repeat;
}

#menu_left .menu_free_left {
  margin: 0 0 14px 5px;
  padding: 0;
  width: 250px;
  text-align: left;
  background-image: url(img/menu_back.gif);
}

#menu_left .menu_free_left h2 {
  height: 20px;
  margin: 0;
  padding: 7px 0 5px 12px;
  font-size: 13px;
  color: #fffffc;
  background-image: url(img/sidebar.gif);
  background-repeat: no-repeat;
}

#menu_left .menu_free_left a {
  color: #321901;
  width: 240px;
  padding: 6px 0 5px 0;
  font-size: 13px;
  line-height: 180%;
}

#menu_left .menu_free_left a:hover {
  color: #005ebb;
  line-height: 180%;
}

#menu_left .menu_free_left p {
  margin: 0;
  padding: 8px 8px 14px 8px;
  border-right: solid 1px #bbbbbb;
  border-bottom: solid 1px #bbbbbb;
  border-left: solid 1px #bbbbbb;
  font-size: 13px;
  background-color: #ffffff;
  background-image: url(img/menu_back.gif);
  line-height: 180%;
}

/*---------- ?E?T?C?h???j???[ ----------*/

#menu_right {
  float: right;
  margin: 0 0 15px 0;
  padding: 0;
  width: 205px;
  text-align: left;
  letter-spacing: 1px;
}

#menu_right h2 {
  height: 20px;
  margin: 0;
  padding: 7px 0 5px 18px;
  font-size: 13px;
  color: #fffffc;
  background-image: url(img/sidebar_right.gif);
  background-repeat: no-repeat;
}

#menu_right .menulist_right {
  margin: 0 0 15px 0;
  padding: 5px 2px 0px 5px;
  width: 200px;
  text-align: left;
}

#menu_right .menulist_right h2 {
  height: 20px;
  margin: 0;
  padding: 7px 0 5px 18px;
  font-size: 13px;
  color: #fffffc;
  background-image: url(img/sidebar_right.gif);
  background-repeat: no-repeat;
}

#menu_right .menulist_right a {
  color: #321901;
  display: block;
  border-right: solid 1px #bbbbbb;
  border-bottom: solid 1px #bbbbbb;
  border-left: solid 1px #bbbbbb;
  width: 174px;
  padding: 10px 4px 4px 20px;
  font-size: 13px;
  line-height: 170%;
  text-decoration: none;
  background-image: url(img/side_menu_bg.gif);
  background-repeat: no-repeat;
}

#menu_right .menulist_right a:hover {
  color: #005ebb;
  text-decoration: underline;
  background-image: url(img/side_menu_bg_hover.gif);
  background-repeat: no-repeat;
}

#menu_right .menu_free_right {
  margin: 0 0 14px 5px;
  padding: 0;
  width: 200px;
  text-align: left;
  background-image: url(img/menu_back.gif);
}

#menu_right .menu_free_right h2 {
  height: 20px;
  margin: 0;
  padding: 7px 0 5px 18px;
  font-size: 13px;
  color: #fffffc;
  background-image: url(img/sidebar_right_gray.gif);
  background-repeat: no-repeat;
}

#menu_right .menu_free_right a {
  color: #321901;
  width: 188px;
  padding: 6px 0 5px 0;
  font-size: 13px;
  line-height: 180%;
}

#menu_right .menu_free_right a:hover {
  color: #005ebb;
  line-height: 180%;
}

#menu_right .menu_free_right p {
  margin: 0;
  padding: 8px 8px 14px 8px;
  border-right: solid 1px #bbbbbb;
  border-bottom: solid 1px #bbbbbb;
  border-left: solid 1px #bbbbbb;
  font-size: 13px;
  background-color: #ffffff;
  background-image: url(img/menu_back.gif);
  line-height: 180%;
}

/*---------- ?t?b?^?[ ----------*/

#footer {
  clear: both;
  width: 100%;
  margin: 0;
  padding: 20px 0 20px 0;
  text-align: center;
  font-size: 12px;
  color: #666666;
  border-top: solid 2px;
  border-top-color: #cccccc;
  background-image: url(img/footer_back.gif);
}

#footer a {
  color: #666666;
  font-size: 12px;
}

#footer a:hover {
  color: #333333;
}
