@charset "UTF-8";
/*
@include css3(transform, translate(-50%, -50%));
@include css3(transition, 0.3s ease-in-out);  
transform: rotate(0.03deg);
*/
@keyframes slide1 {
  0% {
    transform: translateX(100%); }
  to {
    transform: translateX(-100%); } }
@keyframes slide2 {
  0% {
    transform: translateX(0); }
  to {
    transform: translateX(-200%); } }
@keyframes AnimationTitle {
  0% {
    background-position: 0% 50%; }
  50% {
    background-position: 100% 50%; }
  100% {
    background-position: 0% 50%; } }
/*----------------------------------------------------
　下層ページ
----------------------------------------------------*/
.pageMain {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 110px 0 0 0; }
  @media screen and (max-width: 1400px) {
    .pageMain {
      padding: 110px 20px 0; } }
  @media screen and (max-width: 1000px) {
    .pageMain {
      padding-top: 100px; } }
  @media screen and (max-width: 520px) {
    .pageMain {
      padding-top: 80px; } }
  .pageMain .in {
    color: #FFF;
    width: 1360px;
    height: 284px;
    border-radius: 40px;
    overflow: hidden;
    background-color: #E7E7E7;
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    z-index: 1; }
    @media screen and (max-width: 1400px) {
      .pageMain .in {
        width: 100%;
        padding: 0 20px;
        border-radius: 20px; } }
    @media screen and (max-width: 520px) {
      .pageMain .in {
        height: 200px;
        border-radius: 20px;
        display: flex;
        justify-content: flex-start;
        align-items: center; } }
    .pageMain .in .title {
      width: 1080px;
      margin: 0 auto;
      font-size: 42px;
      font-weight: 700;
      padding: 0;
      letter-spacing: 0.1em;
      line-height: 63px;
      text-shadow: 0 3px 2px rgba(0, 0, 0, 0.3);
      text-align: left; }
      @media screen and (max-width: 1000px) {
        .pageMain .in .title {
          width: 100%; } }
      @media screen and (max-width: 767px) {
        .pageMain .in .title {
          font-size: 30px; } }
      @media screen and (max-width: 520px) {
        .pageMain .in .title {
          font-size: 24px;
          padding: 0;
          width: 100%;
          text-align: left;
          line-height: 140%; } }
      .pageMain .in .title span {
        font-size: 24px; }

.service .pageMain .in {
  background: url("../images/page/main-service.webp") no-repeat center;
  background-size: cover; }

.abl .pageMain .in {
  background: url("../images/page/main-abl.webp") no-repeat center;
  background-size: cover; }

.business-loan .pageMain .in {
  background: url("../images/page/main-business-loan.webp") no-repeat center;
  background-size: cover; }

.guide .pageMain .in {
  background: url("../images/page/main-guide.webp") no-repeat center;
  background-size: cover; }

.company .pageMain .in {
  background: url("../images/page/main-company.webp") no-repeat center;
  background-size: cover; }

.column .pageMain .in {
  background: url("../images/page/main-column.webp") no-repeat center;
  background-size: cover; }

.policy .pageMain .in {
  background: url("../images/page/main-policy.webp") no-repeat center;
  background-size: cover; }

.contents-policy .pageMain .in {
  background: url("../images/page/main-contents-policy.webp") no-repeat center;
  background-size: cover; }

/*====================================
　共通パーツ
=====================================*/
#content section {
  padding: 0 0 50px; }
#content .f22 {
  font-size: 22px; }
#content .f20 {
  font-size: 20px; }
#content .f18 {
  font-size: 18px; }
#content .f15 {
  font-size: 15px; }
#content .f14 {
  font-size: 14px; }
#content .b {
  font-weight: 700; }
#content .inner {
  max-width: 1080px; }
  @media screen and (max-width: 1120px) {
    #content .inner {
      padding: 0 20px; } }
#content p {
  line-height: 30px;
  padding: 0 0 1em; }
  @media screen and (max-width: 520px) {
    #content p {
      line-height: 26px;
      font-size: 15px; } }
  #content p:last-child {
    padding: 0; }
  #content p:empty {
    display: none;
    padding: 0;
    line-height: 0; }
#content table {
  width: 100%; }
  #content table th, #content table td {
    padding: 20px 10px;
    border-top: none;
    border-bottom: 1px solid #B5B5B5;
    letter-spacing: 0.1em;
    line-height: 30px; }
    @media screen and (max-width: 520px) {
      #content table th, #content table td {
        padding: 10px;
        display: block;
        width: 100% !important; } }
  #content table th {
    font-size: 16px;
    font-weight: 400;
    text-align: left;
    vertical-align: top;
    width: 25%;
    border-color: #134294;
    color: #134294;
    padding-left: 30px; }
    @media screen and (max-width: 520px) {
      #content table th {
        border-top: none;
        border-bottom: none;
        padding: 10px 10px 0; } }
  #content table td {
    font-size: 16px;
    width: 75%; }
    @media screen and (max-width: 520px) {
      #content table td {
        border-top: none; } }
    #content table td div {
      padding: 20px 0; }
      @media screen and (max-width: 520px) {
        #content table td div {
          padding: 0 0 10px; } }
#content .flexBox {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }

/*====================================
　会社概要
=====================================*/
.company #content .companyBox {
  padding: 0 0 150px; }
  @media screen and (max-width: 600px) {
    .company #content .companyBox {
      padding: 0 0 50px; } }
  .company #content .companyBox .inner {
    font-size: 20px; }
.company #content .companyBox2 {
  padding-bottom: 90px; }
  @media screen and (max-width: 600px) {
    .company #content .companyBox2 {
      padding-bottom: 40px; } }
  .company #content .companyBox2 .inner .gmap {
    max-width: 880px;
    margin: 0 auto; }
    .company #content .companyBox2 .inner .gmap iframe {
      width: 100%; }
      @media screen and (max-width: 520px) {
        .company #content .companyBox2 .inner .gmap iframe {
          height: 250px; } }
.company #content .companyBox3 {
  background-color: #F4F9FF;
  padding: 70px 0 55px; }
  @media screen and (max-width: 600px) {
    .company #content .companyBox3 {
      padding: 40px 0; } }
  .company #content .companyBox3 .inner .btnArea {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px 20px;
    padding: 30px 0 0 0; }
    .company #content .companyBox3 .inner .btnArea .in {
      width: 280px; }
      .company #content .companyBox3 .inner .btnArea .in a {
        display: block;
        background-color: #134294;
        color: #FFF;
        position: relative;
        border-radius: 50px;
        padding: 15px;
        text-align: center; }
        .company #content .companyBox3 .inner .btnArea .in a:after {
          content: '';
          width: 10px;
          height: 10px;
          border-top: solid 2px #FFF;
          border-right: solid 2px #FFF;
          position: absolute;
          right: 20px;
          top: 50%;
          -webkit-transform: translate(0%, -50%) rotate(45deg);
          -moz-transform: translate(0%, -50%) rotate(45deg);
          -ms-transform: translate(0%, -50%) rotate(45deg);
          -o-transform: translate(0%, -50%) rotate(45deg);
          transform: translate(0%, -50%) rotate(45deg); }

/*====================================
　事業紹介
=====================================*/
.service #content .ftx {
  font-size: 20px;
  padding-bottom: 70px; }
  @media screen and (max-width: 520px) {
    .service #content .ftx {
      font-size: 15px;
      padding-bottom: 35px; } }
.service #content .serviceBox .com_title {
  margin-bottom: 60px; }
  @media screen and (max-width: 520px) {
    .service #content .serviceBox .com_title {
      margin-bottom: 30px; } }
.service #content .serviceBox .inBox {
  margin: 0 0 40px;
  border: 1px solid #134294;
  border-radius: 15px;
  overflow: hidden; }
  @media screen and (max-width: 520px) {
    .service #content .serviceBox .inBox {
      margin: 0 0 20px; } }
  .service #content .serviceBox .inBox .head {
    background-color: #134294;
    color: #FFF;
    text-align: center;
    font-size: 30px;
    font-weight: 700;
    padding: 20px; }
    @media screen and (max-width: 767px) {
      .service #content .serviceBox .inBox .head {
        font-size: 24px; } }
    @media screen and (max-width: 520px) {
      .service #content .serviceBox .inBox .head {
        font-size: 18px;
        padding: 10px; } }
  .service #content .serviceBox .inBox .body {
    padding: 30px; }
    @media screen and (max-width: 520px) {
      .service #content .serviceBox .inBox .body {
        padding: 15px; } }
    .service #content .serviceBox .inBox .body ul {
      padding: 0 0 1em; }
      .service #content .serviceBox .inBox .body ul li {
        font-size: 18px;
        font-weight: 600;
        position: relative;
        padding: 0 0 0 1em;
        line-height: 36px; }
        @media screen and (max-width: 520px) {
          .service #content .serviceBox .inBox .body ul li {
            font-size: 15px;
            line-height: 26px; } }
        .service #content .serviceBox .inBox .body ul li:before {
          content: "・";
          position: absolute;
          top: 0;
          left: 0; }
    .service #content .serviceBox .inBox .body .flexBox .txBox {
      width: 55%; }
      @media screen and (max-width: 767px) {
        .service #content .serviceBox .inBox .body .flexBox .txBox {
          width: 100%;
          order: 2;
          padding: 20px 0 0 0; } }
      .service #content .serviceBox .inBox .body .flexBox .txBox p {
        line-height: 24px; }
    .service #content .serviceBox .inBox .body .flexBox .imgBox {
      width: 40%; }
      @media screen and (max-width: 767px) {
        .service #content .serviceBox .inBox .body .flexBox .imgBox {
          width: 100%;
          order: 1; } }
    .service #content .serviceBox .inBox .body .in {
      margin: 20px 0;
      padding: 20px;
      border-radius: 20px;
      background-color: #F4F9FF; }
      .service #content .serviceBox .inBox .body .in ul li {
        color: #124193; }
    .service #content .serviceBox .inBox .body .btn {
      padding: 40px 0 20px; }
      @media screen and (max-width: 520px) {
        .service #content .serviceBox .inBox .body .btn {
          padding: 20px 0 0; } }
      .service #content .serviceBox .inBox .body .btn a {
        width: 260px;
        background-image: none;
        background-color: #124193;
        border-radius: 50px; }

/*====================================
　事業紹介
=====================================*/
.business-loan #content .first,
.abl #content .first {
  padding: 0 0 120px; }
  @media screen and (max-width: 520px) {
    .business-loan #content .first,
    .abl #content .first {
      padding: 0 0 30px; } }
  .business-loan #content .first .inner .sub,
  .abl #content .first .inner .sub {
    text-align: center;
    font-size: 20px; }
    @media screen and (max-width: 767px) {
      .business-loan #content .first .inner .sub,
      .abl #content .first .inner .sub {
        text-align: left; } }
    @media screen and (max-width: 520px) {
      .business-loan #content .first .inner .sub,
      .abl #content .first .inner .sub {
        font-size: 16px; } }
  .business-loan #content .first .inner .flexBox,
  .abl #content .first .inner .flexBox {
    justify-content: center;
    gap: 0 80px;
    padding: 50px 0; }
    @media screen and (max-width: 520px) {
      .business-loan #content .first .inner .flexBox,
      .abl #content .first .inner .flexBox {
        gap: 10px 5px;
        padding: 15px 0; } }
    .business-loan #content .first .inner .flexBox .inBox,
    .abl #content .first .inner .flexBox .inBox {
      width: 200px;
      height: 200px;
      border-radius: 50%;
      box-shadow: 0 5px 11px rgba(0, 0, 0, 0.1);
      text-align: center; }
      @media screen and (max-width: 520px) {
        .business-loan #content .first .inner .flexBox .inBox,
        .abl #content .first .inner .flexBox .inBox {
          width: 150px;
          height: 150px;
          padding: 15px 0 0 0; } }
      .business-loan #content .first .inner .flexBox .inBox .imgBox,
      .abl #content .first .inner .flexBox .inBox .imgBox {
        width: 100%;
        height: 110px;
        display: flex;
        justify-content: center;
        align-items: flex-end;
        padding: 0 0 10px; }
        @media screen and (max-width: 520px) {
          .business-loan #content .first .inner .flexBox .inBox .imgBox,
          .abl #content .first .inner .flexBox .inBox .imgBox {
            height: 70px; }
            .business-loan #content .first .inner .flexBox .inBox .imgBox img,
            .abl #content .first .inner .flexBox .inBox .imgBox img {
              max-width: none;
              height: 100%;
              width: auto; } }
      .business-loan #content .first .inner .flexBox .inBox .txBox,
      .abl #content .first .inner .flexBox .inBox .txBox {
        font-size: 18px;
        color: #124193;
        font-weight: 600; }
        @media screen and (max-width: 520px) {
          .business-loan #content .first .inner .flexBox .inBox .txBox,
          .abl #content .first .inner .flexBox .inBox .txBox {
            font-size: 10px; } }
        .business-loan #content .first .inner .flexBox .inBox .txBox p,
        .abl #content .first .inner .flexBox .inBox .txBox p {
          line-height: 26px; }
          @media screen and (max-width: 520px) {
            .business-loan #content .first .inner .flexBox .inBox .txBox p,
            .abl #content .first .inner .flexBox .inBox .txBox p {
              line-height: 20px;
              font-size: 12px; } }
  .business-loan #content .first .inner .button,
  .abl #content .first .inner .button {
    text-align: center; }
    .business-loan #content .first .inner .button a,
    .abl #content .first .inner .button a {
      display: inline-block;
      width: 400px;
      color: #FFF;
      font-size: 20px;
      font-weight: 700;
      border-radius: 30px;
      padding: 10px;
      border: none;
      background: linear-gradient(91deg, #ff3d24 0%, #f28e26 100%); }
      @media screen and (max-width: 520px) {
        .business-loan #content .first .inner .button a,
        .abl #content .first .inner .button a {
          width: 80%;
          font-size: 16px; } }
