@charset "UTF-8";
/* =============================================================================
   #Foundation
   ========================================================================== */
body, div, dl, dt, dd, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
  margin: 0px;
  padding: 0px;
}

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

fieldset, img, abbr, acronym {
  border: 0px;
}

address, caption, cite, code, dfn, em, th, var {
  font-style: normal;
  font-weight: normal;
}

img {
  vertical-align: bottom;
}

caption, th {
  text-align: left;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

q:before, q:after {
  content: "";
}

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

#tinymce {
  list-style: initial !important;
  padding: initial !important;
  margin: initial !important;
}

main {
  display: block;
}

input[type=submit],
input[type=button] {
  border-radius: 0 !important;
  -webkit-box-sizing: content-box;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  border: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  cursor: pointer;
  -webkit-appearance: none;
}

input[type=submit]::-webkit-search-decoration,
input[type=button]::-webkit-search-decoration {
  display: none;
}

input[type=submit]::focus,
input[type=button]::focus {
  outline-offset: -2px;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  outline: none;
  background: transparent;
}

button,
input[type=submit] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0;
  border: none;
  outline: none;
  background: transparent;
}

input[type=radio] {
  display: none;
}

/*input[type="radio"]:checked + label {
    background: #ff0000;
}*/
input, textarea {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -webkit-appearance: none;
  max-width: 100%;
}

/* ブラウザの薄い枠線を消す */
:focus {
  outline: none;
}

@-webkit-keyframes effect6 {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-15%);
            transform: translateY(-15%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes effect6 {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-15%);
            transform: translateY(-15%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
:root {
  --min-width: 600;
  --max-width: 2160;
  --header-h-sp: 40px;
  --header-h: 58px;
  --spacer-min: 4;
  --spacer-max: 8;
  --spacer: clamp(
    calc(var(--spacer-min) * 1px),
    calc(
      var(--spacer-min) * 1px +
      (var(--spacer-max) - var(--spacer-min)) *
      ((100vw - var(--min-width) * 1px) / (var(--max-width) - var(--min-width)))
    ),
    calc(var(--spacer-max) * 1px)
  );
  --header-h-min: 58;
  --header-h-max: 80;
  --header-h: clamp(
    calc(var(--header-h-min) * 1px),
    calc(
      var(--header-h-min) * 1px +
      (var(--header-h-max) - var(--header-h-min)) *
      ((100vw - var(--min-width) * 1px) / (var(--max-width) - var(--min-width)))
    ),
    calc(var(--header-h-max) * 1px)
  );
  --header-h-sp-min: 40;
  --header-h-sp-max: 68;
  --header-h-sp: clamp(
    calc(var(--header-h-sp-min) * 1px),
    calc(
      var(--header-h-sp-min) * 1px +
      (var(--header-h-sp-max) - var(--header-h-sp-min)) *
      ((100vw - var(--min-width) * 1px) / (var(--max-width) - var(--min-width)))
    ),
    calc(var(--header-h-sp-max) * 1px)
  );
}

/* 全要素をボックスサイズ border-box に統一 */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* HTML & Body の基本設定 */
html, body {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  /* スクロール時のゴムっぽい動きを無効化 
  overscroll-behavior: none;*/
}

html {
  /* iOS Safari などの自動文字サイズ調整を無効化 */
  -webkit-text-size-adjust: 100%;
  /* ルートフォントサイズ (62.5% = 10px 基準) */
  font-size: 62.5%;
  scroll-padding-top: calc(var(--header-h) + calc(var(--spacer) * 3.5));
}
@media screen and (min-width: 980px) {
  html {
    scroll-padding-top: calc(var(--header-h) + var(--header-h-sp) + calc(var(--spacer) * 3.5));
  }
}

body {
  font-family: "Helvetica Neue", "Noto Sans JP", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-weight: normal;
  font-style: normal;
  /* 日本語組版で字間を整える */
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  /* 長い単語の折り返し */
  word-wrap: break-word;
  overflow-wrap: break-word;
  /* フォントカラーは変数から */
  color: #222;
  /* outline デフォルト無効化はアクセシビリティ的に注意 */
  outline: none;
  /* ユーティリティクラスの拡張 */
}
body.fixed {
  position: fixed;
  width: 100%;
  height: 100%;
  margin-bottom: 0 !important;
}

img {
  max-width: 100%;
  height: auto;
}

img[src$=".svg"] {
  width: 100%;
}

a {
  color: #222;
  text-decoration: none;
}

figcaption {
  color: #999;
}

/*
=============================================================================
   #Layout
=============================================================================
*/
.l-header-w {
  position: sticky;
  top: 0;
  z-index: 50;
  -webkit-transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
}
.l-header-w.active {
  -webkit-box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 4px 0px, rgba(0, 0, 0, 0.1) 0px 0px 2px 0px;
          box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 4px 0px, rgba(0, 0, 0, 0.1) 0px 0px 2px 0px;
}

.l-header {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr auto auto;
  grid-template-columns: 1fr auto auto;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 0 0 calc(var(--spacer) * 3.5);
  width: 100%;
  background-color: #FFF;
  height: var(--header-h);
}
@media screen and (min-width: 980px) {
  .l-header {
    -webkit-column-gap: calc(var(--spacer) * 3.5);
       -moz-column-gap: calc(var(--spacer) * 3.5);
            column-gap: calc(var(--spacer) * 3.5);
    -ms-grid-columns: 1fr calc(var(--spacer) * 3.5) auto calc(var(--spacer) * 3.5) auto calc(var(--spacer) * 3.5) auto calc(var(--spacer) * 3.5) auto;
    grid-template-columns: 1fr auto auto auto auto;
    padding: 0 calc(var(--spacer) * 3.5);
    border-bottom: 1px solid rgba(0, 0, 0, 0.18);
  }
}
.l-header .zenkoku {
  height: clamp(calc(40 * 1px), calc(calc((50 - 40) / (2160 - 600)) * 100vw + calc(40 - calc((50 - 40) / (2160 - 600)) * 600) * 1px), calc(50 * 1px));
  width: 100px;
  background-color: #e6f3ff;
  border-radius: 100px;
  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;
  padding: 0 0.6em;
  line-height: 1;
}
.l-header .zenkoku img {
  width: 100%;
}
@media screen and (min-width: 600px) {
  .l-header .zenkoku {
    padding: 0 1em;
    width: clamp(calc(180 * 1px), calc(calc((260 - 180) / (2160 - 600)) * 100vw + calc(180 - calc((260 - 180) / (2160 - 600)) * 600) * 1px), calc(260 * 1px));
  }
}
.l-header .tel {
  line-height: 1;
  letter-spacing: 0.05em;
  font-size: clamp(calc(16 * 1px), calc(calc((36 - 16) / (2160 - 600)) * 100vw + calc(16 - calc((36 - 16) / (2160 - 600)) * 600) * 1px), calc(36 * 1px));
  -webkit-column-gap: calc(var(--spacer) * 1);
     -moz-column-gap: calc(var(--spacer) * 1);
          column-gap: calc(var(--spacer) * 1);
}
.l-header .tel .icon {
  width: clamp(calc(18 * 1px), calc(calc((20 - 18) / (2160 - 600)) * 100vw + calc(18 - calc((20 - 18) / (2160 - 600)) * 600) * 1px), calc(20 * 1px));
}
.l-header .tel {
  display: none;
}
@media screen and (min-width: 980px) {
  .l-header .tel {
    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;
  }
}
.l-header .h-contact {
  height: clamp(calc(40 * 1px), calc(calc((50 - 40) / (2160 - 600)) * 100vw + calc(40 - calc((50 - 40) / (2160 - 600)) * 600) * 1px), calc(50 * 1px));
  width: clamp(calc(160 * 1px), calc(calc((220 - 160) / (2160 - 600)) * 100vw + calc(160 - calc((220 - 160) / (2160 - 600)) * 600) * 1px), calc(220 * 1px));
  background-color: #fff000;
  -webkit-column-gap: calc(var(--spacer) * 1);
     -moz-column-gap: calc(var(--spacer) * 1);
          column-gap: calc(var(--spacer) * 1);
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.05em;
  font-size: clamp(calc(15 * 1px), calc(calc((18 - 15) / (2160 - 600)) * 100vw + calc(15 - calc((18 - 15) / (2160 - 600)) * 600) * 1px), calc(18 * 1px));
  border-radius: 0.8rem;
  border: 2px solid #FFF;
  position: relative;
  -webkit-transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
}
.l-header .h-contact .c-arrow-a {
  position: absolute;
  bottom: 10%;
  right: 5%;
  -webkit-transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
}
.l-header .h-contact .icon {
  width: clamp(calc(18 * 1px), calc(calc((20 - 18) / (2160 - 600)) * 100vw + calc(18 - calc((20 - 18) / (2160 - 600)) * 600) * 1px), calc(20 * 1px));
}
.l-header .h-contact {
  display: none;
}
@media screen and (min-width: 980px) {
  .l-header .h-contact {
    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;
  }
}
@media (hover: hover) {
  .l-header .h-contact:hover {
    background-color: #ffff3c;
  }
  .l-header .h-contact:hover .c-arrow-a {
    -webkit-transform: translateX(35%);
            transform: translateX(35%);
  }
}
.l-header .line {
  width: clamp(calc(40 * 1px), calc(calc((50 - 40) / (2160 - 600)) * 100vw + calc(40 - calc((50 - 40) / (2160 - 600)) * 600) * 1px), calc(50 * 1px));
  display: none;
}
@media screen and (min-width: 980px) {
  .l-header .line {
    display: block;
  }
}

.l-header-logo {
  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;
  line-height: 1;
  -webkit-column-gap: calc(var(--spacer) * 1.5);
     -moz-column-gap: calc(var(--spacer) * 1.5);
          column-gap: calc(var(--spacer) * 1.5);
}
.l-header-logo .mark {
  width: clamp(calc(40 * 1px), calc(calc((65 - 40) / (2160 - 600)) * 100vw + calc(40 - calc((65 - 40) / (2160 - 600)) * 600) * 1px), calc(65 * 1px));
}
.l-header-logo .type {
  width: clamp(calc(130 * 1px), calc(calc((220 - 130) / (2160 - 600)) * 100vw + calc(130 - calc((220 - 130) / (2160 - 600)) * 600) * 1px), calc(220 * 1px));
}

.l-header-menu {
  /*background-color: $clr-font-b;*/
  height: 100%;
  aspect-ratio: 1/1;
  row-gap: 0.7em;
  cursor: pointer;
  position: relative;
  display: block;
}
@media screen and (min-width: 980px) {
  .l-header-menu {
    display: none;
  }
}
.l-header-menu .menu-trigger {
  height: 20%;
  width: 50%;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -100%);
          transform: translate(-50%, -100%);
  -webkit-transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
}
.l-header-menu .menu-trigger::before {
  content: "";
  background-color: #000;
  width: 100%;
  height: 2px;
  display: block;
  position: absolute;
  top: 0;
  -webkit-transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
}
.l-header-menu .menu-trigger::after {
  content: "";
  background-color: #000;
  width: 100%;
  height: 2px;
  display: block;
  position: absolute;
  bottom: 0;
  -webkit-transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
}
.l-header-menu .text {
  line-height: 1;
  letter-spacing: 0em;
  font-size: clamp(calc(12 * 1px), calc(calc((16 - 12) / (2160 - 600)) * 100vw + calc(12 - calc((16 - 12) / (2160 - 600)) * 600) * 1px), calc(16 * 1px));
  font-weight: 500;
  position: absolute;
  left: 50%;
  top: 55%;
  -webkit-transform: translate(-50%, 50%);
          transform: translate(-50%, 50%);
  text-transform: uppercase;
}
.l-header-menu:hover .menu-trigger {
  width: 40%;
}

.l-glonavi {
  display: none;
  -webkit-column-gap: 1.5em;
     -moz-column-gap: 1.5em;
          column-gap: 1.5em;
  padding-left: calc(var(--spacer) * 3.5);
  line-height: 1.7;
  letter-spacing: 0.05em;
  font-size: clamp(calc(14 * 1px), calc(calc((20 - 14) / (2160 - 600)) * 100vw + calc(14 - calc((20 - 14) / (2160 - 600)) * 600) * 1px), calc(20 * 1px));
  height: var(--header-h-sp);
  background-color: #FFF;
}
@media screen and (min-width: 980px) {
  .l-glonavi {
    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;
  }
}
@media screen and (min-width: 1460px) {
  .l-glonavi {
    -webkit-column-gap: 2em;
       -moz-column-gap: 2em;
            column-gap: 2em;
  }
}
.l-glonavi .step-item {
  opacity: 1;
}
.l-glonavi .l-g-menu_sub {
  display: none;
}
.l-glonavi .g-menu {
  height: 100%;
}
.l-glonavi a {
  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;
  position: relative;
  line-height: 1.8;
  letter-spacing: 0.08em;
  font-size: clamp(calc(15 * 1px), calc(calc((18 - 15) / (2160 - 600)) * 100vw + calc(15 - calc((18 - 15) / (2160 - 600)) * 600) * 1px), calc(18 * 1px));
  font-weight: 500;
}
.l-glonavi a::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 1px;
  display: block;
  width: 100%;
  height: 4px;
  z-index: 1;
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
  background-color: #014471;
  -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;
  -webkit-transform-origin: right bottom;
          transform-origin: right bottom;
}
.l-glonavi a:hover::before {
  -webkit-transform: scaleX(1);
          transform: scaleX(1);
  -webkit-transform-origin: left bottom;
          transform-origin: left bottom;
}

.g-menu.oss {
  -ms-grid-row: 5;
  -ms-grid-column: 1;
  -ms-grid-column-span: 3;
  grid-area: oss;
}

.l-glonavi-sp-inner .g-menu-w > .g-menu.oss {
  -ms-grid-row: 5;
  -ms-grid-column: 1;
  -ms-grid-column-span: 3;
}
@media screen and (min-width: 980px) {
  .g-menu.oss {
    grid-area: initial;
  }
}
.g-menu.kantei {
  -ms-grid-row: 1;
  -ms-grid-row-span: 3;
  -ms-grid-column: 1;
  grid-area: kantei;
}
.l-glonavi-sp-inner .g-menu-w > .g-menu.kantei {
  -ms-grid-row: 1;
  -ms-grid-row-span: 3;
  -ms-grid-column: 1;
}
@media screen and (min-width: 980px) {
  .g-menu.kantei {
    grid-area: initial;
  }
}
.g-menu.sokuryo {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
  grid-area: sokuryo;
}
.l-glonavi-sp-inner .g-menu-w > .g-menu.sokuryo {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
}
@media screen and (min-width: 980px) {
  .g-menu.sokuryo {
    grid-area: initial;
  }
}
.g-menu.gyosei {
  -ms-grid-row: 3;
  -ms-grid-column: 3;
  grid-area: gyosei;
}
.l-glonavi-sp-inner .g-menu-w > .g-menu.gyosei {
  -ms-grid-row: 3;
  -ms-grid-column: 3;
}
@media screen and (min-width: 980px) {
  .g-menu.gyosei {
    grid-area: initial;
  }
}
.g-menu.price {
  -ms-grid-row: 7;
  -ms-grid-column: 1;
  grid-area: price;
}
.l-glonavi-sp-inner .g-menu-w > .g-menu.price {
  -ms-grid-row: 7;
  -ms-grid-column: 1;
}
@media screen and (min-width: 980px) {
  .g-menu.price {
    grid-area: initial;
  }
}
.g-menu.about {
  -ms-grid-row: 7;
  -ms-grid-column: 3;
  grid-area: about;
}
.l-glonavi-sp-inner .g-menu-w > .g-menu.about {
  -ms-grid-row: 7;
  -ms-grid-column: 3;
}
@media screen and (min-width: 980px) {
  .g-menu.about {
    grid-area: initial;
  }
}
.g-menu.blog {
  -ms-grid-row: 9;
  -ms-grid-column: 1;
  grid-area: blog;
}
.l-glonavi-sp-inner .g-menu-w > .g-menu.blog {
  -ms-grid-row: 9;
  -ms-grid-column: 1;
}
@media screen and (min-width: 980px) {
  .g-menu.blog {
    grid-area: initial;
  }
}
.g-menu.news {
  -ms-grid-row: 9;
  -ms-grid-column: 3;
  grid-area: news;
}
.l-glonavi-sp-inner .g-menu-w > .g-menu.news {
  -ms-grid-row: 9;
  -ms-grid-column: 3;
}
@media screen and (min-width: 980px) {
  .g-menu.news {
    grid-area: initial;
  }
}

.l-h-info {
  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;
  background-color: #FFF;
  border-bottom: 1px solid #DDD;
  height: clamp(calc(44 * 1px), calc(calc((68 - 44) / (2160 - 600)) * 100vw + calc(44 - calc((68 - 44) / (2160 - 600)) * 600) * 1px), calc(68 * 1px));
  -webkit-column-gap: 0.5em;
     -moz-column-gap: 0.5em;
          column-gap: 0.5em;
  -webkit-transition: all 0.3s cubic-bezier(0, 0.5, 0.5, 1);
  transition: all 0.3s cubic-bezier(0, 0.5, 0.5, 1);
}
.l-h-info:hover {
  opacity: 0.8;
}
.l-h-info:before {
  font-family: "Material Symbols Outlined";
  font-weight: normal;
  line-height: 1;
  background-color: #000;
  width: clamp(calc(18 * 1px), calc(calc((20 - 18) / (2160 - 600)) * 100vw + calc(18 - calc((20 - 18) / (2160 - 600)) * 600) * 1px), calc(20 * 1px));
  aspect-ratio: 1/1;
  overflow: hidden;
  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-animation: blink 2s ease-in-out infinite alternate;
          animation: blink 2s ease-in-out infinite alternate;
  border-radius: 50%;
  content: "priority_high";
  font-weight: 400;
  color: #FFF;
}

.l-g-menu_sub {
  margin-top: 1em;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  row-gap: 0.8em;
}
.l-g-menu_sub .g-menu_sub_i {
  display: block;
}

.l-c-width-a, .p-top-s-menu, .l-title {
  width: min(90%, 1480 * 1px);
  margin-inline: auto;
}

.l-c-width-b {
  margin-inline: auto;
  width: 90%;
}
@media screen and (min-width: 600px) {
  .l-c-width-b {
    width: clamp(calc(580 * 1px), calc(calc((1000 - 580) / (2160 - 600)) * 100vw + calc(580 - calc((1000 - 580) / (2160 - 600)) * 600) * 1px), calc(1000 * 1px));
  }
}

.l-c-width-c {
  width: min(90%, 1260 * 1px);
  margin-inline: auto;
}

.l-c-width-d {
  margin-inline: auto;
  width: 100%;
}
@media screen and (min-width: 600px) {
  .l-c-width-d {
    width: clamp(calc(580 * 1px), calc(calc((1000 - 580) / (2160 - 600)) * 100vw + calc(580 - calc((1000 - 580) / (2160 - 600)) * 600) * 1px), calc(1000 * 1px));
  }
}

.l-main-image {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  position: relative;
  grid-area: image;
  z-index: 1;
  height: 100%;
  background-image: url("../image/top-main-image-sp.webp");
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}

.l-title > .l-main-image {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
}
@media screen and (min-width: 600px) {
  .l-main-image {
    background-image: url("../image/top-main-image.webp");
    background-position: center top 40%;
  }
}

.l-mi-sv-w {
  position: relative;
}
@media screen and (min-width: 600px) {
  .l-mi-sv-w {
    height: calc(100svh - var(--header-h) - var(--header-h-sp));
    max-height: 1000px;
  }
}
@media screen and (min-width: 980px) {
  .l-mi-sv-w {
    max-height: 700px;
  }
}
@media screen and (min-width: 1460px) {
  .l-mi-sv-w {
    max-height: 950px;
  }
}

.l-main-image-w {
  position: relative;
  z-index: 1;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr auto;
  grid-template-columns: 1fr auto;
      grid-template-areas: "image hdg";
  width: 100%;
  height: 42svh;
  overflow: hidden;
}
@media screen and (min-width: 600px) {
  .l-main-image-w {
    height: 65%;
  }
}
@media screen and (min-width: 1460px) {
  .l-main-image-w {
    height: 70%;
  }
}
.l-main-image-w .mi-hdg {
  position: absolute;
  left: 51%;
  top: 45%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-align: center;
}
.l-main-image-w .mi-hdg .mm-hdg {
  margin-top: calc(var(--spacer) * 1.5);
  color: #988747;
  line-height: 1;
  letter-spacing: 0.2em;
  font-size: clamp(calc(10 * 1px), calc(calc((16 - 10) / (2160 - 600)) * 100vw + calc(10 - calc((16 - 10) / (2160 - 600)) * 600) * 1px), calc(16 * 1px));
  white-space: nowrap;
}
.l-main-image-w h1 {
  color: #014471;
  line-height: 1.8;
  letter-spacing: 0.08em;
  font-size: clamp(calc(19 * 1px), calc(calc((54 - 19) / (2160 - 600)) * 100vw + calc(19 - calc((54 - 19) / (2160 - 600)) * 600) * 1px), calc(54 * 1px));
  text-align: center;
  text-shadow: 0 0 0.5em #FFF;
  white-space: nowrap;
  /*writing-mode: vertical-rl;*/
}
.l-main-image-w .mi-spacer {
  position: relative;
  z-index: 3;
  width: 5vw;
  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;
}

.mi-sub {
  display: -ms-inline-grid;
  display: inline-grid;
  -ms-grid-columns: 1fr 0.8em auto;
  grid-template-columns: 1fr auto;
  -webkit-column-gap: 0.8em;
     -moz-column-gap: 0.8em;
          column-gap: 0.8em;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
      grid-template-areas: "hamamatsu name" "shikaku name";
  margin-top: calc(var(--spacer) * 2.25);
  padding-top: calc(var(--spacer) * 3.5);
  /*
          opacity: 0;

  animation-name: effect6;
        animation-duration: 1s;
        animation-fill-mode: both;
        animation-delay: 3s;
        animation-timing-function: $bzr-a;*/
  position: relative;
}
@media screen and (min-width: 980px) {
  .mi-sub {
    -webkit-column-gap: 1em;
       -moz-column-gap: 1em;
            column-gap: 1em;
  }
}
.mi-sub .hamamatsu {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: hamamatsu;
  line-height: 1;
  letter-spacing: 0.05em;
  font-size: clamp(calc(14 * 1px), calc(calc((22 - 14) / (2160 - 600)) * 100vw + calc(14 - calc((22 - 14) / (2160 - 600)) * 600) * 1px), calc(22 * 1px));
}
.mi-sub .name {
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  -ms-grid-column: 3;
  grid-area: name;
  line-height: 1;
  letter-spacing: 0.2em;
  font-size: clamp(calc(24 * 1px), calc(calc((38 - 24) / (2160 - 600)) * 100vw + calc(24 - calc((38 - 24) / (2160 - 600)) * 600) * 1px), calc(38 * 1px));
}
.mi-sub .shikaku {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  grid-area: shikaku;
  line-height: 1;
  letter-spacing: 0em;
  font-size: clamp(calc(10 * 1px), calc(calc((16 - 10) / (2160 - 600)) * 100vw + calc(10 - calc((16 - 10) / (2160 - 600)) * 600) * 1px), calc(16 * 1px));
  margin-top: 0.8em;
}
.mi-sub::before {
  content: "";
  width: 18%;
  height: 1px;
  background-color: #988747;
  position: absolute;
  left: 0;
  top: 0;
}

.l-f-content {
  background-image: url("../image/top-main-image.webp");
  background-position: center bottom 30%;
  background-size: cover;
  background-repeat: no-repeat;
  padding: calc(var(--spacer) * 8) 0;
  position: relative;
  color: #FFF;
}
.l-f-content::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 1;
  mix-blend-mode: soft-light;
}
.l-f-content::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
  z-index: 2;
}
.l-f-content .fc-innr {
  position: relative;
  z-index: 5;
}
.l-f-content .fc-innr .c-hd-a .a-sub,
.l-f-content .fc-innr .c-hd-a .a-hdg {
  color: #FFF;
}
.l-f-content .fc-contact {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-column-gap: 5%;
     -moz-column-gap: 5%;
          column-gap: 5%;
  row-gap: calc(var(--spacer) * 5);
  margin-inline: auto;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 1200px) {
  .l-f-content .fc-contact {
    width: initial;
    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;
  }
}
.l-f-content .fc-contact {
  /*
          .f-contact {
              @include height(55, 100);

              text-align: left;

              background-color: $clr-b;
              @include flexbox();
              column-gap: $s-xs;
              @extend .u-ff-a;
              font-weight: 700;
              @include fs(30, 15, 1, 0.1);
              border-radius: $radius;
              border: 2px solid #FFF;
              position: relative;
              transition: all 0.2s $bzr-a;
              margin-inline: auto;
              width: 180px;

              @include bp(sm) {
                  @include width(200, 320);
              }

              .c-arrow-a {
                  position: absolute;
                  bottom: 10%;
                  right: 5%;
                  transition: all 0.2s $bzr-a;
              }

              .icon {
                  @include width(18, 30);
              }

              @media (hover: hover) {
                  &:hover {
                      background-color: $clr-f;

                      .c-arrow-a {
                          transform: translateX(35%);
                      }
                  }
              }
          }
  */
}
.l-f-content .fc-contact a {
  text-decoration: none !important;
  color: #FFF !important;
}
.l-f-content .fc-contact .f-form {
  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;
  -webkit-column-gap: calc(var(--spacer) * 2.25);
     -moz-column-gap: calc(var(--spacer) * 2.25);
          column-gap: calc(var(--spacer) * 2.25);
}
.l-f-content .fc-contact .f-form .f-contact {
  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;
  -webkit-column-gap: calc(var(--spacer) * 1);
     -moz-column-gap: calc(var(--spacer) * 1);
          column-gap: calc(var(--spacer) * 1);
  -webkit-transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
}
@media (hover: hover) {
  .l-f-content .fc-contact .f-form .f-contact:hover {
    text-decoration: underline !important;
  }
}
.l-f-content .fc-contact .f-form .f-contact .icon {
  width: clamp(calc(24 * 1px), calc(calc((30 - 24) / (2160 - 600)) * 100vw + calc(24 - calc((30 - 24) / (2160 - 600)) * 600) * 1px), calc(30 * 1px));
}
.l-f-content .fc-contact .f-tel {
  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;
  -webkit-column-gap: calc(var(--spacer) * 2.25);
     -moz-column-gap: calc(var(--spacer) * 2.25);
          column-gap: calc(var(--spacer) * 2.25);
  white-space: nowrap;
  text-align: left;
}
.l-f-content .fc-contact .f-line {
  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;
  -webkit-column-gap: calc(var(--spacer) * 2.25);
     -moz-column-gap: calc(var(--spacer) * 2.25);
          column-gap: calc(var(--spacer) * 2.25);
  text-align: left;
  white-space: nowrap;
}
.l-f-content .fc-contact .f-line .line-icon {
  width: clamp(calc(44 * 1px), calc(calc((50 - 44) / (2160 - 600)) * 100vw + calc(44 - calc((50 - 44) / (2160 - 600)) * 600) * 1px), calc(50 * 1px));
}
.l-f-content .fc-contact .f-line a {
  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;
}
.l-f-content .fc-contact .ttl {
  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: clamp(calc(50 * 1px), calc(calc((70 - 50) / (2160 - 600)) * 100vw + calc(50 - calc((70 - 50) / (2160 - 600)) * 600) * 1px), calc(70 * 1px));
  background-color: #fff000;
  border-radius: 100px;
  color: #222;
}
.l-f-content .fc-contact .number {
  line-height: 1;
  letter-spacing: 0.05em;
  font-size: clamp(calc(24 * 1px), calc(calc((36 - 24) / (2160 - 600)) * 100vw + calc(24 - calc((36 - 24) / (2160 - 600)) * 600) * 1px), calc(36 * 1px));
}

