@charset "UTF-8";
@import "https://fonts.googleapis.com/css?family=Roboto:300,400,700";
/* --- normalize --- */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

pre {
  font-family: monospace, monospace;
  font-size: 1em;
}

a {
  background-color: transparent;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}

b, strong {
  font-weight: bolder;
}

code, kbd, samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

small {
  font-size: 80%;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
}

button, input, optgroup, select, textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

button, input {
  overflow: visible;
}

button, select {
  text-transform: none;
}

[type=button], [type=reset], [type=submit], button {
  -webkit-appearance: button;
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

[type=button]:-moz-focusring, [type=reset]:-moz-focusring, [type=submit]:-moz-focusring, button:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

legend {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type=checkbox], [type=radio] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details {
  display: block;
}

summary {
  display: list-item;
}

template {
  display: none;
}

[hidden] {
  display: none;
}

/* --- reset+ --- */
html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

*, *:before, *:after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

img {
  vertical-align: bottom;
}

ul, ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

dl, dt, dd {
  margin: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

.cf:before,
.cf:after {
  display: table;
  content: " ";
}

.cf:after {
  clear: both;
}

header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 60px;
  z-index: 992;
  color: #fff;
  background: rgba(0, 0, 0, 0);
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0);
          box-shadow: 0 0 10px rgba(0, 0, 0, 0);
}
header.is-animation {
  height: 60px;
}
header .inset {
  padding: 0;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
header .inset a {
  color: #fff;
}
header .logo {
  width: 160px;
  padding-left: 15px;
  margin-right: auto;
}
header .logo img {
  width: 100%;
}
header .hgn > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
header .hgn > ul > li {
  position: relative;
}
header .hgn > ul > li .category {
  white-space: nowrap;
  height: 60px;
  font-size: 1em;
  padding: 0 0.75em;
  cursor: default;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-top: 3px solid rgba(0, 0, 0, 0);
  border-bottom: 3px solid rgba(0, 0, 0, 0);
}
@media screen and (max-width: 1299px) {
  header .hgn > ul > li .category {
    font-size: 0.9125em;
    padding: 0 0.75em;
  }
}
@media screen and (max-width: 1199px) {
  header .hgn > ul > li .category {
    font-size: 0.875em;
    padding: 0 0.675em;
  }
}
header .hgn > ul > li .category:hover {
  background: rgba(255, 255, 255, 0);
  border-bottom: 3px solid rgba(0, 159, 232, 0);
}
header .hgn > ul > li:hover .pages {
  visibility: visible;
  opacity: 1;
}
header .hgn > ul > li .pages {
  visibility: hidden;
  opacity: 0;
  z-index: 11;
  display: block;
  position: absolute;
  top: 60px;
  left: 0;
  background: rgba(0, 0, 0, 0.85);
  border-radius: 5px;
  border: 1px solid rgba(255, 255, 255, 0.5);
  -webkit-transition: all 0.5 ease;
  transition: all 0.5 ease;
  -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0);
          box-shadow: 0 0 2px rgba(0, 0, 0, 0);
}
header .hgn > ul > li .pages a:hover {
  opacity: 0.5;
}
header .hgn > ul > li .pages > ul {
  padding: 0.75em 1em 0.75em;
}
@media screen and (max-width: 1199px) {
  header .hgn > ul > li .pages > ul {
    padding: 0.5em 1em;
  }
}
header .hgn > ul > li .pages > ul > li {
  display: block;
}
header .hgn > ul > li .pages > ul > li > a {
  display: block;
  font-size: 15px;
  padding: 12px 0;
  white-space: nowrap;
}
@media screen and (max-width: 1199px) {
  header .hgn > ul > li .pages > ul > li > a {
    font-size: 14px;
    padding: 10px 0;
  }
}
header .hgn > ul > li .pages > ul > li .sub {
  padding: 12px 0;
}
header .hgn > ul > li .pages > ul > li .sub > a {
  font-size: 15px;
  display: block;
  white-space: nowrap;
}
header .hgn > ul > li .pages > ul > li .sub ul {
  margin-top: 0.5em;
  margin-left: 0.125em;
  padding: 0 0.75em;
  border-left: 2px solid #009fe8;
}
header .hgn > ul > li .pages > ul > li .sub ul li a {
  font-size: 0.8125em;
  display: block;
  white-space: nowrap;
  padding: 0.6125em 0;
}
header .lang {
  margin-left: 1.5em;
  margin-right: 2em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
header .lang a {
  display: block;
  border: 1px solid white;
  padding: 3px 10px;
  font-size: 14px;
}
header .lang a:hover {
  background: rgba(255, 255, 255, 0.5);
}
header .lang a.this {
  background: white;
  color: #000;
}
header .header_color_button {
  margin-left: 1.5em;
  margin-right: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
header .header_color_button a {
  display: block;
  width: 100px;
}
header .header_color_button img {
  width: 100%;
}
header.is-animation {
  background: black;
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.75);
          box-shadow: 0 0 10px rgba(0, 0, 0, 0.75);
}
header.is-animation .hgn > ul > li .category:hover {
  background: rgba(255, 255, 255, 0.2);
  border-bottom: 3px solid #009fe8;
}
header.is-animation .hgn > ul > li .pages {
  border-radius: 0 0 5px 5px;
  border: 1px solid rgba(255, 255, 255, 0);
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.35);
          box-shadow: 0 0 10px rgba(0, 0, 0, 0.35);
}
header.is-animation .hgn > ul > li .pages::before {
  display: none;
}
@media screen and (min-width: 1025px) {
  header .rsp_nav {
    display: none;
  }
}
@media screen and (max-width: 1024px) {
  header .hgn,
  header .lang,
  header .header_color_button {
    display: none;
  }
  header .rsp_nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-left: 1em;
    width: 60px;
    background: rgba(255, 255, 255, 0);
  }
}
body.top_page_2025 header {
  margin-top: 20px;
}
@media screen and (max-width: 1024px) {
  body.top_page_2025 header {
    margin-top: 0;
  }
}
body.top_page_2025 header .logo a {
  display: none;
}
body.top_page_2025 header.is-animation {
  margin-top: 0;
}
body.top_page_2025 header.is-animation .logo a {
  display: block;
}