.business-loan #content .features,
.abl #content .features {
  padding: 50px 0 10px; }
  .business-loan #content .features .flexBox,
  .abl #content .features .flexBox {
    display: block; }
    .business-loan #content .features .flexBox .inBox,
    .abl #content .features .flexBox .inBox {
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      padding: 0 0 70px; }
      @media screen and (max-width: 520px) {
        .business-loan #content .features .flexBox .inBox,
        .abl #content .features .flexBox .inBox {
          padding: 0 0 30px; } }
      .business-loan #content .features .flexBox .inBox.type2 .imgBox,
      .abl #content .features .flexBox .inBox.type2 .imgBox {
        order: 1; }
        @media screen and (max-width: 767px) {
          .business-loan #content .features .flexBox .inBox.type2 .imgBox,
          .abl #content .features .flexBox .inBox.type2 .imgBox {
            order: 2; } }
      .business-loan #content .features .flexBox .inBox.type2 .txBox,
      .abl #content .features .flexBox .inBox.type2 .txBox {
        order: 2; }
        @media screen and (max-width: 767px) {
          .business-loan #content .features .flexBox .inBox.type2 .txBox,
          .abl #content .features .flexBox .inBox.type2 .txBox {
            order: 1; } }
      .business-loan #content .features .flexBox .inBox .imgBox,
      .abl #content .features .flexBox .inBox .imgBox {
        width: 48%;
        text-align: center; }
        @media screen and (max-width: 767px) {
          .business-loan #content .features .flexBox .inBox .imgBox,
          .abl #content .features .flexBox .inBox .imgBox {
            width: 100%; } }
      .business-loan #content .features .flexBox .inBox .txBox,
      .abl #content .features .flexBox .inBox .txBox {
        width: 48%; }
        @media screen and (max-width: 767px) {
          .business-loan #content .features .flexBox .inBox .txBox,
          .abl #content .features .flexBox .inBox .txBox {
            width: 100%;
            padding: 0 0 20px; } }
        .business-loan #content .features .flexBox .inBox .txBox .title,
        .abl #content .features .flexBox .inBox .txBox .title {
          display: flex;
          justify-content: flex-start;
          align-items: center;
          color: #124193;
          padding: 0 0 30px;
          min-height: 70px; }
          @media screen and (max-width: 520px) {
            .business-loan #content .features .flexBox .inBox .txBox .title,
            .abl #content .features .flexBox .inBox .txBox .title {
              padding: 0 0 15px; } }
          .business-loan #content .features .flexBox .inBox .txBox .title .lBox,
          .abl #content .features .flexBox .inBox .txBox .title .lBox {
            padding: 0 10px 0 0;
            border-right: 2px solid #124193; }
            .business-loan #content .features .flexBox .inBox .txBox .title .lBox p,
            .abl #content .features .flexBox .inBox .txBox .title .lBox p {
              font-size: 28px;
              font-weight: 600;
              text-align: center;
              line-height: 25px; }
              @media screen and (max-width: 520px) {
                .business-loan #content .features .flexBox .inBox .txBox .title .lBox p,
                .abl #content .features .flexBox .inBox .txBox .title .lBox p {
                  font-size: 22px;
                  line-height: 100%; } }
              .business-loan #content .features .flexBox .inBox .txBox .title .lBox p span,
              .abl #content .features .flexBox .inBox .txBox .title .lBox p span {
                letter-spacing: 0;
                font-size: 14px;
                display: block; }
                @media screen and (max-width: 520px) {
                  .business-loan #content .features .flexBox .inBox .txBox .title .lBox p span,
                  .abl #content .features .flexBox .inBox .txBox .title .lBox p span {
                    font-size: 15px; } }
          .business-loan #content .features .flexBox .inBox .txBox .title .rBox,
          .abl #content .features .flexBox .inBox .txBox .title .rBox {
            padding: 0 0 0 10px;
            font-size: 28px;
            font-weight: 700;
            letter-spacing: 0.1em;
            line-height: 31px; }
            @media screen and (max-width: 520px) {
              .business-loan #content .features .flexBox .inBox .txBox .title .rBox,
              .abl #content .features .flexBox .inBox .txBox .title .rBox {
                font-size: 18px;
                line-height: 26px; } }
        .business-loan #content .features .flexBox .inBox .txBox p,
        .abl #content .features .flexBox .inBox .txBox p {
          line-height: 25px; }
          @media screen and (max-width: 520px) {
            .business-loan #content .features .flexBox .inBox .txBox p,
            .abl #content .features .flexBox .inBox .txBox p {
              font-size: 15px;
              line-height: 24px; } }
.business-loan #content .nayami,
.abl #content .nayami {
  position: relative;
  background-color: #F4F9FF;
  overflow: hidden;
  padding: 40px 20px 0; }
  @media screen and (max-width: 520px) {
    .business-loan #content .nayami,
    .abl #content .nayami {
      padding: 10px 20px 0; } }
  .business-loan #content .nayami:before, .business-loan #content .nayami:after,
  .abl #content .nayami:before,
  .abl #content .nayami:after {
    content: "";
    width: 50%;
    height: 60px;
    background-color: #FFF;
    position: absolute;
    bottom: -1px;
    left: 0%;
    clip-path: polygon(0 0, 0% 100%, 100% 100%);
    z-index: 2; }
    @media screen and (max-width: 600px) {
      .business-loan #content .nayami:before, .business-loan #content .nayami:after,
      .abl #content .nayami:before,
      .abl #content .nayami:after {
        height: 25px; } }
  .business-loan #content .nayami:before,
  .abl #content .nayami:before {
    clip-path: polygon(100% 0, 0% 100%, 100% 100%);
    left: auto;
    right: 0; }
  .business-loan #content .nayami img,
  .abl #content .nayami img {
    position: relative;
    bottom: -2px;
    left: 50%;
    -webkit-transform: translate(-50%, 0%);
    -moz-transform: translate(-50%, 0%);
    -ms-transform: translate(-50%, 0%);
    -o-transform: translate(-50%, 0%);
    transform: translate(-50%, 0%);
    z-index: 1; }
.business-loan #content .nayamiTx,
.abl #content .nayamiTx {
  padding: 50px 40px 0; }
  @media screen and (max-width: 767px) {
    .business-loan #content .nayamiTx,
    .abl #content .nayamiTx {
      padding: 50px 0 0; } }
  @media screen and (max-width: 520px) {
    .business-loan #content .nayamiTx,
    .abl #content .nayamiTx {
      padding: 10px 0 0 0;
      font-size: 15px; } }
  .business-loan #content .nayamiTx.c,
  .abl #content .nayamiTx.c {
    text-align: center; }
    @media screen and (max-width: 767px) {
      .business-loan #content .nayamiTx.c,
      .abl #content .nayamiTx.c {
        text-align: left; } }
.business-loan #content .reason,
.abl #content .reason {
  padding: 90px 0 30px; }
  @media screen and (max-width: 520px) {
    .business-loan #content .reason,
    .abl #content .reason {
      padding: 40px 0 20px; } }
  @media screen and (max-width: 520px) {
    .business-loan #content .reason .com_title,
    .abl #content .reason .com_title {
      margin-bottom: 0; } }
  .business-loan #content .reason .reason_in,
  .abl #content .reason .reason_in {
    position: relative;
    margin-bottom: 60px; }
    @media screen and (max-width: 520px) {
      .business-loan #content .reason .reason_in,
      .abl #content .reason .reason_in {
        margin-bottom: 20px; } }
    .business-loan #content .reason .reason_in.type2 .inner,
    .abl #content .reason .reason_in.type2 .inner {
      justify-content: flex-end; }
      .business-loan #content .reason .reason_in.type2 .inner .txBox,
      .abl #content .reason .reason_in.type2 .inner .txBox {
        padding: 30px 0 30px 30px; }
        @media screen and (max-width: 767px) {
          .business-loan #content .reason .reason_in.type2 .inner .txBox,
          .abl #content .reason .reason_in.type2 .inner .txBox {
            width: 100%;
            padding: 30px; } }
        @media screen and (max-width: 520px) {
          .business-loan #content .reason .reason_in.type2 .inner .txBox,
          .abl #content .reason .reason_in.type2 .inner .txBox {
            padding: 25px 0; } }
    .business-loan #content .reason .reason_in.type2 .back .lBox,
    .abl #content .reason .reason_in.type2 .back .lBox {
      order: 2; }
    .business-loan #content .reason .reason_in.type2 .back .rBox,
    .abl #content .reason .reason_in.type2 .back .rBox {
      order: 1; }
    .business-loan #content .reason .reason_in .inner,
    .abl #content .reason .reason_in .inner {
      position: relative;
      z-index: 1;
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
      .business-loan #content .reason .reason_in .inner .txBox,
      .abl #content .reason .reason_in .inner .txBox {
        width: 50%;
        background-color: #FFF;
        padding: 30px 30px 30px 0; }
        @media screen and (max-width: 767px) {
          .business-loan #content .reason .reason_in .inner .txBox,
          .abl #content .reason .reason_in .inner .txBox {
            width: 100%;
            padding: 30px; } }
        @media screen and (max-width: 520px) {
          .business-loan #content .reason .reason_in .inner .txBox,
          .abl #content .reason .reason_in .inner .txBox {
            padding: 25px 0; } }
        .business-loan #content .reason .reason_in .inner .txBox .title,
        .abl #content .reason .reason_in .inner .txBox .title {
          position: relative; }
          .business-loan #content .reason .reason_in .inner .txBox .title span,
          .abl #content .reason .reason_in .inner .txBox .title span {
            position: absolute;
            top: 50%;
            left: 0;
            z-index: 0;
            color: #F0F0F0;
            font-size: 76px;
            -webkit-transform: translate(0%, -50%);
            -moz-transform: translate(0%, -50%);
            -ms-transform: translate(0%, -50%);
            -o-transform: translate(0%, -50%);
            transform: translate(0%, -50%);
            line-height: 100%; }
            @media screen and (max-width: 520px) {
              .business-loan #content .reason .reason_in .inner .txBox .title span,
              .abl #content .reason .reason_in .inner .txBox .title span {
                font-size: 50px; } }
          .business-loan #content .reason .reason_in .inner .txBox .title h3,
          .abl #content .reason .reason_in .inner .txBox .title h3 {
            font-size: 32px;
            padding: 30px 0 20px 20px;
            position: relative;
            z-index: 1; }
            @media screen and (max-width: 520px) {
              .business-loan #content .reason .reason_in .inner .txBox .title h3,
              .abl #content .reason .reason_in .inner .txBox .title h3 {
                font-size: 20px;
                padding: 10px 0 10px 20px; } }
    .business-loan #content .reason .reason_in .back,
    .abl #content .reason .reason_in .back {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      display: flex;
      justify-content: space-between;
      z-index: 0; }
      @media screen and (max-width: 767px) {
        .business-loan #content .reason .reason_in .back,
        .abl #content .reason .reason_in .back {
          flex-wrap: wrap;
          position: relative;
          top: auto;
          left: auto; } }
      @media screen and (max-width: 520px) {
        .business-loan #content .reason .reason_in .back,
        .abl #content .reason .reason_in .back {
          height: 220px; } }
      .business-loan #content .reason .reason_in .back .lBox,
      .abl #content .reason .reason_in .back .lBox {
        width: 50%; }
        @media screen and (max-width: 767px) {
          .business-loan #content .reason .reason_in .back .lBox,
          .abl #content .reason .reason_in .back .lBox {
            width: 0; } }
      .business-loan #content .reason .reason_in .back .rBox,
      .abl #content .reason .reason_in .back .rBox {
        width: 50%;
        position: relative; }
        @media screen and (max-width: 767px) {
          .business-loan #content .reason .reason_in .back .rBox,
          .abl #content .reason .reason_in .back .rBox {
            width: 100%; } }
        .business-loan #content .reason .reason_in .back .rBox img,
        .abl #content .reason .reason_in .back .rBox img {
          object-fit: cover;
          width: 100%;
          height: 100%; }
