@charset "UTF-8";

:root {
  --main-color: #333333;
  --main-border: #333333;
  --main-alink: #00008b;
  --main-ahover: #0000e6;
  --main-bg: #ffffff;
  --main-h2: #1262b3;
  --main-h3: #161666;
  --main-h4: #b35900;
  --main-comment: #4d4d4d;
  --main-foot: #ffffff;
  --link-butt: #000000;
  --link-butt-bg: #decbb1;
  --send_butt: #ffffff;
  --send_butt-bg: #000000;
  --item-butt: #ffffff;
  --item-butt-bg: #805a26;
  --back-butt: #ffffff;
  --back-butt-bg: #999999;
  --c-blk: #000000;
  --c-whi: #ffffff;
  --c-red: #ff0000;
  --c-blu: #000099;
  --c-gre: #006600;
  --c-ora: #ff6600;
  --c-bro: #663300;
  --c-lcy: #33cccc;
  --c-yel: #ffff00;
  --b-red: #ff0033;
  --b-bro: #663300;
  --b-bro-bg: #ffff66;
  --b-gre: #1a9641;
  --b-gre-bg: #ccff66;
  --b-blu-bg: #99ccff;
  }

html, body, h1, h2, h3, h4, h5, h6, div, p, span, img, a, dl, dt, dd, ol, ul, li, br, 
table, tr, th, td, tbody, tfoot, thead, fieldset, form, label, legend, caption, 
object, iframe, blockquote, pre, abbr, address, cite, code, del, dfn, ins, kbd, q, samp, 
small, strong, sub, sup, var, b, i, 
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video, 
input, button, textarea, select 
{ 
  font-family: "新丸ゴ R",Shin Maru Go Regular, "新ゴ R",Shin Go Regular, "新ゴ B",Shin Go Bold, Hiragino Sans, Verdana, Helvetica, sans-serif, Arial, "メイリオ",Meiryo, "ヒラギノ角ゴPro W3","Hiragino Kaku Gothic Pro";
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  outline: 0;
  color: var(--main-color);
  line-height: 1.8;
  font-weight: normal;
  font-size: 100%;
  font-style: normal;
  vertical-align: baseline;
  letter-spacing: 0;
  background-color: transparent;
  box-sizing: border-box;
  word-wrap: break-word;
  overflow-wrap: break-word;
  }

article, header, footer, aside, figure, figcaption, nav, section { 
  display: block;
  }

body {
  height: 100vh;
  background-color: var(--main-bg);
  font-family: "Shin Go Regular";
  }

a {
  color: var(--main-alink);
  text-decoration: underline;
  }

a:hover {
  color: var(--main-ahover);
  text-decoration: none;
  cursor: pointer;
  }

a:focus {
  opacity: .8;
  filter: alpha(opacity=80);
  }

a:hover img {
  opacity: .8;
  filter: alpha(opacity=80);
  }

ol, dl, dt, dd, ul, li {
  list-style: none;
  list-style-type: none;
  }

h1, h2, h3, h4, h5, h6 {
  font-size: 1em;
  font-family: "Shin Go Regular";
  }

iframe {
  width: 100%;
  }

img {
  border: none;
  max-width: 100%; 
  height: auto;
  vertical-align: middle;
  }

.clearfix::after {
  content: "";
  display: block;
  clear: both;
  }


/* ========================================== */
/* ========================================== */

#wrap{
  margin: 0;
  padding: 0;
  clear: both;
  }


/* ========================================== */
/* ========================================== */

header {
  top: 0px;
  display: flex;
  flex-direction: row;
  align-items: center;
  background-color: #ffffff;
  border-bottom: 1px solid var(--main-color);
  max-width: 100%;
  min-height: 80px;
  padding: 4px 0;
  padding-right: 10px;
  z-index: 1000;
  }

header .header_logo {
  order: 0;
  width: 300px;
  min-width: 300px;
  height: auto;
  padding-left: 10px;
  }

