/* ##############################################################################

    Loops モジュール

############################################################################## */
  .btn .icon-svg {
    position: absolute;
    top: 50%;
    display: block;
    transform: translateY(-50%);
    transition: all .4s ease-out;
  }
  .icon-new_tab {
    width: 14px;
    height: 14px;
  }
  .btn .icon-new_tab {
    left: 30px;
  }
  .icon-pdf {
    width: 27px;
    height: 12px;
  }
  .btn .icon-pdf {
    left: 15px;
  }
  .lps_sec {
    position: relative;
  }
  .lps_sec-bg {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    background-position: center;
  }

  @media screen and (max-width: 767px) {
    .btn .icon-new_tab {
      right: 24px;
    }
    .btn .icon-pdf {
      left: 12px;
    }
  }

/* ttl
********************************************** */
  .lps_sec .ttl-01 {
    text-align: center;
  }
  .lps_sec .ttl-01.ttl_blue,
  .lps_sec .ttl-01.ttl_blue.txt-wh   {
    color: var(--ttl1-color2);
  }

/* lps_parts
********************************************** */
  .lps_parts {
    position: relative;
    z-index: 1;
  }
  .lps_parts .img-detail::before {
    padding-top: 66.666%;
  }
  .lps_parts + .ttl-02,
  .lps_parts--button + .ttl-02,
  .lps_parts--button + .lps_parts,
  .lps_parts + .lps_parts {
    margin-top: 80px;
  }
  .lps_parts--column + .lps_parts--column,
  .lps_parts + .lps_parts--button {
    margin-top: 40px;
  }
  .lps_parts iframe {
    width: 100%;
  }
  .lps_parts .text:not(:last-child) {
    margin-bottom: 24px;
  }
  .lps_parts--column .btn,
  .lps_parts--slide .btn {
    text-align: center;
  }
  .lps_parts--column *:not(.btn) + .btn {
    margin-top: auto;
  }
  .lps_parts--column .btn a {
    margin-left: auto;
    margin-right: auto;
  }
  .lps_parts .mce-content-body:not(:last-child) {
    margin-bottom: 40px;
  }

  @media screen and (max-width: 767px) {
    .lps_parts .btn {
      text-align: center;
    }
    .lps_parts + .ttl-02,
    .lps_parts--button + .ttl-02,
    .lps_parts--button + .lps_parts,
    .lps_parts + .lps_parts {
      margin-top: 40px;
    }
    .lps_parts--column + .lps_parts--column,
    .lps_parts + .lps_parts--button {
      margin-top: 16px;
    }
    .lps_parts--column.column-2 .lps_parts--child.flex-sp-block .column_item,
    .lps_parts--column.column-3 .lps_parts--child.flex-sp-block .column_item,
    .lps_parts--column.column-4 .lps_parts--child.flex-sp-block .column_item {
      width: 100%;
      margin-right: 0;
    }
    .lps_parts .mce-content-body:not(:last-child) { margin-bottom: 16px; }

    .lps_parts--img_text.large +  .lps_parts--img_text.large {
      margin-top: 60px;
    }


  }

/* lps_parts--column
********************************************** */
  .lps_parts--column:not(.column-1) + .lps_parts--column { margin-top: 24px; }
  .lps_parts--column .column_item {
    display: flex;
    flex-direction: column;
  }
  .lps_parts--column .text {
    display: flex;
    flex-direction: column;
    height: 100%;
  }
  .lps_parts--column .img {
    flex-shrink: 0;
  }
  .lps_parts--column .img + .text {
    padding-top: 24px;
  }
  .lps_parts--column .bg-wh .text {
    padding: 6%;
  }
  .lps_parts--column:not(.column-1) table { width: 100%; }
  .lps_parts--column.column-1 .box { padding: 40px; }
  .lps_parts--column.column-3 .btn a,
  .lps_parts--column.column-4 .btn a { min-width: 100%; }

  @media screen and (max-width: 767px) {
    .lps_parts--column + .lps_parts--column,
    .lps_parts--column:not(.column-1) + .lps_parts--column { margin-top: 24px; }
    .lps_parts--column .lps_parts--child { display: block; }
    .lps_parts--column {
      width: 100%;
      max-width: 100%;
    }
    .lps_parts--column .column_item { width: 100%; }
    .lps_parts--column .column_item:not(:last-child) { margin-bottom: 24px; }
    .lps_parts--column.column-2 .lps_parts--child.flex-sp-block .column_item,
    .lps_parts--column.column-3 .lps_parts--child.flex-sp-block .column_item,
    .lps_parts--column.column-4 .lps_parts--child.flex-sp-block .column_item {
      width: 100%;
      margin-right: 0;
    }
    .lps_parts--column .column_item:not(:last-child) { margin-right: 0; }
    .lps_parts--column .bg-wh .text,
    .lps_parts--column.column-1 .box { padding: 24px; }
  }

