@charset "UTF-8";
.main-panel,
.l-header,
.frontpage-mv {
  --panel-width: 1450px;
  --panel-mragin: 120px;
}
@media (max-width:1480px) {
  .main-panel,
  .l-header,
  .frontpage-mv {
    --panel-width: 1190px;
    --panel-mragin: 120px;
  }
}
@media (max-width:1240px) {
  .main-panel,
  .l-header,
  .frontpage-mv {
    --panel-width: 940px;
    --panel-mragin: 50px;
  }
}
@media (max-width:991px) {
  .main-panel,
  .l-header,
  .frontpage-mv {
    --panel-width: 690px;
    --panel-mragin: 30px;
  }
}
@media (max-width:767px) {
  .main-panel,
  .l-header,
  .frontpage-mv {
    --panel-width: calc(100% - 30px);
    --panel-mragin: 15px;
  }
}

.main-panel.is-side {
  --panel-main-width: 970px;
  --panel-side-width: 290px;
  --panel-mragin-side: 70px;
  --panel-gap: 20px 50px;
}
@media (max-width:1480px) {
  .main-panel.is-side {
    --panel-main-width: 790px;
    --panel-side-width: 260px;
    --panel-mragin-side: 50px;
    --panel-gap: 20px 40px;
  }
}
@media (max-width:1240px) {
  .main-panel.is-side {
    --panel-main-width: 890px;
    --panel-side-width: 290px;
    --panel-mragin-side: 30px;
    --panel-gap: 20px 30px;
  }
}
@media (max-width:991px) {
  .main-panel.is-side {
    --panel-main-width: 100%;
    --panel-side-width: 100%;
    --panel-mragin-side: 30px;
    --panel-gap: 30px;
  }
}
@media (max-width:767px) {
  .main-panel.is-side {
    --panel-mragin-side: 15px;
    --panel-gap: 30px;
  }
}

ul,
ol, h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
}

ul,
ol {
  list-style: none;
}

/*
* font
* --------------------------------------------------*/
html {
  font-size: 16px;
}

html, body {
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
}

body {
  font-size: 16px;
  letter-spacing: 0.3em;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  line-height: 1.9;
  letter-spacing: 0.02em;
}

.ff-mincho {
  font-family: "Shippori Mincho", serif;
}

/*
* base
* --------------------------------------------------*/
/* body
-----------------------------------------------------*/
body {
  background-color: #233775;
  background-image: url(../img/common/bg.png), url(../img/common/bg.png);
  background-position: -100px 0, calc(100% + 280px) 100px;
  background-size: 620px auto;
  background-repeat: repeat-y;
  color: #212121;
  padding-top: 0;
}

img {
  vertical-align: top;
}

/*
-- Layout CSS
-------------------------------------------------- */
.main-wrap {
  overflow: hidden;
}

.main-panel {
  max-width: var(--panel-width);
  width: 100%;
  margin: 0 auto 0;
  background-color: #fff;
  padding: 0 var(--panel-mragin) 100px;
  margin-top: 60px;
  min-height: 40vh;
}
.main-panel > .col-main.is-only {
  max-width: 1110px;
  width: 100%;
  margin: auto;
}
.main-panel.is-side {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0 var(--panel-mragin-side) 100px;
  gap: var(--panel-gap);
}
.main-panel.is-side .breadcrumbs-list {
  width: 100%;
}
.main-panel.is-side > .col-main {
  max-width: var(--panel-main-width);
  width: 100%;
}
.main-panel.is-side > .col-side {
  max-width: var(--panel-side-width);
  width: 100%;
}

@media (max-width:767px) {
  .main-panel {
    margin-top: 40px;
  }
}
.sidebar-inner {
  font-size: 0.875rem;
}
.sidebar-inner .close-btn {
  display: none;
  width: 25px;
  height: 60px;
  padding: 0;
  border: 0;
  border-radius: 5px 0 0 5px;
  background-color: #fff;
  -webkit-box-shadow: 0 0 3px 0 rgba(0, 24, 77, 0.3);
          box-shadow: 0 0 3px 0 rgba(0, 24, 77, 0.3);
  position: absolute;
  top: 140px;
  left: -24px;
}
.sidebar-inner .close-btn .icon-bar {
  position: absolute;
  display: block;
  width: 18px;
  height: 20px;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(0);
          transform: translate(-50%, -50%) rotate(0);
  overflow: hidden;
  -webkit-transition-property: border-top border-bottom;
  transition-property: border-top border-bottom;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
.sidebar-inner .close-btn .icon-bar::before, .sidebar-inner .close-btn .icon-bar::after {
  background-color: #00184D;
  content: "";
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  display: block;
  position: absolute;
  height: 2px;
  width: 16px;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(0);
          transform: translate(-50%, -50%) rotate(0);
}
.sidebar-inner .close-btn .icon-bar::before {
  -webkit-transform: translate(-50%, -50%) rotate(-225deg);
          transform: translate(-50%, -50%) rotate(-225deg);
}
.sidebar-inner .close-btn .icon-bar::after {
  -webkit-transform: translate(-50%, -50%) rotate(225deg);
          transform: translate(-50%, -50%) rotate(225deg);
}
.sidebar-inner .scroll-wrap {
  height: auto;
  overflow: hidden;
}

@media (max-width:1240px) and (min-width:992px) {
  .sidebar-inner {
    background-color: #fff;
    -webkit-box-shadow: 0 0 3px 0 rgba(0, 24, 77, 0.3);
            box-shadow: 0 0 3px 0 rgba(0, 24, 77, 0.3);
    position: fixed;
    top: 0;
    right: 0;
    width: 310px;
    padding: 0 5px 0 0;
    -webkit-transform: translateX(400px);
            transform: translateX(400px);
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-transition-duration: 0.2s;
            transition-duration: 0.2s;
    z-index: 1100;
  }
  .sidebar-inner.is_open {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  .sidebar-inner .close-btn {
    display: block;
    position: absolute;
  }
  .sidebar-inner .scroll-wrap {
    height: 100vh;
    padding: 15px 10px 15px 15px;
    background-color: #fff;
    overflow: scroll;
    position: relative;
    z-index: 2;
  }
}
.col-side .drawer-btn {
  display: none;
  position: absolute;
  top: 140px;
  right: 0;
  border-radius: 5px 0 0 5px;
}

@media (max-width:1240px) and (min-width:992px) {
  .col-side .drawer-btn {
    display: block;
  }
}
.container-small {
  padding-left: 20px;
  padding-right: 20px;
  max-width: 950px;
  margin-left: auto;
  margin-right: auto;
}

@media (max-width:991px) {
  .container {
    padding-left: 15px;
    padding-right: 15px;
    max-width: 100%;
  }
  .container-small {
    padding-left: 15px;
    padding-right: 15px;
    max-width: 100%;
  }
}
.row {
  margin-left: -15px;
  margin-right: -15px;
}
.row > [class*=col-], .row .col {
  padding-left: 15px;
  padding-right: 15px;
}

.row-20 {
  margin-left: -10px;
  margin-right: -10px;
}
.row-20 > [class*=col-],
.row-20 .col {
  padding-left: 10px;
  padding-right: 10px;
}

.row-10 {
  margin-left: -5px;
  margin-right: -5px;
}
.row-10 > [class*=col-], .row-10 .col {
  padding-left: 5px;
  padding-right: 5px;
}

.row-0 {
  margin-left: 0;
  margin-right: 0;
}
.row-0 > [class*=col-], .row-0 .col {
  padding-left: 0;
  padding-right: 0;
}

@media (max-width:991px) {
  .row, .row-10, .row-20 {
    margin-left: -5px;
    margin-right: -5px;
  }
  .row > [class*=col-], .row .col, .row-10 > [class*=col-], .row-10 .col, .row-20 > [class*=col-], .row-20 .col {
    padding-left: 5px;
    padding-right: 5px;
  }
  .row-0 {
    margin-left: 0;
    margin-right: 0;
  }
  .row-0 > [class*=col-], .row-0 .col {
    padding-left: 0;
    padding-right: 0;
  }
}
.column5 > .col {
  max-width: 20%;
  -webkit-box-flex: 20%;
      -ms-flex: 20%;
          flex: 20%;
}

@media (max-width:991px) {
  .column5 > .col-sp-1 {
    max-width: 100%;
    -webkit-box-flex: 100%;
        -ms-flex: 100%;
            flex: 100%;
  }
}
@media (max-width:991px) {
  .column5 > .col-sp-1 {
    max-width: 100%;
    -webkit-box-flex: 100%;
        -ms-flex: 100%;
            flex: 100%;
  }
}
.l-header {
  margin-bottom: 0;
  background-color: #fff;
  position: relative;
}
.l-header .drawer-btn-wrap {
  display: none;
  position: absolute;
  right: 0;
  top: 0;
}

@media (max-width:991px) {
  .l-header .drawer-btn-wrap {
    display: block;
  }
}
.l-header-logo {
  width: 454px;
  padding: 0;
  z-index: 10;
  margin: 8px 0;
}
.l-header-logo .logo-link {
  display: block;
}
.l-header-logo .logo-img {
  max-width: 100%;
  margin-bottom: 0;
}

@media (max-width:991px) {
  .l-header-logo {
    width: 280px;
    padding: 0;
    margin: 0;
  }
}
.l-header-bar {
  padding: 10px 0;
  height: 80px;
}
.l-header-bar > .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: var(--panel-width);
  width: 100%;
  margin: 0 auto;
}
.l-header-bar .bar-links {
  padding: 4px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.l-header-bar .bar-links > .link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #212121;
  text-decoration: none;
}
.l-header-bar .bar-links > .link > .icon {
  margin-right: 5px;
  display: block;
  width: 26px;
  background-color: #00184D;
  border-radius: 100px;
  margin-bottom: 0;
}
.l-header-bar .bar-links > .btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-height: 46px;
}
.l-header-bar .bar-links .link + .link {
  margin-left: 15px;
}
.l-header-bar .bar-links .link + .btn {
  margin-left: 20px;
}
.l-header-bar .bar-links .btn + .btn {
  margin-left: 10px;
}

@media (max-width:1480px) {
  .l-header-bar > .inner {
    padding-left: 20px;
    padding-right: 20px;
    max-width: 100%;
    width: 100%;
  }
}
@media (max-width:991px) {
  .l-header-bar {
    padding: 0 60px 0 15px;
    height: 60px;
  }
  .l-header-bar > .inner {
    padding: 15px 0;
    margin: 0;
  }
  .l-header-bar .bar-links {
    display: none;
  }
}
.drawer-btn {
  width: 60px;
  height: 60px;
  position: relative;
  padding: 0;
  border: 0;
  background-color: transparent;
  z-index: 1030;
  background-color: #00184D;
}
.drawer-btn .icon-bar {
  position: absolute;
  display: block;
  border-top: 2px solid #fff;
  border-bottom: 2px solid #fff;
  border-left: 0;
  border-right: 0;
  width: 24px;
  height: 20px;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(0);
          transform: translate(-50%, -50%) rotate(0);
  overflow: hidden;
  -webkit-transition-property: border-top border-bottom;
  transition-property: border-top border-bottom;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
.drawer-btn .icon-bar::before, .drawer-btn .icon-bar::after {
  background-color: #fff;
  content: "";
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  display: block;
  position: absolute;
  height: 2px;
  width: 22px;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(0);
          transform: translate(-50%, -50%) rotate(0);
}
.drawer-btn:hover, .drawer-btn:active {
  opacity: 1;
}
.drawer-btn.active {
  opacity: 1;
}
.drawer-btn.active .drawer-btn-text.open {
  opacity: 0;
}
.drawer-btn.active .drawer-btn-text.close {
  opacity: 1;
}
.drawer-btn.active .icon-bar {
  border-top: 0;
  border-bottom: 0;
}
.drawer-btn.active .icon-bar::before {
  -webkit-transform: translate(-50%, -50%) rotate(-225deg);
          transform: translate(-50%, -50%) rotate(-225deg);
}
.drawer-btn.active .icon-bar::after {
  -webkit-transform: translate(-50%, -50%) rotate(225deg);
          transform: translate(-50%, -50%) rotate(225deg);
}

.l-search-popup {
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
  -webkit-transition-property: opacity;
  transition-property: opacity;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
.l-search-popup.is_open {
  visibility: visible;
  opacity: 1;
  pointer-events: inherit;
}
.l-search-popup .ovar {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
}
.l-search-popup .inner {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background-color: #F2F9F7;
  z-index: 3;
  padding: 30px;
  max-width: 720px;
  width: calc(100% - 60px);
}
.l-search-popup .btn-close {
  position: absolute;
  top: -20px;
  right: -20px;
  background-image: none;
  background-color: #00184D;
  border-radius: 100px;
  width: 36px;
  height: 36px;
  opacity: 1;
}
.l-search-popup .btn-close::before, .l-search-popup .btn-close::after {
  background-color: #fff;
  content: "";
  display: block;
  position: absolute;
  height: 2px;
  width: 18px;
  left: 50%;
  top: 50%;
}
.l-search-popup .btn-close::before {
  -webkit-transform: translate(-50%, -50%) rotate(-225deg);
          transform: translate(-50%, -50%) rotate(-225deg);
}
.l-search-popup .btn-close::after {
  -webkit-transform: translate(-50%, -50%) rotate(225deg);
          transform: translate(-50%, -50%) rotate(225deg);
}

.l-footer {
  background-color: #00184D;
  color: #fff;
  position: relative;
  z-index: 1;
  padding: 60px 0 0;
}
.l-footer .footer-nav-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 60px;
}
.l-footer .footer-nav-list > .item {
  width: 33.3333%;
}
.l-footer .footer-nav-list .link {
  font-size: 0.875rem;
  color: #fff;
}
.l-footer .footer-nav-list .link::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  margin-right: 8px;
  position: relative;
  top: -2px;
}
.l-footer .btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}
.l-footer .btn + .btn {
  margin-top: 10px;
}
.l-footer .copyright {
  border-top: 1px solid #fff;
  text-align: center;
  font-size: 0.875rem;
  padding: 15px;
  margin-bottom: 0;
}

