@charset "UTF-8";
.edit-post-visual-editor__post-title-wrapper {
  max-width: 1080px;
  margin: 0 auto;
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
}
.edit-post-visual-editor__post-title-wrapper * {
  padding: 0;
  margin: 0;
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  letter-spacing: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.edit-post-visual-editor__post-title-wrapper .wp-block {
  max-width: 100%;
}
.edit-post-visual-editor__post-title-wrapper .wp-block-post-title {
  margin-top: 64px;
  margin-bottom: 64px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 26px;
  height: 69px;
  border-top: 2px solid #409aff;
  border-bottom: 2px solid #409aff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .edit-post-visual-editor__post-title-wrapper .wp-block-post-title {
    padding: 2.1333333333vw 4.2666666667vw;
    border-width: 1.0666666667vw;
    font-size: 4vw;
  }
}

/*.post,
.editor-styles-wrapper,
.is-root-container{
}*/
.is-root-container {
  padding-bottom: 100px;
}

.block-editor-block-list__layout > * {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .block-editor-block-list__layout > * {
    margin-top: 5.3333333333vw;
  }
}
.block-editor-block-list__layout > *:first-child {
  margin-top: 0;
}

.post,
.is-root-container {
  max-width: 1080px;
  margin: 0 auto;
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  letter-spacing: 0;
  color: #3d3d3d;
  /*
  ul,ol{
    padding: 0;
    margin-left: 0;
    list-style: none;
  }

  li{
    margin-bottom: .5em;
    position: relative;
    @media screen and ( max-width:767px){
      margin-bottom: .3em;
    }
    &:last-child{
      margin-bottom: 0;
    }
  }

  ul{
    li{
      padding-left: 1.2em;
      @media screen and ( max-width:767px){
      }
      &:before{
        content: '・';
        font-size: 1em;
        line-height: 1.8;
        color: #0c419a;
        position: absolute;
        left: 0;
        top: 0;
        z-index: 1;
        @media screen and ( max-width:767px){
        }
      }
    }
  }

  ol{
    counter-reset: number 0;
    li{
      padding-left: 1.3em;
      @media screen and ( max-width:767px){
      }
      &:before{
        counter-increment: number 1;
        content: counter(number)'.';
        font-size: 1em;
        line-height: 1.8;
        font-weight: 700;
        color: #0c419a;
        position: absolute;
        left: 0;
        top: 0;
        z-index: 1;
        @media screen and ( max-width:767px){
        }
      }
    }
  }
  */
  /*
  &_item{
    margin-top: 32px;
    font-size: 14px;
    line-height: 32px;
    font-weight: 300;
    letter-spacing: 0.06em;
    @media screen and ( max-width:767px){
      margin-top: 24px;
      line-height: 28px;
    }
    &.text_box{
      padding: 14px 20px;
      @media screen and ( max-width:767px){
        padding: calc(20/750*100vw) calc(30/750*100vw);
      }
      &.border{
        border: 1px solid #626262;
      }
    }
  }

  .wp-block-image{
    &:after{
     content: '';
     display: block;
     clear: both;
    }
    &.size-full{
      //margin-top: 52px;
    }
    &:first-child{
      margin-top: 0;
    }
    &:last-child{
      margin-bottom: 0;
    }
  }

  .wp-block-media-text{
    grid-template-columns: 48% 48%;
    grid-gap: 4%;
    margin-top: 60px;
    margin-bottom: 60px;
    @media screen and ( max-width:767px){
      grid-gap: 3%;
      grid-gap: 0;
      margin-top: calc(100/750*100vw);
      margin-bottom: calc(100/750*100vw);
    }
    .wp-block-media-text__content{
      padding: 0;
      @media screen and ( max-width:767px){
        margin-top: calc(60/750*100vw);
      }
    }
  }
  [data-type="core/media-text"]{
    //grid-template-columns: 48% 48%!important;
  }

  .wp-block-columns{
    margin-top: 60px;
    margin-bottom: 60px;
    @media screen and ( max-width:767px){
      margin-top: calc(60/750*100vw);
      margin-bottom: calc(60/750*100vw);
      gap: calc(32/750*100vw);
    }

    .wp-block-column{
      >*{
        margin-top: 16px;
        &:first-child{
          margin-top: 0;
        }
      }
    }

    &.sp_col2{
      @media screen and ( max-width:767px){
        gap: calc(30/750*100vw);
        .wp-block-column{
          flex-grow: unset;
          flex-basis: auto!important;
          width: calc(50% - (15/750*100vw));
        }
      }
    }

    &:first-child{
      margin-top: 0;
    }
    &:last-child{
      margin-bottom: 0;
    }
  }

  .wp-block-group{
    padding: 72px 0;
    margin-top: 70px;
    margin-bottom: 70px;
    position: relative;
    z-index: 1;
    @media screen and ( max-width:767px){
      padding: calc(80/750*100vw) 0;
      margin-top: calc(80/750*100vw);
      margin-bottom: calc(80/750*100vw);
    }

    &:before{
      content: '';
      display: block;
      width: 100vw;
      height: 100%;
      background: #fbfbfb;
      position: absolute;
      top: 0;
      left: 50%;
      z-index: -1;
      transform: translateX(-50%);
    }

    &__inner-container{
      >*{
        margin-top: 40px;
        @media screen and ( max-width:767px){
          margin-top: 26px;
        }
        &:first-child{
          margin-top: 0;
        }
      }
    }

    .wp-block-columns{
      margin-top: 60px;
      margin-bottom: 60px;
      @media screen and ( max-width:767px){
        margin-top: calc(60/750*100vw);
        margin-bottom: calc(60/750*100vw);
      }
      &:first-child{
        margin-top: 0;
      }
      &:last-child{
        margin-bottom: 0;
      }
    }

    &:first-child{
      margin-top: 0;
    }
    &:last-child{
      margin-bottom: 0;
    }
  }

  .wp-block-table{
    @media screen and ( max-width:767px){
      margin-top: calc(60/750*100vw);
      margin-bottom: calc(60/750*100vw);
    }

    table,th,td{
      border: none;
    }

    table{
      border-top: 1px solid #dcdcdc;
      &.col2{
        margin: 0;
        margin-top: 32px;
        margin-bottom: 32px;
        @media screen and ( max-width:767px){
          display: block;
          width: 100%!important;
          height: auto!important;
          margin-top: calc(32/750*100vw);
          margin-bottom: calc(32/750*100vw);
        }
        thead,tbody{
          @media screen and ( max-width:767px){
            display: block;
          }
        }
        tr{
          @media screen and ( max-width:767px){
            display: flex;
            flex-direction: column;
            width: 100%!important;
            height: auto!important;
          }
        }
        th,td{
          width: 100%;
          @media screen and ( max-width:767px){
            display: block;
            width: 100%!important;
          }
          &:nth-child(1){
            width: 200px;
            min-width: 200px;
            background: #eee;
            font-weight: 500;
          }
        }
        td{
        }
        &:first-child{
          margin-top: 0;
        }
        &:last-child{
          margin-bottom: 0;
        }
      }
    }

    tr{
      border-bottom: 1px solid #dcdcdc;
      &:first-child{

      }
    }

    th,td{
      box-sizing: border-box;
      min-height: 50px;
      padding: 22px 0;
      padding-left: 20px;
      padding-right: 20px;
      vertical-align: middle;
      @media screen and ( max-width:767px){
        min-height: calc(95/750*100vw);
        padding: calc(24/750*100vw) 0;
        padding-left: calc(32/750*100vw);
        padding-right: calc(32/750*100vw);
      }
    }

    th{
      padding-left: 20px;
      background: #f5f5f5;
      font-weight: 400;
      &:first-child{

      }
    }

    td{
      img{
        &.size-full{
          margin: 0;
        }
      }
    }

    &:first-child{
      margin-top: 0;
    }
    &:last-child{
      margin-bottom: 0;
    }
  }

  .wp-block-button{
    &s{

    }
    &__link{
      display: flex;
      align-items: center;
      justify-content: center;
      min-width: 260px;
      height: 60px;
      border-radius: 0;
      background: #0c419a;
      letter-spacing: 0.1em;
      color: #fff;
      @media screen and ( max-width:767px){
        min-width: calc(460/750*100vw);
        height: calc(100/750*100vw);
      }
    }
  }

  .wp-block-spacer{
    margin: 0;
    +*{
      margin-top: 0;
    }
  }
  */
}
@media screen and (max-width: 767px) {
  .post,
.is-root-container {
    padding: 0 5.3333333333vw;
  }
}
.post *,
.is-root-container * {
  padding: 0;
  margin: 0;
  letter-spacing: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.post > *,
.is-root-container > * {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .post > *,
.is-root-container > * {
    margin-top: 5.3333333333vw;
  }
}
.post > *:first-child,
.is-root-container > *:first-child {
  margin-top: 0;
}
.post .wp-block,
.is-root-container .wp-block {
  max-width: 100%;
}
.post .mt-0,
.is-root-container .mt-0 {
  margin-top: 0;
}
.post mark,
.is-root-container mark {
  background-color: rgba(0, 0, 0, 0);
}
.post .has-vivid-cyan-blue-color,
.is-root-container .has-vivid-cyan-blue-color {
  color: #0c419a !important;
}
.post h1, .post h2, .post p, .post ul, .post ol,
.is-root-container h1,
.is-root-container h2,
.is-root-container p,
.is-root-container ul,
.is-root-container ol {
  margin-top: 28px;
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
}
@media screen and (max-width: 767px) {
  .post h1, .post h2, .post p, .post ul, .post ol,
.is-root-container h1,
.is-root-container h2,
.is-root-container p,
.is-root-container ul,
.is-root-container ol {
    margin-top: 26px;
  }
}
.post h1:first-child, .post h2:first-child, .post p:first-child, .post ul:first-child, .post ol:first-child,
.is-root-container h1:first-child,
.is-root-container h2:first-child,
.is-root-container p:first-child,
.is-root-container ul:first-child,
.is-root-container ol:first-child {
  margin-top: 0;
}
.post h2,
.is-root-container h2 {
  margin-top: 48px;
  padding: 10px 0;
  padding-left: 32px;
  border-left: 6px solid #2e73e7;
  background: rgb(0, 127, 214);
  background: -webkit-gradient(linear, left top, right top, from(rgb(1, 77, 191)), to(rgb(0, 127, 214)));
  background: -o-linear-gradient(left, rgb(1, 77, 191) 0%, rgb(0, 127, 214) 100%);
  background: linear-gradient(90deg, rgb(1, 77, 191) 0%, rgb(0, 127, 214) 100%);
  font-size: 24px;
  line-height: 1.8;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: #fff;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .post h2,
.is-root-container h2 {
    margin-top: 10.6666666667vw;
    padding: 2.6666666667vw 0;
    padding-left: 4.2666666667vw;
    border-width: 1.0666666667vw;
    font-size: 4.5333333333vw;
  }
}
.post h2:first-child,
.is-root-container h2:first-child {
  margin-top: 0;
}
.post h3,
.is-root-container h3 {
  padding-left: 20px;
  margin-top: 48px;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.04em;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .post h3,
.is-root-container h3 {
    padding-left: 3.2vw;
    margin-top: 8vw;
    font-size: 4.2666666667vw;
  }
}
.post h3:before,
.is-root-container h3:before {
  content: "";
  display: block;
  width: 4px;
  height: calc(100% - 12px);
  background: #0c419a;
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 1;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .post h3:before,
.is-root-container h3:before {
    width: 1.0666666667vw;
    height: calc(100% - 2.1333333333vw);
  }
}
.post h3:first-child,
.is-root-container h3:first-child {
  margin-top: 0;
}
.post h4,
.is-root-container h4 {
  padding-bottom: 8px;
  border-bottom: 1px solid #dcdcdc;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.04em;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .post h4,
.is-root-container h4 {
    margin-top: 5.3333333333vw;
    padding-bottom: 2.1333333333vw;
    font-size: 4vw;
  }
}
.post h4:first-child,
.is-root-container h4:first-child {
  margin-top: 0;
}
.post p, .post ul, .post ol, .post li, .post dt, .post dd, .post th, .post td,
.is-root-container p,
.is-root-container ul,
.is-root-container ol,
.is-root-container li,
.is-root-container dt,
.is-root-container dd,
.is-root-container th,
.is-root-container td {
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  font-size: 1rem;
  line-height: 1.8;
}
.post p strong, .post ul strong, .post ol strong, .post li strong, .post dt strong, .post dd strong, .post th strong, .post td strong,
.is-root-container p strong,
.is-root-container ul strong,
.is-root-container ol strong,
.is-root-container li strong,
.is-root-container dt strong,
.is-root-container dd strong,
.is-root-container th strong,
.is-root-container td strong {
  font-size: 1em;
  line-height: 1.8;
  font-weight: 700;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 767px) {
  .post p strong, .post ul strong, .post ol strong, .post li strong, .post dt strong, .post dd strong, .post th strong, .post td strong,
.is-root-container p strong,
.is-root-container ul strong,
.is-root-container ol strong,
.is-root-container li strong,
.is-root-container dt strong,
.is-root-container dd strong,
.is-root-container th strong,
.is-root-container td strong {
    line-height: 1.8;
  }
}
.post p strong span, .post ul strong span, .post ol strong span, .post li strong span, .post dt strong span, .post dd strong span, .post th strong span, .post td strong span,
.is-root-container p strong span,
.is-root-container ul strong span,
.is-root-container ol strong span,
.is-root-container li strong span,
.is-root-container dt strong span,
.is-root-container dd strong span,
.is-root-container th strong span,
.is-root-container td strong span {
  font-weight: 700;
}
.post p span, .post ul span, .post ol span, .post li span, .post dt span, .post dd span, .post th span, .post td span,
.is-root-container p span,
.is-root-container ul span,
.is-root-container ol span,
.is-root-container li span,
.is-root-container dt span,
.is-root-container dd span,
.is-root-container th span,
.is-root-container td span {
  font-size: 1em;
  line-height: 1.8;
  font-weight: 400;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 767px) {
  .post p span, .post ul span, .post ol span, .post li span, .post dt span, .post dd span, .post th span, .post td span,
.is-root-container p span,
.is-root-container ul span,
.is-root-container ol span,
.is-root-container li span,
.is-root-container dt span,
.is-root-container dd span,
.is-root-container th span,
.is-root-container td span {
    line-height: 1.8;
  }
}
.post p,
.is-root-container p {
  margin-top: 24px;
}
.post p a,
.is-root-container p a {
  text-decoration: underline;
}
.post p.have_img + p,
.is-root-container p.have_img + p {
  margin-top: 12px;
}
@media screen and (max-width: 767px) {
  .post p.have_img + p,
.is-root-container p.have_img + p {
    margin-top: 8px;
  }
}
.post p:first-child,
.is-root-container p:first-child {
  margin-top: 0;
}
@media screen and (max-width: 767px) {
  .post [style="font-size:18px"],
.is-root-container [style="font-size:18px"] {
    font-size: 4vw !important;
  }
}
@media screen and (max-width: 767px) {
  .post [style="font-size:14px"],
.is-root-container [style="font-size:14px"] {
    font-size: 3.4666666667vw !important;
  }
}
.post span[style="text-decoration: underline;"],
.is-root-container span[style="text-decoration: underline;"] {
  padding-bottom: 3px;
  border-bottom: 1px solid #000;
  text-decoration: none !important;
}
.post img,
.is-root-container img {
  margin-bottom: 10px;
}
.post img.border,
.is-root-container img.border {
  border: 1px solid #ccc;
}
.post img.size-full,
.is-root-container img.size-full {
  display: block;
  margin-right: auto;
  margin-left: auto;
}
.post img:last-child,
.is-root-container img:last-child {
  margin-bottom: 0;
}
.post hr,
.is-root-container hr {
  margin-top: 100px;
  margin-bottom: 100px;
  height: 1px;
  background-color: #d2d2d2;
  border: none;
}
@media screen and (max-width: 767px) {
  .post hr,
.is-root-container hr {
    margin-top: 13.3333333333vw;
    margin-bottom: 13.3333333333vw;
  }
}
.post iframe.mov,
.is-root-container iframe.mov {
  width: 100%;
  height: 520px;
}
@media screen and (max-width: 767px) {
  .post iframe.mov,
.is-root-container iframe.mov {
    height: 48vw;
  }
}
.post .wp-caption,
.is-root-container .wp-caption {
  width: auto !important;
  max-width: 100%;
}
.post .wp-caption-text, .post .wp-caption-dd,
.is-root-container .wp-caption-text,
.is-root-container .wp-caption-dd {
  margin-top: 16px;
  font-size: 16px;
  text-align: right;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .post .wp-caption-text, .post .wp-caption-dd,
.is-root-container .wp-caption-text,
.is-root-container .wp-caption-dd {
    margin-top: 12px;
    font-size: 14px;
  }
}

.wp-editor {
  margin-top: 20px;
}

/*
.post{
  >*{
    margin-top: 32px;
    @media screen and ( max-width:767px){
      margin-top: calc(56/750*100vw);
    }
    &:first-child{
      margin-top: 0;
    }
  }
}
*/