/* lps_parts--img_text
********************************************** */
  .lps_parts--img_text .img_text--child:only-child,
  .lps_parts--img_text .lps_parts--child.bg-wh .img_text--child:only-child { width: 100%; }
  .lps_parts--img_text .lps_parts--child .img_text--img:only-child .img {
    display: table;
    margin-left: auto;
    margin-right: auto;
  }
  .lps_parts--img_text .img_text--child .img-detail { height: 100%; }
  .lps_parts--img_text .bg-wh .img_text--txt { padding: 5%;
  padding-top: 4.563rem; }

  .lps_parts--img_text .img_text--txt--inner {
    width: 100%;
  }
  .lps_parts--img_text .text { 
    justify-content: flex-start; 
    font-size: 1.125rem;
    text-align: justify;
  }
  .lps_parts--img_text .img_text--txt table { width: 100%; }
  .lps_parts--img_text .inner-lg .img_text--img {
    position: absolute;
    top: 0;
  }
  .lps_parts--img_text .inner-lg:not(.flex-reverse) .img_text--img {
    left: 0;
  }
  .lps_parts--img_text .inner-lg.flex-reverse .img_text--img {
    right: 0;
  }
  .lps_parts--img_text .inner-lg:not(.flex-reverse) .img_text--txt {
    margin-left: auto;
  }
  .lps_parts--img_text .inner-lg.flex-reverse .img_text--txt {
    margin-right: auto;
    
    padding-top: 0;
  }

  @media print, screen and (min-width: 768px) {
    .lps_parts--img_text .inner-lg .img_text--img {
      height: 100%;
    }
    .lps_parts--img_text .inner-lg .img_text--txt {
      display: flex;
      align-items: center;
      min-height: 607.64px;
    }
    .lps_parts--img_text .inner-lg.bg-wh .img_text--txt {
      padding: 6%;
    }
  }
  @media screen and (max-width: 767px) {
    .lps_parts--img_text .bg-wh .img_text--txt { padding: 24px; }
    .lps_parts--img_text .btn { text-align: center; }
    .lps_parts--img_text .inner-lg .img_text--txt {
      margin-right: auto;
    }
    .lps_parts--img_text .inner-lg.bg-wh .img_text--txt {
      padding-left: 0;
      padding-right: 0;
      padding-bottom: 40px;
    }
    .lps_parts--img_text.bg-wh + .bg-wh {
      margin-top: 0;
    }
    .lps_parts--img_text .inner-lg .img_text--img {
      position: relative;
    }
    .lps_parts--img_text .inner-lg .img_text--child .img-detail {
      width: 100vw;
      margin-left: calc(50% - 50vw);
    }
    .lps_parts--img_text .text {
      padding-top: 20px;
    }
  }

