/* ------------------------------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------------------------- */
/* line 16, style.scss */
html {
  font-size: 62.5%;
  height: 100%;
}

/* line 21, style.scss */
body {
  font-size: 1.6rem;
  font-family: 'Noto Sans JP', 'Lucida Grande', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
  color: #404040;
  background-color: #ffffff;
  line-height: 1.5;
  word-wrap: break-word;
  overflow-x: hidden;
  overflow-y: visible;
  -webkit-text-size-adjust: 100%;
  height: 100%;
  font-feature-settings: "palt";
}

/* line 35, style.scss */
#wrapper {
  min-height: 100%;
  position: relative;
}

/* line 40, style.scss */
#subhead {
  height: 150px;
}

/* line 44, style.scss */
header {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
/* line 50, style.scss */
header h1 {
  width: 37.5%;
  height: 100px;
  position: relative;
}
/* line 54, style.scss */
header h1 img {
  width: 100%;
  position: absolute;
  margin: auto;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
/* line 65, style.scss */
header#warning h1 {
  width: 640px;
  height: 480px;
  margin: 0 auto;
  position: static;
  text-align: center;
}
/* line 71, style.scss */
header#warning h1 img {
  position: static;
  margin: 0;
}
/* line 77, style.scss */
header nav {
  width: 50%;
  min-width: 600px;
  height: 92px;
  padding-bottom: 8px;
  display: flex;
  align-items: flex-end;
}
/* line 84, style.scss */
header nav ul {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
/* line 88, style.scss */
header nav ul li {
  width: 20%;
  text-align: center;
}
/* line 89, style.scss */
header nav ul li a {
  color: #404040;
  display: block;
  width: 100%;
  height: 100%;
}
/* line 95, style.scss */
header nav ul li a:hover {
  color: #498ee0;
  text-decoration: none;
}
/* line 101, style.scss */
header nav ul li i {
  font-size: 30px;
  padding-bottom: 4px;
}
/* line 105, style.scss */
header nav ul li .menumain {
  font-size: 14px;
  font-weight: 900;
}
/* line 109, style.scss */
header nav ul li .menusub {
  font-size: 10px;
}

/* line 117, style.scss */
.swiper {
  padding: 30px 0 30px 0;
  background-color: #e0e0e0;
}
/* line 120, style.scss */
.swiper .swiper-slide {
  text-align: center;
}
/* line 122, style.scss */
.swiper .swiper-slide img {
  max-width: 850px;
  width: 100%;
}

/* line 129, style.scss */
main {
  width: 100%;
  max-width: 1280px;
  position: relative;
  margin: 0 auto;
  padding: 32px 40px 80px 40px;
  display: flex;
  flex-wrap: wrap;
  box-sizing: border-box;
}
/* line 138, style.scss */
main article {
  width: 100%;
}
/* line 140, style.scss */
main article h1 {
  margin-bottom: 32px;
  padding: 10px;
  font-size: 4.8rem;
  text-align: center;
  font-weight: 900;
}
/* line 147, style.scss */
main article h1::after {
  content: attr(data-en);
  display: block;
  color: #404040;
  font-weight: 700;
  font-size: 1.8rem;
}
/* line 155, style.scss */
main #top {
  width: 70%;
  box-sizing: border-box;
  padding-right: 40px;
}
/* line 160, style.scss */
main #side {
  width: 30%;
}

/* line 165, style.scss */
#search {
  width: 100%;
  margin: 20px 0 20px 0px;
}
/* line 168, style.scss */
#search form {
  margin: 0 auto;
  position: relative;
  display: block;
  width: 192px;
  height: 32px;
  background-image: url("../images/input.png");
}
/* line 176, style.scss */
#search input[type="text"] {
  position: absolute;
  left: 14px;
  top: 8px;
  width: 148px;
  height: 14px;
  border: 0;
  outline: none;
}
/* line 185, style.scss */
#search input[type="image"] {
  position: absolute;
  left: 156px;
  top: 0px;
  width: 32px;
  height: 32px;
}

/* line 194, style.scss */
.banner {
  margin: 20px 0 20px 0px;
  text-align: center;
}
/* line 197, style.scss */
.banner img {
  padding: 4px;
  -webkit-box-shadow: 0 0 6px rgba(0, 0, 0, 0.5);
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.5);
}

/* line 204, style.scss */
#tweet {
  height: 440px;
}

/* line 208, style.scss */
.agecheck {
  text-align: center;
}

/* line 212, style.scss */
.enter {
  display: block;
  font-size: 2.4rem;
  font-weight: 900;
  margin: 40px 100px;
  padding: 20px;
  border: 1px solid #404040;
}