.business-loan #content .contact_cta,
.abl #content .contact_cta {
  background-color: #F4F9FF;
  padding: 80px 0; }
  @media screen and (max-width: 520px) {
    .business-loan #content .contact_cta,
    .abl #content .contact_cta {
      padding: 20px 0; } }
  .business-loan #content .contact_cta .inner h2,
  .abl #content .contact_cta .inner h2 {
    text-align: center;
    font-size: 36px;
    padding: 0 0 50px; }
    @media screen and (max-width: 1000px) {
      .business-loan #content .contact_cta .inner h2,
      .abl #content .contact_cta .inner h2 {
        font-size: 24px; } }
    @media screen and (max-width: 520px) {
      .business-loan #content .contact_cta .inner h2,
      .abl #content .contact_cta .inner h2 {
        font-size: 20px;
        padding: 0 0 10px; } }
  .business-loan #content .contact_cta .inner .button,
  .abl #content .contact_cta .inner .button {
    text-align: center; }
    .business-loan #content .contact_cta .inner .button a,
    .abl #content .contact_cta .inner .button a {
      display: inline-block;
      width: 400px;
      color: #FFF;
      font-size: 22px;
      font-weight: 700;
      border-radius: 10px;
      padding: 20px 10px;
      border: none;
      background: linear-gradient(91deg, #ff3d24 0%, #f28e26 100%); }
      @media screen and (max-width: 520px) {
        .business-loan #content .contact_cta .inner .button a,
        .abl #content .contact_cta .inner .button a {
          width: 80%;
          font-size: 16px; } }
.business-loan #content .flow,
.abl #content .flow {
  padding: 80px 0 60px; }
  @media screen and (max-width: 520px) {
    .business-loan #content .flow,
    .abl #content .flow {
      padding: 40px 0 30px; } }
  .business-loan #content .flow .flowBox,
  .abl #content .flow .flowBox {
    padding: 15px 0 0 0;
    max-width: 780px;
    margin: 0 auto; }
    .business-loan #content .flow .flowBox .flex,
    .abl #content .flow .flowBox .flex {
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap; }
      @media screen and (max-width: 520px) {
        .business-loan #content .flow .flowBox .flex,
        .abl #content .flow .flowBox .flex {
          align-items: flex-start; } }
      .business-loan #content .flow .flowBox .flex:last-child .lBox:after,
      .abl #content .flow .flowBox .flex:last-child .lBox:after {
        display: none; }
      .business-loan #content .flow .flowBox .flex:last-child .rBox,
      .abl #content .flow .flowBox .flex:last-child .rBox {
        border-bottom: none; }
      .business-loan #content .flow .flowBox .flex .lBox,
      .abl #content .flow .flowBox .flex .lBox {
        width: 150px;
        min-height: 190px;
        padding: 20px 0 0 0;
        position: relative; }
        @media screen and (max-width: 520px) {
          .business-loan #content .flow .flowBox .flex .lBox,
          .abl #content .flow .flowBox .flex .lBox {
            width: 100px;
            min-height: 0; } }
        @media screen and (max-width: 400px) {
          .business-loan #content .flow .flowBox .flex .lBox,
          .abl #content .flow .flowBox .flex .lBox {
            width: 70px; } }
        .business-loan #content .flow .flowBox .flex .lBox:after,
        .abl #content .flow .flowBox .flex .lBox:after {
          content: "";
          width: 32px;
          height: 30px;
          background-color: #124193;
          clip-path: polygon(0 0, 50% 100%, 100% 0);
          position: absolute;
          bottom: -15px;
          left: 50%;
          -webkit-transform: translate(-50%, 0%);
          -moz-transform: translate(-50%, 0%);
          -ms-transform: translate(-50%, 0%);
          -o-transform: translate(-50%, 0%);
          transform: translate(-50%, 0%); }
          @media screen and (max-width: 520px) {
            .business-loan #content .flow .flowBox .flex .lBox:after,
            .abl #content .flow .flowBox .flex .lBox:after {
              bottom: -35px; } }
      .business-loan #content .flow .flowBox .flex .rBox,
      .abl #content .flow .flowBox .flex .rBox {
        width: calc(100% - 190px);
        padding: 20px 0 30px;
        border-bottom: 1px solid #049EDE; }
        @media screen and (max-width: 520px) {
          .business-loan #content .flow .flowBox .flex .rBox,
          .abl #content .flow .flowBox .flex .rBox {
            width: calc(100% - 120px); } }
        @media screen and (max-width: 400px) {
          .business-loan #content .flow .flowBox .flex .rBox,
          .abl #content .flow .flowBox .flex .rBox {
            width: calc(100% - 90px); } }
        .business-loan #content .flow .flowBox .flex .rBox h3,
        .abl #content .flow .flowBox .flex .rBox h3 {
          font-size: 24px;
          color: #124193;
          letter-spacing: 0.1em;
          padding: 0 0 25px; }
          @media screen and (max-width: 400px) {
            .business-loan #content .flow .flowBox .flex .rBox h3,
            .abl #content .flow .flowBox .flex .rBox h3 {
              font-size: 18px;
              padding: 0 0 10px; } }
        .business-loan #content .flow .flowBox .flex .rBox p,
        .abl #content .flow .flowBox .flex .rBox p {
          line-height: 24px;
          letter-spacing: 0.1em; }
          @media screen and (max-width: 400px) {
            .business-loan #content .flow .flowBox .flex .rBox p,
            .abl #content .flow .flowBox .flex .rBox p {
              line-height: 160%; } }
@media screen and (max-width: 600px) {
  .business-loan #content .faqBox,
  .abl #content .faqBox {
    padding: 50px 0 0; } }
.business-loan #content .faqBox .in,
.abl #content .faqBox .in {
  box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.1), -1px -1px 5px rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  padding: 20px 20px;
  margin: 0 0 20px;
  position: relative; }
  @media screen and (max-width: 520px) {
    .business-loan #content .faqBox .in,
    .abl #content .faqBox .in {
      padding: 10px; } }
  .business-loan #content .faqBox .in:before, .business-loan #content .faqBox .in:after,
  .abl #content .faqBox .in:before,
  .abl #content .faqBox .in:after {
    content: "";
    background-color: #134294;
    width: 18px;
    height: 2px;
    position: absolute;
    top: 40px;
    right: 20px; }
    @media screen and (max-width: 520px) {
      .business-loan #content .faqBox .in:before, .business-loan #content .faqBox .in:after,
      .abl #content .faqBox .in:before,
      .abl #content .faqBox .in:after {
        right: 10px;
        top: 50%;
        -webkit-transform: translate(0%, -50%);
        -moz-transform: translate(0%, -50%);
        -ms-transform: translate(0%, -50%);
        -o-transform: translate(0%, -50%);
        transform: translate(0%, -50%); } }
  .business-loan #content .faqBox .in:after,
  .abl #content .faqBox .in:after {
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    transform: rotate(90deg); }
    @media screen and (max-width: 520px) {
      .business-loan #content .faqBox .in:after,
      .abl #content .faqBox .in:after {
        -webkit-transform: translate(0%, -50%) rotate(90deg);
        -moz-transform: translate(0%, -50%) rotate(90deg);
        -ms-transform: translate(0%, -50%) rotate(90deg);
        -o-transform: translate(0%, -50%) rotate(90deg);
        transform: translate(0%, -50%) rotate(90deg); } }
  .business-loan #content .faqBox .in.open:after,
  .abl #content .faqBox .in.open:after {
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    transform: rotate(0deg); }
    @media screen and (max-width: 520px) {
      .business-loan #content .faqBox .in.open:after,
      .abl #content .faqBox .in.open:after {
        -webkit-transform: translate(0%, 0%) rotate(0deg);
        -moz-transform: translate(0%, 0%) rotate(0deg);
        -ms-transform: translate(0%, 0%) rotate(0deg);
        -o-transform: translate(0%, 0%) rotate(0deg);
        transform: translate(0%, 0%) rotate(0deg);
        top: 30px; } }
  @media screen and (max-width: 520px) {
    .business-loan #content .faqBox .in.open:before,
    .abl #content .faqBox .in.open:before {
      top: 30px; } }
  .business-loan #content .faqBox .in.open .qTx,
  .abl #content .faqBox .in.open .qTx {
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    margin: 0 0 10px;
    min-height: 0px; }
  .business-loan #content .faqBox .in.open .aTx,
  .abl #content .faqBox .in.open .aTx {
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    opacity: 1;
    visibility: visible;
    padding: 10px 0 0 2.5em;
    height: auto;
    display: block !important; }
  .business-loan #content .faqBox .in .qTx,
  .abl #content .faqBox .in .qTx {
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    font-size: 20px;
    letter-spacing: 0.1em;
    line-height: 29px;
    position: relative;
    padding: 5px 20px 5px 2.5em;
    margin: 0;
    cursor: pointer; }
    @media screen and (max-width: 520px) {
      .business-loan #content .faqBox .in .qTx,
      .abl #content .faqBox .in .qTx {
        font-size: 16px;
        line-height: 140%;
        min-height: 50px;
        display: flex;
        justify-content: flex-start;
        align-items: center; } }
    .business-loan #content .faqBox .in .qTx:before,
    .abl #content .faqBox .in .qTx:before {
      content: "Q";
      font-size: 33px;
      font-weight: 700;
      color: #134294;
      position: absolute;
      top: 50%;
      left: 5px;
      -webkit-transform: translate(0%, -50%);
      -moz-transform: translate(0%, -50%);
      -ms-transform: translate(0%, -50%);
      -o-transform: translate(0%, -50%);
      transform: translate(0%, -50%); }
      @media screen and (max-width: 520px) {
        .business-loan #content .faqBox .in .qTx:before,
        .abl #content .faqBox .in .qTx:before {
          font-size: 24px; } }
  .business-loan #content .faqBox .in .aTx,
  .abl #content .faqBox .in .aTx {
    height: 0;
    opacity: 0;
    visibility: hidden;
    font-size: 18px;
    letter-spacing: 0.1em;
    line-height: 36px;
    position: relative;
    border-top: 1px solid #E3E3E3;
    padding: 0; }
    @media screen and (max-width: 520px) {
      .business-loan #content .faqBox .in .aTx,
      .abl #content .faqBox .in .aTx {
        font-size: 14px;
        line-height: 160%; } }
    .business-loan #content .faqBox .in .aTx:before,
    .abl #content .faqBox .in .aTx:before {
      content: "A";
      font-size: 33px;
      font-weight: 700;
      color: #BC0000;
      position: absolute;
      top: 10px;
      left: 7px; }
      @media screen and (max-width: 520px) {
        .business-loan #content .faqBox .in .aTx:before,
        .abl #content .faqBox .in .aTx:before {
          font-size: 24px; } }