/* lps_parts--slide
********************************************** */
  .lps_parts--slide .img img {
    display: inline-block;
  }
  .lps_parts--slide .img + .text {
    margin-top: 24px;
    padding-left: 24px;
    padding-right: 24px;
  }
  .lps_parts--slide .slick-list {
    margin-bottom: 32px;
  }
  .lps_parts--slide .slick-arrow {
    position: absolute;
    top: 0;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 100%;
    text-decoration: none;
  }
  .lps_parts--slide .slick-prev { left: -60px; }
  .lps_parts--slide .slick-next { right: -60px; }
  .lps_parts--slide .slick-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
  }
  .lps_parts--slide .slick-arrow::after {
    content: '';
    display: block;
    width: 30px;
    height: 30px;
    transform: rotate(45deg);
  }
  .lps_parts--slide .slick-prev::after {
    border-bottom: 1px solid;
    border-left: 1px solid;
  }
  .lps_parts--slide .slick-next::after {
    border-top: 1px solid;
    border-right: 1px solid;
  }
  .lps_parts--slide .slick-dots li {
    display: block;
    width: 12px;
    height: 12px;
    background-color: #ddd;
    border-radius: 50%;
    cursor: pointer;
    transition: all .4s ease-out;
    margin: 6px;
  }
  .lps_parts--slide .slick-dots li.slick-active {
    background-color: #333;
  }
  .lps_parts--slide .slick-dots li:hover {
    opacity: .7;
  }
  .lps_parts--slide .slick-dots button {
    padding: 0;
    cursor: pointer;
    color: transparent;
    background: transparent;
    outline: none;
    border: none;
  }
  @media screen and (max-width: 1080px) {
    .lps_parts--slide .img + .text {
      margin-top: 16px;
    }
    .lps_parts--slide .slick-dots {
      position: relative;
      bottom: 4px;
    }
    .lps_parts--slide .slick-arrow { width: 56px; }
    .lps_parts--slide .slick-prev { left: 0; }
    .lps_parts--slide .slick-next { right: 0; }
    .lps_parts--slide .slick-arrow::after {
      width: 20px;
      height: 20px;
    }
  }
  @media screen and (max-width: 767px) {
    .lps_parts--slide .slick-arrow { width: 40px; }
    .lps_parts--slide .slick-arrow::after {
      width: 16px;
      height: 16px;
    }
  }

/* lps_parts--button
********************************************** */
  .lps_parts--button .btn:first-child { margin-left: auto; }
  .lps_parts--button .btn:last-child { margin-right: auto; }

  @media print, screen and (min-width: 768px) {
    .lps_parts--column.column-2 + .lps_parts--button,
    .lps_parts--column.column-3 + .lps_parts--button,
    .lps_parts--column.column-4 + .lps_parts--button { margin-top: 0; }
  }

/* lps_parts--flow
********************************************** */
  .lps_parts--flow .flow_item {
    position: relative;
    max-width: 860px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 86px;
    counter-increment: number;
    min-height: 160px;
  }
  .lps_parts--flow .flow_item:not(:last-child) {
    padding-bottom: 40px;
  }
  .lps_parts--flow .ttl-03 {
    font-size: 1.5rem; /* 32px */
    line-height: 1.5;
    letter-spacing: .1em;
  }
  .lps_sec .lps_parts--flow .ttl-03:not(:last-child) {
    margin-bottom :2.25rem;
  }
  .lps_parts--flow .flow_item:not(:last-child)::before {
    content: '';
    position: absolute;
    top: 64px;
    left: 36px;
    display: block;
    width: 0;
    height: calc(100% - 80px);
    border-right: 3px solid  var(--maincolor);
  }
  .lps_parts--flow .flow_text.flow_item:not(:last-child)::before {
    height: calc(100% - 80px - (15px + .88rem)  );

  }
  .lps_parts--flow .ttl-03::after {
    content: counter(number);
    position: absolute;
    top: -15px;
    left: -80px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 64px;
    height: 64px;
    line-height: 50px;
    border-radius: 50%;
    text-align: center;
    color: #fff;
    background-color: var(--maincolor2);
    font-family: var(--font-en);
    font-weight: normal;
    font-size: 2rem; /* 32px */
  }
  .lps_parts--flow .flow_text .ttl-03::before {
    content: 'FLOW';
    position: absolute;
    left: -80px;
    top: calc(-20px - 1em);
    font-family: var(--font-en);
    font-size: .88rem;
    line-height: 1;
    letter-spacing: .1em;
    width: 64px;
    text-align: center;
    color: var(--maincolor);
  }
  .lps_parts--flow .flow_text .ttl-03.txt-wh::before {
    color: #fff;
  }

  .lps_parts--flow .txt-wh .ttl-03 {
    color: #fff;
  }
  .lps_parts--flow .flow_item.txt-wh:not(:last-child)::before {
    border-color: #fff;
  }
  .lps_parts--flow .txt-wh .ttl-03::after {
    color: #1D7FB7;
    background-color: #fff;
  }
  .lps_parts--flow .text img,
  .lps_parts--faq .text img {
    max-width: 248px;
    margin-top: 0;
    margin-right: 40px;
    overflow: hidden;
  }

  @media screen and (max-width: 767px) {
    
    .lps_parts--flow .flow_item {
      padding-left: 48px;
    }
    .lps_parts--flow .flow_item:not(:last-child) {
      padding-bottom: 40px;
    }
    .lps_parts--flow .ttl-03 {
      font-size: 1.3rem; /* 20px */
    }
    .lps_parts--flow .flow_item:not(:last-child)::before {
      top: 36px;
      left: 16px;
      height: calc(100% - 48px);
    }
    .lps_parts--flow .ttl-03::after {
      top: -6px;
      left: -48px;
      width: 36px;
      height: 36px;
      font-size: 1.286rem; /* 18px */
    }
    .lps_parts--flow .flow_text .ttl-03::before {
      left: -61px;
      top: calc(-11px - 1em);
    }
    .lps_parts--flow .text img {
      float: none !important;
      margin-left: 0;
      margin-right: auto;
      margin-bottom: 16px !important;
    }
    .lps_parts--flow .flow_text.flow_item:not(:last-child)::before {
      height: calc(100% - 68px );
    }
  }

