@charset "UTF-8";
/*************************************************
/  全体
/**************************************************/
@media screen and (max-width: 1024px) {
  html {
    font-size: 1.8666666667vw;
  }
}
@media screen and (max-width: 768px) {
  html {
    font-size: initial;
  }
}

body {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-display: optional;
  font-weight: 400;
  font-style: normal;
  background-color: #fff;
  color: #333;
  line-height: 1.4;
  text-align: left;
  position: relative;
  font-size: 0.875rem;
  padding-top: 136.781px;
}
@media screen and (max-width: 768px) {
  body {
    padding-top: 115px;
  }
}
body .contact-tel {
  opacity: 0;
}
body.h-loaded {
  padding-top: 0;
}
body.h-loaded .contact-tel {
  opacity: 1;
}
@media print, screen and (min-width: 769px) {
  body #main {
    padding-top: 43px;
  }
}
body.l-loaded #main {
  padding-top: 0;
}
body.is-scrollLock {
  overflow: hidden;
  width: 100%;
}
@media screen and (max-width: 768px) {
  body {
    line-height: normal;
    font-family: Helvetica, Arial, sans-serif;
    font-size: 16px;
    color: #000;
  }
}

br.sp {
  display: none;
}

@media screen and (max-width: 768px) {
  br.sp {
    display: block;
  }
  br.pc {
    display: none;
  }
}
.wrapper {
  position: relative;
}
@media print, screen and (min-width: 769px) {
  .wrapper #header > .inner,
  .wrapper #header > .site-description > p,
  .wrapper #footer .inner,
  .wrapper #main > * {
    max-width: 950px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 10px;
    padding-right: 10px;
  }
}

.para > p + p {
  margin-top: 5px;
}
.para + .para {
  margin-top: 29.59px;
}

.mb40 {
  margin-bottom: 40px;
}

/*************************************************
/ボタン
**************************************************/
.btn-block {
  display: flex;
  justify-content: center;
  column-gap: 1em;
}
.btn-block .btn {
  background-color: #005ca2;
  color: #fff;
  font-size: 1.25rem;
  font-weight: 700;
  display: inline-block;
  padding: 0.5em 1em;
}
.btn-block .btn:hover {
  text-decoration: none;
}

/*************************************************
/ドットリスト
**************************************************/
.dot-lists > li {
  position: relative;
  text-indent: 0em;
  padding-left: 1.1em;
}
.dot-lists > li::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}

/*************************************************
  imageをいつでも親の横100%表示にする
**************************************************/
img {
  width: 100%;
  max-width: 100%;
  height: auto;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: 0.001dpcm) {
  img {
    image-rendering: -webkit-optimize-contrast;
  }
}
a {
  color: #005ca2;
  display: inline-block;
  text-decoration: none;
}
a.under {
  text-decoration: underline;
}
@media screen and (max-width: 768px) {
  a {
    color: #000;
  }
}

@media (hover: hover) {
  a:not(.under):hover {
    text-decoration: underline;
  }
}
button {
  display: block;
  border: none;
  background-color: transparent;
  cursor: pointer;
}