.l-footer-menu {
  background-color: #e6f3ff;
  padding-top: calc(var(--spacer) * 8);
  padding-bottom: calc(var(--spacer) * 8);
}

.l-footer {
  background-color: #014471;
  padding-top: calc(var(--spacer) * 8);
  padding-bottom: 70px;
  padding-left: 5vw;
  padding-right: 5vw;
  position: relative;
  color: #FFF;
}
@media screen and (min-width: 980px) {
  .l-footer {
    padding-bottom: calc(var(--spacer) * 3.5);
  }
}
.l-footer:before {
  position: absolute;
  left: 0;
  bottom: 0;
  content: "";
  width: 100%;
  height: 100%;
  mix-blend-mode: multiply;
  background-size: cover;
  background-image: url("../image/bg-image1.webp");
  background-position: center center;
  background-repeat: no-repeat;
}
.l-footer .l-footer-innr {
  display: -ms-grid;
  display: grid;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  position: relative;
  z-index: 5;
  row-gap: calc(var(--spacer) * 5);
  -webkit-column-gap: calc(var(--spacer) * 8);
     -moz-column-gap: calc(var(--spacer) * 8);
          column-gap: calc(var(--spacer) * 8);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
@media screen and (min-width: 980px) {
  .l-footer .l-footer-innr {
    -ms-grid-columns: auto auto;
    grid-template-columns: auto auto;
  }
}
.l-footer .l-footer-innr a {
  color: #FFF;
}
.l-footer .f-sns-icon img {
  width: clamp(calc(36 * 1px), calc(calc((44 - 36) / (2160 - 600)) * 100vw + calc(36 - calc((44 - 36) / (2160 - 600)) * 600) * 1px), calc(44 * 1px));
}
.l-footer .f-info {
  text-align: center;
}
@media screen and (min-width: 980px) {
  .l-footer .f-info {
    text-align: left;
  }
}
.l-footer .f-bnr {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr calc(var(--spacer) * 2.25) 1fr;
  grid-template-columns: repeat(2, 1fr);
  -webkit-column-gap: calc(var(--spacer) * 2.25);
     -moz-column-gap: calc(var(--spacer) * 2.25);
          column-gap: calc(var(--spacer) * 2.25);
  row-gap: calc(var(--spacer) * 2.25);
}
.l-footer .f-bnr .f-bnr-item {
  background-color: #FFF;
  padding: 10px;
  width: 100%;
}
@media screen and (min-width: 980px) {
  .l-footer .f-bnr .f-bnr-item {
    width: clamp(calc(200 * 1px), calc(calc((340 - 200) / (2160 - 600)) * 100vw + calc(200 - calc((340 - 200) / (2160 - 600)) * 600) * 1px), calc(340 * 1px));
  }
}
.l-footer .l-footer-logo {
  width: clamp(calc(220 * 1px), calc(calc((320 - 220) / (2160 - 600)) * 100vw + calc(220 - calc((320 - 220) / (2160 - 600)) * 600) * 1px), calc(320 * 1px));
  margin-inline: auto;
}
@media screen and (min-width: 980px) {
  .l-footer .l-footer-logo {
    margin-inline: initial;
  }
}

.l-glonavi-f {
  display: -ms-inline-grid;
  display: inline-grid;
  -ms-grid-columns: auto 2em auto;
  grid-template-columns: repeat(2, auto);
  -webkit-column-gap: 2em;
     -moz-column-gap: 2em;
          column-gap: 2em;
  row-gap: calc(var(--spacer) * 5);
  line-height: 1.8;
  letter-spacing: 0.05em;
  font-size: clamp(calc(15 * 1px), calc(calc((19 - 15) / (2160 - 600)) * 100vw + calc(15 - calc((19 - 15) / (2160 - 600)) * 600) * 1px), calc(19 * 1px));
  margin-inline: auto;
  text-align: left;
  -ms-grid-rows: auto calc(var(--spacer) * 5) auto calc(var(--spacer) * 5) auto calc(var(--spacer) * 5) auto calc(var(--spacer) * 5) auto;
      grid-template-areas: "kantei sokuryo" "kantei gyosei" "oss oss" "price about" "blog news";
}
@media screen and (min-width: 980px) {
  .l-glonavi-f {
    -ms-grid-columns: (auto)[4];
    grid-template-columns: repeat(4, auto);
        grid-template-areas: initial;
  }
}
@media screen and (min-width: 1460px) {
  .l-glonavi-f {
    -ms-grid-columns: (auto)[8];
    grid-template-columns: repeat(8, auto);
  }
}
.l-glonavi-f .g-menu > a {
  padding-left: calc(var(--spacer) * 2.25);
  position: relative;
}
.l-glonavi-f .g-menu > a::before {
  content: "";
  height: 1em;
  width: 2px;
  position: absolute;
  left: 0;
  top: 0.08em;
  background-color: #988747;
  border-radius: 10px;
}
.l-glonavi-f .step-item {
  opacity: 1;
}
.l-glonavi-f .l-g-menu_sub a {
  padding-left: calc(var(--spacer) * 2.25);
  position: relative;
}
.l-glonavi-f .l-g-menu_sub a::before {
  content: "";
  height: 1px;
  width: 0.5em;
  position: absolute;
  left: 0;
  top: 0.8em;
  background-color: #988747;
}

.page-template-contact .l-contact-sp {
  display: none;
}

.l-contact-sp {
  display: -ms-grid;
  display: grid;
  width: 100%;
  background-color: #FFF;
  padding: calc(var(--spacer) * 1);
  visibility: visible;
  -ms-grid-columns: 1fr calc(var(--spacer) * 1) 1fr calc(var(--spacer) * 1) auto;
  grid-template-columns: 1fr 1fr auto;
  -webkit-column-gap: calc(var(--spacer) * 1);
     -moz-column-gap: calc(var(--spacer) * 1);
          column-gap: calc(var(--spacer) * 1);
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 5;
}
@media screen and (min-width: 980px) {
  .l-contact-sp {
    display: none;
  }
}
.l-contact-sp .btn {
  background-color: #fff000;
  height: 40px;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto calc(var(--spacer) * 1.5) auto;
  grid-template-columns: auto auto;
  place-items: center;
  -webkit-column-gap: calc(var(--spacer) * 1.5);
     -moz-column-gap: calc(var(--spacer) * 1.5);
          column-gap: calc(var(--spacer) * 1.5);
  border-radius: 0.8rem;
}
@media screen and (min-width: 600px) {
  .l-contact-sp .btn {
    height: 50px;
  }
}
.l-contact-sp .btn .icon {
  text-align: right;
  line-height: 1;
  -ms-grid-column-align: end;
      justify-self: end;
}
.l-contact-sp .btn .text {
  -ms-grid-column-align: start;
      justify-self: start;
}
.l-contact-sp .btn img {
  width: 18px;
  line-height: 1;
}
.l-contact-sp .f-line-sp {
  width: 40px;
}
@media screen and (min-width: 600px) {
  .l-contact-sp .f-line-sp {
    height: 50px;
  }
}

.l-f-kanban {
  display: block;
  text-align: center;
  max-width: 450px;
  width: 90%;
  margin-inline: auto;
  margin-bottom: calc(var(--spacer) * 5);
}
@media screen and (min-width: 980px) {
  .l-f-kanban {
    display: none;
  }
}

.l-header-close {
  background-color: #000;
  height: var(--header-h);
  color: #FFF;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 15;
}
.l-header-close .menu-trigger::before {
  background-color: #FFF;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transform-origin: center center;
          transform-origin: center center;
  top: 50%;
}
.l-header-close .menu-trigger::after {
  background-color: #FFF;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transform-origin: center center;
          transform-origin: center center;
  top: 50%;
  bottom: initial;
}
.l-glonavi-sp {
  position: fixed;
  top: 0;
  right: 0;
  width: 100vw;
  height: 100vh;
  opacity: 0;
  visibility: hidden;
  padding-top: var(--header-h);
  z-index: 10;
  -webkit-transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  background-color: #014471;
}
.l-glonavi-sp.open {
  opacity: 1;
  visibility: visible;
}
.l-glonavi-sp .l-navi-logo {
  position: fixed;
  left: calc(var(--spacer) * 3.5);
  top: 0;
  height: var(--header-h);
  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;
  line-height: 1;
}
.l-glonavi-sp .l-navi-logo img {
  width: clamp(calc(150 * 1px), calc(calc((240 - 150) / (2160 - 600)) * 100vw + calc(150 - calc((240 - 150) / (2160 - 600)) * 600) * 1px), calc(240 * 1px));
}

.l-glonavi-sp-inner {
  height: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.l-glonavi-sp-inner .g-menu-w {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr calc(var(--spacer) * 5) 1fr;
  grid-template-columns: 1fr 1fr;
  -ms-grid-rows: auto calc(var(--spacer) * 8) auto calc(var(--spacer) * 8) auto calc(var(--spacer) * 8) auto calc(var(--spacer) * 8) auto;
      grid-template-areas: "kantei sokuryo" "kantei gyosei" "oss oss" "price about" "blog news";
  -webkit-column-gap: calc(var(--spacer) * 5);
     -moz-column-gap: calc(var(--spacer) * 5);
          column-gap: calc(var(--spacer) * 5);
  row-gap: calc(var(--spacer) * 8);
  margin-top: calc(var(--spacer) * 3.5);
  padding-bottom: calc(2 * calc(var(--spacer) * 10));
  line-height: 1.7;
  letter-spacing: 0.05em;
  font-size: clamp(calc(15 * 1px), calc(calc((32 - 15) / (2160 - 600)) * 100vw + calc(15 - calc((32 - 15) / (2160 - 600)) * 600) * 1px), calc(32 * 1px));
  width: 90%;
}
@media screen and (min-width: 600px) {
  .l-glonavi-sp-inner .g-menu-w {
    width: initial;
  }
}
.l-glonavi-sp-inner .g-menu-w a {
  color: #FFF;
}
.l-glonavi-sp-inner .g-menu > a {
  padding-left: 1em;
  position: relative;
}
.l-glonavi-sp-inner .g-menu > a::before {
  content: "";
  height: 1em;
  width: 2px;
  position: absolute;
  left: 0;
  top: 0.3em;
  background-color: #988747;
  border-radius: 10px;
}
.l-glonavi-sp-inner .l-g-menu_sub a {
  padding-left: 1em;
  position: relative;
}
.l-glonavi-sp-inner .l-g-menu_sub a::before {
  content: "";
  height: 1px;
  width: 0.5em;
  position: absolute;
  left: 0;
  top: 0.8em;
  background-color: #988747;
}

.l-shadow {
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0;
  top: 0;
  background-color: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(5px);
  z-index: 5;
  opacity: 0;
  visibility: hidden;
  position: fixed;
  -webkit-transition: all 0.1s cubic-bezier(0, 0.5, 0.5, 1);
  transition: all 0.1s cubic-bezier(0, 0.5, 0.5, 1);
  cursor: pointer;
}
.l-shadow.open {
  opacity: 1;
  visibility: visible;
}

.home .l-ttl-bc {
  margin-bottom: initial;
}

.l-ttl-bc {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
      grid-template-areas: "ttl" "bc";
}
.l-ttl-bc .l-breadcrumb {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  grid-area: bc;
}

.l-title-w-w {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr auto;
  grid-template-columns: 1fr auto;
  grid-area: ttl;
  width: 100%;
  overflow: hidden;
}

.l-title-w {
  position: relative;
}
.l-title-w::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-image: url("../image/bg-image2.webp");
  background-position: center center;
  background-size: 160%;
  background-repeat: no-repeat;
  z-index: -1;
  mix-blend-mode: multiply;
  opacity: 0.8;
}
@media screen and (min-width: 600px) {
  .l-title-w::after {
    opacity: 1;
    background-size: 100%;
    background-position: right center;
  }
}
.l-title-w::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #014471;
  z-index: -2;
}

.l-title-side {
  width: 5vw;
  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-transform: uppercase;
  line-height: 1;
  letter-spacing: 0.2em;
  font-size: clamp(calc(8 * 1px), calc(calc((14 - 8) / (2160 - 600)) * 100vw + calc(8 - calc((14 - 8) / (2160 - 600)) * 600) * 1px), calc(14 * 1px));
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  color: #FFF;
  white-space: nowrap;
}
.l-title-side.type-b {
  line-height: 1;
  letter-spacing: 0em;
  font-size: clamp(calc(8 * 1px), calc(calc((14 - 8) / (2160 - 600)) * 100vw + calc(8 - calc((14 - 8) / (2160 - 600)) * 600) * 1px), calc(14 * 1px));
}
@media screen and (min-width: 980px) {
  .l-title-side.type-b {
    line-height: 1;
    letter-spacing: 0.1em;
    font-size: clamp(calc(8 * 1px), calc(calc((14 - 8) / (2160 - 600)) * 100vw + calc(8 - calc((14 - 8) / (2160 - 600)) * 600) * 1px), calc(14 * 1px));
  }
}

.l-title {
  position: relative;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr auto;
  grid-template-columns: 1fr auto;
      grid-template-areas: "hdg image";
  height: clamp(calc(70 * 1px), calc(calc((160 - 70) / (2160 - 600)) * 100vw + calc(70 - calc((160 - 70) / (2160 - 600)) * 600) * 1px), calc(160 * 1px));
}

.l-title-column {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
  grid-area: hdg;
  height: 100%;
  width: 20vw;
  position: relative;
}

.l-title > .l-title-column {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}

.p-blog-list-w > .l-title-column {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
}
.l-title-column .l-title-sub {
  line-height: 0.6;
  letter-spacing: 0.05em;
  font-size: clamp(calc(40 * 1px), calc(calc((140 - 40) / (2160 - 600)) * 100vw + calc(40 - calc((140 - 40) / (2160 - 600)) * 600) * 1px), calc(140 * 1px));
  mix-blend-mode: soft-light;
  text-transform: uppercase;
  color: #FFF;
  position: absolute;
  left: 0;
  bottom: 0;
  opacity: 0.2;
  white-space: nowrap;
}
.l-title-column .l-title-sub.type-b {
  line-height: 0.6;
  letter-spacing: 0em;
  font-size: clamp(calc(35 * 1px), calc(calc((140 - 35) / (2160 - 600)) * 100vw + calc(35 - calc((140 - 35) / (2160 - 600)) * 600) * 1px), calc(140 * 1px));
  -webkit-transform: scaleX(0.8);
          transform: scaleX(0.8);
  -webkit-transform-origin: center left;
          transform-origin: center left;
}
@media screen and (min-width: 600px) {
  .l-title-column .l-title-sub.type-b {
    -webkit-transform: initial;
            transform: initial;
  }
}

