
/* ========================================== レイアウト ========================================== */

/* サイト全体 */
#box_site {
  margin: 0 auto;
  width: 1200px;
  border: 1px solid #999999;
  word-break: break-all;
}

/* ヘッダー */
#box_header {
  width: 1200px;
  padding: 0px 0px 0px 0px;
}

/* サイド */
#box_side {
  float: left;
  width: 251px;
  margin: 50px 0px 50px 0px;
}

/* コンテンツ */
#box_content {
  float: right;
  width: 820px;
  text-align: left;
  margin: 50px 64px 60px 65px;
}

/* フッター */
#box_footer {
  clear: both;
}


/* =========================================== ヘッダー =========================================== */

/* 見出し */
h1 {
  font-size: 12px;
  font-weight: normal;
  text-align: right;
  padding: 0px 80px 0px 0px;
  margin: 0px;
}

/* ロゴ */
#header_logo {
  float: left;
  width: 400px;
  margin: 7px 0px 27px 90px;
}

/* メール */
#header_mail {
  float: right;
  width: 300px;
  margin: 10px 80px 27px 0px;
}

/* ヘッダーメニュー */
#header_menu_pc {
  clear: both;
  border-top: 1px solid #C8C8C8;
  border-bottom: 1px solid #C8C8C8;
  text-align: center;
  padding: 0px 0px 0px 0px;
}
#header_menu_sp {
  display: none;
}


/* ============================================ サイド ============================================ */

/* サイドメニュー */
#side_menu {
  margin: 0px 0px 50px 0px;
}


/* ========================================== コンテンツ ========================================== */

/* パンクズリスト */
#breadlist {
  font-size: 16px;
  margin: -32px 0px 7px 0px;
}
#breadlist a:link {
  text-decoration: none;
  color: #000000
}
#breadlist a:visited {
  text-decoration: none;
  color: #000000;
}
#breadlist a:active {
  text-decoration: none;
  color: #000000;
}
#breadlist a:hover {
  text-decoration: underline;
  color: #0000FF;
}

/* 見出し */
h2 {
  background-image: url(../img/h2.png);
  background-repeat: no-repeat;
  width: 820px;
  height: 65px;
  color: #0A41A0;
  font-size: 32px;
  text-align: center;
  padding: 12px 0px 0px 0px;
  margin: 0px 0px 20px 0px;
}
h3 {
  background-image: url(../img/h3.png);
  background-repeat: no-repeat;
  width: 820px;
  height: 46px;
  color: #0A41A0;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  padding: 8px 0px 0px 0px;
  margin: 40px 0px 10px 0px;
}
h4 {
  background-image: url(../img/h4.png);
  background-repeat: no-repeat;
  width: 770px;
  height: 45px;
  color: #274B66;
  font-size: 22px;
  font-weight: bold;
  text-align: left;
  padding: 3px 0px 0px 50px;
  margin: 40px 0px 10px 0px;
}

/* 赤色 */
.red {
  color: #FF0000;
  font-weight: bold;
}

/* float解除 */
.float_clear {
  clear: both;
}

/* 必須 */
.must {
  font-size: 13px;
  font-weight: bold;
  color: #FFFFFF;
  background-color: #FF0000;
  padding: 0px 3px 0px 3px;
  margin: 0px 0px 0px 8px;
}


/* =========================================== フッター =========================================== */

/* フッターメニュー */
#footer_menu {
  font-size: 18px;
  text-align: center;
  margin: 15px 0px 15px 0px;
}
#footer_menu a:link {
  text-decoration: none;
  color: #000000;
}
#footer_menu a:visited {
  text-decoration: none;
  color: #000000;
}
#footer_menu a:active {
  text-decoration: none;
  color: #000000;
}
#footer_menu a:hover {
  text-decoration: underline;
  color: #0000FF;
}