header a {
  color: var(--main-color);
  text-decoration: none;
  }

header a:hover {
  opacity: 1;
  filter: alpha(opacity=100);
  color: var(--main-color);
  text-decoration: none;
  }

header a:hover img {
  opacity: 1;
  filter: alpha(opacity=100);
  }

/* ------------------------------------------ */

@media (min-width: 1024px) {

header {
  min-height: 100px;
  }

header .header_logo {
  order: 0;
  width: 400px;
  min-width: 400px;
  height: auto;
  padding-left: 40px;
  }

}


/* ========================================== */
/* ========================================== */

.container {
  width: 100%;
  margin: 0;
  padding: 0;
  clear: both;
  }

.contents {
  max-width: 100%;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  background-color: var(--main-bg);
  }

/* ------------------------------------------ */

@media (min-width: 1024px) {

.contents {
  margin: 0 auto;
  width: 80%;
  }

}


/* ========================================== */
/* ========================================== */

.main {
  margin: 0;
  padding: 0;
  }

.main h1 {
  margin-top: 20px;
  margin-bottom: 20px;
  margin-left: 20px;
  font-size: 1.4em;
  }

.main h2 {
  margin-top: 20px;
  margin-bottom: 10px;
  margin-left: 20px;
  color: var(--main-h2);
  font-size: 1.0em;
  }

.main h3 {
  margin-top: 100px;
  margin-bottom: 10px;
  margin-left: 20px;
  color: var(--main-h3);
  font-size: 1.4em;
  }

.main h4 {
  margin-top: 20px;
  margin-bottom: 10px;
  margin-left: 20px;
  color: var(--main-h4);
  font-size: 1.2em;
  }

.main p {
  margin: 0;
  padding: 0;
  margin: 10px 20px;
  }

/* ------------------------------------------ */

@media (min-width: 1024px) {

.main h1 {
  margin-left: 0px;
  }

.main h2 {
  margin-left: 0px;
  }

.main h3 {
  margin-left: 0px;
  }

.main h4 {
  margin-left: 0px;
  }

.main p {
  margin: 0;
  padding: 0;
  margin-bottom: 20px;
  }

}


/* ========================================== */
/* ========================================== */

footer {
  display: flex;
  width: 100%;
  padding: 20px 6px;
  justify-content: center;
  align-items: center;
  text-align: center;
  border-top: 1px solid var(--main-color);
  background-color: var(--main-bg);
  color: var(--main-color);
  font-size: .8em;
  }


/* ========================================== */
/* ========================================== */

.link_butt a {
  display: block;
  margin-bottom: 30px;
  padding: 10px 20px;
  border-radius: 4px;
  background-color: var(--link-butt-bg);
  color: var(--link-butt);
  font-size: 1.0em;
  text-decoration: none;
  }

.link_butt a:hover {
  opacity: .8;
  filter: alpha(opacity=80);
  }

.link_butt_gray a {
  display: block;
  margin-bottom: 30px;
  padding: 10px 20px;
  border-radius: 4px;
  background-color: var(--link-butt-gray-bg);
  color: var(--link-butt);
  font-size: 1.0em;
  text-decoration: none;
  }

.send_butt a {
  display: block;
  margin-bottom: 30px;
  padding: 10px 20px;
  background-color: var(--send_butt-bg);
  color: var(--send_butt);
  font-size: 1.0em;
  text-decoration: none;
  }

.send_butt a:hover {
  opacity: .8;
  filter: alpha(opacity=80);
  }

.btn_block {
  display: flex;
  flex-wrap: wrap;
  }

.btn_item a {
  display: inline-block;
  margin: 20px 14px;
  padding: 20px 20px;
  border-radius: 8px;
  background-color: var(--item-butt-bg);
  color: var(--item-butt);
  font-size: 1.1em;
  text-decoration: none;
  /* ===================================== 
  display: inline-block;
  margin: 10px 10px;
  padding: 10px 10px;
  background-color: var(--item-butt-bg);
  color: var(--item-butt);
  font-size: 1.0em;
  text-decoration: none;
  ===================================== */
  }