.l-title-hdg-w {
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.l-title-hdg-w .l-title-heading {
  position: relative;
  -webkit-transform: initial;
          transform: initial;
}
.l-title-hdg-w .l-title-sub-b {
  line-height: 1.7;
  letter-spacing: 0.08em;
  font-size: clamp(calc(10 * 1px), calc(calc((16 - 10) / (2160 - 600)) * 100vw + calc(10 - calc((16 - 10) / (2160 - 600)) * 600) * 1px), calc(16 * 1px));
  color: #dde1e8;
  margin-top: calc(var(--spacer) * 1.5);
  white-space: nowrap;
  text-indent: 0.3em;
}

.l-title-heading {
  white-space: nowrap;
  line-height: 1;
  letter-spacing: 0.1em;
  font-size: clamp(calc(18 * 1px), calc(calc((48 - 18) / (2160 - 600)) * 100vw + calc(18 - calc((48 - 18) / (2160 - 600)) * 600) * 1px), calc(48 * 1px));
  color: #FFF;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.l-breadcrumb {
  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;
  -webkit-column-gap: 0.5em;
     -moz-column-gap: 0.5em;
          column-gap: 0.5em;
  background-color: #e6f3ff;
  padding: calc(var(--spacer) * 1);
}
/*
=============================================================================
   #Object
=============================================================================
*/
/* -----------------------------------------------------------------------------
   #Component
   -------------------------------------------------------------------------- */
.c-hd-a .a-sub {
  line-height: 1;
  letter-spacing: 0.1em;
  font-size: clamp(calc(10 * 1px), calc(calc((12 - 10) / (2160 - 600)) * 100vw + calc(10 - calc((12 - 10) / (2160 - 600)) * 600) * 1px), calc(12 * 1px));
  color: #988747;
  text-transform: capitalize;
  text-indent: 0.2em;
}
.c-hd-a .a-hdg {
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-size: clamp(calc(18 * 1px), calc(calc((40 - 18) / (2160 - 600)) * 100vw + calc(18 - calc((40 - 18) / (2160 - 600)) * 600) * 1px), calc(40 * 1px));
  color: #014471;
}
.c-hd-a .a-hdg.type-b {
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-size: clamp(calc(22 * 1px), calc(calc((54 - 22) / (2160 - 600)) * 100vw + calc(22 - calc((54 - 22) / (2160 - 600)) * 600) * 1px), calc(54 * 1px));
}
.c-hd-a {
  margin-bottom: 1.4em;
}

.c-hd-num-w {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.c-hd-num-w .num {
  line-height: 1;
  letter-spacing: 0em;
  font-size: clamp(calc(16 * 1px), calc(calc((24 - 16) / (2160 - 600)) * 100vw + calc(16 - calc((24 - 16) / (2160 - 600)) * 600) * 1px), calc(24 * 1px));
  color: #014471;
  position: relative;
  height: 100%;
}
.c-hd-num-w .num.type-b {
  line-height: 1;
  letter-spacing: 0em;
  font-size: clamp(calc(18 * 1px), calc(calc((36 - 18) / (2160 - 600)) * 100vw + calc(18 - calc((36 - 18) / (2160 - 600)) * 600) * 1px), calc(36 * 1px));
}
.c-hd-num-w .c-hd-a {
  position: relative;
  padding-left: 1em;
}
.c-hd-num-w .c-hd-a:after {
  content: "";
  height: 100%;
  width: 1px;
  background-color: #014471;
  position: absolute;
  left: 0;
  bottom: 0;
  -webkit-transform: translate(-5%, -5%) rotate(25deg);
          transform: translate(-5%, -5%) rotate(25deg);
  -webkit-transform-origin: center center;
          transform-origin: center center;
}

.c-hd-icon-w {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  /*border-top: 1px solid $clr-c;
  border-bottom: 1px solid $clr-c;*/
}
.c-hd-icon-w .icon {
  background-color: #FFF;
  aspect-ratio: 1/1;
  width: clamp(calc(60 * 1px), calc(calc((90 - 60) / (2160 - 600)) * 100vw + calc(60 - calc((90 - 60) / (2160 - 600)) * 600) * 1px), calc(90 * 1px));
  padding: 0.3em;
  border: 1px solid #014471;
}
.c-hd-icon-w .c-hd-a {
  position: relative;
  padding-left: calc(var(--spacer) * 2.25);
  margin-bottom: initial;
}
.c-hd-icon-w .a-sub-b {
  color: #014471;
}

.c-hd-b, .p-flow .hdg {
  color: #014471;
}

.c-hd-c {
  color: #014471;
  border-bottom: 1px solid #014471;
  border-top: 1px solid #014471;
  padding: 0.5em 0;
  margin-bottom: calc(var(--spacer) * 2.25);
}

.c-hd-d, .c-table-d .hdg, .c-table-a .hdg {
  margin-bottom: calc(var(--spacer) * 2.25);
  color: #014471;
  padding-left: calc(var(--spacer) * 2.25);
  position: relative;
  text-indent: -0.05em;
}
.c-hd-d:before, .c-table-d .hdg:before, .c-table-a .hdg:before {
  position: absolute;
  display: block;
  content: "";
  left: 0;
  top: 0.4em;
  height: calc(100% - 0.8em);
  width: 3px;
  background-color: #014471;
}

.c-hd-e .e-sub {
  line-height: 1;
  letter-spacing: 0.1em;
  font-size: clamp(calc(10 * 1px), calc(calc((12 - 10) / (2160 - 600)) * 100vw + calc(10 - calc((12 - 10) / (2160 - 600)) * 600) * 1px), calc(12 * 1px));
  color: #988747;
  text-transform: capitalize;
  text-indent: 0.2em;
}
.e-hdg {
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-size: clamp(calc(22 * 1px), calc(calc((54 - 22) / (2160 - 600)) * 100vw + calc(22 - calc((54 - 22) / (2160 - 600)) * 600) * 1px), calc(54 * 1px));
  color: #014471;
}

.c-hd-f {
  margin-bottom: calc(var(--spacer) * 2.25);
  color: #014471;
  padding-left: calc(var(--spacer) * 2.25);
  position: relative;
  text-indent: -0.05em;
}
.c-hd-f:before {
  position: absolute;
  display: block;
  content: "";
  left: 0;
  top: 0.4em;
  height: calc(100% - 0.8em);
  width: 3px;
  background-color: #014471;
}

.c-hd-g {
  color: #014471;
}

.wp-pagenavi {
  margin-top: calc(var(--spacer) * 5);
  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-column-gap: 0.5em;
     -moz-column-gap: 0.5em;
          column-gap: 0.5em;
}
.wp-pagenavi span,
.wp-pagenavi a {
  text-decoration: none !important;
  border: none !important;
  padding: initial !important;
  margin: initial !important;
  line-height: 1 !important;
}
.wp-pagenavi .page,
.wp-pagenavi .current,
.wp-pagenavi .nextpostslink,
.wp-pagenavi .previouspostslink {
  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;
  aspect-ratio: 1/1;
  width: clamp(calc(36 * 1px), calc(calc((45 - 36) / (2160 - 600)) * 100vw + calc(36 - calc((45 - 36) / (2160 - 600)) * 600) * 1px), calc(45 * 1px));
  -webkit-transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
}
@media (hover: hover) {
  .wp-pagenavi .page:hover,
  .wp-pagenavi .current:hover,
  .wp-pagenavi .nextpostslink:hover,
  .wp-pagenavi .previouspostslink:hover {
    background-color: #e6f3ff;
  }
}
.wp-pagenavi .current {
  background-color: #222;
  font-weight: normal !important;
  color: #FFF;
}
.wp-pagenavi .current:hover {
  background-color: #222;
}

.c-lo-a {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  -webkit-column-gap: 3%;
     -moz-column-gap: 3%;
          column-gap: 3%;
  row-gap: calc(var(--spacer) * 1.5);
  border-top: 1px solid rgba(0, 0, 0, 0.18);
  padding-top: calc(var(--spacer) * 1.5);
}

.c-lo-a-innr {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto calc(var(--spacer) * 3.5) 1fr;
  grid-template-columns: auto 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: calc(var(--spacer) * 3.5);
     -moz-column-gap: calc(var(--spacer) * 3.5);
          column-gap: calc(var(--spacer) * 3.5);
  line-height: 1.6;
  border-bottom: 1px solid rgba(0, 0, 0, 0.18);
  padding-bottom: calc(var(--spacer) * 1.5);
}
.c-lo-a-innr .lo-a-text {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -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;
  -webkit-transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
}
.c-lo-a-innr .c-image-b {
  width: clamp(calc(90 * 1px), calc(calc((120 - 90) / (2160 - 600)) * 100vw + calc(90 - calc((120 - 90) / (2160 - 600)) * 600) * 1px), calc(120 * 1px));
}

.c-lo-b {
  padding: calc(var(--spacer) * 10) 0;
  background-color: #e6f3ff;
  overflow: hidden;
  position: relative;
}

.c-ovf-a .ovf-a-inr {
  overflow-x: auto;
}
.c-ovf-a .info {
  margin-bottom: calc(var(--spacer) * 1.5);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-column-gap: 0.5em;
     -moz-column-gap: 0.5em;
          column-gap: 0.5em;
}
.c-ovf-a .info:after {
  font-family: "Material Icons";
  content: "\eac9";
  line-height: 1 !important;
}
@media screen and (min-width: 600px) {
  .c-ovf-a .info {
    display: none;
  }
}
.c-ovf-a .c-table-b, .c-ovf-a .c-table-c {
  min-width: 600px;
}
@media screen and (min-width: 600px) {
  .c-ovf-a .c-table-b, .c-ovf-a .c-table-c {
    min-width: initial;
  }
}

.c-list-a {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  row-gap: 0.8em;
}
.c-list-a li {
  padding-left: 1.2em;
  position: relative;
}
.c-list-a li:after {
  font-family: "Material Icons";
  content: "\e86c";
  color: #014471;
  line-height: 1 !important;
  position: absolute;
  left: 0;
  top: 0.6em;
}

.c-list-b {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  row-gap: 0.5em;
}
.c-list-b li {
  padding-left: 1.2em;
  position: relative;
  line-height: 1.6 !important;
}
.c-list-b li:after {
  font-family: "Material Icons";
  content: "\e834";
  color: #FFF;
  line-height: 1 !important;
  position: absolute;
  left: 0;
  top: 0.3em;
}

.c-list-c {
  display: -ms-grid;
  display: grid;
  row-gap: 1em;
}
.c-list-c > li {
  padding-left: 1.8em;
  position: relative;
}
.c-list-c > li > p {
  position: absolute;
  left: 0;
  top: 0;
}
.c-list-c .c-hd-g {
  margin-top: calc(var(--spacer) * 3.5);
}

.c-list-d {
  display: -ms-grid;
  display: grid;
  row-gap: 1em;
}
.c-list-d > li {
  padding-left: 1.4em;
  position: relative;
}
.c-list-d > li > p {
  position: absolute;
  left: 0;
  top: 0;
  display: inline-block;
}

.c-list-e {
  list-style: decimal;
  counter-reset: num;
}
.c-list-e li {
  display: inline-block;
  list-style: none;
  counter-increment: num;
  position: relative;
  padding-left: 1.2em;
}
.c-list-e li::before {
  content: counter(num) ".";
  position: absolute;
  left: 0;
}
.c-list-e li + li {
  margin-right: 1em;
}

.c-table-a {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  background-color: #f4f6f9;
  border-top: 1px solid rgba(0, 0, 0, 0.18);
  border-right: 1px solid rgba(0, 0, 0, 0.18);
  border-left: 1px solid rgba(0, 0, 0, 0.18);
}
@media screen and (min-width: 980px) {
  .c-table-a {
    -ms-grid-columns: auto 1fr;
    grid-template-columns: auto 1fr;
  }
}
.c-table-a .a-th {
  text-align: center;
  padding: calc(var(--spacer) * 1.5);
  background-color: #014471 !important;
  color: #FFF;
}
@media screen and (min-width: 980px) {
  .c-table-a .a-th {
    border-top: 1px solid #f4f6f9;
    text-align: left;
    padding: calc(var(--spacer) * 2.25);
  }
}
.c-table-a .a-th:first-child {
  border-top: none;
}
.c-table-a .a-td {
  padding: calc(var(--spacer) * 2.25);
  border-bottom: 1px solid rgba(0, 0, 0, 0.18);
}
@media screen and (min-width: 980px) {
  .c-table-a .a-td:nth-child(4n+2) {
    background-color: #FFF !important;
  }
}
.c-table-a ul + .clm,
.c-table-a .clm + .clm {
  margin-top: calc(var(--spacer) * 3.5);
}
@media screen and (min-width: 980px) {
  .c-table-a.type-b {
    -ms-grid-columns: auto auto;
    grid-template-columns: auto auto;
  }
}
.c-table-a.type-b .a-th {
  text-align: left;
}

.c-table-b {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (auto)[5];
  grid-template-columns: repeat(5, auto);
  background-color: #f4f6f9;
  border-top: 1px solid rgba(0, 0, 0, 0.18);
  border-right: 1px solid rgba(0, 0, 0, 0.18);
  border-left: 1px solid rgba(0, 0, 0, 0.18);
}
.c-table-b .item {
  padding: calc(var(--spacer) * 2.25);
  border-bottom: 1px solid rgba(0, 0, 0, 0.18);
}
.c-table-b .item.b-th {
  padding: calc(var(--spacer) * 1.5) calc(var(--spacer) * 2.25) !important;
  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;
  z-index: 2;
  color: #FFF;
  position: relative;
  background-color: #014471 !important;
  border-left: 1px solid #f4f6f9;
}
.c-table-b .item.b-th:first-child {
  border-left: none;
}
.c-table-b .item:nth-child(10n+1),
.c-table-b .item:nth-child(10n+2),
.c-table-b .item:nth-child(10n+3),
.c-table-b .item:nth-child(10n+4),
.c-table-b .item:nth-child(10n+5) {
  background-color: #FFF;
}

.c-table-c {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (auto)[3];
  grid-template-columns: repeat(3, auto);
  background-color: #f4f6f9;
  border: 1px solid rgba(0, 0, 0, 0.18);
}
.c-table-c .item {
  padding: calc(var(--spacer) * 2.25);
}
.c-table-c .item.c-th {
  padding: calc(var(--spacer) * 1.5) calc(var(--spacer) * 2.25);
  text-align: center;
  z-index: 2;
  color: #FFF;
  position: relative;
  background-color: #014471 !important;
  border-left: 1px solid #f4f6f9;
}
.c-table-c .item.c-th:first-child {
  border-left: none;
}
.c-table-c .item.bdr {
  border-top: 1px solid rgba(0, 0, 0, 0.18);
}
.c-table-c .item:nth-child(6n+1),
.c-table-c .item:nth-child(6n+2),
.c-table-c .item:nth-child(6n+3) {
  background-color: #FFF;
}

.c-table-d {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  row-gap: calc(var(--spacer) * 8);
}
.c-table-d .hdg {
  /*margin-bottom: $s-xs;*/
}
.c-table-d .clm + .hdg {
  margin-top: calc(var(--spacer) * 3.5);
}
.c-table-d a {
  color: #1558d6;
}
.c-table-d a:hover {
  text-decoration: underline;
}
.c-table-d ul ul {
  margin-top: calc(var(--spacer) * 3.5);
}
.c-table-d ul + .c-hd-g {
  margin-top: calc(var(--spacer) * 3.5);
}
.c-table-d .border {
  border-top: 1px solid #014471;
  padding-top: calc(var(--spacer) * 2.25);
}

.c-table-e {
  display: -ms-grid;
  display: grid;
  row-gap: 1px;
  -webkit-column-gap: 1px;
     -moz-column-gap: 1px;
          column-gap: 1px;
  background-color: #f4f6f9;
  border: 1px solid #dde1e8;
  background-color: #dde1e8;
  -ms-grid-columns: 1fr 1px 1fr;
  grid-template-columns: 1fr 1fr;
}
.c-table-e .a-th {
  padding: calc(var(--spacer) * 2.25);
  background-color: #f4f6f9 !important;
}
.c-table-e .a-td {
  padding: calc(var(--spacer) * 2.25);
  background-color: #FFF;
}
.c-table-e .row2 {
  -ms-grid-row-span: 2;
  grid-row: span 2;
}

main {
  padding-bottom: calc(var(--spacer) * 10);
  position: relative;
  /*
  &::after {
      content: "";
      width: 100%;
      height: 100%;
      position: absolute;
      left: 0;
      bottom: 0;
      background-image: url("../image/bg-image1.webp");
  background-position: center bottom;
  background-size: 140%;
  background-repeat: no-repeat;
  z-index: -1;
  opacity: 0.5;
  @include bp(sm) {
       background-size: 80%;
         background-position: right bottom;
  }
  }*/
}
main.type-b {
  padding-bottom: initial;
}

.c-btn-a {
  position: relative;
  padding-right: 50px;
  -webkit-transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
}
@media screen and (min-width: 980px) {
  .c-btn-a {
    padding-right: 80px;
  }
}
.c-btn-a .c-arrow-a-w {
  border-bottom-right-radius: initial;
  -webkit-transform: translateY(-30%);
          transform: translateY(-30%);
}
@media (hover: hover) {
  .c-btn-a:hover {
    text-decoration: underline;
  }
}

.c-image-a {
  position: relative;
  aspect-ratio: 1.6/1;
  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;
  background-color: #e6f3ff;
  overflow: hidden;
}
.c-image-a img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 1;
}

.c-image-b {
  position: relative;
  aspect-ratio: 1/1;
  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;
  background-color: #dde1e8;
  overflow: hidden;
  color: #FFF;
}
.c-image-b .c-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.c-arrow-a {
  fill: #222;
  overflow: hidden;
  height: 5px;
  width: clamp(calc(15 * 1px), calc(calc((25 - 15) / (2160 - 600)) * 100vw + calc(15 - calc((25 - 15) / (2160 - 600)) * 600) * 1px), calc(25 * 1px));
  aspect-ratio: 4.6/1;
}

.clearfix::after {
  content: "";
  clear: both;
  display: block;
}

.c-border {
  position: relative;
  height: calc(2.2 * calc(var(--spacer) * 8));
}
.c-border::before {
  content: "";
  width: 100%;
  height: 1px;
  background-color: rgba(0, 0, 0, 0.18);
  position: absolute;
  top: 50%;
}

.c-scale-a {
  -webkit-transform: scaleX(0.95);
          transform: scaleX(0.95);
  -webkit-transform-origin: center left;
          transform-origin: center left;
}

.c-arrow-a-w {
  position: absolute;
  right: 0;
  bottom: 0;
  background-color: #fff000;
  height: clamp(calc(10 * 1px), calc(calc((15 - 10) / (2160 - 600)) * 100vw + calc(10 - calc((15 - 10) / (2160 - 600)) * 600) * 1px), calc(15 * 1px));
  width: clamp(calc(40 * 1px), calc(calc((70 - 40) / (2160 - 600)) * 100vw + calc(40 - calc((70 - 40) / (2160 - 600)) * 600) * 1px), calc(70 * 1px));
  border-bottom-right-radius: 0.8rem;
  -webkit-transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  z-index: 5;
}
.c-arrow-a-w .c-arrow-a {
  position: absolute;
  right: 20%;
  bottom: 0;
  -webkit-transform: translateY(-70%);
          transform: translateY(-70%);
  -webkit-transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
}
@media (hover: hover) {
  .c-arrow-a-w.action {
    background-color: #ffff3c;
  }
  .c-arrow-a-w.action .c-arrow-a {
    -webkit-transform: translate(40%, -70%);
            transform: translate(40%, -70%);
  }
}

.c-center, .p-oss-a .oss-item.circle::after {
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

span.br {
  display: inline-block;
}

.c-scalex-a-w {
  width: calc(90vw - 60px);
  overflow: hidden;
}
@media screen and (min-width: 600px) {
  .c-scalex-a-w {
    width: initial;
    overflow: initial;
  }
}

.c-scalex-a {
  -webkit-transform: scaleX(0.85);
          transform: scaleX(0.85);
  -webkit-transform-origin: center left;
          transform-origin: center left;
  white-space: nowrap;
}
@media screen and (min-width: 600px) {
  .c-scalex-a {
    -webkit-transform: initial;
            transform: initial;
  }
}

@media (hover: hover) {
  .a-hv-a .c-image {
    -webkit-transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
    transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  }
  .a-hv-a:hover .c-image {
    -webkit-transform: scale(1.08);
            transform: scale(1.08);
  }
  .a-hv-a:hover .lo-a-text .hdg {
    text-decoration: underline;
  }
}
.c-tag-a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  /*flex-wrap: wrap;*/
  -webkit-column-gap: 0.7em;
     -moz-column-gap: 0.7em;
          column-gap: 0.7em;
  row-gap: 0.7em;
  -webkit-column-gap: 1em;
     -moz-column-gap: 1em;
          column-gap: 1em;
}
.c-tag-a a {
  /*flex: auto;
  width: auto;*/
  padding: 0.4em 0.9em;
  border-radius: 100px;
  -webkit-transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  background-color: #FFF;
  border: 1px solid #1558d6;
  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-column-gap: 0.3em;
     -moz-column-gap: 0.3em;
          column-gap: 0.3em;
  text-decoration: none !important;
}
@media screen and (min-width: 600px) {
  .c-tag-a a {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
  }
}
@media (hover: hover) {
  .c-tag-a a:hover {
    text-decoration: underline !important;
  }
}
.c-tag-a a::before {
  content: "#";
}

.c-dvd-a {
  /*overflow: hidden;*/
  opacity: 0;
}
.c-dvd-a.show {
  opacity: 1;
}
.c-dvd-a span {
  display: inline-block;
  -webkit-transform: translate(0, -30%);
          transform: translate(0, -30%);
  -webkit-transition: all cubic-bezier(0, 0.5, 0.5, 1) 0.5s;
  transition: all cubic-bezier(0, 0.5, 0.5, 1) 0.5s;
  opacity: 0;
}
.c-dvd-a.show span {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  opacity: 1;
}
.c-dvd-a.show span:nth-child(2) {
  -webkit-transition-delay: 0.08s;
          transition-delay: 0.08s;
}
.c-dvd-a.show span:nth-child(3) {
  -webkit-transition-delay: 0.16s;
          transition-delay: 0.16s;
}
.c-dvd-a.show span:nth-child(4) {
  -webkit-transition-delay: 0.24s;
          transition-delay: 0.24s;
}
.c-dvd-a.show span:nth-child(5) {
  -webkit-transition-delay: 0.32s;
          transition-delay: 0.32s;
}
.c-dvd-a.show span:nth-child(6) {
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}
.c-dvd-a.show span:nth-child(7) {
  -webkit-transition-delay: 0.48s;
          transition-delay: 0.48s;
}
.c-dvd-a.show span:nth-child(8) {
  -webkit-transition-delay: 0.56s;
          transition-delay: 0.56s;
}
.c-dvd-a.show span:nth-child(9) {
  -webkit-transition-delay: 0.64s;
          transition-delay: 0.64s;
}
.c-dvd-a.show span:nth-child(10) {
  -webkit-transition-delay: 0.72s;
          transition-delay: 0.72s;
}
.c-dvd-a.show span:nth-child(11) {
  -webkit-transition-delay: 0.8s;
          transition-delay: 0.8s;
}
.c-dvd-a.show span:nth-child(12) {
  -webkit-transition-delay: 0.88s;
          transition-delay: 0.88s;
}
.c-dvd-a.show span:nth-child(13) {
  -webkit-transition-delay: 0.96s;
          transition-delay: 0.96s;
}
.c-dvd-a.show span:nth-child(14) {
  -webkit-transition-delay: 1.04s;
          transition-delay: 1.04s;
}
.c-dvd-a.show span:nth-child(15) {
  -webkit-transition-delay: 1.12s;
          transition-delay: 1.12s;
}
.c-dvd-a.show span:nth-child(16) {
  -webkit-transition-delay: 1.2s;
          transition-delay: 1.2s;
}
.c-dvd-a.show span:nth-child(17) {
  -webkit-transition-delay: 1.28s;
          transition-delay: 1.28s;
}
.c-dvd-a.show span:nth-child(18) {
  -webkit-transition-delay: 1.36s;
          transition-delay: 1.36s;
}
.c-dvd-a.show span:nth-child(19) {
  -webkit-transition-delay: 1.44s;
          transition-delay: 1.44s;
}
.c-dvd-a.show span:nth-child(20) {
  -webkit-transition-delay: 1.52s;
          transition-delay: 1.52s;
}
.c-dvd-a.show span:nth-child(21) {
  -webkit-transition-delay: 1.6s;
          transition-delay: 1.6s;
}
.c-dvd-a.show span:nth-child(22) {
  -webkit-transition-delay: 1.68s;
          transition-delay: 1.68s;
}
.c-dvd-a.show span:nth-child(23) {
  -webkit-transition-delay: 1.76s;
          transition-delay: 1.76s;
}
.c-dvd-a.show span:nth-child(24) {
  -webkit-transition-delay: 1.84s;
          transition-delay: 1.84s;
}
.c-dvd-a.show span:nth-child(25) {
  -webkit-transition-delay: 1.92s;
          transition-delay: 1.92s;
}
.c-dvd-a.show span:nth-child(26) {
  -webkit-transition-delay: 2s;
          transition-delay: 2s;
}
.c-dvd-a.show span:nth-child(27) {
  -webkit-transition-delay: 2.08s;
          transition-delay: 2.08s;
}
.c-dvd-a.show span:nth-child(28) {
  -webkit-transition-delay: 2.16s;
          transition-delay: 2.16s;
}
.c-dvd-a.show span:nth-child(29) {
  -webkit-transition-delay: 2.24s;
          transition-delay: 2.24s;
}
.c-dvd-a.show span:nth-child(30) {
  -webkit-transition-delay: 2.32s;
          transition-delay: 2.32s;
}
.c-dvd-a.show span:nth-child(31) {
  -webkit-transition-delay: 2.4s;
          transition-delay: 2.4s;
}
.c-dvd-a.show span:nth-child(32) {
  -webkit-transition-delay: 2.48s;
          transition-delay: 2.48s;
}
.c-dvd-a.show span:nth-child(33) {
  -webkit-transition-delay: 2.56s;
          transition-delay: 2.56s;
}
.c-dvd-a.show span:nth-child(34) {
  -webkit-transition-delay: 2.64s;
          transition-delay: 2.64s;
}
.c-dvd-a.show span:nth-child(35) {
  -webkit-transition-delay: 2.72s;
          transition-delay: 2.72s;
}
.c-dvd-a.show span:nth-child(36) {
  -webkit-transition-delay: 2.8s;
          transition-delay: 2.8s;
}
.c-dvd-a.show span:nth-child(37) {
  -webkit-transition-delay: 2.88s;
          transition-delay: 2.88s;
}
.c-dvd-a.show span:nth-child(38) {
  -webkit-transition-delay: 2.96s;
          transition-delay: 2.96s;
}
.c-dvd-a.show span:nth-child(39) {
  -webkit-transition-delay: 3.04s;
          transition-delay: 3.04s;
}
.c-dvd-a.show span:nth-child(40) {
  -webkit-transition-delay: 3.12s;
          transition-delay: 3.12s;
}

.c-form-a {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  row-gap: 2em;
}

input[type=text], .p-postal-code, input[type=email], textarea, .wpcf7-text {
  width: 100%;
  border: none;
  padding: 0.5em;
  background-color: #e6f3ff;
}
@media screen and (min-width: 600px) {
  input[type=text].half, .p-postal-code.half, input[type=email].half, textarea.half, .wpcf7-text.half {
    width: 50% !important;
  }
}

input[type=submit] {
  position: relative;
  background-repeat: no-repeat;
  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-appearance: none !important;
  -moz-appearance: none !important;
       appearance: none !important;
  -webkit-text-fill-color: #222 !important;
  height: clamp(calc(50 * 1px), calc(calc((60 - 50) / (2160 - 600)) * 100vw + calc(50 - calc((60 - 50) / (2160 - 600)) * 600) * 1px), calc(60 * 1px));
  background-color: #fff000;
  margin-inline: auto;
  font-weight: 600;
  width: 100%;
  max-width: 200px;
  color: #222 !important;
}
input[type=submit]:hover {
  -webkit-filter: brightness(1.05);
          filter: brightness(1.05);
}

.wpcf7-not-valid-tip {
  color: #d70303;
}

.wpcf7-response-output {
  border: initial !important;
  margin: initial !important;
  padding: initial !important;
  text-align: center;
}

.wpcf7-not-valid-tip {
  font-size: 0.7em !important;
  margin-top: 0.2em;
}

.wpcf7-response-output {
  color: #d70303 !important;
}

.grecaptcha-badge {
  visibility: hidden;
}

.g-link a {
  color: #1558d6;
}

/* -----------------------------------------------------------------------------
   #Project
   -------------------------------------------------------------------------- */
/*@import "object/project/tinymce";*/
.p-contact-form .wpcf7-form {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  row-gap: calc(var(--spacer) * 5);
}
.p-contact-form input[type=text],
.p-contact-form input[type=email],
.p-contact-form textarea,
.p-contact-form .p-postal-code {
  width: 100%;
  border: none;
  padding: 1em;
  background-color: #FFF;
  font-size: 1.5rem;
}

.p-top-s-menu-w {
  width: 100%;
  z-index: 5;
  background-color: #014471;
  position: relative;
  margin-top: 3svh;
  padding-bottom: calc(var(--spacer) * 5);
}
@media screen and (min-width: 600px) {
  .p-top-s-menu-w {
    height: calc(35% - 4svh);
    margin-top: 4svh;
    padding-bottom: initial;
  }
}
@media screen and (min-width: 1460px) {
  .p-top-s-menu-w {
    height: calc(30% - 4svh);
  }
}
.p-top-s-menu-w:before {
  position: absolute;
  left: 0;
  bottom: 0;
  content: "";
  width: 100%;
  height: 100%;
  mix-blend-mode: multiply;
  z-index: -2;
  background-image: url("../image/bg-image1.webp");
  background-position: center center;
  background-repeat: no-repeat;
}
.p-top-s-menu-w:after {
  position: absolute;
  left: 0;
  top: 0;
  content: "";
  width: 100%;
  height: 20%;
  background-color: #FFF;
  z-index: -1;
}

.p-top-s-menu {
  position: relative;
  height: 88%;
  /*
  &:after {
      position: absolute;
      left: 0;
      bottom: 0;
      content: "";
      width: 100%;
      height: 45%;
      background-color: $clr-c;
      z-index: -2;

      @include bp(sm) {
          width: 100%;
          height: 70%;
      }

      @include bp(lg) {
          width: 100%;
      }
  }*/
}
.p-top-s-menu .s-m-item {
  background-color: #FFF;
  /*border: 1px solid $clr-e;*/
  border-radius: 0.8rem;
  -webkit-box-shadow: rgba(0, 0, 0, 0.1) 0.2em 0.2em 0;
          box-shadow: rgba(0, 0, 0, 0.1) 0.2em 0.2em 0;
  -webkit-transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  -ms-grid-rows: 1fr auto;
  grid-template-rows: 1fr auto;
}
.p-top-s-menu .s-m-item > *:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.p-top-s-menu .s-m-item > *:nth-child(2) {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
}
.p-top-s-menu .s-m-item .text {
  padding-left: 0.8em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -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;
  height: clamp(calc(48 * 1px), calc(calc((60 - 48) / (2160 - 600)) * 100vw + calc(48 - calc((60 - 48) / (2160 - 600)) * 600) * 1px), calc(60 * 1px));
  position: relative;
}
.p-top-s-menu .s-m-item h2 {
  line-height: 1.2;
  letter-spacing: 0em;
  font-size: clamp(calc(15 * 1px), calc(calc((18 - 15) / (2160 - 600)) * 100vw + calc(15 - calc((18 - 15) / (2160 - 600)) * 600) * 1px), calc(18 * 1px));
}
.p-top-s-menu .s-m-item .sub {
  line-height: 1.4;
  letter-spacing: 0em;
  font-size: clamp(calc(9 * 1px), calc(calc((14 - 9) / (2160 - 600)) * 100vw + calc(9 - calc((14 - 9) / (2160 - 600)) * 600) * 1px), calc(14 * 1px));
  margin-top: 0.2em;
}
.p-top-s-menu .s-m-item .image {
  position: relative;
  height: 50px;
  overflow: hidden;
  border-top-left-radius: 0.8rem;
  border-top-right-radius: 0.8rem;
}
@media screen and (min-width: 600px) {
  .p-top-s-menu .s-m-item .image {
    height: 100%;
  }
}
.p-top-s-menu .s-m-item .image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-top-s-menu .s-m-item-b {
  background-color: #FFF;
  border: 1px solid rgba(0, 0, 0, 0.18);
  border-radius: 0.8rem;
  -webkit-box-shadow: rgba(0, 0, 0, 0.1) 0.2em 0.2em 0;
          box-shadow: rgba(0, 0, 0, 0.1) 0.2em 0.2em 0;
  -webkit-transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  -ms-grid-rows: auto 1fr;
  grid-template-rows: auto 1fr;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
.p-top-s-menu .s-m-item-b > *:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.p-top-s-menu .s-m-item-b > *:nth-child(2) {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
}
.p-top-s-menu .s-m-item-b .text {
  padding: 1.5em 1.2em;
  position: relative;
}
.p-top-s-menu .s-m-item-b h3 {
  white-space: nowrap;
  margin-bottom: calc(var(--spacer) * 1.5);
}
.p-top-s-menu .s-m-item-b .image {
  position: relative;
  aspect-ratio: 2/1;
  overflow: hidden;
  border-top-left-radius: 0.8rem;
  border-top-right-radius: 0.8rem;
}
.p-top-s-menu .s-m-item-b .image .c-hd-num-w {
  position: absolute;
  left: calc(var(--spacer) * 1.5);
  top: calc(var(--spacer) * 1.5);
  z-index: 3;
}
.p-top-s-menu .s-m-item-b .image .c-hd-num-w .num {
  position: relative;
  color: #FFF;
  line-height: 1;
  letter-spacing: 0em;
  font-size: clamp(calc(18 * 1px), calc(calc((24 - 18) / (2160 - 600)) * 100vw + calc(18 - calc((24 - 18) / (2160 - 600)) * 600) * 1px), calc(24 * 1px));
  height: clamp(calc(60 * 1px), calc(calc((80 - 60) / (2160 - 600)) * 100vw + calc(60 - calc((80 - 60) / (2160 - 600)) * 600) * 1px), calc(80 * 1px));
}
.p-top-s-menu .s-m-item-b .image .c-hd-num-w .num:after {
  content: "";
  height: 100%;
  width: 1px;
  background-color: #FFF;
  position: absolute;
  right: 0;
  bottom: 0;
  -webkit-transform: translate(-5%, -5%) rotate(25deg);
          transform: translate(-5%, -5%) rotate(25deg);
  -webkit-transform-origin: center center;
          transform-origin: center center;
}
.p-top-s-menu .s-m-item-b .image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 1;
}
.p-top-s-menu .p-top-s-menu-inr {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr calc(var(--spacer) * 2.25) 1fr;
  grid-template-columns: repeat(2, 1fr);
  -webkit-column-gap: calc(var(--spacer) * 2.25);
     -moz-column-gap: calc(var(--spacer) * 2.25);
          column-gap: calc(var(--spacer) * 2.25);
  row-gap: calc(var(--spacer) * 2.25);
  height: 100%;
}
@media screen and (min-width: 980px) {
  .p-top-s-menu .p-top-s-menu-inr {
    -webkit-column-gap: 2%;
       -moz-column-gap: 2%;
            column-gap: 2%;
    -ms-grid-columns: 1fr 2% 1fr 2% 1fr 2% 1fr;
    grid-template-columns: repeat(4, 1fr);
  }
}
@media screen and (min-width: 1460px) {
  .p-top-s-menu .p-top-s-menu-inr {
    -webkit-column-gap: 2.5%;
       -moz-column-gap: 2.5%;
            column-gap: 2.5%;
  }
}
.p-top-s-menu .p-top-s-menu-inr-b {
  display: -ms-grid;
  display: grid;
  -webkit-column-gap: 3%;
     -moz-column-gap: 3%;
          column-gap: 3%;
  row-gap: calc(var(--spacer) * 5);
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
}
@media screen and (min-width: 980px) {
  .p-top-s-menu .p-top-s-menu-inr-b {
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr);
  }
}

.p-top-message {
  padding-bottom: calc(var(--spacer) * 10);
  position: relative;
  overflow: hidden;
}
.p-top-message:before {
  position: absolute;
  right: 0;
  top: 0;
  content: "";
  width: 100%;
  height: 100%;
  opacity: 0.6;
  z-index: -1;
  background-image: url("../image/bg-image1.webp");
  background-position: right 60% bottom;
  background-repeat: no-repeat;
  background-size: 160%;
}
@media screen and (min-width: 980px) {
  .p-top-message:before {
    background-position: right -40% bottom;
    background-size: 90%;
  }
}
.p-top-message .c-image-a {
  float: right;
  width: clamp(calc(160 * 1px), calc(calc((440 - 160) / (2160 - 600)) * 100vw + calc(160 - calc((440 - 160) / (2160 - 600)) * 600) * 1px), calc(440 * 1px));
  margin-left: 1em;
  margin-right: -5vw;
  margin-bottom: 1em;
  -webkit-box-shadow: rgba(0, 0, 0, 0.3) 0px 25px 20px -20px;
          box-shadow: rgba(0, 0, 0, 0.3) 0px 25px 20px -20px;
}
@media screen and (min-width: 980px) {
  .p-top-message .c-image-a {
    margin-left: 1.5em;
  }
}
.p-top-message .c-image-b {
  float: right;
  width: clamp(calc(150 * 1px), calc(calc((220 - 150) / (2160 - 600)) * 100vw + calc(150 - calc((220 - 150) / (2160 - 600)) * 600) * 1px), calc(220 * 1px));
  margin-left: 1em;
  margin-bottom: 1em;
  -webkit-box-shadow: rgba(0, 0, 0, 0.3) 0px 25px 20px -20px;
          box-shadow: rgba(0, 0, 0, 0.3) 0px 25px 20px -20px;
}
@media screen and (min-width: 980px) {
  .p-top-message .c-image-b {
    margin-left: 1.5em;
  }
}
.p-top-message.type-b {
  padding: initial;
}
.p-top-message.type-b:before {
  display: none;
}
.p-top-message.type-c {
  padding-bottom: initial;
  padding-top: initial;
}
.p-top-message.type-c:before {
  display: none;
}
.p-top-message.type-d:before {
  display: none;
}

.p-top-service {
  padding: calc(var(--spacer) * 10) 0;
  background-color: #e6f3ff;
  overflow: hidden;
  position: relative;
}
.p-top-service:before {
  position: absolute;
  left: 50%;
  top: 0;
  content: "SERVICE";
  color: #FFF;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  line-height: 0.8;
  letter-spacing: 0.1em;
  font-size: clamp(calc(90 * 1px), calc(calc((440 - 90) / (2160 - 600)) * 100vw + calc(90 - calc((440 - 90) / (2160 - 600)) * 600) * 1px), calc(440 * 1px));
  z-index: 1;
  /*mix-blend-mode: soft-light;*/
  opacity: 0.5;
}
.p-top-service .p-ts-innr {
  position: relative;
  z-index: 3;
}