/* lps_parts--faq
********************************************** */
.lps_parts--faq .faq_item {
  position: relative;
  
}
  .lps_parts--faq .faq_item:not(:last-child) {
    margin-bottom: 40px;
  }
  .lps_parts--faq .ttl-03,
  .lps_parts--faq .mce-content-body {
    padding: 20px 48px 20px 104px;
  }
  .lps_parts--faq .ttl-03 {
    background-color: var(--qa_ttl);
    margin-bottom: 0 !important;
    border-radius: 10px 10px 0 0;
    font-size: 1.5rem; /* 24px */
    padding-right: 90px;
    position: relative;
    cursor: pointer;
    color: #fff;
  }
  .lps_parts--faq .ttl-03 span:last-of-type:after,
  .lps_parts--faq .ttl-03 span:last-of-type::before {
    content: '';
    width: 28px;
    height: 4px;
    background: #fff;
    position: absolute;
    right: 30px;
    top: calc(50% - 2px);
    z-index: 1;
  }
  .lps_parts--faq .ttl-03 span:last-of-type:after {
    transform: rotate(-180deg);
    transition: .4s;
  }
  .lps_parts--faq .ttl-03 span:last-of-type::before {
    transition: .4s;
    opacity: 1;
    transform: rotate(-90deg);
  }
  .lps_parts--faq .mce-content-body {

    background-color: var(--lightcolor2);
    overflow: hidden;
    transition: .4s;
    transform-origin: top;
    transform: rotateX(90deg);
    opacity: 0;
    height: 1px;
    margin-top: -20px;
  }
  .faq_item.active .mce-content-body  {
    transform: rotateX(0);
    opacity: 1;
    margin-top: 0px;
    position: relative;
    height: auto;
  }
  .faq_item.active  .ttl-03 span:last-of-type::after {
    transform: rotate(0);
  }
  .faq_item.active  .ttl-03 span:last-of-type::before {
    transform: rotate(0);
    opacity: 0;
  }
  .lps_parts--faq .ttl-03::after,
  .lps_parts--faq .mce-content-body::after {
    position: absolute;
    left: 48px;
    display: block;
    font-family: 'Overpass', sans-serif;
    font-weight: 600;
    font-size: 2.5rem; /* 40px */
  }
  
  .lps_parts--faq .ttl-03::after {
    content: 'Q';
    top: 14px;
    color: #fff;
  }
  .lps_parts--faq .mce-content-body::after {
    content: 'A';
    top: 8px;
    color: var(--qa_a);
  }
  .lps_parts--faq .mce-content-body .editor-ttl2 {
    margin-top: 0;
    margin-bottom: 1.275rem;
  }

  @media screen and (max-width: 767px) {
    .lps_parts--faq .faq_item:not(:last-child) {
      margin-bottom: 16px;
    }
    .lps_parts--faq .ttl-03,
    .lps_parts--faq .mce-content-body {
      padding: 16px 24px 16px 56px;
    }
    .lps_parts--faq .ttl-03 {
      font-size: 1.2rem; /* 20px */
    }
    .lps_parts--faq .ttl-03 {
      padding: 16px 56px;

    }
    .lps_parts--faq .ttl-03::after,
    .lps_parts--faq .mce-content-body::after {
      left: 20px;
      font-size: 1.857rem; /* 26px */
    }
    .lps_parts--faq .ttl-03 span:last-of-type:after, .lps_parts--faq .ttl-03 span:last-of-type::before {
      width: 20px;
      height: 2px;
      right: 20px;
    }
    .lps_parts--faq .ttl-03::after {
      top: 10px;
    }
    .lps_parts--faq .mce-content-body::after {
      top: 6px;
    }
    .lps_parts--faq .text img {
      float: none !important;
      margin-top: 2px;
      margin-left: 0;
      margin-right: auto;
      margin-bottom: 8px! important;
      border-radius: 8px;
    }
  }