/*====================================
　ご利用の流れ
=====================================*/
.guide {
  background-color: #F4F9FF; }
  .guide #content {
    padding-bottom: 0; }
    .guide #content .inner .flowBox .inBox {
      position: relative;
      padding: 20px 40px;
      margin-bottom: 70px;
      background-color: #FFF;
      border-radius: 20px;
      box-shadow: 0 5px 17px rgba(0, 0, 0, 0.1);
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      align-items: center; }
      @media screen and (max-width: 600px) {
        .guide #content .inner .flowBox .inBox {
          align-items: flex-start; } }
      @media screen and (max-width: 520px) {
        .guide #content .inner .flowBox .inBox {
          padding: 20px;
          border-radius: 10px; } }
      .guide #content .inner .flowBox .inBox:last-child:after {
        display: none; }
      .guide #content .inner .flowBox .inBox:after {
        content: "";
        position: absolute;
        left: 50%;
        bottom: -50px;
        width: 100px;
        height: 30px;
        -webkit-transform: translate(-50%, 0%);
        -moz-transform: translate(-50%, 0%);
        -ms-transform: translate(-50%, 0%);
        -o-transform: translate(-50%, 0%);
        transform: translate(-50%, 0%);
        background-color: #E1EEFF;
        clip-path: polygon(100% 0, 0 0, 50% 100%); }
      .guide #content .inner .flowBox .inBox .num {
        width: 120px;
        color: #124193;
        text-align: center;
        padding: 0 20px 0 0; }
        @media screen and (max-width: 600px) {
          .guide #content .inner .flowBox .inBox .num {
            width: auto;
            padding: 0 20px 0 0; } }
        @media screen and (max-width: 520px) {
          .guide #content .inner .flowBox .inBox .num {
            width: 100%;
            padding: 0 0 10px; } }
        .guide #content .inner .flowBox .inBox .num p {
          font-weight: 700;
          line-height: 100%; }
          .guide #content .inner .flowBox .inBox .num p.tx1 {
            font-size: 20px; }
            @media screen and (max-width: 600px) {
              .guide #content .inner .flowBox .inBox .num p.tx1 {
                font-size: 16px; } }
            @media screen and (max-width: 520px) {
              .guide #content .inner .flowBox .inBox .num p.tx1 {
                padding: 0; } }
          .guide #content .inner .flowBox .inBox .num p.tx2 {
            font-size: 56px; }
            @media screen and (max-width: 600px) {
              .guide #content .inner .flowBox .inBox .num p.tx2 {
                font-size: 24px; } }
      .guide #content .inner .flowBox .inBox .rBox {
        border-left: 1px solid #124193;
        width: calc(100% - 120px);
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        align-items: center;
        padding: 0 0 0 20px; }
        @media screen and (max-width: 600px) {
          .guide #content .inner .flowBox .inBox .rBox {
            width: calc(100% - 70px); } }
        @media screen and (max-width: 520px) {
          .guide #content .inner .flowBox .inBox .rBox {
            width: 100%;
            border-left: none;
            border-top: 1px solid #124193;
            padding: 10px 0 0 0; } }
        .guide #content .inner .flowBox .inBox .rBox .txBox {
          width: calc(100% - 300px); }
          @media screen and (max-width: 1000px) {
            .guide #content .inner .flowBox .inBox .rBox .txBox {
              width: 100%;
              padding: 0 0 20px; } }
          .guide #content .inner .flowBox .inBox .rBox .txBox h2 {
            font-size: 30px;
            padding: 0 0 20px; }
            @media screen and (max-width: 600px) {
              .guide #content .inner .flowBox .inBox .rBox .txBox h2 {
                font-size: 24px; } }
            @media screen and (max-width: 520px) {
              .guide #content .inner .flowBox .inBox .rBox .txBox h2 {
                font-size: 20px; } }
          .guide #content .inner .flowBox .inBox .rBox .txBox p {
            font-size: 18px;
            line-height: 42px;
            left: 0.06em; }
            @media screen and (max-width: 600px) {
              .guide #content .inner .flowBox .inBox .rBox .txBox p {
                font-size: 16px;
                line-height: 160%; } }
            @media screen and (max-width: 520px) {
              .guide #content .inner .flowBox .inBox .rBox .txBox p {
                font-size: 15px;
                line-height: 150%; } }
        .guide #content .inner .flowBox .inBox .rBox .imgBox {
          width: 280px; }
          @media screen and (max-width: 1000px) {
            .guide #content .inner .flowBox .inBox .rBox .imgBox {
              width: 100%; } }
    .guide #content .formArea {
      background-color: #FFF; }

/*====================================
　プライバシーポリシー
=====================================*/
.privacy-policy #content,
.contents-policy #content,
.policy #content {
  padding: 30px 0 0; }
  .privacy-policy #content p,
  .contents-policy #content p,
  .policy #content p {
    line-height: 32px;
    letter-spacing: 0.06em; }
    .privacy-policy #content p.tx,
    .contents-policy #content p.tx,
    .policy #content p.tx {
      padding: 0 0 30px; }
  .privacy-policy #content .section,
  .contents-policy #content .section,
  .policy #content .section {
    padding: 0 0 60px; }
    @media screen and (max-width: 520px) {
      .privacy-policy #content .section,
      .contents-policy #content .section,
      .policy #content .section {
        padding: 0 0 30px; } }
  .privacy-policy #content .box,
  .contents-policy #content .box,
  .policy #content .box {
    padding: 0 0 20px; }
    @media screen and (max-width: 520px) {
      .privacy-policy #content .box,
      .contents-policy #content .box,
      .policy #content .box {
        padding: 0 0 10px; } }
    .privacy-policy #content .box h3,
    .contents-policy #content .box h3,
    .policy #content .box h3 {
      font-size: 24px;
      font-weight: 600;
      padding: 0 0 10px; }
      @media screen and (max-width: 520px) {
        .privacy-policy #content .box h3,
        .contents-policy #content .box h3,
        .policy #content .box h3 {
          font-size: 18px; } }
    .privacy-policy #content .box p,
    .contents-policy #content .box p,
    .policy #content .box p {
      color: #333333;
      font-size: 18px;
      font-weight: 400;
      padding: 0 0 20px; }
      @media screen and (max-width: 520px) {
        .privacy-policy #content .box p,
        .contents-policy #content .box p,
        .policy #content .box p {
          font-size: 14px;
          line-height: 160%; } }
    .privacy-policy #content .box .tx,
    .contents-policy #content .box .tx,
    .policy #content .box .tx {
      font-weight: 900; }
    .privacy-policy #content .box .in,
    .contents-policy #content .box .in,
    .policy #content .box .in {
      padding: 0 0 10px; }
      .privacy-policy #content .box .in p.parT,
      .contents-policy #content .box .in p.parT,
      .policy #content .box .in p.parT {
        padding: 0 0 0 1.3em;
        position: relative;
        font-weight: 700; }
        .privacy-policy #content .box .in p.parT span,
        .contents-policy #content .box .in p.parT span,
        .policy #content .box .in p.parT span {
          position: absolute;
          top: 0;
          left: 0; }
      .privacy-policy #content .box .in p.chi,
      .contents-policy #content .box .in p.chi,
      .policy #content .box .in p.chi {
        padding: 0 0 0 1.3em; }
    .privacy-policy #content .box ul li,
    .privacy-policy #content .box ol li,
    .contents-policy #content .box ul li,
    .contents-policy #content .box ol li,
    .policy #content .box ul li,
    .policy #content .box ol li {
      font-size: 18px;
      font-weight: 400;
      list-style-type: none;
      position: relative;
      line-height: 32px;
      letter-spacing: 0.06em;
      padding: 0 0 0 1em;
      color: #333333; }
      @media screen and (max-width: 520px) {
        .privacy-policy #content .box ul li,
        .privacy-policy #content .box ol li,
        .contents-policy #content .box ul li,
        .contents-policy #content .box ol li,
        .policy #content .box ul li,
        .policy #content .box ol li {
          font-size: 14px;
          line-height: 160%; } }
      .privacy-policy #content .box ul li:before,
      .privacy-policy #content .box ol li:before,
      .contents-policy #content .box ul li:before,
      .contents-policy #content .box ol li:before,
      .policy #content .box ul li:before,
      .policy #content .box ol li:before {
        content: "・";
        position: absolute;
        left: 0;
        top: 0; }
    .privacy-policy #content .box ul.num li,
    .privacy-policy #content .box ol.num li,
    .contents-policy #content .box ul.num li,
    .contents-policy #content .box ol.num li,
    .policy #content .box ul.num li,
    .policy #content .box ol.num li {
      padding: 5px 0 5px 1.3em; }
      .privacy-policy #content .box ul.num li:before,
      .privacy-policy #content .box ol.num li:before,
      .contents-policy #content .box ul.num li:before,
      .contents-policy #content .box ol.num li:before,
      .policy #content .box ul.num li:before,
      .policy #content .box ol.num li:before {
        display: none; }
      .privacy-policy #content .box ul.num li span,
      .privacy-policy #content .box ol.num li span,
      .contents-policy #content .box ul.num li span,
      .contents-policy #content .box ol.num li span,
      .policy #content .box ul.num li span,
      .policy #content .box ol.num li span {
        position: absolute;
        left: 0;
        top: 5px; }
    .privacy-policy #content .box ol,
    .contents-policy #content .box ol,
    .policy #content .box ol {
      margin: 0 0 0 1.5em; }
      .privacy-policy #content .box ol li,
      .contents-policy #content .box ol li,
      .policy #content .box ol li {
        list-style: decimal;
        padding: 0 10px 5px 0; }
        .privacy-policy #content .box ol li:before,
        .contents-policy #content .box ol li:before,
        .policy #content .box ol li:before {
          display: none; }
        .privacy-policy #content .box ol li ul,
        .contents-policy #content .box ol li ul,
        .policy #content .box ol li ul {
          padding: 0 0 20px; }
          .privacy-policy #content .box ol li ul li,
          .contents-policy #content .box ol li ul li,
          .policy #content .box ol li ul li {
            list-style: none;
            padding: 0 10px 5px 2em; }
            .privacy-policy #content .box ol li ul li span,
            .contents-policy #content .box ol li ul li span,
            .policy #content .box ol li ul li span {
              position: absolute;
              top: 0;
              left: 0; }
  .privacy-policy #content .privacyBox,
  .contents-policy #content .privacyBox,
  .policy #content .privacyBox {
    background-color: #F4F9FF;
    padding: 70px 0; }
    @media screen and (max-width: 520px) {
      .privacy-policy #content .privacyBox,
      .contents-policy #content .privacyBox,
      .policy #content .privacyBox {
        padding: 35px 0; } }
    .privacy-policy #content .privacyBox .tx,
    .contents-policy #content .privacyBox .tx,
    .policy #content .privacyBox .tx {
      text-align: center;
      font-size: 24px;
      font-weight: 700;
      letter-spacing: 0.1em;
      line-height: 35px; }
      @media screen and (max-width: 520px) {
        .privacy-policy #content .privacyBox .tx,
        .contents-policy #content .privacyBox .tx,
        .policy #content .privacyBox .tx {
          font-size: 20px; } }
    .privacy-policy #content .privacyBox .flexBox,
    .contents-policy #content .privacyBox .flexBox,
    .policy #content .privacyBox .flexBox {
      display: flex;
      justify-content: flex-start;
      flex-wrap: wrap;
      gap: 0 2%; }
      @media screen and (max-width: 520px) {
        .privacy-policy #content .privacyBox .flexBox,
        .contents-policy #content .privacyBox .flexBox,
        .policy #content .privacyBox .flexBox {
          gap: 0 0; } }
      .privacy-policy #content .privacyBox .flexBox .inBox,
      .contents-policy #content .privacyBox .flexBox .inBox,
      .policy #content .privacyBox .flexBox .inBox {
        width: 32%;
        border-radius: 20px;
        overflow: hidden;
        background-color: #FFF; }
        @media screen and (max-width: 520px) {
          .privacy-policy #content .privacyBox .flexBox .inBox,
          .contents-policy #content .privacyBox .flexBox .inBox,
          .policy #content .privacyBox .flexBox .inBox {
            width: 100%;
            display: flex;
            justify-content: space-between;
            margin: 10px 0; } }
        .privacy-policy #content .privacyBox .flexBox .inBox .imgBox,
        .contents-policy #content .privacyBox .flexBox .inBox .imgBox,
        .policy #content .privacyBox .flexBox .inBox .imgBox {
          width: 100%; }
          @media screen and (max-width: 520px) {
            .privacy-policy #content .privacyBox .flexBox .inBox .imgBox,
            .contents-policy #content .privacyBox .flexBox .inBox .imgBox,
            .policy #content .privacyBox .flexBox .inBox .imgBox {
              width: 45%;
              position: relative;
              overflow: hidden; } }
          .privacy-policy #content .privacyBox .flexBox .inBox .imgBox img,
          .contents-policy #content .privacyBox .flexBox .inBox .imgBox img,
          .policy #content .privacyBox .flexBox .inBox .imgBox img {
            max-width: none;
            width: 100%;
            height: auto; }
            @media screen and (max-width: 520px) {
              .privacy-policy #content .privacyBox .flexBox .inBox .imgBox img,
              .contents-policy #content .privacyBox .flexBox .inBox .imgBox img,
              .policy #content .privacyBox .flexBox .inBox .imgBox img {
                position: absolute;
                top: 50%;
                left: 50%;
                -webkit-transform: translate(-50%, -50%);
                -moz-transform: translate(-50%, -50%);
                -ms-transform: translate(-50%, -50%);
                -o-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
                height: 100%;
                width: auto; } }
        .privacy-policy #content .privacyBox .flexBox .inBox .txBox,
        .contents-policy #content .privacyBox .flexBox .inBox .txBox,
        .policy #content .privacyBox .flexBox .inBox .txBox {
          padding: 20px 10px; }
          @media screen and (max-width: 520px) {
            .privacy-policy #content .privacyBox .flexBox .inBox .txBox,
            .contents-policy #content .privacyBox .flexBox .inBox .txBox,
            .policy #content .privacyBox .flexBox .inBox .txBox {
              width: 55%;
              padding: 40px; } }
          @media screen and (max-width: 400px) {
            .privacy-policy #content .privacyBox .flexBox .inBox .txBox,
            .contents-policy #content .privacyBox .flexBox .inBox .txBox,
            .policy #content .privacyBox .flexBox .inBox .txBox {
              padding: 25px 10px; } }
          .privacy-policy #content .privacyBox .flexBox .inBox .txBox p,
          .contents-policy #content .privacyBox .flexBox .inBox .txBox p,
          .policy #content .privacyBox .flexBox .inBox .txBox p {
            font-weight: 600; }
            .privacy-policy #content .privacyBox .flexBox .inBox .txBox p span,
            .contents-policy #content .privacyBox .flexBox .inBox .txBox p span,
            .policy #content .privacyBox .flexBox .inBox .txBox p span {
              font-size: 20px; }
    .privacy-policy #content .privacyBox .btn a,
    .contents-policy #content .privacyBox .btn a,
    .policy #content .privacyBox .btn a {
      background-image: none;
      background-color: #124193;
      width: 260px;
      border-radius: 50px; }
    .privacy-policy #content .privacyBox .flowBox,
    .contents-policy #content .privacyBox .flowBox,
    .policy #content .privacyBox .flowBox {
      max-width: 780px;
      margin: 0 auto;
      padding: 15px 0 0 0; }
      .privacy-policy #content .privacyBox .flowBox .flex,
      .contents-policy #content .privacyBox .flowBox .flex,
      .policy #content .privacyBox .flowBox .flex {
        display: flex;
        justify-content: space-between;
        align-items: center;
        flex-wrap: wrap; }
        @media screen and (max-width: 520px) {
          .privacy-policy #content .privacyBox .flowBox .flex,
          .contents-policy #content .privacyBox .flowBox .flex,
          .policy #content .privacyBox .flowBox .flex {
            align-items: flex-start; } }
        .privacy-policy #content .privacyBox .flowBox .flex:last-child .lBox:after,
        .contents-policy #content .privacyBox .flowBox .flex:last-child .lBox:after,
        .policy #content .privacyBox .flowBox .flex:last-child .lBox:after {
          display: none; }
        .privacy-policy #content .privacyBox .flowBox .flex:last-child .rBox,
        .contents-policy #content .privacyBox .flowBox .flex:last-child .rBox,
        .policy #content .privacyBox .flowBox .flex:last-child .rBox {
          border-bottom: none; }
        .privacy-policy #content .privacyBox .flowBox .flex .lBox,
        .contents-policy #content .privacyBox .flowBox .flex .lBox,
        .policy #content .privacyBox .flowBox .flex .lBox {
          width: 150px;
          min-height: 190px;
          padding: 20px 0 0 0;
          position: relative; }
          @media screen and (max-width: 520px) {
            .privacy-policy #content .privacyBox .flowBox .flex .lBox,
            .contents-policy #content .privacyBox .flowBox .flex .lBox,
            .policy #content .privacyBox .flowBox .flex .lBox {
              width: 100px;
              min-height: 0; } }
          @media screen and (max-width: 400px) {
            .privacy-policy #content .privacyBox .flowBox .flex .lBox,
            .contents-policy #content .privacyBox .flowBox .flex .lBox,
            .policy #content .privacyBox .flowBox .flex .lBox {
              width: 70px; } }
          .privacy-policy #content .privacyBox .flowBox .flex .lBox:after,
          .contents-policy #content .privacyBox .flowBox .flex .lBox:after,
          .policy #content .privacyBox .flowBox .flex .lBox:after {
            content: "";
            width: 32px;
            height: 30px;
            background-color: #124193;
            clip-path: polygon(0 0, 50% 100%, 100% 0);
            position: absolute;
            bottom: -15px;
            left: 50%;
            -webkit-transform: translate(-50%, 0%);
            -moz-transform: translate(-50%, 0%);
            -ms-transform: translate(-50%, 0%);
            -o-transform: translate(-50%, 0%);
            transform: translate(-50%, 0%); }
            @media screen and (max-width: 520px) {
              .privacy-policy #content .privacyBox .flowBox .flex .lBox:after,
              .contents-policy #content .privacyBox .flowBox .flex .lBox:after,
              .policy #content .privacyBox .flowBox .flex .lBox:after {
                bottom: -35px; } }
        .privacy-policy #content .privacyBox .flowBox .flex .rBox,
        .contents-policy #content .privacyBox .flowBox .flex .rBox,
        .policy #content .privacyBox .flowBox .flex .rBox {
          width: calc(100% - 190px);
          padding: 20px 0 30px;
          border-bottom: 1px solid #049EDE; }
          @media screen and (max-width: 520px) {
            .privacy-policy #content .privacyBox .flowBox .flex .rBox,
            .contents-policy #content .privacyBox .flowBox .flex .rBox,
            .policy #content .privacyBox .flowBox .flex .rBox {
              width: calc(100% - 120px); } }
          @media screen and (max-width: 400px) {
            .privacy-policy #content .privacyBox .flowBox .flex .rBox,
            .contents-policy #content .privacyBox .flowBox .flex .rBox,
            .policy #content .privacyBox .flowBox .flex .rBox {
              width: calc(100% - 90px); } }
          .privacy-policy #content .privacyBox .flowBox .flex .rBox h3,
          .contents-policy #content .privacyBox .flowBox .flex .rBox h3,
          .policy #content .privacyBox .flowBox .flex .rBox h3 {
            font-size: 24px;
            color: #124193;
            letter-spacing: 0.1em;
            padding: 0 0 25px; }
            @media screen and (max-width: 400px) {
              .privacy-policy #content .privacyBox .flowBox .flex .rBox h3,
              .contents-policy #content .privacyBox .flowBox .flex .rBox h3,
              .policy #content .privacyBox .flowBox .flex .rBox h3 {
                font-size: 18px;
                padding: 0 0 10px; } }
          .privacy-policy #content .privacyBox .flowBox .flex .rBox p,
          .contents-policy #content .privacyBox .flowBox .flex .rBox p,
          .policy #content .privacyBox .flowBox .flex .rBox p {
            line-height: 24px;
            letter-spacing: 0.1em; }
            @media screen and (max-width: 400px) {
              .privacy-policy #content .privacyBox .flowBox .flex .rBox p,
              .contents-policy #content .privacyBox .flowBox .flex .rBox p,
              .policy #content .privacyBox .flowBox .flex .rBox p {
                line-height: 160%; } }

