@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Noto+Sans+JP:wght@100..900&display=swap');


body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, button, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}

li{
  list-style-type:none;
  margin:0;
  padding:0;
}

html {
  font-size: 62.5%;
}

body{
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 1.2rem;
  line-height: 1.3;
  font-weight:normal;
  color:#000;
  background:#EEF7FF;
  min-width: 1054px;
  @media screen and (max-width: 800px){
    font-size: 1.4rem;
    line-height: 1.7;
    min-width: initial;
    padding-bottom: 67px;
  }
}

img{
  vertical-align: bottom;
  max-width: 100%;
  @media screen and (max-width: 800px){
    width :auto;
  }
}
strong {
  font-weight: 700
}
span{
  /* color:#FF3300; */
}

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

:focus {
  outline: none;
}


a {
  color: #666666;
  transition: all .3s;
  text-decoration: none;
  &:hover {
    text-decoration: underline;
  }
}


.wrapper {
  width:980px;
  margin:0px auto 0px auto;
  clear:both;
  @media screen and (max-width: 800px){
    width: 100%;
  }
}


/*----l-header----*/
.l-header {
  background: #fff;

  @media screen and (max-width: 800px){
    background: #F2F1F1;
    position: sticky;
    top: 0;
    left: 0;
    z-index: 3;
  }
  .header-cont {
    padding: 0 15px;
    .header-cont-inner {
      max-width: 1024px;
      height: 112px;
      margin: 0 auto;
      display: flex;
      justify-content: space-between;
      align-items: center;
    }

    .header-logo {
      width: 312px;
      position: relative;
      overflow: hidden;
      h1 {
        position: absolute;
        top: 0;
        left: 0;
        font-size: 1em;
        line-height: 1.2;
        z-index: -1;
      }
      a {
        display: block;
        transition: none;
      }
    }
    .header-btn {
      display: flex;
      gap: 15px;
    }

    @media screen and (max-width: 800px){
      .header-cont-inner {
        height: 70px;
        gap: 8px;
      }

      .header-logo {
        width: 186px;
        a {
          background: #F2F1F1;
        }
      }
      .header-btn {
        display: flex;
        gap: 8px;
        padding-right: 44px;

        & > a {
          width: 43px;
        }
      }
    }
  }

  .header-menu {
    background: linear-gradient(#eee 0%, #fbf9f9 29.28%, #e6e5e5 75.32%, #cbcbcb 100%);
    padding: 0 15px;

    ul {
      max-width: 1024px;
      margin: 0 auto;
      display: flex;
      justify-content: space-around;
      
      a {
        color: #000;
        height: 56px;
        padding: 0 1.5em;
        display: flex;
        align-items: center;
        font-size: 1.4rem;
        font-weight: 500;
        position: relative;
        text-decoration: none !important;

        &::after {
          content: '';
          width: 0px;
          height: 3px;
          background: #38A1FF;
          position: absolute;
          left: 0;
          bottom: 4px;
          transition: all .3s;
        }

        &.is-active::after,
        &:hover::after {
          width: 100%;
        }
      }
    }
  }

  .header-menu_sp {
    
    .menu-btn {
      background: url(../img/header-menu.png) no-repeat center / contain;
      content: "";
      display: block;
      width: 43px;
      height: 43px;
      position: absolute;
      top: 14px;
      right: 11px;
      z-index: 3;

      &.is-open {
        background-image: url(../img/header-menu-close.png);
      }
    }
    

    .l-drawer {
      display: none;
      background: rgba(24,112,186,.9);
      position: fixed;
      top: 0px;
      right:0;
      padding: 60px 0 0;
      z-index: 2;
      height: 100dvh;
      box-sizing: border-box;

      .l-drawer__inner {
        box-sizing: border-box;
        padding:  0 25px 35px 25px;
        height: calc(100dvh - 60px);
        overflow: auto;
      }
    
      .drawer-menu {
        a {
          color:#fff;
          display: block;
          padding: .5em 0;
          font-size: 1.6rem;
          white-space: nowrap;
        }

        .submenu {
          a {
            font-size: 1.4rem;
            &::before {
              content: '－ ';
              padding-left: 1em;
            }
          }

        }
      }

      .drawer-menu-other {
        display: flex;
        justify-content: center;
        margin: 40px 0 0;
        gap: 2em;
        font-size: 1.2rem;
        a {
          color: #fff;
          white-space: nowrap;
        }
      }
    }

    .drawer-overlay {
      display: none;
      position: fixed;
      z-index: 1;
      top: 0;
      left: 0;
      width: 100dvw;
      height: 100dvh;
      background: rgba(0,0,0,.3);
    }

  }
}

/*----l-content----*/
.l-content {
  overflow: hidden;
  padding: 0 15px;

  .l-content__inner {
    max-width: 960px;
    margin: 0 auto;
    background: #fff;
    box-shadow: 0 0 16px rgba(0,0,0,.1);
    display: flex;
    justify-content: space-between;
    padding: 32px 32px 64px;
  }
  .l-main {
    width: 717px;
    flex: 0 0 auto;
  }
  .l-side{
    width: 202px;
    flex: 0 0 auto;
  }

  @media screen and (max-width: 800px){
    padding: 0;
    .l-content__inner {
      padding: 15px 15px 40px;
      box-shadow: none;
      flex-direction: column;
    }
    .l-main {
      width: 100%;
    }
    .l-side{
      width: 100%;
      margin: 30px 0 0;
    }
  }
}

/*----l-side----*/
.l-side {
  .side-bnr {
    a {
      display: block;
    }
    img {
      margin: 0 0 10px;
    }
    @media screen and (max-width: 800px){
      &.is-2col {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        gap: 10px;

        img {
          margin: 0;
        }

        & > * {
          width: calc((100% - 10px) / 2);
        }

      }
    }
  }

  .side-menu {
    margin: 10px 0 0;

    .side-menu-tit {
      background: #4F90CA;
      display: flex;
      height: 30px;
      align-items: center;
      color: #fff;
      font-weight: 400;
      font-size: 1.4rem;
      padding: 0 0 0 10px;
      .fukidashi {
        height: 30px;
        width: 38px;
        position: relative;
        flex: 0 0 auto;

        img {
          position: absolute;
          z-index: 1;
          width: 54px;
          bottom: 3px;
          left: -16px;
          max-width: initial;
        }
      }
      
      @media screen and (max-width: 800px){
        height: 35px;
        font-size: 1.6rem;
        .fukidashi {
          height: 35px;
          width: 44px;

          img {
            width: 54px;
            bottom: 5px;
            left: -10px;
          }
        }
      }
    }

    .side-menu-list {
      border: 1px solid #BDD5E8;
      background: #fff;
      padding: 5px 10px;
      a {
        display: flex;
        padding: 8px 3px;
        align-items: center;
        border-bottom: 1px dotted #999;
        color: #000;
        &::before {
          content: '';
          width: 11px;
          height: 11px;
          background: url(../img/side_mark_b.png) no-repeat center / contain;
          margin: 0 7px 0 0;
          flex: 0 0 auto;
        }
        &:hover {
          text-decoration: none;
          background: #EEF7FF;
        }
      }
      li:last-of-type a {
        border: none;
      }

      @media screen and (max-width: 800px){
        padding: 8px 15px;
        a {
          padding: 4px 3px;
        }
      }
    }

    &.has-fukidashi {
      margin: 20px 0 0;
    }
    &.is-navy {
      .side-menu-tit {
        background: #0A4686;
      }
      .side-menu-list a::before {
        background-image: url(../img/side_mark_y.png);
      }
    }
    &.is-orange {
      .side-menu-tit {
        background: #F78005;
      }
    }

    .side-area {
      border: 1px solid #BDD5E8;
      background: #fff;
      padding: 8px;
      margin: 0 0 10px;

      .side-area-list {
        font-size: 1rem;
        color: #666;
        line-height: 1.5;
      }
      .side-area-img {
        margin: 8px auto;
      }
      
      .side-area-link {
        text-align: right;
        font-size: 1.1rem;
        color: #000;
        font-weight: 600;
      }

      @media screen and (max-width: 800px){
        .side-area-list {
          font-size: 1.2rem;
        }
        .side-area-img {
          width: 184px;
        }

      }
    }
  }

  .side-contact {
    border: 1px solid #4F90CA;
    background: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 10px 0;
  }
}


/*----l-footer----*/
.l-footer {
  background: #F4F4F4;
  border-top: 1px solid #DCDCDC;
  padding: 0 15px;
  font-size: 1.2rem;

  a {
    color: #000;
  }

  .footer-inner {
    margin: 0 auto;
    max-width: 1024px;
    padding: 40px 0 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    @media screen and (max-width: 800px){
      padding: 30px 0 20px;
      display: block;
    }
  }
  .footer-info {
    .footer-info-address {
      font-style: normal;
      line-height: 1.7;
      margin: 10px 0 0;
    }
    .footer-info-contact {
      max-width: 280px;
      margin: 40px 0 0;
      background: #fff;
      border-radius: 13px;
      padding: 20px;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 10px;
    }
    @media screen and (max-width: 800px){
      .footer-info-logo img {
        width: 275px;
      }
      .footer-info-contact {
        margin: 30px auto 15px;
      }
    }
  }
  .footer-menu {
    display: flex;
    gap: 70px;

    .footer-menu-item {
      a {
        display: block;
        padding: .8em 0;
      }

      .submenu {
        a::before {
          content: '－ ';
          padding-left: 1em;
        }
      }
    }

    @media screen and (max-width: 800px){
      display: block;
      .footer-menu-item {
        a {
          display: block;
        font-size: 1.4rem;
          padding: .5em 0;
        }
      }
    }
  }
  .footer-other {
    width: 100%;
    text-align: right;
    padding: 10px 0;
    a {
      margin: 0 0 0 2em;
    }
  }

}

.l-copyright {
  color: #fff;
  font-size: 1rem;
  padding: .6em 15px;
  text-align: center;
  background: #C1C1C1;
}

.l-fixed-cta {
  box-sizing: border-box;
  z-index: 2;
  background: rgba(13,116,192,.7);
  padding: 0 10px;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 67px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  img {
    max-height: 55px;
  }
}

/*----p-com----*/
.p-com__security{
  margin: 0 auto 60px;
  text-align: center;
  width: fit-content;

  .security-desc {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.4;
    margin: 0 0 1em;
  }

  .security-body {
    position: relative;
    overflow: hidden;
    margin: 0 0 30px;
    .security-txt {
      position: absolute;
      top: 0;
      left: 0;
    }
    .security-bnr {
      display: block;
      background: #fff;
      position: relative;
      z-index: 1;
    }
  
  }

  
  @media screen and (max-width: 800px){
    margin: 0 0 30px;
    .security-desc {
      font-size: 1.6rem;
    }
  }
}
.p-top .security-desc {
  display: none;
}

.p-com__flow {
  padding: 0 10px;
  .item {
    border: 1px solid #4F90CA;
    border-radius: 28px;
    background: #DCEFFF;
    box-sizing: border-box;
    padding: 30px 38px;
    display: flex;
    margin: 0 0 70px;
    position: relative;
    &::after {
      content: '';
      position: absolute;
      bottom: -45px;
      left: 50%;
      transform: translateX(-50%);
      height: calc(50px / 2);
      width: 50px;
      clip-path: polygon(0 0, 100% 0, 50% 100%);
      background: #9E9E9E;
    }
    &:last-of-type {
      margin: 0;
      &::after {
        display: none;
      }
    }
    .item-img {
      width: 110px;
      flex: 0 0 auto;
      margin: 0 20px 0 0;
    }
    .item-body {
      flex: 1;
    }
    .item-tit {
      border-bottom: 1px solid #4F90CA;
      padding-bottom: 8px;
      line-height: 1.4;
      font-size: 2rem;
      margin: 0 0 15px;
      width: fit-content;
    }

    .item-txt {
      font-size: 1.6rem;
      line-height: 1.5;
    }
  }

  @media screen and (max-width: 800px){
    padding: 0;
    .item {
      border-radius: 10px;
      padding: 10px 20px 15px;
      margin: 0 0 35px;
      flex-direction: column;
      &::after {
        bottom: -24px;
        height: calc(25px / 2);
        width: 25px;
      }
      &:last-of-type {
        margin: 0;
        &::after {
          display: none;
        }
      }
      .item-img {
        width: 55px;
        margin: 0 0 0 -5px;
      }

      .item-tit {
        font-size: 1.6rem;
        margin: -36px 0 15px 65px; 
      }

      .item-txt {
        font-size: 1.4rem;
      }
    }
  
  }
  
}

.p-com__area {
  margin: 0 0 60px;
  
  .area-tit {
    text-align: center;
    margin: 0 0 20px;
    img {
      width: 316px;
      margin: 0 0 10px;
    }
    .area-tit-main {
      font-size: 3.4rem;
      line-height: 1;
    }
  }
  .area-map {
    display: flex;
    flex-direction: column;
    .area-img {
      width: 490px;
      margin: 0 auto 30px;
      text-align: center;
      flex: 0 0 auto;
    }
    .area-list {
      .list-item {
        & + & {
          margin: 25px 0 0;
        }

        p {
          font-size: 1.6rem;
          line-height: 1.7;
        }
      }

    }
  }

  .area-link {
    margin: 30px 0 0;
    p {
      font-size: 1.6rem;
      margin: 0 0 10px;
      line-height: 1.5;
    }

    .link-list {
      display: flex;
      gap: 10px;
      a {
        background: #0A4686;
        border-radius: 10px;
        width: calc((100% - 40px) / 5);
        color: #fff;
        font-size: 1.4rem;
        text-align: center;
        padding: 8px 0;
        span {
          display: inline-block;
          padding: 0 1em;
        }

        &:hover {
          text-decoration: none;
          opacity: .8;
        }
      }
    }
  }

  @media screen and (max-width: 800px){
    margin: 0 0 30px;
    
    .area-tit {
      text-align: center;
      img {
        width: 250px;
        margin: 0 0 5px;
      }
      .area-tit-main {
        font-size: 2.6rem;
      }
    }
    .area-map {
      .area-img {
        width: 100%;
        margin: 0 auto 20px;
      }
      .area-list {
        .list-item {
          & + & {
            margin: 15px 0 0;
          }

          p {
            font-size: 1.4rem;
          }
        }
      }
    }

    .area-link {
      margin: 30px 0 0;
      p {
        font-size: 1.4rem;
      }

      .link-list {
        flex-wrap: wrap;
        justify-content: center;
        a {
          width: calc((100% - 20px) / 3);
          line-height: 1.4;
          font-size: 1.2rem;
        }
      }
    }
  }
}

.p-com__cta {
  width: fit-content;
  margin: 0 auto;
  
  .cta-sp {
    background: #167CD5;
    padding: 20px 0 0;

    .cta-sp-txt {
      display: block;
      margin: 0 auto;
      width: 276px;
    }
    .cta-sp-btn {
      margin: 0 auto;
      width: fit-content;
      padding: 0 126px 10px 25px;
      min-height: 114px;
      background: url(../img/com-bnr-cta_sp_bg.png) no-repeat right bottom / 116px;
      a {
        display: block;
        width: fit-content;
        margin: 10px 0 0;

        img {
          width: 194px;
        }
      }
    }

  }
}

.p-com__case {
  .p-com__case__item {
    border-bottom: 1px solid #AFD8FD;
    /* @media screen and (max-width: 800px){
      &:first-of-type {
        border-top: 1px solid #AFD8FD;
      }
    } */

    .item {
      padding: 20px 35px 20px 10px;
      position: relative;
      display: flex;
      align-items: flex-start;
      gap: 15px;
      text-decoration: none;
      color: #000;

      @media screen and (max-width: 800px){
        padding: 15px;
        flex-direction: column;
      }

      &:hover {
        background: #EEF7FF;
        &::after {
          right: 0;
        }
        .item-img {
          img {
            /* transform: scale(1.1); */
            opacity: .8;
          }
        }
      }

      &::after {
        content: '';
        width: 12px;
        height: 22px;
        background: url(../img/ico-case-arrow.svg) no-repeat center / contain;
        position: absolute;
        z-index: 1;
        top: 50%;
        right: 8px;
        transform: translate(0,-50%);
        transition: all .3s;
        @media screen and (max-width: 800px){
          display: none;
        }

      }

      .item-img {
        border-radius: 10px;
        overflow: hidden;
        width: 180px;
        flex: 0 0 auto;
        img {
          transition: all .3s;
        }
        @media screen and (max-width: 800px){
          width: auto;
          max-width: calc(100% - 40px);
          margin: 0 auto;
        }
      }

      .item-cont {

      }

      .item-tit {
        display: flex;
        align-items: center;
        font-size: 1.6rem;
        line-height: 1.4;
        gap: 10px;
        margin: 0 0 10px;

        &::before {
          content: '';
          width: 30px;
          height: 24px;
          background: url(../img/ico-case.svg) no-repeat center / contain;
        }
      }

      .item-desc {
        font-size: 1.4rem;
        line-height: 1.5;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
        overflow: hidden;
      }

      .item-info {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin: 15px 0 0;

        .item-area {
          display: flex;
          gap: 5px;
          span {
            color: #fff;
            background: #4F90CA;
            border-radius: 30px;
            line-height: 1;
            padding: .5em .8em;
            font-size: 1.2rem;
          }
        }

        .item-date {
          color: #333;
          font-size: 1.2rem;
        }
      }
    }
  }
}


/*----p-top----*/
.p-top__section {
  padding: 60px 0;
  @media screen and (max-width: 800px){
    padding: 30px 0;
  }
  .p-top__section__inner {
    max-width: 980px;
    margin: 0 auto;
    padding: 0 15px;
  }
}


.p-top__tit {
  font-weight: bold;
  font-size: 3.4rem;
  line-height: 1.4;
  margin: 0 0 50px;
  text-align: center;

  span {
    display: block;
    color: #4F90CA;
    font-size: 2.2rem;
    line-height: 1;
    margin: 0 0 5px;  
  }

  @media screen and (max-width: 800px){
    font-size: 2.4rem;
    margin: 0 0 25px;
    span {
      font-size: 1.6rem;
    }
  }
}

.p-top__mv {
  background: #005FA5;
  .p-top__mv__inner {
    position: relative;
    overflow: hidden;
    max-width: 1280px;
    margin: 0 auto;
  }
  .p-top__mv__txt {
    position: absolute;
    top: 0;
    left: 0;
  }
  .p-top__mv__img {
    position: relative;
    z-index: 1;
  }
}

.p-top__cta {
  text-align: center;
  background: #fff;
  @media screen and (max-width: 800px){
    padding: 20px 0;
  }
}

.p-top__trouble {
  padding-top: 70px;
  background: #4F90CA;
  position: relative;
  &::after {
    content: '';
    position: absolute;
    top: calc(100% - 2px);
    left: 50%;
    transform: translateX(-50%);
    height: 30px;
    width: 100px;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    background: #4F90CA;
  }

  @media screen and (max-width: 800px){
    padding: 30px 0;

    &::after {
      height: 15px;
      width: 50px;;
    }
  }
  .trouble-tit {
    font-weight: bold;
    text-align: center;
    font-size: 3.2rem;
    color: #fff;

    span{
      background: linear-gradient(transparent 70%, #F78005 70%);

      strong {
        font-size: 4.5rem;
        display: inline-block;
      }
    }
    @media screen and (max-width: 800px){
      line-height: 1.4;
      font-size: 2.6rem;
      span{
        strong {
          font-size: 3.2rem;
        }
      }
    }

  }

  .trouble-list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 30px;
    margin: 50px 0 0;

    .item {
      background: #fff;
      color: #000;
      padding: 15px;
      border-radius: 10px;
      display: flex;
      flex-direction: column;
      max-width: 260px;
      text-align: center;
      text-decoration: none;
      & > * {
        transition: all .3s;
      }
      &:hover {
        & > * {
          opacity: .8;
        }
      }

      .item-tit {
        font-weight: bold;
        font-size: 2rem;
        text-align: center;
        line-height: 1.4;
        span {
          display: inline-block;
        }
      }
      .item-img {
        margin: 12px 0 15px;
      }
      .item-link {
        background: #F7B605;
        border-radius: 30px;
        padding: 10px;
        font-size: 1.4rem;
        font-weight: bold;
      }
    }

    @media screen and (max-width: 800px){
      margin: 25px 0 0;
      gap: 10px;
      .item {
        box-sizing: border-box;
        padding: 10px;
        max-width: calc((100% - 10px) / 2);

        .item-tit {
          font-size: 1.6rem;
        }
        .item-img {
        }
        .item-link {
          padding: 6px;
          font-size: 1.2rem;
        }
      }
    }
  }
}

.p-top__solve {
  background-color: #EEF7FF;
  text-align: center;
  font-weight: bold;
  text-align: center;
  font-size: 3.2rem;

  span{
    strong {
      font-size: 4.5rem;
      color: #F78005;
      display: inline-block;
    }
  }

  @media screen and (max-width: 800px){
    line-height: 1.4;
    font-size: 2.2rem;
    span {
      strong {
        font-size: 3rem;
      }
    }
  }
}

.p-top__reason {
  background: #fff;
  
  .reason-list {
    display: flex;
    flex-wrap: wrap;
    gap: 25px;

    .item {
      width: calc((100% - 25px) / 2);
      background: #fff;
      box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
      border-radius: 10px;
      
      .item-tit {
        color: #fff;
        font-weight: bold;
        text-align: center;
        background: #4F90CA;
        padding: .5em;
        font-size: 2rem;
        border-radius: 10px 10px 0 0;
      }
      
      .item-body {
        padding: 20px;
        display: flex;
        align-items: center;
        gap: 20px;
      }

      .item-img {
        width: 88px;
        flex: 0 0 auto;
      }
      .item-txt {
        font-size: 1.6rem;
        line-height: 1.5;
      }
    }

    @media screen and (max-width: 800px){
      gap: 20px;

      .item {
        width: 100%;
        
        .item-tit {
          font-size: 1.6rem;
        }
        
        .item-body {
          padding: 15px;
          gap: 15px;
        }

        .item-img {
          width: 64px;
        }
        .item-txt {
          font-size: 1.4rem;
        }
      }

    }
  }

  .p-com__security {
    margin: 60px auto 0;
    @media screen and (max-width: 800px){
      margin: 40px auto 0;
    }
  }
}

.p-top__service {

  .service-list {
    display: flex;
    flex-wrap: wrap;
    gap: 25px;

    .item {
      width: calc((100% - 50px) / 3);
      border: 2px solid #4F90CA;
      background: #fff;
      box-sizing: border-box;
      color: #000;
      padding: 0 0 30px;
      position: relative;

      &:hover {
        text-decoration: none;
        .item-img {
          img {
            opacity: .8;
          }
        }
      }

      .item-img {
        overflow: hidden;
        img {
          transition: all .3s;
          width: calc(100% + 2px);
        }
      }
      .item-body {
        padding: 15px 20px;
        
        &::after {
          content: '詳しく見る ≫';
          font-size: 1.3rem;
          color: #4F90CA;
          font-weight: bold;
          position: absolute;
          bottom: 15px;
          right: 20px;
        }

        .item-tit {
          font-weight: bold;
          font-size: 2rem;
          line-height: 1.4;
          text-align: center;
        }
        p {
          font-size: 1.4rem;
          line-height: 1.6;
          margin: 10px 0 0;
        }
      }
    }

    @media screen and (max-width: 800px){
      gap: 8px;
      .item {
        width: calc((100% - 8px) / 2);

        .item-body {
          padding: 8px;
          
          &::after {
            font-size: 1.1rem;
            bottom: 5px;
            right: 5px;
          }

          .item-tit {
            font-size: 1.4rem;
          }
          p {
            font-size: 1.2rem;
            margin: 3px 0 0;
          }
        }

      }
    }
  }
}

.p-top__case {
  background: #fff;
}

.p-top__review {
  .review-list {
    max-width: 720px;
    margin: 0 auto;
    .item {
      margin: 0 0 20px;
      padding: 0 0 20px;
      border-bottom: 1px dotted #707070;
      display: flex;
      align-items: flex-start;
      gap: 20px;
      &:last-of-type {
        margin: 0;
        padding: 0;
        border: none;
      }
      .item-img {
        width: 250px;
        border-radius: 10px;
        overflow: hidden;
        flex: 0 0 auto;
      }
      .item-tit {
        font-weight: bold;
        font-size: 1.8rem;
        line-height: 1.4;
      }
      .item-sub {
        font-weight: bold;
        font-size: 1.4rem;
        line-height: 1.4;
        margin: 10px 0 0;
      }
      .item-txt {
        font-size: 1.4rem;
        line-height: 1.6;
        margin: 10px 0 0;
      }
    }

    @media screen and (max-width: 800px){
      .item {
        margin: 0 0 15px;
        padding: 0 0 15px;
        gap: 15px;
        flex-direction: column;
        .item-img {
          width: 100%;
        }
        .item-tit {
          font-size: 1.6rem;
        }
        .item-sub {
          font-size: 1.2rem;
          margin: 10px 0 0;
        }
        .item-txt {
          font-size: 1.4rem;
          line-height: 1.6;
          margin: 10px 0 0;
        }
      }
    }
  }
}

.p-top__area {
  background: #fff;
  
  @media screen and (min-width: 801px){
    .area-map {
      margin: 50px 0 0;
      flex-direction: row;
      gap: 30px;
      align-items: flex-start;
      .area-img {
        order: 2;
        margin: 0;
      }
      .ara-list {
        order: 1;
      }
    }

    .area-link {
      .link-list {
        a {
          span {
            padding: 0;
          }
        }
      }
    }
  }
}

.p-top__flow {
  .flow-desc {
    font-weight: bold;
    font-size: 2.2rem;
    text-align: center;
    margin: 0 0 40px;
    strong {
      display: block;
      font-size: 3rem;
      color: #F78005;
      margin: 10px 0 0;
    }
    @media screen and (max-width: 800px){
      font-size: 1.6rem;
      margin: 0 0 20px;
      strong {
        font-size: 2.4rem;
        margin: 0;
      }
    }
  }
}

.p-top__news {
  background: #fff;

  .news-list {
    background: #EEF7FF;
    padding: 40px;
    margin: 0 0 60px;
    border-radius: 10px;

    .news-list__inner {
      max-height: 270px;
      overflow-y: auto;
    }

    .item {
      display: flex;
      font-size: 1.4rem;
      line-height: 1.5;
      padding: 15px 0;
      border-bottom: 1px dotted #707070;
      &:last-of-type {
        border: none;
      }
      .item-date {
        width: 8em;
        flex: 0 0 auto;
        margin: 0 10px;
      }
      .item-tit {
        font-size: 600;
      }
    }
  }

  @media screen and (max-width: 800px){
    .p-top__tit {
      padding-top: 20px;
    }
    .news-list {
      padding: 20px;
      margin: 0 0 30px;

      .news-list__inner {
        max-height: 200px;
      }

      .item {
        flex-wrap: wrap;
        .item-date {
          width: 100%;
          margin: 0 0 5px;
        }
      }
    }
  }
}


/*----p-sub----*/
.p-sub__mv {
  position: relative;
  overflow: hidden;
  margin: 0 0 30px;
  @media screen and (max-width: 800px){
    margin: 0 0 20px;
  }
  .p-sub__mv__txt {
    position: absolute;
    top: 0;
    left: 0;
    line-height: 1;
  }
  .p-sub__mv__img {
    position: relative;
    z-index: 1;
  }
  .p-sub__mv__desc {
    margin: 20px 0 0;
    font-size: 1.8rem;
    color: #0A4686;
    font-weight: bold;
    line-height: 1.6;
    text-align: center;
    @media screen and (max-width: 800px){
      font-size: 1.6rem;
      line-height: 1.5;
      text-align: left;
    }
  }
}

.p-sub__section {
  margin: 0 0 60px;
  @media screen and (max-width: 800px){
    margin: 0 0 35px;
  }
}

.p-sub__tit1 {
  box-sizing: border-box;
  min-height: 58px;
  display: flex;
  align-items: center;
  background: linear-gradient(#fff 0%, #efefef 100%);
  border: 1px solid #d9d9d9;
  padding: 10px 16px;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.4;
  margin: 0 0 30px;
  position: relative;
  &::before {
    content: '';
    width: 3px;
    height: calc(100% - 4px);
    background: #058DC7;
    position: absolute;
    top: 2px;
    left: 2px;
  }
  @media screen and (max-width: 800px){
    font-size: 1.4rem;
    min-height: 48px;
    margin: 0 0 20px;
  }
}

.p-sub__tit2 {
  font-weight: bold;
  font-size: 2.4rem;
  line-height: 1.4;
  color: #4F90CA;
  margin: 0 0 25px;

  span {
    display: flex;
    color: #0A4686;
    font-size: 1.3rem;
    line-height: 1;
    align-items: center;
    margin: 0 0 5px;
    gap: 8px;
    &::before {
      content: '';
      width: 40px;
      height: 1px;
      background: #0A4686;
      flex: 0 0 auto;
    }
  }

  @media screen and (max-width: 800px){
    font-size: 2rem;
    margin: 0 0 15px;
    span {
      font-size: 1.2rem;
      margin: 0 0 3px;
    }
  }
}

.p-sub__tit3 {
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.4;
  border-bottom: 2px solid #4F90CA;
  padding: 0 0 5px;
  margin: 0 0 15px;
  @media screen and (max-width: 800px){
    font-size: 1.6rem;
    margin: 0 0 10px;
    padding: 0 0 3px;
  }
  &.is-blue {
   color: #4F90CA; 
  }
}

.p-sub__pagelink {
  padding: 70px 20px;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;

  li {
    width: calc((100% - 20px) / 2);

    a {
      box-sizing: border-box;
      border: 2px solid #4F90CA;
      min-height: 60px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      font-size: 1.8rem;
      font-weight: 600;
      color: #4F90CA;
      text-decoration: none;
      padding: 10px 20px;

      &::after {
        content: '≫';
      }

      &:hover {
        background: #4F90CA;
        color: #fff;
      }
    }
  }

  @media screen and (max-width: 800px){
    padding: 40px 0;
    flex-direction: ;
    gap: 10px;

    li {
      width:100%;

      a {
        min-height: 50px;
        font-size: 1.6rem;
        padding: 10px 15px;
      }
    }
  }
}



/*p-service1*/
.p-service1__trouble {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;

  .item {
    width: calc((100% - 20px) / 3);
    border: 1px solid #4F90CA;
    border-radius: 10px;
    background: #DCEFFF;
    overflow: hidden;
    box-sizing: border-box;

    .item-tit {
      color: #fff;
      background: #4F90CA;
      font-size: 1.6rem;
      height: 35px;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .item-body {
      padding: 10px;
      line-height: 1.6;
    }

    .item-img {
      margin: 0 0 10px;
    }

    .item-txt {
      strong {
        font-weight: normal;
        color: #DF0000;
      }
    }
  }

  @media screen and (max-width: 800px){
    flex-direction: column;

    .item {
      width: 100%;
      border-radius: 6px;

      .item-body {
        overflow: hidden;
      }

      .item-img {
        width: 45%;
        float: right;
        margin: 0 0 8px 8px;
      }

      .item-txt {
        font-size: 1.2rem;
      }
    }
  }
}

.p-service1__price {
  display: flex;
  gap: 10px;
  align-items: center;
  .price-img {
    width: 110px;
    flex: 0 0 auto;
  }
  .price-txt {
    font-weight: bold;
    font-size: 1.8rem;
    line-height: 1.7;
    padding: 0 1em 0 0;
    strong {
      color: #DF0000;
    }
  }

  @media screen and (max-width: 800px){
    align-items: flex-start;
    .price-img {
      width: 55px;
    }
    .price-txt {
      font-size: 1.6rem;
      line-height: 1.5;
      padding: 0;
    }
  }
}

/*p-service6*/
.p-service6__point {

  .point-tit {
    margin: 40px 0;
    font-weight: bold;
    text-align: center;
    font-size: 3.2rem;

    span{
      background: linear-gradient(transparent 70%, #FFD85F 70%);

      strong {
        font-size: 4.5rem;
        color: #F78005;
        display: inline-block;
      }
    }
    @media screen and (max-width: 800px){
      margin: 20px 0 30px;
      line-height: 1.4;
      font-size: 2.6rem;
      span {
        strong {
          font-size: 3.8rem;
        }
      }
    }

  }

  .point-block {
    .point-block-item {
      margin: 0 0 40px;
      @media screen and (max-width: 800px){
        margin: 0 0 20px;
      }
      &:last-of-type {
        margin: 0;
      }

      .item-tit {
        min-height: 74px;
        position: relative;
        display: flex;
        align-items: center;
        margin: 0 0 10px;

        span {
          font-size: 10rem;
          font-weight: 700;
          line-height: 1;
          color: #D1EBFF;
          position: absolute;
          top: 50%;
          left: 0;
          transform: translateY(-50%);
          z-index: 1;
        }
        h3 {
          font-size: 1.8rem;
          font-weight: bold;
          position: relative;
          z-index: 2;
          line-height: 1.4;
          &::before {
            content: 'Point';
            color: #0A4686;
            font-size: 1.4rem;
            display: block;
            line-height: 1;
            margin: 0 0 6px;
          }
        }
      }
      .item-txt {
        background: #DCEFFF;
        padding: 20px;
        border-radius: 20px;
        p {
          font-size: 1.4rem;
          line-height: 1.7;
        }

        a {
          text-decoration: underline;
          color: #0A4686;
        }

        .item-img {
          margin: 15px 0 0;
          text-align: center;
        }
      }
    }
  }

}

.p-service6__function {
  padding: 0 20px;

  .item {
    margin: 0 0 40px;
    &:last-of-type {
      margin: 0;
    }

    p {
      font-size: 1.4rem;
      line-height: 1.6;
    }

    img {
      margin: 20px 0 0;
    }
  }

  @media screen and (max-width: 800px){
    padding: 0;

    .item {
      margin: 0 0 30px;

      img {
        margin: 15px 0 0;
      }
    }
  }
}

.p-service6__place {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;

  .item {
    width: calc((100% - 20px) / 3);
    border: 2px solid #4F90CA;
    background: #fff;
    box-sizing: border-box;
    color: #000;
    padding: 0 0 25px;
    position: relative;

    &:hover {
      text-decoration: none;
      .item-img {
        img {
          /* transform: scale(1.1); */
          opacity: .8;
        }
      }
    }

    .item-img {
      overflow: hidden;
      img {
        transition: all .3s;
        width: calc(100% + 2px);
      }
    }
    .item-body {
      padding: 8px;
      
      &::after {
        content: '詳しく見る ≫';
        font-size: 1.3rem;
        color: #4F90CA;
        font-weight: bold;
        position: absolute;
        bottom: 8px;
        right: 8px;
      }

      .item-tit {
        font-weight: bold;
        font-size: 1.6rem;
        line-height: 1.4;
      }
      p {
        font-size: 1.4rem;
        line-height: 1.6;
        margin: 5px 0 0;
      }
    }
  }

  @media screen and (max-width: 800px){
    gap: 8px;
    .item {
      width: calc((100% - 8px) / 2);

      .item-body {
        padding: 5px;
        
        &::after {
          font-size: 1.1rem;
          bottom: 5px;
          right: 5px;
        }

        .item-tit {
          font-size: 1.4rem;
        }
        p {
          font-size: 1.2rem;
          margin: 3px 0 0;
        }
      }

    }
  }
}

.p-service6__type {

  p {
    font-size: 1.4rem;
    line-height: 1.7;
    @media screen and (max-width: 800px){
      line-height: 1.6;
    }
  }

  .p-service6__type__list {
    margin: 30px 0 0;
    padding: 0 20px;

    .item {
      margin: 0 0 40px;
      &:last-of-type {
        margin: 0;
      }

      .item-body {
        display: flex;
        gap: 20px;

        .item-img {
          width: 338px;
          flex: 0 0 auto;
        }
      }
    }

    @media screen and (max-width: 800px){
      margin: 20px 0 0;
      padding: 0;

      .item {
        margin: 0 0 25px;

        .item-body {
          flex-direction: column;
          gap: 10px;

          .item-img {
            width: auto;
          }
        }
      }
    }
  }

  .p-service6__type__link {
    padding: 60px 20px 0;
    @media screen and (max-width: 800px){
      padding: 35px 0 0;
    }

  }

}

/*----utility----*/

.clearfix:after{
  content:".";
  display:block;
  height:0;
  clear:both;
  visibility:hidden;
}
.clearfix{display:inline-block;}
* html .clearfix{height:1%;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}
.clearfix{display:block;}

.clear{clear:both;}

.bold{font-weight:bold; color:#000000;}
.small_text{font-size:10px; text-align:center;}
.small_text2{font-size:11px; text-align:right; margin:10px 0 0 0;}
.m20{margin-bottom:20px;}
.m30{margin-bottom:30px;}
.m40{margin-bottom:40px;}
.mt30{margin-top:30px !important;}
.mt10{margin:10px 0px 10px 0 !important;}


.u-over {
  transition: all .3s;
  &:hover {
    opacity: .8;
  }
}
.u-en {
  font-family: "Montserrat", sans-serif;
}

.u-btn {
  box-sizing: border-box;
  border-radius: 100px;
  min-width: 300px;
  min-height: 62px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .5em 1.5em;
  background: #fff;
  border: 2px solid #4F90CA;
  font-weight: bold;
  color: #4F90CA;
  font-size: 1.8rem;
  line-height: 1.4;
  &:hover {
    text-decoration: none;
    color: #fff;
    background: #4F90CA;
  }

  @media screen and (max-width: 800px){
    min-height: 50px;
    font-size: 1.6rem;
  }
}
.u-btn-wrap {
  margin: 50px 0 0;
  text-align: center;
  @media screen and (max-width: 800px){
    margin: 25px 0 0;
  }
}

.u-ib {
  display: inline-block;
}

@media screen and (max-width: 800px){
  .u-pc,.onpc {
    display: none !important;
  }
}
@media screen and (min-width: 801px){
  .u-sp,.onsp {
    display: none !important;
  }
}

.c-catlist {
  margin: 0 0 20px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  font-size: 1.4rem;
  gap: 8px;

  .item {
    a {
      background: linear-gradient(#fff 0%, #efefef 100%);
      border: 1px solid #d9d9d9;
      height: 40px;
      display: flex;
      align-items: center;
      font-size: 1.4rem;
      padding: 0 1em;
      font-weight: 600;
      text-decoration: none;
      color: #000;

      &:hover {
        background: #4F90CA;
        border-color: #4F90CA;
        color: #fff;
      }
    }

    &.is-active a {
      background: #4F90CA;
      border-color: #4F90CA;
      color: #fff;
    }
  }


  @media (hover: hover) {
    a:hover {
      background-color: #4F90CA;
      border-color: #4F90CA;
      color: #fff;
    }
  }

  @media (max-width: 480px) {
    gap: 4px;
  }
}

.c-pager {
  margin: 60px 0;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.4rem;
  gap: 8px;

  a, .current {
    height: 36px;
    width: 36px;
    border-radius: 100%;
    background: #fff;
    border: 1px solid #666;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #666;
    font-size: 1.6rem;
    text-decoration: none;
    font-weight: 600;
  }

  .prev, .next {
    color: #666;
    font-weight: 700;
    border-color: #fff;
  }

  .current {
    background-color: #4F90CA;
    border-color: #4F90CA;
    color: #fff;
  }

  @media (hover: hover) {
    a:hover {
      background-color: #4F90CA;
      border-color: #4F90CA;
      color: #fff;
    }
  }

  @media (max-width: 480px) {
    margin: 32px 0 0;
    gap: 4px;

    a, .current {
      height: 30px;
      width: 30px;
    }
    .prev,.next {
      display: none;
    }
  }
}


/*c-postsingle*/
.c-postsingle__head {
  margin: 0 0 40px;
}

.c-postsingle__head__tit {
  display: flex;
  align-items: center;
  font-size: 2rem;
  line-height: 1.4;
  gap: 10px;
  padding: 0 0 10px;
  margin: 0 0 20px;
  border-bottom: 1px solid #84C1F8;
  font-weight: bold;

  &::before {
    content: '';
    width: 36px;
    height: 30px;
    background: url(../img/ico-case.svg) no-repeat center / contain;
  }
}
.c-postsingle__head__info {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.c-postsingle__head__cat {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;

  a {
    border: 1px solid #4F90CA;
    background: #fff;
    color: #4F90CA;
    line-height: 1;
    padding: 0.5em 0.8em;
    border-radius: 5px;
    font-size: 1.2rem;
    text-decoration: none !important;
    &:hover {
      opacity: .8;
    }
  }

  &.is-area {
    a {
      background: #4F90CA;
      color: #fff;
      border-radius: 30px;
    }
  }
}
.c-postsingle__head__date {
  color: #555;
  margin: 0 0 0 auto;
  font-size: 1.4rem;
}

.c-postsingle__head__img {
  margin: 30px 0 0;
  display: none;
}
.c-postsingle__head__img img {
  width: 100%;
}
@media (max-width: 800px) {
  .c-postsingle__head {
    margin: 0 0 20px;
  }
  .c-postsingle__head__tit {
    font-size: 2rem;
    line-height: 1.5;
    font-weight: bold;
    position: relative;
    margin: 0 0 15px;
  }
  .c-postsingle__head__cat a {
    font-size: 1rem;
  }
  .c-postsingle__head__date {
    font-size: 1.2rem;
  }
  .c-postsingle__head__img {
    margin: 15px 0 0;
  }
}
.c-postsingle__tag {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 25px 0 0;
  margin: 50px 0 0;
  border-top: 1px solid #eee;
  align-items: center;
  font-size: 1.4rem;
}
.c-postsingle__tag::before {
  content: "タグ：";
  font-size: 1.2rem;
}
.c-postsingle__tag li > a {
  display: inline-block;
  background: #eee;
  font-size: 1.2rem;
  border-radius: 4px;
  padding: 0.3em 1em;
  transition: all 0.3s;
  text-decoration: none;
}
@media (hover: hover) {
  .c-postsingle__tag li > a:hover {
    color: #fff;
    background: #888;
  }
}
.c-postsingle__link {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  margin: 50px 0 0;
  font-size: 1.4rem;

  a {
    text-decoration: none;
    &:hover {
      color: #4F90CA;
    }
  }

}
.c-postsingle__link .next {
  text-align: right;
}

/*----------
投稿記事部分
----------*/

.c-postcontent {
  max-width: 960px;
  margin: 0 auto;
  overflow: hidden;
  font-size: 1.4rem;
  color: #000;
}
.c-postcontent * {
  color: #000;
}
.c-postcontent > *:first-child {
  margin-top: 0;
}
.c-postcontent > *:last-child {
  margin-bottom: 0;
}
.c-postcontent a {
  color: #0768bd;
  text-decoration: underline;
  transition: all 0.3s;
}
@media (hover: hover) {
  .c-postcontent a:hover {
    opacity: 0.7;
  }
}
.c-postcontent a.wp-block-file__button,
.c-postcontent a.wp-block-button__link {
  color: #fff;
  text-decoration: none !important;
  background: #203744;
  font-weight: 500;
}
.c-postcontent .linkcard {
  margin: 1.5em 0 !important;
}
.c-postcontent .linkcard > div {
  border: none;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.1);
  padding: 1em;
}
.c-postcontent .linkcard .lkc-card {
  margin: 0 !important;
}
.c-postcontent .linkcard .lkc-thumbnail {
  margin: 0 0.8em 0 0;
}
.c-postcontent #toc_container {
  font-size: 90%;
}
.c-postcontent #toc_container .toc_list {
  line-height: 1.6;
}
.c-postcontent h1,
.c-postcontent h2,
.c-postcontent h3,
.c-postcontent h4,
.c-postcontent h5,
.c-postcontent h6 {
  font-weight: 700;
  line-height: 1.5;
  margin-top: 2.5em;
  margin-bottom: 1em;
}
.c-postcontent h2 {
  font-size: 2.4rem;
  padding-bottom: 0.3em;
  background: #eee;
  padding: 0.3em 0.8em;
}
@media (max-width: 800px) {
  .c-postcontent h2 {
    font-size: 2rem;
  }
}
.c-postcontent h3 {
  font-size: 2rem;
  border-left: 4px solid #203744;
  padding-left: 10px;
}
@media (max-width: 800px) {
  .c-postcontent h3 {
    font-size: 1.8rem;
  }
}
.c-postcontent h2 + h3 {
  margin-top: 1.8em;
}
.c-postcontent h4 {
  font-size: 1.8rem;
}
@media (max-width: 800px) {
  .c-postcontent h4 {
    font-size: 1.6rem;
  }
}
.c-postcontent h5 {
  font-size: 1.6rem;
}
@media (max-width: 800px) {
  .c-postcontent h5 {
    font-size: 1.4rem;
  }
}
.c-postcontent h6 {
  font-size: 1.4rem;
}
.c-postcontent b {
  font-weight: 700;
}
.c-postcontent div {
  max-width: 100%;
}
.c-postcontent img {
  height: auto;
}
.c-postcontent p {
  margin-top: 1.7em;
  margin-bottom: 1.7em;
  line-height: 1.7;
}
.c-postcontent .smb-box__body p:first-of-type {
  margin-top: 0;
}
.c-postcontent .smb-box__body p:last-of-type {
  margin-bottom: 0;
}
.c-postcontent pre {
  display: block;
  font-family: monospace;
  white-space: pre;
  margin: 1em 0px;
}
.c-postcontent ul,
.c-postcontent ol {
  margin-top: 1em;
  margin-bottom: 1em;
  padding-left: 30px;
}
.c-postcontent ul {
  list-style-type: disc;
}
.c-postcontent ol {
  list-style-type: decimal;
}
.c-postcontent li {
  margin: 0.5em 0;
}
.c-postcontent table {
  white-space: nowrap;
}
.c-postcontent table th,
.c-postcontent table td {
  border: 1px solid #ccc;
  padding: 5px;
  line-height: 1.5;
}
.c-postcontent :not(.nobg) table td:first-child:not(:last-child) {
  background: #f5f5f5;
}
.c-postcontent strong {
  font-weight: 700;
}
.c-postcontent img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.c-postcontent .alignright {
  float: right;
  margin: 0 0 1em 1.5em;
}
.c-postcontent .alignleft {
  float: left;
  margin: 0 1.5em 1em 0;
}
.c-postcontent figure {
  margin-top: 1em;
  margin-bottom: 1em;
}
.c-postcontent .wp-block-image {
  margin-top: 1em;
  margin-bottom: 1em;
}
.c-postcontent figcaption {
  text-align: center;
  font-size: 80%;
}
.c-postcontent table + figcaption {
  margin-top: 0.5em;
}
.c-postcontent blockquote {
  position: relative;
  padding: 1.5em 3em 1.5em 2.5em;
  margin: 1em 2em;
  background: #f7f7f7;
  font-size: 90%;
}
.c-postcontent blockquote p {
  margin: 0 0 1em;
}
.c-postcontent blockquote p:last-child {
  margin: 0;
}
.c-postcontent blockquote:before {
  position: absolute;
  content: "“";
  font-size: 40px;
  color: #999;
  top: 10px;
  left: 10px;
  line-height: 1;
  height: 24px;
  display: block;
}
.c-postcontent blockquote:after {
  position: absolute;
  content: "”";
  font-size: 40px;
  color: #999;
  right: 10px;
  bottom: 10px;
  line-height: 1;
  height: 24px;
  display: block;
}
.c-postcontent mark:not(.has-inline-color) {
  background: linear-gradient(transparent 60%, #ff6 60%);
}
.c-postcontent blockquote cite {
  display: block;
  font-size: 90%;
  text-align: right;
  color: #999;
}
.c-postcontent blockquote cite a {
  color: #FFAE2F;
}
.c-postcontent .table-primary {
  border-top: 1px solid #EFEFEF;
}
.c-postcontent .table-primary th,
.c-postcontent .table-primary td {
  padding: 12px 10px;
  border-bottom: 1px solid #EFEFEF;
}
.c-postcontent .table-primary th {
  width: 120px;
  font-weight: 700;
  color: #D0B74F;
  text-align: center;
}
.c-postcontent .table-primary td {
  padding-left: 20px;
  padding-right: 20px;
}
.c-postcontent .wp-block-buttons {
  margin: 1.5em 0 2em;
}
.c-postcontent iframe.wp-embedded-content {
  width: 100%;
}
.c-postcontent iframe {
  max-width: 100%;
}
.c-postcontent [class^="wp-block-"] figcaption {
    color: #757575;
    font-size: 1.4rem;;
    font-size: 0.857142857rem;
    line-height: 2;
    font-style: italic;
    text-align: left;
    margin-top: .5em;
}
@media (min-width: 768px) {
  .c-postcontent .table-primary {
    font-size: 15px;
  }
  .c-postcontent table {
    white-space: wrap;
  }
}
@media (max-width: 800px) {
  .c-postcontent {
    font-size: 1.4rem;
  }
  .c-postcontent p {
    margin: 1.5em 0;
  }
}