/* line 221, style.scss */
h2 {
  color: #202e30;
  font-size: 3.2rem;
  height: 10.0rem;
  margin: 60px 0 0 -4.0rem;
  padding: 1.5rem 0 0 4.0rem;
  font-weight: 900;
  background-image: url("../images/h2.png");
  background-position: left middle;
  background-repeat: no-repeat;
  line-height: 3.0rem;
}

/* line 234, style.scss */
h2::before {
  content: attr(data-en);
  display: block;
  color: #e02020;
  font-weight: 700;
  font-size: 1.4rem;
}

/* line 242, style.scss */
section:first-of-type > h2 {
  margin-top: 0;
}

/* line 246, style.scss */
h3 {
  font-size: 2.0rem;
  font-weight: 700;
  color: #202e30;
  padding-bottom: 5px;
  margin: 30px 0 15px 0;
  position: relative;
}

/* line 255, style.scss */
h3:before {
  content: '';
  width: 50px;
  height: 3px;
  background-color: #404040;
  display: block;
  position: absolute;
  left: 0;
  bottom: -6px;
}

/* line 266, style.scss */
section:first-of-type > h3 {
  margin-top: 0;
}

/* line 270, style.scss */
.alist {
  margin: 0 36px 0 36px;
}
/* line 272, style.scss */
.alist dt {
  font-weight: 700;
  margin-bottom: 8px;
  padding: 4px;
  border-bottom: 1px solid #404040;
}
/* line 278, style.scss */
.alist ul {
  list-style: none;
}
/* line 281, style.scss */
.alist li {
  margin-top: 6px;
  margin-bottom: 6px;
  padding-left: 16px;
  background-image: url("../images/arrow.png");
  background-repeat: no-repeat;
  background-position: left top;
}

/* line 291, style.scss */
p, dd, table, blockquote {
  margin: 0 0 1.5rem 0;
}

/* line 295, style.scss */
a {
  color: #2020e0;
  text-decoration: none;
  font-weight: 700;
}

/* line 301, style.scss */
a:hover {
  color: #498ee0;
  text-decoration: underline;
  font-weight: 700;
}

/* line 307, style.scss */
ul.list {
  display: flex;
  flex-wrap: wrap;
}
/* line 310, style.scss */
ul.list li {
  display: flex;
  flex-direction: column;
  width: 100%;
  border-bottom: 1px dotted #c0c0c0;
  margin: 0 0 10px 0;
  padding: 0 0 5px 0;
}
/* line 317, style.scss */
ul.list li h4 {
  height: 20px;
  line-height: 20px;
  font-weight: 700;
  margin: 0 0 0 8px;
}
/* line 323, style.scss */
ul.list li h5 {
  font-weight: 700;
  margin: 0 0 8px 8px;
}
/* line 327, style.scss */
ul.list li p {
  padding-left: 8px;
  margin-bottom: 0;
  margin-left: 0;
  margin-right: 0;
}

/* line 336, style.scss */
.pastlink {
  text-align: right;
  margin: 0 28px 0 0;
}

/* line 341, style.scss */
#newsshare {
  float: right;
  display: -webkit-flex;
  display: flex;
  margin: 0 28px 0 0;
}

/* line 348, style.scss */
p.addr {
  font-size: 11px;
  color: #808080;
  margin-top: -10px;
}

/* line 354, style.scss */
strong {
  font-weight: 700;
  color: #e02020;
}

/* line 359, style.scss */
footer {
  background-color: #404040;
  height: 40px;
  margin-top: 32px;
  line-height: 40px;
  font-size: 12px;
  text-align: center;
  color: #ffffff;
  font-weight: 700;
  width: 100%;
  position: absolute;
  bottom: 0;
}
/* line 371, style.scss */
footer small {
  margin: 0;
}

/* line 376, style.scss */
form.buttongroup {
  display: -webkit-inline-flex;
  display: inline-flex;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid #808080;
}
/* line 382, style.scss */
form.buttongroup input[type="submit"], form.buttongroup input[type="button"] {
  width: 100px;
  background: #f0f0f0;
  border: 0;
  border-left: 1px solid #808080;
  padding: 6px 8px 6px 8px;
  outline: none;
}
/* line 389, style.scss */
form.buttongroup input[type="submit"]:first-child, form.buttongroup input[type="button"]:first-child {
  border-left: 0px;
}
/* line 392, style.scss */
form.buttongroup input[type="submit"]:active, form.buttongroup input[type="button"]:active {
  background: #d8d8d8;
}
/* line 395, style.scss */
form.buttongroup input[type="submit"]:hover, form.buttongroup input[type="button"]:hover {
  cursor: pointer;
}
/* line 398, style.scss */
form.buttongroup input[type="submit"].sel, form.buttongroup input[type="button"].sel {
  background: #404040;
  font-weight: 700;
  color: #f0f0f0;
}