.policy #content .box {
  padding: 0 0 50px; }
  @media screen and (max-width: 520px) {
    .policy #content .box {
      padding: 0 0 20px; } }

/*====================================
　column
=====================================*/
@media screen and (max-width: 520px) {
  .column #content {
    padding: 0 0 30px; } }
.column #content .inner {
  max-width: 1080px; }
  @media screen and (max-width: 1120px) {
    .column #content .inner {
      padding: 0 20px; } }
  .column #content .inner .categoryBox {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 0 15px;
    padding: 0 0 70px; }
    @media screen and (max-width: 860px) {
      .column #content .inner .categoryBox {
        justify-content: flex-start;
        gap: 5px 10px; } }
    @media screen and (max-width: 520px) {
      .column #content .inner .categoryBox {
        padding: 0 0 35px; } }
    .column #content .inner .categoryBox .inBox {
      flex: 1; }
      @media screen and (max-width: 860px) {
        .column #content .inner .categoryBox .inBox {
          flex: none; } }
      .column #content .inner .categoryBox .inBox.current a {
        background-color: #FFF;
        color: #124193; }
      .column #content .inner .categoryBox .inBox a {
        background-color: #124193;
        display: block;
        border: 1px solid #124193;
        border-radius: 5px;
        color: #FFF;
        text-align: center;
        padding: 5px;
        font-size: 19px; }
        @media screen and (max-width: 520px) {
          .column #content .inner .categoryBox .inBox a {
            padding: 3px 5px;
            font-size: 12px; } }
        .column #content .inner .categoryBox .inBox a:hover {
          background-color: #FFF;
          color: #124193; }
  .column #content .inner .title {
    font-size: 24px;
    font-weight: 600;
    letter-spacing: 0.1em;
    padding: 0 0 30px;
    text-align: center; }
    @media screen and (max-width: 520px) {
      .column #content .inner .title {
        font-size: 20px; } }
  .column #content .inner .list {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 20px 2%; }
    .column #content .inner .list .inBox {
      width: 32%;
      max-width: 320px;
      overflow: hidden;
      box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.1); }
      @media screen and (max-width: 1000px) {
        .column #content .inner .list .inBox {
          width: 47%;
          max-width: none;
          padding: 0 0 30px; } }
      @media screen and (max-width: 520px) {
        .column #content .inner .list .inBox {
          width: 100%;
          max-width: none;
          padding: 0; } }
      .column #content .inner .list .inBox a {
        display: block; }
        .column #content .inner .list .inBox a:hover .imgBox img {
          width: 105%;
          height: 105%;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -ms-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }
      .column #content .inner .list .inBox .imgBox {
        position: relative;
        overflow: hidden;
        width: 100%;
        height: 210px; }
        @media screen and (max-width: 767px) {
          .column #content .inner .list .inBox .imgBox {
            height: 200px; } }
        .column #content .inner .list .inBox .imgBox img {
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -ms-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out;
          position: absolute;
          top: 50%;
          left: 50%;
          -webkit-transform: translate(-50%, -50%);
          -moz-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
          -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
          object-fit: cover;
          max-width: none;
          width: 100%;
          height: 100%; }
      .column #content .inner .list .inBox .txBox {
        padding: 5px 10px 20px;
        position: relative; }
        .column #content .inner .list .inBox .txBox .flex {
          display: flex;
          justify-content: space-between;
          align-items: center;
          padding: 0 0 5px; }
          .column #content .inner .list .inBox .txBox .flex .in_flex {
            display: flex;
            justify-content: flex-start;
            align-items: center;
            gap: 0 5px; }
            .column #content .inner .list .inBox .txBox .flex .in_flex span {
              background-color: #124193;
              color: #FFF;
              font-size: 12px;
              padding: 2px 5px; }
        .column #content .inner .list .inBox .txBox p {
          font-size: 20px;
          letter-spacing: 0.1em;
          line-height: 30px; }
          @media screen and (max-width: 520px) {
            .column #content .inner .list .inBox .txBox p {
              font-size: 14px;
              line-height: 26px; } }
          .column #content .inner .list .inBox .txBox p.time {
            color: #333333;
            font-size: 12px;
            padding: 0; }

/*====================================
　column
=====================================*/
.column.single .bread_crumb,
.post.single .bread_crumb {
  padding-top: 100px; }