body.pagetitleless header {
  background: black;
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.75);
          box-shadow: 0 0 10px rgba(0, 0, 0, 0.75);
}

body.pagetitleless {
  padding-top: 60px;
}

.rsp_nav .openbtn {
  cursor: pointer;
  -webkit-transition: all 0.1s;
  transition: all 0.1s;
  width: 100%;
  height: 60px;
  background-repeat: no-repeat;
  background-image: url(../../2025/images/icon/bars-solid-white.svg);
}
.rsp_nav .openbtn.active {
  background-image: url(../../2025/images/icon/close-solid-white.svg);
}

.right_side_navi {
  position: fixed;
  z-index: 99;
  top: 0;
  right: 0;
  height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.right_side_navi ul.iconset {
  width: 60px;
  height: 420px;
  background: rgba(0, 0, 0, 0.85);
  -webkit-box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
          box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
}
@media screen and (max-width: 1024px) {
  .right_side_navi {
    display: none;
  }
}

footer {
  color: #fff;
  text-align: left;
}
footer a {
  color: #fff;
}
footer p.copyright {
  background: #000;
  font-size: 13px;
  line-height: 1.5;
  font-family: "Roboto", sans-serif;
  text-align: center;
  padding: 2.5em 0.5em;
}

.footer_navi_wrap {
  background-image: linear-gradient(135deg, #393939 0%, #111 100%);
  padding: 2.5em 100px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 1199px) {
  .footer_navi_wrap {
    padding: 2.5em 2em;
  }
}
@media screen and (max-width: 1024px) {
  .footer_navi_wrap {
    padding: 2.5em 2em;
  }
}
@media screen and (max-width: 559px) {
  .footer_navi_wrap {
    padding: 2.5em 1em;
  }
}
@media screen and (max-width: 1024px) {
  .footer_navi_wrap {
    display: block;
  }
}
.footer_navi_wrap .sp_block {
  width: 27.5%;
  max-width: 280px;
  margin-right: 2.5%;
}
@media screen and (max-width: 1024px) {
  .footer_navi_wrap .sp_block {
    width: 100%;
    margin: 0 auto 3em;
  }
}
.footer_navi_wrap .sp_block .home {
  margin-bottom: 2em;
}
.footer_navi_wrap .sp_block .home img {
  width: 100%;
}
.footer_navi_wrap .sp_block .sns_set {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 0 1.5em;
  border-radius: 3px;
  overflow: hidden;
}
@media screen and (max-width: 599px) {
  .footer_navi_wrap .sp_block .sns_set {
    margin: 0 5px 1em;
  }
}
.footer_navi_wrap .sp_block .sns_set > div {
  width: 100%;
}
.footer_navi_wrap .sp_block .sns_set span.icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 auto;
  padding: 0.5em 0;
}
.footer_navi_wrap .sp_block .sns_set span.icon img {
  height: 1em;
}
.footer_navi_wrap .sp_block .sns_set .tweet {
  background: #1da1f2;
  background: #000;
}
.footer_navi_wrap .sp_block .sns_set .facebook {
  background: #295199;
}
.footer_navi_wrap .sp_block .sns_set .youtube {
  background: #f00;
}
.footer_navi_wrap .sp_block ul.sub_set {
  margin: 0 0 1em;
  border-top: 1px solid rgba(255, 255, 255, 0.25);
}
.footer_navi_wrap .sp_block ul.sub_set li {
  border-bottom: 1px solid rgba(255, 255, 255, 0.25);
}
.footer_navi_wrap .sp_block ul.sub_set li a {
  display: block;
  font-size: 0.8125em;
  line-height: 1.5;
  padding: 0.5em 0.5em;
}
.footer_navi_wrap .sp_block .reg_button a,
.footer_navi_wrap .sp_block .reg_login_button a {
  display: block;
  text-align: center;
  border-radius: 3px;
  font-size: 0.875em;
  padding: 0.75em;
}
.footer_navi_wrap .sp_block .reg_button a {
  background: #009fe8;
}
.footer_navi_wrap .sp_block .reg_login_button {
  margin-top: 5px;
}
.footer_navi_wrap .sp_block .reg_login_button a {
  background: #e6285d;
}
.footer_navi_wrap .navi_and_organization {
  display: block;
}
.footer_navi_wrap ul.footer_all_navi {
  margin-bottom: 2em;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.footer_navi_wrap ul.footer_all_navi > li {
  margin-bottom: 2em;
  width: 25%;
  padding-left: 15px;
}
@media screen and (max-width: 1024px) {
  .footer_navi_wrap ul.footer_all_navi > li {
    padding: 0 10px;
    width: 50%;
  }
}
@media screen and (max-width: 374px) {
  .footer_navi_wrap ul.footer_all_navi > li {
    width: 100%;
  }
}
.footer_navi_wrap ul.footer_all_navi .category {
  margin-bottom: 0.5em;
  display: block;
  font-size: 1em;
  padding: 0.375em 0.5em;
  background: rgba(255, 255, 255, 0);
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}
.footer_navi_wrap ul.footer_all_navi .pages {
  margin: 0 0.5em;
}
.footer_navi_wrap ul.footer_all_navi .pages a:hover {
  opacity: 0.7;
}
.footer_navi_wrap ul.footer_all_navi .pages > ul > li > a {
  display: block;
  font-size: 0.8125em;
  line-height: 1.5;
  padding: 0.375em 0;
}
.footer_navi_wrap ul.footer_all_navi .pages > ul > li .sub {
  padding: 0.25em 0;
}
.footer_navi_wrap ul.footer_all_navi .pages > ul > li .sub a {
  font-size: 0.8125em;
}
.footer_navi_wrap ul.footer_all_navi .pages > ul > li .sub ul {
  margin-top: 0.375em;
  margin-left: 0.5em;
  padding: 0 0.5em;
  border-left: 2px solid #009fe8;
}
.footer_navi_wrap ul.footer_all_navi .pages > ul > li .sub ul li a {
  font-size: 0.8125em;
  display: block;
  padding: 0.375em 0;
}
.footer_navi_wrap ul.footer_all_navi .sns_set {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 0 1.5em;
  border-radius: 3px;
  overflow: hidden;
}
@media screen and (max-width: 599px) {
  .footer_navi_wrap ul.footer_all_navi .sns_set {
    margin: 0 5px 1em;
  }
}
.footer_navi_wrap ul.footer_all_navi .sns_set > div {
  width: 100%;
}
.footer_navi_wrap ul.footer_all_navi .sns_set span.icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 auto;
  padding: 0.5em 0;
}
.footer_navi_wrap ul.footer_all_navi .sns_set span.icon img {
  height: 1em;
}
.footer_navi_wrap ul.footer_all_navi .sns_set .tweet {
  background: #1da1f2;
  background: #000;
}
.footer_navi_wrap ul.footer_all_navi .sns_set .facebook {
  background: #295199;
}
.footer_navi_wrap ul.footer_all_navi .sns_set .youtube {
  background: #f00;
}
.footer_navi_wrap ul.footer_all_navi ul.sub_set {
  margin: 0 0 1em;
  border-top: 1px solid rgba(255, 255, 255, 0.25);
}
.footer_navi_wrap ul.footer_all_navi ul.sub_set li {
  border-bottom: 1px solid rgba(255, 255, 255, 0.25);
}
.footer_navi_wrap ul.footer_all_navi ul.sub_set li a {
  display: block;
  font-size: 0.8125em;
  line-height: 1.5;
  padding: 0.5em 0.5em;
}
.footer_navi_wrap ul.footer_all_navi .reg_button a,
.footer_navi_wrap ul.footer_all_navi .reg_login_button a {
  display: block;
  text-align: center;
  border-radius: 3px;
  font-size: 0.875em;
  padding: 0.75em;
}
.footer_navi_wrap ul.footer_all_navi .reg_button a {
  background: #009fe8;
}
.footer_navi_wrap ul.footer_all_navi .reg_login_button {
  margin-top: 5px;
}
.footer_navi_wrap ul.footer_all_navi .reg_login_button a {
  background: #e6285d;
}
.footer_navi_wrap .organization {
  padding-left: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.footer_navi_wrap .organization p.title {
  margin-bottom: 0.5em;
  font-size: 0.875em;
}
.footer_navi_wrap .organization .org_info {
  width: calc(25% - 1.5em);
}
.footer_navi_wrap .organization .org_info .banner {
  width: 100%;
  min-height: 50px;
  background: rgb(255, 255, 255);
  border-radius: 3px;
  overflow: hidden;
  padding: 5px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
}
.footer_navi_wrap .organization .org_info .banner img {
  width: 90%;
}
.footer_navi_wrap .organization .contact {
  width: calc(50% - 1.5em);
  border-left: 1px solid #fff;
  padding-left: 0.5em;
}
.footer_navi_wrap .organization .contact p.name {
  font-size: 0.875em;
  line-height: 1.5;
  margin: 0.25em 0;
}
.footer_navi_wrap .organization .contact .add {
  margin-bottom: 0.25em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.footer_navi_wrap .organization .contact .add a.mailadd {
  display: block;
  margin-left: 1em;
}
.footer_navi_wrap .organization .contact .add a.mailadd::before {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  background: url(../../2024/images/icon/nav_mail_white.svg) no-repeat;
  -webkit-transform: translate(0px, 1px);
          transform: translate(0px, 1px);
  margin-right: 4px;
}
.footer_navi_wrap .organization .contact ul.other_page li a {
  display: block;
  font-size: 0.8125em;
  padding: 0.5em 0 0;
}
.footer_navi_wrap .organization .contact ul.other_page li a::before {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  background: url(../../2024/images/icon/nav_arrow_white.svg) no-repeat;
  -webkit-transform: translate(0px, 1px);
          transform: translate(0px, 1px);
  margin-right: 3px;
}
@media screen and (max-width: 1119px) {
  .footer_navi_wrap .organization {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .footer_navi_wrap .organization .org_info {
    width: calc(50% - 1em);
    margin-bottom: 1.5em;
  }
  .footer_navi_wrap .organization .org_info .banner {
    min-height: 70px;
  }
  .footer_navi_wrap .organization .contact {
    width: 100%;
  }
}
@media screen and (max-width: 599px) {
  .footer_navi_wrap .organization {
    font-size: 1em;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .footer_navi_wrap .organization .org_info {
    width: 100%;
    margin-bottom: 1em;
  }
  .footer_navi_wrap .organization .org_info .banner {
    min-height: 50px;
  }
  .footer_navi_wrap .organization .org_info .banner img {
    width: 70%;
    max-width: 300px;
  }
  .footer_navi_wrap .organization .contact {
    margin-top: 2em;
    width: 100%;
  }
  .footer_navi_wrap .organization .contact p.info a {
    display: block;
    margin-left: 0;
    margin-top: 0.25em;
  }
}

#g-nav {
  position: fixed;
  z-index: -1;
  opacity: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  background: #eee;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
#g-nav.panelactive {
  opacity: 1;
  z-index: 990;
}
#g-nav.panelactive #g-nav-list {
  position: fixed;
  z-index: 991;
  width: 100%;
  height: 100vh;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}
#g-nav .layout_area {
  padding-top: 60px;
}
@media screen and (max-width: 1023px) {
  #g-nav .layout_area {
    padding-top: 60px;
  }
}
#g-nav .layout_area .topblock {
  position: fixed;
  top: 0;
  width: 100%;
  height: 60px;
  background: #000;
}
#g-nav .layout_area .ins {
  padding: 20px;
}
#g-nav ul.layout_area {
  display: none;
}
#g-nav.panelactive ul.layout_area {
  display: block;
}
#g-nav .button_pad_1 {
  margin-bottom: 30px;
}
#g-nav .button_pad_2 {
  margin-bottom: 30px;
}
#g-nav .reg_button a,
#g-nav .reg_login_button a {
  display: block;
  font-size: 1em;
  padding: 0.75em;
  color: #fff;
  border-radius: 4px;
  text-align: center;
  margin-bottom: 5px;
}
#g-nav .reg_button a {
  background: #009fe8;
}
#g-nav .reg_login_button a {
  background: #e6285d;
}
#g-nav ul.modalnav li a {
  color: #000;
}
#g-nav ul.modalnav li .category {
  font-weight: bold;
  font-size: 1.25em;
  border-bottom: 1px solid #999;
  margin-bottom: 0.5em;
  padding-bottom: 0.125em;
}
#g-nav ul.modalnav li .pages {
  margin-bottom: 2em;
  margin-left: 0px;
}
#g-nav ul.modalnav li .pages > ul > li {
  font-size: 1.125em;
}
#g-nav ul.modalnav li .pages > ul > li > a {
  display: block;
  padding: 0.5em 0;
}
#g-nav ul.modalnav li .pages .sub {
  padding: 0.3125em 0;
}
#g-nav ul.modalnav li .pages .sub ul {
  margin-top: 0.5em;
  margin-left: 0.5em;
  padding: 0 0.75em;
  border-left: 2px solid #009fe8;
}
#g-nav ul.modalnav li .pages .sub ul li a {
  font-size: 0.9125em;
  display: block;
  padding: 0.5em 0;
}
#g-nav .sns_set {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 2em 0;
  border-radius: 4px;
  overflow: hidden;
}
#g-nav .sns_set > div {
  width: 100%;
}
#g-nav .sns_set span.icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 auto;
  padding: 1em 0;
}
#g-nav .sns_set span.icon img {
  height: 1em;
}
#g-nav .sns_set .tweet {
  background: #000;
}
#g-nav .sns_set .facebook {
  background: #295199;
}
#g-nav .sns_set .youtube {
  background: #f00;
}
#g-nav ul.sub_set {
  margin: 2em 0;
}
#g-nav ul.sub_set li {
  font-size: 1.125em;
}
#g-nav ul.sub_set li a {
  color: #000;
  display: block;
  padding: 0.5em 0;
}