/* post-edit-link
********************************************** */
  .post-edit-link {
    position: fixed;
    bottom: 24px;
    right: 24px;
    z-index: 10;
    padding: 16px;
    border-radius: 50%;
    border: 1px solid #999;
  }
  .post-edit-link:hover {
    background-color: #ddd;
  }
  .post-edit-link::after {
    content: '';
    display: block;
    width: 24px;
    height: 24px;
    background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDIzLjAuMywgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IuODrOOCpOODpOODvF8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiCgkgeT0iMHB4IiB2aWV3Qm94PSIwIDAgNDAxIDQwMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNDAxIDQwMTsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0MHtmaWxsOiM5OTk5OTk7fQo8L3N0eWxlPgo8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMzcwLjEsMjUxLjljLTUuNSwwLTEwLDQuNS0xMCwxMHY4OC43YzAsMTYuNS0xMy40LDI5LjktMzAsMzBINDkuOWMtMTYuNSwwLTI5LjktMTMuNC0zMC0zMFY5MC4zCgljMC0xNi41LDEzLjQtMjkuOSwzMC0zMGg4OC43YzUuNSwwLDEwLTQuNSwxMC0xMGMwLTUuNS00LjUtMTAtMTAtMTBINDkuOUMyMi40LDQwLjQsMCw2Mi43LDAsOTAuM3YyNjAuMwoJYzAsMjcuNiwyMi40LDQ5LjksNDkuOSw0OS45aDI4MC4yYzI3LjYsMCw0OS45LTIyLjQsNDkuOS00OS45di04OC43QzM4MC4xLDI1Ni40LDM3NS42LDI1MS45LDM3MC4xLDI1MS45eiIvPgo8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMzc2LjEsMTQuN2MtMTcuNi0xNy42LTQ2LTE3LjYtNjMuNiwwTDEzNC40LDE5Mi45Yy0xLjIsMS4yLTIuMSwyLjctMi42LDQuNGwtMjMuNCw4NC42Yy0xLDMuNSwwLDcuMiwyLjYsOS43CgljMi41LDIuNSw2LjMsMy41LDkuNywyLjZsODQuNi0yMy40YzEuNy0wLjUsMy4yLTEuMyw0LjQtMi42TDM4Ny45LDkwYzE3LjUtMTcuNiwxNy41LTQ2LDAtNjMuNkwzNzYuMSwxNC43eiBNMTU2LjIsMTk5LjNMMzAyLDUzLjUKCWw0Nyw0N0wyMDMuMiwyNDYuNEwxNTYuMiwxOTkuM3ogTTE0Ni44LDIxOC4ybDM3LjYsMzcuNmwtNTIsMTQuNEwxNDYuOCwyMTguMnogTTM3My43LDc1LjhsLTEwLjYsMTAuNmwtNDctNDdsMTAuNi0xMC42CgljOS43LTkuNywyNS42LTkuNywzNS4zLDBsMTEuNywxMS43QzM4My41LDUwLjMsMzgzLjUsNjYuMSwzNzMuNyw3NS44eiIvPgo8L3N2Zz4K');
  }
  @media screen and (max-width: 767px) {
    .post-edit-link { display: none; }
  }