@media (max-width:767px) {
  .l-footer {
    background-color: #00184D;
    color: #fff;
    position: relative;
    z-index: 1;
    padding: 40px 0 60px;
  }
  .l-footer .footer-nav-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: 20px;
  }
  .l-footer .footer-nav-list > .item {
    width: 50%;
  }
  .l-footer .footer-nav-list .link {
    color: #fff;
  }
  .l-footer .copyright {
    margin-top: 30px;
    border-top: 1px solid #fff;
    text-align: center;
    font-size: 0.875rem;
    padding: 15px;
    margin-bottom: 0;
  }
}
.l-gnav {
  background-color: #00184D;
  color: #fff;
  padding: 0;
  height: 52px;
}
.l-gnav > .inner {
  max-width: var(--panel-width);
  width: 100%;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.l-gnav .gnav-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  padding-left: 5px;
}
.l-gnav .gnav-list .item {
  padding: 0 15px;
  position: relative;
}
.l-gnav .gnav-list .item:first-child {
  padding-left: 0;
}
.l-gnav .gnav-list .item + .item::before {
  content: "";
  display: block;
  background-image: url(../img/common/nav-border.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  width: 4px;
  height: 34px;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.l-gnav .gnav-list .link {
  font-size: 1rem;
  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;
  color: #fff;
  height: 100%;
  text-decoration: none;
  border-bottom: 1px solid #fff;
  padding: 10px;
  -webkit-transition-property: color border;
  transition-property: color border;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
.l-gnav .gnav-list .link:hover {
  color: #EDAA3E;
  border-bottom: 1px solid #EDAA3E;
}
.l-gnav .gnav-list .link .txt-sm {
  font-size: 0.875rem;
  line-height: 1.2;
  display: block;
}
.l-gnav .right-btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.l-gnav .right-btns .search-opne-btn {
  position: relative;
}
.l-gnav .right-btns .search-opne-btn::before {
  content: "";
  display: block;
  background-image: url(../img/common/nav-border.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  width: 4px;
  height: 34px;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.l-gnav .bar-links {
  margin-top: 15px;
  padding: 4px 10px;
  display: none;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.l-gnav .bar-links > .link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.l-gnav .bar-links > .link > .icon {
  margin-right: 5px;
  display: block;
  width: 26px;
  background-color: #00184D;
  border-radius: 100px;
  margin-bottom: 0;
}
.l-gnav .bar-links > .btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-height: 46px;
}
.l-gnav .bar-links .link + .link {
  margin-top: 10px;
}
.l-gnav .bar-links .link + .btn {
  margin-top: 10px;
}
.l-gnav .bar-links .btn + .btn {
  margin-top: 10px;
}

@media (max-width:1480px) {
  .l-gnav .inner {
    max-width: 100%;
    width: 100%;
  }
  .l-gnav .gnav-list .item:first-child {
    padding-left: 15px;
  }
}
@media (max-width:1240px) {
  .l-gnav .inner {
    max-width: 100%;
    width: 100%;
  }
  .l-gnav .gnav-list .item {
    padding: 0 8px;
  }
  .l-gnav .gnav-list .link {
    font-size: 0.9375rem;
  }
}
@media (max-width:991px) {
  .l-gnav {
    position: absolute;
    display: block;
    height: auto;
    z-index: 10000;
    width: 100%;
    padding-bottom: 20px;
    -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.4);
            box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.4);
    -webkit-transition-property: visibility opacity;
    transition-property: visibility opacity;
    -webkit-transition-duration: 0.3s;
            transition-duration: 0.3s;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
  }
  .l-gnav.is_open {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
  }
  .l-gnav .inner {
    display: block;
    height: auto;
  }
  .l-gnav .gnav-list {
    display: block;
    padding-left: 5px;
  }
  .l-gnav .gnav-list .item {
    padding: 0 10px;
  }
  .l-gnav .gnav-list .item + .item::before {
    content: none;
  }
  .l-gnav .gnav-list .item + .item:first-child {
    padding-left: 0;
  }
  .l-gnav .gnav-list .link {
    font-size: 1rem;
    border-bottom: 1px solid #fff;
    padding: 10px;
  }
  .l-gnav .gnav-list .link:hover {
    color: #EDAA3E;
    border-bottom: 1px solid #EDAA3E;
  }
  .l-gnav .bar-links {
    display: block;
  }
  .l-gnav .right-btns {
    display: none;
  }
}
.pull-wrap {
  position: relative;
  height: 52px;
  z-index: 100;
}
.pull-wrap > .link::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  margin-right: 8px;
  position: relative;
  top: -2px;
  z-index: 100;
}
.pull-wrap .child {
  visibility: hidden;
  opacity: 0;
  position: absolute;
  top: 100%;
  left: -15px;
  z-index: 10;
  width: calc(100% + 4px);
  min-width: 230px;
  border: 0;
}
.pull-wrap .child .item {
  width: 100%;
  max-width: 100%;
  border: 0;
}
.pull-wrap .child .item::before, .pull-wrap .child .item::after {
  content: none !important;
}
.pull-wrap .child .item:first-child {
  padding-left: 15px;
}
.pull-wrap:hover .child, .pull-wrap:active .child {
  width: 100%;
  visibility: visible;
  opacity: 1;
  background-color: #00184D;
  height: auto;
}

@media (max-width:991px) {
  .pull-wrap {
    margin: 0;
    height: auto;
  }
  .pull-wrap span.link {
    display: none !important;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .pull-wrap span.link .arrow {
    margin-left: 5px;
  }
  .pull-wrap .child {
    width: 100%;
    visibility: visible;
    opacity: 1;
    position: relative;
    top: 0;
    left: -3px;
    z-index: 10;
    width: calc(100% + 6px);
    border: 0;
  }
  .pull-wrap .child .item {
    width: 100%;
    max-width: 100%;
    border: 0;
  }
  .pull-wrap .child .item:not(:first-child) {
    border-top: 1px solid rgba(0, 0, 0, 0.16);
  }
  .pull-wrap:hover .child, .pull-wrap:active .child {
    width: 100%;
    visibility: visible;
    opacity: 1;
  }
}
.l-search-sp {
  border: 0;
  background: none;
  width: 54px;
  height: 100%;
}
.l-search-sp .search-form {
  display: none;
}
.l-search-sp .search-form .search-submit {
  width: 60px;
  min-width: 60px;
}
.l-search-sp .search-form .form-control {
  font-size: 1rem;
}

@media (max-width:767px) {
  .l-search-sp {
    width: 100%;
    position: relative;
    margin-top: 20px;
    padding: 10px 10px 0;
    border-top: 1px solid rgba(255, 255, 255, 0.3);
  }
  .l-search-sp::before {
    content: none;
  }
  .l-search-sp .search-opne-btn {
    display: none;
  }
  .l-search-sp .search-form {
    display: block;
  }
}
.search-opne-btn {
  border: 0;
  background: none;
  width: 54px;
  height: 100%;
  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;
}
.search-opne-btn .icon {
  width: 26px;
  margin-bottom: 0;
}

.l-search-popup {
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
  -webkit-transition-property: opacity;
  transition-property: opacity;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
.l-search-popup.is_open {
  visibility: visible;
  opacity: 1;
  pointer-events: inherit;
}
.l-search-popup .ovar {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
}
.l-search-popup .inner {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background-color: #F2F9F7;
  z-index: 3;
  padding: 30px;
  max-width: 720px;
  width: calc(100% - 60px);
}
.l-search-popup .btn-close {
  position: absolute;
  top: -20px;
  right: -20px;
  background-image: none;
  background-color: #00184D;
  border-radius: 100px;
  width: 36px;
  height: 36px;
  opacity: 1;
}
.l-search-popup .btn-close::before, .l-search-popup .btn-close::after {
  background-color: #fff;
  content: "";
  display: block;
  position: absolute;
  height: 2px;
  width: 18px;
  left: 50%;
  top: 50%;
}
.l-search-popup .btn-close::before {
  -webkit-transform: translate(-50%, -50%) rotate(-225deg);
          transform: translate(-50%, -50%) rotate(-225deg);
}
.l-search-popup .btn-close::after {
  -webkit-transform: translate(-50%, -50%) rotate(225deg);
          transform: translate(-50%, -50%) rotate(225deg);
}

.side-btn-wrap {
  display: none;
}
.side-btn-wrap .drawer-btn {
  width: 52px;
  height: 52px;
}

@media (max-width:1240px) {
  .side-btn-wrap {
    display: block;
  }
  .side-btn-wrap .drawer-btn {
    width: 52px;
    height: 52px;
  }
}
.fixed-nav {
  position: fixed;
  z-index: 1000;
  right: 0;
  top: 30%;
  width: 60px;
}
.fixed-nav .fixed-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 200px;
  height: 60px;
  padding-left: 60px;
  padding-right: 15px;
  position: relative;
  border-radius: 5px;
  text-align: center;
  line-height: 1.3;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
.fixed-nav .fixed-btn .text {
  width: 100%;
}
.fixed-nav .fixed-btn .icon {
  width: 30px;
  position: absolute;
  border-radius: 5px;
  left: 15px;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
}
.fixed-nav .fixed-btn + .fixed-btn {
  margin-top: 10px;
}
.fixed-nav .fixed-btn:hover, .fixed-nav .fixed-btn:active {
  -webkit-transform: translate(-140px);
          transform: translate(-140px);
  opacity: 1;
}

@media (max-width:767px) {
  .fixed-nav {
    top: auto;
    bottom: 0;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 5px;
    background-color: #00184D;
  }
  .fixed-nav .fixed-btn {
    font-size: 0.875rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 50%;
    height: 60px;
    padding-left: 60px;
    padding-right: 15px;
    position: relative;
    border-radius: 5px;
    text-align: center;
    line-height: 1.3;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    min-height: 48px;
    height: 48px;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-transition-duration: 0.3s;
            transition-duration: 0.3s;
  }
  .fixed-nav .fixed-btn .text {
    width: 100%;
  }
  .fixed-nav .fixed-btn .icon {
    width: 30px;
    position: absolute;
    border-radius: 5px;
    left: 15px;
    top: 50%;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
  }
  .fixed-nav .fixed-btn + .fixed-btn {
    margin-top: 0;
    margin-left: 10px;
  }
  .fixed-nav .fixed-btn:hover, .fixed-nav .fixed-btn:active {
    -webkit-transform: translate(-140px);
            transform: translate(-140px);
    opacity: 1;
  }
  .fixed-nav .fixed-btn:nth-child(3) {
    display: none;
  }
}
.page-header {
  background-size: 20px 100%;
  background-repeat: repeat;
  padding: 55px 0 55px;
  position: relative;
}
.page-header .page-title {
  font-size: 2.625rem;
  color: #fff;
  margin-bottom: 0;
  padding: 0 30px;
  position: relative;
  z-index: 10;
  text-shadow: 0 0 25px rgba(0, 0, 51, 0.8);
}
.page-header .page-sub-title {
  font-size: 1.25rem;
  color: #fff;
  margin: 0;
  padding: 0 30px;
  position: relative;
  z-index: 10;
  text-shadow: 0 0 25px rgba(0, 0, 51, 0.8);
}
.page-header .bg-img {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

@media (max-width:767px) {
  .page-header {
    padding: 35px 0 35px;
  }
  .page-header .page-title {
    font-size: 1.5rem;
    padding: 0 15px;
    text-shadow: 0 0 15px rgba(0, 0, 51, 0.5);
  }
}
.entry-header {
  margin-bottom: 30px;
}
.entry-header .entry-title {
  font-size: 2rem;
  border-bottom: 2px solid #00184D;
  line-height: 1.3;
  margin-top: 20px;
  padding: 0 0 23px;
  position: relative;
}
.entry-header .entry-title::after {
  content: "";
  height: 5px;
  width: 100%;
  display: block;
  position: absolute;
  background-color: #00184D;
  bottom: 3px;
  left: 0;
}
.entry-header .entry-meta {
  margin-top: 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.entry-header .entry-meta > .inner-left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.entry-header .entry-meta .entry-tag {
  margin-left: 15px;
}

@media (max-width:767px) {
  .entry-header {
    margin-bottom: 20px;
  }
  .entry-header .entry-title {
    font-size: 1.5rem;
    padding: 0 0 23px;
    border-bottom: 1px solid #00184D;
  }
  .entry-header .entry-title::after {
    height: 4px;
    bottom: 3px;
  }
  .entry-header .entry-meta {
    margin-top: 10px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .entry-header .entry-meta > .inner-left {
    width: 100%;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .entry-header .entry-meta > .inner-right {
    width: 100%;
  }
  .entry-header .entry-meta .entry-tag {
    width: 100%;
    margin-top: 5px;
    margin-left: 0;
  }
}
.entry-cat {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.entry-cat .link {
  display: inline-block;
  background-color: #00184D;
  color: #fff;
  font-size: 0.875rem;
  padding: 0 10px;
}

@media (max-width:767px) {
  .entry-cat .link {
    font-size: 0.75rem;
    padding: 0 10px;
  }
}
.entry-tag {
  font-size: 0.875rem;
  color: #00184D;
  position: relative;
  padding-left: 20px;
  line-height: 1.3;
}
.entry-tag::before {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  top: 2px;
  width: 16px;
  height: 16px;
  background-image: url(../img/common/icon-tag.svg);
  background-repeat: no-repeat;
  background-position: center;
  margin-right: 0.3rem;
}
.entry-tag .link {
  text-decoration: underline;
}
.entry-tag .link + .link {
  margin-left: 0.5rem;
}

@media (max-width:767px) {
  entry-tag {
    font-size: 0.8125rem;
  }
}
.entry-date {
  margin-bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.entry-date::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  background-image: url(../img/common/icon-time.svg);
  background-repeat: no-repeat;
  background-position: center;
  margin-right: 0.3rem;
}

.entry-contents {
  margin-bottom: 60px;
}
.entry-contents img {
  max-width: 100%;
}

.relation-block .relation-title {
  font-size: 1.5rem;
  line-height: 1.3;
  margin-top: 20px;
  padding: 0 0 23px;
  text-align: center;
  position: relative;
}
.relation-block .relation-title::after {
  content: "";
  height: 6px;
  width: 160px;
  display: block;
  border-top: 3px solid #00184D;
  border-bottom: 1px solid #00184D;
  background-color: #fff;
  margin: 5px auto 0;
}

/*
-- plugin
--------------------------------------------------*/
/*
-- Module CSS
-------------------------------------------------- */
/* テキスト
-----------------------------------------------------*/
p {
  margin-bottom: 20px;
}

em {
  color: #EA6000;
  font-style: normal;
}

strong {
  font-weight: bold;
}

/*リンクテキスト
-----------------------------------------------------*/
a, input[type=submit], input[type=button], button {
  text-decoration: none;
  outline: none;
}
a:hover, a:active, input[type=submit]:hover, input[type=submit]:active, input[type=button]:hover, input[type=button]:active, button:hover, button:active {
  color: #8c8c8c;
  outline: none;
  text-decoration: none;
  opacity: 0.7;
}
a:focus, a:active, input[type=submit]:focus, input[type=submit]:active, input[type=button]:focus, input[type=button]:active, button:focus, button:active {
  outline: none;
  text-decoration: none;
}
a:active:focus, a:active.focus, a.active:focus, a.active.focus, input[type=submit]:active:focus, input[type=submit]:active.focus, input[type=submit].active:focus, input[type=submit].active.focus, input[type=button]:active:focus, input[type=button]:active.focus, input[type=button].active:focus, input[type=button].active.focus, button:active:focus, button:active.focus, button.active:focus, button.active.focus {
  outline: none;
  text-decoration: none;
}

a {
  color: #1a0dab;
  text-decoration: underline;
}
a:visited {
  font-weight: bold;
}
a.btn:visited {
  font-weight: normal;
}

/* img
-----------------------------------------------------*/
figure {
  margin-bottom: 30px;
}
figure img {
  margin-bottom: 0;
}

img {
  margin-bottom: 30px;
}

/* placeholder
-----------------------------------------------------*/
input:-moz-placeholder-shown, .form-control:-moz-placeholder-shown {
  color: #CDD6DD;
}
input:-ms-input-placeholder, .form-control:-ms-input-placeholder {
  color: #CDD6DD;
}
input:placeholder-shown, .form-control:placeholder-shown {
  color: #CDD6DD;
}
input::-webkit-input-placeholder, .form-control::-webkit-input-placeholder {
  color: #CDD6DD;
}
input:-moz-placeholder, .form-control:-moz-placeholder {
  color: #CDD6DD;
  opacity: 1;
}
input::-moz-placeholder, .form-control::-moz-placeholder {
  color: #CDD6DD;
  opacity: 1;
}
input:-ms-input-placeholder, .form-control:-ms-input-placeholder {
  color: #CDD6DD;
}
input:focus, .form-control:focus {
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}

/* 見出し
-----------------------------------------------------*/
h1, h2, h3, h4, h5, h6 {
  font-size: 1.125rem;
  font-weight: 500;
  word-wrap: break-word;
  color: #212121;
  line-height: 1.5;
  margin-top: 0;
  margin-bottom: 0;
  position: relative;
}
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  color: #212121;
  text-decoration: none;
}

.h2, .entry-contents h2, .edit-post-visual-editor h2 {
  font-size: 1.875rem;
  font-weight: 500;
  position: relative;
  color: #fff;
  padding: 13px 10px 17px 30px;
  background-color: #00184D;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(60%, #00184d), color-stop(90%, rgba(0, 24, 77, 0))), url(../img/common/h2-pattern.png);
  background-image: linear-gradient(left, #00184d 60%, rgba(0, 24, 77, 0) 90%), url(../img/common/h2-pattern.png);
  background-position: center;
  letter-spacing: 0.03em;
}
@media (max-width:767px) {
  .h2, .entry-contents h2, .edit-post-visual-editor h2 {
    font-size: 1.5rem;
  }
}
.h2::after, .entry-contents h2::after, .edit-post-visual-editor h2::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 0;
  display: block;
  height: 100%;
  width: 2px;
  background-color: #fff;
}

.h3, .entry-contents h3 {
  font-size: 1.5rem;
  font-weight: 600;
  position: relative;
  letter-spacing: 0.03em;
  border-bottom: 1px solid #00184D;
  background-color: rgba(0, 24, 77, 0.07);
  background-image: url(../img/common/h3-pattern.png);
  background-position: center -5px;
  line-height: 1.5;
  padding: 8px 15px 13px;
  position: relative;
}
@media (max-width:767px) {
  .h3, .entry-contents h3 {
    font-size: 1.25rem;
    font-weight: bold;
  }
}
.h3::after, .entry-contents h3::after {
  content: "";
  height: 3px;
  width: 100%;
  display: block;
  position: absolute;
  background-color: #00184D;
  bottom: 2px;
  left: 0;
}

@media (max-width:767px) {
  .h3, .entry-contents h3 {
    padding-bottom: 8px;
  }
}
.h4, .entry-contents h4 {
  font-size: 1.375rem;
  font-weight: bold;
  position: relative;
  padding-left: 18px;
}
@media (max-width:767px) {
  .h4, .entry-contents h4 {
    font-size: 1.125rem;
    font-weight: bold;
  }
}
.h4::after, .entry-contents h4::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  height: 100%;
  width: 8px;
  border-left: 5px solid #00184D;
  border-right: 1px solid #00184D;
  background-color: #fff;
}

.h5, .entry-contents h5 {
  font-size: 1.25rem;
  font-weight: bold;
  padding-left: 22px;
}
@media (max-width:767px) {
  .h5, .entry-contents h5 {
    font-size: 1rem;
    font-weight: bold;
  }
}
.h5::after, .entry-contents h5::after {
  content: "";
  position: absolute;
  left: 0;
  top: 10px;
  display: block;
  height: 12px;
  width: 12px;
  border: 1px solid #00184D;
  background-color: #fff;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(0, #00184D), to(#00184D));
  background-image: linear-gradient(left, #00184D 0, #00184D 100%);
  background-size: 8px 8px;
  background-repeat: no-repeat;
  background-position: center;
}

.entry-contents h2:not(:first-child) {
  margin-top: 80px;
}
.entry-contents h3:not(:first-child), .entry-contents h4:not(:first-child) {
  margin-top: 50px;
}
.entry-contents h2 {
  margin-bottom: 20px;
}
.entry-contents h3 {
  margin-bottom: 20px;
}
.entry-contents h4 {
  margin-bottom: 15px;
}
.entry-contents h5 {
  margin-bottom: 10px;
}

/* table
-----------------------------------------------------*/
.table, .entry-contents table, .wp-block-table table {
  margin: 0;
  width: 100%;
  margin-bottom: 20px;
}
.table tbody tr th, .table tbody tr td, .table thead tr th, .table thead tr td, .table tfoot tr th, .table tfoot tr td, .entry-contents table tbody tr th, .entry-contents table tbody tr td, .entry-contents table thead tr th, .entry-contents table thead tr td, .entry-contents table tfoot tr th, .entry-contents table tfoot tr td, .wp-block-table table tbody tr th, .wp-block-table table tbody tr td, .wp-block-table table thead tr th, .wp-block-table table thead tr td, .wp-block-table table tfoot tr th, .wp-block-table table tfoot tr td {
  border-top: 1px solid rgba(0, 24, 77, 0.3);
  border-bottom: 1px solid rgba(0, 24, 77, 0.3);
  border-left: 1px solid rgba(0, 24, 77, 0.3);
  border-right: 1px solid rgba(0, 24, 77, 0.3);
  vertical-align: top;
  padding: 15px 15px;
}
.table tbody tr th, .table thead tr th, .table tfoot tr th, .entry-contents table tbody tr th, .entry-contents table thead tr th, .entry-contents table tfoot tr th, .wp-block-table table tbody tr th, .wp-block-table table thead tr th, .wp-block-table table tfoot tr th {
  background-color: #F2F9F7;
}
.table img, .entry-contents table img, .wp-block-table table img {
  vertical-align: top;
}
@media (max-width:767px) {
  .table.table-sp-break, .entry-contents table.table-sp-break, .wp-block-table table.table-sp-break {
    display: block;
  }
  .table.table-sp-break tbody, .table.table-sp-break thead, .table.table-sp-break tfoot, .entry-contents table.table-sp-break tbody, .entry-contents table.table-sp-break thead, .entry-contents table.table-sp-break tfoot, .wp-block-table table.table-sp-break tbody, .wp-block-table table.table-sp-break thead, .wp-block-table table.table-sp-break tfoot {
    display: block;
  }
  .table.table-sp-break tbody tr, .table.table-sp-break thead tr, .table.table-sp-break tfoot tr, .entry-contents table.table-sp-break tbody tr, .entry-contents table.table-sp-break thead tr, .entry-contents table.table-sp-break tfoot tr, .wp-block-table table.table-sp-break tbody tr, .wp-block-table table.table-sp-break thead tr, .wp-block-table table.table-sp-break tfoot tr {
    display: block;
  }
  .table.table-sp-break tbody tr th, .table.table-sp-break tbody tr td, .table.table-sp-break thead tr th, .table.table-sp-break thead tr td, .table.table-sp-break tfoot tr th, .table.table-sp-break tfoot tr td, .entry-contents table.table-sp-break tbody tr th, .entry-contents table.table-sp-break tbody tr td, .entry-contents table.table-sp-break thead tr th, .entry-contents table.table-sp-break thead tr td, .entry-contents table.table-sp-break tfoot tr th, .entry-contents table.table-sp-break tfoot tr td, .wp-block-table table.table-sp-break tbody tr th, .wp-block-table table.table-sp-break tbody tr td, .wp-block-table table.table-sp-break thead tr th, .wp-block-table table.table-sp-break thead tr td, .wp-block-table table.table-sp-break tfoot tr th, .wp-block-table table.table-sp-break tfoot tr td {
    display: block;
    width: 100%;
  }
}
.table.table-sp-break tbody th, .table.table-sp-break thead th, .table.table-sp-break tfoot th, .entry-contents table.table-sp-break tbody th, .entry-contents table.table-sp-break thead th, .entry-contents table.table-sp-break tfoot th, .wp-block-table table.table-sp-break tbody th, .wp-block-table table.table-sp-break thead th, .wp-block-table table.table-sp-break tfoot th {
  border-top: 0;
  border-bottom: 0;
}
.table.table-sp-break tbody td, .table.table-sp-break thead td, .table.table-sp-break tfoot td, .entry-contents table.table-sp-break tbody td, .entry-contents table.table-sp-break thead td, .entry-contents table.table-sp-break tfoot td, .wp-block-table table.table-sp-break tbody td, .wp-block-table table.table-sp-break thead td, .wp-block-table table.table-sp-break tfoot td {
  border-top: 0;
}

@media (max-width:767px) {
  .table-sp-break {
    display: block;
  }
  .table-sp-break tbody, .table-sp-break thead, .table-sp-break tfoot {
    display: block;
  }
  .table-sp-break tbody tr, .table-sp-break thead tr, .table-sp-break tfoot tr {
    display: block;
  }
  .table-sp-break tbody tr th, .table-sp-break tbody tr td, .table-sp-break thead tr th, .table-sp-break thead tr td, .table-sp-break tfoot tr th, .table-sp-break tfoot tr td {
    display: block;
    width: 100%;
  }
}

.wp-block-table {
  margin-top: 30px;
  margin-bottom: 30px;
}
.wp-block-table table {
  margin: 0;
}

/* list
-----------------------------------------------------*/
.ul > li, .ol > li {
  margin-bottom: 0;
  padding-left: 1.2em;
  position: relative;
}
.ul > li:last-child, .ol > li:last-child {
  margin-bottom: 0;
}
.ul > li li, .ol > li li {
  margin-top: 0;
  margin-bottom: 0;
}
.ul > li::before {
  content: "";
  position: absolute;
  display: block;
  width: 6px;
  height: 6px;
  top: 0.8em;
  left: 3px;
  margin: 0;
  background-color: #00184D;
}
.ul > li li::before {
  content: "";
  position: absolute;
  display: block;
  width: 8px;
  height: 2px;
  top: 0.9em;
  left: 3px;
  margin: 0;
  background-color: #00184D;
}
.ol > li {
  counter-increment: item;
  margin-bottom: 0;
}
.ol > li::before {
  font-family: "Shippori Mincho", serif;
  font-size: 1rem;
  font-weight: bold;
  content: counter(item) ".";
  color: #00184D;
  position: absolute;
  left: 0;
  padding-right: 0.5em;
}
.entry-contents ul, .entry-contents ol {
  margin-bottom: 20px;
}
.entry-contents ul > li, .entry-contents ol > li {
  margin-bottom: 0;
  padding-left: 1.2em;
  position: relative;
}
.entry-contents ul > li:last-child, .entry-contents ol > li:last-child {
  margin-bottom: 0;
}
.entry-contents ul > li li, .entry-contents ol > li li {
  margin-top: 0;
  margin-bottom: 0;
}
.entry-contents ul > li::before {
  content: "";
  position: absolute;
  display: block;
  width: 6px;
  height: 6px;
  top: 0.8em;
  left: 3px;
  margin: 0;
  background-color: #00184D;
}
.entry-contents ul > li li::before {
  content: "";
  position: absolute;
  display: block;
  width: 8px;
  height: 2px;
  top: 0.9em;
  left: 3px;
  margin: 0;
  background-color: #00184D;
}
.entry-contents ol > li {
  counter-increment: item;
  margin-bottom: 0;
}
.entry-contents ol > li::before {
  font-family: "Shippori Mincho", serif;
  font-size: 1rem;
  font-weight: bold;
  content: counter(item) ".";
  color: #00184D;
  position: absolute;
  left: 0;
  padding-right: 0.5em;
}
/* hr
-----------------------------------------------------*/
hr {
  margin-top: 30px;
  margin-bottom: 30px;
  border: 0;
}

.hr-dashed {
  border-top: 1px dashed #212121;
}

.t-wp30 {
  width: 30%;
}

.t-wp25 {
  width: 25%;
}

.t-wp20 {
  width: 20%;
}

.t-wp15 {
  width: 15%;
}

blockquote, .wp-block-quote {
  background-color: #F2F9F7;
  padding: 30px 30px 30px 35px;
  background-image: url(../img/common/icon-blockquote.svg);
  background-repeat: no-repeat;
  background-position: 13px 5px;
  background-size: 22px auto;
  position: relative;
  border: 0;
}
blockquote::before, .wp-block-quote::before {
  content: "";
  position: absolute;
  left: 5px;
  top: 0;
  display: block;
  height: 100%;
  width: 3px;
  background-color: rgba(0, 24, 77, 0.3);
}
blockquote p:last-child, blockquote img:last-child, blockquote ul:last-child, blockquote ol:last-child, blockquote li:last-child, .wp-block-quote p:last-child, .wp-block-quote img:last-child, .wp-block-quote ul:last-child, .wp-block-quote ol:last-child, .wp-block-quote li:last-child {
  margin-bottom: 0;
}

.breadcrumbs-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  border-bottom: 1px solid #c4c4c4;
  padding: 15px 0;
}
.breadcrumbs-list .item {
  margin-right: 0.3rem;
}
.breadcrumbs-list .item + .item::before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  background-image: url(../img/common/arrow-sm.svg);
  background-repeat: no-repeat;
  background-position: center;
  margin-right: 0.3rem;
}
.breadcrumbs-list .link {
  font-size: 0.8125rem;
}
.breadcrumbs-list a.link {
  text-decoration: underline;
}

.search-form .search-submit {
  width: 54px;
  min-width: 54px;
}
.search-form .search-submit .icon {
  margin: 0;
}

.form-row p {
  margin-bottom: 0;
}
.form-row + .form-row {
  margin-top: 20px;
}

.form-btns {
  margin-top: 50px;
}
.form-btns > p {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 0;
  gap: 16px;
}
.form-btns .wpcf7-spinner {
  width: 100%;
  height: 0;
  padding: 0;
  margin: 0;
}

.input-group > p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 0;
}
.input-group + .input-group {
  margin-top: 10px;
}
.input-group .sub-label + .sub-label, .input-group .sub-label + .form-control, .input-group .sub-label + .form-select, .input-group .sub-label + .wpcf7-form-control-wrap, .input-group .form-control + .sub-label, .input-group .form-control + .form-control, .input-group .form-control + .form-select, .input-group .form-control + .wpcf7-form-control-wrap, .input-group .form-select + .sub-label, .input-group .form-select + .form-control, .input-group .form-select + .form-select, .input-group .form-select + .wpcf7-form-control-wrap, .input-group .wpcf7-form-control-wrap + .sub-label, .input-group .wpcf7-form-control-wrap + .form-control, .input-group .wpcf7-form-control-wrap + .form-select, .input-group .wpcf7-form-control-wrap + .wpcf7-form-control-wrap {
  margin-left: 1em;
}

.form-control-short {
  width: 140px;
}

.required {
  font-size: 0.6875rem;
  display: inline-block;
  background-color: #C30D23;
  color: #fff;
  line-height: 1.3;
  margin-left: 1em;
  padding: 1px 5px 3px;
}

.btn {
  text-decoration: none;
  font-size: 0.875rem;
  font-weight: normal;
  border-radius: 5px;
  position: relative;
  white-space: normal;
  letter-spacing: 0;
  padding: 5px 10px;
  min-width: 120px;
  min-height: 52px;
  text-align: center;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.btn:focus, .btn:disabled, .btn:visited, .btn:focus {
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  text-decoration: none;
}
.btn:not(:disabled):not(.disabled):active, .btn:not(:disabled):not(.disabled).active, .btn:not(:disabled):not(.disabled):active:focus {
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  text-decoration: none;
}
.btn:hover, .btn:active, .btn.touch {
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  text-decoration: none;
}
.btn.btn-arrow::after {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  margin-left: 2px;
  position: relative;
  top: -1px;
}
.btn.btn-sm {
  min-height: 42px;
  font-size: 0.875rem;
  font-weight: normal;
}
.btn .icon {
  width: 20px;
  margin-bottom: 0;
  margin-right: 6px;
}

.btn {
  background-color: #111;
  border: 1px solid #111;
  color: #fff;
}
.btn:focus, .btn:disabled, .btn:visited, .btn:focus {
  background-color: #111;
  border: 1px solid #111;
  color: #fff;
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.btn:not(:disabled):not(.disabled):active, .btn:not(:disabled):not(.disabled).active, .btn:not(:disabled):not(.disabled):active:focus {
  background-color: inherit;
  border: 1px solid inherit;
  color: inherit;
}
.btn:hover, .btn:active, .btn.touch {
  background-color: #111;
  border: 1px solid #111;
  color: #fff;
  opacity: 0.7;
}

.btn-green, .btn-primary {
  background-color: #34CC33;
  border: 1px solid #34CC33;
  color: #fff;
}
.btn-green:focus, .btn-green:disabled, .btn-green:visited, .btn-green:focus, .btn-primary:focus, .btn-primary:disabled, .btn-primary:visited, .btn-primary:focus {
  background-color: #34CC33;
  border: 1px solid #34CC33;
  color: #fff;
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.btn-green:not(:disabled):not(.disabled):active, .btn-green:not(:disabled):not(.disabled).active, .btn-green:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active, .btn-primary:not(:disabled):not(.disabled):active:focus {
  background-color: inherit;
  border: 1px solid inherit;
  color: inherit;
}
.btn-green:hover, .btn-green:active, .btn-green.touch, .btn-primary:hover, .btn-primary:active, .btn-primary.touch {
  background-color: #34CC33;
  border: 1px solid #34CC33;
  color: #fff;
  opacity: 0.7;
}

.btn-navy, .btn-success {
  background-color: #00184D;
  border: 1px solid #00184D;
  color: #fff;
}
.btn-navy:focus, .btn-navy:disabled, .btn-navy:visited, .btn-navy:focus, .btn-success:focus, .btn-success:disabled, .btn-success:visited, .btn-success:focus {
  background-color: #00184D;
  border: 1px solid #00184D;
  color: #fff;
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.btn-navy:not(:disabled):not(.disabled):active, .btn-navy:not(:disabled):not(.disabled).active, .btn-navy:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active, .btn-success:not(:disabled):not(.disabled):active:focus {
  background-color: inherit;
  border: 1px solid inherit;
  color: inherit;
}
.btn-navy:hover, .btn-navy:active, .btn-navy.touch, .btn-success:hover, .btn-success:active, .btn-success.touch {
  background-color: #00184D;
  border: 1px solid #00184D;
  color: #fff;
  opacity: 0.7;
}

.btn-red, .btn-danger {
  background-color: #C30D23;
  border: 1px solid #C30D23;
  color: #fff;
}
.btn-red:focus, .btn-red:disabled, .btn-red:visited, .btn-red:focus, .btn-danger:focus, .btn-danger:disabled, .btn-danger:visited, .btn-danger:focus {
  background-color: #C30D23;
  border: 1px solid #C30D23;
  color: #fff;
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.btn-red:not(:disabled):not(.disabled):active, .btn-red:not(:disabled):not(.disabled).active, .btn-red:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active, .btn-danger:not(:disabled):not(.disabled):active:focus {
  background-color: inherit;
  border: 1px solid inherit;
  color: inherit;
}
.btn-red:hover, .btn-red:active, .btn-red.touch, .btn-danger:hover, .btn-danger:active, .btn-danger.touch {
  background-color: #C30D23;
  border: 1px solid #C30D23;
  color: #fff;
  opacity: 0.7;
}

.btn-orange, .btn-warning {
  background-color: #EDAA3E;
  border: 1px solid #EDAA3E;
  color: #fff;
}
.btn-orange:focus, .btn-orange:disabled, .btn-orange:visited, .btn-orange:focus, .btn-warning:focus, .btn-warning:disabled, .btn-warning:visited, .btn-warning:focus {
  background-color: #EDAA3E;
  border: 1px solid #EDAA3E;
  color: #fff;
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.btn-orange:not(:disabled):not(.disabled):active, .btn-orange:not(:disabled):not(.disabled).active, .btn-orange:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active, .btn-warning:not(:disabled):not(.disabled):active:focus {
  background-color: inherit;
  border: 1px solid inherit;
  color: inherit;
}
.btn-orange:hover, .btn-orange:active, .btn-orange.touch, .btn-warning:hover, .btn-warning:active, .btn-warning.touch {
  background-color: #EDAA3E;
  border: 1px solid #EDAA3E;
  color: #fff;
  opacity: 0.7;
}

.btn-blue, .btn-info {
  background-color: #61d0fe;
  border: 1px solid #61d0fe;
  color: #fff;
}
.btn-blue:focus, .btn-blue:disabled, .btn-blue:visited, .btn-blue:focus, .btn-info:focus, .btn-info:disabled, .btn-info:visited, .btn-info:focus {
  background-color: #61d0fe;
  border: 1px solid #61d0fe;
  color: #fff;
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.btn-blue:not(:disabled):not(.disabled):active, .btn-blue:not(:disabled):not(.disabled).active, .btn-blue:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active, .btn-info:not(:disabled):not(.disabled):active:focus {
  background-color: inherit;
  border: 1px solid inherit;
  color: inherit;
}
.btn-blue:hover, .btn-blue:active, .btn-blue.touch, .btn-info:hover, .btn-info:active, .btn-info.touch {
  background-color: #61d0fe;
  border: 1px solid #61d0fe;
  color: #fff;
  opacity: 0.7;
}

.btn-black, .btn-secondary {
  background-color: #111;
  border: 1px solid #111;
  color: #fff;
}
.btn-black:focus, .btn-black:disabled, .btn-black:visited, .btn-black:focus, .btn-secondary:focus, .btn-secondary:disabled, .btn-secondary:visited, .btn-secondary:focus {
  background-color: #111;
  border: 1px solid #111;
  color: #fff;
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.btn-black:not(:disabled):not(.disabled):active, .btn-black:not(:disabled):not(.disabled).active, .btn-black:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active, .btn-secondary:not(:disabled):not(.disabled):active:focus {
  background-color: inherit;
  border: 1px solid inherit;
  color: inherit;
}
.btn-black:hover, .btn-black:active, .btn-black.touch, .btn-secondary:hover, .btn-secondary:active, .btn-secondary.touch {
  background-color: #111;
  border: 1px solid #111;
  color: #fff;
  opacity: 0.7;
}

@-webkit-keyframes GradietionAnimation {
  0% {
    background-position: 0% 100%;
  }
  100% {
    background-position: 0% 0%;
  }
}

@keyframes GradietionAnimation {
  0% {
    background-position: 0% 100%;
  }
  100% {
    background-position: 0% 0%;
  }
}
.btn-cta {
  font-size: 2rem;
  -webkit-box-shadow: 0px 0px 2px 1px #0c560a, inset 0 -5px 20px 0 rgba(255, 255, 255, 0.4), inset 0 -1px 1px 0 rgb(52, 204, 51);
          box-shadow: 0px 0px 2px 1px #0c560a, inset 0 -5px 20px 0 rgba(255, 255, 255, 0.4), inset 0 -1px 1px 0 rgb(52, 204, 51);
  background-image: -webkit-gradient(linear, left bottom, left top, color-stop(5%, #4ef34d), color-stop(45%, #28bb27), color-stop(55%, #28bb27), color-stop(95%, #4ef34d));
  background-image: linear-gradient(0deg, #4ef34d 5%, #28bb27 45%, #28bb27 55%, #4ef34d 95%);
  background-color: #34CC33;
  background-size: 100% 200%;
  background-position: 0 100%;
  background-color: #34CC33;
  border: 3px solid #34CC33;
  color: #000;
  border-radius: 15px;
  max-width: 720px;
  width: 100%;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-height: 74px;
  -webkit-transition-property: background-poition;
  transition-property: background-poition;
  -webkit-transition-duration: 0.2s;
          transition-duration: 0.2s;
  line-height: 1.3;
}
.btn-cta > .icon {
  margin-right: 10px;
  display: block;
  width: 38px;
  margin-bottom: 0;
  -webkit-transition-property: color border;
  transition-property: color border;
  -webkit-transition-duration: 0.2s;
          transition-duration: 0.2s;
  position: relative;
  top: -2px;
}
.btn-cta:focus, .btn-cta:disabled, .btn-cta:visited, .btn-cta:focus {
  -webkit-box-shadow: 0px 0px 2px 1px #0c560a, inset 0 -5px 20px 0 rgba(255, 255, 255, 0.4), inset 0 -1px 1px 0 rgb(52, 204, 51);
          box-shadow: 0px 0px 2px 1px #0c560a, inset 0 -5px 20px 0 rgba(255, 255, 255, 0.4), inset 0 -1px 1px 0 rgb(52, 204, 51);
  background-image: -webkit-gradient(linear, left bottom, left top, color-stop(5%, #4ef34d), color-stop(45%, #28bb27), color-stop(55%, #28bb27), color-stop(95%, #4ef34d));
  background-image: linear-gradient(0deg, #4ef34d 5%, #28bb27 45%, #28bb27 55%, #4ef34d 95%);
  background-color: #34CC33;
  background-size: 100% 200%;
  background-position: 0 0;
  border: 3px solid #34CC33;
  color: #000;
}
.btn-cta:not(:disabled):not(.disabled):active, .btn-cta:not(:disabled):not(.disabled).active, .btn-cta:not(:disabled):not(.disabled):active:focus {
  -webkit-box-shadow: 0px 0px 2px 1px #0c560a, inset 0 -5px 20px 0 rgba(255, 255, 255, 0.4), inset 0 -1px 1px 0 rgb(52, 204, 51);
          box-shadow: 0px 0px 2px 1px #0c560a, inset 0 -5px 20px 0 rgba(255, 255, 255, 0.4), inset 0 -1px 1px 0 rgb(52, 204, 51);
  background-image: -webkit-gradient(linear, left bottom, left top, color-stop(5%, #4ef34d), color-stop(45%, #28bb27), color-stop(55%, #28bb27), color-stop(95%, #4ef34d));
  background-image: linear-gradient(0deg, #4ef34d 5%, #28bb27 45%, #28bb27 55%, #4ef34d 95%);
  background-color: #34CC33;
  background-size: 100% 200%;
  background-color: #34CC33;
  border: 3px solid #34CC33;
  color: #000;
}
.btn-cta:hover, .btn-cta:active, .btn-cta.touch {
  -webkit-box-shadow: 0px 0px 2px 1px #0c560a, inset 0 -5px 20px 0 rgba(255, 255, 255, 0.4), inset 0 -1px 1px 0 rgb(52, 204, 51);
          box-shadow: 0px 0px 2px 1px #0c560a, inset 0 -5px 20px 0 rgba(255, 255, 255, 0.4), inset 0 -1px 1px 0 rgb(52, 204, 51);
  background-image: -webkit-gradient(linear, left bottom, left top, color-stop(5%, #4ef34d), color-stop(45%, #28bb27), color-stop(55%, #28bb27), color-stop(95%, #4ef34d));
  background-image: linear-gradient(0deg, #4ef34d 5%, #28bb27 45%, #28bb27 55%, #4ef34d 95%);
  background-color: #34CC33;
  background-size: 100% 200%;
  background-position: 0 0;
  background-color: #34CC33;
  border: 3px solid #34CC33;
  color: rgba(0, 0, 0, 0.8);
  opacity: 1;
}
.btn-cta:hover > .icon, .btn-cta:active > .icon, .btn-cta.touch > .icon {
  opacity: 0.8;
}

@media (max-width:767px) {
  .btn-cta {
    font-size: 1.5rem;
    padding-left: 20px;
    padding-right: 20px;
  }
  .btn-cta > .icon {
    opacity: 0.6;
    position: relative;
    top: -2px;
    width: 34px;
    margin-right: 6px;
  }
}
/*
box-shadow: 0px 0px 1px 1px #0c560a,
inset 0 -5px 15px 0 rgba(255, 255, 255, 0.3);
background-image: linear-gradient(0deg, #fed282 0, #F7B63E 90%);
box-shadow: 0px 0px 1px 1px #0c560a,
inset 0 -5px 15px 0 rgba(255, 255, 255, 0.3);
background-image: linear-gradient(0deg, #fed282 0, #F7B63E 90%);
bo
*/
.btn-bubble {
  background-color: #111;
  border: 1px solid #111;
  color: #fff;
  font-size: 1.5rem;
  max-width: 720px;
  width: 100%;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  min-height: 68px;
  position: relative;
  z-index: 15;
  line-height: 1.3;
  font-family: "Shippori Mincho", serif;
}
.btn-bubble:focus, .btn-bubble:disabled, .btn-bubble:visited, .btn-bubble:focus {
  background-color: #111;
  border: 1px solid #111;
  color: #fff;
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.btn-bubble:not(:disabled):not(.disabled):active, .btn-bubble:not(:disabled):not(.disabled).active, .btn-bubble:not(:disabled):not(.disabled):active:focus {
  background-color: inherit;
  border: 1px solid inherit;
  color: inherit;
}
.btn-bubble:hover, .btn-bubble:active, .btn-bubble.touch {
  background-color: #111;
  border: 1px solid #111;
  color: #fff;
  opacity: 0.7;
}
.btn-bubble::before {
  content: "";
  display: block;
  position: absolute;
  left: 80%;
  top: -25px;
  width: 20px;
  height: 25px;
  background-color: #111;
  z-index: 3;
  clip-path: polygon(0 0, 100% 100%, 0 100%);
}
.btn-bubble .main-text {
  font-size: 1.5rem;
  width: 100%;
}
.btn-bubble .sub-text {
  font-size: 1.125rem;
  width: 100%;
}

@media (max-width:767px) {
  .btn-bubble {
    font-size: 1.125rem;
    min-height: 68px;
  }
  .btn-bubble .main-text {
    font-size: 1.25rem;
  }
  .btn-bubble .sub-text {
    font-size: 0.875rem;
  }
}
.btns-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 16px;
  margin-bottom: 20px;
}
.btns-row.btns-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.btns-row .btn {
  max-width: calc(45% - 10px);
  -webkit-box-flex: calc(45% - 10px);
      -ms-flex: calc(45% - 10px);
          flex: calc(45% - 10px);
  margin-bottom: 0;
}

@media (max-width:767px) {
  .btns-row .btn {
    max-width: 100%;
    -webkit-box-flex: 100%;
        -ms-flex: 100%;
            flex: 100%;
  }
}
.icon-arrow {
  position: relative;
}
.icon-arrow:before {
  content: "";
  display: block;
  position: absolute;
  width: 16px;
  height: 16px;
  right: 0;
  top: 50%;
  bottom: 0;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  background-image: url(../img/common/arrow01.svg);
  background-position: center;
  background-size: auto 16px;
}

.icon-plus {
  position: relative;
}
.icon-plus:before {
  content: "";
  display: block;
  position: absolute;
  width: 18px;
  height: 18px;
  right: 12px;
  top: 50%;
  bottom: 0;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  background-color: transparent;
  background-image: linear-gradient(90deg, transparent calc(50% - 1px), #FCF4F4 calc(50% - 1px), #FCF4F4 calc(50% + 1px), transparent calc(50% + 1px)), linear-gradient(0deg, transparent calc(50% - 1px), #FCF4F4 calc(50% - 1px), #FCF4F4 calc(50% + 1px), transparent calc(50% + 1px));
  background-position: center;
  background-size: auto 16px;
}

.entry-lsit {
  margin-top: 40px;
}
.entry-lsit .list-item {
  margin-bottom: 30px;
}

.entry-card .thumbnail-wrap {
  margin-bottom: 7px;
}
.entry-card .entry-link {
  display: block;
  text-decoration: none;
  color: #212121;
}
.entry-card .entry-cat > .link {
  font-size: 0.75rem;
}
.entry-card .title {
  line-height: 1.5;
  margin-bottom: 0;
}
.entry-card .entry-date {
  margin-top: 5px;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  font-size: 0.75rem;
}

.pagination {
  margin-top: 50px;
}
.pagination .screen-reader-text {
  display: none;
}
.pagination .nav-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.pagination .nav-links .page-numbers {
  font-size: 0.875rem;
  color: #00184D;
  background-color: #F2F9F7;
  border: 1px solid rgba(0, 24, 77, 0.3);
  border-radius: 5px;
  margin-left: 5px;
  margin-right: 5px;
  display: block;
  min-width: 38px;
  padding: 5px 10px;
  text-align: center;
}
.pagination .nav-links .page-numbers.current {
  color: #fff;
  background-color: #00184D;
  border: 1px solid #00184D;
}
.pagination .nav-links .page-numbers:active, .pagination .nav-links .page-numbers:hover, .pagination .nav-links .page-numbers:focus {
  opacity: 0.7;
  background-color: #00184D;
  color: #fff;
}
.pagination .nav-links .page-numbers:active.current, .pagination .nav-links .page-numbers:hover.current, .pagination .nav-links .page-numbers:focus.current {
  opacity: 1;
  color: #999;
  background-color: #00184D;
  border: 1px solid #00184D;
}
.pagination .nav-links .prev,
.pagination .nav-links .next {
  padding: 5px 15px;
  background-color: #F2F9F7;
}
.pagination .nav-links .prev {
  margin-left: 0;
  margin-right: 20px;
}
.pagination .nav-links .next {
  margin-left: 20px;
  margin-right: 0;
}

.voice-cat-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 20px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 40px;
}
.voice-cat-list .btn {
  background-color: #EDAA3E;
  border: 1px solid #EDAA3E;
  color: #fff;
  width: calc(50% - 10px);
}
.voice-cat-list .btn:focus, .voice-cat-list .btn:disabled, .voice-cat-list .btn:visited, .voice-cat-list .btn:focus {
  background-color: #EDAA3E;
  border: 1px solid #EDAA3E;
  color: #fff;
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.voice-cat-list .btn:not(:disabled):not(.disabled):active, .voice-cat-list .btn:not(:disabled):not(.disabled).active, .voice-cat-list .btn:not(:disabled):not(.disabled):active:focus {
  background-color: inherit;
  border: 1px solid inherit;
  color: inherit;
}
.voice-cat-list .btn:hover, .voice-cat-list .btn:active, .voice-cat-list .btn.touch {
  background-color: #EDAA3E;
  border: 1px solid #EDAA3E;
  color: #fff;
  opacity: 0.7;
}
@media (max-width:991px) {
  .voice-cat-list .btn {
    width: 100%;
  }
}

.voice-tag-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 40px;
}
.voice-tag-list .btn {
  background-color: #EDAA3E;
  border: 1px solid #EDAA3E;
  color: #fff;
  min-height: 20px;
  height: auto;
}
.voice-tag-list .btn:focus, .voice-tag-list .btn:disabled, .voice-tag-list .btn:visited, .voice-tag-list .btn:focus {
  background-color: #EDAA3E;
  border: 1px solid #EDAA3E;
  color: #fff;
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.voice-tag-list .btn:not(:disabled):not(.disabled):active, .voice-tag-list .btn:not(:disabled):not(.disabled).active, .voice-tag-list .btn:not(:disabled):not(.disabled):active:focus {
  background-color: inherit;
  border: 1px solid inherit;
  color: inherit;
}
.voice-tag-list .btn:hover, .voice-tag-list .btn:active, .voice-tag-list .btn.touch {
  background-color: #EDAA3E;
  border: 1px solid #EDAA3E;
  color: #fff;
  opacity: 0.7;
}

.movie-wrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.movie-wrap iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

.ggmap {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}
.ggmap iframe,
.ggmap object,
.ggmap embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.marker-yellow, .marker-blue, .marker-pink {
  background-size: 100% 0.5em;
  background-position: left 100%;
  background-repeat: no-repeat;
}

.marker-yellow {
  background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e897), to(#e8e897));
  background-image: linear-gradient(#e8e897, #e8e897);
}

.marker-blue {
  background-image: -webkit-gradient(linear, left top, left bottom, from(#6cf), to(#6cf));
  background-image: linear-gradient(#6cf, #6cf);
}

.marker-pink {
  background-image: -webkit-gradient(linear, left top, left bottom, from(#fb9999), to(#fb9999));
  background-image: linear-gradient(#fb9999, #fb9999);
}

.bg-yellow {
  background-color: #EAEAEA;
}

.bg-gray {
  background-color: #EAEAEA;
}

.txt-red {
  color: #C30D23;
}

.txt-yellow {
  color: #EDAA3E;
}

.txt-gray {
  color: #666;
}

.txt-navy {
  color: #00184D;
}

.txt-orange {
  color: #EDAA3E;
}

.txt-green {
  color: #34CC33;
}

.txt-blue {
  color: #233775;
}

.txt-lg {
  font-size: 115%;
}

.txt-xl {
  font-size: 130%;
}

.txt-huge {
  font-size: 150%;
}

.txt-sm {
  font-size: 90%;
}

.txt-bold {
  font-weight: bold;
}

.img-center {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.thumbnail-wrap {
  padding-bottom: 68.45%;
  position: relative;
}
.thumbnail-wrap .thumbnail {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
}

.thumbnail-square {
  padding-bottom: 97.5%;
  position: relative;
}
.thumbnail-square .thumbnail, .thumbnail-square img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
}

.box {
  background-color: #fff;
  padding: 25px;
  margin-bottom: 20px;
}
.box .box-header {
  font-size: 1.75rem;
  font-weight: bold;
  color: #00184D;
  border-bottom: 2px solid #00184D;
  text-align: center;
  margin-bottom: 20px;
  padding: 0 0 10px;
}
.box p:last-child {
  margin-bottom: 0;
}

@media (max-width:767px) {
  .item-box h2, .item-box h3, .item-box h4 {
    margin-bottom: 10px;
  }
  .item-box .col-12:not(:last-child) {
    margin-bottom: 15px;
  }
}
#ez-toc-container {
  width: 100%;
  max-width: 640px;
  border-radius: 0;
  margin: 0 auto;
}
#ez-toc-container .ez-toc-list li::before {
  content: none;
}

.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
  bottom: 0;
}

.swiper-pagination-bullet {
  background-color: #666;
  border-radius: 0;
  height: 4px;
}

.swiper-pagination-bullet-active {
  background-color: #fff;
}

.popup-wrap {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(18, 18, 18, 0.8);
  z-index: 1000;
  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;
  visibility: hidden;
  padding: 30px;
  opacity: 0;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}
.popup-wrap .popup-panel {
  border-width: 2px;
  border-style: solid;
  border-color: #ddd;
  border-radius: 8px;
  background-color: #fff;
  position: relative;
  padding: 30px 20px 30px;
  max-width: 900px;
  width: 100%;
  max-height: calc(100vh - 100px);
}
.popup-wrap .popup-close {
  position: absolute;
  display: block;
  top: -10px;
  right: -10px;
  background-color: #C30D23;
  border: 2px solid #C30D23;
  border-radius: 100px;
  width: 40px;
  height: 40px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  z-index: 100;
}
.popup-wrap .popup-close::before, .popup-wrap .popup-close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background-color: #fff;
}
.popup-wrap .popup-close::before {
  width: 2px;
  height: 22px;
}
.popup-wrap .popup-close::after {
  width: 22px;
  height: 2px;
}
.popup-wrap .panel-body {
  padding: 0 20px;
  max-height: calc(100% - 100px);
  overflow: auto;
}
.popup-wrap.is-open {
  visibility: visible;
  opacity: 1;
}

@media (max-width:767px) {
  .popup-wrap .popup-panel {
    border-width: 4px;
    border-radius: 10px;
    padding: 30px 15px 25px;
  }
  .popup-wrap .panel-header .logo-icon {
    border-width: 4px;
    top: -26px;
    left: -26px;
    width: 72px;
    height: 72px;
  }
  .popup-wrap .panel-header .logo-icon .logo {
    width: 80%;
    height: 80%;
    -o-object-fit: contain;
       object-fit: contain;
  }
  .popup-wrap .panel-header .heading {
    font-size: 1.125rem;
    font-weight: bold;
    margin-bottom: 15px;
  }
  .popup-wrap .panel-header .heading .logo-text {
    margin: 0 auto 0;
    height: 24px;
  }
  .popup-wrap .panel-header .heading .lg {
    font-size: 1.375rem;
    font-weight: bold;
  }
  .popup-wrap .popup-close {
    top: -10px;
    right: -10px;
    width: 40px;
    height: 40px;
  }
  .popup-wrap .panel-body {
    padding-top: 15px;
  }
  .popup-wrap .panel-body .company-popup-list {
    font-size: 1.125rem;
    font-weight: bold;
  }
  .popup-wrap .panel-body .company-popup-list li {
    padding-left: 26px;
  }
  .popup-wrap .panel-body .company-popup-list li:not(:last-child) {
    margin-bottom: 30px;
  }
  .popup-wrap .panel-body .company-popup-list li::before {
    width: 18px;
    height: 18px;
    top: 7px;
  }
  .popup-wrap.is-open {
    visibility: visible;
    opacity: 1;
  }
}
.p-toc {
  background-color: #edeff2;
  border: 1px solid #A5A5AF;
  max-width: 730px;
  margin: 30px auto;
  padding: 10px 30px 25px;
}
.p-toc .p-toc__ttl {
  display: block;
  text-align: center;
}
.p-toc .p-toc__list {
  margin-bottom: 0;
  margin-top: 10px;
  border-top: 1px dashed #A5A5AF;
}
.p-toc .p-toc__list a {
  text-decoration: underline;
}
.p-toc .p-toc__list > li {
  border-bottom: 1px dashed #A5A5AF;
  padding-top: 5px;
  padding-bottom: 5px;
}
.p-toc .p-toc__list > li ul,
.p-toc .p-toc__list > li .p-toc__list {
  margin-top: 0;
  border: 0;
}
.p-toc .p-toc__list > li ul > li,
.p-toc .p-toc__list > li .p-toc__list > li {
  border-bottom: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.p-toc .p-toc__list > li ul > li::before,
.p-toc .p-toc__list > li .p-toc__list > li::before {
  content: "";
  position: absolute;
  display: block;
  width: 8px;
  height: 2px;
  top: 1em;
  left: 3px;
  margin: 0;
  background-color: #00184D;
}

.page-links-list {
  background-color: #fff;
  background-image: -webkit-gradient(linear, left bottom, left top, from(#edeff2), to(#edeff2));
  background-image: linear-gradient(0deg, #edeff2, #edeff2);
  background-repeat: no-repeat;
  background-size: calc(100% - 8px) calc(100% - 8px);
  background-position: center center;
  border: 2px solid #A5A5AF;
  padding: 25px 20px 25px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.page-links-list > .item {
  margin-right: 10px;
  margin-left: 10px;
  padding-left: 20px;
}
.page-links-list > .item::before, .page-links-list > .item::after {
  content: "";
  display: block;
  position: absolute;
}
.page-links-list > .item::after {
  width: 5px;
  height: 5px;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  top: calc(50% - 3px);
  left: 4px;
  z-index: 2;
}
.page-links-list > .item::before {
  width: 14px;
  height: 14px;
  border-radius: 10px;
  background-color: #00184D;
  top: calc(50% - 6px);
  left: 0;
  z-index: 1;
}
.cta-block {
  margin-top: 60px;
}
.cta-block .cta-copy {
  font-size: 2rem;
  text-align: center;
  color: #233775;
  letter-spacing: -0.05rem;
}
.cta-block .cta-copy + .btn {
  margin-top: 15px;
}

@media (max-width:767px) {
  .cta-block {
    margin-top: 50px;
  }
  .cta-block .cta-copy {
    font-size: 1.375rem;
  }
  .cta-block .cta-copy + .btn {
    margin-top: 10px;
  }
}
.post-slide {
  max-width: 680px;
  margin: 30px auto;
}
.post-slide .img {
  max-width: 100%;
  display: block;
  margin: 0 auto;
}
.post-slide .swiper-button-next,
.post-slide .swiper-button-prev {
  color: #000000;
}
.post-slide .swiper-button-next::before,
.post-slide .swiper-button-prev::before {
  font-size: 22px;
}

.entry-voice .voice-name {
  font-size: 1.375rem;
}
.entry-voice .voice-copy {
  font-size: 1.125rem;
}

.entry-faq .faq-dt {
  font-size: 1.125rem;
  font-weight: 800;
  background-color: rgba(0, 24, 77, 0.07);
  background-image: url(../img/common/h3-pattern.png);
  background-position: center -5px;
  line-height: 1.5;
  padding: 12px 15px 12px 60px;
  position: relative;
}
.entry-faq .faq-dt::before {
  font-size: 1.375rem;
  font-family: "Shippori Mincho", serif;
  content: "Q";
  color: #fff;
  background-color: #00184D;
  position: absolute;
  left: 0;
  top: 0;
  width: 50px;
  height: 100%;
  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;
  text-align: center;
}
.entry-faq .faq-h3 {
  margin-bottom: 15px;
  text-indent: -1.4em;
  padding-left: calc(1.4em + 10px);
}
.entry-faq .faq-h3::before {
  content: "Ｑ.";
}
.entry-faq .faq-dd {
  padding: 12px 0 0 60px;
  position: relative;
}
.entry-faq .faq-dd::before {
  font-size: 1.375rem;
  font-family: "Shippori Mincho", serif;
  content: "A";
  color: #00184D;
  position: absolute;
  left: 0;
  top: 0;
  width: 50px;
  height: 60px;
  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;
  text-align: center;
}
.entry-faq .faq-dd .faq-a {
  font-size: 1.125rem;
  font-weight: 800;
  position: relative;
  margin-bottom: 10px;
}
.entry-faq .faq-dd p, .entry-faq .faq-dd ul, .entry-faq .faq-dd ol, .entry-faq .faq-dd img, .entry-faq .faq-dd figure {
  margin-bottom: 1em;
}
.entry-faq .faq-dd p:last-child, .entry-faq .faq-dd ul:last-child, .entry-faq .faq-dd ol:last-child, .entry-faq .faq-dd img:last-child, .entry-faq .faq-dd figure:last-child {
  margin-bottom: 0;
}
.entry-faq .faq-dd .faq-content > div {
  margin-bottom: 1em;
}
.entry-faq .faq-dd .faq-content > div:last-child {
  margin-bottom: 0;
}
.entry-faq .faq-dd strong {
  background-size: 100% 0.5em;
  background-position: left 100%;
  background-repeat: no-repeat;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e897), to(#e8e897));
  background-image: linear-gradient(#e8e897, #e8e897);
}

.entry-contents .row {
  margin-bottom: -20px;
}
.entry-contents .row > [class*=col-],
.entry-contents .row .col {
  margin-bottom: 30px;
}

.paragraph-circle {
  margin-left: auto;
  margin-right: auto;
}
.paragraph-circle::before {
  content: "●";
  display: inline-block;
  margin-right: 5px;
  position: relative;
  top: 1px;
}

.paragraph-square {
  margin-left: auto;
  margin-right: auto;
}
.paragraph-square::before {
  content: "■";
  display: inline-block;
  margin-right: 5px;
  position: relative;
  top: 1px;
}

.noet-text {
  margin-left: auto;
  margin-right: auto;
}
.noet-text::before {
  content: "※";
  display: inline-block;
  margin-right: 5px;
}

.side-heading {
  font-size: 1.125rem;
  font-weight: bold;
  letter-spacing: 0.03em;
  border-top: 2px solid #00184D;
  background-color: rgba(0, 24, 77, 0.07);
  background-image: url(../img/common/h3-pattern.png);
  background-position: center -5px;
  line-height: 1.5;
  padding: 8px 10px 8px;
  position: relative;
  text-align: center;
}

.side-dl {
  margin-bottom: 0;
  line-height: 1.5;
  padding: 0;
}
.side-dl dt {
  padding-left: 7px;
  margin: 0 0 5px;
  position: relative;
}
.side-dl dt::before {
  content: "";
  position: absolute;
  width: 2px;
  height: 1.2em;
  background-color: #00184D;
  top: 50%;
  left: 0;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
}
.side-dl dd {
  margin: 0;
}
.side-dl dd img {
  max-width: 50%;
  margin: 0 auto;
  display: block;
}
.side-dl + .side-dl {
  padding-top: 10px;
  margin-top: 10px;
  border-top: 1px dashed #A5A5AF;
}

.side-categories-list {
  margin-bottom: 0;
  line-height: 1.5;
  padding: 0;
}
.side-categories-list .item a {
  display: block;
  padding: 7px 0;
  color: #212121;
  text-decoration: none;
}
.side-categories-list .item a::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-bottom: 1px solid #212121;
  border-right: 1px solid #212121;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  margin-right: 8px;
  position: relative;
  top: -2px;
}
.side-categories-list .item + .item {
  border-top: 1px dashed #A5A5AF;
}
.side-categories-list .item > .child-list {
  padding-left: 1em;
}
.side-categories-list .item > .child-list .item {
  border-top: 1px dashed #A5A5AF;
}

.side-tags-list {
  margin-bottom: 0;
  line-height: 1.5;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 6px;
}
.side-tags-list .item {
  margin: 0;
}
.side-tags-list .item a {
  display: block;
  padding: 3px 5px;
  color: #212121;
  text-decoration: none;
  margin: 0;
  background-color: #F2F9F7;
}

.box-common, .copy-box, .border-deco, .box-header-bar {
  --box-bg-color: #F2F9F7;
  --box-bd-color: #00184d;
  --box-bd-color-num: 0, 24, 77;
}
.box-common.bg-none, .copy-box.bg-none, .border-deco.bg-none, .box-header-bar.bg-none {
  --box-bg-color: transparent;
}
.box-common.bg-bluegreen, .copy-box.bg-bluegreen, .border-deco.bg-bluegreen, .box-header-bar.bg-bluegreen {
  --box-bg-color: #F2F9F7;
}
.box-common.bg-yellow, .copy-box.bg-yellow, .border-deco.bg-yellow, .box-header-bar.bg-yellow {
  --box-bg-color: #f3f7e1;
}
.box-common.bg-green, .copy-box.bg-green, .border-deco.bg-green, .box-header-bar.bg-green {
  --box-bg-color: #ebf6ed;
}
.box-common.bg-blue, .copy-box.bg-blue, .border-deco.bg-blue, .box-header-bar.bg-blue {
  --box-bg-color: #dff5f1;
}
.box-common.bg-pink, .copy-box.bg-pink, .border-deco.bg-pink, .box-header-bar.bg-pink {
  --box-bg-color: #f8f2f7;
}
.box-common.bg-gray, .copy-box.bg-gray, .border-deco.bg-gray, .box-header-bar.bg-gray {
  --box-bg-color: #EAEAEA;
}
.box-common.bg-white, .copy-box.bg-white, .border-deco.bg-white, .box-header-bar.bg-white {
  --box-bg-color: #fff;
}
.box-common.bd-yellow, .copy-box.bd-yellow, .border-deco.bd-yellow, .box-header-bar.bd-yellow {
  --box-bd-color: #e8e897;
  --box-bd-color-num: 232, 232, 151;
}
.box-common.bd-green, .copy-box.bd-green, .border-deco.bd-green, .box-header-bar.bd-green {
  --box-bd-color: #34cc33;
  --box-bd-color-num: 52, 204, 51;
}
.box-common.bd-blue, .copy-box.bd-blue, .border-deco.bd-blue, .box-header-bar.bd-blue {
  --box-bd-color: #00184d;
  --box-bd-color-num: 0, 24, 77;
}
.box-common.bd-gray, .copy-box.bd-gray, .border-deco.bd-gray, .box-header-bar.bd-gray {
  --box-bd-color: #A5A5AF;
  --box-bd-color-num: 165, 165, 175;
}
.box-common.bd-white, .copy-box.bd-white, .border-deco.bd-white, .box-header-bar.bd-white {
  --box-bd-color: #fff;
  --box-bd-color-num: 255, 255, 255;
}

.bg-block {
  background-color: #F2F9F7;
  padding: 20px;
}

.box-block, .box-common, .voice-item, .count-item {
  background-color: #F2F9F7;
  border: 1px solid #A5A5AF;
  padding: 20px;
}
.box-block.pd-sm, .box-common.pd-sm, .voice-item.pd-sm, .count-item.pd-sm {
  padding: 10px;
}
.box-block.pd-lg, .box-common.pd-lg, .voice-item.pd-lg, .count-item.pd-lg {
  padding: 30px;
}
.box-block .title, .box-common .title, .voice-item .title, .count-item .title {
  font-size: 1.5rem;
  font-weight: bold;
  border-bottom: 2px solid #00184D;
  padding-bottom: 5px;
  margin-bottom: 5px;
  margin-top: -10px;
  text-align: center;
}
@media (max-width:767px) {
  .box-block, .box-common, .voice-item, .count-item {
    padding: 10px;
  }
  .box-block.pd-sm, .box-common.pd-sm, .voice-item.pd-sm, .count-item.pd-sm {
    padding: 5px;
  }
  .box-block.pd-lg, .box-common.pd-lg, .voice-item.pd-lg, .count-item.pd-lg {
    padding: 15px;
  }
  .box-block .title, .box-common .title, .voice-item .title, .count-item .title {
    font-size: 1.25rem;
    font-weight: bold;
    border-bottom: 2px solid #00184D;
    padding-bottom: 5px;
    margin-bottom: 5px;
    margin-top: -10px;
    text-align: center;
  }
}

.box-block .bg01, .box-block .bg02, .box-block .bg03 {
  background-repeat: no-repeat;
  background-size: 140px;
  background-position: calc(100% + 20px) 10px;
}
@media (max-width:767px) {
  .box-block .bg01, .box-block .bg02, .box-block .bg03 {
    background-size: 80px;
  }
}

.box-block.bg01, .box-block.bg02 {
  background-repeat: no-repeat;
  background-size: 140px;
  background-position: calc(100% + 20px) 10px;
}
@media (max-width:767px) {
  .box-block.bg01, .box-block.bg02 {
    background-size: 80px;
  }
}
.box-block.bg01 {
  background-image: url(../img/common/box-bg01.png);
  background-position: calc(100% + 10px) 10px;
}
.box-block.bg02 {
  background-image: url(../img/common/box-bg02.png);
  background-position: calc(100% - 10px) 10px;
}
.box-block.bg03 .title::before {
  content: "";
  width: 70px;
  height: 70px;
  background-image: url(../img/common/box-bg03.png);
  background-position: right bottom;
  background-size: contain;
  background-repeat: no-repeat;
  position: relative;
  display: inline-block;
  margin: -20px 5px -20px 0;
}
.box-block.bg04 {
  position: relative;
}
.box-block.bg04 .inner {
  position: relative;
  z-index: 3;
  width: 85%;
}
.box-block.bg04::after {
  content: "";
  width: 150px;
  height: 200px;
  background-image: url(../img/common/box-bg04.png);
  background-position: right bottom;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  right: 0;
  bottom: 3px;
}
@media (max-width:767px) {
  .box-block.bg04 .inner {
    width: 100%;
    padding: 0 0 75px;
  }
  .box-block.bg04::after {
    width: 120px;
    height: 100px;
    background-position: right top;
    background-size: 100% auto;
    right: 0;
    bottom: 0;
  }
}

.voice-item, .count-item, .box-common {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.voice-item .inner, .count-item .inner, .box-common .inner {
  width: calc(100% - 230px);
}
.voice-item .inner:only-child, .count-item .inner:only-child, .box-common .inner:only-child {
  width: 100%;
}
.voice-item .inner-img, .count-item .inner-img, .box-common .inner-img {
  width: 210px;
}
.voice-item .inner-img img,
.voice-item .inner-img figure, .count-item .inner-img img,
.count-item .inner-img figure, .box-common .inner-img img,
.box-common .inner-img figure {
  margin-bottom: 0;
}
.voice-item .title, .count-item .title, .box-common .title {
  margin-top: 0;
}
.voice-item .title-width-full, .count-item .title-width-full, .box-common .title-width-full {
  width: 100%;
  margin-bottom: 15px;
}
.voice-item .name, .count-item .name, .box-common .name {
  font-size: 1.125rem;
  font-weight: bold;
  margin-bottom: 5px;
}
.voice-item .img-wrap, .count-item .img-wrap, .box-common .img-wrap {
  -webkit-box-shadow: 3px 3px 0 0 rgba(0, 24, 77, 0.2);
          box-shadow: 3px 3px 0 0 rgba(0, 24, 77, 0.2);
}

@media (max-width:767px) {
  .voice-item, .count-item, .box-common {
    padding: 10px;
  }
  .voice-item .inner, .count-item .inner, .box-common .inner {
    width: 100%;
  }
  .voice-item .inner-img, .count-item .inner-img, .box-common .inner-img {
    width: 100%;
    margin-bottom: 10px;
  }
  .voice-item .inner-img img,
  .voice-item .inner-img figure, .count-item .inner-img img,
  .count-item .inner-img figure, .box-common .inner-img img,
  .box-common .inner-img figure {
    margin-bottom: 0;
  }
  .voice-item .inner + .inner-img, .count-item .inner + .inner-img, .box-common .inner + .inner-img {
    margin-bottom: 0;
    margin-top: 10px;
  }
  .voice-item .title, .count-item .title, .box-common .title {
    font-size: 1.25rem;
    font-weight: bold;
    border-bottom: 2px solid #00184D;
    padding-bottom: 5px;
    margin-bottom: 5px;
  }
  .voice-item .name, .count-item .name, .box-common .name {
    font-size: 1.125rem;
    font-weight: bold;
    margin-bottom: 5px;
  }
}
.box-common.border-none {
  border: none;
  background-color: var(--box-bg-color);
}
.box-common.border-none.bg-none {
  padding: 0 !important;
}
.box-common.border {
  background-color: var(--box-bg-color);
  border-color: var(--box-bd-color) !important;
}
.box-common.border-bold {
  border-width: 5px;
  background-color: var(--box-bg-color);
  border-color: var(--box-bd-color);
}
.box-common.border2 {
  border: 2px solid var(--box-bd-color);
  background-color: #fff;
  background-image: -webkit-gradient(linear, left bottom, left top, from(var(--box-bg-color)), to(var(--box-bg-color))), -webkit-gradient(linear, left bottom, left top, from(var(--box-bd-color)), to(var(--box-bd-color)));
  background-image: linear-gradient(0deg, var(--box-bg-color), var(--box-bg-color)), linear-gradient(0deg, var(--box-bd-color), var(--box-bd-color));
  background-repeat: no-repeat;
  background-size: calc(100% - 8px) calc(100% - 8px), calc(100% - 6px) calc(100% - 6px);
  background-position: center center;
}
.box-common .title {
  border-color: var(--box-bd-color);
}

.count-item {
  border: 2px solid rgba(0, 24, 77, 0.8);
  background-color: #fff;
  background-image: url(../img/common/bg_deco02.svg), url(../img/common/bg_deco02.svg), url(../img/common/bg_deco02.svg), url(../img/common/bg_deco02.svg), -webkit-gradient(linear, left bottom, left top, from(#ebf6ed), to(#ebf6ed)), -webkit-gradient(linear, left bottom, left top, from(rgba(0, 24, 77, 0.3)), to(rgba(0, 24, 77, 0.3)));
  background-image: url(../img/common/bg_deco02.svg), url(../img/common/bg_deco02.svg), url(../img/common/bg_deco02.svg), url(../img/common/bg_deco02.svg), linear-gradient(0deg, #ebf6ed, #ebf6ed), linear-gradient(0deg, rgba(0, 24, 77, 0.3), rgba(0, 24, 77, 0.3));
  background-repeat: no-repeat;
  background-size: 80px 80px, 80px 80px, 80px 80px, 80px 80px, calc(100% - 8px) calc(100% - 8px), calc(100% - 6px) calc(100% - 6px);
  background-position: -44px -44px, -44px calc(100% + 44px), calc(100% + 44px) -44px, calc(100% + 44px) calc(100% + 44px), center center, center center;
}
.count-item .title {
  padding-left: 52px;
  position: relative;
  line-height: 1.3;
  text-align: left;
}
.count-item .title > .num {
  font-size: 1.875rem;
  background-image: url(../img/common/bg-count.svg);
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: 100% auto;
  display: block;
  line-height: 1;
  position: absolute;
  left: 0;
  top: calc(50% - 5px);
  width: 46px;
  text-align: center;
  padding: 0 0 10px;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
}

.border-deco {
  --box-bg-color: #ebf6ed;
  --box-bd-color-num: 0, 24, 77;
  --box-bd-color: rgb(0, 24, 77);
  --box-bg-path: url(../img/common/bg_deco02.svg);
  border: 2px solid rgba(var(--box-bd-color-num), 1);
  background-color: #fff;
  background-image: var(--box-bg-path), var(--box-bg-path), var(--box-bg-path), var(--box-bg-path), -webkit-gradient(linear, left bottom, left top, from(var(--box-bg-color)), to(var(--box-bg-color))), -webkit-gradient(linear, left bottom, left top, from(rgba(var(--box-bd-color-num), 0.3)), to(rgba(var(--box-bd-color-num), 0.3)));
  background-image: var(--box-bg-path), var(--box-bg-path), var(--box-bg-path), var(--box-bg-path), linear-gradient(0deg, var(--box-bg-color), var(--box-bg-color)), linear-gradient(0deg, rgba(var(--box-bd-color-num), 0.3), rgba(var(--box-bd-color-num), 0.3));
  background-repeat: no-repeat;
  background-size: 80px 80px, 80px 80px, 80px 80px, 80px 80px, calc(100% - 8px) calc(100% - 8px), calc(100% - 6px) calc(100% - 6px);
  background-position: -44px -44px, -44px calc(100% + 44px), calc(100% + 44px) -44px, calc(100% + 44px) calc(100% + 44px), center center, center center;
}
.border-deco.bd-yellow {
  --box-bg-path: url(../img/common/bg_deco02-y.svg);
}
.border-deco.bd-green {
  --box-bg-path: url(../img/common/bg_deco02-g.svg);
}
.border-deco.bd-blue {
  --box-bg-path: url(../img/common/bg_deco02.svg);
}
.border-deco.bd-gray {
  --box-bg-path: url(../img/common/bg_deco02-w.svg);
}
.border-deco.bd-white {
  --box-bg-path: url(../img/common/bg_deco02-w.svg);
}
.border-deco .title {
  border-color: var(--box-bd-color);
}

.copy-box {
  --box-bg-color: #F2F9F7;
  --box-bd-color: #A5A5AF;
  --box-bg-path: url(../img/common/bg_deco01.svg);
  font-size: 1.25rem;
  font-weight: bold;
  position: relative;
  background-image: -webkit-gradient(linear, left bottom, left top, from(var(--box-bg-color)), to(var(--box-bg-color))), -webkit-gradient(linear, left bottom, left top, from(var(--box-bg-color)), to(var(--box-bg-color)));
  background-image: linear-gradient(0deg, var(--box-bg-color), var(--box-bg-color)), linear-gradient(0deg, var(--box-bg-color), var(--box-bg-color));
  background-size: 100% calc(100% - 10px), calc(100% - 10px) 100%;
  background-repeat: no-repeat;
  background-position: center;
  height: 100%;
  line-height: 1.5;
}
.copy-box.bd-yellow {
  --box-bg-path: url(../img/common/bg_deco01-y.svg);
}
.copy-box.bd-green {
  --box-bg-path: url(../img/common/bg_deco01-g.svg);
}
.copy-box.bd-blue {
  --box-bg-path: url(../img/common/bg_deco01-b.svg);
}
.copy-box.bd-gray {
  --box-bg-path: url(../img/common/bg_deco01.svg);
}
.copy-box.bd-white {
  --box-bg-path: url(../img/common/bg_deco01-w.svg);
}
.copy-box::after, .copy-box::before {
  content: "";
  position: absolute;
  border: 1px solid var(--box-bd-color);
  z-index: 1;
}
.copy-box::after {
  width: 100%;
  height: calc(100% - 10px);
  top: 5px;
  left: 0;
}
.copy-box::before {
  width: calc(100% - 10px);
  height: 100%;
  top: 0;
  left: 5px;
}
.copy-box .inner {
  padding: 30px 25px 30px 125px;
  height: 100%;
  z-index: 3;
  background-image: var(--box-bg-path), var(--box-bg-path), var(--box-bg-path), var(--box-bg-path);
  background-repeat: no-repeat;
  background-size: 80px 80px;
  background-position: -44px -44px, -44px calc(100% + 44px), calc(100% + 44px) -44px, calc(100% + 44px) calc(100% + 44px);
}
.copy-box .icon-wrap {
  background-repeat: no-repeat;
  background-size: 90px auto;
  background-position: center center;
  position: absolute;
  display: block;
  width: 90px;
  height: 78px;
  left: 30px;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
}
.copy-box .icon-wrap .icon {
  position: absolute;
  width: 68px;
  height: 68px;
  -o-object-fit: contain;
     object-fit: contain;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  left: 50%;
  top: 52%;
}

.box-block-list + .box-block-list {
  margin-top: 20px;
}

.bubble-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 20px;
  margin-bottom: 30px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.bubble-block .inner {
  width: calc(100% - 165px);
  background-color: #EAEAEA;
  padding: 20px 30px;
  -webkit-box-shadow: 0 3px 0 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 3px 0 0 rgba(0, 0, 0, 0.1);
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.bubble-block .inner::after {
  content: "";
  position: absolute;
  display: block;
  height: 14px;
  width: 16px;
  background-color: #EAEAEA;
  top: 30px;
}
.bubble-block .inner-img {
  width: 150px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.bubble-block .inner-img img,
.bubble-block .inner-img figure {
  margin-bottom: 0;
}
.bubble-block .inner-img .thumbnail-square {
  border-radius: 100px;
  overflow: hidden;
}
.bubble-block + .bubble-block {
  margin-top: -10px;
}
.bubble-block.is-imgleft, .entry-voice .bubble-block {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}
.bubble-block.is-imgleft .inner, .entry-voice .bubble-block .inner {
  background-color: #F2F9F7;
}
.bubble-block.is-imgleft .inner::after, .entry-voice .bubble-block .inner::after {
  left: -15px;
  clip-path: polygon(0 0, 100% 0, 100% 100%);
  background-color: #F2F9F7;
}
.bubble-block.is-imgright {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.bubble-block.is-imgright .inner {
  background-color: #EAEAEA;
}
.bubble-block.is-imgright .inner::after {
  right: -15px;
  clip-path: polygon(0 0, 100% 0, 0 100%);
}

@media (max-width:767px) {
  .bubble-block {
    margin-top: 20px;
    margin-bottom: 30px;
  }
  .bubble-block .inner {
    width: calc(100% - 75px);
    padding: 10px 10px;
    -webkit-box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.1);
            box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.1);
  }
  .bubble-block .inner-img {
    width: 65px;
  }
}
.comment-block {
  max-width: 100%;
  background-color: rgba(0, 24, 77, 0.07);
  -webkit-box-shadow: 0 3px 0 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 3px 0 0 rgba(0, 0, 0, 0.1);
  padding: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  position: relative;
  overflow: hidden;
}
.comment-block .inner {
  max-width: calc(100% - 250px);
  position: relative;
  z-index: 3;
}
.comment-block .inner-btn {
  max-width: calc(100% - 250px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 20px;
  position: relative;
  z-index: 3;
}
.comment-block .btn {
  padding-left: 20px;
  padding-right: 20px;
}
.comment-block .btn::after {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  margin-left: 2px;
  position: relative;
  top: -1px;
}
.comment-block .bg-img {
  position: absolute;
  right: 0;
  bottom: 0;
  margin-bottom: 0;
  width: 300px;
}

@media (max-width:767px) {
  .comment-block {
    max-width: 100%;
    padding: 10px;
  }
  .comment-block .inner {
    max-width: 100%;
  }
  .comment-block .inner-btn {
    max-width: calc(100% - 90px);
  }
  .comment-block .btn {
    width: 100%;
  }
  .comment-block .bg-img {
    margin-bottom: 0;
    width: 100px;
  }
}
.box-header-bar {
  --box-bd-color: #377e7f;
  --box-text-color: #fff;
  --box-padding: 20px;
  border: 2px solid var(--box-bd-color);
  padding: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: var(--box-padding);
  border-radius: 5px;
}
.box-header-bar.bd-green {
  --box-bd-color: #377e7f;
}
.box-header-bar.bd-dark-navy {
  --box-bd-color: #00184d;
}
.box-header-bar.bd-navy {
  --box-bd-color: #233775;
}
.box-header-bar.bd-yellow {
  --box-bd-color: #e8e897;
}
.box-header-bar .text-black {
  --box-text-color: #212121;
}
.box-header-bar .text-blue {
  --box-text-color: #0000f5;
}
.box-header-bar .text-white {
  --box-text-color: #fff;
}
@media (max-width:767px) {
  .box-header-bar {
    --box-padding: 10px;
  }
}
.box-header-bar .inner-bar {
  width: calc(100% + var(--box-padding) + var(--box-padding));
  margin: calc(var(--box-padding) * -1) calc(var(--box-padding) * -1) 0;
  background-color: var(--box-bd-color);
  color: var(--box-text-color);
  padding: 10px var(--box-padding);
}
.box-header-bar .inner-bar .title {
  font-size: 1.25rem;
  color: var(--box-text-color);
}
.box-header-bar .inner {
  width: calc(100% - 230px);
}
.box-header-bar .inner-img {
  width: 210px;
}
@media (max-width:767px) {
  .box-header-bar .inner-bar {
    padding: 5px var(--box-padding);
  }
  .box-header-bar .inner-bar .title {
    font-size: 1.125rem;
  }
  .box-header-bar .inner {
    width: 100%;
  }
  .box-header-bar .inner-img {
    width: 100%;
  }
}
.box-header-bar .img-wrap {
  margin-bottom: 0;
}
.box-header-bar .img-wrap img {
  margin-bottom: 0;
}

.bubble-block,
.comment-block,
.bg-block,
.box-block,
.copy-box,
.box-common,
.voice-item,
.count-item,
.box-header-bar {
  position: relative;
  z-index: 10;
  margin: 30px auto;
}
.bubble-block .title:has(img),
.comment-block .title:has(img),
.bg-block .title:has(img),
.box-block .title:has(img),
.copy-box .title:has(img),
.box-common .title:has(img),
.voice-item .title:has(img),
.count-item .title:has(img),
.box-header-bar .title:has(img) {
  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;
  width: 100%;
}
.bubble-block .title:has(img) > .inner,
.comment-block .title:has(img) > .inner,
.bg-block .title:has(img) > .inner,
.box-block .title:has(img) > .inner,
.copy-box .title:has(img) > .inner,
.box-common .title:has(img) > .inner,
.voice-item .title:has(img) > .inner,
.count-item .title:has(img) > .inner,
.box-header-bar .title:has(img) > .inner {
  width: auto;
}
.bubble-block .title .icon,
.comment-block .title .icon,
.bg-block .title .icon,
.box-block .title .icon,
.copy-box .title .icon,
.box-common .title .icon,
.voice-item .title .icon,
.count-item .title .icon,
.box-header-bar .title .icon {
  width: 70px;
  height: 70px;
  -o-object-fit: contain;
     object-fit: contain;
  margin: -10px 5px -10px 0;
}
@media (max-width:767px) {
  .bubble-block .title:has(img),
  .comment-block .title:has(img),
  .bg-block .title:has(img),
  .box-block .title:has(img),
  .copy-box .title:has(img),
  .box-common .title:has(img),
  .voice-item .title:has(img),
  .count-item .title:has(img),
  .box-header-bar .title:has(img) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    text-align: left;
  }
  .bubble-block .title .icon,
  .comment-block .title .icon,
  .bg-block .title .icon,
  .box-block .title .icon,
  .copy-box .title .icon,
  .box-common .title .icon,
  .voice-item .title .icon,
  .count-item .title .icon,
  .box-header-bar .title .icon {
    width: 50px;
    height: 50px;
  }
}
.bubble-block p:first-child, .bubble-block ul:first-child, .bubble-block ol:first-child, .bubble-block:first-child,
.comment-block p:first-child,
.comment-block ul:first-child,
.comment-block ol:first-child,
.comment-block:first-child,
.bg-block p:first-child,
.bg-block ul:first-child,
.bg-block ol:first-child,
.bg-block:first-child,
.box-block p:first-child,
.box-block ul:first-child,
.box-block ol:first-child,
.box-block:first-child,
.copy-box p:first-child,
.copy-box ul:first-child,
.copy-box ol:first-child,
.copy-box:first-child,
.box-common p:first-child,
.box-common ul:first-child,
.box-common ol:first-child,
.box-common:first-child,
.voice-item p:first-child,
.voice-item ul:first-child,
.voice-item ol:first-child,
.voice-item:first-child,
.count-item p:first-child,
.count-item ul:first-child,
.count-item ol:first-child,
.count-item:first-child,
.box-header-bar p:first-child,
.box-header-bar ul:first-child,
.box-header-bar ol:first-child,
.box-header-bar:first-child {
  margin-top: 0;
}
.bubble-block p:last-child, .bubble-block ul:last-child, .bubble-block ol:last-child, .bubble-block:last-child,
.comment-block p:last-child,
.comment-block ul:last-child,
.comment-block ol:last-child,
.comment-block:last-child,
.bg-block p:last-child,
.bg-block ul:last-child,
.bg-block ol:last-child,
.bg-block:last-child,
.box-block p:last-child,
.box-block ul:last-child,
.box-block ol:last-child,
.box-block:last-child,
.copy-box p:last-child,
.copy-box ul:last-child,
.copy-box ol:last-child,
.copy-box:last-child,
.box-common p:last-child,
.box-common ul:last-child,
.box-common ol:last-child,
.box-common:last-child,
.voice-item p:last-child,
.voice-item ul:last-child,
.voice-item ol:last-child,
.voice-item:last-child,
.count-item p:last-child,
.count-item ul:last-child,
.count-item ol:last-child,
.count-item:last-child,
.box-header-bar p:last-child,
.box-header-bar ul:last-child,
.box-header-bar ol:last-child,
.box-header-bar:last-child {
  margin-bottom: 0;
}
.row > div > .bubble-block, .row > li > .bubble-block,
.row > div > .comment-block,
.row > li > .comment-block,
.row > div > .bg-block,
.row > li > .bg-block,
.row > div > .box-block,
.row > li > .box-block,
.row > div > .copy-box,
.row > li > .copy-box,
.row > div > .box-common,
.row > li > .box-common,
.row > div > .voice-item,
.row > li > .voice-item,
.row > div > .count-item,
.row > li > .count-item,
.row > div > .box-header-bar,
.row > li > .box-header-bar {
  height: 100%;
}
.bubble-block .box-ul,
.comment-block .box-ul,
.bg-block .box-ul,
.box-block .box-ul,
.copy-box .box-ul,
.box-common .box-ul,
.voice-item .box-ul,
.count-item .box-ul,
.box-header-bar .box-ul {
  font-size: 1.125rem;
}
.bubble-block .box-ul li::before,
.comment-block .box-ul li::before,
.bg-block .box-ul li::before,
.box-block .box-ul li::before,
.copy-box .box-ul li::before,
.box-common .box-ul li::before,
.voice-item .box-ul li::before,
.count-item .box-ul li::before,
.box-header-bar .box-ul li::before {
  width: 10px;
  height: 10px;
  top: 0.8em;
}
.bubble-block .box-ul.ul-flex,
.comment-block .box-ul.ul-flex,
.bg-block .box-ul.ul-flex,
.box-block .box-ul.ul-flex,
.copy-box .box-ul.ul-flex,
.box-common .box-ul.ul-flex,
.voice-item .box-ul.ul-flex,
.count-item .box-ul.ul-flex,
.box-header-bar .box-ul.ul-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: calc(100% + 20px);
  margin-right: -20px;
}
.bubble-block .box-ul.ul-flex li,
.comment-block .box-ul.ul-flex li,
.bg-block .box-ul.ul-flex li,
.box-block .box-ul.ul-flex li,
.copy-box .box-ul.ul-flex li,
.box-common .box-ul.ul-flex li,
.voice-item .box-ul.ul-flex li,
.count-item .box-ul.ul-flex li,
.box-header-bar .box-ul.ul-flex li {
  margin-right: 20px;
}
.bubble-block .font-size-sm,
.comment-block .font-size-sm,
.bg-block .font-size-sm,
.box-block .font-size-sm,
.copy-box .font-size-sm,
.box-common .font-size-sm,
.voice-item .font-size-sm,
.count-item .font-size-sm,
.box-header-bar .font-size-sm {
  font-size: 0.875rem;
}
.bubble-block .font-size-md,
.comment-block .font-size-md,
.bg-block .font-size-md,
.box-block .font-size-md,
.copy-box .font-size-md,
.box-common .font-size-md,
.voice-item .font-size-md,
.count-item .font-size-md,
.box-header-bar .font-size-md {
  font-size: 1rem;
}
.bubble-block .font-size-lg,
.comment-block .font-size-lg,
.bg-block .font-size-lg,
.box-block .font-size-lg,
.copy-box .font-size-lg,
.box-common .font-size-lg,
.voice-item .font-size-lg,
.count-item .font-size-lg,
.box-header-bar .font-size-lg {
  font-size: 1.125rem;
}

.bubble-block.bg-color-blue,
.comment-block.bg-color-blue,
.bg-block.bg-color-blue,
.box-block.bg-color-blue,
.copy-box.bg-color-blue,
.voice-item.bg-color-blue,
.count-item.bg-color-blue {
  background-color: rgba(0, 24, 77, 0.1);
}
.bubble-block.bg-color-green,
.comment-block.bg-color-green,
.bg-block.bg-color-green,
.box-block.bg-color-green,
.copy-box.bg-color-green,
.voice-item.bg-color-green,
.count-item.bg-color-green {
  background-color: #e0f6e5;
}
.bubble-block.bg-color-grey,
.comment-block.bg-color-grey,
.bg-block.bg-color-grey,
.box-block.bg-color-grey,
.copy-box.bg-color-grey,
.voice-item.bg-color-grey,
.count-item.bg-color-grey {
  background-color: #EAEAEA;
}

/*
-- section CSS
-------------------------------------------------- */
.section {
  position: relative;
}

.frontpage.is-side {
  padding-top: 60px;
}

@media (max-width:1240px) {
  .frontpage.is-side {
    padding-top: 40px;
  }
}
@media (max-width:991px) {
  .frontpage.is-side {
    padding-top: 30px;
  }
}
@media (max-width:767px) {
  .frontpage.is-side {
    padding-top: 20px;
  }
}
.frontpage-mv {
  --top_mv_hight: 520px;
  --top_mv_font: 40;
}
@media (max-width:991px) {
  .frontpage-mv {
    --top_mv_hight: 420px;
  }
}
@media (max-width:767px) {
  .frontpage-mv {
    --top_mv_hight: 68vw;
  }
}

.frontpage-mv {
  min-height: var(--top_mv_hight);
  position: relative;
  background-color: #000;
}
.frontpage-mv .copy-text {
  position: relative;
  z-index: 10;
  color: #fff;
  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;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-height: var(--top_mv_hight);
  max-width: var(--panel-width);
  width: 100%;
  margin: 0 auto;
  padding: 0 50px;
  text-shadow: 0 0 15px rgba(0, 0, 0, 0.3);
  font-size: 2.5rem;
}
.frontpage-mv .copy-text p {
  width: 100%;
  -webkit-font-smoothing: antialiased;
  line-height: 1.4;
  margin-bottom: 0;
}
.frontpage-mv .copy-text p + p {
  margin-top: 5px;
}
.frontpage-mv .bg-img {
  position: absolute;
  top: 0;
  left: 50%;
  min-height: var(--top_mv_hight);
  max-width: var(--panel-width);
  width: 100%;
  z-index: 1;
  overflow: hidden;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
}
.frontpage-mv .bg-img .slide-item {
  min-height: var(--top_mv_hight);
  width: 100%;
  background-position: center center;
  background-size: cover;
}
.frontpage-mv .bg-img .img {
  width: 100%;
  height: var(--top_mv_hight);
  -o-object-fit: cover;
     object-fit: cover;
}

@media (max-width:1480px) {
  .frontpage-mv .copy-text {
    max-width: 100%;
    width: 100%;
  }
  .frontpage-mv .bg-img {
    max-width: 100%;
    width: 100%;
  }
}
@media (max-width:991px) {
  .frontpage-mv .copy-text {
    max-width: 100%;
    width: 100%;
    font-size: 2rem;
  }
  .frontpage-mv .copy-text p {
    -webkit-font-smoothing: auto;
    font-smooth: auto;
    line-height: 1.3;
  }
  .frontpage-mv .bg-img {
    max-width: 100%;
    width: 100%;
  }
}
@media (max-width:767px) {
  .frontpage-mv .copy-text {
    font-size: 1.25rem;
    padding: 0 15px;
  }
  .frontpage-mv .copy-text p {
    line-height: 1.5;
  }
}
.top-cta {
  margin-top: 60px;
  padding: 0 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.top-cta .inner {
  max-width: 920px;
  width: 100%;
  margin: 0 auto;
  border-radius: 15px;
  -webkit-box-shadow: 0 0 0 3px #fff;
          box-shadow: 0 0 0 3px #fff;
}
.top-cta .inner .btn {
  width: 100%;
  max-width: 100%;
}
.top-cta + .main-panel {
  margin-top: 60px;
}

@media (max-width:767px) {
  .top-cta {
    margin-top: 40px;
  }
  .top-cta + .main-panel {
    margin-top: 40px;
  }
}
.frontpage-panel-header {
  position: relative;
}
.frontpage-panel-header .panel-title, .frontpage-panel-header h2 {
  background: none;
  text-align: center;
  color: #00184D;
  padding: 40px 0 20px;
}
.frontpage-panel-header .panel-title::before, .frontpage-panel-header .panel-title::after, .frontpage-panel-header h2::before, .frontpage-panel-header h2::after {
  content: none;
}
.frontpage-panel-header::after {
  content: "";
  display: block;
  width: calc(100% + var(--panel-mragin) + var(--panel-mragin));
  height: 120px;
  position: absolute;
  top: 100%;
  left: calc(var(--panel-mragin) * -1);
  background-color: #00184D;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(0, #fff), to(#fff)), -webkit-gradient(linear, left top, right top, color-stop(10%, rgba(0, 24, 77, 0)), color-stop(30%, #00184d), color-stop(60%, #00184d), color-stop(90%, rgba(0, 24, 77, 0))), url(../img/common/h2-pattern.png);
  background-image: linear-gradient(left, #fff 0, #fff 100%), linear-gradient(left, rgba(0, 24, 77, 0) 10%, #00184d 30%, #00184d 60%, rgba(0, 24, 77, 0) 90%), url(../img/common/h2-pattern.png);
  background-position: 0 0, center, center;
  background-repeat: no-repeat, repeat, repeat;
  background-size: 100% 2px, auto, auto;
  border-top: 2px solid #00184D;
  z-index: 0;
}
.frontpage-panel-header {
  background-color: #00184D;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(10%, rgba(0, 24, 77, 0)), color-stop(30%, #00184d), color-stop(60%, #00184d), color-stop(90%, rgba(0, 24, 77, 0))), url(../img/common/h2-pattern.png);
  background-image: linear-gradient(left, rgba(0, 24, 77, 0) 10%, #00184d 30%, #00184d 60%, rgba(0, 24, 77, 0) 90%), url(../img/common/h2-pattern.png);
  margin-bottom: 40px;
  padding: 20px 0;
  position: relative;
}
.frontpage-panel-header::after,
.frontpage-panel-header::before {
  content: "";
  display: block;
  width: 6px;
  height: 100%;
  position: absolute;
  top: 0;
  left: auto;
  border-color: #00184D;
  border-style: solid;
  border-width: 0;
  background-color: #fff;
  background-image: none;
  border-top: 0;
  z-index: 1;
}
.frontpage-panel-header::before {
  left: 0;
  border-left-width: 4px;
}
.frontpage-panel-header::after {
  right: 0;
  border-right-width: 4px;
}
.frontpage-panel-header .panel-title,
.frontpage-panel-header h2 {
  background: none;
  text-align: center;
  color: #fff;
  margin: 0;
  padding: 0;
}

.frontpage-h2 {
  text-align: center;
  width: calc(100% + var(--panel-mragin) + var(--panel-mragin));
  margin-left: calc(var(--panel-mragin) * -1);
  margin-right: calc(var(--panel-mragin) * -1);
}
.frontpage .frontpage-h2, .frontpage .frontpage-h2:not(:first-child), .frontpage-h2 {
  font-size: 2.625rem;
  padding: 20px 0;
  background-color: #00184D;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(10%, rgba(0, 24, 77, 0)), color-stop(30%, #00184d), color-stop(60%, #00184d), color-stop(90%, rgba(0, 24, 77, 0))), url(../img/common/h2-pattern.png);
  background-image: linear-gradient(left, rgba(0, 24, 77, 0) 10%, #00184d 30%, #00184d 60%, rgba(0, 24, 77, 0) 90%), url(../img/common/h2-pattern.png);
  margin-bottom: 40px;
  margin-top: 80px;
}
.frontpage .frontpage-h2::before, .frontpage .frontpage-h2::after, .frontpage .frontpage-h2:not(:first-child)::before, .frontpage .frontpage-h2:not(:first-child)::after, .frontpage-h2::before, .frontpage-h2::after {
  content: none;
}
.frontpage-h2 {
  font-size: 2.25rem;
  padding-top: 12px;
  padding-bottom: 15px;
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}
@media (max-width:767px) {
.frontpage-h2 {
    font-size: 1.75rem;
  }
}

.frontpage-h3-wrap {
  margin-top: 80px;
}

.frontpage .frontpage-h3, .frontpage .frontpage-h3:not(:first-child), .frontpage-h3 {
  margin-top: 80px;
  font-size: 2.375rem;
  color: #00184D;
  text-align: center;
}
@media (max-width:767px) {
  .frontpage .frontpage-h3, .frontpage .frontpage-h3:not(:first-child), .frontpage-h3 {
    font-size: 1.5rem;
    margin-top: 50px;
  }
}
.frontpage-h3 {
  font-size: 2rem;
}
@media (max-width:767px) {
  .frontpage-h3 {
    font-size: 1.5rem;
  }
}
.frontpage-h3-sub + .frontpage-h3, .frontpage-copy + .frontpage-h3 {
  margin-top: 30px !important;
}

.frontpage-h3-sub, .frontpage-copy {
  margin-top: 80px;
  font-size: 1.5rem;
  margin-bottom: 0;
  line-height: 1.5;
  text-align: center;
}
.frontpage-h3-sub p, .frontpage-copy p {
  margin-bottom: 5px;
}
.frontpage-h3-sub p:last-child, .frontpage-copy p:last-child {
  margin-bottom: 0;
}

/*
-- page CSS
--------------------------------------------------
@import "page/top";
*/
/*
-- Utility CSS
-------------------------------------------------- */
.clearfix, .cf {
  *zoom: 1;
}
.clearfix:after, .cf:after {
  content: "";
  display: block;
  clear: both;
}

.test-left {
  text-align: left;
}

.test-center {
  text-align: center;
}

.test-right {
  text-align: right;
}

.v-top {
  vertical-align: top;
}

.v-middle {
  vertical-align: middle;
}

.v-bottom {
  vertical-align: bottom;
}

.img-center {
  margin-left: auto;
  margin-right: auto;
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
}

.clear {
  clear: both;
}

.f-left {
  float: left;
}

.f-right {
  float: right;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.mt-0 {
  margin-top: 0 !important;
}

.mb-0 {
  margin-bottom: 0px !important;
}

.mt-0 {
  margin-top: 0px !important;
}

.mb-5 {
  margin-bottom: 5px !important;
}

.mt-5 {
  margin-top: 5px !important;
}

.mb-10 {
  margin-bottom: 10px !important;
}

.mt-10 {
  margin-top: 10px !important;
}

.mb-15 {
  margin-bottom: 15px !important;
}

.mt-15 {
  margin-top: 15px !important;
}

.mb-20 {
  margin-bottom: 20px !important;
}

.mt-20 {
  margin-top: 20px !important;
}

.mb-25 {
  margin-bottom: 25px !important;
}

.mt-25 {
  margin-top: 25px !important;
}

.mb-30 {
  margin-bottom: 30px !important;
}

.mt-30 {
  margin-top: 30px !important;
}

.mb-35 {
  margin-bottom: 35px !important;
}

.mt-35 {
  margin-top: 35px !important;
}

.mb-40 {
  margin-bottom: 40px !important;
}

.mt-40 {
  margin-top: 40px !important;
}

.mb-45 {
  margin-bottom: 45px !important;
}

.mt-45 {
  margin-top: 45px !important;
}

.mb-50 {
  margin-bottom: 50px !important;
}

.mt-50 {
  margin-top: 50px !important;
}

.mb-55 {
  margin-bottom: 55px !important;
}

.mt-55 {
  margin-top: 55px !important;
}

.mb-60 {
  margin-bottom: 60px !important;
}

.mt-60 {
  margin-top: 60px !important;
}

.mb-65 {
  margin-bottom: 65px !important;
}

.mt-65 {
  margin-top: 65px !important;
}

.mb-70 {
  margin-bottom: 70px !important;
}

.mt-70 {
  margin-top: 70px !important;
}

.mb-75 {
  margin-bottom: 75px !important;
}

.mt-75 {
  margin-top: 75px !important;
}

.mb-80 {
  margin-bottom: 80px !important;
}

.mt-80 {
  margin-top: 80px !important;
}

.mb-85 {
  margin-bottom: 85px !important;
}

.mt-85 {
  margin-top: 85px !important;
}

.mb-90 {
  margin-bottom: 90px !important;
}

.mt-90 {
  margin-top: 90px !important;
}

.mb-95 {
  margin-bottom: 95px !important;
}

.mt-95 {
  margin-top: 95px !important;
}

.mb-100 {
  margin-bottom: 100px !important;
}

.mt-100 {
  margin-top: 100px !important;
}

@media (max-width:767px) {
  .mb-sp-0 {
    margin-bottom: 0px !important;
  }
  .mt-sp-0 {
    margin: 0px !important;
  }
}
@media (max-width:767px) {
  .mb-sp-0 {
    margin-bottom: 0px !important;
  }
  .mt-sp-0 {
    margin-top: 0px !important;
  }
}
@media (max-width:767px) {
  .mb-sp-5 {
    margin-bottom: 5px !important;
  }
  .mt-sp-5 {
    margin-top: 5px !important;
  }
}
@media (max-width:767px) {
  .mb-sp-10 {
    margin-bottom: 10px !important;
  }
  .mt-sp-10 {
    margin-top: 10px !important;
  }
}
@media (max-width:767px) {
  .mb-sp-15 {
    margin-bottom: 15px !important;
  }
  .mt-sp-15 {
    margin-top: 15px !important;
  }
}
@media (max-width:767px) {
  .mb-sp-20 {
    margin-bottom: 20px !important;
  }
  .mt-sp-20 {
    margin-top: 20px !important;
  }
}
@media (max-width:767px) {
  .mb-sp-25 {
    margin-bottom: 25px !important;
  }
  .mt-sp-25 {
    margin-top: 25px !important;
  }
}
@media (max-width:767px) {
  .mb-sp-30 {
    margin-bottom: 30px !important;
  }
  .mt-sp-30 {
    margin-top: 30px !important;
  }
}
@media (max-width:767px) {
  .mb-sp-35 {
    margin-bottom: 35px !important;
  }
  .mt-sp-35 {
    margin-top: 35px !important;
  }
}
@media (max-width:767px) {
  .mb-sp-40 {
    margin-bottom: 40px !important;
  }
  .mt-sp-40 {
    margin-top: 40px !important;
  }
}
@media (max-width:767px) {
  .mb-sp-45 {
    margin-bottom: 45px !important;
  }
  .mt-sp-45 {
    margin-top: 45px !important;
  }
}
@media (max-width:767px) {
  .mb-sp-50 {
    margin-bottom: 50px !important;
  }
  .mt-sp-50 {
    margin-top: 50px !important;
  }
}
@media (max-width:767px) {
  .mb-sp-55 {
    margin-bottom: 55px !important;
  }
  .mt-sp-55 {
    margin-top: 55px !important;
  }
}
@media (max-width:767px) {
  .mb-sp-60 {
    margin-bottom: 60px !important;
  }
  .mt-sp-60 {
    margin-top: 60px !important;
  }
}
@media (max-width:767px) {
  .mb-sp-65 {
    margin-bottom: 65px !important;
  }
  .mt-sp-65 {
    margin-top: 65px !important;
  }
}
@media (max-width:767px) {
  .mb-sp-70 {
    margin-bottom: 70px !important;
  }
  .mt-sp-70 {
    margin-top: 70px !important;
  }
}
@media (max-width:767px) {
  .mb-sp-75 {
    margin-bottom: 75px !important;
  }
  .mt-sp-75 {
    margin-top: 75px !important;
  }
}
@media (max-width:767px) {
  .mb-sp-80 {
    margin-bottom: 80px !important;
  }
  .mt-sp-80 {
    margin-top: 80px !important;
  }
}
@media (max-width:767px) {
  .mb-sp-85 {
    margin-bottom: 85px !important;
  }
  .mt-sp-85 {
    margin-top: 85px !important;
  }
}
@media (max-width:767px) {
  .mb-sp-90 {
    margin-bottom: 90px !important;
  }
  .mt-sp-90 {
    margin-top: 90px !important;
  }
}
@media (max-width:767px) {
  .mb-sp-95 {
    margin-bottom: 95px !important;
  }
  .mt-sp-95 {
    margin-top: 95px !important;
  }
}
@media (max-width:767px) {
  .mb-sp-100 {
    margin-bottom: 100px !important;
  }
  .mt-sp-100 {
    margin-top: 100px !important;
  }
}
.mb-xs {
  margin-bottom: 10px !important;
}

.mt-xs {
  margin-bottom: 10px !important;
}

.mb-s {
  margin-bottom: 20px !important;
}

.mt-s {
  margin-bottom: 20px !important;
}

.mb-m {
  margin-bottom: 40px !important;
}

.mt-m {
  margin-bottom: 40px !important;
}

.mb-l {
  margin-bottom: 60px !important;
}

.mt-l {
  margin-bottom: 60px !important;
}

.mb-xl {
  margin-bottom: 80px !important;
}

.mt-xl {
  margin-bottom: 80px !important;
}

@media (max-width:767px) {
  .mb-xs {
    margin-bottom: 10px !important;
  }
  .mt-xs {
    margin-bottom: 10px !important;
  }
  .mb-s {
    margin-bottom: 20px !important;
  }
  .mt-s {
    margin-bottom: 20px !important;
  }
  .mb-m {
    margin-bottom: 40px !important;
  }
  .mt-m {
    margin-bottom: 40px !important;
  }
  .mb-l {
    margin-bottom: 60px !important;
  }
  .mt-l {
    margin-bottom: 60px !important;
  }
  .mb-xl {
    margin-bottom: 80px !important;
  }
  .mt-xl {
    margin-bottom: 80px !important;
  }
}
.fz-ss {
  font-size: 0.625rem !important;
}

.fz-s {
  font-size: 0.75rem !important;
}

.fz-m {
  font-size: 0.875rem !important;
}

.fz-l {
  font-size: 1rem !important;
}

.fz-ll {
  font-size: 1.125rem !important;
}

.fw-bold {
  font-weight: bold !important;
}

.fw-normal {
  font-weight: normal !important;
}

.sp-break {
  display: inline;
}

@media (max-width:767px) {
  .sp-break {
    display: block;
  }
}
.pc-visible {
  display: block;
}

.sp-visible {
  display: none;
}

@media (max-width:767px) {
  .pc-visible {
    display: none;
  }
  .sp-visible {
    display: block;
  }
}
/*# sourceMappingURL=style.css.map */