.column.single #content,
.post.single #content {
  padding-top: 20px;
  padding-bottom: 0; }
  .column.single #content .inner,
  .post.single #content .inner {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    color: #333;
    max-width: 1080px; }
    @media screen and (max-width: 1120px) {
      .column.single #content .inner,
      .post.single #content .inner {
        padding: 0 20px; } }
    .column.single #content .inner .lBox,
    .post.single #content .inner .lBox {
      width: 654px; }
      @media screen and (max-width: 1240px) {
        .column.single #content .inner .lBox,
        .post.single #content .inner .lBox {
          width: 65%; } }
      @media screen and (max-width: 767px) {
        .column.single #content .inner .lBox,
        .post.single #content .inner .lBox {
          width: 100%; } }
    .column.single #content .inner .rBox,
    .post.single #content .inner .rBox {
      width: 320px; }
      @media screen and (max-width: 1240px) {
        .column.single #content .inner .rBox,
        .post.single #content .inner .rBox {
          width: 30%; } }
      @media screen and (max-width: 767px) {
        .column.single #content .inner .rBox,
        .post.single #content .inner .rBox {
          width: 100%;
          padding: 50px 0 0 0; } }
      .column.single #content .inner .rBox .st,
      .post.single #content .inner .rBox .st {
        position: sticky;
        top: 145px; }
      .column.single #content .inner .rBox .formBox,
      .post.single #content .inner .rBox .formBox {
        border: 1px solid #1A1A1A;
        border-radius: 10px;
        padding: 5px 5px 5px 10px;
        margin: 0 0 20px;
        display: flex;
        justify-content: space-between;
        align-items: center; }
        .column.single #content .inner .rBox .formBox .text,
        .post.single #content .inner .rBox .formBox .text {
          position: relative;
          border: none;
          padding: 0;
          width: calc(100% - 50px);
          outline: none; }
        .column.single #content .inner .rBox .formBox .search_submit,
        .post.single #content .inner .rBox .formBox .search_submit {
          background: url("../images/page/submit.webp") no-repeat center;
          background-size: 100%;
          width: 40px;
          height: 30px;
          border: none; }
      .column.single #content .inner .rBox .bnr,
      .post.single #content .inner .rBox .bnr {
        padding: 0 0 30px; }
        @media screen and (max-width: 767px) {
          .column.single #content .inner .rBox .bnr,
          .post.single #content .inner .rBox .bnr {
            text-align: center; } }
      .column.single #content .inner .rBox .title,
      .post.single #content .inner .rBox .title {
        font-size: 20px;
        font-weight: 700;
        padding: 0 0 5px;
        margin: 0 0 5px;
        border-bottom: 1px solid #C2C2C2;
        text-align: left; }
      .column.single #content .inner .rBox aside,
      .post.single #content .inner .rBox aside {
        padding: 5px 0 0 0; }
        .column.single #content .inner .rBox aside.box,
        .post.single #content .inner .rBox aside.box {
          padding: 0 0 30px; }
          .column.single #content .inner .rBox aside.box .flexBox,
          .post.single #content .inner .rBox aside.box .flexBox {
            padding: 10px 0;
            margin: 0;
            border-bottom: 1px solid #C2C2C2; }
            .column.single #content .inner .rBox aside.box .flexBox a,
            .post.single #content .inner .rBox aside.box .flexBox a {
              display: flex;
              justify-content: space-between;
              align-items: center; }
              .column.single #content .inner .rBox aside.box .flexBox a .imgBox,
              .post.single #content .inner .rBox aside.box .flexBox a .imgBox {
                width: 90px;
                height: 60px;
                overflow: hidden;
                border-radius: 5px;
                position: relative;
                background-color: #EFEFEF; }
                .column.single #content .inner .rBox aside.box .flexBox a .imgBox img,
                .post.single #content .inner .rBox aside.box .flexBox a .imgBox img {
                  position: absolute;
                  top: 50%;
                  left: 50%;
                  -webkit-transform: translate(-50%, -50%);
                  -moz-transform: translate(-50%, -50%);
                  -ms-transform: translate(-50%, -50%);
                  -o-transform: translate(-50%, -50%);
                  transform: translate(-50%, -50%);
                  max-width: none;
                  height: 100%;
                  width: auto; }
              .column.single #content .inner .rBox aside.box .flexBox a .txBox,
              .post.single #content .inner .rBox aside.box .flexBox a .txBox {
                width: calc(100% - 100px); }
                .column.single #content .inner .rBox aside.box .flexBox a .txBox p,
                .post.single #content .inner .rBox aside.box .flexBox a .txBox p {
                  padding: 0;
                  line-height: 24px; }
                  .column.single #content .inner .rBox aside.box .flexBox a .txBox p.time,
                  .post.single #content .inner .rBox aside.box .flexBox a .txBox p.time {
                    font-size: 12px; }
                  .column.single #content .inner .rBox aside.box .flexBox a .txBox p.tx,
                  .post.single #content .inner .rBox aside.box .flexBox a .txBox p.tx {
                    font-size: 12px; }
        .column.single #content .inner .rBox aside.cate,
        .post.single #content .inner .rBox aside.cate {
          background-color: #F4F9FF;
          border-radius: 10px;
          padding: 5px 20px;
          margin: 15px 0 0 0; }
          .column.single #content .inner .rBox aside.cate a,
          .post.single #content .inner .rBox aside.cate a {
            display: block;
            padding: 10px 0;
            border-bottom: 1px solid #C8DCFF; }
            .column.single #content .inner .rBox aside.cate a:last-child,
            .post.single #content .inner .rBox aside.cate a:last-child {
              border-bottom: none; }
    .column.single #content .inner h1,
    .post.single #content .inner h1 {
      font-size: 28px;
      padding: 20px 0; }
      @media screen and (max-width: 520px) {
        .column.single #content .inner h1,
        .post.single #content .inner h1 {
          font-size: 22px; } }
    .column.single #content .inner .sns,
    .post.single #content .inner .sns {
      display: flex;
      justify-content: flex-start;
      gap: 0 10px;
      padding: 0 0 20px; }
      .column.single #content .inner .sns a,
      .post.single #content .inner .sns a {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 30px;
        height: 30px;
        box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.1), -1px -1px 6px rgba(0, 0, 0, 0.1);
        border-radius: 50%; }
      .column.single #content .inner .sns .kansyu,
      .post.single #content .inner .sns .kansyu {
        margin-left: auto;
        font-size: 12px;
        padding: 5px 0 0 0; }
        .column.single #content .inner .sns .kansyu span,
        .post.single #content .inner .sns .kansyu span {
          background-color: #707070;
          position: relative;
          font-size: 10px;
          color: #FFF;
          padding: 2px 5px;
          height: 18px;
          margin: 0 15px 0 0; }
          .column.single #content .inner .sns .kansyu span:after,
          .post.single #content .inner .sns .kansyu span:after {
            position: absolute;
            content: "";
            right: -9.7px;
            top: 0;
            width: 10px;
            height: 19px;
            background-color: #707070;
            clip-path: polygon(0 0, 0% 100%, 100% 50%); }
    .column.single #content .inner .post_content .cateFlex,
    .post.single #content .inner .post_content .cateFlex {
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap; }
      @media screen and (max-width: 520px) {
        .column.single #content .inner .post_content .cateFlex,
        .post.single #content .inner .post_content .cateFlex {
          align-items: flex-start; } }
      .column.single #content .inner .post_content .cateFlex .lBox,
      .post.single #content .inner .post_content .cateFlex .lBox {
        width: auto; }
        .column.single #content .inner .post_content .cateFlex .lBox .cate,
        .post.single #content .inner .post_content .cateFlex .lBox .cate {
          display: flex;
          justify-content: flex-start;
          gap: 5px 10px; }
          @media screen and (max-width: 520px) {
            .column.single #content .inner .post_content .cateFlex .lBox .cate,
            .post.single #content .inner .post_content .cateFlex .lBox .cate {
              gap: 3px; } }
          .column.single #content .inner .post_content .cateFlex .lBox .cate div,
          .post.single #content .inner .post_content .cateFlex .lBox .cate div {
            border: 1px solid #124193;
            font-size: 12px;
            padding: 5px 15px;
            border-radius: 5px;
            color: #124193; }
            @media screen and (max-width: 520px) {
              .column.single #content .inner .post_content .cateFlex .lBox .cate div,
              .post.single #content .inner .post_content .cateFlex .lBox .cate div {
                padding: 3px;
                font-size: 10px; } }
        .column.single #content .inner .post_content .cateFlex .lBox .pr,
        .post.single #content .inner .post_content .cateFlex .lBox .pr {
          font-size: 12px; }
      .column.single #content .inner .post_content .cateFlex .rBox,
      .post.single #content .inner .post_content .cateFlex .rBox {
        width: auto; }
        @media screen and (max-width: 767px) {
          .column.single #content .inner .post_content .cateFlex .rBox,
          .post.single #content .inner .post_content .cateFlex .rBox {
            padding: 0; } }
        .column.single #content .inner .post_content .cateFlex .rBox .time,
        .post.single #content .inner .post_content .cateFlex .rBox .time {
          font-size: 12px;
          padding: 0;
          line-height: 20px; }
    .column.single #content .inner .single_content,
    .post.single #content .inner .single_content {
      min-height: 100px;
      line-height: 30px; }
      @media screen and (max-width: 520px) {
        .column.single #content .inner .single_content,
        .post.single #content .inner .single_content {
          white-space: normal;
          overflow-wrap: break-word; } }
      .column.single #content .inner .single_content #ez-toc-container,
      .post.single #content .inner .single_content #ez-toc-container {
        width: 100% !important;
        padding: 20px;
        box-shadow: 0 0 0 #FFF; }
        .column.single #content .inner .single_content #ez-toc-container p,
        .post.single #content .inner .single_content #ez-toc-container p {
          padding: 0;
          line-height: 160%; }
        .column.single #content .inner .single_content #ez-toc-container .ez-toc-title-container,
        .post.single #content .inner .single_content #ez-toc-container .ez-toc-title-container {
          display: flex;
          justify-content: space-between;
          align-items: center;
          padding: 10px 0; }
          .column.single #content .inner .single_content #ez-toc-container .ez-toc-title-container p,
          .post.single #content .inner .single_content #ez-toc-container .ez-toc-title-container p {
            text-align: center; }
            @media screen and (max-width: 520px) {
              .column.single #content .inner .single_content #ez-toc-container .ez-toc-title-container p,
              .post.single #content .inner .single_content #ez-toc-container .ez-toc-title-container p {
                text-align: left; } }
        .column.single #content .inner .single_content #ez-toc-container nav ul,
        .post.single #content .inner .single_content #ez-toc-container nav ul {
          padding: 0;
          margin: auto;
          background-color: transparent; }
          @media screen and (max-width: 520px) {
            .column.single #content .inner .single_content #ez-toc-container nav ul li,
            .post.single #content .inner .single_content #ez-toc-container nav ul li {
              line-height: 150%; } }
          .column.single #content .inner .single_content #ez-toc-container nav ul li ul,
          .post.single #content .inner .single_content #ez-toc-container nav ul li ul {
            margin: 0 0 0 1em; }
          .column.single #content .inner .single_content #ez-toc-container nav ul li a,
          .post.single #content .inner .single_content #ez-toc-container nav ul li a {
            text-decoration: none; }
      .column.single #content .inner .single_content section,
      .post.single #content .inner .single_content section {
        padding-bottom: 0; }
      .column.single #content .inner .single_content h2,
      .post.single #content .inner .single_content h2 {
        font-size: 25px;
        border: 1px solid #124193;
        border-radius: 3px;
        border-left: 5px solid #124193;
        text-align: left;
        padding: 10px;
        line-height: 30px;
        margin: 20px 0 20px; }
        @media screen and (max-width: 520px) {
          .column.single #content .inner .single_content h2,
          .post.single #content .inner .single_content h2 {
            font-size: 20px; } }
      .column.single #content .inner .single_content h3,
      .post.single #content .inner .single_content h3 {
        font-size: 22px;
        background-color: #F4F9FF;
        border-radius: 3px;
        padding: 10px 20px;
        margin: 20px 0 20px; }
        @media screen and (max-width: 520px) {
          .column.single #content .inner .single_content h3,
          .post.single #content .inner .single_content h3 {
            font-size: 18px; } }
      .column.single #content .inner .single_content h4,
      .post.single #content .inner .single_content h4 {
        font-size: 18px;
        margin: 20px 0 20px;
        padding: 10px 20px;
        border-bottom: 1px solid #878787; }
        @media screen and (max-width: 520px) {
          .column.single #content .inner .single_content h4,
          .post.single #content .inner .single_content h4 {
            font-size: 16px; } }
      .column.single #content .inner .single_content h5,
      .post.single #content .inner .single_content h5 {
        font-size: 16px;
        margin: 20px 0 40px; }
        @media screen and (max-width: 520px) {
          .column.single #content .inner .single_content h5,
          .post.single #content .inner .single_content h5 {
            font-size: 14px; } }
      .column.single #content .inner .single_content .wp-block-columns,
      .post.single #content .inner .single_content .wp-block-columns {
        padding: 0 0 0px; }
      .column.single #content .inner .single_content .wp-element-caption,
      .post.single #content .inner .single_content .wp-element-caption {
        font-size: 14px;
        padding: 10px 0; }
      .column.single #content .inner .single_content p,
      .post.single #content .inner .single_content p {
        width: 100%;
        line-height: 30px;
        padding: 0 0 1em 0; }
        @media screen and (max-width: 520px) {
          .column.single #content .inner .single_content p,
          .post.single #content .inner .single_content p {
            font-size: 15px;
            line-height: 28px; } }
        .column.single #content .inner .single_content p a,
        .post.single #content .inner .single_content p a {
          text-decoration: underline;
          color: #124193; }
      .column.single #content .inner .single_content .ht-diagram-title,
      .post.single #content .inner .single_content .ht-diagram-title {
        padding: 0; }
      .column.single #content .inner .single_content img,
      .post.single #content .inner .single_content img {
        margin: 0 auto 50px; }
        @media screen and (max-width: 520px) {
          .column.single #content .inner .single_content img,
          .post.single #content .inner .single_content img {
            margin: 0 auto 10px; } }
      .column.single #content .inner .single_content table,
      .post.single #content .inner .single_content table {
        margin: 0 auto 50px !important; }
        @media screen and (max-width: 520px) {
          .column.single #content .inner .single_content table,
          .post.single #content .inner .single_content table {
            table-layout: fixed;
            margin: 0 auto 50px !important; } }
        .column.single #content .inner .single_content table tr th,
        .post.single #content .inner .single_content table tr th {
          background-color: #F0F0F0; }
        .column.single #content .inner .single_content table tr th, .column.single #content .inner .single_content table tr td,
        .post.single #content .inner .single_content table tr th,
        .post.single #content .inner .single_content table tr td {
          border: 1px solid #D0D0D0;
          padding: 10px;
          width: auto !important; }
          @media screen and (max-width: 520px) {
            .column.single #content .inner .single_content table tr th, .column.single #content .inner .single_content table tr td,
            .post.single #content .inner .single_content table tr th,
            .post.single #content .inner .single_content table tr td {
              display: table-cell;
              font-size: 14px;
              padding: 5px; } }
      .column.single #content .inner .single_content ul,
      .post.single #content .inner .single_content ul {
        width: 100%; }
      .column.single #content .inner .single_content ol,
      .post.single #content .inner .single_content ol {
        margin: 0 0 30px 1em; }
        .column.single #content .inner .single_content ol li,
        .post.single #content .inner .single_content ol li {
          font-size: 16px;
          padding: 5px 0; }
      .column.single #content .inner .single_content .wp-block-image,
      .post.single #content .inner .single_content .wp-block-image {
        margin: 0 0 0 1em; }
        .column.single #content .inner .single_content .wp-block-image img,
        .post.single #content .inner .single_content .wp-block-image img {
          margin: 20px auto 50px; }
      .column.single #content .inner .single_content .wp-block-columns,
      .post.single #content .inner .single_content .wp-block-columns {
        margin: 0 0 0 1em; }
        @media screen and (max-width: 520px) {
          .column.single #content .inner .single_content .wp-block-columns,
          .post.single #content .inner .single_content .wp-block-columns {
            flex-wrap: wrap !important; } }
        @media screen and (max-width: 520px) {
          .column.single #content .inner .single_content .wp-block-columns .wp-block-image img,
          .post.single #content .inner .single_content .wp-block-columns .wp-block-image img {
            margin: 0 auto 20px; } }
      .column.single #content .inner .single_content .is-style-rounded,
      .post.single #content .inner .single_content .is-style-rounded {
        border-radius: 50px; }
        .column.single #content .inner .single_content .is-style-rounded img,
        .post.single #content .inner .single_content .is-style-rounded img {
          border-radius: 50px; }
      .column.single #content .inner .single_content .has-background,
      .post.single #content .inner .single_content .has-background {
        padding: 50px; }
        @media screen and (max-width: 520px) {
          .column.single #content .inner .single_content .has-background,
          .post.single #content .inner .single_content .has-background {
            padding: 20px; } }
      .column.single #content .inner .single_content blockquote,
      .post.single #content .inner .single_content blockquote {
        position: relative;
        padding: 50px 30px 30px;
        margin: 20px 0 40px;
        box-sizing: border-box;
        font-style: italic;
        background: #efefef;
        color: #555; }
        .column.single #content .inner .single_content blockquote:before,
        .post.single #content .inner .single_content blockquote:before {
          display: inline-block;
          position: absolute;
          top: 13px;
          left: 15px;
          content: "“";
          color: #cfcfcf;
          font-size: 50px;
          line-height: 1;
          font-weight: 900; }
        .column.single #content .inner .single_content blockquote cite,
        .post.single #content .inner .single_content blockquote cite {
          display: block;
          text-align: right;
          color: #888888;
          font-size: 0.9em; }
      .column.single #content .inner .single_content .btn,
      .post.single #content .inner .single_content .btn {
        text-align: center; }
        .column.single #content .inner .single_content .btn a,
        .post.single #content .inner .single_content .btn a {
          min-width: 300px;
          display: inline-block;
          border-radius: 50px;
          height: auto;
          padding: 15px;
          text-decoration: none;
          color: #FFF;
          font-size: 20px; }
      .column.single #content .inner .single_content .wp-block-button,
      .post.single #content .inner .single_content .wp-block-button {
        padding: 50px 0; }
        .column.single #content .inner .single_content .wp-block-button a, .column.single #content .inner .single_content .wp-block-button span,
        .post.single #content .inner .single_content .wp-block-button a,
        .post.single #content .inner .single_content .wp-block-button span {
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -ms-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out;
          position: relative;
          display: flex;
          justify-content: center;
          align-items: center;
          max-width: 400px;
          margin: 0 auto;
          height: 50px;
          padding: 9px 25px 9px 30px;
          line-height: 1.8;
          letter-spacing: 0.07em;
          text-decoration: none;
          transition: 0.3s ease-in-out;
          font-weight: 600;
          background: linear-gradient(90deg, #07378b 0%, #6498e1 100%);
          color: #FFF;
          border-radius: 20px;
          font-size: 14px;
          overflow: hidden;
          /*
          &:before,
          &:after{
          	z-index: -1;
          	@include css3(transition, 0.3s ease-in-out);  
          	content: "";
          	background: linear-gradient(90deg,rgba(#014188, 1) 0%, rgba(#04ACEB, 1) 100%);
          	width: 100%;
          	height: 100%;
          	position: absolute;
          	top: 0;
          	left: 0;
          }
          &:after{
          	opacity: 0;
          	background: linear-gradient(-90deg,rgba(#014188, 1) 0%, rgba(#04ACEB, 1) 100%);
          }
          &:hover{
          	&:after{
          		@include css3(transition, 0.3s ease-in-out);  
          		opacity: 1;
          	}
          }
          */ }
        .column.single #content .inner .single_content .wp-block-button a,
        .post.single #content .inner .single_content .wp-block-button a {
          width: 300px;
          display: inline-block;
          text-align: center; }
    .column.single #content .inner .bnrs,
    .post.single #content .inner .bnrs {
      margin-top: 50px;
      border: 3px solid #134294; }
      .column.single #content .inner .bnrs .con,
      .post.single #content .inner .bnrs .con {
        background: url("../images/page/singleBnr.webp") no-repeat center;
        background-size: cover;
        padding: 30px 40px; }
        @media screen and (max-width: 450px) {
          .column.single #content .inner .bnrs .con,
          .post.single #content .inner .bnrs .con {
            padding: 15px 10px; } }
        .column.single #content .inner .bnrs .con .head,
        .post.single #content .inner .bnrs .con .head {
          color: #FFF;
          font-size: 36px;
          font-weight: 800;
          text-align: center;
          padding: 0 0 30px;
          margin: 0 0 30px;
          border-bottom: 3px solid #FFF;
          line-height: 130%; }
          @media screen and (max-width: 520px) {
            .column.single #content .inner .bnrs .con .head,
            .post.single #content .inner .bnrs .con .head {
              font-size: 24px; } }
          @media screen and (max-width: 420px) {
            .column.single #content .inner .bnrs .con .head,
            .post.single #content .inner .bnrs .con .head {
              font-size: 20px;
              padding: 0 0 15px;
              margin: 0 0 15px; } }
        .column.single #content .inner .bnrs .con .in,
        .post.single #content .inner .bnrs .con .in {
          border: 1px solid #333;
          background-color: rgba(255, 255, 255, 0.8);
          border-radius: 50px;
          padding: 10px 20px;
          font-size: 20px;
          line-height: 26px;
          margin: 10px 0;
          font-weight: 600; }
          @media screen and (max-width: 520px) {
            .column.single #content .inner .bnrs .con .in,
            .post.single #content .inner .bnrs .con .in {
              font-size: 15px; } }
      .column.single #content .inner .bnrs .foot,
      .post.single #content .inner .bnrs .foot {
        background-color: #FFF;
        padding: 15px;
        display: flex;
        justify-content: space-between;
        align-items: center;
        font-weight: 600; }
        @media screen and (max-width: 700px) {
          .column.single #content .inner .bnrs .foot,
          .post.single #content .inner .bnrs .foot {
            flex-wrap: wrap;
            justify-content: center; } }
        .column.single #content .inner .bnrs .foot .button,
        .post.single #content .inner .bnrs .foot .button {
          background: linear-gradient(91deg, #ff3d24 0%, #f28e26 100%);
          border-radius: 50px;
          color: #FFF;
          padding: 10px 20px; }
          @media screen and (max-width: 700px) {
            .column.single #content .inner .bnrs .foot .button,
            .post.single #content .inner .bnrs .foot .button {
              margin: 10px 0 0 0;
              width: 70%;
              text-align: center; } }
    .column.single #content .inner .kansyuBox,
    .post.single #content .inner .kansyuBox {
      box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.1), -1px -1px 2px rgba(0, 0, 0, 0.1);
      border-radius: 10px;
      padding: 20px;
      display: flex;
      justify-content: space-between;
      align-items: flex-start;
      flex-wrap: wrap; }
      @media screen and (max-width: 520px) {
        .column.single #content .inner .kansyuBox,
        .post.single #content .inner .kansyuBox {
          align-items: center; } }
      .column.single #content .inner .kansyuBox .lBox,
      .post.single #content .inner .kansyuBox .lBox {
        width: 125px;
        height: 125px;
        overflow: hidden;
        border-radius: 50%; }
        @media screen and (max-width: 520px) {
          .column.single #content .inner .kansyuBox .lBox,
          .post.single #content .inner .kansyuBox .lBox {
            width: 60px;
            height: 60px; } }
      .column.single #content .inner .kansyuBox .rBox,
      .post.single #content .inner .kansyuBox .rBox {
        width: calc(100% - 140px); }
        @media screen and (max-width: 520px) {
          .column.single #content .inner .kansyuBox .rBox,
          .post.single #content .inner .kansyuBox .rBox {
            width: calc(100% - 70px);
            padding: 0 0 10px; } }
        .column.single #content .inner .kansyuBox .rBox .tx1,
        .post.single #content .inner .kansyuBox .rBox .tx1 {
          font-size: 18px;
          padding: 0 0 10px; }
          @media screen and (max-width: 520px) {
            .column.single #content .inner .kansyuBox .rBox .tx1,
            .post.single #content .inner .kansyuBox .rBox .tx1 {
              font-size: 15px; } }
          .column.single #content .inner .kansyuBox .rBox .tx1 span,
          .post.single #content .inner .kansyuBox .rBox .tx1 span {
            background-color: #707070;
            position: relative;
            font-size: 15px;
            color: #FFF;
            padding: 5px 10px;
            height: 31px;
            margin: 0 30px 0 0; }
            @media screen and (max-width: 520px) {
              .column.single #content .inner .kansyuBox .rBox .tx1 span,
              .post.single #content .inner .kansyuBox .rBox .tx1 span {
                font-size: 12px; } }
            .column.single #content .inner .kansyuBox .rBox .tx1 span:after,
            .post.single #content .inner .kansyuBox .rBox .tx1 span:after {
              position: absolute;
              content: "";
              right: -15px;
              top: 0;
              width: 15px;
              height: 31px;
              background-color: #707070;
              clip-path: polygon(0 0, 0% 100%, 100% 50%); }
              @media screen and (max-width: 520px) {
                .column.single #content .inner .kansyuBox .rBox .tx1 span:after,
                .post.single #content .inner .kansyuBox .rBox .tx1 span:after {
                  height: 27px; } }
        .column.single #content .inner .kansyuBox .rBox .tx2,
        .post.single #content .inner .kansyuBox .rBox .tx2 {
          padding: 0 0 20px;
          line-height: 30px;
          letter-spacing: 0; }
          @media screen and (max-width: 520px) {
            .column.single #content .inner .kansyuBox .rBox .tx2,
            .post.single #content .inner .kansyuBox .rBox .tx2 {
              padding: 0;
              font-size: 15px;
              line-height: 160%; } }
        @media screen and (max-width: 520px) {
          .column.single #content .inner .kansyuBox .rBox .tx3,
          .post.single #content .inner .kansyuBox .rBox .tx3 {
            display: none; } }
        .column.single #content .inner .kansyuBox .rBox .tx3 p,
        .post.single #content .inner .kansyuBox .rBox .tx3 p {
          line-height: 30px;
          letter-spacing: 0; }
      .column.single #content .inner .kansyuBox .tx4,
      .post.single #content .inner .kansyuBox .tx4 {
        display: none; }
        @media screen and (max-width: 520px) {
          .column.single #content .inner .kansyuBox .tx4,
          .post.single #content .inner .kansyuBox .tx4 {
            display: block;
            width: 100%; }
            .column.single #content .inner .kansyuBox .tx4 p,
            .post.single #content .inner .kansyuBox .tx4 p {
              line-height: 160%;
              font-size: 14px;
              letter-spacing: 0; } }
    .column.single #content .inner .kanrenBox h3,
    .post.single #content .inner .kanrenBox h3 {
      font-size: 24px;
      text-align: center;
      padding: 0 0 20px; }
    .column.single #content .inner .kanrenBox .inBox,
    .post.single #content .inner .kanrenBox .inBox {
      display: flex;
      justify-content: flex-start;
      flex-wrap: wrap;
      gap: 20px 2.5%; }
      @media screen and (max-width: 520px) {
        .column.single #content .inner .kanrenBox .inBox,
        .post.single #content .inner .kanrenBox .inBox {
          gap: 20px 2%; } }
      .column.single #content .inner .kanrenBox .inBox .in,
      .post.single #content .inner .kanrenBox .inBox .in {
        width: 31.6%;
        background-color: #FFF;
        overflow: hidden;
        border-radius: 10px;
        box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.1), -1px -1px 2px rgba(0, 0, 0, 0.1); }
        @media screen and (max-width: 520px) {
          .column.single #content .inner .kanrenBox .inBox .in,
          .post.single #content .inner .kanrenBox .inBox .in {
            width: 48%; } }
        .column.single #content .inner .kanrenBox .inBox .in a,
        .post.single #content .inner .kanrenBox .inBox .in a {
          display: block; }
          .column.single #content .inner .kanrenBox .inBox .in a .imgBox,
          .post.single #content .inner .kanrenBox .inBox .in a .imgBox {
            position: relative;
            width: 100%;
            height: 120px; }
            .column.single #content .inner .kanrenBox .inBox .in a .imgBox img,
            .post.single #content .inner .kanrenBox .inBox .in a .imgBox img {
              position: absolute;
              top: 50%;
              left: 50%;
              -webkit-transform: translate(-50%, -50%);
              -moz-transform: translate(-50%, -50%);
              -ms-transform: translate(-50%, -50%);
              -o-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
              object-fit: cover;
              max-width: none;
              width: 100%;
              height: 100%; }
          .column.single #content .inner .kanrenBox .inBox .in a .txBox,
          .post.single #content .inner .kanrenBox .inBox .in a .txBox {
            background-color: #FFF;
            padding: 10px 10px 20px; }
            .column.single #content .inner .kanrenBox .inBox .in a .txBox .tx,
            .post.single #content .inner .kanrenBox .inBox .in a .txBox .tx {
              font-weight: 500;
              line-height: 20px;
              letter-spacing: 0.1em;
              font-size: 13px; }
    .column.single #content .inner .kanrenBox .btn,
    .post.single #content .inner .kanrenBox .btn {
      padding: 30px 0; }
      .column.single #content .inner .kanrenBox .btn a,
      .post.single #content .inner .kanrenBox .btn a {
        width: 220px;
        border-radius: 50px;
        background-image: none;
        background-color: #124193; }