.topBtn {
  position: fixed;
  z-index: 100;
  bottom: 0;
  right: 0;
  width: 60px;
  height: 60px;
  cursor: pointer;
  display: block;
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url(../../2024/images/icon/angle-up-solid.svg);
}
@media screen and (min-width: 1025px) {
  .topBtn:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 1024px) {
  .topBtn {
    width: 52px;
    height: 52px;
  }
}

.main_wrap {
  padding-top: 60px;
}
@media screen and (max-width: 1023px) {
  .main_wrap {
    padding-top: 60px;
  }
}

header {
  background: black;
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.75);
          box-shadow: 0 0 10px rgba(0, 0, 0, 0.75);
}

.offtype_block {
  opacity: 0.35;
}
.offtype_block a {
  pointer-events: none;
}

header, footer, #g-nav {
  font-family: "Roboto", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
  font-size: 16px;
}
@media screen and (max-width: 599px) {
  header, footer, #g-nav {
    font-size: 14px;
  }
}
header h1, header h2, header h3, header h4, header h5, header h6, header p, header a, footer h1, footer h2, footer h3, footer h4, footer h5, footer h6, footer p, footer a, #g-nav h1, #g-nav h2, #g-nav h3, #g-nav h4, #g-nav h5, #g-nav h6, #g-nav p, #g-nav a {
  letter-spacing: 0;
}
header p, footer p, #g-nav p {
  margin: 0;
}
header a, footer a, #g-nav a {
  text-decoration: none;
  outline: none;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  vertical-align: baseline;
  background: transparent;
}
header a img:hover, footer a img:hover, #g-nav a img:hover {
  opacity: 0.7;
}
header .fa-classic, header .fa-regular, header .fa-solid, header .far, header .fas, footer .fa-classic, footer .fa-regular, footer .fa-solid, footer .far, footer .fas, #g-nav .fa-classic, #g-nav .fa-regular, #g-nav .fa-solid, #g-nav .far, #g-nav .fas {
  margin-right: 0.25em;
}
header .footer_navi_wrap .organization .contact ul.other_page li a:before, footer .footer_navi_wrap .organization .contact ul.other_page li a:before, #g-nav .footer_navi_wrap .organization .contact ul.other_page li a:before {
  content: "";
}