@charset "UTF-8";
body {
  font-family: 'Work Sans', 'Noto Sans JP', sans-serif; }

/*ヘッダー*/
.l-header-row, .l-header-menu-fixed-logo {
  background-color: rgba(255, 255, 255, 0.85) !important; }
.l-header_phone a {
  display: inline-grid !important;
  grid-auto-flow: column;
  grid-template-columns: 1.5em 1fr;
  align-items: start;
  column-gap: 0.5em;
  vertical-align: middle;
  align-items: center; }
  .l-header_phone a::before {
    display: block;
    width: 1.5em;
    height: 1.5em;
    background-color: #002941;
    content: ""; }
  .l-header_phone a span {
    font-weight: 700;
    font-size: 130%;
    letter-spacing: -0.025em; }
  .l-header_phone a::before {
    mask-image: url("/wp-content/package/module/icon/img/phone.svg");
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain; }
@media (max-width: 767px) {
  .l-header_phone {
    display: none; } }

/*ドロワーメニュー*/
.drawer-menu .ncButton_btn::before {
  content: none; }

/*セクションヘッダー*/
.c-section-widget:not(#content_box_section-3) .c-section-widget__header {
  display: flex;
  flex-direction: column;
  line-height: 1; }
.c-section-widget:not(#content_box_section-3) .c-section-widget__title {
  order: 1;
  color: #a9cee3; }
.c-section-widget:not(#content_box_section-3) .c-section-widget__sub-title {
  color: #fff;
  font-size: min(7cqw, 100px);
  letter-spacing: -0.01em;
  color: #fff; }
@media (max-width: 767px) {
  .c-section-widget:not(#content_box_section-3) .c-section-widget__sub-title {
    font-size: 13cqw; } }

/*ボタン*/
.ncButton_btn,
.viewmore {
  font-weight: 700;
  transition: 0.3s ease; }
  .ncButton_btn:hover,
  .viewmore:hover {
    transform: translateY(2px); }

.ncButton_btn {
  background-color: transparent;
  border: 1px solid #021B2F;
  border-radius: 2em;
  color: #021B2F; }
  .ncButton_btn::before {
    content: "●";
    margin-right: 1em;
    font-size: 50%;
    color: #021B2F; }
  .ncButton_btn.-white {
    border-color: #fff;
    color: #fff; }
    .ncButton_btn.-white::before {
      color: #fff; }
  .ncButton_btn.-dl {
    border-color: #2A90DF;
    color: #2A90DF; }
    .ncButton_btn.-dl::before {
      color: #2A90DF; }

.viewmore {
  margin-top: 1em;
  margin-bottom: 0;
  font-weight: 700; }
  .viewmore a {
    display: inline-flex;
    align-items: center;
    border-bottom: solid 1px #002941;
    font-weight: 700; }
    .viewmore a::after {
      content: "●";
      margin-left: 0.5em;
      font-size: 70%; }

/*フッターセクション*/
#shortcod_section-19 {
  background: linear-gradient(to bottom, transparent 0%, transparent 55%, #021B2F 55%, #021B2F 100%); }
  #shortcod_section-19 .c-section-widget__inner {
    background-image: url("/wp-content/package/common/img/footersection_bg.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center top; }
    @media (max-width: 767px) {
      #shortcod_section-19 .c-section-widget__inner {
        padding: 5cqw; } }
    @media (min-width: 1200px) {
      #shortcod_section-19 .c-section-widget__inner {
        width: 1180px; } }
    @media (min-width: 768px) {
      #shortcod_section-19 .c-section-widget__inner {
        margin: 4.85cqw auto;
        padding: 4.85cqw; } }
  #shortcod_section-19 .l-content-widget {
    width: 100%; }
  #shortcod_section-19 .wrapper-column {
    justify-content: space-around; }
  #shortcod_section-19 .shortcod-content {
    text-align: center;
    color: #fff; }
    #shortcod_section-19 .shortcod-content:last-of-type .phonenumber {
      grid-template-columns: 2.5em 1fr;
      align-items: center;
      font-weight: 700;
      letter-spacing: -0.05em; }
      #shortcod_section-19 .shortcod-content:last-of-type .phonenumber span,
      #shortcod_section-19 .shortcod-content:last-of-type .phonenumber a {
        color: #fff !important; }
        @media (min-width: 768px) {
          #shortcod_section-19 .shortcod-content:last-of-type .phonenumber span,
          #shortcod_section-19 .shortcod-content:last-of-type .phonenumber a {
            font-size: 300%; } }
        @media (max-width: 767px) {
          #shortcod_section-19 .shortcod-content:last-of-type .phonenumber span,
          #shortcod_section-19 .shortcod-content:last-of-type .phonenumber a {
            font-size: 10cqw; } }
      #shortcod_section-19 .shortcod-content:last-of-type .phonenumber::before {
        background-color: #2A90DF;
        align-items: center;
        width: 2.5em;
        height: 2.5em; }

/*フッター*/
.l-footer .wrapper-column > div:nth-of-type(2) {
  display: flex; }
  .l-footer .wrapper-column > div:nth-of-type(2) .widget .menu {
    display: flex;
    flex-wrap: wrap; }
    .l-footer .wrapper-column > div:nth-of-type(2) .widget .menu-item {
      width: 50%; }
.l-footer .wrapper-column > div:nth-of-type(3) dt {
  font-size: 150%; }
.l-footer .wrapper-column > div:nth-of-type(3) dd:not(:last-of-type) {
  padding-bottom: 2cqw;
  margin-bottom: 2cqw;
  border-bottom: 1px solid #fff; }
@media (max-width: 767px) {
  .l-footer .wrapper-column > div:nth-of-type(3) dt, .l-footer .wrapper-column > div:nth-of-type(3) dd {
    margin-top: 1.5em;
    margin-bottom: 1em; } }

/********************
* 下層ページ *
********************/
/*アイキャッチ*/
.article-header-full-width {
  height: auto !important;
  aspect-ratio: 1400/280;
  background: linear-gradient(to bottom right, #004D79, #00273D); }
  .article-header-full-width__thumbnail {
    background-image: url("/wp-content/package/common/img/bg_mark.svg") !important;
    background-repeat: no-repeat;
    background-size: contain; }
    @media (min-width: 768px) {
      .article-header-full-width__thumbnail {
        background-position: left 50px bottom -20px; } }
  .article-header-full-width__inner {
    color: #fff;
    font-weight: 700; }

@media (min-width: 768px) {
  .posttype-title {
    margin-bottom: 0;
    font-size: 317% !important; }
    .posttype-title__sub {
      font-size: 203% !important; } }

/*データリスト*/
.data {
  display: flex;
  border-bottom: solid 1px #002941;
  padding: 0.8em;
  margin-top: 0 !important; }
  .data_field {
    display: flex;
    justify-content: space-between;
    flex-grow: 0 !important;
    flex-shrink: 0 !important; }
    .data_field span {
      display: block;
      width: 100%;
      text-align: center; }
    .data_field::after {
      content: "／";
      color: #2A90DF; }
  .data_record {
    flex-shrink: 1;
    flex-grow: 1;
    width: auto; }
  @media (min-width: 768px) {
    .data .data_field {
      width: 11em; }
    .data .data_record {
      padding-left: 4em; } }
  @media (max-width: 767px) {
    .data .data_field {
      width: 7em; }
    .data .data_record {
      padding-left: 0.5em; } }