.p-top-service-list {
  display: -ms-grid;
  display: grid;
  margin-top: calc(var(--spacer) * 5);
  -webkit-column-gap: calc(var(--spacer) * 3.5);
     -moz-column-gap: calc(var(--spacer) * 3.5);
          column-gap: calc(var(--spacer) * 3.5);
  row-gap: calc(var(--spacer) * 3.5);
  -ms-grid-columns: 1fr calc(var(--spacer) * 3.5) 1fr;
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (min-width: 980px) {
  .p-top-service-list {
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (min-width: 1460px) {
  .p-top-service-list {
    -ms-grid-columns: (1fr)[4];
    grid-template-columns: repeat(4, 1fr);
  }
}
.p-top-service-list .list-item {
  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;
  -webkit-column-gap: calc(var(--spacer) * 1.5);
     -moz-column-gap: calc(var(--spacer) * 1.5);
          column-gap: calc(var(--spacer) * 1.5);
  height: clamp(calc(80 * 1px), calc(calc((100 - 80) / (2160 - 600)) * 100vw + calc(80 - calc((100 - 80) / (2160 - 600)) * 600) * 1px), calc(100 * 1px));
  background-color: #FFF;
  border-radius: 0.8rem;
  -webkit-box-shadow: rgba(0, 0, 0, 0.1) 0.1em 0.15em 0;
          box-shadow: rgba(0, 0, 0, 0.1) 0.1em 0.15em 0;
  padding: 0 0.5em;
  position: relative;
  -webkit-transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
}
.p-top-service-list .list-item h3 {
  line-height: 1.6 !important;
}
.p-top-service-list .list-item .icon {
  width: clamp(calc(40 * 1px), calc(calc((80 - 40) / (2160 - 600)) * 100vw + calc(40 - calc((80 - 40) / (2160 - 600)) * 600) * 1px), calc(80 * 1px));
}
.p-top-service-list .list-item .icon img {
  width: clamp(calc(40 * 1px), calc(calc((80 - 40) / (2160 - 600)) * 100vw + calc(40 - calc((80 - 40) / (2160 - 600)) * 600) * 1px), calc(80 * 1px));
  display: block;
}
@media (hover: hover) {
  .p-top-service-list .list-item:hover {
    -webkit-box-shadow: rgba(0, 0, 0, 0.1) -0.1em -0.15em 0;
            box-shadow: rgba(0, 0, 0, 0.1) -0.1em -0.15em 0;
  }
}
.p-top-service-list .list-item.type-b {
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1/3;
}
@media screen and (min-width: 980px) {
  .p-top-service-list .list-item.type-b {
    grid-column: initial;
  }
}

.p-top-blog-w {
  padding: calc(var(--spacer) * 10) 0;
  background-image: url("../image/blueprint-bg.webp");
  background-position: left top;
  background-size: 120%;
  background-repeat: no-repeat;
  overflow: hidden;
}
@media screen and (min-width: 980px) {
  .p-top-blog-w {
    background-size: 80%;
  }
}
.p-top-blog-w.type-b {
  border-top: 1px solid rgba(0, 0, 0, 0.18);
}

.p-top-blog {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  -webkit-column-gap: 8%;
     -moz-column-gap: 8%;
          column-gap: 8%;
  row-gap: calc(var(--spacer) * 5);
}
@media screen and (min-width: 980px) {
  .p-top-blog {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}

.p-blog-bg {
  padding-top: calc(var(--spacer) * 10);
  background-image: url("../image/blueprint-bg.webp");
  background-position: left top;
  background-size: 120%;
  background-repeat: no-repeat;
  overflow: hidden;
}
@media screen and (min-width: 980px) {
  .p-blog-bg {
    background-size: 80%;
  }
}

.p-blog-list-w {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  -ms-grid-rows: auto calc(var(--spacer) * 5) auto calc(var(--spacer) * 5) auto calc(var(--spacer) * 5) auto;
      grid-template-areas: "cat" "hdg" "main" "navi";
  -webkit-column-gap: 6%;
     -moz-column-gap: 6%;
          column-gap: 6%;
  row-gap: calc(var(--spacer) * 5);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
@media screen and (min-width: 980px) {
  .p-blog-list-w {
    row-gap: calc(var(--spacer) * 2.25);
    -ms-grid-columns: 1fr auto;
    grid-template-columns: 1fr auto;
    -ms-grid-rows: auto calc(var(--spacer) * 2.25) auto calc(var(--spacer) * 2.25) auto;
        grid-template-areas: "hdg hdg" "main cat" "navi cat";
  }
  .p-blog-list-w > .l-title-column {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
  }
}
.p-blog-list-w.type-b {
      grid-template-areas: "cat" "main";
}
@media screen and (min-width: 980px) {
  .p-blog-list-w.type-b {
        grid-template-areas: "main cat";
  }
}
.p-blog-list-w.type-c {
      grid-template-areas: "cat" "main";
}
@media screen and (min-width: 980px) {
  .p-blog-list-w.type-c {
        grid-template-areas: "main cat";
  }
}
.p-blog-list-w .c-hd-a {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  grid-area: hdg;
  margin-bottom: initial;
}
.p-blog-list-w .b-list-w {
  -ms-grid-row: 5;
  -ms-grid-column: 1;
  grid-area: main;
}
.p-blog-list-w .p-blog-side {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: cat;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1px 1fr;
  grid-template-columns: 1fr 1fr;
      grid-template-areas: "search search" "btn-a btn-b" "list-a list-a";
  -webkit-column-gap: 1px;
     -moz-column-gap: 1px;
          column-gap: 1px;
}
@media screen and (min-width: 980px){
  .p-blog-list-w > .c-hd-a {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
  }
  .p-blog-list-w .b-list-w {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  .p-blog-list-w.type-b > .b-list-w {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-blog-list-w.type-c > .b-list-w {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-blog-list-w .p-blog-side {
    -ms-grid-row: 3;
    -ms-grid-row-span: 3;
    -ms-grid-column: 2;
  }
  .p-blog-list-w.type-b > .p-blog-side {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 2;
  }
  .p-blog-list-w.type-c > .p-blog-side {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 2;
  }
}
@media screen and (min-width: 980px) {
  .p-blog-list-w .p-blog-side {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
        grid-template-areas: "search" "btn-a" "list-a" "btn-b" "list-b";
    width: clamp(calc(220 * 1px), calc(calc((320 - 220) / (2160 - 600)) * 100vw + calc(220 - calc((320 - 220) / (2160 - 600)) * 600) * 1px), calc(320 * 1px));
  }
}
.p-blog-list-w .p-blog-side .btn-a {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  grid-area: btn-a;
}
@media screen and (min-width: 980px) {
  .p-blog-list-w .p-blog-side .btn-a {
    margin-top: calc(var(--spacer) * 5);
  }
}
.p-blog-list-w .p-blog-side .btn-b {
  -ms-grid-row: 2;
  -ms-grid-column: 3;
  grid-area: btn-b;
}
@media screen and (min-width: 980px) {
  .p-blog-list-w .p-blog-side .btn-b {
    margin-top: calc(var(--spacer) * 5);
  }
}
.p-blog-list-w .p-blog-side .list-a {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  -ms-grid-column-span: 3;
  grid-area: list-a;
  display: none;
}
@media screen and (min-width: 980px) {
  .p-blog-list-w .p-blog-side .list-a {
    display: block;
  }
}
.p-blog-list-w .p-blog-side .list-b {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  -ms-grid-column-span: 3;
  grid-area: list-a;
  display: none;
}
@media screen and (min-width: 980px) {
  .p-blog-list-w .p-blog-side .list-b {
    display: block;
    grid-area: list-b;
  }
}
.p-blog-list-w .p-blog-side .p-search-box {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  -ms-grid-column-span: 3;
  grid-area: search;
}
@media screen and (min-width: 980px){
  .p-blog-list-w .p-blog-side .btn-a {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .p-blog-list-w .p-blog-side .btn-b {
    -ms-grid-row: 4;
    -ms-grid-column: 1;
  }
  .p-blog-list-w .p-blog-side .list-a {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
  .p-blog-list-w .p-blog-side .list-b {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
  .p-blog-list-w .p-blog-side .list-b {
    -ms-grid-row: 5;
    -ms-grid-column: 1;
  }
  .p-blog-list-w .p-blog-side .p-search-box {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
}
.p-blog-list-w .p-blog-side .p-search-box .form-w {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr auto;
  grid-template-columns: 1fr auto;
}
.p-blog-list-w .p-blog-side .p-search-box button[type=submit] {
  aspect-ratio: 1/1;
  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;
  cursor: pointer;
  background-color: #222;
  color: #FFF;
}

.p-blog-ttl {
  margin-bottom: calc(var(--spacer) * 3.5);
  border-bottom: 2px solid #014471;
  margin-bottom: calc(var(--spacer) * 5);
}

.p-blog-ttl_hdg {
  position: relative;
  /*border-bottom: 2px solid $clr-c;*/
  /*
  &:after {
      content: "";
      width: 0.6em;
      height: 2px;
      position: absolute;
      bottom: -2px;
      left: 0;
      background-color: $clr-b;
  }*/
}

.p-blog-ttl_time {
  margin-top: 0.1em;
  color: #014471;
  text-align: right;
}

.p-blog-tmp {
  background-color: #e6f3ff;
  padding: calc(var(--spacer) * 2.25);
}

.p-related-list {
  display: -ms-grid;
  display: grid;
  row-gap: calc(var(--spacer) * 2.25);
}

.p-related-list_i {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto 3% 1fr;
  grid-template-columns: auto 1fr;
  -webkit-column-gap: 3%;
     -moz-column-gap: 3%;
          column-gap: 3%;
  padding-bottom: calc(var(--spacer) * 2.25);
  border-bottom: 1px solid #e6f3ff;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-related-list_i .c-image-a {
  width: clamp(calc(100 * 1px), calc(calc((200 - 100) / (2160 - 600)) * 100vw + calc(100 - calc((200 - 100) / (2160 - 600)) * 600) * 1px), calc(200 * 1px));
}
.p-related-list_i:hover {
  opacity: 0.7;
}
.p-related-list_i:nth-last-of-type(1) {
  border-bottom: initial;
  padding-bottom: initial;
}

.p-blog-writer_i {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  -webkit-column-gap: calc(var(--spacer) * 3.5);
     -moz-column-gap: calc(var(--spacer) * 3.5);
          column-gap: calc(var(--spacer) * 3.5);
  row-gap: calc(var(--spacer) * 2.25);
}
@media screen and (min-width: 600px) {
  .p-blog-writer_i {
    -ms-grid-columns: auto 1fr;
    grid-template-columns: auto 1fr;
  }
}

.p-blog-writer_i_a {
  display: -ms-inline-grid;
  display: inline-grid;
  -ms-grid-columns: auto calc(var(--spacer) * 2.25) auto;
  grid-template-columns: auto auto;
  row-gap: calc(var(--spacer) * 1.5);
  -webkit-column-gap: calc(var(--spacer) * 2.25);
     -moz-column-gap: calc(var(--spacer) * 2.25);
          column-gap: calc(var(--spacer) * 2.25);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 600px) {
  .p-blog-writer_i_a {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    text-align: center;
  }
}

.p-blog-writer_image {
  position: relative;
  aspect-ratio: 1/1;
  overflow: hidden;
  border-radius: 50%;
  width: clamp(calc(70 * 1px), calc(calc((100 - 70) / (2160 - 600)) * 100vw + calc(70 - calc((100 - 70) / (2160 - 600)) * 600) * 1px), calc(100 * 1px));
}
.p-blog-writer_image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-blog-cat-list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  padding-bottom: calc(var(--spacer) * 1.5);
  border-bottom: 1px solid #e6f3ff;
}
.p-blog-cat-list dt + dt {
  margin-top: calc(var(--spacer) * 1.5);
  padding-top: calc(var(--spacer) * 1.5);
  border-top: 1px solid #e6f3ff;
}
.p-blog-cat-list dd + dt {
  margin-top: calc(var(--spacer) * 1.5);
  padding-top: calc(var(--spacer) * 1.5);
  border-top: 1px solid #e6f3ff;
}
.p-blog-cat-list > dd {
  padding-left: 1em;
  margin-top: calc(var(--spacer) * 1.5);
}
.p-blog-cat-list .grandchild-terms {
  padding-left: 1em;
  margin-top: calc(var(--spacer) * 1.5);
}

.p-writer-list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  row-gap: calc(var(--spacer) * 2.25);
}

.p-writer-list_i {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto calc(var(--spacer) * 2.25) 1fr;
  grid-template-columns: auto 1fr;
  -webkit-column-gap: calc(var(--spacer) * 2.25);
     -moz-column-gap: calc(var(--spacer) * 2.25);
          column-gap: calc(var(--spacer) * 2.25);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-bottom: calc(var(--spacer) * 2.25);
  border-bottom: 1px solid #e6f3ff;
}

.p-writer-list_image {
  position: relative;
  aspect-ratio: 1/1;
  overflow: hidden;
  border-radius: 50%;
  width: clamp(calc(50 * 1px), calc(calc((80 - 50) / (2160 - 600)) * 100vw + calc(50 - calc((80 - 50) / (2160 - 600)) * 600) * 1px), calc(80 * 1px));
}
.p-writer-list_image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-blog-cat-btn {
  color: #FFF;
  padding: 0.3em 1em;
  background-color: #014471;
  position: relative;
}
.p-blog-cat-btn:before {
  content: "";
  width: 0.5em;
  height: 1px;
  background-color: #988747;
  position: absolute;
  left: 0;
  top: 50%;
}
.p-blog-cat-btn {
  /*
  &::before {
      content: "全て表示";
      position: absolute;
      right: 2.5em;
      top: 50%;
      transform: translateY(-50%);

      color: #FFF;

      @include bp() {
          display: none;
      }
  }*/
}
.p-blog-cat-btn:after {
  font-family: "Material Icons";
  content: "\e037";
  line-height: 1 !important;
  position: absolute;
  right: 0.7em;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: all 0.1s ease;
  transition: all 0.1s ease;
  color: #FFF;
}
@media screen and (min-width: 980px) {
  .p-blog-cat-btn:after {
    display: none;
  }
}
.p-blog-cat-btn.current:after {
  -webkit-transform: translateY(-50%) rotate(90deg);
          transform: translateY(-50%) rotate(90deg);
}
.p-blog-cat-btn.current {
  /*
  &::before {
      content: "閉じる";

  }*/
}

.p-blog-sublist {
  line-height: 1.8;
  letter-spacing: 0em;
  font-size: clamp(calc(15 * 1px), calc(calc((18 - 15) / (2160 - 600)) * 100vw + calc(15 - calc((18 - 15) / (2160 - 600)) * 600) * 1px), calc(18 * 1px));
  display: none;
}
@media screen and (min-width: 980px) {
  .p-blog-sublist {
    display: block;
  }
}
.p-blog-sublist .parent {
  border-bottom: 1px solid rgba(0, 0, 0, 0.18);
  position: relative;
}
.p-blog-sublist .parent:before {
  content: "";
  width: 0.5em;
  height: 1px;
  background-color: #988747;
  position: absolute;
  left: 0;
  top: 1.7em;
}
.p-blog-sublist .cat-child > a {
  padding-left: 1em;
  position: relative;
}
.p-blog-sublist .cat-child > a:before {
  content: "";
  width: 0.5em;
  height: 1px;
  background-color: rgba(0, 0, 0, 0.18);
  position: absolute;
  left: 0.4em;
  top: 1.3em;
}
.p-blog-sublist .gchild a {
  padding: 0.3em 0 0.3em 2.4em;
}
.p-blog-sublist a {
  padding: 0.8em 0 0.8em 1em;
  display: block;
  -webkit-transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
}
@media (hover: hover) {
  .p-blog-sublist a:hover {
    text-decoration: underline;
  }
}
.p-blog-sublist.sp-menu {
  overflow: hidden;
}
.p-blog-sublist.open {
  display: block !important;
}

.p-blog-archive-list {
  display: block;
  border-bottom: 1px solid rgba(0, 0, 0, 0.18);
}
.p-blog-archive-list .p-blog-archive-btn {
  padding: 0.8em 0 0.8em 1em;
  cursor: pointer;
  position: relative;
  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;
  -webkit-transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
}
@media (hover: hover) {
  .p-blog-archive-list .p-blog-archive-btn:hover {
    text-decoration: underline;
  }
}
.p-blog-archive-list .p-blog-archive-btn:before {
  font-family: "Material Icons";
  content: "\e409";
  position: absolute;
  left: 0;
  -webkit-transition: all 0.1s ease;
  transition: all 0.1s ease;
}
.p-blog-archive-list .p-blog-archive-btn.open:before {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.p-blog-archive-list ul {
  padding-left: 1em;
  display: none;
}
.p-blog-archive-list ul li {
  padding-bottom: 0.5em;
}
.p-blog-archive-list ul li a {
  display: block;
  -webkit-transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
  transition: all 0.2s cubic-bezier(0, 0.5, 0.5, 1);
}
@media (hover: hover) {
  .p-blog-archive-list ul li a:hover {
    text-decoration: underline;
  }
}
.p-blog-archive-list ul.open {
  display: block;
}

.p-blog-prev-next {
  line-height: 1.8 !important;
}
.p-blog-prev-next p {
  margin-bottom: calc(var(--spacer) * 1);
}
.p-blog-prev-next a {
  text-align: left;
  display: block;
}

.p-blog-prev-next_inner {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr calc(var(--spacer) * 3.5) 1px calc(var(--spacer) * 3.5) 1fr;
  grid-template-columns: 1fr 1px 1fr;
  -webkit-column-gap: calc(var(--spacer) * 3.5);
     -moz-column-gap: calc(var(--spacer) * 3.5);
          column-gap: calc(var(--spacer) * 3.5);
}
.p-blog-prev-next_inner .border {
  background-color: #222;
}
.p-blog-prev-next_inner .next a {
  text-align: right;
}
.p-blog-prev-next_inner .next p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.p-blog-prev-next_inner .next p:after {
  font-family: "Material Icons";
  content: "\e5df";
  line-height: 1 !important;
}
.p-blog-prev-next_inner .prev {
  text-align: left;
}
.p-blog-prev-next_inner .prev p {
  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;
}
.p-blog-prev-next_inner .prev p:before {
  font-family: "Material Icons";
  content: "\e5df";
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
  line-height: 1 !important;
}
.p-blog-prev-next_inner a:hover {
  text-decoration: underline;
}

.p-blog-kanban .hdg {
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-size: clamp(calc(14 * 1px), calc(calc((19 - 14) / (2160 - 600)) * 100vw + calc(14 - calc((19 - 14) / (2160 - 600)) * 600) * 1px), calc(19 * 1px));
  margin-bottom: calc(var(--spacer) * 2.25);
  color: #014471;
  font-weight: 500;
  padding: calc(var(--spacer) * 1.5) 0;
  border-top: 1px solid #014471;
  border-bottom: 1px solid #014471;
}
.p-blog-kanban .text {
  text-align: left;
  margin-bottom: calc(var(--spacer) * 2.25);
}

.p-about-map {
  width: 100%;
  height: clamp(calc(300 * 1px), calc(calc((500 - 300) / (2160 - 600)) * 100vw + calc(300 - calc((500 - 300) / (2160 - 600)) * 600) * 1px), calc(500 * 1px));
}

.p-oss-illust {
  position: relative;
}
.p-oss-illust img {
  z-index: 1;
}

.p-oss-illust-hdg {
  text-align: center;
  color: #014471;
}

.p-oss-illust-hdg-b {
  text-align: center;
  color: #014471;
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-size: clamp(calc(18 * 1px), calc(calc((40 - 18) / (2160 - 600)) * 100vw + calc(18 - calc((40 - 18) / (2160 - 600)) * 600) * 1px), calc(40 * 1px));
  background-color: #014471;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  color: #FFF;
  border-radius: 200px;
  padding: 0.1em 0.7em;
}

.p-oss-a-w {
  overflow: hidden;
  /*border-bottom: 1px solid $clr-e;*/
  position: relative;
}
.p-oss-a-w::after {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("../image/oss-bg1.webp");
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  z-index: -2;
  top: 0;
  opacity: 0.2;
}

.p-oss-a {
  aspect-ratio: 1.3/1;
  position: relative;
  margin-inline: auto;
}
@media screen and (min-width: 600px) {
  .p-oss-a {
    aspect-ratio: 1.3/1;
    width: clamp(calc(500 * 1px), calc(calc((800 - 500) / (2160 - 600)) * 100vw + calc(500 - calc((800 - 500) / (2160 - 600)) * 600) * 1px), calc(800 * 1px));
  }
}
.p-oss-a {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
  grid-template-columns: repeat(3, 1fr);
}
.p-oss-a .oss-item {
  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;
  position: relative;
}
.p-oss-a .oss-item.circle::after {
  content: "";
  position: absolute;
  width: 290%;
  aspect-ratio: 1/1;
  mix-blend-mode: multiply;
  background: radial-gradient(#FFF, #e6f3ff);
  opacity: 1;
  border-radius: 50%;
  z-index: -1;
}
@media screen and (min-width: 600px) {
  .p-oss-a .oss-item.circle::after {
    width: 220%;
  }
}
.p-oss-a .oss-circle {
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: #014471;
  color: #fff000;
  width: clamp(calc(92 * 1px), calc(calc((400 - 92) / (2160 - 600)) * 100vw + calc(92 - calc((400 - 92) / (2160 - 600)) * 600) * 1px), calc(400 * 1px));
  text-align: center;
  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;
  position: relative;
  padding-bottom: 0.2em;
  -webkit-box-shadow: rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.04) 0px 10px 10px -5px;
          box-shadow: rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.04) 0px 10px 10px -5px;
}
@media screen and (min-width: 600px) {
  .p-oss-a .oss-circle {
    width: clamp(calc(120 * 1px), calc(calc((200 - 120) / (2160 - 600)) * 100vw + calc(120 - calc((200 - 120) / (2160 - 600)) * 600) * 1px), calc(200 * 1px));
  }
}
.p-oss-a .oss-circle:after {
  content: "";
  width: clamp(calc(100 * 1px), calc(calc((200 - 100) / (2160 - 600)) * 100vw + calc(100 - calc((200 - 100) / (2160 - 600)) * 600) * 1px), calc(200 * 1px));
  height: 1px;
  background-color: #014471;
  position: absolute;
  z-index: -1;
}
.p-oss-a .oss-circle.tl:after {
  right: 0;
  bottom: 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transform-origin: bottom right;
          transform-origin: bottom right;
}
.p-oss-a .oss-circle.tr:after {
  left: 0;
  bottom: 0;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transform-origin: bottom left;
          transform-origin: bottom left;
}
.p-oss-a .oss-circle.bc:after {
  content: "";
  width: 1px;
  height: clamp(calc(100 * 1px), calc(calc((200 - 100) / (2160 - 600)) * 100vw + calc(100 - calc((200 - 100) / (2160 - 600)) * 600) * 1px), calc(200 * 1px));
  background-color: #014471;
  position: absolute;
  left: 50%;
  top: -20%;
  z-index: -1;
}
.p-oss-a .oss-circle .c-inner {
  position: absolute;
  left: 50%;
  top: 47%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.p-oss-a .oss-circle .c-inner .hdg {
  line-height: 1.4;
  letter-spacing: 0.05em;
  font-size: clamp(calc(16 * 1px), calc(calc((28 - 16) / (2160 - 600)) * 100vw + calc(16 - calc((28 - 16) / (2160 - 600)) * 600) * 1px), calc(28 * 1px));
  white-space: nowrap;
}
.p-oss-a .oss-circle .c-inner .num {
  color: #988747;
  line-height: 1;
  letter-spacing: 0.05em;
  font-size: clamp(calc(13 * 1px), calc(calc((20 - 13) / (2160 - 600)) * 100vw + calc(13 - calc((20 - 13) / (2160 - 600)) * 600) * 1px), calc(20 * 1px));
  margin-bottom: 0.3em;
}
.p-oss-a .oss-text .hdg {
  text-align: center;
  margin-bottom: calc(var(--spacer) * 1.5);
  line-height: 1;
  letter-spacing: 0.1em;
  font-size: clamp(calc(28 * 1px), calc(calc((60 - 28) / (2160 - 600)) * 100vw + calc(28 - calc((60 - 28) / (2160 - 600)) * 600) * 1px), calc(60 * 1px));
  color: #988747;
}
.p-oss-a .oss-text {
  position: absolute;
  top: 43%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: clamp(calc(270 * 1px), calc(calc((500 - 270) / (2160 - 600)) * 100vw + calc(270 - calc((500 - 270) / (2160 - 600)) * 600) * 1px), calc(500 * 1px));
}
@media screen and (min-width: 600px) {
  .p-oss-a .oss-text {
    top: 41%;
  }
}

.p-oss-b {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  -webkit-column-gap: 5%;
     -moz-column-gap: 5%;
          column-gap: 5%;
  row-gap: calc(var(--spacer) * 3.5);
}
@media screen and (min-width: 600px) {
  .p-oss-b {
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr);
  }
}
.p-oss-b .hdg {
  text-align: center;
  border-top: 1px solid #014471;
  border-bottom: 1px solid #014471;
  margin-bottom: calc(var(--spacer) * 1.5);
  padding: calc(var(--spacer) * 1) 0;
  color: #014471;
  position: relative;
}
.p-oss-b .hdg .num {
  position: absolute;
  left: 50%;
  top: 0;
  color: #988747;
  line-height: 1;
  letter-spacing: 0.05em;
  font-size: clamp(calc(18 * 1px), calc(calc((36 - 18) / (2160 - 600)) * 100vw + calc(18 - calc((36 - 18) / (2160 - 600)) * 600) * 1px), calc(36 * 1px));
  -webkit-transform: translate(-50%, -85%);
          transform: translate(-50%, -85%);
  z-index: -1;
}

.p-oss-c {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  -webkit-column-gap: 3%;
     -moz-column-gap: 3%;
          column-gap: 3%;
  row-gap: calc(var(--spacer) * 5);
}
@media screen and (min-width: 980px) {
  .p-oss-c {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
.p-oss-c .c-item {
  padding: 0 6% 0 4%;
  height: clamp(calc(78 * 1px), calc(calc((130 - 78) / (2160 - 600)) * 100vw + calc(78 - calc((130 - 78) / (2160 - 600)) * 600) * 1px), calc(130 * 1px));
  background-color: #014471;
  color: #FFF;
  border-radius: 200px;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto calc(var(--spacer) * 1.5) 1fr;
  grid-template-columns: auto 1fr;
  text-align: center;
  -webkit-column-gap: calc(var(--spacer) * 1.5);
     -moz-column-gap: calc(var(--spacer) * 1.5);
          column-gap: calc(var(--spacer) * 1.5);
  position: relative;
}
.p-oss-c .c-item .c-illust {
  width: clamp(calc(70 * 1px), calc(calc((130 - 70) / (2160 - 600)) * 100vw + calc(70 - calc((130 - 70) / (2160 - 600)) * 600) * 1px), calc(130 * 1px));
  position: relative;
}
.p-oss-c .c-item img {
  position: absolute;
  left: 50%;
  top: 0;
  -webkit-transform: translate(-50%, -15%);
          transform: translate(-50%, -15%);
  width: 100%;
}
.p-oss-c .c-item p {
  -ms-grid-column-align: center;
      justify-self: center;
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
}

.p-oss-d {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  -webkit-column-gap: 3%;
     -moz-column-gap: 3%;
          column-gap: 3%;
  row-gap: calc(var(--spacer) * 5);
}
@media screen and (min-width: 980px) {
  .p-oss-d {
    -ms-grid-columns: 1fr auto;
    grid-template-columns: 1fr auto;
  }
}
.p-oss-d .d-illust {
  width: 100%;
  background-color: #FFF;
  padding: calc(var(--spacer) * 5);
  margin-inline: auto;
}
@media screen and (min-width: 600px) {
  .p-oss-d .d-illust {
    padding: calc(var(--spacer) * 3.5);
    width: clamp(calc(340 * 1px), calc(calc((440 - 340) / (2160 - 600)) * 100vw + calc(340 - calc((440 - 340) / (2160 - 600)) * 600) * 1px), calc(440 * 1px));
  }
}

.p-att {
  border-top: 1px solid #014471;
  border-bottom: 1px solid #014471;
  padding: calc(var(--spacer) * 2.25) 0;
  color: #014471;
}
.p-att .hdg {
  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;
  -webkit-column-gap: 0.4em;
     -moz-column-gap: 0.4em;
          column-gap: 0.4em;
}
.p-att .hdg .icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  aspect-ratio: 1/1;
  background-color: #014471;
  border-radius: 50%;
  color: #FFF;
}

.p-att-b {
  background-color: #014471;
  color: #FFF;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 600px) {
  .p-att-b {
    -ms-grid-columns: auto auto 1fr;
    grid-template-columns: auto auto 1fr;
    min-height: 180px;
  }
}
.p-att-b {
  position: relative;
  z-index: 2;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-att-b .c-list-b {
  position: relative;
  z-index: 2;
  padding: calc(var(--spacer) * 3.5);
}
.p-att-b .b-num {
  line-height: 1;
  letter-spacing: 0em;
  font-size: clamp(calc(19 * 1px), calc(calc((36 - 19) / (2160 - 600)) * 100vw + calc(19 - calc((36 - 19) / (2160 - 600)) * 600) * 1px), calc(36 * 1px));
  color: #FFF;
  position: absolute;
  left: calc(var(--spacer) * 2.25);
  top: calc(var(--spacer) * 2.25);
}
@media screen and (min-width: 980px) {
  .p-att-b .b-num {
    position: relative;
    -ms-grid-column-align: start;
        justify-self: start;
    -ms-flex-item-align: start;
        -ms-grid-row-align: start;
        align-self: start;
    left: initial;
    top: initial;
    padding-top: calc(var(--spacer) * 2.25);
    padding-left: calc(var(--spacer) * 2.25);
  }
}
.p-att-b .b-image {
  width: 100%;
  height: 100px;
  margin-inline: auto;
  position: relative;
  width: clamp(calc(130 * 1px), calc(calc((780 - 130) / (2160 - 600)) * 100vw + calc(130 - calc((780 - 130) / (2160 - 600)) * 600) * 1px), calc(780 * 1px));
}
@media screen and (min-width: 600px) {
  .p-att-b .b-image {
    height: 100%;
    width: clamp(calc(200 * 1px), calc(calc((280 - 200) / (2160 - 600)) * 100vw + calc(200 - calc((280 - 200) / (2160 - 600)) * 600) * 1px), calc(280 * 1px));
  }
}
.p-att-b .b-image img {
  position: absolute;
  left: 50%;
  top: 0;
  -webkit-transform: translate(-50%, -15%);
          transform: translate(-50%, -15%);
  width: 100%;
}
@media screen and (min-width: 600px) {
  .p-att-b .b-image img {
    width: 85%;
    left: 53%;
    z-index: 3;
  }
}
.p-att-b {
  /*
  &::before {
      font-family: 'Material Icons';
      content: "\ea50";
      position: absolute;
      left: 50%;
      top: 0;
      text-transform: capitalize;
      color: $clr-d;
      font-weight: 300 !important;
      z-index: 10;
      transform: translate(-50%, -130%) rotate(90deg);
      @include fs(96, 48, 1, 0.08);
      font-weight: initial;
      @include bp(sm) {
          transform: translate(-50%, -105%) rotate(90deg);
      }
  }*/
}
.p-att-b:after {
  position: absolute;
  right: 0;
  bottom: 0;
  content: "";
  width: 100%;
  height: 100%;
  mix-blend-mode: multiply;
  background-size: cover;
  background-image: url("../image/bg-image1.webp");
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 1;
}
@media screen and (min-width: 600px) {
  .p-att-b:after {
    width: 80%;
    height: 100%;
  }
}

.p-oss-e {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  -webkit-column-gap: 3%;
     -moz-column-gap: 3%;
          column-gap: 3%;
  row-gap: calc(var(--spacer) * 5);
}
@media screen and (min-width: 980px) {
  .p-oss-e {
    -ms-grid-columns: 1fr auto;
    grid-template-columns: 1fr auto;
  }
}
.p-oss-e .e-image {
  width: clamp(calc(320 * 1px), calc(calc((440 - 320) / (2160 - 600)) * 100vw + calc(320 - calc((440 - 320) / (2160 - 600)) * 600) * 1px), calc(440 * 1px));
  margin-inline: auto;
}

.p-oss-moya {
  position: relative;
  padding-bottom: calc(var(--spacer) * 10);
}
.p-oss-moya::before {
  font-family: "Material Icons";
  content: "\ea50";
  position: absolute;
  left: 50%;
  bottom: 0;
  text-transform: capitalize;
  color: #988747;
  z-index: 3;
  -webkit-transform: translate(-50%, 55%) rotate(90deg);
          transform: translate(-50%, 55%) rotate(90deg);
  line-height: 1;
  letter-spacing: 0.08em;
  font-size: clamp(calc(48 * 1px), calc(calc((96 - 48) / (2160 - 600)) * 100vw + calc(48 - calc((96 - 48) / (2160 - 600)) * 600) * 1px), calc(96 * 1px));
}
@media screen and (min-width: 600px) {
  .p-oss-moya::before {
    -webkit-transform: translate(-50%, 55%) rotate(90deg);
            transform: translate(-50%, 55%) rotate(90deg);
  }
}
.p-oss-moya {
  /*
     overflow: hidden;
    padding: $s-xl 0;
     position: relative;

          &:after {
         position: absolute;
         right: 0;
         bottom: 0;
         content: "";
         width: 100%;
         height: 100%;
         mix-blend-mode: multiply;
         background-size: cover;
         background-image: url("../image/moya-bg-sp.webp");
         background-position: center center;
         background-repeat: no-repeat;
         z-index: -1;
         @include bp(sm) {
  background-image: url("../image/moya-bg.webp");
         }
     }*/
}
.p-oss-moya .c-hd-b, .p-oss-moya .p-flow .hdg, .p-flow .p-oss-moya .hdg {
  color: #014471 !important;
}

.p-oss-step {
  margin-inline: auto;
  width: 90%;
}
@media screen and (min-width: 600px) {
  .p-oss-step {
    width: clamp(calc(500 * 1px), calc(calc((900 - 500) / (2160 - 600)) * 100vw + calc(500 - calc((900 - 500) / (2160 - 600)) * 600) * 1px), calc(900 * 1px));
  }
}

.p-oss-arrow span {
  margin-inline: auto;
  line-height: 1;
  letter-spacing: 0.08em;
  font-size: clamp(calc(48 * 1px), calc(calc((96 - 48) / (2160 - 600)) * 100vw + calc(48 - calc((96 - 48) / (2160 - 600)) * 600) * 1px), calc(96 * 1px));
  color: #988747;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}

.p-rae-a {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  -webkit-column-gap: 3%;
     -moz-column-gap: 3%;
          column-gap: 3%;
  row-gap: calc(var(--spacer) * 3.5);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
.p-rae-a .hd-w {
  position: relative;
  padding: calc(var(--spacer) * 2.25) calc(var(--spacer) * 3.5);
  border-bottom: 1px solid #e6f3ff;
}
.p-rae-a .hd-w .hd-image {
  position: absolute;
  right: 0;
  top: 0;
  width: 35%;
  height: 100%;
}
.p-rae-a .hd-w .hd-image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 1;
}
.p-rae-a .hd-w .hd-image::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 7;
  width: 80%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(#FFF), to(rgba(255, 255, 255, 0)));
  background: linear-gradient(to right, #FFF, rgba(255, 255, 255, 0));
}
.p-rae-a .a-column {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  row-gap: calc(var(--spacer) * 3.5);
  -webkit-column-gap: calc(var(--spacer) * 3.5);
     -moz-column-gap: calc(var(--spacer) * 3.5);
          column-gap: calc(var(--spacer) * 3.5);
}
@media screen and (min-width: 980px) {
  .p-rae-a .a-column {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
.p-rae-a .a-item {
  /*border-bottom: 1px solid $clr-c;*/
  background-color: #FFF;
}
.p-rae-a .a-item.start {
  /*align-self: start;*/
}
.p-rae-a .a-item .a-illust {
  width: 70%;
  margin-inline: auto;
  padding-bottom: calc(var(--spacer) * 3.5);
}
@media screen and (min-width: 980px) {
  .p-rae-a .a-item .a-illust {
    width: 60%;
  }
}
.p-rae-a .c-list-a {
  padding: calc(var(--spacer) * 3.5);
}

.p-rea-relation {
  padding: 0 calc(var(--spacer) * 3.5) calc(var(--spacer) * 3.5) calc(var(--spacer) * 3.5);
  border-bottom: 1px solid #014471;
}
.p-rea-relation .c-hd-b, .p-rea-relation .p-flow .hdg, .p-flow .p-rea-relation .hdg {
  margin-bottom: calc(var(--spacer) * 1.5);
}
.p-rea-relation ul {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  row-gap: 0.5em;
  -webkit-column-gap: 5%;
     -moz-column-gap: 5%;
          column-gap: 5%;
}
@media screen and (min-width: 980px) {
  .p-rea-relation ul {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
.p-rea-relation ul li {
  padding-left: 1.4em;
  position: relative;
}
.p-rea-relation ul li:after {
  font-family: "Material Icons";
  content: "\e24d";
  color: #1558d6;
  line-height: 1 !important;
  position: absolute;
  left: 0;
  top: 0.4em;
}
.p-rea-relation ul li a {
  color: #1558d6;
}
.p-rea-relation ul li a:hover {
  text-decoration: underline;
}
.p-rea-relation ul.type-b {
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
}

.p-flow {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto 5% auto 5% 1fr;
  grid-template-columns: auto auto 1fr;
      grid-template-areas: "num icon text";
  -webkit-column-gap: 5%;
     -moz-column-gap: 5%;
          column-gap: 5%;
  row-gap: calc(var(--spacer) * 8);
  overflow: hidden;
}
.p-flow .num {
  position: relative;
}
.p-flow .num p {
  width: 25px;
}
@media screen and (min-width: 980px) {
  .p-flow .num p {
    width: 30px;
  }
}
.p-flow .num p {
  aspect-ratio: 1/1;
  background-color: #222;
  color: #FFF;
  line-height: 1;
  letter-spacing: 0.05em;
  font-size: clamp(calc(11 * 1px), calc(calc((14 - 11) / (2160 - 600)) * 100vw + calc(11 - calc((14 - 11) / (2160 - 600)) * 600) * 1px), calc(14 * 1px));
  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;
  border-radius: 50%;
}
.p-flow .num:after {
  content: "";
  width: 2px;
  height: calc(100% + calc(var(--spacer) * 8) - 29px);
  background-color: #222;
  position: absolute;
  left: 50%;
  top: 27px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  /*transform: translateY( 100%);*/
}
@media screen and (min-width: 980px) {
  .p-flow .num:after {
    height: calc(100% + calc(var(--spacer) * 8) - 34px);
    top: 32px;
  }
}
.p-flow .num.b-none::after {
  display: none;
}
.p-flow .hdg {
  margin-bottom: calc(var(--spacer) * 1.5);
}
.p-flow .icon {
  width: clamp(calc(60 * 1px), calc(calc((90 - 60) / (2160 - 600)) * 100vw + calc(60 - calc((90 - 60) / (2160 - 600)) * 600) * 1px), calc(90 * 1px));
  position: relative;
}
.p-flow .icon:after {
  content: "";
  width: 100vw;
  height: 1px;
  background-color: rgba(0, 0, 0, 0.18);
  position: absolute;
  left: 0;
  bottom: 0;
  -webkit-transform: translateY(calc(calc(var(--spacer) * 8) / 2));
          transform: translateY(calc(calc(var(--spacer) * 8) / 2));
}
.p-flow .icon.b-none::after {
  display: none;
}

.p-gyosei-top {
  padding: calc(var(--spacer) * 10) 0;
  background-image: url("../image/blueprint-bg.webp");
  background-position: left top;
  background-size: 120%;
  background-repeat: no-repeat;
  overflow: hidden;
}
@media screen and (min-width: 980px) {
  .p-gyosei-top {
    background-size: 80%;
  }
}
.p-gyosei-top .c-image-a {
  float: right;
  width: clamp(calc(160 * 1px), calc(calc((440 - 160) / (2160 - 600)) * 100vw + calc(160 - calc((440 - 160) / (2160 - 600)) * 600) * 1px), calc(440 * 1px));
  margin-left: 1em;
  margin-right: -5vw;
  margin-bottom: 1em;
  -webkit-box-shadow: rgba(0, 0, 0, 0.3) 0px 25px 20px -20px;
          box-shadow: rgba(0, 0, 0, 0.3) 0px 25px 20px -20px;
}
@media screen and (min-width: 980px) {
  .p-gyosei-top .c-image-a {
    margin-left: 1.5em;
  }
}

.p-gyosei-a {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  -webkit-column-gap: 3%;
     -moz-column-gap: 3%;
          column-gap: 3%;
  row-gap: calc(var(--spacer) * 3.5);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
.p-gyosei-a .hd-image {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 10svh;
  z-index: 1;
}
@media screen and (min-width: 600px) {
  .p-gyosei-a .hd-image {
    width: 30%;
    height: 100%;
  }
}
.p-gyosei-a .hd-image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 1;
}
.p-gyosei-a .hd-image::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 7;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, from(#FFF), to(rgba(255, 255, 255, 0)));
  background: linear-gradient(to bottom, #FFF, rgba(255, 255, 255, 0));
}
@media screen and (min-width: 600px) {
  .p-gyosei-a .hd-image::after {
    width: 85%;
    height: 100%;
    background: -webkit-gradient(linear, left top, right top, from(#FFF), to(rgba(255, 255, 255, 0)));
    background: linear-gradient(to right, #FFF, rgba(255, 255, 255, 0));
  }
}
.p-gyosei-a .c-list-a {
  position: relative;
  z-index: 3;
}
.p-gyosei-a .a-item {
  position: relative;
  padding: calc(var(--spacer) * 3.5) calc(var(--spacer) * 3.5) 10svh calc(var(--spacer) * 3.5);
  background-color: #FFF;
}
@media screen and (min-width: 980px) {
  .p-gyosei-a .a-item {
    padding: calc(var(--spacer) * 3.5) 15% calc(var(--spacer) * 3.5) calc(var(--spacer) * 3.5);
  }
}

.p-top-survery {
  padding: calc(var(--spacer) * 10) 0;
  position: relative;
  overflow: hidden;
}
.p-top-survery:before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("../image/oss-bg1.webp");
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  z-index: -2;
  top: 0;
  opacity: 0.2;
}
.p-top-survery .c-image-a {
  float: right;
  width: clamp(calc(160 * 1px), calc(calc((440 - 160) / (2160 - 600)) * 100vw + calc(160 - calc((440 - 160) / (2160 - 600)) * 600) * 1px), calc(440 * 1px));
  margin-left: 1em;
  margin-right: -5vw;
  margin-bottom: 1em;
  -webkit-box-shadow: rgba(0, 0, 0, 0.3) 0px 25px 20px -20px;
          box-shadow: rgba(0, 0, 0, 0.3) 0px 25px 20px -20px;
}
@media screen and (min-width: 980px) {
  .p-top-survery .c-image-a {
    margin-left: 1.5em;
  }
}

/*
Theme Name: BusinessPress
Theme URI: https://businesspress.jp/theme/
Author: BusinessPress
Author URI: https://businesspress.jp/
Description: BusinessPress ia a simple and beautiful business WordPress theme. You can create a website of corporate, group, freelance and so on.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: businesspress
Tags: one-column, two-columns, right-sidebar, custom-colors, custom-header, custom-logo, custom-menu, editor-style, featured-images, footer-widgets, microformats, post-formats, sticky-post, theme-options, threaded-comments, translation-ready
*/
/* TABLE OF CONTENTS
------------------------------------------------------------
* Global
* Repeatable Patterns
* Layout
* Header
* Menus
* Featured Area
* Content
* Navigations
* Comments
* Widgets
* Footer
* Plugins
* Print
------------------------------------------------------------ */
/* Global
------------------------------------------------------------ */
/* Root
   This values are used for adjusting headings size (not for body size) */
/*
html {
	font-size: 85%;
	overflow-x: hidden;
}
html:lang(ja) {
	font-size: 68%;
}
@media screen and (min-width: 782px) {
	html {
		font-size: 92.5%;
	}
	html:lang(ja) {
		font-size: 74%;
	}
}
@media screen and (min-width: 980px) {
	html {
		font-size: 100%;
	}
	html:lang(ja) {
		font-size: 80%;
	}
}
*/
/* Base */
/*
body {
	color: #444;
	font-family: "Helvetica", "Arial", sans-serif;
	font-size: 18px;
	line-height: 1.6;
	word-wrap: break-word;
}
body:lang(ja) {
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
}
::selection {
	background-color: #def;
}
@media screen and (min-width: 782px) {
	body {
		font-size: 19px;
	}
	body:lang(ja) {
		font-size: 16px;
	}
}
@media screen and (min-width: 980px) {
	body {
		font-size: 20px;
	}
	body:lang(ja) {
		font-size: 17px;
	}
}
*/
.p-blog-main ol, .p-blog-main ul {
  list-style: initial;
}
.p-blog-main {
  /* Heading */
  /*
  h1, h2, h3, h4, h5, h6, .site-title {
  	clear: both;
  	color: #111;
  	font-weight: 700;
  	line-height: 1.5;
  }*/
  /*
  h1 {
  	font-size: 2.5rem;
  	margin-bottom: 1em;
  	margin-top: 2em;
  }*/
}
.p-blog-main h2 {
  margin-bottom: 0.5em;
  margin-top: 1.8em;
}
.p-blog-main h3 {
  margin-bottom: 0.5em;
  margin-top: 1.8em;
}
.p-blog-main h4 {
  margin-bottom: 0.5em;
  margin-top: 1.8em;
}
.p-blog-main h5 {
  margin-bottom: 0.5em;
  margin-top: 1.8em;
}
.p-blog-main h6 {
  margin-bottom: 0.5em;
  margin-top: 1.8em;
}
.p-blog-main {
  /* Link */
}
.p-blog-main a {
  color: #1558d6;
  text-decoration: underline;
  -webkit-transition: all 0.15s ease-in-out;
  transition: all 0.15s ease-in-out;
}
.p-blog-main a:hover {
  text-decoration: none;
}
.p-blog-main cite a, .p-blog-main cite a {
  text-decoration: none;
}
.p-blog-main {
  /* Text */
}
.p-blog-main p {
  margin: 0 0 1.8em;
}
.p-blog-main b, .p-blog-main strong {
  font-weight: 700;
}
.p-blog-main dfn, .p-blog-main em, .p-blog-main i {
  font-style: italic;
}
.p-blog-main q {
  quotes: "" "";
}
.p-blog-main cite {
  border-bottom: dotted 1px #999;
  font-style: normal;
}
.p-blog-main code, .p-blog-main kbd, .p-blog-main tt, .p-blog-main var {
  background-color: #f4f5f6;
  color: #666;
  font-family: Consolas, "Courier New", monospace;
  font-size: 90%;
}
.p-blog-main abbr, .p-blog-main acronym {
  border-bottom: 1px dotted #999;
  cursor: help;
}
.p-blog-main mark, .p-blog-main ins {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #ffff66));
  background: linear-gradient(transparent 70%, #ffff66 70%);
  text-decoration: none;
}
.p-blog-main ins.adsbygoogle {
  background-color: transparent;
}
.p-blog-main {
  /* List */
}
.p-blog-main ul, .p-blog-main ol {
  margin: 0 0 1.8em 1.5em;
  padding: 0;
}
.p-blog-main li > ul,
.p-blog-main li > ol {
  margin-bottom: 0;
}
.p-blog-main dl {
  margin: 0;
}
.p-blog-main dt {
  font-weight: 600;
  margin-bottom: 0.5em;
}
.p-blog-main dd {
  margin: 0 0 1.8em 1.5em;
}
.p-blog-main {
  /* Table */
}
.p-blog-main table {
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 90%;
  margin: 0 0 1.8em;
  width: 100%;
}
.p-blog-main caption {
  margin-bottom: 0.6em;
}
.p-blog-main table th, .p-blog-main table td {
  border: solid 1px #eee;
  padding: 1em 1.2em;
}
.p-blog-main th {
  background-color: #f4f5f6;
  font-weight: 600;
  text-align: left;
}
.p-blog-main {
  /* Elements */
}
.p-blog-main blockquote {
  color: #666;
  margin: 0 0 2em;
  padding: 12px 0 0 44px !important;
  position: relative;
}
.p-blog-main blockquote:before {
  color: #ddd;
  content: "“";
  font-family: Georgia, serif;
  font-size: 84px;
  left: -5px;
  line-height: 1;
  position: absolute;
  top: -5px;
}
.p-blog-main blockquote p {
  margin-bottom: 0.8em;
}
.p-blog-main blockquote cite {
  font-size: 90%;
}
.p-blog-main address {
  margin: 0 0 1.8em;
  font-style: normal;
}
.p-blog-main pre {
  background-color: #f4f5f6;
  color: #666;
  font-family: Consolas, "Courier New", monospace;
  font-size: 90%;
  line-height: 1.4;
  margin: 0 0 1.7em;
  max-width: 100%;
  overflow: auto;
  padding: 1.5em;
  word-wrap: normal;
}
.p-blog-main hr {
  background-color: #eee;
  border: 0;
  height: 2px;
  margin: 1.8em auto;
}
.p-blog-main .wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
  max-width: 100px;
}
.p-blog-main {
  /* Media */
}
.p-blog-main img {
  height: auto;
  max-width: 100%;
  vertical-align: middle;
}
.p-blog-main figure {
  margin: 0;
}
.p-blog-main embed,
.p-blog-main iframe,
.p-blog-main object {
  max-width: 100%;
}
.p-blog-main {
  /* Form */
}
.p-blog-main button,
.p-blog-main input,
.p-blog-main input[type=search],
.p-blog-main select,
.p-blog-main textarea {
  background-color: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  line-height: 1.6;
  max-width: 100%;
}
.p-blog-main button,
.p-blog-main input[type=button],
.p-blog-main input[type=reset],
.p-blog-main input[type=submit] {
  background-color: #333;
  border: none;
  border-radius: 5px;
  color: #fff;
  cursor: pointer;
  font-size: 90%;
  line-height: 1;
  padding: 1.1em 1.5em;
  text-transform: uppercase;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.p-blog-main button:hover,
.p-blog-main button:focus,
.p-blog-main input[type=button]:hover,
.p-blog-main input[type=button]:focus,
.p-blog-main input[type=reset]:hover,
.p-blog-main input[type=reset]:focus,
.p-blog-main input[type=submit]:hover,
.p-blog-main input[type=submit]:focus {
  background-color: #555;
}
.p-blog-main input[type=text],
.p-blog-main input[type=email],
.p-blog-main input[type=url],
.p-blog-main input[type=password],
.p-blog-main input[type=search],
.p-blog-main textarea {
  border: solid 1px #e6e6e6;
  color: #777;
  margin-top: 0.6em;
  padding: 0.6em;
}
.p-blog-main input[type=text]:focus,
.p-blog-main input[type=email]:focus,
.p-blog-main input[type=url]:focus,
.p-blog-main input[type=password]:focus,
.p-blog-main input[type=search]:focus,
.p-blog-main textarea:focus {
  color: #444;
}
.p-blog-main input[type=file] {
  margin-top: 0.6em;
}
.p-blog-main select {
  border: solid 1px #e6e6e6;
  margin-top: 0.6em;
  padding: 0.6em;
}
.p-blog-main textarea {
  max-width: 720px;
  width: 100%;
}
.p-blog-main {
  /* Repeatable Patterns
  ------------------------------------------------------------ */
  /* Alignments */
}
.p-blog-main .aligncenter,
.p-blog-main .alignleft,
.p-blog-main .alignright {
  margin-bottom: 1.8em;
}
.p-blog-main .alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em;
}
.p-blog-main .alignright {
  display: inline;
  float: right;
  margin-left: 1.5em;
}
.p-blog-main .aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.p-blog-main {
  /* Caption */
}
.p-blog-main .wp-caption {
  color: #999;
  font-size: 90%;
  margin-bottom: 1.8em;
  max-width: 100%;
}
.p-blog-main .wp-caption img[class*=wp-image-] {
  display: block;
  margin: 0.4em auto 0;
}
.p-blog-main .wp-caption-text {
  text-align: center;
}
.p-blog-main .wp-caption .wp-caption-text {
  margin: 0.8em 0;
}
.p-blog-main {
  /* WP Smiley */
}
.p-blog-main .page-content img.wp-smiley,
.p-blog-main .entry-content img.wp-smiley,
.p-blog-main .comment-content img.wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}
.p-blog-main {
  /* Text meant only for screen readers */
}
.p-blog-main .hide-blogname .site-title,
.p-blog-main .hide-blogdescription .site-description,
.p-blog-main .hide-date .posted-on,
.p-blog-main .hide-author .byline,
.p-blog-main .hide-comments-number .comments-link,
.p-blog-main .screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute !important;
  width: 1px;
}
.p-blog-main .screen-reader-text:hover,
.p-blog-main .screen-reader-text:active,
.p-blog-main .screen-reader-text:focus {
  background-color: #eee;
  background-color: rgba(255, 255, 255, 0.9);
  -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.2);
  clip: auto !important;
  color: #06c;
  display: block;
  font-size: 14px;
  font-weight: 600;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000; /* Above WP toolbar */
}
.p-blog-main {
  /* Clearing */
}
.p-blog-main .clear:before,
.p-blog-main .clear:after,
.p-blog-main .top-bar-content:before,
.p-blog-main .top-bar-content:after,
.p-blog-main .entry-content:before,
.p-blog-main .entry-content:after,
.p-blog-main .comment-content:before,
.p-blog-main .comment-content:after,
.p-blog-main .nav-links:before,
.p-blog-main .nav-links:after,
.p-blog-main .widget:before,
.p-blog-main .widget:after,
.p-blog-main .sticky-sidebar:before,
.p-blog-main .sticky-sidebar:after,
.p-blog-main .site-bottom-content:before,
.p-blog-main .site-bottom-content:after {
  content: "";
  display: table;
}
.p-blog-main .clear:after,
.p-blog-main .top-bar-content:after,
.p-blog-main .entry-content:after,
.p-blog-main .comment-content:after,
.p-blog-main .nav-links:after,
.p-blog-main .widget:after,
.p-blog-main .sticky-sidebar:after,
.p-blog-main .site-bottom-content:after {
  clear: both;
}
.p-blog-main {
  /* Layout
  ------------------------------------------------------------ */
  /* Base */
}
.p-blog-main body {
  background-color: #fff;
}
.p-blog-main .top-bar-content,
.p-blog-main .main-header-content,
.p-blog-main .featured-entry-content,
.p-blog-main .home-header-content,
.p-blog-main .jumbotron-content,
.p-blog-main .site-content,
.p-blog-main .container-content,
.p-blog-main .footer-widget-content,
.p-blog-main .site-bottom-content {
  margin-left: auto;
  margin-right: auto;
  max-width: 720px;
  padding-left: 20px;
  padding-right: 20px;
}
.p-blog-main .container-content {
  padding-left: 30px;
  padding-right: 30px;
}
.p-blog-main .site-header {
  border-bottom: solid 1px #eee;
  margin-bottom: 5rem;
}
.p-blog-main .main-header {
  padding-bottom: 15px;
  padding-top: 15px;
}
.p-blog-main .main-header-content {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.p-blog-main .content-area {
  margin-bottom: 6rem;
}
.p-blog-main .sidebar-area {
  border-top: solid 1px #eee;
  padding-bottom: 1rem;
  padding-top: 6rem;
}
.p-blog-main .page-header {
  margin-bottom: 5rem;
}
.p-blog-main .hentry {
  margin-bottom: 7rem;
}
.p-blog-main .single .hentry {
  margin-bottom: 5rem;
}
.p-blog-main .page .hentry {
  margin-bottom: 0;
}
.p-blog-main .widget {
  margin-bottom: 4rem;
}
.p-blog-main .footer-widget-area {
  border-top: solid 1px #eee;
  padding-bottom: 2rem;
  padding-top: 6rem;
}
.p-blog-main .site-bottom {
  border-top: solid 1px #eee;
  padding-bottom: 2rem;
  padding-top: 3rem;
}
@media screen and (min-width: 782px) {
  .p-blog-main .top-bar-content,
  .p-blog-main .main-header-content,
  .p-blog-main .home-header-content,
  .p-blog-main .jumbotron-content,
  .p-blog-main .featured-entry-content,
  .p-blog-main .site-content,
  .p-blog-main .footer-widget-content,
  .p-blog-main .site-bottom-content {
    padding-left: 40px;
    padding-right: 40px;
  }
  .p-blog-main .container-content {
    padding-left: 50px;
    padding-right: 50px;
  }
  .p-blog-main .top-bar-content,
  .p-blog-main .main-header-content,
  .p-blog-main .home-header-content,
  .p-blog-main .site-bottom-content {
    max-width: 1120px;
  }
  .p-blog-main .main-header {
    padding-bottom: 35px;
    padding-top: 30px;
  }
  .p-blog-main .top-bar-main,
  .p-blog-main .footer-social-link {
    float: left;
  }
  .p-blog-main .header-social-link,
  .p-blog-main .footer-navigation {
    float: right;
  }
}
@media screen and (min-width: 980px) {
  .p-blog-main .jumbotron-content,
  .p-blog-main .three-column .site-content,
  .p-blog-main .has-sidebar .site-content,
  .p-blog-main .footer-widget-content {
    max-width: 1120px;
  }
  .p-blog-main .main-header-content {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .p-blog-main .has-sidebar .site-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .p-blog-main .has-sidebar .content-area {
    width: 64.28%;
  }
  .p-blog-main .has-sidebar .sidebar-area {
    border-top: none;
    padding-top: 0;
    width: 26.78%;
  }
  .p-blog-main .sticky-sidebar {
    position: sticky;
    top: 120px;
  }
  .p-blog-main .sticky-sidebar .widget:last-child {
    margin-bottom: 0;
    padding-bottom: 90px;
  }
  .p-blog-main .footer-widget-wrapper {
    margin-left: -30px;
    margin-right: -30px;
  }
  .p-blog-main .footer-widget-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .p-blog-main .footer-widget {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 25%;
    padding-left: 30px;
    padding-right: 30px;
  }
}
.p-blog-main {
  /* Header
  ------------------------------------------------------------ */
  /* Top Bar */
}
.p-blog-main .top-bar {
  background-color: #f4f5f6;
  border-bottom: solid 1px #eee;
  line-height: 32px;
  padding-bottom: 5px;
  padding-top: 5px;
}
.p-blog-main .top-bar-main {
  color: #888;
  font-size: 80%;
  list-style: none;
  margin-bottom: 0;
  margin-left: 0;
}
.p-blog-main .top-bar-main a {
  color: inherit;
  text-decoration: none;
}
.p-blog-main .top-bar-main a:hover {
  color: #111;
}
.p-blog-main .top-bar-main li {
  display: inline-block;
  margin-bottom: 0;
  margin-right: 16px;
  vertical-align: middle;
}
.p-blog-main .top-bar-main li:last-child {
  margin-right: 0;
}
.p-blog-main .top-bar-main li:before {
  color: #999;
  display: inline-block;
  font: normal 16px/1 FontAwesome;
  -webkit-font-smoothing: antialiased;
  margin-right: 5px;
  position: relative;
  top: 1px;
  vertical-align: middle;
}
.p-blog-main .top-bar-main li.top-bar-main-phone:before {
  content: "\f10b";
  font-size: 170%;
}
.p-blog-main .top-bar-main li.top-bar-main-contact:before {
  content: "\f003";
  font-size: 110%;
}
.p-blog-main .top-bar-main li.top-bar-main-access:before {
  content: "\f041";
  font-size: 135%;
}
.p-blog-main .top-bar .header-social-link {
  display: none;
}
@media screen and (min-width: 782px) {
  .p-blog-main .top-bar {
    padding-bottom: 10px;
    padding-top: 10px;
  }
  .p-blog-main .top-bar-main li {
    margin-right: 24px;
  }
  .p-blog-main .top-bar-main li:before {
    margin-right: 8px;
    top: -2px;
  }
  .p-blog-main .top-bar .header-social-link {
    display: block;
  }
}
.p-blog-main {
  /* Main Header */
}
.p-blog-main .site-branding {
  padding-right: 10px;
}
.p-blog-main .site-logo a:hover {
  opacity: 0.8;
}
.p-blog-main .site-logo img {
  -webkit-transform: scale(0.85, 0.85);
          transform: scale(0.85, 0.85);
  -webkit-transform-origin: center left;
          transform-origin: center left;
}
.p-blog-main .site-title {
  font-size: 1.75rem;
  margin-bottom: 0;
  margin-top: 0;
}
.p-blog-main .site-title a,
.p-blog-main .site-title a:hover {
  color: #111;
  text-decoration: none;
}
.p-blog-main .site-title a:hover {
  opacity: 0.8;
}
.p-blog-main .site-description {
  color: #777;
  font-size: 95%;
  margin-bottom: 2px;
  margin-top: 2px;
}
@media screen and (min-width: 782px) {
  .p-blog-main .site-branding {
    padding-right: 30px;
  }
  .p-blog-main .site-logo img {
    -webkit-transform: scale(0.925, 0.925);
            transform: scale(0.925, 0.925);
  }
  .p-blog-main .site-description {
    margin-bottom: 6px;
  }
}
@media screen and (min-width: 980px) {
  .p-blog-main .site-logo img {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
}
.p-blog-main {
  /* Menus
  ------------------------------------------------------------ */
  /* Base */
}
.p-blog-main .main-header-content .main-navigation {
  display: none;
}
.p-blog-main {
  /* Main Header Clone */
}
.p-blog-main .main-header-clone {
  background-color: #fff;
  left: 0;
  padding-bottom: 12px;
  padding-top: 12px;
  position: fixed;
  top: 0;
  -webkit-transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  width: 100%;
  z-index: 100;
}
.p-blog-main .main-header-clone-show {
  -webkit-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.1);
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.p-blog-main .main-header-clone .site-title {
  font-size: 1.5rem;
}
.p-blog-main .main-header-clone .main-header-content {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-blog-main .main-header-clone .site-logo {
  -webkit-transform: scale(0.9, 0.9);
          transform: scale(0.9, 0.9);
  -webkit-transform-origin: center left;
          transform-origin: center left;
}
.p-blog-main .main-header-clone .site-description {
  display: none;
}
.p-blog-main .admin-bar .main-header-original .drawer-navigation {
  top: 46px;
}
@media screen and (min-width: 601px) {
  .p-blog-main .admin-bar .main-header-clone-show {
    -webkit-transform: translateY(46px);
            transform: translateY(46px);
  }
}
@media screen and (min-width: 782px) {
  .p-blog-main .admin-bar .main-header-original .drawer-navigation {
    top: 32px;
  }
  .p-blog-main .admin-bar .main-header-clone-show {
    -webkit-transform: translateY(32px);
            transform: translateY(32px);
  }
}
@media screen and (min-width: 980px) {
  .p-blog-main .main-header-clone {
    padding-bottom: 16px;
    padding-top: 14px;
  }
}
.p-blog-main {
  /* Drawer Button */
}
.p-blog-main .drawer-hamburger {
  background-color: transparent;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  display: block;
  margin-right: -5px;
  outline: 0;
  padding: 12px 5px;
  -webkit-transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  width: 21px;
  min-width: 21px;
  z-index: 102;
}
.p-blog-main .drawer-hamburger:hover,
.p-blog-main .drawer-hamburger:focus {
  background-color: transparent;
}
.p-blog-main .drawer-hamburger-icon {
  position: relative;
  display: block;
}
.p-blog-main .drawer-hamburger-icon,
.p-blog-main .drawer-hamburger-icon:before,
.p-blog-main .drawer-hamburger-icon:after {
  background-color: #111;
  height: 2px;
  -webkit-transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  width: 100%;
}
.p-blog-main .drawer-hamburger-icon:before,
.p-blog-main .drawer-hamburger-icon:after {
  position: absolute;
  left: 0;
  content: " ";
}
.p-blog-main .drawer-hamburger-icon:before {
  top: -6px;
}
.p-blog-main .drawer-hamburger-icon:after {
  top: 6px;
}
.p-blog-main .drawer-opened .drawer-hamburger-icon {
  background-color: transparent;
}
.p-blog-main .drawer-opened .drawer-hamburger-icon:before,
.p-blog-main .drawer-opened .drawer-hamburger-icon:after {
  top: 0;
}
.p-blog-main .drawer-opened .drawer-hamburger-icon:before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.p-blog-main .drawer-opened .drawer-hamburger-icon:after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
@media screen and (min-width: 782px) {
  .p-blog-main .drawer-hamburger {
    padding: 15px 5px;
  }
  .p-blog-main .drawer-hamburger-icon:before {
    top: -7px;
  }
  .p-blog-main .drawer-hamburger-icon:after {
    top: 7px;
  }
}
.p-blog-main {
  /* Drawer Navigation */
}
.p-blog-main .drawer-overlay {
  display: none;
  height: 100vh;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100;
}
.p-blog-main .drawer-navigation {
  background: #fff;
  height: 100vh;
  overflow-y: auto;
  position: fixed;
  right: 0;
  top: 0;
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
  -webkit-transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  width: 90%;
  z-index: 101;
  -webkit-overflow-scrolling: touch;
}
.p-blog-main .drawer-navigation-content {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 100%;
  overflow-y: auto;
  padding: 60px 75px 60px 40px;
  width: 100%;
}
.p-blog-main .drawer-opened .drawer-overlay {
  display: block;
}
.p-blog-main .drawer-opened .drawer-navigation {
  -webkit-box-shadow: 0 0 90px rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 90px rgba(0, 0, 0, 0.2);
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 540px) {
  .p-blog-main .drawer-navigation {
    width: 70%;
  }
  .p-blog-main .drawer-navigation-content {
    padding: 75px 90px 75px 50px;
  }
}
@media screen and (min-width: 782px) {
  .p-blog-main .drawer-navigation {
    width: 55%;
  }
  .p-blog-main .drawer-navigation-content {
    padding: 90px 105px 90px 60px;
  }
}
.p-blog-main {
  /* Drawer Content */
}
.p-blog-main .drawer-navigation ul {
  list-style: none;
  margin-bottom: 45px;
  margin-left: 0;
}
.p-blog-main .drawer-navigation ul li {
  padding-bottom: 12px;
  padding-top: 14px;
  position: relative;
}
.p-blog-main .drawer-navigation ul ul {
  margin-bottom: 0;
  margin-left: 1em;
  margin-top: 12px;
}
.p-blog-main .drawer-navigation ul li li {
  padding-bottom: 10px;
  padding-top: 12px;
}
.p-blog-main .drawer-navigation ul li li:last-child {
  padding-bottom: 0;
}
.p-blog-main .drawer-navigation a {
  color: inherit;
  text-decoration: none;
}
.p-blog-main .drawer-navigation a:hover {
  color: #111;
}
.p-blog-main .drawer-navigation .page_item_has_children > a,
.p-blog-main .drawer-navigation .menu-item-has-children > a {
  display: inline-block;
  padding-right: 20px;
}
.p-blog-main .drawer-navigation .dropdown-toggle {
  background-color: transparent;
  outline: 0;
  padding: 10px;
  position: absolute;
  right: -10px;
  top: 7px;
}
.p-blog-main .drawer-navigation .dropdown-toggle:after {
  content: "\f107";
  color: #333;
  display: inline-block;
  font: normal 18px/1 FontAwesome;
  -webkit-font-smoothing: antialiased;
  position: relative;
}
.p-blog-main .drawer-navigation .dropdown-toggle.toggled-on:after {
  content: "\f106";
}
.p-blog-main .drawer-navigation .sub-menu {
  display: none;
}
.p-blog-main .drawer-navigation .sub-menu.toggled-on {
  display: block;
}
.p-blog-main .drawer-navigation .current_page_item > a,
.p-blog-main .drawer-navigation .current-menu-item > a {
  color: #111;
  font-weight: 700;
}
@media screen and (min-width: 782px) {
  .p-blog-main .drawer-navigation .header-social-link {
    display: none;
  }
}
.p-blog-main {
  /* Main Navigation (Desktop) */
}
@media screen and (min-width: 980px) {
  .p-blog-main .drawer-hamburger,
  .p-blog-main .drawer-overlay,
  .p-blog-main .drawer-navigation {
    display: none;
  }
  .p-blog-main .main-header-content .main-navigation {
    display: block;
  }
  .p-blog-main .main-navigation {
    font-size: 90%;
    line-height: 52px;
  }
  .p-blog-main .main-navigation ul {
    list-style: none;
    margin: 0;
  }
  .p-blog-main .main-navigation a {
    color: inherit;
    display: block;
    padding-left: 15px;
    padding-right: 15px;
    text-decoration: none;
  }
  .p-blog-main .main-navigation a:hover {
    color: #111;
  }
  .p-blog-main .main-navigation li {
    position: relative;
  }
  .p-blog-main .main-navigation div.menu > ul,
  .p-blog-main .main-navigation ul.menu {
    letter-spacing: -0.4em;
  }
  .p-blog-main .main-navigation div.menu > ul > li,
  .p-blog-main .main-navigation ul.menu > li {
    display: inline-block;
    letter-spacing: normal;
    white-space: nowrap;
  }
  .p-blog-main .main-navigation div.menu > ul > li:first-child > a,
  .p-blog-main .main-navigation ul.menu > li:first-child > a {
    padding-left: 0;
  }
  .p-blog-main .main-navigation div.menu > ul > li:last-child > a,
  .p-blog-main .main-navigation ul.menu > li:last-child > a {
    padding-right: 0;
  }
  .p-blog-main .main-navigation div.menu > ul > li.page_item_has_children > a:after,
  .p-blog-main .main-navigation ul.menu > li.page_item_has_children > a:after,
  .p-blog-main .main-navigation div.menu > ul > li.menu-item-has-children > a:after,
  .p-blog-main .main-navigation ul.menu > li.menu-item-has-children > a:after {
    content: "\f107";
    display: inline-block;
    font: normal 18px/1 FontAwesome;
    -webkit-font-smoothing: antialiased;
    margin-left: 8px;
  }
  .p-blog-main .main-navigation ul ul {
    background-color: #fff;
    -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
            box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    left: -9999px;
    opacity: 0;
    position: absolute;
    top: 100%;
    -webkit-transition: opacity 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out;
    white-space: normal;
    width: 225px;
    z-index: 10;
  }
  .p-blog-main .main-navigation ul ul ul {
    top: 0;
  }
  .p-blog-main .main-navigation ul li:hover > ul {
    left: 0;
    opacity: 1;
  }
  .p-blog-main .main-navigation div.menu > ul > li:first-child:hover > ul,
  .p-blog-main .main-navigation ul.menu > li:first-child:hover > ul {
    left: -18px;
  }
  .p-blog-main .main-navigation div.menu > ul > li:last-child:hover > ul,
  .p-blog-main .main-navigation ul.menu > li:last-child:hover > ul {
    left: auto;
    right: -18px;
  }
  .p-blog-main .main-navigation ul ul li:hover > ul {
    left: 100%;
    opacity: 1;
  }
  .p-blog-main .main-navigation ul ul li a {
    border-top: 1px solid #eee;
    line-height: 1.6;
    padding-bottom: 15px;
    padding-top: 15px;
  }
  .p-blog-main .main-navigation ul ul li.page_item_has_children > a,
  .p-blog-main .main-navigation ul ul li.menu-item-has-children > a {
    padding-right: 30px;
  }
  .p-blog-main .main-navigation ul ul li.page_item_has_children > a:after,
  .p-blog-main .main-navigation ul ul li.menu-item-has-children > a:after {
    content: "\f105";
    font: normal 18px/1 FontAwesome;
    -webkit-font-smoothing: antialiased;
    position: absolute;
    right: 15px;
    top: 18px;
  }
  .p-blog-main .main-navigation .current_page_item > a,
  .p-blog-main .main-navigation .current-menu-item > a {
    color: #111;
    font-weight: 700;
  }
}
.p-blog-main {
  /* Social Link */
}
.p-blog-main .menu a:before {
  color: #bbb;
  display: inline-block;
  font: normal 24px/1 FontAwesome;
  -webkit-font-smoothing: antialiased;
  margin-right: 10px;
  position: relative;
  top: -1px;
  -webkit-transition: color 0.2s ease-in-out;
  transition: color 0.2s ease-in-out;
  vertical-align: middle;
}
.p-blog-main .menu a:hover:before {
  color: #888;
}
.p-blog-main .widget .menu a:before {
  margin-right: 12px;
}
.p-blog-main .profilewidget-link.menu a:before,
.p-blog-main .social-link-menu a:before {
  content: "\f0c1";
  margin-left: 0;
  margin-right: 4px;
}
.p-blog-main .menu a[href*="behance.net"]:before {
  content: "\f1b4";
}
.p-blog-main .menu a[href*="deviantart.com"]:before {
  content: "\f1bd";
}
.p-blog-main .menu a[href*="digg.com"]:before {
  content: "\f1a6";
}
.p-blog-main .menu a[href*="dribbble.com"]:before {
  content: "\f17d";
}
.p-blog-main .menu a[href*="dropbox.com"]:before {
  content: "\f16b";
}
.p-blog-main .menu a[href*="facebook.com"]:before {
  content: "\f230";
}
.p-blog-main .menu a[href*="flickr.com"]:before {
  content: "\f16e";
}
.p-blog-main .menu a[href*="foursquare.com"]:before {
  content: "\f180";
}
.p-blog-main .menu a[href*="plus.google.com"]:before {
  content: "\f0d5";
}
.p-blog-main .menu a[href*="github.com"]:before {
  content: "\f09b";
}
.p-blog-main .menu a[href*="instagram.com"]:before {
  content: "\f16d";
}
.p-blog-main .menu a[href*="linkedin.com"]:before {
  content: "\f30c";
}
.p-blog-main .menu a[href*="medium.com"]:before {
  content: "\f23a";
}
.p-blog-main .menu a[href*="pinterest.com"]:before {
  content: "\f231";
}
.p-blog-main .menu a[href*="getpocket.com"]:before {
  content: "\f265";
}
.p-blog-main .menu a[href*="reddit.com"]:before {
  content: "\f1a1";
}
.p-blog-main .menu a[href*="skype.com"]:before,
.p-blog-main .menu a[href*="skype:"]:before {
  content: "\f17e";
}
.p-blog-main .menu a[href*="slideshare.net"]:before {
  content: "\f1e7";
}
.p-blog-main .menu a[href*="snapchat.com"]:before {
  content: "\f2ab";
}
.p-blog-main .menu a[href*="soundcloud.com"]:before {
  content: "\f1be";
}
.p-blog-main .menu a[href*="spotify.com"]:before {
  content: "\f1bc";
}
.p-blog-main .menu a[href*="stumbleupon.com"]:before {
  content: "\f1a4";
}
.p-blog-main .menu a[href*="tumblr.com"]:before {
  content: "\f173";
}
.p-blog-main .menu a[href*="twitch.tv"]:before {
  content: "\f1e8";
}
.p-blog-main .menu a[href*="twitter.com"]:before {
  content: "\f099";
}
.p-blog-main .menu a[href*="vimeo.com"]:before {
  content: "\f27d";
}
.p-blog-main .menu a[href*="vk.com"]:before {
  content: "\f189";
}
.p-blog-main .menu a[href*="wordpress.org"]:before,
.p-blog-main .menu a[href*="wordpress.com"]:before {
  content: "\f19a";
}
.p-blog-main .menu a[href*="yelp.com"]:before {
  content: "\f1e9";
}
.p-blog-main .menu a[href*="youtube.com"]:before {
  content: "\f16a";
}
.p-blog-main .menu a[href$="/feed/"]:before {
  content: "\f09e";
}
.p-blog-main {
  /* Social Link Menu */
}
.p-blog-main .social-link-menu ul {
  list-style: none;
  margin: 0;
}
.p-blog-main .social-link-menu li {
  display: inline-block;
  padding-left: 12px;
}
.p-blog-main .social-link-menu li:first-child {
  padding-left: 0;
}
.p-blog-main .social-link-menu a:before {
  margin-right: 0;
}
.p-blog-main {
  /* Featured Area
  ------------------------------------------------------------ */
  /* Jumbotron */
}
.p-blog-main .jumbotron {
  background-color: #333;
  background-position: center;
  background-size: cover;
}
.p-blog-main .jumbotron-overlay {
  background-color: rgba(0, 0, 0, 0.4);
}
.p-blog-main .jumbotron-content {
  padding-bottom: 60px;
  padding-top: 60px;
  text-align: center;
}
.p-blog-main .jumbotron-title {
  color: #fff;
  font-size: 2.25rem;
  letter-spacing: -0.03em;
  margin-bottom: 0;
  margin-top: 0;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
}
@media screen and (min-width: 782px) {
  .p-blog-main .jumbotron-title {
    font-size: 2.5rem;
  }
  .p-blog-main .jumbotron-content {
    padding-bottom: 90px;
    padding-top: 90px;
  }
}
@media screen and (min-width: 980px) {
  .p-blog-main .jumbotron-content {
    padding-bottom: 105px;
    padding-top: 105px;
  }
}
.p-blog-main {
  /* Home Header */
}
.p-blog-main .home-header {
  background-color: #333;
  background-position: center;
  background-size: cover;
}
.p-blog-main .home-header-overlay {
  background-color: rgba(0, 0, 0, 0.4);
}
.p-blog-main .home-header-content {
  padding-bottom: 75px;
  padding-top: 75px;
  text-align: left;
}
.p-blog-main .home-header-title {
  color: #fff;
  font-size: 2.5rem;
  letter-spacing: -0.03em;
  margin-bottom: 0;
  margin-top: 0;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
}
.p-blog-main .home-header-text {
  color: rgba(255, 255, 255, 0.9);
  font-size: 105%;
  margin-top: 28px;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
}
.p-blog-main .home-header-button {
  font-size: 95%;
}
.p-blog-main .home-header-button a {
  border-radius: 25px;
  color: #fff;
  display: inline-block;
  font-weight: 600;
  margin-top: 30px;
  text-decoration: none;
}
.p-blog-main a.home-header-button-main {
  background-color: #4693f5;
  margin-right: 16px;
  padding: 12px 25px;
}
.p-blog-main a.home-header-button-main:hover {
  color: #fff;
}
.p-blog-main a.home-header-button-sub {
  border: solid 2px #fff;
  padding: 10px 23px;
}
.p-blog-main a.home-header-button-sub:hover {
  background-color: #fff;
  color: #111;
}
@media screen and (min-width: 782px) {
  .p-blog-main .home-header-content {
    padding-bottom: 105px;
    padding-top: 105px;
  }
}
@media screen and (min-width: 980px) {
  .p-blog-main .home-header-content {
    padding-bottom: 135px;
    padding-top: 135px;
  }
  .p-blog-main .home-header-title {
    font-size: 3rem;
  }
}
.p-blog-main {
  /* Featured Post */
}
.p-blog-main .featured-post {
  overflow: hidden;
}
.p-blog-main .featured-post,
.p-blog-main .featured-entry {
  height: 225px;
}
.p-blog-main .featured-entry {
  background-color: #333;
  background-position: center;
  background-size: cover;
}
.p-blog-main .featured-entry-overlay {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: rgba(0, 0, 0, 0.4);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  width: 100%;
}
.p-blog-main .featured-entry-content {
  text-align: center;
  padding-left: 40px;
  padding-right: 40px;
}
.p-blog-main .featured-entry-title {
  color: #fff;
  font-size: 1.75rem;
  letter-spacing: -0.03em;
  margin-bottom: 0;
  margin-top: 0;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
}
.p-blog-main .featured-entry-category {
  text-transform: uppercase;
}
.p-blog-main .featured-entry-category,
.p-blog-main .featured-entry-date {
  color: rgba(255, 255, 255, 0.8);
  display: none;
  font-size: 90%;
  margin-bottom: 12px;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
}
.p-blog-main .featured-entry-title a,
.p-blog-main .featured-entry-category a,
.p-blog-main .featured-entry-date a {
  color: inherit;
  text-decoration: none;
}
.p-blog-main .featured-entry-title a:hover,
.p-blog-main .featured-entry-category a:hover,
.p-blog-main .featured-entry-date a:hover {
  color: #fff;
}
.p-blog-main .slick-loading .slick-list {
  background: #fff url("images/ajax-loader.gif") center center no-repeat;
}
.p-blog-main .slick-prev,
.p-blog-main .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 30px;
  height: 30px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
  text-shadow: none;
}
.p-blog-main .slick-prev:hover,
.p-blog-main .slick-prev:focus,
.p-blog-main .slick-next:hover,
.p-blog-main .slick-next:focus {
  background: transparent;
  outline: none;
}
.p-blog-main .slick-prev:hover:before,
.p-blog-main .slick-prev:focus:before,
.p-blog-main .slick-next:hover:before,
.p-blog-main .slick-next:focus:before {
  opacity: 1;
}
.p-blog-main .slick-prev.slick-disabled:before,
.p-blog-main .slick-next.slick-disabled:before {
  opacity: 0.25;
}
.p-blog-main .slick-prev:before,
.p-blog-main .slick-next:before {
  font-family: FontAwesome;
  font-size: 30px;
  line-height: 1;
  opacity: 0.75;
  color: white;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition: 0.15s ease-in-out;
  transition: 0.15s ease-in-out;
}
.p-blog-main .slick-prev {
  left: 5px;
  z-index: 9999;
}
.p-blog-main [dir=rtl] .slick-prev {
  right: 5px;
  left: auto;
}
.p-blog-main .slick-prev:before {
  content: "\f104";
}
.p-blog-main [dir=rtl] .slick-prev:before {
  content: "\f105";
}
.p-blog-main .slick-next {
  right: 5px;
}
.p-blog-main [dir=rtl] .slick-next {
  right: auto;
  left: 5px;
}
.p-blog-main .slick-next:before {
  content: "\f105";
}
.p-blog-main [dir=rtl] .slick-next:before {
  content: "\f104";
}
.p-blog-main .slick-dots {
  bottom: 12px;
  list-style: none;
  margin: 0;
  position: absolute;
  text-align: center;
  width: 100%;
}
.p-blog-main .slick-dots li {
  border-radius: 50%;
  -webkit-box-shadow: 0px 1px 1px rgba(255, 255, 255, 0.4), 0px 1px 1px rgba(0, 0, 0, 0.2) inset;
          box-shadow: 0px 1px 1px rgba(255, 255, 255, 0.4), 0px 1px 1px rgba(0, 0, 0, 0.2) inset;
  display: inline-block;
  height: 12px;
  margin-left: 5px;
  margin-right: 5px;
  width: 12px;
}
.p-blog-main .slick-dots li button {
  background: #000;
  border: solid 2px #000;
  border-radius: 50%;
  color: transparent;
  display: block;
  font-size: 0;
  height: 12px;
  line-height: 0;
  outline: none;
  width: 12px;
  opacity: 0.4;
}
.p-blog-main .slick-dots li button:hover,
.p-blog-main .slick-dots li button:focus {
  opacity: 0.75;
}
.p-blog-main .slick-dots li.slick-active button {
  background: #fff;
  opacity: 0.8;
}
@media screen and (min-width: 601px) {
  .p-blog-main .featured-post,
  .p-blog-main .featured-entry {
    height: 275px;
  }
  .p-blog-main .featured-entry-title {
    font-size: 2.25rem;
  }
  .p-blog-main .featured-entry-content {
    padding-left: 70px;
    padding-right: 70px;
  }
  .p-blog-main .slick-prev,
  .p-blog-main .slick-next {
    width: 40px;
    height: 40px;
  }
  .p-blog-main .slick-prev:before,
  .p-blog-main .slick-next:before {
    font-size: 40px;
  }
  .p-blog-main .slick-prev {
    left: 15px;
  }
  .p-blog-main [dir=rtl] .slick-prev {
    right: 15px;
    left: auto;
  }
  .p-blog-main .slick-next {
    right: 15px;
  }
  .p-blog-main [dir=rtl] .slick-next {
    right: auto;
    left: 15px;
  }
  .p-blog-main .slick-dots {
    bottom: 24px;
  }
  .p-blog-main .slick-dots li {
    height: 18px;
    width: 18px;
  }
  .p-blog-main .slick-dots li button {
    border: solid 4px #000;
    height: 18px;
    width: 18px;
  }
}
@media screen and (min-width: 782px) {
  .p-blog-main .featured-post,
  .p-blog-main .featured-entry {
    height: 350px;
  }
  .p-blog-main .featured-entry-title {
    font-size: 2.5rem;
    margin-bottom: 12px;
  }
  .p-blog-main .featured-entry-category,
  .p-blog-main .featured-entry-date {
    display: block;
  }
}
@media screen and (min-width: 980px) {
  .p-blog-main .featured-post,
  .p-blog-main .featured-entry {
    height: 400px;
  }
}
.p-blog-main {
  /* Content
  ------------------------------------------------------------ */
  /* Category */
}
.p-blog-main .cat-links {
  font-size: 90%;
  margin-bottom: 1rem;
  text-transform: uppercase;
}
.p-blog-main .cat-links a {
  text-decoration: none;
}
.p-blog-main .category-sep {
  color: #ccc;
  font-size: 80%;
  margin-left: 5px;
  margin-right: 5px;
  position: relative;
  top: -0.1em;
}
.p-blog-main {
  /* Entry Header */
}
.p-blog-main .entry-header {
  margin-bottom: 4rem;
}
.p-blog-main .no-sidebar .entry-header {
  text-align: center;
}
.p-blog-main .entry-title {
  font-size: 2.25rem;
  letter-spacing: -0.03em;
  margin-bottom: 0;
  margin-top: 0;
}
.p-blog-main .entry-title a {
  color: inherit;
  text-decoration: none;
}
@media screen and (min-width: 782px) {
  .p-blog-main .entry-title {
    font-size: 2.5rem;
  }
}
.p-blog-main {
  /* Entry Meta */
}
.p-blog-main .entry-meta {
  color: #999;
  font-size: 90%;
  margin-top: 1rem;
}
.p-blog-main .entry-meta a {
  color: inherit;
  text-decoration: none;
}
.p-blog-main .entry-meta a:hover {
  color: #666;
}
.p-blog-main .comments-sep {
  color: #ccc;
}
.p-blog-main .byline a,
.p-blog-main .comments-link a {
  border-bottom: solid 1px #ddd;
}
.p-blog-main {
  /* Featured Image */
}
.p-blog-main .post-thumbnail {
  margin-bottom: 2rem;
  margin-top: 4rem;
}
.p-blog-main .single .post-thumbnail {
  margin-left: -20px;
  margin-right: -20px;
}
.p-blog-main .post-thumbnail img {
  width: 100%;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.p-blog-main .post-thumbnail a:hover img {
  opacity: 0.85;
}
@media screen and (min-width: 782px) {
  .p-blog-main .single .post-thumbnail {
    margin-left: -40px;
    margin-right: -40px;
  }
}
@media screen and (min-width: 980px) {
  .p-blog-main .single .post-thumbnail {
    margin-left: 0;
    margin-right: 0;
  }
  .p-blog-main .no-sidebar .post-thumbnail {
    margin-left: -60px;
    margin-right: -60px;
  }
}
.p-blog-main {
  /* Entry Content */
}
.p-blog-main .entry-content > *:first-child {
  margin-top: 0;
}
.p-blog-main .entry-content > *:last-child {
  margin-bottom: 0;
}
.p-blog-main {
  /* Post Full / Post Summary */
}
.p-blog-main .post-full,
.p-blog-main .post-summary {
  margin-bottom: 4rem;
}
.p-blog-main .post-full .hentry,
.p-blog-main .post-summary .hentry {
  margin-bottom: 4rem;
}
.p-blog-main .post-full:after,
.p-blog-main .post-summary:after {
  border-bottom: 1px solid #ddd;
  content: "";
  display: block;
  width: 45px;
}
.p-blog-main .no-sidebar .post-full:after,
.p-blog-main .no-sidebar .post-summary:after {
  margin: auto;
}
.p-blog-main a.continue-reading {
  text-transform: uppercase;
}
.p-blog-main {
  /* Post Grid */
}
.p-blog-main .two-column .loop-wrapper,
.p-blog-main .three-column .loop-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.p-blog-main .post-grid .entry-header {
  margin-bottom: 2rem;
  text-align: left;
}
.p-blog-main .post-grid .post-thumbnail {
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
}
.p-blog-main .post-grid .entry-title {
  font-size: 1.75rem;
}
.p-blog-main .post-grid .entry-summary {
  color: #666;
  font-size: 90%;
}
.p-blog-main .post-grid .entry-summary p {
  margin-bottom: 0;
}
@media screen and (min-width: 540px) {
  .p-blog-main .post-grid .entry-title {
    font-size: 1.5rem;
  }
  .p-blog-main .post-grid .cat-links,
  .p-blog-main .post-grid .entry-meta {
    font-size: 85%;
  }
  .p-blog-main .post-grid .entry-summary {
    font-size: 90%;
  }
  .p-blog-main .post-grid {
    width: 46%;
    padding-right: 8%;
  }
  .p-blog-main .post-grid:nth-child(even) {
    padding-right: 0;
  }
}
@media screen and (min-width: 980px) {
  .p-blog-main .three-column .loop-wrapper {
    margin-left: -30px;
    margin-right: -30px;
  }
  .p-blog-main .three-column .post-grid {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 33.3%;
    padding-left: 30px;
    padding-right: 30px;
  }
}
.p-blog-main {
  /* Post List */
}
.p-blog-main .post-list .entry-header {
  margin-bottom: 2rem;
  text-align: left;
}
.p-blog-main .post-list .post-thumbnail {
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
}
.p-blog-main .post-list .entry-title {
  font-size: 1.75rem;
}
.p-blog-main .post-list .entry-summary {
  color: #666;
  font-size: 90%;
}
.p-blog-main .post-list .entry-summary p {
  margin-bottom: 0;
}
@media screen and (min-width: 540px) {
  .p-blog-main .post-list .hentry {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .p-blog-main .post-list .post-thumbnail {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    margin-bottom: 0;
    margin-right: 5%;
    -ms-flex-preferred-size: 35%;
        flex-basis: 35%;
  }
}
.p-blog-main {
  /* Entry Footer */
}
.p-blog-main .tags-links {
  color: #999;
  font-size: 90%;
  margin-top: 4rem;
  text-align: center;
}
.p-blog-main .tags-links:before {
  color: #ccc;
  content: "\f02c";
  display: inline-block;
  font: normal 18px/1 FontAwesome;
  -webkit-font-smoothing: antialiased;
  margin-right: 4px;
  position: relative;
  top: 1px;
}
.p-blog-main .tags-links a {
  color: inherit;
  text-decoration: none;
}
.p-blog-main .tags-links a:hover {
  color: #666;
}
.p-blog-main {
  /* Author Profile */
}
.p-blog-main .author-profile {
  background-color: #f4f5f6;
  margin-top: 4rem;
  padding: 25px;
}
.p-blog-main .author-profile-header {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.p-blog-main .author-profile-avatar {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 60px;
  margin-right: 20px;
}
.p-blog-main .author-profile-avatar img {
  border-radius: 50%;
}
.p-blog-main .author-profile-name strong {
  font-weight: 600;
}
.p-blog-main .author-profile-name a {
  color: inherit;
  text-decoration: none;
}
.p-blog-main .author-profile-name a:hover {
  color: #111;
}
.p-blog-main .author-profile-description {
  font-size: 95%;
  margin-top: 20px;
}
@media screen and (min-width: 540px) {
  .p-blog-main .author-profile {
    padding: 45px;
  }
  .p-blog-main .author-profile-avatar {
    width: 75px;
    margin-right: 30px;
  }
  .p-blog-main .author-profile-description {
    margin-top: 30px;
  }
}
.p-blog-main {
  /* Sticky Post */
}
.p-blog-main .featured {
  background-color: #111;
  border-radius: 5px;
  color: #fff;
  display: inline-block;
  font-size: 75%;
  margin-bottom: 1rem;
  margin-right: 12px;
  padding: 4px 10px 3px;
  text-transform: uppercase;
}
.p-blog-main .featured + .cat-links {
  display: inline-block;
}
.p-blog-main {
  /* Archive */
}
.p-blog-main .page-title {
  font-size: 1.5rem;
  margin-bottom: 12px;
  margin-top: 0;
}
.p-blog-main .page-content {
  margin-bottom: 5rem;
}
.p-blog-main {
  /* 404 */
}
.p-blog-main .error-404 {
  margin-bottom: 10rem;
  margin-top: 10rem;
  text-align: center;
}
.p-blog-main .error-404 .page-title {
  font-size: 2rem;
}
.p-blog-main {
  /* Quote */
}
.p-blog-main .wp-block-pullquote {
  padding: 12px 0;
}
.p-blog-main .wp-block-pullquote.alignleft,
.p-blog-main .wp-block-pullquote.alignright {
  margin-bottom: 0;
  text-align: left;
}
.p-blog-main .wp-block-quote.is-style-large {
  margin-bottom: 2em;
}
.p-blog-main .wp-block-quote.is-style-large p {
  font-style: normal;
}
.p-blog-main .wp-block-quote.is-style-large cite {
  font-size: 90%;
}
.p-blog-main {
  /* Gallery */
}
.p-blog-main .gallery {
  margin-bottom: 30px;
}
.p-blog-main .gallery-item {
  display: inline-block;
  line-height: 1;
  text-align: center;
  vertical-align: top;
  width: 100%;
}
.p-blog-main .gallery .gallery-caption {
  display: none;
}
.p-blog-main .gallery-columns-2 .gallery-item {
  max-width: 50%;
}
.p-blog-main .gallery-columns-3 .gallery-item {
  max-width: 33.33%;
}
.p-blog-main .gallery-columns-4 .gallery-item {
  max-width: 25%;
}
.p-blog-main .gallery-columns-5 .gallery-item {
  max-width: 20%;
}
.p-blog-main .gallery-columns-6 .gallery-item {
  max-width: 16.66%;
}
.p-blog-main .gallery-columns-7 .gallery-item {
  max-width: 14.28%;
}
.p-blog-main .gallery-columns-8 .gallery-item {
  max-width: 12.5%;
}
.p-blog-main .gallery-columns-9 .gallery-item {
  max-width: 11.11%;
}
.p-blog-main {
  /* Gutenberg
  ------------------------------------------------------------ */
  /* Base
     This section incorporates code from Atomic Blocks */
}
.p-blog-main .wp-block-gallery {
  margin-left: 0;
  margin-bottom: 0.9em;
}
.p-blog-main .wp-block-image {
  margin-bottom: 1.8em;
}
.p-blog-main .wp-block-image figcaption {
  font-size: 90%;
  margin-top: 1em;
}
.p-blog-main .entry-content .wp-block-gallery {
  padding-left: 0;
}
.p-blog-main .no-sidebar .alignfull,
.p-blog-main .no-sidebar .alignwide {
  width: 100%;
}
@media (max-width: 600px) {
  .p-blog-main .no-sidebar .alignfull.wp-block-gallery,
  .p-blog-main .no-sidebar .alignwide.wp-block-gallery {
    margin-left: -10px;
    margin-right: -10px;
    width: inherit;
  }
}
.p-blog-main .no-sidebar .alignfull img,
.p-blog-main .no-sidebar .alignwide img {
  width: 100%;
  display: block;
}
.p-blog-main .no-sidebar .alignwide {
  max-width: none;
}
@media (min-width: 782px) {
  .p-blog-main .no-sidebar .alignwide {
    width: 90vw;
    margin-left: calc(50% - 45vw);
  }
}
@media (min-width: 980px) {
  .p-blog-main .no-sidebar .alignwide {
    width: 85vw;
    margin-left: calc(50% - 42.5vw);
  }
}
@media (min-width: 1160px) {
  .p-blog-main .no-sidebar .alignwide {
    width: 1120px;
    margin-left: calc(50% - 560px);
  }
}
.p-blog-main .no-sidebar .alignfull {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  max-width: none;
}
.p-blog-main .wp-block-embed {
  margin-bottom: 1.8em;
}
.p-blog-main .wp-block-embed.wp-embed-aspect-16-9 .wp-block-embed__wrapper:before {
  padding-top: 0;
}
.p-blog-main .wp-block-cover {
  margin-bottom: 1.8em;
}
.p-blog-main .wp-block-cover-text {
  max-width: 1120px !important;
  margin-left: auto !important;
  margin-right: auto;
  padding-left: 20px !important;
  padding-right: 20px !important;
  width: 100%;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
}
.p-blog-main .wp-block-media-text__content {
  margin-bottom: 1.8em;
  margin-top: 1.8em;
}
.p-blog-main .wp-block-media-text__content > *:first-child {
  margin-top: 0;
}
.p-blog-main .wp-block-media-text__content > *:last-child {
  margin-bottom: 0;
}
.p-blog-main {
  /* Columns */
}
@media screen and (max-width: 781px) {
  .p-blog-main .wp-block-column {
    -ms-flex-preferred-size: 100% !important;
        flex-basis: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
}
.p-blog-main .wp-block-column {
  margin-bottom: 2.7em;
  margin-top: 0.9em;
}
.p-blog-main .wp-block-column > *:first-child {
  margin-top: 0;
}
.p-blog-main .wp-block-column > *:last-child {
  margin-bottom: 0;
}
.p-blog-main {
  /* Latest Posts */
}
.p-blog-main .wp-block-latest-posts {
  border-top: solid 1px #eee;
  list-style: none;
  margin-left: 0;
  padding-top: 1em;
}
.p-blog-main .wp-block-latest-posts li {
  border-bottom: solid 1px #eee;
  margin-bottom: 1em;
  padding-bottom: 1em;
}
.p-blog-main .wp-block-latest-posts a {
  text-decoration: none;
}
.p-blog-main .wp-block-latest-posts__post-date {
  margin-top: 0.3em;
}
.p-blog-main {
  /* Button */
}
.p-blog-main .wp-block-button a {
  color: #fff;
  text-decoration: none;
}
.p-blog-main .wp-block-button a:hover {
  opacity: 0.9;
}
.p-blog-main .wp-block-button__link {
  font-size: 100%;
  padding: 9px 24px;
}
.p-blog-main {
  /* Intro */
}
.p-blog-main .intro {
  color: #777;
  font-size: 120%;
}
.p-blog-main {
  /* Sub Header */
}
.p-blog-main .subheader {
  color: #4693f5;
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 0.6em;
  margin-top: 0;
  text-transform: uppercase;
}
.p-blog-main .subheader + h1,
.p-blog-main .subheader + h2,
.p-blog-main .subheader + h3,
.p-blog-main .subheader + h4,
.p-blog-main .subheader + h5,
.p-blog-main .subheader + h6 {
  margin-top: 0;
}
.p-blog-main {
  /* Container */
}
.p-blog-main .container-wrapper {
  background-color: #f4f5f6;
  margin-bottom: 6rem;
  margin-top: 6rem;
  padding-bottom: 20px;
  padding-top: 20px;
}
.p-blog-main .no-sidebar .container-wrapper {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  max-width: none;
  padding-bottom: 6rem;
  padding-top: 6rem;
}
.p-blog-main .container-content > *:first-child {
  margin-top: 0;
}
.p-blog-main .container-content > *:last-child {
  margin-bottom: 0;
}
.p-blog-main .container-content > .wp-block-columns:last-child {
  margin-bottom: -2.7em;
}
.p-blog-main .no-sidebar .wp-block-columns + .container-wrapper {
  margin-top: 4rem;
}
.p-blog-main {
  /* Navigations
  ------------------------------------------------------------ */
  /* Pagination */
}
.p-blog-main .pagination {
  color: #777;
  font-size: 90%;
  margin-bottom: 3rem;
}
.p-blog-main .pagination a {
  color: inherit;
  text-decoration: none;
}
.p-blog-main .pagination .page-numbers {
  display: none;
  padding: 8px 18px;
  margin-right: 6px;
}
.p-blog-main .pagination .prev,
.p-blog-main .pagination .next {
  display: inline-block;
}
.p-blog-main .pagination .dots {
  padding-left: 10px;
  padding-right: 10px;
}
.p-blog-main .pagination a.page-numbers {
  border: solid 1px #eee;
}
.p-blog-main .pagination a.page-numbers:hover {
  border-color: #ddd;
  color: #333;
}
.p-blog-main .pagination .current {
  background-color: #f4f5f6;
  border: solid 1px #ddd;
  color: #333;
  font-weight: 700;
}
@media screen and (min-width: 640px) {
  .p-blog-main .pagination .page-numbers {
    display: inline-block;
  }
}
.p-blog-main {
  /* Page Links */
}
.p-blog-main .page-links {
  color: #777;
  clear: both;
  font-size: 90%;
  margin-bottom: 3rem;
  margin-top: 4rem;
}
.p-blog-main .page-links .page-numbers {
  background-color: #f4f5f6;
  border: solid 1px #ddd;
  color: #333;
  font-weight: 700;
  padding: 8px 16px;
  margin-left: 4px;
}
.p-blog-main .page-links a {
  color: inherit;
  text-decoration: none;
}
.p-blog-main .page-links a .page-numbers {
  background-color: transparent;
  border: solid 1px #eee;
  color: #777;
  font-weight: normal;
}
.p-blog-main .page-links a .page-numbers:hover {
  border: solid 1px #ddd;
  color: #333;
}
.p-blog-main {
  /* Post Navigation */
}
.p-blog-main .post-navigation {
  margin-bottom: 3rem;
}
.p-blog-main .post-navigation a {
  color: inherit;
  text-decoration: none;
}
.p-blog-main .post-navigation a:hover {
  color: #111;
}
.p-blog-main .post-navigation .nav-previous {
  margin-bottom: 3rem;
}
.p-blog-main .post-nav-title {
  color: #999;
  font-size: 80%;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  margin-bottom: 8px;
}
@media screen and (min-width: 640px) {
  .p-blog-main .post-navigation .nav-previous {
    float: left;
    width: 48%;
    margin-bottom: 0;
  }
  .p-blog-main .post-navigation .nav-next {
    float: right;
    width: 48%;
    text-align: right;
  }
}
.p-blog-main {
  /* Comment Navigation */
}
.p-blog-main .comment-navigation {
  text-transform: uppercase;
  margin-bottom: 20px;
  padding-top: 10px;
}
.p-blog-main .comment-navigation .nav-previous {
  float: left;
  width: 48%;
}
.p-blog-main .comment-navigation .nav-next {
  float: right;
  text-align: right;
  width: 48%;
}
.p-blog-main .comment-navigation a {
  color: #777;
  text-decoration: underline;
}
.p-blog-main .comment-navigation a:hover {
  color: #333;
}
.p-blog-main {
  /* Comments
  ------------------------------------------------------------ */
  /* Base */
}
.p-blog-main .comments-area {
  font-size: 90%;
  margin-bottom: 2rem;
  margin-top: 6rem;
}
.p-blog-main {
  /* Comment Header */
}
.p-blog-main .comments-title,
.p-blog-main .comment-reply-title {
  font-size: 1.5rem;
  margin-bottom: 2rem;
  margin-top: 0;
}
.p-blog-main .comment-reply-title {
  margin-top: 4rem;
}
.p-blog-main .comment-respond:only-child .comment-reply-title,
.p-blog-main .comment-list .comment-reply-title {
  margin-top: 0;
}
.p-blog-main {
  /* Comment Structure */
}
.p-blog-main .comment-list {
  border-bottom: solid 1px #eee;
  list-style: none;
  margin: 0 0 20px;
}
.p-blog-main .comment-list .children {
  list-style: none;
  margin-left: 25px;
}
.p-blog-main .comment-list .comment-body {
  border-top: solid 1px #eee;
  padding-bottom: 30px;
  padding-top: 30px;
  position: relative;
}
.p-blog-main {
  /* Comment Meta */
}
.p-blog-main .comment-author {
  font-size: 105%;
  font-weight: 600;
  margin-bottom: 2px;
}
.p-blog-main .comment-author a {
  border-bottom: dotted 1px #999;
  color: #333;
  text-decoration: none;
}
.p-blog-main .comment-author a:hover {
  color: #666;
}
.p-blog-main .comment-author .avatar {
  border-radius: 50%;
  height: 60px;
  left: 0;
  position: absolute;
  top: 28px;
  width: 60px;
}
.p-blog-main .has-avatars .comment .comment-meta {
  margin-left: 75px;
}
.p-blog-main .bypostauthor > .comment-body .comment-author:after {
  color: #111;
  content: "\f14b";
  display: inline-block;
  font: normal 20px/1 FontAwesome;
  -webkit-font-smoothing: antialiased;
  margin-left: 3px;
}
.p-blog-main .comment-author .says {
  display: none;
}
.p-blog-main .comment-metadata {
  font-size: 95%;
  margin-bottom: 25px;
}
.p-blog-main .comment-metadata a,
.p-blog-main a.comment-edit-link {
  color: #999;
  text-decoration: none;
}
.p-blog-main .comment-metadata a:hover,
.p-blog-main a.comment-edit-link:hover {
  color: #666;
}
.p-blog-main .comment-edit-link {
  margin-left: 15px;
}
.p-blog-main {
  /* Comment Body */
}
.p-blog-main .comment-body .reply a {
  color: #999;
  font-size: 95%;
  text-decoration: none;
}
.p-blog-main .comment-body .reply a:hover {
  color: #666;
}
.p-blog-main .comment-body .reply a:before {
  content: "\f0e5";
  display: inline-block;
  font: normal 15px/1 FontAwesome;
  -webkit-font-smoothing: antialiased;
  margin-right: 6px;
  position: relative;
  top: -1px;
}
.p-blog-main .comment-awaiting-moderation {
  color: #666;
}
.p-blog-main {
  /* Pingback */
}
.p-blog-main .pingback a {
  color: #666;
  text-decoration: underline;
}
.p-blog-main .pingback a:hover {
  color: #999;
}
.p-blog-main {
  /* Comment Form */
}
.p-blog-main .comment-respond a {
  color: #666;
}
.p-blog-main .comment-respond a:hover {
  color: #333;
}
.p-blog-main .comment-form-comment,
.p-blog-main .comment-form-author,
.p-blog-main .comment-form-email,
.p-blog-main .comment-form-url {
  margin-bottom: 15px;
}
.p-blog-main .comment-form-comment label {
  display: none;
}
.p-blog-main .comment-form-author label,
.p-blog-main .comment-form-email label,
.p-blog-main .comment-form-url label {
  font-size: 95%;
  margin-bottom: 8px;
  text-transform: uppercase;
}
.p-blog-main .comment-form-author input,
.p-blog-main .comment-form-email input,
.p-blog-main .comment-form-url input {
  width: 100%;
}
.p-blog-main .form-submit {
  font-size: 105%;
  margin-bottom: 30px;
  margin-top: 30px;
  text-align: center;
}
@media screen and (min-width: 540px) {
  .p-blog-main .comment-form-author,
  .p-blog-main .comment-form-email,
  .p-blog-main .comment-form-url {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .p-blog-main .comment-form-author label,
  .p-blog-main .comment-form-email label,
  .p-blog-main .comment-form-url label {
    margin-bottom: 0;
    width: 23%;
  }
  .p-blog-main .comment-form-author input,
  .p-blog-main .comment-form-email input,
  .p-blog-main .comment-form-url input {
    width: 72%;
  }
}
.p-blog-main {
  /* Widgets
  ------------------------------------------------------------ */
  /* Base */
}
.p-blog-main .widget {
  color: #666;
  font-size: 90%;
}
.p-blog-main {
  /* Heading */
}
.p-blog-main .widget-title {
  color: #333;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  margin-bottom: 2rem;
  margin-top: 0;
  text-transform: uppercase;
}
.p-blog-main {
  /* Link */
}
.p-blog-main .widget a {
  color: inherit;
  text-decoration: underline;
}
.p-blog-main .widget li a {
  text-decoration: none;
}
.p-blog-main .widget a:hover {
  color: #111;
}
.p-blog-main {
  /* List */
}
.p-blog-main .widget ul {
  list-style: none;
  margin-bottom: 0;
  margin-left: 0;
}
.p-blog-main .widget li {
  margin-bottom: 1em;
}
.p-blog-main .widget ul ul {
  margin-left: 1em;
  margin-top: 1em;
}
.p-blog-main {
  /* Recent Posts */
}
.p-blog-main .widget_recent_entries li {
  margin-bottom: 1.5em;
}
.p-blog-main .widget_recent_entries li a {
  border-bottom: solid 1px #ddd;
}
.p-blog-main .widget_recent_entries .post-date {
  color: #999;
  display: block;
  font-size: 90%;
  margin-top: 6px;
  text-transform: uppercase;
}
.p-blog-main {
  /* Recent Comments */
}
.p-blog-main .widget_recent_comments li {
  margin-bottom: 1.5em;
}
.p-blog-main .widget_recent_comments li a {
  border-bottom: solid 1px #ddd;
}
.p-blog-main {
  /* Search */
}
.p-blog-main .widget_search input[type=search] {
  margin-top: 0;
  max-width: 300px;
  width: 100%;
}
.p-blog-main .widget_search .search-submit {
  display: none;
}
.p-blog-main {
  /* Tag Cloud */
}
.p-blog-main .tagcloud a {
  background-color: #f4f5f6;
  border-radius: 3px;
  display: inline-block;
  font-size: 90% !important;
  margin-bottom: 4px;
  padding: 3px 10px;
  text-decoration: none;
  white-space: nowrap;
}
.p-blog-main .tagcloud a:hover {
  color: #111;
}
.p-blog-main {
  /* Calendar */
}
.p-blog-main .widget_calendar table {
  font-size: 95%;
  line-height: 36px;
  margin-bottom: 0;
  max-width: 360px;
}
.p-blog-main .widget_calendar caption {
  text-transform: uppercase;
}
.p-blog-main .widget_calendar td,
.p-blog-main .widget_calendar th {
  padding: 0;
  text-align: center;
}
.p-blog-main .widget_calendar thead th {
  padding: 2px 0;
}
.p-blog-main .widget_calendar tbody td a {
  background-color: #f4f5f6;
  display: block;
  text-decoration: underline;
}
.p-blog-main .widget_calendar tbody td a:hover {
  color: #111;
}
.p-blog-main .widget_calendar tfoot td {
  border: none;
  padding-top: 10px;
}
.p-blog-main .widget_calendar tfoot td a {
  text-decoration: underline;
  text-transform: uppercase;
}
.p-blog-main .widget_calendar tfoot td#prev {
  text-align: left;
}
.p-blog-main .widget_calendar tfoot td#next {
  text-align: right;
}
.p-blog-main {
  /* Menu */
}
.p-blog-main .widget_nav_menu li a {
  border-bottom: none;
}
.p-blog-main .widget_nav_menu .current_page_item > a,
.p-blog-main .widget_nav_menu .current-menu-item > a {
  color: #111;
  font-weight: 700;
}
.p-blog-main {
  /* RSS */
}
.p-blog-main .widget_rss li {
  margin-bottom: 2em;
}
.p-blog-main .widget_rss li a {
  border-bottom: solid 1px #ddd;
}
.p-blog-main .widget_rss .rss-date,
.p-blog-main .widget_rss .rssSummary,
.p-blog-main .widget_rss cite {
  color: #999;
  font-size: 90%;
}
.p-blog-main .widget_rss .rss-date {
  display: block;
  margin-bottom: 6px;
  margin-top: 6px;
  text-transform: uppercase;
}
.p-blog-main .widget_rss .rssSummary {
  margin-bottom: 6px;
}
.p-blog-main {
  /* BusinessPress Recent Posts */
}
.p-blog-main .widget_businesspress_recent_posts li {
  margin-bottom: 1.5em;
}
.p-blog-main .widget_businesspress_recent_posts li a {
  border-bottom: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.p-blog-main .recent-posts-thumbnail {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-bottom: 4px;
  margin-right: 16px;
  margin-top: 4px;
  width: 80px;
}
.p-blog-main .recent-posts-text .post-date {
  color: #999;
  display: block;
  font-size: 90%;
  margin-top: 6px;
  text-transform: uppercase;
}
.p-blog-main {
  /* BusinessPress Featured Posts */
}
.p-blog-main .featured-widget-entry {
  background-color: #333;
  background-position: center;
  background-size: cover;
  display: block;
  height: 180px;
  margin-bottom: 15px;
}
.p-blog-main .featured-widget-entry-overlay {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: rgba(0, 0, 0, 0.4);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  width: 100%;
}
.p-blog-main .featured-widget-entry-content {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}
.p-blog-main .featured-widget-entry-title {
  color: rgba(255, 255, 255, 0.9);
  font-size: 1.5rem;
  margin: 0;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
}
.p-blog-main .featured-widget-entry-date {
  color: rgba(255, 255, 255, 0.8);
  font-size: 85%;
  margin-top: 12px;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
}
.p-blog-main a.featured-widget-entry {
  text-decoration: none;
}
.p-blog-main a.featured-widget-entry .featured-title {
  -webkit-transition: 0.15s;
  transition: 0.15s;
}
.p-blog-main a.featured-widget-entry:hover .featured-title {
  color: #fff;
}
@media screen and (min-width: 601px) and (max-width: 979px) {
  .p-blog-main .widget_businesspress_featured_posts {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .p-blog-main .widget_businesspress_featured_posts .widget-title {
    width: 100%;
  }
  .p-blog-main .featured-widget-entry {
    margin-bottom: 4%;
    margin-right: 4%;
    width: 48%;
  }
  .p-blog-main .featured-widget-entry:nth-child(odd) {
    margin-left: 0;
    margin-right: 0;
  }
}
@media screen and (min-width: 782px) {
  .p-blog-main .featured-widget-entry {
    margin-bottom: 15px;
  }
  .p-blog-main .featured-widget-entry-title {
    font-size: 1.25rem;
  }
}
.p-blog-main {
  /* BusinessPress Profile */
}
.p-blog-main .profilewidget-wrapper {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 25px;
}
.p-blog-main .profilewidget-profile {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-right: 20px;
  width: 75px;
}
.p-blog-main .profilewidget-profile img {
  border-radius: 50%;
  width: 75px;
}
.p-blog-main .profilewidget-name {
  font-size: 110%;
}
.p-blog-main .profilewidget-name strong {
  color: #333;
  font-weight: 600;
}
.p-blog-main .profilewidget-link {
  margin-top: 4px;
}
.p-blog-main .profilewidget-link.menu a {
  text-decoration: none;
}
.p-blog-main {
  /* Footer
  ------------------------------------------------------------ */
  /* Footer */
}
.p-blog-main .site-bottom {
  background-color: #f4f5f6;
  color: #aaa;
  text-align: center;
}
.p-blog-main .site-bottom a {
  color: #888;
  text-decoration: none;
}
.p-blog-main .site-bottom a:hover,
.p-blog-main .site-bottom .current-menu-item > a {
  color: #111;
}
.p-blog-main .footer-menu {
  line-height: 32px;
}
.p-blog-main .footer-navigation ul {
  font-size: 85%;
  list-style: none;
  margin: 0 0 30px 0;
}
.p-blog-main .footer-navigation li {
  display: inline-block;
  margin-right: 18px;
}
.p-blog-main .footer-navigation li:last-child {
  margin-right: 0;
}
.p-blog-main .footer-social-link {
  margin-bottom: 2rem;
}
.p-blog-main .site-info {
  font-size: 85%;
}
.p-blog-main .site-copyright,
.p-blog-main .site-credit {
  margin-bottom: 1rem;
}
.p-blog-main .site-credit a {
  display: block;
}
.p-blog-main .site-credit a:first-child {
  margin-bottom: 6px;
}
.p-blog-main .site-credit-sep {
  color: #ccc;
  display: none;
}
@media screen and (min-width: 601px) {
  .p-blog-main .site-credit a,
  .p-blog-main .site-credit-sep {
    display: inline-block;
    margin-bottom: 0;
  }
}
@media screen and (min-width: 782px) {
  .p-blog-main .site-info {
    clear: right;
    float: right;
    margin-top: 3px;
    text-align: right;
  }
}
.p-blog-main {
  /* Back to Top */
}
.p-blog-main .back-to-top {
  background: rgba(0, 0, 0, 0.1);
  border-radius: 8px;
  bottom: 20px;
  cursor: pointer;
  display: none;
  height: 45px;
  position: fixed;
  right: 20px;
  width: 45px;
  z-index: 2;
  -webkit-transition: 0.15s ease-in-out;
  transition: 0.15s ease-in-out;
}
.p-blog-main .back-to-top:hover {
  background: #111;
}
.p-blog-main .back-to-top:before {
  color: #999;
  content: "\f106";
  display: block;
  font: normal 22px/42px FontAwesome;
  text-align: center;
}
.p-blog-main {
  /* Plugins
  ------------------------------------------------------------ */
  /* Jetpack Widgets */
}
.p-blog-main .widget_top-posts ul {
  counter-reset: number;
}
.p-blog-main .widget_top-posts li {
  padding-left: 35px;
  padding-top: 12px;
  position: relative;
}
.p-blog-main .widget_top-posts li:before {
  background-color: #f0f0f0;
  border-radius: 3px;
  color: #444;
  content: counter(number) !important;
  counter-increment: number;
  font-weight: 400;
  height: 23px;
  left: 0;
  line-height: 23px;
  position: absolute;
  text-align: center;
  text-shadow: 1px 1px 0 #fff;
  top: 13px;
  width: 23px;
}
.p-blog-main .widgets-list-layout li {
  margin-bottom: 0 !important;
}
.p-blog-main .widgets-list-layout .widgets-list-layout-blavatar {
  margin-right: 12px;
  width: 40px !important;
}
.p-blog-main .widgets-list-layout-links {
  float: none !important;
  overflow: hidden;
  width: auto !important;
}
.p-blog-main #subscribe-email input {
  margin-top: 0;
  max-width: 320px;
  padding: 0.6em !important;
  width: 100% !important;
}
.p-blog-main .jetpack-display-remote-posts h4,
.p-blog-main .jetpack-display-remote-posts p {
  font-size: 100% !important;
}
.p-blog-main .jetpack-display-remote-posts h4 {
  margin-top: 25px !important;
}
.p-blog-main .widget_jetpack_display_posts_widget img {
  margin: 12px 0;
}
.p-blog-main .widget-grofile {
  text-align: center;
}
.p-blog-main .widget-grofile p,
.p-blog-main .widget-grofile h4,
.p-blog-main .widget-grofile ul {
  text-align: left;
}
.p-blog-main .widget-grofile h4 {
  font-size: 100%;
  font-weight: 600;
}
.p-blog-main .grofile-meta h4 {
  font-size: 110%;
  text-align: center;
}
.p-blog-main .grofile-thumbnail {
  border-radius: 50%;
  max-width: 200px !important;
}
.p-blog-main ul.grofile-urls {
  margin-bottom: 1.8em;
  margin-top: 0;
}
.p-blog-main {
  /* Jetpack Sharing */
}
.p-blog-main .sharedaddy {
  margin-top: 3rem;
}
.p-blog-main {
  /* Jetpack Related Posts */
}
.p-blog-main #jp-relatedposts {
  margin-bottom: 2rem !important;
  margin-top: 0 !important;
  padding-top: 2rem !important;
}
.p-blog-main #jp-relatedposts h3.jp-relatedposts-headline {
  color: #333;
  display: block !important;
  font-size: 1.2rem !important;
  float: none !important;
  letter-spacing: 0.05em;
  margin-bottom: 2rem !important;
  text-align: center;
  text-transform: uppercase;
}
.p-blog-main #jp-relatedposts h3.jp-relatedposts-headline em:before {
  content: none !important;
}
.p-blog-main #jp-relatedposts .jp-relatedposts-items .jp-relatedposts-post {
  margin-bottom: 2rem !important;
  -webkit-transition: opacity 0.2s ease-in-out;
  transition: opacity 0.2s ease-in-out;
}
.p-blog-main #jp-relatedposts .jp-relatedposts-items-visual .jp-relatedposts-post {
  opacity: 1 !important;
}
.p-blog-main #jp-relatedposts .jp-relatedposts-items-visual .jp-relatedposts-post img.jp-relatedposts-post-img {
  margin-bottom: 1rem;
}
.p-blog-main #jp-relatedposts .jp-relatedposts-items-visual h4.jp-relatedposts-post-title {
  font-size: 15px !important;
  line-height: 1.8 !important;
  margin-bottom: 12px !important;
}
.p-blog-main #jp-relatedposts .jp-relatedposts-items .jp-relatedposts-post .jp-relatedposts-post-title a {
  color: inherit !important;
  font-weight: 500 !important;
  text-decoration: none !important;
}
.p-blog-main #jp-relatedposts .jp-relatedposts-items .jp-relatedposts-post:hover .jp-relatedposts-post-title a,
.p-blog-main #jp-relatedposts .jp-relatedposts-items .jp-relatedposts-post .jp-relatedposts-post-title a:hover {
  color: #111;
  text-decoration: none !important;
}
.p-blog-main #jp-relatedposts .jp-relatedposts-items p {
  color: #999;
  font-size: 85% !important;
  margin-bottom: 8px !important;
}
.p-blog-main #jp-relatedposts .jp-relatedposts-items .jp-relatedposts-post .jp-relatedposts-post-context, .p-blog-main #jp-relatedposts .jp-relatedposts-items .jp-relatedposts-post .jp-relatedposts-post-date {
  opacity: 1 !important;
}
@media only screen and (max-width: 400px) {
  .p-blog-main #jp-relatedposts .jp-relatedposts-items .jp-relatedposts-post {
    width: 100% !important;
    clear: both !important;
  }
}
@media only screen and (max-width: 640px) {
  .p-blog-main #jp-relatedposts .jp-relatedposts-items-visual {
    margin-right: -20px !important;
  }
}
.p-blog-main {
  /* Jetpack Comments */
}
.p-blog-main .comment-form {
  margin-bottom: 2rem;
}
.p-blog-main .comment-subscription-form {
  margin-bottom: 0.6em;
}
.p-blog-main {
  /* Jetpack Stats */
}
.p-blog-main #wpstats {
  display: none;
}
.p-blog-main {
  /* Contact Form 7 */
}
.p-blog-main div.wpcf7-response-output {
  font-size: 95%;
  margin: 2em 0 1em;
  padding: 0.8em 1em;
  border: 2px solid #cf2e2e;
}
.p-blog-main div.wpcf7-mail-sent-ok {
  border: 2px solid #00d084;
}
.p-blog-main div.wpcf7-mail-sent-ng,
.p-blog-main div.wpcf7-aborted {
  border: 2px solid #cf2e2e;
}
.p-blog-main div.wpcf7-spam-blocked {
  border: 2px solid #ff6900;
}
.p-blog-main div.wpcf7-validation-errors,
.p-blog-main div.wpcf7-acceptance-missing {
  border: 2px solid #fcb900;
}
.p-blog-main span.wpcf7-not-valid-tip {
  color: #cf2e2e;
}
.p-blog-main {
  /* Disqus */
}
.p-blog-main #disqus_thread {
  margin-bottom: 60px;
}
.p-blog-main {
  /* Print
  ------------------------------------------------------------ */
}
@media print {
  .p-blog-main html, .p-blog-main body {
    background: none !important;
    color: #000 !important;
    font-size: 10pt !important;
  }
  .p-blog-main .main-header-clone,
  .p-blog-main .drawer-hamburger,
  .p-blog-main .featured-post,
  .p-blog-main .widget,
  .p-blog-main .comments-area .comment-edit-link,
  .p-blog-main .comments-area .reply,
  .p-blog-main .comment-respond,
  .p-blog-main .navigation,
  .p-blog-main .sidebar-area,
  .p-blog-main .footer-widget-area,
  .p-blog-main .footer-menu,
  .p-blog-main .back-to-top {
    display: none !important;
  }
  .p-blog-main .main-header-content,
  .p-blog-main .site-content {
    max-width: none;
    padding-left: 0;
    padding-right: 0;
  }
  .p-blog-main .site-bottom,
  .p-blog-main .site-bottom a {
    color: #000;
  }
}

/* -----------------------------------------------------------------------------
   #Utility
   -------------------------------------------------------------------------- */
.u-d-pc {
  display: none !important;
}
@media screen and (min-width: 980px) {
  .u-d-pc {
    display: block !important;
  }
}

.u-d-sp {
  display: block !important;
}
@media screen and (min-width: 980px) {
  .u-d-sp {
    display: none !important;
  }
}

.u-mt-sm, .c-hd-e .e-hdg + .e-read {
  margin-top: calc(var(--spacer) * 2.25);
}

.u-mt-md, .p-blog-sublist.sp-menu {
  margin-top: calc(var(--spacer) * 3.5);
}

.u-mt-lg {
  margin-top: calc(var(--spacer) * 5);
}

.u-mt-xl {
  margin-top: calc(var(--spacer) * 8);
}

.u-mt-xxl {
  margin-top: calc(var(--spacer) * 10);
}

.u-mb-xs {
  margin-bottom: calc(var(--spacer) * 1.5);
}

.u-mb-sm {
  margin-bottom: calc(var(--spacer) * 2.25);
}

.u-pt-xxl {
  padding-top: calc(var(--spacer) * 10);
}

.u-pb-xxl {
  padding-bottom: calc(var(--spacer) * 10);
}

.u-pb-md {
  padding-bottom: calc(var(--spacer) * 3.5);
}

.u-fs-lg {
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-size: clamp(calc(20 * 1px), calc(calc((40 - 20) / (2160 - 600)) * 100vw + calc(20 - calc((40 - 20) / (2160 - 600)) * 600) * 1px), calc(40 * 1px));
}

.u-fs-md, .c-hd-b, .c-list-b li, .p-blog-ttl_hdg, .p-blog-prev-next_inner .next p:after, .p-blog-prev-next_inner .prev p:before, .p-oss-b .hdg, .p-att-b, .p-flow .hdg, .p-blog-main h2 {
  line-height: 1.7;
  letter-spacing: 0.05em;
  font-size: clamp(calc(18 * 1px), calc(calc((32 - 18) / (2160 - 600)) * 100vw + calc(18 - calc((32 - 18) / (2160 - 600)) * 600) * 1px), calc(32 * 1px));
}

.u-fs-re, .c-hd-c, .c-hd-d, .c-hd-e .e-read, .c-table-a .hdg, .c-table-d .hdg, input[type=submit], .p-top-s-menu .s-m-item-b h3, .p-oss-illust-hdg, .p-oss-c .c-item, .p-oss-f, .p-blog-main h3, .p-blog-main h4 {
  line-height: 1.8;
  letter-spacing: 0.05em;
  font-size: clamp(calc(16 * 1px), calc(calc((25 - 16) / (2160 - 600)) * 100vw + calc(16 - calc((25 - 16) / (2160 - 600)) * 600) * 1px), calc(25 * 1px));
}

.u-fs-n, body, input[type=text], .p-postal-code, input[type=email], textarea, .wpcf7-text {
  line-height: 2.2;
  letter-spacing: 0.05em;
  font-size: clamp(calc(15 * 1px), calc(calc((20 - 15) / (2160 - 600)) * 100vw + calc(15 - calc((20 - 15) / (2160 - 600)) * 600) * 1px), calc(20 * 1px));
}

.u-fs-n-b, .l-f-content .fc-contact .f-line, .c-table-a, .c-table-b, .c-table-c, .c-table-d, .c-table-e, .p-contact-form, .p-top-s-menu .s-m-item-b .text, .p-blog-list-w .p-blog-side .p-search-box input[type=text], .p-oss-a .oss-text, .p-oss-b, .p-rae-a, .p-rea-relation, .p-flow, .p-gyosei-a {
  line-height: 1.8;
  letter-spacing: 0.05em;
  font-size: clamp(calc(15 * 1px), calc(calc((20 - 15) / (2160 - 600)) * 100vw + calc(15 - calc((20 - 15) / (2160 - 600)) * 600) * 1px), calc(20 * 1px));
}

.u-fs-sm, .l-f-content .fc-contact .ttl, .l-glonavi-f .l-g-menu_sub, .wp-pagenavi span,
.wp-pagenavi a, .c-lo-a-innr .time, .c-list-a li:after, .c-tag-a a, .wpcf7-not-valid-tip, .p-blog-list-w .p-blog-side .p-search-box button[type=submit], .p-blog-ttl_time, .p-blog-writer_name, .p-writer-list_pt, .p-blog-prev-next_inner p {
  line-height: 1.7;
  letter-spacing: 0.05em;
  font-size: clamp(calc(13 * 1px), calc(calc((16 - 13) / (2160 - 600)) * 100vw + calc(13 - calc((16 - 13) / (2160 - 600)) * 600) * 1px), calc(16 * 1px));
}

.u-fs-xs, figcaption, .l-breadcrumb .current-item, .c-hd-icon-w .a-sub-b, .c-ovf-a .info, .c-image-b, .p-blog-archive-list ul .count {
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-size: clamp(calc(11 * 1px), calc(calc((13 - 11) / (2160 - 600)) * 100vw + calc(11 - calc((13 - 11) / (2160 - 600)) * 600) * 1px), calc(13 * 1px));
}

.u-ff-a, .l-header .h-contact, .l-main-image-w h1, .mi-sub .name, .l-title-heading, .c-hd-a .a-hdg, .e-hdg, input[type=submit], .p-top-s-menu .s-m-item h2, .p-top-s-menu .s-m-item-b h3, .p-top-service-list .list-item h3, .p-blog-ttl_hdg {
  font-family: "Noto Serif JP", serif;
}

.u-ff-b, .l-header .tel, .l-main-image-w .mi-hdg .mm-hdg, .l-f-content .fc-contact .ttl, .l-f-content .fc-contact .number, .c-hd-a .a-sub, .c-hd-num-w .num, .c-hd-e .e-sub, .p-top-s-menu .s-m-item-b .image .c-hd-num-w .num, .p-att-b .b-num {
  font-family: "Lustria", serif;
}

.u-ff-c, .l-title-side, .l-title-column .l-title-sub, .p-top-service:before, .p-oss-a .oss-circle .c-inner .num, .p-oss-a .oss-text .hdg, .p-oss-b .hdg .num, .p-flow .num p {
  font-family: "Forum", serif;
}

.u-fw-a, .mi-sub .name, .l-contact-sp .btn .text, .c-hd-b, .c-hd-d, .c-hd-f, .c-hd-g, .c-table-a .hdg, .c-table-d .hdg, .p-oss-illust-hdg, .p-oss-illust-hdg-b, .p-oss-a .oss-circle .c-inner .hdg, .p-oss-b .hdg, .p-oss-c .c-item, .p-flow .hdg, .p-blog-main h2 {
  font-weight: 600;
}
@media screen and (min-width: 600px) {
  .u-fw-a, .mi-sub .name, .l-contact-sp .btn .text, .c-hd-b, .c-hd-d, .c-hd-f, .c-hd-g, .c-table-a .hdg, .c-table-d .hdg, .p-oss-illust-hdg, .p-oss-illust-hdg-b, .p-oss-a .oss-circle .c-inner .hdg, .p-oss-b .hdg, .p-oss-c .c-item, .p-flow .hdg, .p-blog-main h2 {
    font-weight: 500;
  }
}

.u-fw-b, .l-main-image-w h1, .l-title-heading, .c-hd-a .a-hdg, .c-hd-c, .e-hdg, .p-top-s-menu .s-m-item h2, .p-top-s-menu .s-m-item-b h3, .p-top-service-list .list-item h3, .p-blog-ttl_hdg, .p-att .hdg {
  font-weight: 700;
}
@media screen and (min-width: 600px) {
  .u-fw-b, .l-main-image-w h1, .l-title-heading, .c-hd-a .a-hdg, .c-hd-c, .e-hdg, .p-top-s-menu .s-m-item h2, .p-top-s-menu .s-m-item-b h3, .p-top-service-list .list-item h3, .p-blog-ttl_hdg, .p-att .hdg {
    font-weight: 600;
  }
}

.u-ta-c {
  text-align: center;
}

.u-ta-r {
  text-align: right;
}

.u-clr-a {
  color: #014471;
}

@-webkit-keyframes effect1 {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
}

@keyframes effect1 {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
}
@-webkit-keyframes effect2 {
  from {
    background-size: 0% 1.1em;
  }
  to {
    background-size: 100% 1.1em;
  }
}
@keyframes effect2 {
  from {
    background-size: 0% 1.1em;
  }
  to {
    background-size: 100% 1.1em;
  }
}
@-webkit-keyframes effect3 {
  0% {
    width: 100%;
  }
  100% {
    width: 0%;
  }
}
@keyframes effect3 {
  0% {
    width: 100%;
  }
  100% {
    width: 0%;
  }
}
@-webkit-keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fadeout-b {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fadeout-b {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes effect7 {
  0% {
    opacity: 0;
    -webkit-transform: translateX(30px);
            transform: translateX(30px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
  }
}
@keyframes effect7 {
  0% {
    opacity: 0;
    -webkit-transform: translateX(30px);
            transform: translateX(30px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
  }
}
.step-item {
  opacity: 0;
}

.u-inview1 {
  opacity: 0;
}

.u-inview2 {
  position: relative;
  display: inline;
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(228, 0, 0, 0.18)), to(rgba(228, 0, 0, 0.18)));
  background-image: linear-gradient(rgba(228, 0, 0, 0.18), rgba(228, 0, 0, 0.18));
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 0% 1.1em;
  mix-blend-mode: multiply;
}
.u-inview2.type-b {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(228, 0, 0, 0.6)), to(rgba(228, 0, 0, 0.6)));
  background-image: linear-gradient(rgba(228, 0, 0, 0.6), rgba(228, 0, 0, 0.6));
}

.animation-a, .u-inview4.iv4-effect:after, .iv1-effect {
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}

.iv1-effect {
  -webkit-animation-name: effect1;
          animation-name: effect1;
  -webkit-animation-timing-function: cubic-bezier(0, 0.5, 0.5, 1);
          animation-timing-function: cubic-bezier(0, 0.5, 0.5, 1);
}

.iv2-effect {
  -webkit-animation: effect2 0.8s cubic-bezier(0, 0.5, 0.5, 1) forwards;
          animation: effect2 0.8s cubic-bezier(0, 0.5, 0.5, 1) forwards;
}

.u-inview4 {
  position: relative;
}
.u-inview4:after {
  position: absolute;
  right: 0;
  top: 0;
  content: "";
  width: 100%;
  height: 100%;
  background-color: #000;
  z-index: 8;
}
.u-inview4.iv4-effect:after {
  -webkit-animation-name: effect3;
          animation-name: effect3;
  -webkit-animation-timing-function: cubic-bezier(0, 0.5, 0.5, 1);
          animation-timing-function: cubic-bezier(0, 0.5, 0.5, 1);
}