.ui-ico-1 {
  position: relative;
}
.ui-ico-1::before {
  left: 0.6em;
}
.ui-ico-1::after {
  right: 0.6em;
}
.ui-ico-1::before {
  content: "";
  width: 1.15em;
  height: 1.15em;
  display: inline-block;
  background-image: url("/common/img/icons-36-white.png");
  background-repeat: no-repeat;
  background-position: 0% 0;
  background-size: cover;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.ui-ico-1.gray::before {
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 9999px;
}

.ui-ico-2 {
  position: relative;
}
.ui-ico-2::before {
  left: 0.6em;
}
.ui-ico-2::after {
  right: 0.6em;
}
.ui-ico-2::before {
  content: "";
  width: 1.15em;
  height: 1.15em;
  display: inline-block;
  background-image: url("/common/img/icons-36-white.png");
  background-repeat: no-repeat;
  background-position: 4.5454545455% 0;
  background-size: cover;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.ui-ico-2.gray::before {
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 9999px;
}

.ui-ico-3 {
  position: relative;
}
.ui-ico-3::before {
  left: 0.6em;
}
.ui-ico-3::after {
  right: 0.6em;
}
.ui-ico-3::before {
  content: "";
  width: 1.15em;
  height: 1.15em;
  display: inline-block;
  background-image: url("/common/img/icons-36-white.png");
  background-repeat: no-repeat;
  background-position: 9.0909090909% 0;
  background-size: cover;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.ui-ico-3.gray::before {
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 9999px;
}

.ui-ico-4 {
  position: relative;
}
.ui-ico-4::before {
  left: 0.6em;
}
.ui-ico-4::after {
  right: 0.6em;
}
.ui-ico-4::before {
  content: "";
  width: 1.15em;
  height: 1.15em;
  display: inline-block;
  background-image: url("/common/img/icons-36-white.png");
  background-repeat: no-repeat;
  background-position: 13.6363636364% 0;
  background-size: cover;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.ui-ico-4.gray::before {
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 9999px;
}

.ui-ico-5 {
  position: relative;
}
.ui-ico-5::before {
  left: 0.6em;
}
.ui-ico-5::after {
  right: 0.6em;
}
.ui-ico-5::before {
  content: "";
  width: 1.15em;
  height: 1.15em;
  display: inline-block;
  background-image: url("/common/img/icons-36-white.png");
  background-repeat: no-repeat;
  background-position: 18.1818181818% 0;
  background-size: cover;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.ui-ico-5.gray::before {
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 9999px;
}

.ui-ico-6 {
  position: relative;
}
.ui-ico-6::before {
  left: 0.6em;
}
.ui-ico-6::after {
  right: 0.6em;
}
.ui-ico-6::before {
  content: "";
  width: 1.15em;
  height: 1.15em;
  display: inline-block;
  background-image: url("/common/img/icons-36-white.png");
  background-repeat: no-repeat;
  background-position: 22.7272727273% 0;
  background-size: cover;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.ui-ico-6.gray::before {
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 9999px;
}

.ui-ico-7 {
  position: relative;
}
.ui-ico-7::before {
  left: 0.6em;
}
.ui-ico-7::after {
  right: 0.6em;
}
.ui-ico-7::before {
  content: "";
  width: 1.15em;
  height: 1.15em;
  display: inline-block;
  background-image: url("/common/img/icons-36-white.png");
  background-repeat: no-repeat;
  background-position: 27.2727272727% 0;
  background-size: cover;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.ui-ico-7.gray::before {
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 9999px;
}

.ui-ico-8 {
  position: relative;
}
.ui-ico-8::before {
  left: 0.6em;
}
.ui-ico-8::after {
  right: 0.6em;
}
.ui-ico-8::before {
  content: "";
  width: 1.15em;
  height: 1.15em;
  display: inline-block;
  background-image: url("/common/img/icons-36-white.png");
  background-repeat: no-repeat;
  background-position: 31.8181818182% 0;
  background-size: cover;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.ui-ico-8.gray::before {
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 9999px;
}

.ui-ico-9 {
  position: relative;
}
.ui-ico-9::before {
  left: 0.6em;
}
.ui-ico-9::after {
  right: 0.6em;
}
.ui-ico-9::before {
  content: "";
  width: 1.15em;
  height: 1.15em;
  display: inline-block;
  background-image: url("/common/img/icons-36-white.png");
  background-repeat: no-repeat;
  background-position: 36.3636363636% 0;
  background-size: cover;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.ui-ico-9.gray::before {
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 9999px;
}

.ui-ico-10 {
  position: relative;
}
.ui-ico-10::before {
  left: 0.6em;
}
.ui-ico-10::after {
  right: 0.6em;
}
.ui-ico-10::before {
  content: "";
  width: 1.15em;
  height: 1.15em;
  display: inline-block;
  background-image: url("/common/img/icons-36-white.png");
  background-repeat: no-repeat;
  background-position: 40.9090909091% 0;
  background-size: cover;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.ui-ico-10.gray::before {
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 9999px;
}

.ui-ico-11 {
  position: relative;
}
.ui-ico-11::before {
  left: 0.6em;
}
.ui-ico-11::after {
  right: 0.6em;
}
.ui-ico-11::before {
  content: "";
  width: 1.15em;
  height: 1.15em;
  display: inline-block;
  background-image: url("/common/img/icons-36-white.png");
  background-repeat: no-repeat;
  background-position: 45.4545454545% 0;
  background-size: cover;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.ui-ico-11.gray::before {
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 9999px;
}

.ui-ico-12 {
  position: relative;
}
.ui-ico-12::before {
  left: 0.6em;
}
.ui-ico-12::after {
  right: 0.6em;
}
.ui-ico-12::before {
  content: "";
  width: 1.15em;
  height: 1.15em;
  display: inline-block;
  background-image: url("/common/img/icons-36-white.png");
  background-repeat: no-repeat;
  background-position: 50% 0;
  background-size: cover;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.ui-ico-12.gray::before {
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 9999px;
}

.ui-ico-13 {
  position: relative;
}
.ui-ico-13::before {
  left: 0.6em;
}
.ui-ico-13::after {
  right: 0.6em;
}
.ui-ico-13::before {
  content: "";
  width: 1.15em;
  height: 1.15em;
  display: inline-block;
  background-image: url("/common/img/icons-36-white.png");
  background-repeat: no-repeat;
  background-position: 54.5454545455% 0;
  background-size: cover;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.ui-ico-13.gray::before {
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 9999px;
}

.ui-ico-14 {
  position: relative;
}
.ui-ico-14::before {
  left: 0.6em;
}
.ui-ico-14::after {
  right: 0.6em;
}
.ui-ico-14::before {
  content: "";
  width: 1.15em;
  height: 1.15em;
  display: inline-block;
  background-image: url("/common/img/icons-36-white.png");
  background-repeat: no-repeat;
  background-position: 59.0909090909% 0;
  background-size: cover;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.ui-ico-14.gray::before {
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 9999px;
}

.ui-ico-15 {
  position: relative;
}
.ui-ico-15::before {
  left: 0.6em;
}
.ui-ico-15::after {
  right: 0.6em;
}
.ui-ico-15::before {
  content: "";
  width: 1.15em;
  height: 1.15em;
  display: inline-block;
  background-image: url("/common/img/icons-36-white.png");
  background-repeat: no-repeat;
  background-position: 63.6363636364% 0;
  background-size: cover;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.ui-ico-15.gray::before {
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 9999px;
}

.ui-ico-16 {
  position: relative;
}
.ui-ico-16::before {
  left: 0.6em;
}
.ui-ico-16::after {
  right: 0.6em;
}
.ui-ico-16::before {
  content: "";
  width: 1.15em;
  height: 1.15em;
  display: inline-block;
  background-image: url("/common/img/icons-36-white.png");
  background-repeat: no-repeat;
  background-position: 68.1818181818% 0;
  background-size: cover;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.ui-ico-16.gray::before {
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 9999px;
}

.ui-ico-17 {
  position: relative;
}
.ui-ico-17::before {
  left: 0.6em;
}
.ui-ico-17::after {
  right: 0.6em;
}
.ui-ico-17::before {
  content: "";
  width: 1.15em;
  height: 1.15em;
  display: inline-block;
  background-image: url("/common/img/icons-36-white.png");
  background-repeat: no-repeat;
  background-position: 72.7272727273% 0;
  background-size: cover;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.ui-ico-17.gray::before {
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 9999px;
}

.ui-ico-18 {
  position: relative;
}
.ui-ico-18::before {
  left: 0.6em;
}
.ui-ico-18::after {
  right: 0.6em;
}
.ui-ico-18::before {
  content: "";
  width: 1.15em;
  height: 1.15em;
  display: inline-block;
  background-image: url("/common/img/icons-36-white.png");
  background-repeat: no-repeat;
  background-position: 77.2727272727% 0;
  background-size: cover;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.ui-ico-18.gray::before {
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 9999px;
}

.ui-ico-19 {
  position: relative;
}
.ui-ico-19::before {
  left: 0.6em;
}
.ui-ico-19::after {
  right: 0.6em;
}
.ui-ico-19::before {
  content: "";
  width: 1.15em;
  height: 1.15em;
  display: inline-block;
  background-image: url("/common/img/icons-36-white.png");
  background-repeat: no-repeat;
  background-position: 81.8181818182% 0;
  background-size: cover;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.ui-ico-19.gray::before {
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 9999px;
}

.ui-ico-20 {
  position: relative;
}
.ui-ico-20::before {
  left: 0.6em;
}
.ui-ico-20::after {
  right: 0.6em;
}
.ui-ico-20::before {
  content: "";
  width: 1.15em;
  height: 1.15em;
  display: inline-block;
  background-image: url("/common/img/icons-36-white.png");
  background-repeat: no-repeat;
  background-position: 86.3636363636% 0;
  background-size: cover;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.ui-ico-20.gray::before {
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 9999px;
}

.ui-ico-21 {
  position: relative;
}
.ui-ico-21::before {
  left: 0.6em;
}
.ui-ico-21::after {
  right: 0.6em;
}
.ui-ico-21::before {
  content: "";
  width: 1.15em;
  height: 1.15em;
  display: inline-block;
  background-image: url("/common/img/icons-36-white.png");
  background-repeat: no-repeat;
  background-position: 90.9090909091% 0;
  background-size: cover;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.ui-ico-21.gray::before {
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 9999px;
}

.ui-ico-22 {
  position: relative;
}
.ui-ico-22::before {
  left: 0.6em;
}
.ui-ico-22::after {
  right: 0.6em;
}
.ui-ico-22::before {
  content: "";
  width: 1.15em;
  height: 1.15em;
  display: inline-block;
  background-image: url("/common/img/icons-36-white.png");
  background-repeat: no-repeat;
  background-position: 95.4545454545% 0;
  background-size: cover;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.ui-ico-22.gray::before {
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 9999px;
}

#header {
  border-bottom: 1px solid #d0cfcd;
}
#header .site-description {
  background-color: #005ca2;
  color: #fff;
  padding: 3px 0px 2px 0px;
  border-bottom: 1px solid #d0cfcd;
}
@media screen and (max-width: 768px) {
  #header .site-description {
    display: none;
  }
}
#header .inner {
  display: flex;
  justify-content: space-between;
  padding: 28px 0 8px 0;
}
@media screen and (max-width: 768px) {
  #header .inner {
    border-top: 3px solid #005ca2;
    padding: 5px 0 0 10px;
    flex-direction: column;
    height: 83px;
    padding-bottom: 4px;
  }
}
#header .inner ._right {
  text-align: right;
}
@media screen and (max-width: 768px) {
  #header .inner ._right {
    text-align: center;
    display: none;
  }
}
#header .inner .contact-tel {
  padding: 8px 6px 20px 0;
}
@media screen and (max-width: 768px) {
  #header .inner .contact-tel {
    padding: 0;
    margin-bottom: 5px;
    margin-right: 10px;
  }
}
#header .inner .header-txt-links {
  display: flex;
  text-align: left;
  margin-bottom: 4.6px;
}
@media screen and (max-width: 768px) {
  #header .inner .header-txt-links {
    display: none;
  }
}
#header .inner .header-txt-links li + li {
  margin-left: 30px;
}
#header .inner .header-txt-links a {
  color: #727272;
}
#header .inner .header-txt-links a:hover {
  color: #005ca2;
}
#header .inner .header-txt-links a::before {
  content: "";
  background-image: url(/common/img/ico-arrow.png);
  background-position: center left;
  background-repeat: no-repeat;
  background-size: contain;
  width: 9px;
  height: 9px;
  display: inline-block;
  margin-right: 6px;
  margin-bottom: 1px;
}

#overlay {
  opacity: 0;
  transition: opacity 0.3s ease;
  width: 100%;
  height: 100vh;
  height: 100dvh;
  position: fixed;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
  z-index: -1;
}
#overlay.active {
  z-index: 700;
  opacity: 1;
}

@media print, screen and (min-width: 769px) {
  #main {
    background-image: url(/common/img/bg_content.jpg);
    background-repeat: repeat-x;
  }
}
#main > * {
  background-color: #fff;
}

.bread {
  display: flex;
  align-items: center;
  line-height: 1;
}
.bread li + li::before {
  content: ">";
}
@media print, screen and (min-width: 769px) {
  .bread {
    font-size: 0.7525rem;
    padding: 6px 0px 16px 5px;
  }
  .bread li + li {
    margin-left: 0.43em;
  }
  .bread li + li::before {
    content: ">";
    margin-right: 0.43em;
  }
  .bread a {
    text-decoration: underline;
  }
}
@media screen and (max-width: 768px) {
  .bread {
    padding: 13px 10px;
    font-size: 13px;
    color: #333;
  }
  .bread li + li {
    margin-left: 0.28em;
  }
  .bread li + li::before {
    margin-right: 0.28em;
  }
  .bread a {
    color: #2489ce;
    font-weight: 700;
  }
}

.main-contents {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .main-contents .std-section > .container > .content {
    padding-left: 1%;
    padding-right: 1%;
  }
}
@media screen and (max-width: 768px) {
  .main-contents {
    flex-direction: column;
  }
  .main-contents > ._main {
    display: contents;
  }
  .main-contents > ._main .bread {
    order: 1;
  }
  .main-contents > ._main .contents-wrap {
    order: 3;
  }
  .main-contents > .aside {
    order: 2;
  }
}
@media print, screen and (min-width: 769px) {
  .main-contents {
    padding-top: 8px;
  }
  .main-contents ._main {
    width: 72.0430107527%;
    order: 2;
  }
  .main-contents .aside {
    width: 24.7311827957%;
    order: 1;
  }
}
@media print, screen and (min-width: 769px) {
  .main-contents .aside .bn-lists {
    display: flex;
    flex-direction: column;
    row-gap: 10px;
    align-items: center;
  }
}
@media screen and (min-width: 769px) and (max-width: 768px) {
  .main-contents .aside .bn-lists {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 769px) {
  .main-contents .aside .side-nav {
    margin-bottom: 10px;
  }
  .main-contents .aside .side-nav li a {
    display: block;
    background-color: #ebf6fe;
    padding: 8px 0px 7px 28px;
    border-radius: 4px;
    color: #262626;
    border: 1px solid #b8bdd1;
    background-image: url(/common/img/ico-sub-menu-guide.png);
    background-repeat: no-repeat;
    background-position: left 11px center;
  }
  .main-contents .aside .side-nav li a.active, .main-contents .aside .side-nav li a:hover {
    text-decoration: none;
    background-color: #005ca2;
    color: #fff;
    background-image: url(/common/img/ico-sub-menu-guide-r.png);
  }
  .main-contents .aside .side-nav li + li {
    margin-top: 3px;
  }
  .main-contents .aside .sp-sub-menu {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .main-contents .aside {
    margin: 0 15px 0 15px;
  }
  .main-contents .aside .bn-lists {
    display: none;
  }
  .main-contents .aside .sp-sub-menu {
    border-radius: 0.45em;
  }
  .main-contents .aside .sp-sub-menu .btn-open {
    border-radius: 0.45em;
    border: 1px solid #ccc;
    background-image: linear-gradient(#fff, #f1f1f1);
    background-color: #fff;
    padding: 0.59em 20px 0.64em 40px;
    font-weight: bold;
    color: #2f3e46;
    text-shadow: 0 1px 0 #fff;
    width: 100%;
    cursor: pointer;
    margin-bottom: 19px;
  }
  .main-contents .aside .sp-sub-menu .btn-open::before {
    background-position-x: -0.13%;
  }
  .main-contents .aside .sp-sub-menu .btn-open > span {
    display: inline-block;
  }
  .main-contents .aside .sp-sub-menu .btn-open:focus {
    box-shadow: inset 0px 0px 3px #808080, 0px 0px 9px #808080;
    border-radius: 0.45em;
    position: relative;
    z-index: 1;
  }
  .main-contents .aside .sp-sub-menu .btn-open:active {
    background-image: linear-gradient(#d0d0d0, #dfdfdf);
  }
  .main-contents .aside .sp-sub-menu.active .btn-open {
    border-radius: 0.45em 0.45em 0 0;
    margin-bottom: 0;
    position: relative;
  }
  .main-contents .aside .sp-sub-menu.active .btn-open::before {
    left: 0.6em;
  }
  .main-contents .aside .sp-sub-menu.active .btn-open::after {
    right: 0.6em;
  }
  .main-contents .aside .sp-sub-menu.active .btn-open::before {
    content: "";
    width: 1.15em;
    height: 1.15em;
    display: inline-block;
    background-image: url("/common/img/icons-36-white.png");
    background-repeat: no-repeat;
    background-position: 9.0909090909% 0;
    background-size: cover;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }
  .main-contents .aside .sp-sub-menu.active .btn-open.gray::before {
    background-color: rgba(0, 0, 0, 0.4);
    border-radius: 9999px;
  }
  .main-contents .aside .sp-sub-menu.active .btn-open::before {
    background-position-x: 4.4%;
  }
  .main-contents .aside .sp-sub-menu.active .btn-open:focus {
    border-radius: 0.45em; /*上書きされるので再指定*/
  }
  .main-contents .aside .side-nav {
    display: none;
    border: 1px solid #ccc;
    position: relative;
    margin-top: -5px;
    margin-bottom: 13px;
  }
  .main-contents .aside .side-nav.active {
    display: block;
  }
  .main-contents .aside .side-nav > li {
    position: relative;
  }
  .main-contents .aside .side-nav > li::before {
    left: 0.6em;
  }
  .main-contents .aside .side-nav > li::after {
    right: 0.6em;
  }
  .main-contents .aside .side-nav > li::after {
    content: "";
    width: 1.15em;
    height: 1.15em;
    display: inline-block;
    background-image: url("/common/img/icons-36-white.png");
    background-repeat: no-repeat;
    background-position: 18.1818181818% 0;
    background-size: cover;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }
  .main-contents .aside .side-nav > li.gray::before {
    background-color: rgba(0, 0, 0, 0.4);
    border-radius: 9999px;
  }
  .main-contents .aside .side-nav > li::after {
    background-color: rgba(0, 0, 0, 0.4);
    border-radius: 9999px;
    background-position-x: 13.45%;
  }
  .main-contents .aside .side-nav > li a {
    display: flex;
    align-items: center;
    padding-right: 40px;
    padding: 0.5em 15px 0.5em;
    height: 47.5px;
    color: #2f3e46;
    font-weight: 700;
    text-shadow: 0 1px 0 #ffffff;
    background-image: linear-gradient(#fff, #f1f1f1);
  }
  .main-contents .aside .side-nav > li + li {
    border-top: 2px solid #ccc;
  }
}
@media print, screen and (min-width: 769px) {
  .main-contents .std-title.type-1 {
    background-image: url(/common/img/image_std-title-3.png), linear-gradient(to top, #f3f3f3, #fefefe);
    background-repeat: no-repeat, no-repeat;
    background-position: 8px center, 0 0;
    background-size: auto, cover;
    box-shadow: inset 0 0 0 2px #fff;
    border: 1px solid #d3d3d3;
    padding-top: 25px;
    padding-right: 0px;
    padding-bottom: 23px;
    padding-left: 30px;
    font-size: 1.575rem;
    font-weight: 700;
    color: #4a4b4b;
  }
}
@media screen and (max-width: 768px) {
  .main-contents .std-title.type-1 {
    background-color: #005ca2;
    font-size: 1.5rem;
    padding: 0.48em 0.83em 0.67em;
    color: #fff;
    margin-bottom: 1em;
  }
}
.main-contents .std-title.type-2 {
  padding: 10px 0px 8px 23px;
  margin-bottom: 10px;
  margin-top: 21px;
  color: #fff;
  font-size: 1.25125rem;
  font-weight: 700;
  line-height: 1.2;
  background-color: #005ca2;
  border-radius: 5px;
}
@media screen and (max-width: 768px) {
  .main-contents .std-title.type-2 {
    margin-top: 40px;
  }
}
.main-contents .std-title.type-3 {
  color: #174b86;
  font-size: 1.09375rem;
  padding: 10px;
  border-bottom: solid 2px #2f80db;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .main-contents .std-title.type-3 {
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 769px) {
  .main-contents .std-title.type-3-2 {
    color: #464646;
    font-size: 1.225rem;
    font-weight: 700;
    position: relative;
    padding-left: 5px;
  }
  .main-contents .std-title.type-3-2::before {
    content: "";
    display: block;
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #CCC;
  }
  .main-contents .std-title.type-3-2::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 57.4%;
    height: 3px;
    background-color: #64A9DE;
  }
}
@media screen and (max-width: 768px) {
  .main-contents .std-title.type-3-2 {
    color: #fff;
    font-weight: 700;
    background-color: #1a428a;
    padding: 10px 20px;
    text-shadow: 0 -1px 1px rgba(0, 0, 0, 0.4), 0 1px 1px rgba(255, 255, 255, 0.5);
    line-height: 1.4rem;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
}
.main-contents .std-title.type-4 {
  color: #000080;
  font-weight: 700;
}
.main-contents .std-title.type-4.under {
  text-decoration: underline;
}
.main-contents .std-title.type-4-2 {
  font-size: 1.09375rem;
  color: #b65e19;
  border-bottom: solid 2px #f28834;
  padding: 10px 10px 10px;
}
@media screen and (max-width: 768px) {
  .main-contents .std-title.type-4-2 {
    font-size: 1.25rem;
  }
}
.main-contents .std-title.type-4-2.orange {
  color: #b65e19;
  border-color: #f28834;
}
.main-contents .std-title.type-4-2.green {
  color: #3a6806;
  border-color: #65aa15;
  padding-bottom: 10px;
}
.main-contents .std-title.type-4-2.blue {
  color: #174b86;
  border-color: #2f80db;
  padding-bottom: 10px;
}
.main-contents .std-title.type-5 {
  color: #fff;
  font-size: 1.05rem;
  font-weight: 700;
  background: linear-gradient(#005a83, #00a0e9);
  border-radius: 5px;
  padding: 10px 10px 11px;
}
@media screen and (max-width: 768px) {
  .main-contents .std-title.type-5 {
    font-size: 1.2rem;
  }
}

#local-navi ul.navi-lists {
  display: flex;
}
#local-navi ul.navi-lists > li {
  flex: 1;
}
@media print, screen and (min-width: 769px) {
  #local-navi ul.navi-lists {
    background-image: linear-gradient(to bottom, #5384d5, #005ca2);
  }
  #local-navi ul.navi-lists > li a {
    border-top: 1px solid #9fb8e2;
    border-right: 1px solid #155693;
    border-bottom: 1px solid #004172;
    border-left: 1px solid #4988c0;
    line-height: 1.2;
    padding-top: 2px;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 43px;
    width: 100%;
    text-align: center;
  }
  #local-navi ul.navi-lists > li a:hover, #local-navi ul.navi-lists > li a.active {
    border-top: 1px solid #74a2c6;
    border-right: 1px solid #022c4c;
    border-bottom: 1px solid #012037;
    border-left: 1px solid #3d698c;
    color: #a0d3ff;
    text-decoration: none;
    background-image: linear-gradient(to bottom, #005a9e, #022d4e);
  }
  #local-navi .bn-lists {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  #local-navi {
    position: fixed;
    top: 0;
    right: 0;
    width: 100vw;
    height: 100vh;
    padding: 0 !important;
    background-color: initial;
    transition: transform 0.3s ease;
    z-index: 800;
    transform: translateX(100vw);
    pointer-events: none;
    opacity: 0;
  }
  #local-navi.active {
    transform: translateX(0);
    pointer-events: auto;
    opacity: 1;
  }
  #local-navi ul.navi-lists {
    margin-top: 84px;
    border-top: 1px solid #fff;
    flex-direction: column;
    background-image: none;
  }
  #local-navi ul.navi-lists li a {
    border-bottom: 1px solid rgb(170, 170, 170);
    font-weight: 700;
    width: 100%;
    display: flex;
    justify-content: left;
    padding: 0.73em 15px;
    background-image: url(/common/img/ico-arrow2.png);
    background-position: center right 10px;
    background-repeat: no-repeat;
    background-color: #fff;
    color: #000;
  }
  #local-navi ul.navi-lists li a.active {
    background-image: none;
    background-color: #005ca2;
    color: #fff;
  }
  #local-navi .bn-lists {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-left: 10px;
    margin-right: 10px;
    margin-top: 20px;
  }
  #local-navi .bn-lists li {
    width: calc((100% - 10px) / 2);
  }
}