#content .postlink {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 50px 0 50px;
  width: 100%;
  gap: 0 2%; }
  @media screen and (max-width: 520px) {
    #content .postlink {
      padding: 30px 0; } }
  #content .postlink .box {
    width: 48%;
    min-height: 1px;
    			/*
                &.box_l{
                    text-align: left;
                    a{
                        justify-content: flex-start;
                    }
                }
                &.box_r{
                    text-align: right;
                    a{
                        justify-content: flex-end;
                    }
                }
                &.box_c{
                    text-align: center;
                    a{
                        color: #333;
                        font-weight: 700;
                    }
                }
    			*/ }
    @media screen and (max-width: 520px) {
      #content .postlink .box {
        padding: 0 10px; } }
    #content .postlink .box.box_l:empty, #content .postlink .box.box_r:empty {
      display: none; }
    #content .postlink .box.box_l a, #content .postlink .box.box_r a {
      background-color: #124193;
      color: #FFF;
      display: flex;
      justify-content: center;
      align-items: center;
      font-size: 22px;
      padding: 10px 30px;
      border-radius: 10px;
      text-align: center; }
      #content .postlink .box.box_l a span, #content .postlink .box.box_r a span {
        font-size: 16px;
        padding: 0 10px; }
        @media screen and (max-width: 520px) {
          #content .postlink .box.box_l a span, #content .postlink .box.box_r a span {
            display: none; } }

