@charset "UTF-8";

* {
  padding: 0;
  margin: 0;
}

.font-click {
  text-decoration: underline;
  font-size: 12px;
  color: #ff8c00;
}

.font-persona {
  color: #deb887;
}

p a {
  text-decoration: none;
  color: #4169e1;
}

p a:hover {
  text-decoration: underline;
  color: #1e90ff;
}


html,
body {
  font-family: "メイリオ", "Hiragino Kaku Gothic Pro", sans-serif;
  background-color: #fff;
}

/* ### 枠組み ### */

#container {
  margin: auto;
  background-color: #ffffff;
}

#main {
  overflow: hidden;
}

#content {
  padding: 4px;
}

#content-main {
  padding: 5px;
  overflow: hidden;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

#content-side {
  padding: 5px;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

#content-side p {
  font-size: 14px;
}


/* ##　画面小　## */
@media (max-width: 499px) {
  #container {
    width: 100%;
  }

  #main {
    width: 100%;
  }

  #content-main {
    width: 100%;
  }

  #content-side {
    margin-top: 10px;
    width: 100%;
  }
}

/* 画面小ここまで　*/

/* ###　画面大　############################################# */
@media (min-width: 500px) {
  #container {
    width: 1100px;
  }

  #main {
    width: 1100px;
  }

  #main:after {
    content: "";
    display: block;
    clear: both;
  }

  #content-main {
    float: left;
    width: 770px;
  }

  #content-side {
    float: left;
    width: 320px;
  }
}

/* 画面大ここまで */

/* 枠組み終わり */

#header-site {}

.header-logo {
  text-align: center;
  clear: both;
}

/* ###　画面小　############################################# */
@media (max-width: 499px) {}

/* 画面小ここまで　*/

/* ###　画面大　############################################# */
@media (min-width: 1100px) {}

/* 画面大ここまで */

.notice {
  margin-bottom: 5px;
  margin-left: auto;
  margin-right: auto;
}

/* ###　索引　#################### */

.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

#gnav {
  margin-bottom: 5px;
  overflow: hidden;
}

.gnav-index {
  font-size: 20px;
}

.gnav-index h2 {
  font-size: 18px;
  clear: both;
}

.gnav-index h2 a {
  text-decoration: none;
  color: #000;
}

.gnav-index h2 a:hover {
  text-decoration: underline;
  color: #aaa;
}

.gnav-index ul {
  margin: 0;
  padding: 0;
  clear: both;
}

.gnav-index li {
  list-style: none;
  float: left;
}

.gnav-index li a {
  display: block;
  width: 60px;
  line-height: 32px;
  border-top: solid 1px #fff;
  border-bottom: solid 1px #fff;
  border-right: solid 1px #fff;
  color: #fff;
  text-align: center;
  text-decoration: none;
  background-color: #8b4513;
}

.gnav-index li a:hover {
  background-color: #d2691e;
}

.gnav-content {
  font-size: 20px;
  clear: both;
}

.gnav-content a {
  display: block;
  width: 300px;
  line-height: 32px;
  border-top: solid 1px #fff;
  border-bottom: solid 1px #fff;
  border-right: solid 1px #fff;
  color: #fff;
  text-align: center;
  text-decoration: none;
  background-color: #8b4513;
}

.gnav-content a:hover {
  background-color: #d2691e;
}

#menubtn {
  padding: 6px 12px;
  margin: 5px;
  border: solid 1px #aaa;
  border-radius: 5px;
  color: #000;
  background-color: #fff;
  cursor: pointer;
}

/* ###　画面小　############################################# */
@media (max-width: 499px) {}

/* 画面小ここまで　*/

/* ###　画面大　############################################# */
@media (min-width: 500px) {
  #menubtn {
    display: none;
  }
}

/* 画面大ここまで */

/* ###　サイド　###################################*/

/* ###　フッター　###################################*/

#footer {
  font-size: 12px;
  margin: 0px;
  position: relative;
  z-index: 1;
  border-top: solid 1px #b18904;
  background-color: #555;
  padding: 10px;
  text-align: left;
  clear: both;
  color: #eee;
  overflow: hidden;
}

#footer a {
  color: #eee;
  text-decoration: none;
}

#footer a:hover {
  color: #fff;
  text-decoration: underline;
}

.footer-copyright {
  display: block;
  clear: both;
}

.footer-link {
  display: block;
  margin-bottom: 10px;
}

/* ### 広告 ##################################### */

.ad {
  position: relative;
  z-index: 1;
  padding: 2px;
  text-align: center;
}

.ad-bottom {
  position: relative;
  z-index: 1;
  padding: 2px;
  text-align: center;
}

.ad-mo {
  position: relative;
  z-index: 1;
  padding: 2px;
  text-align: center;
}

.ad-space-bottom {
  position: relative;
  z-index: 1;
  width: 100%;
  padding: 5px;
  padding-left: 35px;
  overflow: hidden;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.ad-1 {
  float: left;
  width: 340px;
  position: relative;
  z-index: 1;
  padding: 2px;
  text-align: center;
}

.ad-2 {
  float: left;
  width: 340px;
  position: relative;
  z-index: 1;
  padding: 2px;
  text-align: center;
}

.side-ad {
  position: relative;
  z-index: 1;
  padding: 2px;
  text-align: center;
}

.side-ad-mo {
  position: relative;
  z-index: 1;
  padding: 2px;
  text-align: center;
}

.ad-in-article {
  margin: 10px;
}

/* ##　画面小　## */
@media (max-width: 499px) {
  .ad {
    display: none;
  }

  .ad-bottom {
    display: none;
  }

  .ad-mo {
    display: block;
  }

  .ad-space-bottom {
    display: none;
  }

  .ad-kanren {
    display: block;
  }

  .side-ad {
    display: none;
  }

  .side-ad-mo {
    display: block;
  }
}

/* 画面小ここまで　*/

/* ##　画面中　## */
@media (min-width: 500px) and (max-width: 1099px) {
  .ad {
    display: block;
  }

  .ad-bottom {
    display: block;
  }

  .ad-mo {
    display: none;
  }

  .ad-space-bottom {
    display: block;
  }

  .ad-kanren {
    display: block;
  }

  .side-ad {
    display: block;
  }

  .side-ad-mo {
    display: none;
  }
}

/* 画面中ここまで */

/* ##　画面大　## */
@media (min-width: 1100px) {
  .ad {
    display: block;
  }

  .ad-bottom {
    display: block;
  }

  .ad-mo {
    display: none;
  }

  .ad-space-bottom {
    display: block;
  }

  .side-ad {
    display: block;
  }

  .side-ad-mo {
    display: none;
  }
}

/* 画面大ここまで */

/* 広告ここまで */

/* ###　ページトップへ戻るボタン　###################################*/

.pagetop {
  display: none;
  position: fixed;
  z-index: 0;
}

.pagetop a {
  display: block;
  background-color: #191970;
  color: #fff;
  font-size: 14px;
  text-decoration: none;
  padding: 5px 10px;
}

.pagetop a:hover {
  display: block;
  background-color: #00008b;
  color: #fff;
}

@media (max-width: 499px) {
  .pagetop {
    bottom: 30px;
    right: 15px;
  }
}

@media (min-width: 500px) and (max-width: 1099px) {
  .pagetop {
    bottom: 30px;
    right: 10px;
  }
}

@media (min-width: 1100px) {
  .pagetop {
    bottom: 30px;
    right: 500px;
  }
}

/* トップへ戻るボタン */