/* line 407, style.scss */
form.inputform input[type="submit"], form.inputform input[type="button"], form.inputform input[type="reset"] {
  background: #f0f0f0;
  border: 1px solid #404040;
  margin: 4px;
  padding: 3px 8px 3px 8px;
  border-radius: 3px;
  outline: none;
}
/* line 414, style.scss */
form.inputform input[type="submit"]:active, form.inputform input[type="button"]:active, form.inputform input[type="reset"]:active {
  background: #d8d8d8;
}
/* line 417, style.scss */
form.inputform input[type="submit"].sel, form.inputform input[type="button"].sel, form.inputform input[type="reset"].sel {
  background: #f0f0f0;
}
/* line 420, style.scss */
form.inputform input[type="submit"].send-btn, form.inputform input[type="button"].send-btn, form.inputform input[type="reset"].send-btn {
  width: 100px;
}
/* line 423, style.scss */
form.inputform input[type="submit"].msg-btn, form.inputform input[type="button"].msg-btn, form.inputform input[type="reset"].msg-btn {
  margin-left: 0;
  width: auto;
}
/* line 428, style.scss */
form.inputform input[type="submit"] {
  margin: 4px;
  background: #404040;
  font-weight: 700;
  color: #f0f0f0;
}

/* line 437, style.scss */
form dl dt, dl.list dt {
  margin: 0 0 0 0;
  padding: 1px 0 0 0;
  float: left;
  width: 160px;
  font-weight: 700;
  clear: both;
  border: 0;
}
/* line 446, style.scss */
form dl dd, dl.list dd {
  margin: 0 0 8px 0;
  padding: 0 0 4px 0;
  padding-left: 160px;
}
/* line 450, style.scss */
form dl dd input[type="text"], form dl dd input[type="password"], dl.list dd input[type="text"], dl.list dd input[type="password"] {
  width: 200px;
}
/* line 453, style.scss */
form dl dd textarea, dl.list dd textarea {
  width: 400px;
}

/* line 460, style.scss */
article input[type="text"], article input[type="password"] {
  border: 1px solid #404040;
  padding: 2px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  outline: none;
}
/* line 465, style.scss */
article input[type="text"]:focus, article input[type="password"]:focus {
  -moz-box-shadow: 0 0 3px 1px #404040;
  -webkit-box-shadow: 0 0 3px 1px #404040;
  box-shadow: 0 0 3px 1px #404040;
}
/* line 470, style.scss */
article textarea {
  height: 100px;
  border: 1px solid #404040;
  padding: 2px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  outline: none;
}
/* line 476, style.scss */
article textarea:focus {
  -moz-box-shadow: 0 0 3px 1px #404040;
  -webkit-box-shadow: 0 0 3px 1px #404040;
  box-shadow: 0 0 3px 1px #404040;
}

/* line 482, style.scss */
#femail, #femail2 {
  max-width: 200px;
}

/* line 486, style.scss */
#faddr {
  max-width: 400px;
}

/* line 490, style.scss */
.edit {
  text-align: right;
}

/* line 493, style.scss */
span.pg-on, span.pg-off {
  margin: 2px;
  padding: 2px;
}

/* line 498, style.scss */
.resname {
  font-weight: 700;
  color: #008800;
}

/* line 503, style.scss */
.kanriname {
  color: #ff0000;
}

/* line 507, style.scss */
.resdate {
  font-weight: normal;
}

/* line 511, style.scss */
table {
  border-collapse: collapse;
  border-spacing: 0px;
}

/* line 516, style.scss */
th {
  font-weight: 700;
  text-align: center;
  padding: 4px;
  background-color: #404040;
  border: 1px solid #404040;
}

/* line 525, style.scss */
tr:nth-child(odd) {
  background-color: #bcebff;
}

/* line 530, style.scss */
td {
  padding: 4px;
  border: 1px solid #404040;
}

/* line 535, style.scss */
#isotope {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 40px;
}
/* line 541, style.scss */
#isotope a {
  color: #000000;
  font-weight: normal;
}

/* line 547, style.scss */
.element-item {
  width: 160px;
  height: 160px;
  margin: 12px;
  position: relative;
  -webkit-box-shadow: 0 0 6px rgba(0, 0, 0, 0.5);
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.5);
  padding: 4px;
  background-position: center center;
  background-repeat: no-repeat;
  background-color: #ffffff;
}
/* line 558, style.scss */
.element-item .exp {
  width: 152px;
  position: absolute;
  bottom: 0;
  padding: 4px;
  font-size: 12px;
  background-color: rgba(255, 255, 255, 0.75);
  display: none;
  z-index: 50;
  vertical-align: bottom;
}
/* line 568, style.scss */
.element-item .exp h6 {
  font-weight: 700;
}
/* line 571, style.scss */
.element-item .exp p {
  margin: 0;
}