.search.single #content .inner {
  display: block; }

/*====================================
　404
=====================================*/
.not404 #container .inner {
  display: block; }
.not404 #container .error {
  position: relative;
  max-width: 960px;
  font-size: 18px;
  font-weight: 500;
  line-height: 200%;
  text-align: center;
  padding: 100px 0; }
  @media screen and (max-width: 520px) {
    .not404 #container .error {
      font-size: 14px;
      padding: 50px 0; } }
  .not404 #container .error p {
    padding: 0 0 1.5em; }
    .not404 #container .error p.title {
      font-size: 80px;
      font-weight: 700;
      text-align: center;
      padding: 0 0 80px; }
      @media screen and (max-width: 520px) {
        .not404 #container .error p.title {
          font-size: 24px; } }
  .not404 #container .error .btn {
    display: flex;
    justify-content: center; }
    .not404 #container .error .btn a {
      width: 280px; }

.thanks_area {
  text-align: center;
  font-size: 20px;
  line-height: 200%; }
  .thanks_area p {
    padding: 0 0 50px; }
@charset "UTF-8";
.faq-item {
  margin-bottom: 2em;
  border-bottom: 1px solid #eee;
  padding-bottom: 1.5em; }

.faq-question {
  font-weight: bold;
  font-size: 1.1em;
  display: flex;
  align-items: center; }

.faq-question::before {
  content: 'Q.';
  font-size: 1.5em;
  color: #0693e3;
  margin-right: 0.5em;
  font-weight: bold; }

.faq-answer {
  padding-top: 0.5em;
  padding-left: 3.2em; }

.faq-answer::before {
  content: 'A.';
  font-size: 1.5em;
  color: #cf2e2e;
  margin-right: 0.5em;
  float: left;
  font-weight: bold;
  line-height: 1; }

/* ===== 記事内デザインボックス ここから ===== */
/* 基本のボックススタイル */
.visual-box-container {
  border: 2px solid #e0e0e0;
  border-radius: 8px;
  padding: 1.5em;
  margin: 2em 0;
  background-color: #f9f9f9; }

.visual-box-title {
  font-size: 1.2em;
  font-weight: bold;
  text-align: center;
  margin-bottom: 1.5em;
  position: relative;
  padding-bottom: 0.5em;
  border-bottom: 2px solid #0693e3;
  /* コーポレートカラーに合わせる */ }

.visual-box-title::before {
  font-family: 'dashicons';
  /* WordPressの標準アイコンフォントを利用 */
  content: "\f488";
  /* アイコンの例（リスト表示） */
  margin-right: 0.5em;
  color: #0693e3; }

.visual-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 1em; }

.visual-grid-item {
  border: 1px solid #ddd;
  border-radius: 5px;
  padding: 1em;
  background-color: #fff;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05); }

.visual-grid-item-title {
  font-weight: bold;
  margin-bottom: 0.5em;
  color: #333; }

.visual-grid-item-text {
  font-size: 0.9em;
  line-height: 1.6; }

/* フローチャート風スタイル */
.visual-flow {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5em; }

.visual-flow .visual-grid-item {
  text-align: center; }

.visual-flow-arrow {
  font-size: 2em;
  color: #0693e3;
  font-weight: bold;
  line-height: 1; }

/* ===== 記事内デザインボックス ここまで ===== */
/*--- 要約ボックス (Ver.2 💡) ---*/
.summary-box {
  background-color: #f3f8ff;
  /* 既存より少し明るい青 */
  border: 1px solid #bde0ff;
  border-left: 6px solid #005a9c;
  border-radius: 8px;
  padding: 1.5em;
  margin: 2em 0;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  /* 影を追加 */ }

.summary-box-title {
  font-size: 1.2em;
  font-weight: bold;
  margin: 0 0 1em 0;
  display: flex;
  align-items: center; }

.summary-box-title::before {
  content: '💡';
  /* アイコン変更 */
  margin-right: 0.6em;
  font-size: 1.3em; }

.summary-box ul {
  list-style-type: none;
  padding-left: 0;
  margin: 0; }

.summary-box li {
  position: relative;
  padding-left: 1.6em;
  margin-bottom: 0.8em;
  font-size: 0.95em; }

.summary-box li:last-child {
  margin-bottom: 0; }

.summary-box li::before {
  content: '✔';
  position: absolute;
  left: 0;
  top: 0.1em;
  font-weight: bold;
  color: #005a9c; }

/*--- ファクタリング図解 ---*/
.factoring-comparison-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 20px;
  margin: 2em 0;
  font-family: 'Noto Sans JP', sans-serif; }

.factoring-diagram {
  border: 1px solid #ccc;
  border-radius: 8px;
  padding: 20px;
  background-color: #f9f9f9;
  width: 100%;
  max-width: 48%;
  min-width: 300px;
  box-sizing: border-box;
  flex-grow: 1; }

.factoring-diagram h4 {
  text-align: center;
  margin-top: 0;
  font-size: 1.2em;
  padding-bottom: 10px;
  border-bottom: 3px solid; }

.diagram-2-party h4 {
  border-color: #d9534f; }

.diagram-3-party h4 {
  border-color: #5cb85c; }

.actor {
  background-color: #fff;
  border: 1px solid #ddd;
  padding: 10px;
  border-radius: 5px;
  font-weight: bold;
  text-align: center;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05); }

.arrow {
  font-size: 1.8em;
  color: #555;
  text-align: center;
  margin: 8px 0;
  line-height: 1; }

.flow-description {
  font-size: 0.9em;
  text-align: center;
  padding: 8px;
  border-radius: 4px;
  margin: 5px 0;
  position: relative; }

.flow-2-party {
  background-color: #fdf7f7;
  border: 1px dashed #d9534f; }

.flow-3-party {
  background-color: #f0f9f0;
  border: 1px dashed #5cb85c; }

.flow-description strong {
  display: block;
  margin-bottom: 5px;
  font-size: 1.1em; }

/*--- 協調融資 vs シンジケートローン図解 (新規追加) ---*/
.ht-diagram-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  gap: 20px;
  margin: 2.5em 0;
  font-family: 'Noto Sans JP', sans-serif; }

.ht-diagram-box {
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 20px;
  width: 100%;
  max-width: 300px;
  box-sizing: border-box;
  background-color: #fdfdfd;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05); }

.ht-diagram-box .ht-diagram-title {
  text-align: center;
  margin-top: 0;
  margin-bottom: 25px;
  font-size: 1.2em;
  color: #fff;
  padding: 10px;
  border-radius: 5px;
  font-weight: bold;
  /* 念のため太字指定を追加 */ }

/* ↓↓ 汎用的な背景色クラス ↓↓ */
.ht-diagram-box.color-blue .ht-diagram-title {
  background-color: #007bff;
  /* 汎用：青 */ }

.ht-diagram-box.color-green .ht-diagram-title {
  background-color: #28a745;
  /* 汎用：緑 */ }

.ht-diagram-box.color-red .ht-diagram-title {
  background-color: #d9534f;
  /* 汎用：赤（参考） */ }

.ht-diagram-actor {
  background-color: #fff;
  border: 2px solid #555;
  padding: 12px;
  border-radius: 5px;
  font-weight: bold;
  text-align: center;
  margin: 15px auto;
  width: 80%; }

.ht-diagram-actor.company {
  border-style: dashed;
  border-color: #d9534f;
  background-color: #fff8f8; }

.ht-diagram-arrow {
  font-size: 1.8em;
  color: #555;
  text-align: center;
  margin: 8px 0;
  line-height: 1;
  font-weight: bold; }

.ht-diagram-flow {
  font-size: 0.9em;
  text-align: center;
  padding: 8px;
  border-radius: 4px;
  margin: 10px 0 5px 0;
  position: relative;
  border: 1px dashed; }

.type-coordination .ht-diagram-flow {
  background-color: #f0f7ff;
  border-color: #007bff; }

.type-syndicate .ht-diagram-flow {
  background-color: #f0f9f0;
  border-color: #28a745; }

/* レスポンシブ対応 */
@media (max-width: 768px) {
  .ht-diagram-container {
    flex-direction: column;
    align-items: center; }

  .ht-diagram-box {
    max-width: 100%; } }
/* --- 共通CTAボックス --- */
.ht-cta-box {
  background-color: #f0f7ff;
  border: 2px solid #005a9c;
  border-radius: 10px;
  padding: 1.5em;
  margin: 2.5em 0;
  box-shadow: 0 5px 15px rgba(0, 90, 156, 0.1);
  text-align: center;
  font-family: 'Noto Sans JP', sans-serif; }

.ht-cta-box .cta-title {
  font-size: 1.3em;
  font-weight: bold;
  color: #005a9c;
  margin: 0 0 0.5em 0; }

.ht-cta-box .cta-text {
  font-size: 1em;
  line-height: 1.7;
  margin: 0 auto 1.5em auto;
  max-width: 600px; }

.ht-cta-button {
  display: inline-block;
  background-color: #ff6600;
  /* 目立つオレンジ色 */
  color: #fff !important;
  font-size: 1.2em;
  font-weight: bold;
  padding: 0.8em 2em;
  border-radius: 50px;
  text-decoration: none !important;
  transition: opacity 0.3s;
  border: none;
  box-shadow: 0 4px 10px rgba(255, 102, 0, 0.3); }

.ht-cta-button:hover {
  opacity: 0.8;
  color: #fff !important; }

.ht-cta-button::after {
  content: ' ＞';
  /* 矢印 */
  font-weight: bold; }

/* 導入部用ライトCTA */
.ht-cta-box.light .cta-title {
  font-size: 1.2em; }

.ht-cta-box.light .cta-text {
  font-size: 0.95em;
  margin-bottom: 1em; }

.ht-cta-box.light .ht-cta-button {
  font-size: 1.1em;
  padding: 0.7em 1.8em;
  background-color: #007bff;
  /* 通常の青 */
  box-shadow: 0 4px 10px rgba(0, 123, 255, 0.2); }