.btn_item a:hover {
  opacity: .8;
  filter: alpha(opacity=80);
  }

.imgblock_row {
  max-width: 100%;
  display: flex;
  flex-direction: row;
  align-items: stretch;
  }

.imgblock_btn {
  flex-grow: 1;
  }

.imgblock_btn img {
  margin-bottom: 0;
  }

.back_butt_block {
  display: flex;
  justify-content: center;
  align-items: center;
  }

.back_butt a {
  display: inline-block;
  margin: 80px auto;
  padding: 20px 30px;
  background-color: var(--back-butt-bg);
  color: var(--back-butt);
  font-size: 1.1em;
  text-decoration: none;
  }

.back_butt a:hover {
  opacity: .8;
  filter: alpha(opacity=80);
  }

/* ------------------------------------------ */

@media (min-width: 1024px) {

.link_butt a {
  margin: 0 60px;
  margin-bottom: 40px;
  padding: 20px 20px;
  }

.link_butt_gray a {
  margin: 0 60px;
  margin-bottom: 40px;
  padding: 20px 20px;
  }

.send_butt a {
  margin: 0 60px;
  margin-bottom: 40px;
  padding: 20px 20px;
  }

.btn_item a {
  margin: 20px 0;
  margin-right: 28px;
  }

}


/* ========================================== */
/* ========================================== */

.marker {
  margin-bottom: 20px;
  line-height: 1.8;
  background: linear-gradient( transparent 0%, #ffff66 0% );
  }

.bold {
  color: var(--c-blk);
  font-weight: bold;
  }

.boldred {
  color: var(--b-red);
  font-weight: bold;
  }

.boldbro {
  background-color: var(--b-bro-bg);
  color: var(--c-bro);
  font-weight: bold;
  }

.boldgre {
  background-color: var(--b-gre-bg);
  color: var(--b-gre);
  font-weight: bold;
  }

.boldblu {
  background-color: var(--b-blu-bg);
  color: var(--c-blu);
  font-weight: bold;
  }

.uline_blk {
  border-bottom: double;
  border-color: var(--main-color);
  border-width: 3px;
  color: var(--main-color);
  }

.uline_red {
  border-bottom: double;
  border-color: var(--c-red);
  border-width: 3px;
  color: var(--c-red);
  }

.uline_ora {
  border-bottom: double;
  border-color: var(--c-ora);
  border-width: 3px;
  color: var(--c-ora);
  }

.uline_blu {
  border-bottom: double;
  border-color: var(--c-blu);
  border-width: 3px;
  color: var(--c-blu);
  }

.uline_gre {
  border-bottom: double;
  border-color: var(--c-gre);
  border-width: 3px;
  color: var(--c-gre);
  }

.uline_bro {
  border-bottom: double;
  border-color: var(--c-bro);
  border-width: 3px;
  color: var(--c-bro);
  }

.uline_lcy {
  border-bottom: double;
  border-color: var(--c-lcy);
  border-width: 3px;
  }

.colblk { color: var(--c-blk); }
.colred { color: var(--c-red); }
.colblu { color: var(--c-blu); }
.colgre { color: var(--c-gre); }
.colora { color: var(--c-ora); }
.colbro { color: var(--c-bro); }
.collcy { color: var(--c-lcy); }

.displaynone { display: none; }


/* ========================================== */
/* ========================================== */

#pagetop {
  position: fixed;
  right: 20px;
  bottom: 30px;
  opacity: 0;
  filter:alpha(opacity=0);
  z-index: 9999;
  }

#pagetop a {
  display: block;
  padding: 0;
  opacity: .9;
  filter: alpha(opacity=90);
  }

#pagetop a:hover {
  cursor: pointer;
  opacity: .5;
  filter: alpha(opacity=50);
  }