/* コピーライト */
#footer_copyright {
  clear: both;
  font-size: 14px;
  background-color: #E1EEF2;
  color: #000000;
  text-align: center;
}
#footer_copyright a:link {
  text-decoration: none;
  color: #000000;
}
#footer_copyright a:visited {
  text-decoration: none;
  color: #000000;
}
#footer_copyright a:active {
  text-decoration: none;
  color: #000000;
}
#footer_copyright a:hover {
  text-decoration: underline;
  color: #0000FF;
}


/* ============================================= 共通 ============================================= */

/* NotoSansJP Regular400 */
@font-face {
  font-family: 'NotoSansJP';
  src: url(../fonts/NotoSansJP-Regular.woff) format("woff");
  font-weight: normal;
  font-display: swap;
}

/* NotoSansJP Bold700 */
@font-face {
  font-family: 'NotoSansJP';
  src: url(../fonts/NotoSansJP-Bold.woff) format("woff");
  font-weight: bold;
  font-display: swap;
}

/* ボディ */
body {
  font-size: 18px;
  font-family: 'NotoSansJP', 'Hiragino Sans', "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Meiryo, sans-serif;
  margin: 0px;
}

/* テーブル（スマホ最適化） */
table.tbl_sp {
  font-size: 18px;
  border: 0px;
  border-collapse:collapse;
  border: 1px solid;
  margin: 20px 0px 0px 0px;
}
table.tbl_sp tr td {
  border: 1px solid #999999;
  background-color: #FFFFFF;
  padding: 5px 7px 5px 7px;
  word-break: break-all;
}
table.tbl_sp tr.head {
  background-color: #E1EEF2;
  text-align: center;
}
table.tbl_sp td.head {
  background-color: #E1EEF2;
}
table.tbl_sp colgroup.col1 {
  width: 220px;
}
table.tbl_sp colgroup.col2 {
  width: 600px;
}

/* テーブル（テーブル表示） */
table.tbl_pc {
  font-size: 18px;
  border: 0px;
  border-collapse:collapse;
  border: 1px solid;
  margin: 20px 0px 0px 0px;
}
table.tbl_pc tr td {
  border: 1px solid #999999;
  background-color: #FFFFFF;
  padding: 5px 7px 5px 7px;
  word-break: break-all;
}
table.tbl_pc tr.head {
  background-color: #E1EEF2;
  text-align: center;
}
table.tbl_pc td.head {
  background-color: #E1EEF2;
}

/* リスト */
ul.list {
  list-style-type: disc;
  border: 1px solid #CCCCCC;
  background-color: #E1EEF2;
  padding: 15px 20px 15px 50px;
  margin: 5px 0px 0px 0px;
}
ul.list li {
  text-align: left;
  padding: 5px 0px 5px 0px;
}
ul.list2 {
  list-style-type: decimal;
  border: 1px solid #CCCCCC;
  background-color: #E1EEF2;
  padding: 15px 20px 15px 50px;
  margin: 5px 0px 0px 0px;
}
ul.list2 li {
  text-align: left;
  padding: 5px 0px 5px 0px;
}

p {
  text-align: left;
}

strong {
  font-weight: inherit;
}

/* フォーカス時に背景色変更 */
input:focus, textarea:focus, select:focus {
  background-color: #FFDDC8;
}

/* リンクの下線を消す */
a:link {
  text-decoration: none;
}
a:visited {
  text-decoration: none;
}
a:active {
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
  color:red;
}

/* 画像リンクの枠線を消す */
a img {
  border-style:none;
}

/* 画像横テキストの縦位置ずれ防止 */
img {
  vertical-align: middle;
}

/* マウスオーバーで画像透過 */
a img.linkimg {
  background:none;
}
a:hover img.linkimg {
  opacity:0.5;
  filter:alpha(opacity=50);
  -ms-filter: "alpha( opacity=50 )";
  background:none;
}

/* 親divの高さを子divの高さに合わせる */
.clearfix:after {
  content: "";
  clear: both;
  display: block;
}


/* ======================================== スマホ版非表示 ======================================== */

.sp {
  display: none;
}