/*展開*/
.sp-nav-button {
  opacity: 0;
  pointer-events: none;
  display: none;
  z-index: 900;
  cursor: pointer;
  position: fixed;
  width: 54px;
  height: 46px;
  top: 20px;
  right: 0;
  background: rgba(255, 255, 255, 0.8);
  padding: 10px;
  border-radius: 5px 0px 0px 5px;
}
@media screen and (max-width: 768px) {
  .sp-nav-button {
    display: inline-block;
    opacity: 1;
    pointer-events: auto;
  }
}
.sp-nav-button > div {
  position: relative;
  width: 100%;
  height: 100%;
}
.sp-nav-button > div::before, .sp-nav-button > div::after,
.sp-nav-button > div span {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  width: 100%;
  height: 4px;
  background-color: #005ca2;
  transition: all 0.3s;
}
.sp-nav-button > div::before {
  top: 0;
}
.sp-nav-button > div span {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.sp-nav-button > div::after {
  bottom: 0;
}
.sp-nav-button.active > div span {
  opacity: 0;
}
.sp-nav-button.active > div::before {
  top: 50%;
  transform: translateY(-50%) rotate(315deg);
}
.sp-nav-button.active > div::after {
  bottom: 50%;
  transform: translateY(50%) rotate(-315deg);
}

@media print, screen and (min-width: 769px) {
  #footer {
    background-color: #005ca2;
    margin-top: 89.594px;
  }
  #footer .footer-head {
    background-color: #cfdbd8;
  }
  #footer .footer-head .inner {
    display: flex;
    justify-content: space-between;
  }
  #footer .footer-head .footer-links {
    display: flex;
    border-right: 1px solid #005ca2;
    column-gap: 5px;
    margin-top: 5px;
    margin-bottom: 5px;
    line-height: 1.1;
  }
  #footer .footer-head .footer-links a {
    display: inline-block;
    padding: 2px 8px 0px 8px;
    border-left: 1px solid #005ca2;
  }
  #footer .footer-head .footer-links > li:nth-child(2) a {
    padding-left: 7.5px;
    padding-right: 8.5px;
  }
  #footer .footer-head .footer-links > li.sp {
    display: none;
  }
  #footer .page-top {
    padding-top: 5px;
    padding-bottom: 2px;
    opacity: 0;
    pointer-events: none;
    transition: opacity 1s;
  }
  #footer .page-top.active {
    opacity: 1;
    pointer-events: initial;
  }
  #footer .page-top a {
    border-left: 1px solid #005ca2;
    border-right: 1px solid #005ca2;
    background-image: url(/common/img/ico-page-up.png);
    background-position: right 8px center;
    background-repeat: no-repeat;
    font-size: 0.74375rem;
    font-weight: 700;
    padding: 1px 28px 0px 11px;
  }
  #footer .content {
    color: #fff;
    padding: 15px 10px 15px 10px;
    line-height: 1.1;
  }
  #footer .content > * + * {
    margin-top: 1.1em;
  }
}
@media screen and (max-width: 768px) {
  #footer {
    margin-top: 54.75px;
    border-top: 1px solid #fff;
  }
  #footer .page-top,
  #footer .content {
    display: none;
  }
  #footer .footer-head {
    background-color: #fff;
  }
  #footer .footer-head .inner {
    padding: 0;
  }
  #footer .footer-head .footer-links {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    border-top: 1px solid #cccccc;
    border-right: none;
    gap: 0;
  }
  #footer .footer-head .footer-links li {
    width: 50%;
  }
  #footer .footer-head .footer-links li.sp {
    display: block;
  }
  #footer .footer-head .footer-links li a {
    display: inline-block;
    width: 100%;
    height: 100%;
    font-size: 0.78125rem;
    padding: 0.7em 11px 0.8em;
    white-space: nowrap;
    background-image: linear-gradient(#f2f2f2, #f2f2f2);
    border-bottom: 1px solid #cccccc;
    border-left: 1px solid #cccccc;
    border-top: 1px solid rgba(255, 255, 255, 0.3);
    text-align: center;
    font-weight: 700;
  }
}
/*# sourceMappingURL=layout.css.map */