


.m-form .form_body .name {
  .row.is_wide dd {
    flex: 1;
    width: 100%;
  }

  @media screen and (max-width:767px) {
    display: block;
    .row.is_wide{
      p{
        width: 100%;
        &:last-of-type{
          width: auto;
          flex: 1;
          text-align: right;
          margin-left: 0!important;
        }
      }
      dd {
        input{
          width: 59.87vw;
        }
      }
    }
  }
}



.s-blog_detail {
    img {
        max-width: 100%;
    }

    .header_meta:has(.category) {
        align-items: center;

        .category {
            display: block;
            margin-left: 13px;
            padding: 0 10px;
            border: 1px solid #000;
            border-radius: 3px;
            font-size: 11px;
            text-align: center;

            &::before {
                display: none;
            }

            &.is_010 {
                border-color: #0a4fe6;
                color: #0a4fe6;
            }

            &.is_020 {
                border-color: #f80;
                color: #f80;
            }

            &.is_030 {
                border-color: #07ab17;
                color: #07ab17;
            }
        }
    }
}

/* 取材記事 */
.s-blog_footer_nav {
    margin-top: 70px !important;
}

.blog-article_notes_fig {
    display: block;
    margin: 0.5em 0 70px 52px;
    margin: auto;
}

.blog-article_notes_fig img {
    width: 270px;
    text-align: center;
}

.blog-article_notes_fig figcaption {}

.blog-article-caption span::before {
    content: '▲';
    display: inline-block;
    margin-right: 0.5em;
}

.blog-article-caption {
    max-width: 458px;
    margin-top: 20px;
    color: #666;
    font-size: 12px;
    line-height: 1.6;
}

.blog-article_notes {
    margin-bottom: 2em;
    line-height: 2;
}

.blog-article_notes_fig {
    width: 270px;
}

/* MySQL表 */
.blog-table {
    border-collapse: collapse;
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;

    th,
    td {
        border: 1px solid #ddd;
        padding: 8px;
        text-align: center;
    }

    th {
        background-color: #9d9d9d;
        font-weight: bold;
        color: white;
        text-align: center;
    }

    tr:nth-child(even) {
        background-color: #f9f9f9;
    }

    td:first-child {
        background-color: #9d9d9d;
        font-weight: bold;
        color: white;
        text-align: center;
    }

    .table-highlight {
        color: #fb4646;
        font-weight: bold;
    }
}

@media (max-width: 768px) {
    table {
        font-size: 14px;
    }

    th,
    td {
        padding: 6px;
    }
}

@media screen and (max-width: 1040px) {
    .blog-article_notes_fig {
        width: auto;
        margin: 0 0 6.67vw;
        float: none;
        text-align: center;
    }

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


/* 2025renew */
.blog-show-main,
.blog-list-main {
    .c-pagetitle__container {
        padding: min(120px, 7.333333vw) 0 min(105px, 1.291667vw);
    }
}
.blog_detail_header {
    opacity: 100 !important;
}
.main_footer {
    .s-blog_footer_nav {
        .unit {
            width: 100%;
            background: #fff;
            padding: 12px;
            border-radius: min(6px, .4166666667vw);
            .unit_inner {
                flex-direction: column;
                align-items: center;
                .unit_fig {
                    margin: 0 0 20px;
                }
                .unit_notes {
                    .header {
                        margin-bottom: 5px;
                        font-size: min(10px, 1.1111111111vw);
                    }

                }
            }
        }
    }
}
.s-blog_footer_nav .unit+.unit {
    margin-left: 22px;
}
@media screen and (max-width: 767px) {
    .l-main .main_body.has_column.is_article .main_col {
        padding: 0;
        .s-blog_detail  {
            padding: 1.2em;
        }
    }
}

.books_main_body {
  max-width: 900px;
  margin: auto;
h1 {
  font-size: min(28px, 6.4vw);
  font-weight: bold;
    text-align: center;
  
}
  h2 {
    font-size: min(24px, 5.4vw);
    font-weight: bold;
    text-align: center;
  }
}

/* ====================================
   Book Information Section
   ==================================== */
.books-table-wrap {
  overflow-x: auto;
}

.books-flex {
  display: flex;
  gap: 30px;
  align-items: center;
}

.books-cover {
  flex-shrink: 0;
  flex: 1;
  text-align: center;
}

.books-cover img {
  width: 250px;
  height: auto;
  border-radius: 4px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.books-info {
  flex: 1;
}

.books-info p {
  margin: 12px 0;
  font-size: 1rem;
  color: #555;
  line-height: 1.6;
}

.books-purchase {
  margin-top: 30px;
  border-top: 2px solid #e0e0e0;
  text-align: center;
}

.books-purchase p {
  font-weight: bold;
  margin-bottom: 15px;
  color: #333;
}

.books-purchase-links {
  display: flex;
  gap: 15px;
  flex-wrap: wrap;
  justify-content: center;
}

.books-amazon,
.books-rakuten {
  display: inline-block;
  padding: 12px 30px;
  text-decoration: none;
  border-radius: 4px;
  font-weight: bold;
  transition: all 0.3s ease;
  text-align: center;
}

.books-amazon {
  background-color: #ff9900;
  color: #fff;
}

.books-amazon:hover {
  background-color: #e68a00;
}

.books-rakuten {
  background-color: #bf0000;
  color: #fff;
}

.books-rakuten:hover {
  background-color: #a00000;
}

/* ====================================
   Table of Contents Section
   ==================================== */
.books-toc-wrap-section {
  margin-bottom: 40px;
}

.books-toc-wrap {
  background: #fff;
  padding: 30px;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.books-toc-wrap h2 {
  font-size: 1.6rem;
  margin-bottom: 25px;
  color: #333;
  border-bottom: 3px solid #000000;
  padding-bottom: 10px;
}

.books-toc {
  display: flex;
  gap: 30px;
}

.books-column {
  flex: 1;
}

.books-column h3 {
  font-size: 1.2rem;
  margin: 20px 0 15px;
  color: #000000;
  font-weight: bold;
}

.books-column h3:first-child {
  margin-top: 0;
}

.books-column ul {
  list-style: none;
  padding: 0;
  margin: 0 0 20px 0;
}

.books-column li {
  padding: 8px 0;
  border-bottom: 1px solid #f0f0f0;
  color: #555;
  line-height: 1.5;
}

.books-column li:last-child {
  border-bottom: none;
}

.toc-button {
  margin-top: 20px;
}

.books-btn {
  display: inline-block;
  padding: 12px 30px;
  background-color: #000000;
  color: #fff;
  text-decoration: none;
  border-radius: 4px;
  font-weight: bold;
  cursor: pointer;
  transition: all 0.3s ease;
  text-align: center;
  border: solid 1px #000000;
}

.books-btn:hover {
  color: #000000;
  background-color: #fff;
}

/* ====================================
   Modal Styles
   ==================================== */
.books-modalOverlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 1000;
  overflow-y: auto;
  padding: 20px;
}

.books-modalContent {
  background-color: #fff;
  max-width: 1000px;
  margin: 40px auto;
  padding: 40px;
  border-radius: 8px;
  position: relative;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}

.books-closeButton {
  position: absolute;
  top: 15px;
  right: 20px;
  font-size: 2rem;
  cursor: pointer;
  color: #999;
  transition: color 0.3s ease;
}

.books-closeButton:hover {
  color: #333;
}

.books-modalContent h2 {
  font-size: 1.8rem;
  margin-bottom: 20px;
  color: #333;
  border-bottom: 3px solid #000000;
  padding-bottom: 10px;
}

.books-modalContent h3 {
  font-size: 1.3rem;
  margin: 25px 0 15px;
  color: #000000;
}

.books-modalContentColumns {
  display: flex;
  gap: 40px;
  margin-top: 30px;
}

.books-modalContentColumn {
  flex: 1;
}

.books-modalContentColumn ul {
  list-style: disc;
  padding-left: 25px;
  margin: 10px 0 20px;
}

.books-modalContentColumn li {
  margin: 8px 0;
  color: #555;
  line-height: 1.6;
}

/* ====================================
   Content Section (Download)
   ==================================== */
.books-sub-img {
  text-align: center;
  margin: 40px 0;
}

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

.books-content p {
  line-height: 1.8;
  color: #555;
  margin-bottom: 25px;
}

.books-dl {
  margin: 20px 0;
  text-align: center;
}

.download-button {
  display: inline-block;
  width: 100%;
  max-width: 400px;
}

/* ====================================
   Errata Table Section (正誤表)
   ==================================== */
.books-table {
  margin: 16px auto;
  border-collapse: collapse;
  border: 1px solid #ccc;
  min-width: 600px;
  /* 必要に応じて最小幅を設定 */
  width: 100%;

  th,
  td {
    border: 1px solid #ccc;
    padding: 8px;
  }

  th {
    background-color: #f0f0f0;
  }

  td {
    flex: 1;
  }

  .books-table-color {
    color: #df0000;
  }

  .tr-wide {
    width: 4rem;
  }
}

/* ====================================
   Tablet Styles (max-width: 798px)
   ==================================== */
@media screen and (max-width: 798px) {
  .books-flex {
    flex-direction: column;
    align-items: center;
  }

  .books-cover img {
    width: 200px;
  }

  .books-toc {
    flex-direction: column;
  }

  .books-modalContentColumns {
    flex-direction: column;
    gap: 20px;
  }

  .books-modalContent {
    padding: 30px 20px;
  }
}

/* ====================================
   Mobile Styles (max-width: 600px)
   ==================================== */
@media screen and (max-width: 600px) {
  .books_main_body {
    padding: 15px;
  }

  .books-flex {
    padding: 20px;
  }

  .books-cover img {
    width: 160px;
  }

  .books-info p {
    font-size: 0.9rem;
  }

  .books-purchase-links {
    flex-direction: column;
    text-align: center;
  }

  .books-amazon,
  .books-rakuten {
    width: 100%;
    padding: 10px 20px;
  }

  .books-toc-wrap {
    padding: 20px 15px;
  }

  .books-toc-wrap h2 {
    font-size: 1.3rem;
  }

  .books-column h3 {
    font-size: 1.1rem;
  }

  .books-column li {
    font-size: 0.9rem;
  }

  .books-modalOverlay {
    padding: 10px;
  }

  .books-modalContent {
    margin: 20px auto;
    padding: 25px 15px;
  }

  .books-modalContent h2 {
    font-size: 1.4rem;
    padding-right: 30px;
  }

  .books-closeButton {
    font-size: 1.5rem;
    top: 10px;
    right: 15px;
  }

  .books-modalContent h3 {
    font-size: 1.1rem;
  }

  .books-modalContentColumn ul {
    padding-left: 20px;
  }

  .books-modalContentColumn li {
    font-size: 0.9rem;
  }

  .books-content {
    padding: 25px 20px;
  }

  .books-content h2 {
    font-size: 1.3rem;
  }

  .books-content p {
    font-size: 0.9rem;
  }

  .books-btn {
    padding: 10px 20px;
    font-size: 0.9rem;
  }

  .download-button {
    max-width: 100%;
  }

  /* Errata Table - Mobile */
  .books-table-wrap {
    margin: 20px -15px;
    border-radius: 0;
  }

  .books-table {
    font-size: 0.85rem;
    min-width: 500px;
  }

  .books-table th,
  .books-table td {
    padding: 10px 8px;
  }

  .books-table p[style*="background:black"] {
    font-size: 0.8rem;
    padding: 10px;
  }
}

/* ====================================
   Small Mobile Styles (max-width: 400px)
   ==================================== */
@media screen and (max-width: 400px) {
  .books_main_body {
    padding: 10px;
  }

  .books-flex {
    padding: 15px;
  }

  .books-cover img {
    width: 140px;
  }

  .books-toc-wrap {
    padding: 15px 10px;
  }

  .books-modalContent {
    padding: 20px 12px;
  }

  .books-content {
    padding: 20px 15px;
  }

  /* Errata Table - Small Mobile */
  .books-table-wrap {
    margin: 20px -10px;
  }

  .books-table {
    font-size: 0.8rem;
  }

  .books-table th,
  .books-table td {
    padding: 8px 6px;
  }
}

@media screen and (max-width: 767px){
     .l-contents .content_breadcrumbs {
         top: 8px;
         height: fit-content;
     }

     .l-contents .content_breadcrumbs + .l-main{
          margin-top: 72px;
     }
}



.s-cases_detail .cases_detail_footer .interviewee .row{
    align-items: center;
}

.s-cases_detail .cases_detail_footer .interviewee .row dt{
    width: 85px;
    text-align-last: justify;
    text-align: justify;
    text-justify: inter-character;

}
.s-cases_detail .cases_detail_footer .interviewee .row dt>span{
    display: block;
    letter-spacing: -0.1em;
}
@media screen and (max-width: 767px){
    .s-cases_detail .cases_detail_footer .interviewee .row dt {
        width: 18.94vw;
    }
}
 /*--------- figcaptionを写真のセンターに表示-------- */
 .article_notes_fig {
  text-align: center;
 }
 /*--------- 画像に枠線をつける-------- */
 .article_notes_fig_img_border {
  border: solid 1px #dedede;
 }


.appTweenGroupItem.appTweenFadeUp {
    opacity: 100;
}
.m-boxlist  {
    .box_unit {
        background: #fff;
        
        
        border-radius: min(6px, .4166666667vw);
        border: none;
        .unit_logo {
            img{
                width: auto;
                max-height: 53px;
                max-width: 100%;
            }
        }
    }
}
.cases-wrap {
        margin: 80px auto !important;
}



.festa_main {
    position: relative;
    justify-content: center;
    align-items: center;

    section {
        padding: 120px 0;

        .festa_h2-color {
            color: #0592E9;
        }

        .festa_h2 {
            color: white;
        }

        h2 {
            font-size: 48px;
            line-height: 1;
            margin-bottom: 40px;

            span {
                display: block;
                font-size: 24px;
                margin-top: 20px;
                text-align: center;
            }
        }
    }


    .festa_mv-content {
        display: flex;
        justify-content: center;
        height: 880px;

        img {
            max-width: 100%;
            width: 50%;
            height: auto;
            margin: auto;
            align-items: center;
        }
    }

    .festa_bg-container {
        background-image: url(/pleasanter/assets/images/lp/100festa/festa_bg.jpeg);
        background-size: cover;
    }


    #festa_about {
        width: 100%;
        background: white;
        display: flex;
        justify-content: center;

        .festa_about-container {
            width: 38%;
            min-width: 590px;

            .festa_about-iflame {
                margin-top: 40px;
                width: 100%;
                height: auto;
                aspect-ratio: 16 / 9;
            }
        }

        h3 {
            font-size: 48px;
            padding-bottom: 40px;
        }

        p {
            line-height: 2em;
        }
    }

    /* セミナーアーカイブ用のSCSS */
    :root {
        --primary-color: #ffffff;
        --primary-light: rgba(46, 139, 87, 0.1);
        --hover-light-coler: rgba(255, 255, 255, 0.6);
        --text-dark: #222222;
        --text-medium: #555;
        --text-light: #777;
        --background-color: #fff;
        --background-gradient: linear-gradient(0deg, #25b1e8, #bfe3f4) --border-radius: 8px;
        --transition-speed: 0.3s;
        --box-shadow: 0 2px 15px rgba(0, 0, 0, 0.08);
    }

    /* Base styles */
    body {
    font-family: 'Helvetica Neue', Arial, sans-serif;
    line-height: 1.6;
    color: var(--text-dark);
    background-color: #f5f5f5;
    margin: 0;
    padding: 0;
}

    /* Container */
    .festa-archive_container {
        max-width: 1200px;
        margin: 2rem auto;
        padding: 1.5rem;
        // background-color: var(--background-color);
        background-image: linear-gradient(0deg, #bfe3f4, #25b1e8);
        border-radius: var(--border-radius);
        box-shadow: var(--box-shadow);
    }

    /* Title styles */
    .festa-archive_title {
        font-size: 1.5rem;
        color: white;
        text-align: center;
        margin-bottom: 2rem;
        position: relative;
    }

    .festa-archive_title::after {
        content: '';
        display: block;
        width: 80px;
        height: 2px;
        background-color: var(--primary-color);
        margin: 1rem auto;
    }

    /* Day title */
    .festa-archive_day-title {
        font-size: 1.8rem;
        color: var(--text-dark);
        margin: 2rem 0 1.5rem;
        padding-left: 1rem;
        border-left: 5px solid var(--primary-color);
    }

    /* Contents container */
    .festa-archive_contents {
        display: grid;
        grid-template-columns: repeat(1fr);
        gap: 1rem;
    }

    @media (max-width: 768px) {
        .festa-archive_contents {
            grid-template-columns: 1fr;
        }
    }

    /* Item card */
    .festa-archive_item {
        border-radius: var(--border-radius);
        overflow: hidden;
        box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
        transition: transform var(--transition-speed) ease, box-shadow var(--transition-speed) ease;
        animation: fadeIn 0.5s ease forwards;
    }

    .festa-archive_item:hover {
        background-color: var(--hover-light-coler);
    }

    /* Content container */
    .festa-archive_content {
        padding: 0;
    }

    /* Seminar link */
    .festa-archive_seminar-link {
        display: block;
        text-decoration: none;
        color: inherit;
        padding: 1rem;
        background-color: var(--background-color);
        transition: background-color var(--transition-speed) ease;
        height: 100%;
        position: relative;
    }

    .festa-archive_seminar-link:hover {
        background-color: var(--hover-light-blue);
        text-decoration: none;
    }

    /* 下線のアニメーションを削除 */
    .festa-archive_seminar-link::before,
    .festa-archive_seminar-link::after {
        content: none !important;
    }

    /* Seminar title */
    .festa-archive_seminar-title {
        font-size: 1rem;
        font-weight: 600;
        margin: 0 0 0.3rem;
        color: var(--text-dark);
    }

    /* Seminar subtitle */
    .festa-archive_seminar-subtitle {
        font-size: 0.95rem;
        color: var(--text-light);
        margin: 0;
        line-height: 1.5;
    }

    /* Animation for items */
    @keyframes fadeIn {
        from {
            opacity: 0;
            transform: translateY(20px);
        }

        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    /* Generate delays for each item */
    .festa-archive_item:nth-child(n) {
        animation-delay: calc(0.05s * var(--n));
    }

    /* Accessibility improvements */
    @media (prefers-reduced-motion: reduce) {
        .festa-archive_item {
            animation: none;
        }

        .festa-archive_seminar-link {
            transition: none;
        }
    }


    #festa_timetable {
        .schedule-container {
            max-width: 900px;
            margin: 0 auto;
            padding: 20px 0;
        }

        .schedule-header {
            text-align: center;
            color: white;
            margin-bottom: 20px;
        }

        .schedule-header h1 {
            font-size: 28px;
            font-weight: normal;
            margin-bottom: 5px;
        }

        .large-date {
            font-size: 36px;
            font-weight: bold;
            margin: 0 5px;
        }

        .day {
            font-size: 20px;
        }

        .note {
            font-size: 14px;
            margin-top: 5px;
        }

        .schedule-item {
            display: flex;
            background-color: white;
            border-radius: 10px;
            margin-bottom: 10px;
            overflow: hidden;
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
        }

        .schedule-item.highlight {
            background-color: #fffde7;
        }

        .time {
            width: 80px;
            padding: 15px;
            font-weight: bold;
            color: #0066cc;
            text-align: center;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .content {
            flex: 1;
            display: flex;
            padding: 15px 15px 15px 0;
        }

        .company {
            width: 180px;
            padding-right: 15px;
        }

        .company a {
            color: #0066cc;
            text-decoration: none;
            font-weight: bold;
            font-size: 14px;
        }

        .company a:hover {
            text-decoration: none;
        }

        .description {
            flex: 1;
        }

        .title {
            font-weight: bold;
            font-size: 14px;
            margin-bottom: 5px;
        }

        .text {
            font-size: 13px;
            color: #555;
        }

        .tags {
            width: 140px;
            text-align: right;
            color: #0088d1;
            font-size: 12px;
            padding-left: 15px;
        }

        @media (max-width: 768px) {
            .content {
                flex-direction: column;
            }

            .company {
                width: 100%;
                margin-bottom: 10px;
            }

            .description {
                width: 100%;
                margin-bottom: 10px;
            }

            .tags {
                width: 100%;
                text-align: left;
                padding-left: 0;
            }
        }

        .festa_timetable-container {
            text-align: center;

            img {
                width: 50%;
                margin-bottom: 40px;
            }
        }
    }

    #festa_overview {
        .festa_overview-container {
            text-align: center;

            .overview-ul-container {
                max-width: 500px;
                margin: 20px auto;

                ul {
                    list-style: none;
                    padding: 0;
                    margin: 0;
                    font-size: 15px;

                    li {
                        display: flex;
                        justify-content: space-between;
                        padding: 10px 0;
                        border-bottom: 1px solid #ddd;

                        p {
                            font-size: 18px;
                            font-weight: bold;
                        }

                        p.ul-item {
                            font-size: 16px;
                            font-weight: normal;
                        }
                    }

                    li:last-child {
                        border-bottom: none;
                    }
                }
            }

            .overview-ps {
                text-align: left;
                margin-top: 44px;

                >p {
                    text-align: center;
                }

                h3 {
                    color: #0b92e8;
                    text-align: center;
                    font-size: 24px;
                    padding-bottom: 1rem;
                    color: ;
                }

                .overview-ul {
                    margin-top: 20px;
                }
            }
        }
    }

    #festa_apply {
        padding-top: 0;

        .festa_apply-container {

            h2 {
                text-align: center;
                font-size: 34px;
                color: #353535;
                ;
            }

            .apply-form-container {
                max-width: 590px !important;
                margin: 0 auto !important;
            }
        }

    }

    @media (max-width: 768px) {
        .festa_main {
            section {
                padding: 60px 30px;

                h2 {
                    font-size: 30px;
                    line-height: 1;
                    margin-bottom: 40px;

                    span {
                        font-size: 16px;
                        margin-top: 10px;
                    }
                }
            }
        }

        #festa_mv {
            padding: 0 30px;

            .festa_mv-content {
                height: 100vh;

                img {
                    width: 90%;
                }
            }
        }

        #festa_about {
            width: 100%;
            background: white;
            display: flex;
            justify-content: center;

            .festa_about-container {
                width: 90%;
                min-width: 300px;

                .festa_about-iflame {}
            }

            h3 {
                font-size: 28px;
                padding-bottom: 34px;
            }

            p {
                line-height: 2em;
            }
        }

        #festa_timetable {

            .festa_timetable-container {
                text-align: center;

                img {
                    width: 100%;
                    margin-bottom: 30px;
                }
            }
        }

        #festa_overview {
            .festa_overview-container {
                .overview-ul-container {
                    ul {
                        li {
                            padding: 10px 0;

                            p {
                                font-size: 16px;
                            }

                            p.ul-item {
                                font-size: 14px;
                            }
                        }
                    }
                }

                .overview-ps {
                    >p {
                        text-align: left;
                    }

                    .overview-ul {
                        margin-top: 20px;
                    }

                    h3 {
                        font-size: 16px;
                    }
                }
            }
        }
    }

    #festa_apply {
        .festa_apply-container {
            h2 {
                font-size: 28px;
                color: #353535;
                ;
            }

            .apply-form-container {
                width: 100%;
                min-width: inherit;
                margin: 0 auto;
            }
        }
    }
}

/* --- 基本レイアウト --- */
.festa-archive .content {
  margin: 0 auto;
  padding: 0 40px 40px;
}

/* --- カテゴリーナビゲーション --- */
.festa-archive .category-nav {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 20px;
  margin-bottom: 50px;
}

.festa-archive .nav-item {
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 20px 25px;
  background: #ffffff;
  border-radius: 8px;
  text-decoration: none;
  transition: all 0.3s ease;
  position: relative;
}

.festa-archive .nav-item:hover {
  background: #828282;
  color: white;
}

.festa-archive .nav-number {
  font-size: 32px;
  font-weight: 700;
  line-height: 1;
  min-width: 60px;
}

.festa-archive .nav-text {
  flex: 1;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
}

.festa-archive .nav-arrow {
  font-size: 20px;
  line-height: 1;
}

/* --- セクション（カテゴリー）単位のスタイル --- */
.festa-archive .category {
  background: #ffffff;
  margin-bottom: 40px;
  scroll-margin-top: 80px;
}

.festa-archive .category:last-child {
  margin-bottom: 0;
}

.festa-archive .category-header {
  padding: 25px 30px;
  border-bottom: 1px solid #e5e7eb;
}

.festa-archive .category-title {
  color: #0f172a;
  font-size: 20px;
  font-weight: 700;
  margin: 0 0 10px 0;
}

.festa-archive .category-subtitle {
  color: #64748b;
  font-size: 15px;
  font-weight: 400;
  margin: 0;
  line-height: 1.6;
}

/* --- 個別セッション（カード）のスタイル --- */
.festa-archive .session-list {
  padding: 20px;
}

.festa-archive .session {
  background: #f8fafc;
  border-radius: 8px;
  transition: all 0.3s ease;
}

.festa-archive .session:last-child {
  margin-bottom: 0;
}

.festa-archive .session:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(102, 126, 234, 0.15);
  border-color: #667eea;
  background: #ffffff;
}

.festa-archive .session-link {
  display: block;
  text-decoration: none;
  color: inherit;
  padding: 20px;
}

.festa-archive .session-content {
  display: flex;
  flex-direction: column;
}

.festa-archive .session-org {
  color: #667eea;
  font-weight: 700;
  font-size: 14px;
  margin-bottom: 10px;
  display: flex;
  align-items: center;
}

.festa-archive .session-org::before {
  content: "🏢";
  margin-right: 6px;
}

.festa-archive .session-title {
  color: #1e293b;
  font-size: 16px;
  font-weight: 600;
  margin: 0 0 10px 0;
  line-height: 1.5;
}

.festa-archive .session-desc {
  color: #64748b;
  font-size: 14px;
  line-height: 1.7;
  margin: 0;
}

/* --- モバイル対応（レスポンシブ） --- */
@media (max-width: 768px) {
  .festa-archive .content {
    padding: 20px;
  }

  .festa-archive .category-header {
    padding: 20px;
  }

  .festa-archive .category-title {
    font-size: 18px;
  }

  .festa-archive .session-list {
    padding: 15px;
  }

  .festa-archive .session-link {
    padding: 15px;
  }
}

.thanks_lounge {
    width: 100%;
    text-align: center;
    margin: auto;
}
.thanks_lounge img {
    width: 65%;
    margin: 35px auto 35px auto;
}
 .lounge-form-div {
    width: 60%;
  }
@media screen and (max-width: 767px) {
    .lounge-form-div {
        width: 75%;
}
    .thanks_lounge img {
        width: 75%;
    }
    }
@media screen and (max-width: 500px) {
    .lounge-form-div {
        width: 90%;
}
    .thanks_lounge img {
        width: 90%;
    }
    }



/* stylelint-disable no-duplicate-selectors */
:root {
  --top-marker-color: #dbedff;
  /* 20230912 追加記述 */
  html,
  body {
    width: 100%;
    margin: 0 auto;
  }
  body {
    /* max-width: 1100px; */
    min-width: auto;
  }
}

.l-main.imp-blog-show .m-article_detail a img {
    width: 100%;
    max-width: 300px;
}







article.box_unit:has(a[href="/partner/know-"].unit_link) {
  display: none;
}

.m-partner_search {
  border: 0px solid;
  border-radius: 5px;
  margin-bottom: 40px;
  overflow: hidden;
  .search_inner {
    border: 10px solid;
    padding: 20px;
    .row{
      display: grid;
      gap: 40px;
      grid-template-columns: 1fr 1fr;
    }
  }
  .keyword,
  .area {
    display: flex;
    align-items: center;
    padding: 10px 0 20px;
    .form {
      flex: 1;
      padding-left: 20px;
    }
    .c-input {
      width: 100%;
      &.o-outline_blk:not(:focus) {
        border: 1px solid #ccc;
      }
    }
    .c-select {
      select:not(:focus) {
        border: 1px solid #ccc;
      }
    }
  }
  .unit {
    .search_label {
      background: #eee;
      padding: 10px 20px;
      border-radius: 5px;
      margin-bottom: 15px;
    }
    + .unit {
      margin-top: 20px;
    }
    .form {
      padding: 10px;
    }
  }
  .c-checkbox_group {
    li {
      width: 25%;
    }
  }
  .form_footer {
    padding: 50px 0 0;
    .c-btn {
      font-size: 15px;
    }
  }
  @media screen and (max-width:767px) {
    border: 0px solid;
    border-radius: 5px;
    margin-bottom: 10px;
    overflow: hidden;
    .search_inner {
      border: 5px solid #eee;
      padding: 10px;
      .row{
        display: block;
      }
    }
    .keyword,
    .area {
      padding: 0 0 20px;
      display: block;
      .keyword_label,
      .area_label{
        background: #eee;
        padding: 5px 10px;
        border-radius: 5px;
        margin-bottom: 5px;
      }
      .form {
        flex: 1;
        padding: 10px;
      }
      .c-input {
        width: 100%;
        &.o-outline_blk:not(:focus) {
          border: 1px solid #ccc;
        }
      }
      .c-select {
        select:not(:focus) {
          border: 1px solid #ccc;
        }
      }
    }
    .unit {
      .search_label {
        padding: 5px 10px;
        border-radius: 5px;
        margin-bottom: 5px;
      }
      + .unit {
        margin-top: 10px;
      }
      .form {
        padding: 10px;
      }
    }
    .c-checkbox_group {
      display: flex;
      li {
        width: 50%;
      }
    }
    .form_footer {
      padding: 20px 0 0;
    }
  }
}

.m-partner_sort {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin-bottom: 10px;
  gap: 10px;
  p {
    &:after {
      content: "：";
    }
  }
  ul {
    display: flex;
    gap: 10px;
    align-items: center;
  }
  a {
    &:hover {
      text-decoration: underline;
    }
    &.is_active {
      color: #333;
      white-space: nowrap;
      &:before {
        margin-left: -0.5em;
        content: "【 ";
      }
      &:after {
        margin-right: -0.5em;
        content: " 】";
      }
    }
  }
}

@media screen and (max-width: 767px) {
  .partner .m-boxlist .box_unit {
    padding: 5.34vw;
    margin-top: 2.67vw;
  }
  .partner .m-boxlist .partner_awards img {
    width: 6.74vw;
  }
  .partner .m-boxlist .unit_logo,
      /* .partner .m-boxlist .unit_keywords, */ 
      .partner .m-boxlist .unit_link .btn,
      .partner.m-boxlist .unit_link .btn {
    display: none;
  }
  .partner .m-boxlist .partner_type {
    margin: -5.33vw -5.33vw 5vw;
  }
  .partner .m-boxlist .unit_keywords.is_2col {
    margin-bottom: -4.66vw;
  }
  .partner .m-boxlist .unit_keywords.is_2col li {
    padding: 1.94vw;
    margin-bottom: 1.67vw;
    font-size: 2.2vw;
  }
}


.partner_services{
  display: inline-flex;
  li{
    &:not(:first-child){
      &:before{
        padding: 0 5px;
        content: '/';
      }
    }
  }
}


:root {
    --lp2405-font-color: #695D61;
    --lp2405-btn-bg-color: #fbe04b;
   --lp2405-h2-bg-color: #656565;
    --lp2405-accent-color: #366899;
    --lp2405-accent-font-color: white;
    --lp2405-font-family: "Noto Sans JP", sans-serif;
    --lp2405-num-font-family: "DM Sans", sans-serif;
    --lp2405-span-color: #fbe04b;
    --lp2405-background-color: #fbf7ee;
    --lp2405-accent2-color: #5599c4;
    --lp2405-accent2-shadow-color: #205c83;

}

#lp2405 {
font-family: var(--lp2405-font-family);
color: var(--lp2405-font-color);
padding-top: 100px;
overflow-x: hidden;
margin: 0;

}

#lp2405 html {
overflow: auto;
}
.lp2405 h3 {
margin: 0;
}
.lp2405_wrap-w1000 {
max-width: 1000px;
margin: 0 auto;
}
.lp2405_wrap-w800 {
max-width: 800px;
margin: 0 auto;
}

.flex-box {
display: flex;
}
#lp2405 h2 ,#lp2405 h3 {
text-align: center;
}
#lp2405 figure {
margin: 0;
}
/* サイドメニュー */
#lp2405 aside.sidemenu {
    display: flex;
    position: fixed;
    bottom: 0;
    top: 0;
    right: 0;
    justify-content: center;
    flex-direction: column;
    z-index: 1000;
}

#lp2405 aside.sidemenu>a.inquiry {
    background-color: #fff;
    color: #111;
    margin-bottom: 8px;
}
#lp2405 aside.sidemenu>a.download {
    background-color: var(--lp2405-btn-bg-color);
    color: var(--lp2405-font-color);
}
#lp2405 aside.sidemenu>a:hover {
    opacity: 0.7;
    transition: all 0.5s;
}
#lp2405 aside.sidemenu>a {
    display: block;
    padding: 24px 8px;
    height: 218px;
    text-align: center;
    letter-spacing: 0.2em;
    font-size: 18px;
    font-weight: bold;
    box-shadow: 0px 3px 10px -1px #777777;
    writing-mode: vertical-rl;
    text-decoration: none;
}
.lp2405_ditail-btn {
    text-align: center;
    font-size: 12px;
    display: inline-block;
    color: var(--lp2405-font-color);
    border: solid 1px var(--lp2405-font-color);
    padding: 1em 6em;
    margin: 15px auto;
    transition: .3s;
}
.lp2405_ditail-btn:hover {
    background: var(--lp2405-accent2-color);
    color: var(--lp2405-accent-font-color);
    text-decoration: none;
    border-color: var(--lp2405-accent2-color);
}

/*--------- header-------- */
#lp2405_header {
background: white;
width: 100%;
z-index: 90;
position: fixed; /* ウィンドウを基準に画面に固定 */
right: 0;
left: 0;
top: 0;

}
.lp2405-header {
justify-content: space-between;
height: 100px;
background: white;
padding-left: 2em;
padding-right: 2em;
align-items: center;
max-width: 1000px;
margin: 0 auto;
}
.lp2405-header a {
display: inline-block;
}
.lp2405-header-logo {
width: 214px;
}
.lp2405_contact-btn {
position: relative;
border:2px solid var(--lp2405-btn-bg-color);
background: var(--lp2405-btn-bg-color);
color: var(--lp2405-font-color
); 
border: none;
padding: 12px 90px 12px 55px; 
font-size: 22px;
border-radius: 40px;
font-weight: bold;
cursor: pointer;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}
.lp2405_contact-btn:hover {
opacity: 0.7;
text-decoration: none;
}
.lp2405_contact-btn p::after {
content: "";
position: absolute;
top: 0;
bottom: 0;
right: 64px;
width: 14px;
height: 14px;
margin: auto;
border-top: 4px solid var(--lp2405-h2-bg-color);
border-right: 4px solid var(--lp2405-h2-bg-color);
transform: rotate(45deg);
box-sizing: border-box;
z-index: 100;

}
/*--------- mv -------- */
#lp2405_mv {
background-image: url(/pleasanter/assets/images/lp/202405-partner-lp/lp202405_bg.png);
background-size: cover;
padding-bottom: 100px;
position: relative;
}

.lp2405_mv-box {
position: relative;
top: 111px;
}
.lp2405_mv-title-bg {
    position: absolute;
    background: rgba(255, 255, 255, 0.95);
    height: 222px;
    width: 100vw;
    right: 43vw;
    z-index: 9;
    top: 143px;
}
.lp2405_mv-txt-box {
width: 100%;
text-align: left;
font-size: 15px;
z-index: 10;
position: relative;
margin-top: 28px;
white-space: nowrap;
}
.lp2405_mv-txt-box h1 {
margin: 0;
display: inline-block;
text-align: left;
line-height: 2em;
font-size: 30px;
padding: 20px 7px;
}
.lp2405_mv-img-box img {
width: 130%;
position: relative;
right: 30%;
z-index: 8;
}
.lp2405_h1-underline {
font-size: 34px;
background: linear-gradient(transparent 70%, #fbe04b 70%);
}
.lp2405_mv-txt-box span {
font-size: 34px;
}
.lp2405_mv-box1 {

vertical-align: top;
}
.lp2405_mv-box2 {
align-items: flex-end;
justify-content: space-between;
position: relative;
top: -60px;

}       
.lp2405-mv-logo {
width: 209px;
margin-top: 9px;
}
.lp2405_mv-btn-container {
background: var(--lp2405-accent-color);
width: 50%;
color: var(--lp2405-accent-font-color);
z-index: 20;
}

.lp2405_mv-btn-container-border {
margin: 13px;
padding: 31px 15px;
border: 3px solid var(--lp2405-accent-font-color);
text-align: center;
}
.lp2405_mv-btn-container-p {
font-size: 24px;
font-weight: bold;
padding-top: 7px;
}
.lp2405_mv-box2 .lp2405_contact-btn {
margin-top: 26px;
} 
.lp2405_mv-box2-circle {
width: 149px;
height: 149px;
border-radius: 50%;
background: var(--lp2405-accent-color);
color: var(--lp2405-accent-font-color);
font-size: 22px;
font-weight: bold;
display: flex;
justify-content: center;
align-items: center;
text-align: center;
}
.lp2405_mv-box2-circle p {
line-height: 1.6em;
}
.lp2405_span-color {
color: var(--lp2405-span-color);
}
.lp2405_mv-circle-span-large {
font-size: 30px;
}
.lp2405_mv-circle-span-large2 {
font-size: 42px;

}
.lp2405_mv-box2-num {
line-height: 1.8em;
}
.lp2405_mv-circle-container .flex-box{
display: grid;
grid-template-columns: 1fr 1fr 1fr;
grid-template-rows: 1fr;
gap: 7px;

}
/*--------- section2 -------- */
#lp2405_section2 {
background: var(--lp2405-background-color);
padding-top: 88px;
padding-bottom: 88px;
width: 100%;
height: auto;
overflow: hidden;
}
/* パートナー推移グラフ */
.lp2405_chart-container {
        width: 350px;
        height: 350px;
        margin: auto;
    }

#lp2405_section2 .lp2405_ditail-btn-box {
font-weight: bold;
text-align: center;
margin: 40px;
}
#lp2405_section2 .lp2405_ditail-btn {
    font-size: 18px;
}

.lp2405_sec2-title-box p:first-child {
    white-space: nowrap;
}
.lp2405_num {
font-family: var(--lp2405-num-font-family);
} 
.lp2405_num-large {
font-size: 55px;
}
.lp2405_sec2-treat-p {
padding: 3px 19px;
margin-bottom: 0.2rem;
box-shadow: 4px 4px 0 var(--lp2405-accent2-color);
background-color: var(--lp2405-accent-color);;
color: var(--lp2405-accent-font-color);
font-weight: bold;
font-size: 50px;
text-align: center;
white-space: nowrap;
}
.lp2405_sec2-title-box {
font-size: 38px;
font-weight: bold;
text-align: center;
}
.lp2405_section2-img {
z-index: 1;
height: auto;
position: relative;
left: 20px;
top: 28px;
box-sizing:border-box;
}
.lp2405_section2-img img {
width: 150%;
height: auto;
}
.lp2405_sec2-title2 {
margin-top: 38px;
}
.lp2405_sec2-title-small {
font-size: 34px;
}

.lp2405_sec2-container2 {
padding-top: 23px;
background: white;
text-align: center;
padding-bottom: 50px;
}
.lp2405_sec2-title1 h3{
background: var(--lp2405-accent2-color);
color: var(--lp2405-accent-font-color);
font-size: 40px;
font-weight: bold;
padding: 8px;
padding-left: 27px;
margin-bottom: 32px;
}
.lp2405_sec2-title1 {
position: relative;
left: -27px;
}
.lp2405_sec2-title1::before {
position: absolute;
display: block;
content: "";
background: var(--lp2405-accent2-shadow-color);
height: calc(38px / 2);
width: 38px;
clip-path: polygon(50% 0, 100% 100%, 0 100%);
left: 1px;
top: calc(100% - 3px);
transform: rotate(45deg);
}
.lp2405_span-band {
color: var(--lp2405-accent-font-color);
background: var(--lp2405-accent-color);
padding: 15px 8px 8px 8px;
}
.lp2405_span-band span {
font-size: 40px;
}
.lp2405_sec2-container2-p {
font-size: 28px;
font-weight: bold;
}
.lp2405_award-box {
    margin-top: 19px;
}
.lp2405_award-frame {
position: relative;
display: inline-block;
margin: 18px;
}
.lp2405_award-frame img {
width: 262px;
height: auto;
}
.lp2405_award-p {
width: 100%;
text-align: center;
position: absolute;
top:58%;
left:50%;
transform: translate(-50%,-50%);
padding:0;
margin:0;
font-size: 14px;
}
.lp2405_award-p span {
font-size: 18px;
font-weight: bold;
}
.lp2405_sec2-box2 {
padding-top: 59px;
}
.lp2405_sec2-box2 figure {
margin: 0;
font-size: 10px;
}
.lp2405_sec2-box2 figure span {
font-weight: bold;
font-size: 14px;
}
.lp2405_sec2-box2-textbox {
text-align-last: left;
padding-right: 12px;
}
.lp2405_sec2-box2-textbox p:nth-child(2) {
line-height: 1.8em;
padding-top: 15px;
font-size: 16px;
} 
.lp2405_sec2-container3 {
margin-top: 40px;
}
.lp2405_sec2-container3 h3 {
background: var(--lp2405-h2-bg-color);
color: var(--lp2405-accent-font-color);
font-size: 28px;
padding: 10px;
}
.lp2405_sec2-container3-img-box {
background: white;
display: grid;
grid-template-columns: 1fr 1fr 1fr 1fr;
grid-template-rows: 1fr 1fr;
place-items: center;
padding: 10px;
}
.lp2405_sec2-container3-img-box img {
width: 75%;
} 
/*--------- section3 -------- */
#lp2405_section3 {
padding-top: 48px;
padding-bottom: 88px;
position: relative;
overflow: hidden;
}
#lp2405_section3 .lp2405_span-color {
font-weight: bold ;
}
.lp2405_section3-bg-square1, .lp2405_section3-bg-square2, .lp2405_section3-bg-square3 {
content: "";
position: absolute;
display: inline-block;
background: var(--lp2405-background-color);
width: 583px;
height: 583px;
transform: rotate( -45deg );
z-index: 1;
}
.lp2405_section3-bg-square1 {
top: 7%;
right: 18vw;
}
.lp2405_section3-bg-square2 {
top: 31%;
left: 10vw;
}
.lp2405_section3-bg-square3 {
top: 60%;
right: 7vw;
}

.lp2405_section3-wrap-w1000 {
position: relative;
z-index: 40;
}
#lp2405 h2 {
background: var(--lp2405-h2-bg-color);
color: var(--lp2405-accent-font-color);
padding: 15px 70px;
font-size: 32px;
letter-spacing: 0.1em;
}
.lp2405_section3-h2-box {
position: relative;
}
.lp2405_section3-h2::before, .lp2405_section3-h2::after{
content: "";
position: absolute;
display: inline-block;
width: 60px;
height: 60px;
background: var(--lp2405-accent2-color);
}
.lp2405_section3-h2::before{
width: 60px;
height: 60px;
background: var(--lp2405-accent2-color);
left: -18px;
top: -14px;
z-index: 20;
}
.lp2405_section3-h2::after{
width: 41px;
height: 41px;
background: var(--lp2405-accent-font-color);
left: 13px;
top: 13px;
z-index: 10;
}
.lp2405_section3-case-container {
margin-top: 48px;
}
.lp2405_sec3-case {
display: table;
align-items: center;
font-size: 24px;
text-align: center;
line-height: 51px;
font-weight: bold;
}
.lp2405_sec3-case-p1 {
background: var(--lp2405-h2-bg-color);
color: var(--lp2405-accent-font-color);
height: 2em;
width: auto;
display: table-cell;
vertical-align: middle;
padding: 0 52px;
}
.lp2405_sec3-case-p2 {
background: var(--lp2405-accent-font-color);;
color: var(--lp2405-h2-bg-color);
text-align: left;
height: 2em;
line-height: 1.6em;
display: table-cell;
vertical-align: middle;
padding: 0 32px;
width: 65vw;

}
.lp2405_sec3-case-convo {
background: var(--lp2405-accent2-color);
color: var(--lp2405-accent-font-color);
font-size: 20px;
}
.lp2405_sec3-case-convo .lp2405_wrap-w800 {
position: relative;
}
.lp2405_sec3-case-convo-explain {
padding-top: 32px;
padding-bottom: 32px;
line-height: 1.6em;
}
.lp2405_sec3-case-convo-explain-2 {
    width: 75%;
}
.lp2405_sec3-case-convo-area {
background: white;
padding-top: 22px;
padding-bottom: 42px;
padding: 22px 66px 42px 66px;
margin-bottom: 49px;
position: relative;

}
.lp2405_sec3-case-convo-area::after {
content: "";
position: absolute;
width: 0;
height: 0;
border-style: solid;
border-right: 66px solid transparent;
border-left: 66px solid transparent;
border-top: 50px solid white;
border-bottom: 0;
top: 95%;
left: 0;
right: 0;
margin: 0 auto;
}
.lp2405_sec3-case-convo-area figure {
text-align: center;
}
.lp2405_sec3-case-convo-dialogue {
background: var(--lp2405-accent-color);
padding: 8px 18px;
border-radius: 12px;
position: relative;
}
.lp2405_sec3-case-convo-dialogue-first::before{
content: "";
position: absolute;
width: 0;
height: 0;
border-style: solid;
border-top: 10px solid transparent;
border-bottom: 10px solid transparent;
border-right: 26px solid var(--lp2405-accent-color);
border-left: 0;
right: 98%;
top: calc(50% - 9px);
}
.lp2405_sec3-case-convo-area figcaption {
color: var(--lp2405-h2-bg-color);
font-size: 16px;
}
.lp2405_sec3-case-convo-area .flex-box {
align-items: center;
}
.lp2405_sec3-case-convo-area img {
width: 50%;
}
.lp2405_sec3-case-convo-area .flex-box:nth-of-type(2n) {
flex-direction: row-reverse;
margin-right: 6px;
margin-top: 26px;
margin: 26px 6px 26px 0;
}
.lp2405_sec3-case-convo-dialogue-second::after{
content: "";
position: absolute;
width: 0;
height: 0;
border-style: solid;
border-top: 10px solid transparent;
border-bottom: 10px solid transparent;
border-left: 26px solid var(--lp2405-accent-color);
border-right: 0;
top: calc(50% - 9px);
left: 98%;
}
.lp2405_sec3-case-convo-explain-2 {
font-size: 24px;
font-weight: bold;
text-align: left;
}
.lp2405_sec3-illust img{
width: 116px;
position: absolute;
right: 0;
bottom: 0;
}
/*--------- section4 -------- */
#lp2405_section4 {
background-image: url(/pleasanter/assets/images/lp/202405-partner-lp/lp202405_bg.png);
padding-bottom: 90px;
}
.lp2405_section3-h2-box {
margin-bottom: 49px;
}
.lp2405_section4-box {
position: relative;
}
.lp2405_section4-container {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
grid-template-rows: 1fr;
column-gap: 18px;
}
.lp2405_section4-icon-box {
border: solid 3px var(--lp2405-accent2-color);
background-color: #fff;
position: relative;
height: auto;
aspect-ratio: 8 / 5;
text-align: center;
justify-content: center;
}
.lp2405_section4-box:before {
position: absolute;
width: 55px;
height: 55px;
background: var(--lp2405-accent2-color);
font-size: 40px;
line-height: 55px;
text-align: center;
color: var(--lp2405-background-color);
top: -17px;
left: -7px;
z-index: 20;
}
.lp2405_section4-box:nth-child(1)::before {
content: "1";
}
.lp2405_section4-box:nth-child(2)::before {
content: "2";
}
.lp2405_section4-box:nth-child(3)::before {
content: "3";
}

.lp2405_section4-icon-box img {
width: 40%;

position: absolute;
top: 50%;                  
left: 50%;                 
transform: translateY(-50%) translateX(-50%);  

}
.lp2405_section4-h {
background: var(--lp2405-accent-color);
color: var(--lp2405-accent-font-color);
display: inline-block;
padding: 8px 36px;
font-size: 20px;
font-weight: bold;
text-align: center;
}
.lp2405_section4-h-box {
text-align: center;
position: relative;
top: -20px;
}
.lp2405_section4-p {
padding: 1px 20px 20px 20px;
font-size: 18px;
line-height: 1.8em;
}

/*--------- section5 -------- */
#lp2405_section5 {
padding-bottom: 101px;
}
.lp2405_section5-pc-img {
width: 100%;
}
.lp2405_section5-sp-img {
    display: none;
}
#lp2405_section5 .lp2405_section3-h2-box {
margin-top: 88px;
}
.lp2405_section5-p {
font-size: 20px;
padding-top: 29px;
line-height: 1.7em;
}
/*--------- section6 -------- */ 
#lp2405_section6 {
background-color: var(--lp2405-background-color);
padding-bottom: 87px;
}
#lp2405_section6 article {
text-align: center;
}
.lp2405_section6-card-wrapper {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
grid-template-rows: 1fr;
}
#lp2405_section6 img {
height: auto;
width: 100%;
}
.lp2405-card-p-box p {
padding:15px;
font-size: 14px;
height: 11em;
text-align: left;
}

.lp2405-card-img-box {
padding: 15px 15px 10px 15px;
background-color: #fff;

}
.lp2405-partner-img {
object-fit: cover;
}
.lp2405-partner-lpgo-img {
max-width: 100%;
text-align: center;
display: block;
margin: auto;
height: auto;
object-fit: contain;
box-sizing: border-box;
}


.lp2405-card-img-box h5 {
    height: 61px;
    object-fit: contain;
    justify-content: center;
    align-items: center;

    }

/*--------- section7 -------- */  
#lp2405_section7 p {
margin-bottom: 68px;
font-size: 20px;
}
#lp2405_section7 {
margin-bottom: 103px;
padding-top: 102px;
}
.lp2405_sec7-h3-box {
position: relative;
margin: 0 auto;
text-align: center;
justify-content: center;


}
.lp2405_sec7-h3-box h3 {
padding: 10px 54px;
display: inline-block;
font-size: 24px;

}
.lp2405_sec7-h3-box::before,.lp2405_sec7-h3-box::after {
content: "";
width: 20px;
height: 100%;
position: absolute;
}
.lp2405_sec7-h3-box::before {
border-left: solid 2px #888;
border-top: solid 2px #888;
border-bottom: solid 2px #888;
top: 0;
left: 0;
}
.lp2405_sec7-h3-box::after {
border-right: solid 2px #888;
border-top: solid 2px #888;
border-bottom: solid 2px #888;
top: 0;
right: 0;
}
.lp2405_section7-table {
border-collapse: collapse;
font-size: 20px; 
margin-top: 51px;
}

.lp2405_section7-table th, .lp2405_section7-table td{
border: 1px solid #C4C4C4;
border-collapse: collapse;
}
.lp2405_section7-table td {
padding: 20px 32px;
}
.lp2405_section7-table th {
width: 25%;
}
.lp2405_section7-table-row th:first-child {
border: none;
}
.lp2405_section7-table-row {
color: var(--lp2405-accent-font-color);


}
.lp2405_section7-table-row th {
padding: 15px 48px;
}
.lp2405_section7-table-row th:nth-child(2){
background-color: var(--lp2405-accent-color);
}
.lp2405_section7-table-row th:nth-child(3) {
background-color: var(--lp2405-accent2-color);
}
.lp2405_section7-table-columns:nth-child(even) th{
background-color: var(--lp2405-background-color);
}
.lp2405_section7-table-columns:nth-child(odd) th {
background-color: #fffdf7;

}
.lp2405_section7-table-columns:nth-child(3) td {
text-align: center;
}
.lp2405_section7-table-columns th {
padding: 47px;
width: 8em;
font-weight: 400;
text-align: left;
}
.lp2405_section7-table td span{
color: var(--lp2405-accent-color);
background: linear-gradient(transparent 70% , var(--lp2405-span-color) 70%);
font-weight: bold;
}


/*--------- section8 -------- */  
#lp2405_section8 {
padding-bottom: 190px;
background-image: url(/pleasanter/assets/images/lp/202405-partner-lp/lp202405_bg.png);


}
#lp2405_section8 ol {
width: 100%;
list-style: none;
padding: 0;
display: grid;
grid-template-columns:1fr 1fr 1fr;
grid-template-rows: 1fr;
column-gap: 38px;
margin-top: 127px;
}

.lp2405_section8-li-flexbox {
height: 224px;
display:flex;
flex-flow: column;
justify-content:space-between;
}
.lp2405_section8-li-box {
border: solid 1px var(--lp2405-font-color);
background-color: #fff;
position: relative;
height: auto;
text-align: center;
justify-content: center;
padding:  69px 54px 38px 54px;

}

.lp2405_section8-li-box-after::after {
content: "";
position: absolute;
width: 0;
height: 0;
border-style: solid;
border-top: 13px solid transparent;
border-bottom: 13px solid transparent;
border-left: 27px solid #555555;
border-right: 0;
top: 0;
right: -34px;
bottom: 0;
margin: auto 0;
}

.lp2405_section8-li-num span::before {
content: "STEP";
font-size: 12px;
position: relative;
bottom: -25%;
letter-spacing: 0.12em;
font-family: var(--lp2405-font-family);
}
.lp2405_section8-li-num span {
font-family: var(--lp2405-num-font-family);
font-size: 44px;
position: relative;
bottom: 50%;
text-align: center;

}
.lp2405_section8-li img {
width: 100%;
}
.lp2405_section8-li-num {
width: 93px;
height: 93px;
color: var(--lp2405-accent-font-color);
border-radius: 50%;
background: var(--lp2405-accent2-color);
text-align: center;
font-weight: bold;
position: absolute;
top: 0;
left: 50%;
transform: translate(-50%, -50%);

}
.lp2405_section8-li-img-box {
width: 80%;
padding-bottom: 0px;
height: auto;
margin: 0 auto;
align-items: flex-start;
}

.lp2405_section8-li-box-p {

font-size: 24px;
color: var(--lp2405-accent-color);
line-height: 1.5em;
font-weight: bold;
}
.lp2405_section8-li-p {
font-size: 18px;
line-height: 170%;
padding: 15px 3px 0px 3px;
}

/*--------- section9 -------- */  
#lp2405_section9 {
top: -92px;
position: relative;

}
.lp2405_sec9-num {

width: 165px;
height: 67px;
display: inline-block;
font-size: 34px;
font-weight: bold;
padding: 0 18px 0 4px;
color: var(--lp2405-accent-font-color);
background: var(--lp2405-accent2-color);
border-bottom: solid 6px var(--lp2405-accent-font-color);
position: relative;
background-clip: padding-box;
}
.lp2405_sec9-num::after {
content: "";
width: 165px;
border: 2px solid var(--lp2405-accent2-color);
position: absolute;
bottom: -10px;
right: 0;

}
.lp2405_sec9-num p {
position: relative;
white-space: nowrap;
top:3px;
}
.lp2405_sec9-num span {
font-size: 49px;
font-family: var(--lp2405-num-font-family);
}

.lp2405_sec9-text {
width: 50%;
}
.lp2405_sec9-text2 {
padding: 0;
margin-right: 0;
}

.lp2405_sec9-text1, .lp2405_sec9-text3 {
margin-left: 7.8%;

}
.lp2405_sec9-text h4 {
font-size: 28px;
margin: 16px 0 32px 0;
white-space: nowrap;
}
.lp2405_sec9-text-p {
font-size: 16px;
width: 80%;
line-height: 1.7em;
}
.lp2405_sec9-wrap1 {
position: relative;
z-index: 20;
}
.lp2405_sec9-content-container img {
width: 100%;
}
.lp2405_sec9-content-container {
max-width: 1000px;
position: relative;
z-index: 20;
}
.lp2405_sec9-content-container2,  .lp2405_sec9-content-container4{
flex-direction: row-reverse;
position: absolute;
top: 40px;
}
.lp2405_sec9-content-container3 {
position: absolute;
top: 40px;
}

.lp2405_sec9-bg {
background: white;
height: 356px;
width: 60%;
position: absolute;
z-index: 1;
top: 139px;
}
.lp2405_sec9-bg2, .lp2405_sec9-bg3, .lp2405_sec9-bg4 {
position: absolute;
top: 71px;
}
.lp2405_sec9-bg2, .lp2405_sec9-bg4 {
right: -10px;
}
.lp2405_sec9-bg3 {
top: 71px;
}
.lp2405_sec9-wrap {
background: var(--lp2405-background-color);
padding-bottom: 88px;
}
.lp2405_sec9-wrap2 , .lp2405_sec9-wrap3, .lp2405_sec9-wrap4 {
padding-bottom: 56px;
position: relative;

}
.lp2405_sec9-bg-image {
height: 492px;
width: 100%;
top: 0;
right: 0;

}
.lp2405_sec9-bg-image img {

object-fit: cover;
width: 100%;
height: 100%;
}

/*--------- section10 -------- */ 

#lp2405_section10 {
padding-bottom: 23px;
padding-top: calc(88px - 92px);
margin-top: 0;
}
.lp2405_section10-accordion-container {
max-width: 800px;
margin: 0 auto;
}

.lp2405_section10-accordion-container details {

border-radius: 4px;
margin-bottom: 20px;
}

.lp2405_section10-accordion-summary {
border-left:  solid 10px var(--lp2405-accent-color);
display: block;
position: relative;
font-weight: bold;
font-size: 20px;
padding: 29px 50px;
cursor: pointer;
background-color: var(--lp2405-background-color);
color: var(--lp2405-font-color);
}
.lp2405_section10-accordion-summary::after {
content: "+";
font-size: 35px; /* 記号のサイズ */
position: absolute;
font-weight: 200;
right: 30px;
top: 50%;
transform: translateY(-50%);
color: #a09a8b;
}
.lp2405_section10-accordion-ditails[open] .lp2405_section10-accordion-summary::after{
content: "−";
color: #a09a8b;
}
.lp2405_section10-accordion-content {
padding: 10px 15px;

}
.lp2405_section10-accordion-content p {
font-size: 18px;
padding: 30px 46px;
line-height: 1.6em;
}
.lp2405_section10-accordion-ditails[open] .lp2405_section10-accordion-summary {
background-color: var(--lp2405-background-color);


}

/*--------- section11 -------- */ 
#lp2405_section11 {
background-image: url(/pleasanter/assets/images/lp/202405-partner-lp/lp202405_bg.png);
padding-bottom: 38px;
margin-top: 23px;
}
#lp2405_section11 .satori__custom_form_325b0faaf90f3379 {
width: 80%;
box-shadow: 2px 7px 4px -6px rgba(0, 0, 0, 0.3);
margin: 0 auto;
background: white;
padding: 33px 80px;
}


/* --------footer ----------*/
#lp2405 footer {
padding-top: 18px;
padding-bottom: 12px;
}
#lp2405 footer:not(.content_footer){
background-color: var(--lp2405-accent2-color)
} 
#lp2405 footer .flex-box {
align-items: center;
}

#lp2405 footer .lp2405_footer-logo img{
width: 35%;
}
#lp2405 footer p{
font-weight: bold;
color: #fff;
text-align: right;
text-wrap: nowrap;
}
#lp2405 footer .footer_link>ul{
list-style: none;
margin-top: 48px;
font-size: 12px;
}
#lp2405 footer .footer_link ul {
display: flex;
margin: 20px auto 0 auto;
width: 80%;
justify-content: space-between;

}
#lp2405 footer .footer_link ul li {
padding: 0;

}
#lp2405 footer .footer_link>ul a{
color: #fff;
}
#lp2405 footer small{
display: block;
padding: 32px 0 0;
font-size: 10px;
text-align: center;
line-height: 1.6;
color: #fff;
}



/* ----------レスポンシブ ----------*/
@media screen and (max-width: 1000px){
.lp2405_lb-span{
    display: inline-block;
    }
.lp2405_wrap-w1000 {
    max-width: 767px;
    margin: 0 auto;
    }
.lp2405_wrap-w800 {
    max-width: 600px;
    margin: 0 auto;
    }
    .lp2405_mv-box {
        top: 32px;
    }
    .lp2405_mv-img-box  {
        text-align: center;
    }
    .lp2405_mv-img-box img {
        width: 90%;
        right: 0;
        z-index: 10;
    }
    .lp2405_mv-title-bg {
        width: 200vw;
        right: 0;
        top: 85px;
    }
    .lp2405_mv-txt-box {
        margin-left: 0;
        right: 0;
        text-align: center;
        top: 20px;
    }
    .lp2405_mv-txt-box h1 {
        text-align: center;
    }
    .lp2405_mv-box .lp2405_mv-box1 {
        flex-direction: column;
    }
    .lp2405_mv-box .lp2405_mv-box2 {
        flex-direction: column;
        width: 100%;
        flex-direction: column-reverse;
    }
    .lp2405_mv-box .lp2405_mv-box2 .lp2405_contact-btn {
        width: 75%;
        
    }
    .lp2405_mv-circle-container {
        margin: 0 auto;
        z-index: 11;
    }
    .lp2405_mv-btn-container {
        width: 90%;
        margin: 0 auto;
        margin-top: 21px;
    }
    /*--------- sec2 -------- */
    .lp2405_sec2-container {
        flex-direction: column;
    }
    .lp2405_section2-img {
        padding-top: 20px;
        padding-bottom: 20px;
        left: -16px;
        }
        .lp2405_section2-img img {
        width: 65%;
        }
        .lp2405_sec2-treat-p {
        display: inline-block;
        font-size: 38px;
        white-space: normal;
        }
        .lp2405_sec2-title-box {
            font-size: 32px;
            }
        .lp2405_num-large {
            font-size: 42px;
            }      
        .lp2405_sec2-title2 {
            margin-top: 23px;
            }
        .lp2405_sec2-title-small {
        font-size: 28px;
        }
        .lp2405_sec2-container2-p {
            font-size: 24px;
            }
        .lp2405_sec2-box2 figure img{
            margin-top: 23px;
            }
        /*--------- sec9 -------- */
        .lp2405_sec9-bg1 {
            top: 240px;
        }

}


@media screen and (max-width: 768px){
    .lp2405_ditail-btn {
        font-size: 12px;
        padding: 0.6em 4em;
    }
    
    /* サイドメニュー */
    #lp2405 aside.sidemenu {
        display: none;
    }
        .lp2405_wrap-w1000 {
            max-width: calc(100vw - 30px);
            margin: 0 auto;
            }
        .lp2405_wrap-w800 {
            max-width: calc(100vw - 60px);
            margin: 0 auto;
            }
            #lp2405 {
                padding-top: 56px;
            }
        #lp2405 h2 {
            padding: 5px 20px;
            letter-spacing: 0.1em;
            font-size: 22px;
            overflow: visible;
            }
            .lp2405_section3-h2::before, .lp2405_section3-h2::after{
            content: "";
            position: absolute;
            display: inline-block;
            width: 21px;
            height: 21px;
            background: var(--lp2405-accent2-color);
            }
            .lp2405_section3-h2::before{
            background: var(--lp2405-accent2-color);
            left: -8px;
            top: -6px;
            z-index: 20;
            }
            .lp2405_section3-h2::after{
            width: 14px;
            height: 14px;
            background: var(--lp2405-accent-font-color);
            left: 4px;
            top: 4px;
            z-index: 10;
            }
    /*--------- header-------- */
        .lp2405-header {
            height: 56px;
        }
        .lp2405-header-logo {
            width: 120px;;
            }
        
        .lp2405_contact-btn {
            padding: 7px 40px 7px 20px;
            width: 100%;
            font-size: 14px;
            }
    /*--------- mv -------- */
    #lp2405_mv {
        padding-bottom: 0px;
    }
        .lp2405_mv-txt-box h1 {
            text-align: center;
            font-size: 24px;
        }
        .lp2405_h1-underline, .lp2405_mv-txt-box span{
            font-size: 24px;
            }
        .lp2405_mv-box .lp2405_mv-box1 {
            flex-direction: column;
        }
        .lp2405_mv-box .lp2405_mv-box2 {
            flex-direction: column;
            width: 100%;
            flex-direction: column-reverse;
        }
        .lp2405_mv-box .lp2405_mv-box2 .lp2405_contact-btn {
            width: 75%;
            padding: 7px 42px 7px 22px;
        }
        .lp2405_mv-circle-container {
            margin: 0 auto;
        }
        .lp2405_mv-btn-container {
            width: 90%;
            margin: 0 auto;
            margin-top: 21px;
        }
    
        .lp2405_contact-btn p::after {
            right: 25px;
            width: 10px;
            height: 10px;
            border-top: 2px solid var(--lp2405-h2-bg-color);
            border-right: 2px solid var(--lp2405-h2-bg-color);
            }

        .lp2405_mv-box2-circle {
            width: 104px;
            height: 104px;
            font-size: 16px;
            }
            .lp2405_span-color {
            color: var(--lp2405-span-color);
            }
            .lp2405_mv-circle-span-large {
            font-size: 25px;
            }
            .lp2405_mv-circle-span-large2 {
            font-size: 31px;
            
            }
            .lp2405_mv-box2-num {
            line-height: 1.4em;
            }
            .lp2405_mv-circle-container .flex-box{
            display: grid;
            grid-template-columns: 1fr 1fr 1fr;
            grid-template-rows: 1fr;
            gap: 7px;
            }

        /* --------sec2--------*/
        .lp2405_sec2-container {
            flex-direction: column;
        }
        .lp2405_section2-img {
            top: 8px;
            }
        
            .lp2405_sec2-treat-p {
            padding: 3px 19px;
            display: inline-block;
            margin-bottom: 0.2rem;
            font-weight: bold;
            font-size: 34px;
            white-space: normal;
            }
            .lp2405_sec2-title-box {
                font-size: 26px;
                font-weight: bold;
                }
            .lp2405_num-large {
                font-size: 39px;
                }      
            .lp2405_sec2-title2 {
                margin-top: 23px;
                }
            .lp2405_sec2-title-small {
            font-size: 28px;
            }
            .lp2405_sec2-container2 {
            padding-top: 23px;
            padding-bottom: 50px;
            }
            .lp2405_sec2-title1 h3{
            font-size: 24px;
            padding: 8px;
            padding-left: 27px;
            margin-bottom: 32px;
            }
            .lp2405_sec2-title1 {
            position: relative;
            left: -13px;
            }
            .lp2405_sec2-title1::before {
            height: calc(17px / 2);
            width: 17px;
            left: 0px;
            top: calc(100% - 1px);
            }
            .lp2405_span-band {
            padding: 15px 8px 8px 8px;
            }
            .lp2405_span-band span {
            font-size: 30px;
            }
            .lp2405_sec2-container2-p {
            font-size: 18px;
            }
            .lp2405_sec2-box2 {
            padding-top: 20px;
            flex-direction: column;
            }
            #lp2405_section2 .lp2405_ditail-btn-box {
                margin: 5px 0 22px 0;

                }
            #lp2405_section2 .lp2405_ditail-btn {
                font-size: 12px;
                }
            .lp2405_sec2-container2 .lp2405_ditail-btn-box {
                margin-top: 120px;
            }
            .lp2405_sec2-container3 h3 {
                font-size: 20px;
                padding: 10px;
                }
            .lp2405_sec2-container3-img-box {
            grid-template-columns: 1fr 1fr;
            grid-template-rows: 1fr 1fr;
            gap: 10px;
            padding: 10px;
            }
            .lp2405_sec2-container3-img-box img {
                width: 60%;
                } 
            .lp2405_award-p {
                width: 100%;
                text-align: center;
                position: absolute;
                top:58%;
                left:50%;
                transform: translate(-50%,-50%);
                padding:0;
                margin:0;
                font-size: 10px;
                }
                .lp2405_award-p span {
                font-size: 14px;
                font-weight: bold;
                }
                .lp2405_award-frame {
                margin: 9px;
                }
                .lp2405_award-frame img {
                width: 80%;
             
                }

 /*--------- sec3 -------- */
        /* footer */
        #lp2405  footer{
            padding: 64px 0 32px;
        }
        #lp2405  footer .logo_wrap{
            flex-direction:  column-reverse;
        }
        #lp2405  footer p{
            text-align: center;
        }
        #lp2405  footer .logo_wrap .logo{
            margin-top: 40px;
        }


        .lp2405_section3-case-container {
        margin-top: 40px;
        }
        .lp2405_sec3-case {
        font-size: 20px;
        display: table;
        
        }
        .lp2405_sec3-case-p1 {
        height: 4em;
        width: 25vw;
        display: table-cell;
        vertical-align: middle;
        padding: 0 20px;
    
        }
        .lp2405_sec3-case-p2 {
        height: 4em;
        width: 65vw;
        line-height: 1.6em;
        display: table-cell;
        vertical-align: middle;
        padding: 0 13px;
        }
        .lp2405_sec3-case-convo {
        font-size: 16px;
        }
        .lp2405_sec3-case-convo .lp2405_wrap-w800 {
        position: relative;
        }
        .lp2405_sec3-case-convo-explain {
        font-size: 16px;
        }
        .lp2405_sec3-case-convo-explain-2 {
        font-size: 14px;
        }
        .lp2405_sec3-case-convo-area .flex-box {

        }
        .lp2405_sec3-case-convo-area {
        padding: 13px 27px;
        }
 
    /*--------- sec4 -------- */
        .lp2405_section4-container {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: 1fr 1fr 1fr;
        row-gap: 60px;
        }
        .lp2405_section4-icon-box {
        width: 60%;
        height: auto;
        aspect-ratio: 8 / 5;
        text-align: center;
        justify-content: center;
        top: 25%;
        left: 50%;
        transform: translate(-50%, -50%);
        }
        .lp2405_section4-h {
        background: var(--lp2405-accent-color);
        color: var(--lp2405-accent-font-color);
        display: inline-block;
        padding: 11px 47px;
        font-size: 20px;
        font-weight: bold;
        text-align: center;
        
        }
        .lp2405_section4-h {
        padding: 6px 27px;

        }
        .lp2405_section4-h-box {
        text-align: center;
        position: relative;
        top: -12%
        }
        .lp2405_section4-box:before {
     
        width: 55px;
        height: 55px;
        font-size: 40px;
        line-height: 55px;
        top: 0%;
        left: 20%;
        transform: translate(-50%, -50%);
        }
        .lp2405_section4-p {
            position: relative;
            padding: 0px 40px 0px 40px;
            font-size: 16px;
            line-height: 1.8em;
            top: -20px;
            }
   /*--------- sec5 -------- */
   #lp2405_section5 {
    padding-bottom: 48px;
    }
        .lp2405_section5-p {
            font-size: 16px;
            }
    #lp2405_section5 .lp2405_section3-h2-box {
        margin-top: 48px;
        }

    /*--------- sec6 -------- */
 
    #lp2405_section6 {
        background: white;
        padding-bottom: 48px;
    }
    #lp2405_section6 article {
        width: 100%;
        margin: 0 auto;
        }
        .lp2405_section6-card-wrapper {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: 1fr 1fr 1fr;
        row-gap: 28px;
        }
        #lp2405_section6 img {
        width: 100%;
        }
        .lp2405-card-p-box p{
        
        font-size: 12px;
        height: 8em;
        }
        .lp2405-card-img-box {
        
        }
        .lp2405-card-img-box a {
        display: table;
        }
        .lp2405-partner-img {
        width: 45vw;
        object-fit: cover;
        }
        .lp2405-partner-lpgo-img {
        text-align: center;
        width: 100%;
        }
        .lp2405-card-img-box h5 {
        display: table-cell; 
        vertical-align: middle;
        
        }
    /*--------- sec7 -------- */
        #lp2405_section7 {
        margin-bottom: 48px;
        padding-top: 0px;
        }
        #lp2405_section7 p {
        margin-bottom: 32px;
        font-size: 14px;
        }
        .lp2405_sec7-h3-box h3 {
        padding: 10px 54px;
        display: inline-block;
        font-size: 17px;
    }
    .lp2405_section7-table {
        border-collapse: collapse;
        border: 1px solid #C4C4C4;
        font-size: 14px; 
        margin-top: 51px;
        }
      
        .lp2405_section7-table td {
        border-collapse: collapse;
        padding: 15px;
        width: 50%;
        height: 100%;
        display: inline-block;
        border-top: none;
        border-bottom: none;
        
        }

       .lp2405_section7-none {
        display: none;
       }
       .lp2405_section7-table-row {
        display: flex;
        width: 100%;
       }
        .lp2405_section7-table-row th {
        padding: 8px;
        width: 50%;
        }
    
        .lp2405_section7-table-columns th {
        padding: 10px;
        width: 100%;
        display: block;
        font-weight: 400;
        text-align: center;
        }
        .lp2405_section7-table-columns th:first-child {
        display: block;
        width: 100%;
        }
        /*--------- sec8 -------- */
        #lp2405_section8 {
            background-image: none;
        }
        #lp2405_section8 ol {
            list-style: none;
            padding: 0;
            display: grid;
            grid-template-columns:1fr;
            grid-template-rows: 1fr 1fr 1fr;
            row-gap: 79px;
            margin-top: 81px;
            }
        .lp2405_section8-li-flexbox {
            flex-flow: row-reverse;
            height: auto;
        }
        .lp2405_section8-li-box-p {
            font-size: 20px;
            color: var(--lp2405-accent-color);
            line-height: 1.5em;
            font-weight: bold;
            text-align: left;
            margin: auto;
            }
            .lp2405_section8-li-p {
            font-size: 16px;
            line-height: 1.7em;
            padding: 15px 3px 0px 3px;
            }
          
            .lp2405_section8-li-box-after::after {
                display: none;
                }
            .lp2405_section8-li-img-box {
            width: 90px;
            padding-bottom: 0px;
            height: auto;
            align-items: middle;
            margin-right: 0;
            margin-left: 10px;
            }

            .lp2405_section8-li-box {
           
            text-align: center;
            justify-content: center;
            padding:  18px 18px 18px 20%;
            
            }
            .lp2405_section8-li span::before {
                font-size: 10px;
                bottom: -20%;
                letter-spacing: 0.12em;
                }
            .lp2405_section8-li span {
                font-size: 24px;
                position: relative;
                bottom: 33%;
                text-align: center;
                
                }
            .lp2405_section8-li-num {
                width: 60px;
                height: 60px;

                position: absolute;
                top: 0;
                left: 10%;
                transform: translate(-50%, -50%);
                
                }
            /*--------- sec9 -------- */
            .lp2405_sec9-wrap2 , .lp2405_sec9-wrap3, .lp2405_sec9-wrap4 {
                padding-bottom: 0px;
                }
            #lp2405_section9 {
                overflow-x: hidden;
            padding-top: 10px;
            margin-bottom: -300px;
            }
            .lp2405_sec9-text {
                width: 100%;
                }
                .lp2405_sec9-text2 {
                padding: 0;
                margin-right: 0;
                }
                
                .lp2405_sec9-text1, .lp2405_sec9-text3 {
                margin-left: 0;
                
                }
                .lp2405_sec9-text h4 {
                font-size: 20px;
                margin: 16px 0 23px 0;
                }
                .lp2405_sec9-text-p {
                font-size: 16px;
                width: 100%;
                line-height: 1.7em;
                }
                .lp2405_sec9-wrap1 {
                position: relative;
                padding-bottom: 300px;
                z-index: 20;
                }
            .lp2405_sec9-content-container img {
                width: 80%;
                position: relative;
                left: -20%;
                top: 18px;
                }
                .lp2405_sec9-content-container {
                padding: 5%;
                z-index: 30;
                top: ;
                flex-direction: column;
                }
                .lp2405_sec9-content-container2,  .lp2405_sec9-content-container4{
                flex-direction: row-reverse;
                position: absolute;
                
                }
                .lp2405_sec9-content-container2, .lp2405_sec9-content-container3, .lp2405_sec9-content-container4 {
                top:-300px;
                }
              
                .lp2405_sec9-content-container2:nth-child(2), .lp2405_sec9-content-container4:nth-child(2) {
                    text-align: right;
                }
                .lp2405_sec9-text2 h4, .lp2405_sec9-text-p, .lp2405_sec9-text4 h4, .lp2405_sec9-text-p{
                text-align: left;
                }
                .lp2405_sec9-num {
                width: 130px;
                height: 40px;
                display: inline-block;
                font-size: 26px;
                
                padding-top: 6px;
                
                }
                .lp2405_sec9-num::after {
                content: "";
                width: 130px;
                border: 2px solid var(--lp2405-accent2-color);
                position: absolute;
                bottom: -10px;
                right: 0;
                
                }
                .lp2405_sec9-num p {
                position: relative;
                top:-13px;
                }
                .lp2405_sec9-num span {
                font-size: 37px;
                }
                    
            .lp2405_sec9-bg {
                width: 100%;
                }
                .lp2405_sec9-bg1 {
                    top: 139px;
                }
                .lp2405_sec9-bg2, .lp2405_sec9-bg3, .lp2405_sec9-bg4 {
                position: relative;
                top: -500px;
                z-index: 20;
                
                }
                .lp2405_sec9-bg2, .lp2405_sec9-bg4 {
                right: 0px;
                }
                .lp2405_sec9-bg-image {
                    overflow: hidden;
                position: relative;
                height: 492px;
                width: 90%;
                height: 237px;
                z-index: 25;
                top: 40px;
                right: 10%;
                }
                .lp2405_sec9-bg-image2, .lp2405_sec9-bg-image4 {
                right: -20%;
               
                }
               
                
                /*--------- sec10 -------- */
                #lp2405_section10 {
                    padding-top: 53px;
                    position: relative;
                    background: white;
                    z-index: 30;
                }
                .lp2405_section10-accordion-summary {
                    
                    font-size: 18px;
                    padding: 18px 15% 18px 18px;
                    cursor: pointer;
                    background-color: var(--lp2405-background-color);
                    color: var(--lp2405-font-color);
                    }
                    
                .lp2405_section10-accordion-content {
                    padding: 10px 15px;
                    
                    }
                    .lp2405_section10-accordion-content p {
                    font-size: 16px;
                    padding: 18px 15px;
                    line-height: 1.6em;
                    }
                    .lp2405_section10-accordion-ditails[open] .lp2405_section10-accordion-summary {
                    background-color: var(--lp2405-background-color);
                    
                    
                    }
                    /*--------- sec11 -------- */
                
                    #lp2405_section11 .satori__custom_form_325b0faaf90f3379 {
                        width: 100%;
                        box-shadow: 2px 7px 4px -6px rgba(0, 0, 0, 0.3);
                        margin: 0 auto;
                        background: white;
                        padding: 18px 5px;
                        }
                        
        /*--------- footer -------- */
        #lp2405  footer .flex-box {
            flex-direction: column-reverse;
        }

        #lp2405 footer {
            padding: 28px;
            }
            #lp2405 footer:not(.content_footer){
            background-color: var(--lp2405-accent2-color)
            } 
            #lp2405 footer .flex-box {
            align-items: center;
            text-align: center;
            }
            
            #lp2405 footer .lp2405_footer-logo img{
            width: 35%;
            }
            #lp2405 footer p{
            text-align: center;
            margin: 29px 0;
            }
            #lp2405 footer .footer_link>ul{
            margin-top: 29px;
            font-size: 14px;
            flex-direction: column;
            text-align: center;
            }
            #lp2405 footer .footer_link ul {
            margin: 29px auto 0 auto;

            }
            #lp2405 footer .footer_link ul li {
                margin-bottom: 8px;
            }



}
@media screen and (max-width: 414px){

    /*--------- header-------- */
    .lp2405_contact-btn {
        padding: 7px 42px 7px 22px;
        width: 100%;
        font-size: 14px;
       }
    .lp2405_mv-box .lp2405_mv-box2 .lp2405_contact-btn {
        width: 100%;
    }
    /*--------- mv -------- */ 

    .lp2405_mv-box {
        top: 0px;
    }
    .lp2405_mv-title-bg {
        top: calc(85px - 32px);
        height: 131px;
    }
    .lp2405_mv-txt-box h1 {
        text-align: center;
        font-size: 18px;
    }
    .lp2405_h1-underline, .lp2405_mv-txt-box span{
        font-size: 20px;
    }
    .lp2405_mv-txt-box span {
        
        }
    .lp2405_mv-circle-container {
        width: 90%;
    }
    .lp2405_mv-btn-container-p {
        font-size: 22px;
  
        padding-top: 7px;
        }
        .lp2405_mv-box2 .lp2405_contact-btn {
        margin-top: 13px;
        } 
  
 /*--------- sec2 -------- */ 
 /* パートナー推移グラフ */
.lp2405_chart-container {
    width: 300px;
    height: 300px;
    margin: auto;
}

        .lp2405_sec2-treat-p {
        padding: 3px 19px;
        display: inline-block;
        margin-bottom: 0.2rem;
        font-weight: bold;
        font-size: 26px;
        }
        .lp2405_sec2-title-box {
            font-size: 20px;
            font-weight: bold;
            text-align: center;
            }
        .lp2405_num-large {
            font-size: 39px;
            }      
        .lp2405_sec2-title2 {
            margin-top: 23px;
            }
        .lp2405_sec2-title-small {
        font-size: 20px;
        }
    /*--------- sec4 -------- */
    .lp2405_section4-h-box {
        top: 0%
        }
        .lp2405_section4-p {
        position: relative;
        padding: 0px 20px 20px 20px;
        font-size: 18px;
        line-height: 1.8em;
        top: 20px;
        }
    /*--------- sec5 -------- */
    .lp2405_section5-sp-img {
        width: 100%;
        display: block;
        }
        .lp2405_section5-pc-img {
        display: none;
        }

}

@charset "utf-8";

* {
    box-sizing: border-box;
    margin: 0;
}

html:has(.partner_lp){
    width: 100%;
    height: 100%;
    /* overflow-x: hidden; */
}

body.partner_lp{
    width: 100%;
    height: 100%;
    font-family: 'Noto Sans JP', Noto Sans Japanese, 'メイリオ', Meiryo, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, 'ヒラギノ角ゴ Pro W3', Hiragino Kaku Gothic Pro, 'ＭＳ Ｐゴシック', MS PGothic, Sans-Serif;
    
    position: relative;
}
body.partner_lp img{
    max-width: 100%;
    height: auto;
}
body.partner_lp a,
.l-contents.partners_merit a,
.l-contents.partners_voice a,
.l-contents.partners_solution a,
.l-contents.partner a{
    text-decoration: none;
}
/* .partner_lp header{
    padding: 0 20px;
} */
.partner_lp section{
    width: 100%;
    margin:0 auto 40px;
}
.partner_lp main,
.partner_lp header,
.partner_lp footer{
    width: 100%;
    margin: 0 auto;
    /* overflow-x: hidden; */
}
.partner_lp .lp_wrap{
    /* max-width: 1000px; */
    width: 100%;
    position: relative;
    z-index: 1000;
}
.partner_lp .lp_wrap.border_topleft{
    padding: 60px;
}
.partner_lp .lp_wrap.border_topleft::before{
    display: block;
    content: "";
    width: 300px;
    height: 100px;
    border-image: linear-gradient(to bottom right, #08465f, transparent 50%) 1;
    
    border-top: solid 10px;
    border-left: solid 10px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1000;
}
.partner_lp .lp_wrap.border_topleft::after{
    display: block;
    content: "";
    width: 300px;
    height: 100px;
    border-image: linear-gradient(to top left, #08465f, transparent 50%) 1;

    border-right: solid 10px;
    border-bottom: solid 10px;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: -1000;
}
.partner_lp .lp_wrap.border_topright{
    padding: 60px;
}
.partner_lp .lp_wrap.border_topright::before{
    display: block;
    content: "";
    width: 300px;
    height: 100px;
    border-image: linear-gradient(to bottom left, #08465f, transparent 50%) 1;
    
    border-top: solid 10px;
    border-right: solid 10px;
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1000;
}
.partner_lp .lp_wrap.border_topright::after{
    display: block;
    content: "";
    width: 300px;
    height: 100px;
    border-image: linear-gradient(to top right, #08465f, transparent 50%) 1;

    border-left: solid 10px;
    border-bottom: solid 10px;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1000;
}

.partner_lp .lp_wrap.w1000{
    max-width: 1000px;
    margin: 0 auto;
}

.partner_lp h2{
    font-size: 30px;
    margin: 0 0 26px;
    text-align: center;
}
.partner_lp h2 + p{
    text-align: center;
}
.partner_lp h3{
    font-size: 24px;
    margin: 48px 0 24px;
}
.partner_lp h4{
    font-size: 16px;
}
.partner_lp h5{
    font-size: 14px;
}
.partner_lp p{
    line-height: 1.6;
    margin-bottom: 10px;
    font-size: 14px;
}
.partner_lp ul{
    padding: 0;
    list-style: none;
}
.partner_lp .flex,
.l-contents.partners_merit .flex,
.l-contents.partners_voice .flex,
.l-contents.partners_solution .flex,
.l-contents.partner .flex{
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.partner_lp .sp_item{
    display: none;
}
.partner_lp .pc_item{
    display: block;
}
main.partner_lp{
    width: 100%;
    margin: 0 auto;
}
.partner_lp section.bgc_blue{
    background-color: #50c2d21a;
    padding: 60px 0 ;
}
.partner_lp .mb0{
    margin-bottom: 0;
}

/* header */
.partner_lp header{
    margin-bottom: 40px;
    border-top: #08465f 10px solid;
}
.partner_lp .header_inner{
    width: 100%;
    max-width: 1000px;
    margin: 30px auto;
}
.partner_lp small{
    font-size: 12px;
    display: block;
    text-align: right;
}
.partner_lp .logo{
    width: 300px;
}
.partner_lp .header_inner .sns_icon{
    /* justify-content: flex-end; */
    margin: 0;
    margin-top: 8px;
    margin-left: auto;
}

/* kv */
.partner_lp .kv{
    width: 100%;
    height: 650px;
    background-image: url(/pleasanter/assets/images/lp/partner/lp_partner_kv.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    position: relative;
}

.partner_lp .kv_inner{
    max-width: 1000px;
    width: 100%;
    height: 100%;
    margin: 0 auto;
    position: relative;
    z-index: 1000;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}
.partner_lp .kv_inner h1{
    font-size: 32px;
    padding: 8px;
    background-color: rgba(256,256,256, 0.7);
    width: fit-content;
    text-shadow: 2px 2px 3px #fff;
    
}
.partner_lp .kv_inner p{
    padding: 10px;
    background-color: rgba(256,256,256, 0.7);
    width: fit-content;
    text-shadow: 2px 2px 3px #fff;
    line-height: 2;
    font-size: 18px;
    margin-top: 24px;
}
.partner_lp .kv_inner .hayato{
    width: 20%;
    height: auto;
    margin-left: auto;
    margin-top: 80px;
}
.partner_lp .kv_inner .hayato>figcaption{
    text-align: center;
    text-shadow: 2px 2px 3px gray;
    color: #fff;
}

/* top_section */
.partner_lp .top_section_header{
    text-align: center;
    font-weight: bold;
    font-size: 24px;
}
.partner_lp hr{
    margin-top: 40px;
}
.partner_lp .award_review_area{
    max-width: 1000px;
    width: fit-content;
    margin: 8px auto 32px;
    padding: 0 30px;
    flex-wrap: wrap;
    justify-content: center;
}
.partner_lp .award_review_area>div{
    width: 17%;
    margin-top: 16px;
    margin-left: 32px;
}
.partner_lp .award_review_area>div:first-of-type{
    margin-left: 0;
}
.partner_lp .award_review_area>div>img{
    display: block;
    margin: 0 auto;
}
.partner_lp .award_review_area.itreview>div{
    width: 30%;
    margin-top: 16px;
}

/* strength */
.partner_lp section.strength{
    background-image: url(/pleasanter/assets/images/lp/partner/lp_partner_bg1.png);
    background-size: 45% auto;
    background-repeat: no-repeat;
    background-position: bottom left;
    
    padding: 60px 0 80px;
    margin-bottom: 0;
}
.partner_lp section.strength ul{
    line-height: 1.6;
}
.partner_lp section.strength li{
    margin-bottom: 36px;

    font-size: 14px;
    width: fit-content;
    max-width: 600px;
    background-color: rgba(256,256,256, 0.9);
    padding: 20px;
    box-shadow: 2px 2px 3px gray;
}
.partner_lp section.strength li:nth-of-type(2n){
    margin-left: auto;
}
.partner_lp section.strength li>span{
    font-size: 20px;
    border-bottom: #fcc800 solid 5px;

}


/* business_model */
.partner_lp .business_model_list{
    flex-wrap: wrap;
    align-items: flex-start;
}
.partner_lp .business_model .list_item{
    color: #000;
    width: 48%;
    background-color: #fff;
    
    margin-bottom: 20px;
    box-shadow: 2px 2px 3px gray;
}
.partner_lp .business_model .list_item_midashi{
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex: 0 0 auto;

    background-color: #f0ebe0;
    padding: 20px;
}
.partner_lp .business_model .list_item_midashi>h4{
    font-size: 14px;
    margin: 10px 0;
}
.partner_lp .business_model .list_item_img{
    width: 40%;
    height: 90px;
    position: relative;
}
.partner_lp .business_model .list_item_img>img{
    display: block;
    margin: auto;
    max-width: 90px;
    max-height: 90px;
    filter: sepia(0.5);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.partner_lp .business_model .list_item_content{
    width: 100%;
    padding: 20px;
}
.partner_lp .business_model .list_item_content>p{
    font-size: 12px;
}


/* jirei */
.partner_lp .jirei{
    background-image: url(/pleasanter/assets/images/lp/partner/lp_partner_bg2.png);
    background-position: bottom right;
    background-repeat: no-repeat;
    background-size: 35% auto;

    margin: 0;
    padding-bottom: 80px;
}
.partner_lp .jirei_list{
    flex-wrap: wrap;
    align-items: flex-start;
}
.partner_lp .jirei .list_item{
    width: 32%;
    background-color: #fff;
    margin-bottom: 20px;
    /* padding: 20px; */
    position: relative;
    transition: all 0.5s;
    box-shadow: 3px 3px 10px gray;
}
.partner_lp .jirei .list_item:hover{
    box-shadow: 6px 6px 12px gray;
    
    transform: translate(-2px, -4px);
}
.partner_lp .jirei .list_item>a{
    color: inherit;
    transition: all 0.5s;
}
.partner_lp .jirei .list_item>a::before{
    content: "View more→";
    padding: 8px;
    background-color: #000;
    color: #fff;
    font-size: 12px;
    position: absolute;
    bottom: -8px;
    right: -8px;
    border: solid 1px #111;
}

.partner_lp .jirei .list_item>a:hover::before{
    background-color: #fff;
    color: #000;
    transition: all 0.5s;
}
.partner_lp .jirei .list_item h4{
    width: 100%;
    padding: 10px;
    background-color: #000;
    color: #fff;
    font-weight: bold;
    text-align: center;
}
.partner_lp .jirei .list_item_img{
    background-color: #fff;
    width: 100%;
    height: 88px;
    padding: 8px 48px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.partner_lp .jirei .list_item_img>img{
    width: 100%;
    max-height: 48px;
}
.partner_lp .jirei .list_item .list_item_content{
    padding: 20px;
    min-height: 140px;
}

/* seido */
.partner_lp table,
.partner_lp td,
.partner_lp th{
    border: none;
    color: #000;
    font-size: 16px;
}
.partner_lp table{
    width: 100%;
    border-spacing: 10px;
    table-layout: fixed;
    max-width: 1000px;
}

.partner_lp table td,
.partner_lp table th{
    padding: 20px;
    background-color: #fff;
    box-shadow: 2px 2px 3px lightgray;
}
.partner_lp table .blank{
    width: 20%;
    visibility: hidden;
}
.partner_lp table .th_inte{
    background-color: #fff3f5;
    width: 40%;
}
.partner_lp table .th_sales{
    background-color: #e8edf3;
    width: 40%;
}
.partner_lp table td{
    text-align: center;
    background-color: #fff;
}

.partner_lp table td>span {
    border-bottom: #ffa202 solid 2px;
    color: #ffa202;
    font-weight: 600;
    margin-top: -10px;
}
.partner_lp .flow_wrap{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}
.partner_lp .flow_item{
    width: 30%;
}
.partner_lp .flow_item>h4{
    margin: 16px 0 8px;
}
.partner_lp .flow_item_img{
    width: 100%;
    height: 180px;
    background-color: transparent;
}
.partner_lp .flow_item_img>img{
    display: block;
    margin: 0 auto;
}

/* merit */
.partner_lp section.merit {
    background-image: url(/pleasanter/assets/images/lp/partner/lp_partner_bg3.png);
    background-size: 45% auto;
    background-repeat: no-repeat;
    background-position: bottom left;

    margin: 0;
    padding-bottom: 60px;
}
.partner_lp section.merit dl{
    margin-bottom: 40px;
    width: 100%;
}
.partner_lp section.merit dl>dt{
    font-size: 18px;
    font-weight: bold;
    background-color: #fcca00;
    padding: 16px;
    max-width: 430px;
    width: 100%;
    margin-bottom: -8px;
    position: relative;
    box-shadow: 2px 2px 3px gray;
    line-height: 1.6;
}
.partner_lp section.merit dl>dt>span{
    font-size: 24px;
    border-bottom: #fff solid 5px;
}
.partner_lp section.merit dl>dd{
    max-width: 800px;
    margin-left: auto;
    line-height: 1.6;
    background-color: rgba(256,256,256, 0.9);
    padding: 24px 16px 16px;
    box-shadow: 2px 2px 3px gray;
    font-size: 14px;
}

/* qanda */
/* .partner_lp section.qanda{
    background-image: url(../images/gradient1.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;

    padding: 60px 0 80px;
} */
.partner_lp section.qanda .qanda_sec{
    position: relative;
    margin: 16px;
}
.partner_lp section.qanda .toggle{
    display: none;
}
.partner_lp section.qanda .label{
    display: block;
    width: fit-content;
    font-size: 18px;
    padding: 8px;
    position: relative;
    cursor: pointer;
    transition: all 0.3s;
}
.partner_lp section.qanda .label::after{
    display: block;
	content:"";
	width: 6px;
	height: 6px;
	border-top: 2px solid #000;
	border-right: 2px solid #000;
	-webkit-transform: rotate(45deg);
	position: absolute;
	top: 20px;
	right: -10px;
	transform: rotate(135deg);
}
.partner_lp section.qanda .qanda_answer{
    height: 0;
    margin-top: 16px;
    margin-left: 8px;
    overflow: hidden;
}
.partner_lp section.qanda .toggle:checked + .label + .qanda_answer{
    height: auto;
    transition: all 0.3s;
}
.partner_lp section.qanda .toggle:checked + .label::after{
    transform: rotate(-45deg) !important;
}

/* partners_voices */
.partner_lp .partners_voices{
    background-image: url(/pleasanter/assets/images/lp/partner/lp_partner_bg4.png);
    background-repeat: no-repeat;
    background-position: bottom right;
    background-size: 45% auto;

    margin-bottom: 0;
    padding-bottom: 80px;
}
.partner_lp .partners_voices_wrap{
    align-items: flex-start;
    width: 100%;
    max-width: 1200px;
    margin-top: 36px;
}
.partner_lp .partners_voices_item{
    width: 30%;
    margin: 0 auto;
}
.partner_lp .partners_voices_item>a{
    display: block;
    position: relative;
    z-index: 1000;
}
.partner_lp .partners_voices_item img{
    display: block;
    margin: 0 auto;
}
.partner_lp .partners_voices_item.ctcs .partners_voices_img{
    background-image: url(/pleasanter/assets/images/lp/partner/ctcs.png);
    background-size: cover;
    background-position: center;
}
.partner_lp .partners_voices_item.ch .partners_voices_img{
    background-image: url(/pleasanter/assets/images/lp/partner/ch.jpg);
    background-size: cover;
    background-position: center;
}
.partner_lp .partners_voices_item.rdx .partners_voices_img{
    background-image: url(/pleasanter/assets/images/lp/partner/rdx.png);
    background-size: cover;
    background-position: center;
}
.partner_lp .partners_voices_img{
    width: 100%;
    height: 170px;
}

.partner_lp .partners_voices_item>a:hover{
    transition: all .5s;
    opacity: 0.8;
}

/* message */

.partner_lp section.message p{
    line-height: 1.6;
    font-size: 16px;
}


/* under_button */
.partner_lp section.under_button .button_list{
    list-style: none;
    color: #fff;
    padding: 0;
}
.partner_lp section.under_button .button_list a{
    display: flex;
    align-items: center;
    color: #000;
    width: 30%;
    background-color: #fcc800 ;
    font-weight: bold;
    font-size: 18px;
    line-height: 1.8;
    padding: 24px;
    min-height: 85px;

    text-shadow: 2px 2px 3px #fff;
    box-shadow: 2px 2px 3px gray;
}
.partner_lp section.under_button .button_list a:hover{
    box-shadow: 5px 5px 5px gray;
    transform: translate(-2px, -4px);
    opacity: 0.8;
}
.partner_lp section.under_button .button_list a.download{
    background-image: url(/pleasanter/assets/images/lp/partner/file-solid\ 1.png);
    background-repeat: no-repeat;
    background-position: right;
    background-size: auto;
}
.partner_lp section.under_button .button_list a.inquiry{
    background-image: url(/pleasanter/assets/images/lp/partner/calendar-check-regular\ 1.png);
    background-repeat: no-repeat;
    background-position: right 50%;
    background-size: auto;
}
.partner_lp section.under_button .button_list a.detail{
    background-image: url(/pleasanter/assets/images/lp/partner/comment-dots-regular\ 1.png);
    background-repeat: no-repeat;
    background-position: -50% 50%;
    background-size: auto;
}


/* sidemenu */
.partner_lp aside.sidemenu,
.l-contents.partners_merit aside.sidemenu,
.l-contents.partners_voice aside.sidemenu,
.l-contents.partners_solution aside.sidemenu,
.l-contents.partner aside.sidemenu{
    position: fixed;
    bottom: 0;
    top: 0;
    right: 0;

    justify-content: center;
    flex-direction: column;
    z-index: 1000;
}
.partner_lp aside.sidemenu>a,
.l-contents.partners_merit aside.sidemenu>a,
.l-contents.partners_voice aside.sidemenu>a,
.l-contents.partners_solution aside.sidemenu>a,
.l-contents.partner aside.sidemenu>a{
    display: block;
    padding: 24px 4px;
    height: 170px;
    text-align: center;
    font-size: 15px;
    box-shadow: -2px 2px 3px gray;

    writing-mode: vertical-rl;
}
.partner_lp aside.sidemenu>a:hover,
.l-contents.partners_merit aside.sidemenu>a:hover,
.l-contents.partners_voice aside.sidemenu>a:hover,
.l-contents.partners_solution aside.sidemenu>a:hover,
.l-contents.partner aside.sidemenu>a:hover{
    opacity: 0.7;
    transition: all 0.5s;
}
.partner_lp aside.sidemenu>a.inquiry,
.l-contents.partners_merit aside.sidemenu>a.inquiry,
.l-contents.partners_voice aside.sidemenu>a.inquiry,
.l-contents.partners_solution aside.sidemenu>a.inquiry,
.l-contents.partner aside.sidemenu>a.inquiry{
    background-color: #fff;
    color: #111;

    margin-bottom: 8px;
}
.partner_lp aside.sidemenu>a.download,
.l-contents.partners_merit aside.sidemenu>a.download,
.l-contents.partners_voice aside.sidemenu>a.download,
.l-contents.partners_solution aside.sidemenu>a.download,
.l-contents.partner aside.sidemenu>a.download{
    background-color: #08465f;
    color: #fff;
}



/* share_buutons */
.content_footer .sns {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 15px 0
}
.content_footer .sns dt {
        font-size: 12px;
        line-height: 1.6
}
.content_footer .sns dt:before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.6)*.5em);
    content: ''
}
.content_footer .sns dt:after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.6)*.5em);
    content: ''
}
.content_footer .sns dd {
    margin-left: 15px
}
.content_footer .sns dd button {
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    width: 22px;
    height: 22px;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-radius: 100%;
    text-decoration: none
}
.content_footer .sns dd.tw button {
    background: #111;
    color: #fff;
    font-size: 13px;
    line-height: 1
}
@media screen and (min-width:1025px) {
    .content_footer .sns dd.tw button {
        transition: background 200ms ease-out
    }
    .content_footer .sns dd.tw button:hover {
        opacity: 0.7;
    }
}
.content_footer .sns dd.fb button {
    color: #111;
    font-size: 22px
}
@media screen and (min-width:1025px) {
    .content_footer .sns dd.fb button {
        transition: color 200ms ease-out
    }
    .content_footer .sns dd.fb button:hover {
        color: #485a95
    }
}
@media screen and (max-width:767px) {
    .content_footer .sns {
        width: 33.34vw;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0 auto
    }
    .content_footer .sns dt {
        margin-bottom: 4.41vw;
        font-size: 2.67vw
    }
    .content_footer .sns dd {
        margin-left: 0
    }

    .content_footer .sns dd button {
        width: 10.14vw;
        height: 10.14vw
    }
    .content_footer .sns dd.tw button {
        font-size: 5.34vw
    }
    .content_footer .sns dd.fb {
        margin-left: 5.2vw
    }
    .content_footer .sns dd.fb button {
        font-size: 10.14vw
    }
}



/* footer */
.partner_lp footer:not(.content_footer){
    background-color: #50c2d2;
    padding: 64px 0 32px;
    
}
.partner_lp footer .logo>img{
    filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(288deg) brightness(102%) contrast(102%);
}
.partner_lp footer p{
    font-weight: bold;
    color: #fff;
    text-align: right;
}
.partner_lp footer .footer_link>ul{
    list-style: none;
    margin-top: 48px;
    font-size: 12px;
}
.partner_lp footer .footer_link>ul a{
    color: #fff;
}
.partner_lp footer small{
    display: block;
    padding: 32px 0 0;
    font-size: 10px;
    text-align: center;
    line-height: 1.6;
    color: #fff;
}


/* form */
.partner_lp.form .kv{
    width: 100%;
    height: 300px;
    background-image: url(/pleasanter/assets/images/lp/partner/bg_white_blue.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    position: relative;
}
.partner_lp.form h1{
    text-align: center;
    font-size: 32px;
    padding: 8px;
    background-color: rgba(256,256,256, 0.7);
    width: fit-content;
    text-shadow: 2px 2px 3px #fff;
}

.partner_lp.form section.dl_form_contents .setsumei{
    width: 50%;
    
}



@media screen and (max-width: 1040px){
    .partner_lp .lp_wrap{
        padding: 0 20px;
        padding-right: 40px;
}
    .l-contents.partners_merit,
    .l-contents.partners_voice,
    .l-contents.partners_solution,
    .l-contents.partner{
        padding: 43px 20px 0;
        padding-right: 40px;
    }
    .partner_lp .lp_wrap.border_topright,
    .partner_lp .lp_wrap.border_topleft{
        padding: 40px;
    }
    .partner_lp body{
        padding: 0 20px;
    }
    .partner_lp .kv{
        /* height: auto; */
        background-size: cover;
        background-position: 0 0;
        padding: 0;
    }
    .partner_lp .kv_inner{
        padding: 0 30px;
    }
    .partner_lp .kv_inner h1{
        font-size: 20px;
    }
    .partner_lp .kv_inner p{
        font-size: 16px;
    }
    
    .partner_lp .header_inner{
        padding: 0 20px;
    }
    .partner_lp .kv_inner .hayato{
        width: 30%;
        height: auto;
        margin-left: auto;
    }
    .partner_lp .kv_inner .hayato>figcaption{
        text-align: center;
        text-shadow: 2px 2px 3px gray;
        color: #fff;
    }
    /* top_section */
    .partner_lp .award_review_area{
        flex-wrap: wrap;
        justify-content: center;
    }
    .partner_lp .award_review_area>div{
        width: 25%;
        padding-right: 16px;
    }
    .partner_lp .award_review_area.itreview>div{
        width: 48%;
        margin-top: 16px;
    }

    /* business_model */
    .partner_lp .business_model .list_item{
        width: 48%;
    }
    .partner_lp .business_model .list_item_img{
        margin-right: 0;
        width: 100%;
        height: 90px;
        margin-bottom: 20px;
    }
    .partner_lp .business_model .list_item_content{
        width: 100%;
    }

    /* jirei */
    .partner_lp .jirei{
        background-size: 60% auto;

        padding-bottom: 240px;
    }

    /* seido */
    .partner_lp table{
        max-width: none;
        width: 100%;
    }
    /* merit */

    /* sidemenu */
    .partner_lp aside.sidemenu>a,
    .l-contents.partners_merit aside.sidemenu>a,
    .l-contents.partners_voice aside.sidemenu>a,
    .l-contents.partners_solution aside.sidemenu>a,
    .l-contents.partner aside.sidemenu>a{
        padding: 16px 8px;
        font-size: 12px;
    }
    /* footer */
    .partner_lp footer .footer_link>ul{
        flex-direction: column;
    }
    .partner_lp footer .footer_link li{
        margin-bottom: 16px;
    }
}

@media screen and (max-width: 767px){
    .partner_lp .lp_wrap,
    .l-contents.partners_merit,
    .l-contents.partners_voice,
    .l-contents.partners_solution,
    .l-contents.partner{
        padding: 0 20px;
    }
    .partner_lp .sp_item{
        display: block;
    }
    .partner_lp .sp_item{
        display: none;
    }
    .partner_lp h2{
        font-size: 24px;
    }
    .partner_lp h3{
        font-size: 16px;
    }
    .partner_lp section {
        margin: 0 auto 40px;
    }
    .partner_lp section.bgc_blue{
        padding: 40px 0;
    }

    /* header */
    .partner_lp .header_inner{
        margin: 16px auto;
        flex-direction: column-reverse;
        justify-content: flex-start;
        align-items: flex-start;
    }
    .partner_lp .header_inner>.flex{
        flex-direction: column;
        align-items: unset;
    }
    .partner_lp small{
        margin-bottom: 16px;
    }
    .partner_lp .header_inner .header_copy{
        font-size: 12px;
        text-align: right;
        margin-top: 8px;
    }
    .partner_lp .header_inner .sns_icon{
        justify-content: flex-end;
        margin-top: 8px;
    }
    .partner_lp .logo{
        width: 200px;
    }

    .partner_lp .kv{
        background-size: cover;
        background-position: center;
        padding: 60px 0;
        width: 100%;
        height: fit-content;
    }
    .partner_lp .kv_inner{
        align-items: center;
        height: 100%;
    }
    .partner_lp .kv_inner h1{
        font-size: 20px;

    }
    .partner_lp .kv_inner p{
        font-size: 18px;
    }

    .partner_lp .kv_inner .hayato{
        width: 40%;
    }
    .partner_lp .kv_inner .hayato>figcaption{
        font-size: 12px;
    }
    /* top_section */
    .partner_lp  .top_section_header{
        font-size: 18px;
    }
    .partner_lp .award_review_area{
        align-items: center;
        justify-content: center;
        padding: 0;
        flex-direction: column;
    }
    .partner_lp .award_review_area>div{
        width: 48%;
        padding-right: 0;
        margin-left: 0;
    }
    .partner_lp .award_review_area>div img{
        width: 100%;
        height: auto;
    }
    .partner_lp .award_review_area.itreview>div{
        width: 48%;
    }
    

    /* strength */
    .partner_lp section.strength{
        background: none;
    }
    .partner_lp section.strength li{
        margin-bottom: 16px;
    
        width: 100%;
        padding: 8px;
    }
    
    /* business_model */
    .partner_lp .business_model .list_item{
        width: 100%;
        min-height: 190px;
        flex-direction: row;
    }
    .partner_lp .business_model .list_item_img{
        width: 120px;
        height: auto;
        margin-bottom: 0;
        margin-right: 40px;
    }
    .partner_lp .business_model .list_item_img>img{
        display: block;
        margin: auto;
        max-width: 90px;
        max-height: 90px;
    }.partner_lp .business_model .list_item_midashi{
        display: flex;
        align-items: center;
        justify-content: flex-start;
        flex: 0 0 auto;
    
        background-color: #f0ebe0;
        padding: 20px;
    }
    .partner_lp .business_model .list_item_midashi>h4{
        font-size: 14px;
        margin: 10px 0;
    }



    /* jirei */
    .partner_lp .jirei{
        background-size: 80% auto;
    }
    .partner_lp .jirei .list_item{
        width: 100%;
    }
    .partner_lp .jirei .list_item>.list_item_wrap {
        width: 100%;
    }
    .partner_lp .jirei .list_item_img {
        max-width: 300px;
        margin: 0 auto;
    }
    .partner_lp .jirei .list_item_img >img{
        width: 100%;
        height: 100%;
    }
    .partner_lp .jirei .list_item .list_item_content{
        min-height: 100px;
    }

    /* seido */
    .partner_lp .table_wrap{
        overflow-x: scroll;
    }
    .partner_lp table{
        max-width: 1000px;
    }
    .partner_lp table .blank{
        width: 120px;
    }
    .partner_lp table .th_inte{
        width: 300px;
    }
    .partner_lp table .th_sales{
        width: 300px;
    }
    .partner_lp table th,
    .partner_lp table td{
        font-size: 14px;
    }
    .partner_lp .flow_wrap{
        flex-direction: column;
    }
    .partner_lp .flow_item{
        width: 100%;
        margin-bottom: 24px;
    }
    .partner_lp .flow_item_img{
        width: 80%;
        height: auto;
        margin: auto;
    }

    /* merit */
    .partner_lp section.merit {
        /* background-size: contain;
        background-position: center; */
        background: none;
    }
    .partner_lp section.merit .lp_wrap{
        background-position: top right;
        background-size:30%;
    }
    .partner_lp section.merit dl{
        flex-direction: column;
        align-items: flex-start;
    }
    .partner_lp section.merit dl>dt{
        font-size: 16px;
        width: calc(100% - 40px);
    }
    .partner_lp section.merit dl>dt>span{
        font-size: 20px;
    }
    .partner_lp section.merit dl>dd{
        width: calc(100% - 40px);
    }

    /* qanda */
    .partner_lp section.qanda .lp_wrap{
        background-position: top right;
        background-size: 300px auto;
    }
    .partner_lp section.qanda .label{
        font-size: 18px;
    }
    .partner_lp section.qanda .label::after{
        top: 16px;
    }

    /* partners_voices */
    .partner_lp .partners_voices{
        background-position: left bottom;
        background-size: 100% auto;

        margin-bottom: 0;
        padding: 60px 0 180px;
    }
    .partner_lp .partners_voices_wrap{
        flex-direction: column;
    }
    .partner_lp .partners_voices_item{
        width: 100%;
        margin-bottom: 24px;
    }

    /* under_button */
    /* .partner_lp section.under_button .button_list{
        flex-direction: column;    
    } */
    .partner_lp section.under_button .button_list a.download,
    .partner_lp section.under_button .button_list a.inquiry,
    .partner_lp section.under_button .button_list a.detail{
        width: 30%;
        font-size: 14px;
        line-height: 1.2;
        padding: 8px 16px;
    }
    .partner_lp section.under_button .button_list a.download{
        background-position: right;
        background-size: 50%;
    }
    .partner_lp section.under_button .button_list a.inquiry{
        background-position: right 50%;
        background-size: 50%;
    }
    .partner_lp section.under_button .button_list a.detail{
        background-position: right;
        background-size: 50%;
    }


    /* under_sns */


    /* sidemenu */
    .partner_lp aside.sidemenu,
    .l-contents.partners_merit aside.sidemenu,
    .l-contents.partners_voice aside.sidemenu,
    .l-contents.partners_solution aside.sidemenu,
    .l-contents.partner aside.sidemenu{
        display: none;
    }
    /* footer */
    .partner_lp footer{
        padding: 64px 0 32px;
    }
    .partner_lp footer .logo_wrap{
        flex-direction:  column-reverse;
    }
    .partner_lp footer p{
        text-align: center;
    }
    .partner_lp footer .logo_wrap .logo{
        margin-top: 40px;
    }
}







* {
  margin: 0;
  padding: 0;
}
.pc_item {
  display: block;
}
@media screen and (max-width: 767px) {
  .pc_item {
    display: none;
  }
}

.sp_item {
  display: none;
}
@media screen and (max-width: 767px) {
  .sp_item {
    display: block;
  }
}

.wrap {
  max-width: 1040px;
  width: auto;
  margin: 0 auto;
}
@media screen and (max-width: 1040px) {
  .wrap {
    padding: 0 4.67vw;
  }
}


.parts-thnaks-page_bnr-wrap {
    text-align: center;
    max-width: 1000px;
    margin: 3em auto 3em;
}

.parts-thnaks-page_bnr {
  display: flex;
  justify-content: center;
  align-items: center;

  @media screen and (max-width: 767px) {
    flex-direction: column;
    align-items: center;
  }
}

.parts-thnaks-page_bnr li + li {
  margin-left: 20px;
  @media screen and (max-width: 767px) {
    margin-left: 0;
    margin-top: 20px;
  }
}

.parts-thnaks-page_bnr li {
  flex: 1;
  max-width: 100%;
}

.parts-thnaks-page_bnr li img {
  width: 100%;
  max-width: 600px;
border: solid 0.75px #00000052!important;
}

.thanks_bottom_btn {
  display: flex;
  gap: 24px;
  justify-content: center;
}

.thanks_bottom_btn .c-btn {
  display: flex;
  justify-content: center;
  align-items: center;
}

/* ==============================================
   2025renew Sass版（重複削除・整理済）
   ============================================== */
html:has(.pleanama_lp) {
    width: 100%;
    height: 100%;
}
body.pleanama_lp {
    img {
        max-width: 100%;
        height: auto;
    }

    #page {
        position: relative;
    }

    main,
    footer {
        width: 100%;
        margin: 0 auto;
        overflow-x: hidden;
    }

    a {
        text-decoration: none;

        &:hover {
            opacity: 0.7;
            transition: all 0.9s;
        }
    }

    h3 {
        font-size: 24px;
        margin: 0 0 32px;
        text-shadow: 2px 2px 0 #fff;

        &.white {
            color: #fff;
            text-shadow: 2px 2px 0 #111;
        }
    }

    ul {
        padding: 0;
        list-style: none;
    }

    .flex {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    section {
        width: 100%;
        margin: 15px auto;

        &.m0p {
            margin: 0;
            padding: 56px 0;
        }

        &.introduction p {
            text-align: center;
            padding: 16px;
            background-color: rgba(255, 255, 255, 0.8);
        }
    }

    .lp_wrap {
        max-width: 1000px;
        width: 100%;
        margin: 0 auto;
        position: relative;
        z-index: 0;
    }

    /* kv */
    .kv {
        max-width: 1000px;
        width: 100%;
        height: auto;
        margin: 0 auto;
        position: relative;
        z-index: 0;

        .kv_inner {
            width: 1000px;
            margin: 0 auto;

            img {
                width: 65%;
                height: auto;
                margin: auto;
            }

            h1 {
                font-size: 24px;
                padding: 16px;
                background-color: #fcc800;
                top: 35%;
                transform: translateY(-80%);
                position: absolute;
                z-index: 1000;
                margin: auto;
                left: 25%;
                box-shadow: 5px 5px 5px gray;
                line-height: 1.2;
            }
        }
    }

    /* footer */
    footer {
        padding: 24px 0 32px;

        .logo {
            width: 240px;

            img {
                filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(288deg) brightness(102%) contrast(102%);
            }
        }

        p {
            font-weight: bold;
            color: #fff;
            text-align: right;
        }

        .footer_link>ul {
            list-style: none;
            margin-top: 48px;
            font-size: 12px;

            a {
                color: #fff;
            }
        }

        small {
            display: block;
            padding: 32px 0 0;
            font-size: 10px;
            text-align: center;
            line-height: 1.6;
            color: #fff;
        }
    }

    /* sidemenu */
    aside.sidemenu {
        position: fixed;
        bottom: 0;
        top: 0;
        right: 0;
        justify-content: center;
        flex-direction: column;
        z-index: 1000;

        a {
            display: block;
            padding: 24px 4px;
            height: 170px;
            text-align: center;
            font-size: 15px;
            box-shadow: -2px 2px 3px gray;
            writing-mode: vertical-rl;
            transition: all 0.5s;

            &:hover {
                opacity: 0.7;
            }

            &.estimate {
                background-color: #fff;
                color: #111;
                margin-bottom: 8px;
            }

            &.download {
                background-color: #111;
                color: #fff;
            }
        }
    }
}

/* pleanama details */
.pleanama {
    details {
        summary {
            font-size: 20px;
            font-weight: 400;
            cursor: pointer;
            background: #ececec;
            margin: 0 auto 1vw;
            padding: 5px 5px 5px 15px;
        }

        .pleanama_inner {
            padding: 0 24px;
            margin-bottom: 36px;

            >p {
                text-align: left;
            }

            >.sample_DL {
                display: flex;
                justify-content: center;
                width: fit-content;
                border: #111 solid 1px;
                padding: 6px 16px;
                margin: 16px auto;
                color: #111;
                background-color: #fcc800;
                transition: all 0.9s;

                &:hover {
                    text-decoration: none;
                    background-color: #fff;
                    box-shadow: 2px 2px 4px gray;
                }
            }
        }

        dl {
            display: flex;
            justify-content: flex-start;
            align-items: flex-start;
            padding: 8px;
            width: 100%;
            margin: 0 auto;

            &:nth-of-type(2n) {
                background-color: #cacaca;
                border-bottom: #ccc 1px solid;
            }

            &:last-of-type {
                margin-bottom: 8px;
            }

            >dt {
                margin-right: 8px;
            }
        }
    }

    .pleanama_link-btn {
        display: flex;
        justify-content: center;
        width: fit-content;
        border: #111 solid 1px;
        padding: 6px 16px;
        margin: 0 auto 3em;
        color: #111;
        background-color: #c5eeff;
        transition: all 0.9s;

        &:hover {
            text-decoration: none;
            background-color: #fff;
            box-shadow: 2px 2px 4px gray;
        }
    }

    @media screen and (max-width: 767px) {
        details {

            dl,
            summary {
                width: 90%;
            }
        }
    }
}

/* 2025renew */
.l-section.plenama-l-section {
    padding: 0;
}

.c-img__picture.plenama-bnr-box {
    max-width: 800px;
    margin: 2em auto 6em auto;
}

section.pleanama {
    margin-bottom: 6em;

    details {
        margin: auto;
        max-width: 800px;

        p {
            padding: 1em 0 0 0;
        }

        .c-button {
            margin-top: 1em;
            margin-bottom: 4em;
        }

        summary {
            color: #fff;
            font-family: Lato, sans-serif;
            font-style: normal;
            font-weight: 400;
            letter-spacing: 0.04em;
            background: #535a65;
            border-radius: 6px;
            padding: 0.71795vw 5vw;
            transition: 0.3s;
        }

        summary.selected-collection {
            background: white;
            color: #535a65;
            border: solid 2px #535a65;
        }
    }
    @media screen and (max-width: 767px) {
        summary b.new {
            display: none;
        }
        .pleanama_inner {
            dd a {
                font-size: min(16px, 2.11111vw);
            }
        }
    }
}























.thanks-main {
    padding: 20px;
    width: 80%;
    margin: auto;
    text-align: center;
    background: white;
     .thanks-wrap {
            img {
                max-width: 760px;
            }
        }
    .forms-text {
        margin-top: 4em;
        margin-bottom: 2em;
    }
}

 @media (min-width: 768px) {
        .thanks-wrap {
            padding: 6em 20px;
        }
    }



* {
    box-sizing: border-box;
    margin: 0;
}

html:has(.paper_dl_page),
body.paper_dl_page {
    width: 100%;
    height: 100%;
}

body.paper_dl_page {
    font-family: 'Noto Sans JP', Noto Sans Japanese, 'メイリオ', Meiryo, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN,
        'ヒラギノ角ゴ Pro W3', Hiragino Kaku Gothic Pro, 'ＭＳ Ｐゴシック', MS PGothic, Sans-Serif;
    font-size: 14px;
    color: #111;
    line-height: 1.6;
}

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

.paper_dl_page header {
    margin-bottom: 60px;
}

.paper_dl_page .header_inner {
    display: flex;
    width: 1040px;
    margin: 0 auto;
    padding-top: 30px;
}

.paper_dl_page h1 {
    margin-bottom: 36px;
    font-size: 36px;
    font-weight: bold;
    text-align: center;
}

.paper_dl_page h2 {
    font-size: 18px;
    font-weight: 300;
    color: #71696c;
}

.paper_dl_page h3 {
    margin-top: 16px;
}

.paper_dl_page .notes {
    margin-bottom: 36px;
}

.paper_dl_page .notes ul {
    margin-top: 8px;
    font-size: 12px;
    line-height: 1.6;
}

.paper_dl_page .flex {
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    margin-top: 36px;
}

.paper_dl_page .flex > .setsumei,
.paper_dl_page .flex > .form_area {
    width: 48%;
}

.paper_dl_page .flex > .setsumei p {
    margin-bottom: 16px;
}

.paper_dl_page .flex > .setsumei .whitepaper_img {
    max-width: 470px;
    margin: 24px auto;
}

.whitepaper_img {
    text-align: center;
}

.whitepaper_img img {
    width: 90%;
    margin-bottom: 8px;
}

.paper_dl_page .contents li::before {
    content: "■";
    margin-right: 8px;
    font-size: 9px;
    color: #fcc800;
}

.kiyaku-box {
    margin: 15px;
    padding: 10px;
    background: #f9f7de;
}

.kiyaku-area {
    width: 100%;
    height: 125px;
    font-size: 12px;
}

.section_inner {
    padding: 40px 20px;
}

/* 入力欄padding */
#satori__creative_container input {
    padding: 6px;
}

/* satoriフォーム・ポップアップ */
#satori__creative_container {
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
}

/* ポップアップ */
#satori__popup_widget {
    z-index: 10;
}

#satori__popup_widget a {
    display: block;
}

.satori__custom_form_df84c1ad7c6df4ff_css select,
.satori__custom_form_670937ee41796aa6_css select,
.satori__custom_form_79882a126cee0b32_css select,
.satori__custom_form_9ae54a0bb21d2759_css select,
.satori__custom_form_c679bc0ac15018f3_css select {
    padding: 4px;
}

/* SATORI年サポ登録書（プレミアム） セクション分け点線コード */
.satori__custom_form_670937ee41796aa6_css .satori__input_group:nth-child(3),
.satori__custom_form_670937ee41796aa6_css .satori__horiz_group,
.satori__custom_form_670937ee41796aa6_css .satori__input_group:nth-child(33) {
    margin-top: 20px;
    border-top: dotted #afafaf;
}

/* SATORI年サポ登録書（スタンダード） セクション分け点線コード */
.satori__custom_form_79882a126cee0b32_css .satori__input_group:nth-child(3),
.satori__custom_form_79882a126cee0b32_css .satori__horiz_group,
.satori__custom_form_79882a126cee0b32_css .satori__input_group:nth-child(20) {
    margin-top: 20px;
    border-top: dotted #afafaf;
}

/* SATORI年サポ登録書（ライト） セクション分け点線コード */
.satori__custom_form_9ae54a0bb21d2759_css .satori__input_group:nth-child(3),
.satori__custom_form_9ae54a0bb21d2759_css .satori__horiz_group,
.satori__custom_form_9ae54a0bb21d2759_css .satori__input_group:nth-child(13) {
    margin-top: 20px;
    border-top: dotted #afafaf;
}

/* SATORI年サポ登録書（ミニ） セクション分け点線コード */
.satori__custom_form_c679bc0ac15018f3_css .satori__input_group:nth-child(3),
.satori__custom_form_c679bc0ac15018f3_css .satori__horiz_group,
.satori__custom_form_c679bc0ac15018f3_css .satori__input_group:nth-child(11) {
    margin-top: 20px;
    border-top: dotted #afafaf;
}

.satori__custom_form_5e4a61d97c248ef9_css {
    background-color: #ffffff00;
}

/* --- Responsive --- */
@media screen and (max-width: 1040px) {
    .paper_dl_page .header_inner,
    .paper_dl_page .section_inner {
        width: 100%;
    }

    .paper_dl_page .flex {
        flex-direction: column;
        align-items: center;
    }

    .paper_dl_page .flex .setsumei,
    .paper_dl_page .flex .form_area {
        width: 100%;
    }
}

@media screen and (max-width: 767px) {
    .paper_dl_page h1 {
        font-size: 24px;
    }

    .paper_dl_page .flex > .setsumei h2 {
        font-size: 18px;
    }
}



/* 20232206更新 メールアドレス送信フォームのスタイル */
#product .table-area:has(form){
    width: 100%;
    overflow-x: initial;
}
#product .table-area .dl_form_mail_wrap{
    padding-left: 16px;
}
#product .table-area table.dl_form_mail{
    width: 100%;
    margin-top: 24px;
}
#product .table-area table.dl_form_mail input[type="email"]{
    border: 1px solid rgb(0, 0, 0);
    width: 310px;
}
#product .table-area table.dl_form_mail input[type="submit"]{
    width: 136px;
    display: inline;
    height: 40px;
    padding: 0px;
}
@media screen and (max-width: 767px){
    #product .table-area .dl_form_mail_wrap{
        padding-left: 0;
    }
    #product .table-area table.dl_form_mail input[type="email"]{
        width: 60vw;
    }
    #product .table-area table.dl_form_mail input[type="submit"]{
        height: auto;
        padding: 0.8em 0;
        width: 100%;
        margin: 16px 0 0;
    }



}



/*--スマートフォン--*/
/*--メディアクエリの記述なし--*/
.table-area {
    width: 90%;
    margin: 0 auto;
    overflow-x: scroll;
}

table.sp-table {
    width: 100%;
    min-width: 900px;
    margin: 0em auto 2em;

}

/*--↓ 下記は装飾になります--*/
table.sp-table,
table.sp-table td {
    border-right: 25px solid #F6F6F6;
    border-collapse: collapse;
    background-color: #FFF;
    border-bottom: 10px solid #F6F6F6;
}

table.sp-table td,
table.sp-table th {
    font-size: .8rem;
    padding: 1em;
    box-sizing: border-box;
}

/*--↓ ボタン(白→灰)--*/
.more-btn-wg {
    color: #333;
    display: block;
    width: 100%;
    margin: 4px;
    text-align: center;
    padding: .8em 0;
    background-color: #FFF;
    border: 1px solid #111;
    transition: color 150ms ease-out, background 150ms ease-out;
    text-decoration: none
}

.more-btn-wg:hover {
    background-color: #A0A0A0;
    color: #fff;
    text-decoration: none
}

/*--↓ ボタン(黒→白)--*/
.more-btn-bw {
    color: #fff;
    display: block;
    width: 100%;
    margin: 4px;
    text-align: center;
    padding: .8em 0;
    background-color: #333;
    border: 1px solid #111;
    transition: color 150ms ease-out, background 150ms ease-out;
    text-decoration: none
}

.more-btn-bw:hover {
    background-color: #A0A0A0;
    color: #FFF;
    text-decoration: none
}

.title-td {
    font-weight: 600;
    font-size: 1.2em !important;
    width: 50%;
    text-align: center;
}
.support-bg {
background-color: #fcc800 !important;
}
.community-bg {
    background-color: #DDD !important;
}

/*--PC--*/
@media screen and (min-width: 1025px) {
    .table-area {
overflow: hidden;
    }

    table.sp-table {
        width: 60%;
    }
}







.annotation li {
  list-style: none;
}

a {
  text-decoration: none;
 
}

* {
  margin: 0;
  padding: 0;
}

.container {
  max-width: 1040px;
  width: auto;
  margin: 0 auto;
}
@media screen and (max-width: 1040px) {
  .container {
    padding: 0 4.67vw;
  }
}

.download {
  width: 100%;
  overflow-x: auto;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.download::-webkit-scrollbar {
  display: none;
}
.download .title {
  margin-top: 50px;
  margin-bottom: 30px;
  padding: 5px 0;
  text-align: center;
  border-bottom: 1px solid #000;
}
@media screen and (max-width: 767px) {
  .download .title h1 {
    font-size: 18px;
  }
}
.download .service {
  display: flex;
  justify-content: space-between;
  position: relative;
}
@media screen and (max-width: 1040px) {
  .download .service {
    width: 1040px;
  }
}
.download .service::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 65%;
  transform: translate(-50%, -50%);
  border-style: solid;
  border-width: 25px 0 25px 35px;
  border-color: transparent transparent transparent #8a8989;
  display: inline-block;
  width: 0;
  height: 0;
}
.download .service .service01 {
  width: 58%;
  background-color: #fff;
  border: 1px solid #8a8989;
  padding: 15px;
}
@media screen and (max-width: 1040px) {
  .download .service .service01 {
    width: 624px;
  }
}
.download .service .service01 .service_title {
  background-color: #fcc800;
  font-size: 20px;
  line-height: 2;
  text-align: center;
  margin-bottom: 30px;
}
.download .service .service01 .top {
  margin-bottom: 30px;
}
.download .service .service01 .bottom {
  display: flex;
  justify-content: space-between;
}
.download .service .service01 .bottom .bottom_left {
  width: 75%;
}
.download .service .service01 .bottom .bottom_left .bottom01 {
  text-align: center;
  color: #fff;
  width: 100%;
  font-size: 20px;
  margin-bottom: 10px;
  background-color: #111;
  border: 1px solid #111;
  transition: 0.2s;
}
.download .service .service01 .bottom .bottom_left .bottom01:hover {
  color: #111;
  background-color: #fff;
  border: 1px solid #111;
  transition: 0.2s;
}
.download .service .service01 .bottom .bottom_left .bottom01 a {
  color: #fff;
  padding: 15px 0;
  text-decoration: none;
  transition: 0.2s;
 display: inline-block;
}
.download .service .service01 .bottom .bottom_left .bottom01 a:hover {
  color: #111;
  transition: 0.2s;
}
.download .service .service01 .bottom .bottom_left .bottom02 {
  text-align: center;
  color: #fff;
  width: 100%;
  font-size: 20px;
  background-color: #111;
  border: 1px solid #111;
  transition: 0.2s;
}
.download .service .service01 .bottom .bottom_left .bottom02:hover {
  color: #111;
  background-color: #fff;
  border: 1px solid #111;
  transition: 0.2s;
}
.download .service .service01 .bottom .bottom_left .bottom02 h4 {
  line-height: 1.2;
}
.download .service .service01 .bottom .bottom_left .bottom02 h4 span {
  font-size: 16px;
}
.download .service .service01 .bottom .bottom_left .bottom02 a {
  color: #fff;
  padding: 7px 0;
  text-decoration: none;
 display: inline-block;
}
.download .service .service01 .bottom .bottom_left .bottom02 a:hover {
  color: #111;
}
.download .service .service01 .bottom .bottom_right {
  width: 23%;
  border: 1px solid #000;
  background-color: #fff;
  color: #000;
  text-align: center;
}
.download .service .service01 .bottom .bottom_right_img {
  width: 100%;
  height: 90px;
}
.download .service .service01 .bottom .bottom_right_txt {
  border-top: 1px solid #000;
  font-size: 15px;
  font-weight: bold;
  transition: 0.2s;
}
.download .service .service01 .bottom .bottom_right_txt:hover {
  background-color: #000;
  color: #fff;
  transition: 0.2s;
}
.download .service .service01 .bottom .bottom_right_txt a {
  padding: 10px 0;
  display: inline-block;
  color: #000;
  text-decoration: none;
 display: inline-block;
}
.download .service .service01 .bottom .bottom_right_txt a:hover {
  color: #fff;
}
.download .service .service02 {
  width: 28%;
  background-color: #fff;
  border: 1px solid #8a8989;
  padding: 15px 15px 0px 15px;
}
@media screen and (max-width: 767px) {
  .download .service .service02 {
    width: 312px;
  }
}
.download .service .service02 .service_title {
  background-color: #fcc800;
  font-size: 20px;
  line-height: 2;
  text-align: center;
  margin-bottom: 10px;
}
.download .service .service02 .service02_contents .service02_cont {
  background-color: #f8f8f8;
  border: 1px solid #000;
  margin-bottom: 10px;
  transition: 0.2s;
}
.download .service .service02 .service02_contents .service02_cont:hover {
  background-color: #000;
  border: 1px solid #000;
  transition: 0.2s;
}
.download .service .service02 .service02_contents .service02_cont a {
  width: 90%;
  color: #000;
  padding: 15px;
  transition: 0.2s;
 display: inline-block;
}
.download .service .service02 .service02_contents .service02_cont a:hover {
  color: #fff;
  transition: 0.2s;
}
.download .service .service02 .service02_contents .service02_cont p {
  line-height: 1.2;
}
.download .service .service02 .service02_contents .service02_cont h4 {
  text-align: center;
  font-size: 22px;
  line-height: 1.65;
}
.download .scroll {
  display: none;
}
@media screen and (max-width: 767px) {
  .download .scroll {
    display: block;
  }
}
.download .scroll p {
  line-height: 3;
  font-weight: bold;
}
.download .scroll p span {
  margin: 0 7px;
}/*# sourceMappingURL=style.css.map */



.draft-type-0 {
}
.draft-type-1 {
/*    background-color: #ff000010;*/
    background-color: #ff000099;
}
.draft-type-2 {
  /*background-color: #0000ff10;*/
  background-color: #0000ff85;

}

#MaintePanel.draft-type-1,
#MaintePanel.draft-type-2{
    position: fixed;
    top: 10px;
    padding: 5px;
    color: #000;
    box-shadow: 2px 2px 4px 3px gray;
}
#MaintePanel.draft-type-1{
    border: solid 2px crimson;
}
#MaintePanel.draft-type-2{
    border: solid 2px indigo;
}
#MaintePanel.draft-type-1>a,
#MaintePanel.draft-type-2>a{
    color: #fff;
}


@media screen and (max-width: 767px){
    #MaintePanel.draft-type-1,
    #MaintePanel.draft-type-2{
        top: 56px;
        font-size: 9px;
    }
}

/* 20251021 追記 */
#MaintePanel {
    position: absolute;
    top: 70px;
    right: 5px;
    z-index: 200;
    font-size: 10px;
    color: white;
    background: black;
    padding: 5px;
}

    #MaintePanel a {
        color: white;
        font-weight: 400;
        margin: 0px 5px;
    }

.s-news_fiter,
.m-pager_pc {
    display: none !important;
}



.l-section.catd-li-l-section {
    max-width: min(1040px, 83.3333333333vw);
}

.m-boxlist {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
    overflow: hidden;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: auto;
    justify-content: left;
    width: 100%;
}

.m-boxlist .box_unit {
    position: relative;
    width: 330px;
    padding: 24px 24px 64px;
    border: 1px solid #111;
    margin: 0 0 24px 24px;
    background: white;
    text-decoration: none;
    margin-left: auto;
    margin-right: auto;
}

.m-boxlist a {
    position: relative;
    z-index: 2
}

.m-boxlist .partner_type {
    margin: -24px -24px 40px;
    color: #605e5e;
    font-size: 12px;
    padding: 0 24px;
    line-height: 32px;
    letter-spacing: 1px
}

.m-boxlist .partner_awards {
    position: absolute;
    top: 0;
    right: 24px;
    display: -ms-flexbox;
    display: flex;
    z-index: 3
}

.m-boxlist .partner_awards li {
    position: relative
}

.m-boxlist .partner_awards li+li {
    margin-left: 8px
}

@media screen and (min-width:1025px) {
    .m-boxlist .partner_awards li:before {
        position: absolute;
        top: 63px;
        left: 50%;
        transform: translateX(-50%) translateY(10px);
        padding: 5px;
        opacity: 0;
        pointer-events: none;
        overflow: hidden;
        font-size: 10px;
        color: #fff;
        white-space: pre;
        line-height: 1.5;
        border-radius: 3px;
        background: rgba(0, 0, 0, .8);
        content: attr(data-label);
        transition: opacity 150ms ease-out, transform 150ms ease-out
    }

    .m-boxlist .partner_awards li:hover:before {
        opacity: 1;
        transform: translateX(-50%) translateY(0)
    }
}

.m-boxlist .partner_awards img {
    width: 40px
}

.m-boxlist .unit_hdg {
    font-size: 16px;
    line-height: 1.6
}

.m-boxlist .unit_hdg:before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.6)*.5em);
    content: ''
}

.m-boxlist .unit_hdg:after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.6)*.5em);
    content: ''
}

.m-boxlist .unit_logo {
    display: -ms-flexbox;
    display: flex;
    height: 64px;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding-bottom: 14px;
    border-bottom: 1px solid #dfdfdf;
    margin-bottom: 24px
}

.m-boxlist .unit_logo+.unit_hdg {
    font-size: 13px
}

.m-boxlist .unit_txt {
    margin-top: 19px;
    font-size: 12px;
    text-align: justify;
    text-justify: inter-ideograph;
    line-height: 1.8
}

.m-boxlist .unit_txt:before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.8)*.5em);
    content: ''
}

.m-boxlist .unit_txt:after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.8)*.5em);
    content: ''
}

.m-boxlist .unit_keywords {
    margin-top: 24px
}

.m-boxlist .unit_keywords li {
    padding: 11px;
    background: #dfdfdf;
    font-size: 12px;
    text-align: center;
    line-height: 1.6
}

.m-boxlist .unit_keywords li:before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.6)*.5em);
    content: ''
}

.m-boxlist .unit_keywords li:after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.6)*.5em);
    content: ''
}

.m-boxlist .unit_keywords li+li {
    margin-top: 10px
}

.m-boxlist .unit_keywords.is_2col {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: -10px
}

.m-boxlist .unit_keywords.is_2col li {
    width: 132px;
    margin-bottom: 10px;
    white-space: normal
}

.m-boxlist .unit_keywords.is_2col li+li {
    margin-top: 0
}

.m-boxlist .unit_link {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    color: #111
}

.m-boxlist .unit_link .btn {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    overflow: hidden;
    width: 100%;
    height: 40px;
    border-top: 1px solid #868686;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 1px;
    line-height: 39px;
    text-align: center;
    transition: color 150ms ease-out, background 150ms ease-out
}

@media screen and (min-width:1025px) {
    .m-boxlist .unit_link:hover .btn {
        background: #111;
        color: #fff
    }
}

@media screen and (max-width:767px) {
    .m-boxlist {
        display: block;
        margin: 0
    }

    .m-boxlist .box_unit {
        position: relative;
        width: auto;
        padding: 5.34vw 5.34vw 14.67vw;
        margin: 0;
        background: white;
    }

    .m-boxlist .box_unit+.box_unit {
        margin-top: 6.67vw
    }

    .m-boxlist .partner_type {
        margin: -5.33vw -5.33vw 10vw;
        font-size: 2.67vw;
        padding: 0 5.34vw;
        line-height: 8vw
    }

    .m-boxlist .partner_awards {
        right: 5.34vw
    }

    .m-boxlist .partner_awards li+li {
        margin-left: 1.34vw
    }

    .m-boxlist .partner_awards img {
        width: 9.74vw
    }

    .m-boxlist .unit_hdg {
        font-size: 3.47vw
    }

    .m-boxlist .unit_logo {
        height: 14.4vw;
        padding-bottom: 3.74vw;
        margin-bottom: 5.34vw
    }

    .m-boxlist .unit_logo img {
        max-width: 60vw;
        max-height: 10.67vw
    }

    .m-boxlist .unit_logo+.unit_hdg {
        font-size: 3.47vw
    }

    .m-boxlist .unit_txt {
        margin-top: 3.2vw;
        font-size: 3.2vw
    }

    .m-boxlist .unit_keywords {
        margin-top: 4vw
    }

    .m-boxlist .unit_keywords li {
        padding: 2.94vw;
        font-size: 3.2vw
    }

    .m-boxlist .unit_keywords li+li {
        margin-top: 2.67vw
    }

    .m-boxlist .unit_keywords.is_2col {
        margin-bottom: -2.66vw
    }

    .m-boxlist .unit_keywords.is_2col li {
        width: 38.67vw;
        margin-bottom: 2.67vw
    }

    .m-boxlist .unit_keywords.is_2col li+li {
        margin-top: 0
    }

    .m-boxlist .unit_link .btn {
        height: 9.34vw;
        font-size: 3.2vw;
        line-height: 9.34vw
    }
}

.unit_logo {
    img {
        width: auto;
    }
}

.anniversary_sponsorsr {
    background: linear-gradient(180deg, #f8f9fd 0%, #ffffff 100%);
}

/* grid */
.anniversary_sponsorsr .sponsors-grid {
    display: grid;
    gap: 24px;
    margin-top: 40px;
}

.anniversary_sponsorsr .sponsors-grid--platinum {
    grid-template-columns: repeat(2, 1fr);
    grid-template-columns: repeat(auto-fit, minmax(240px, 480px));
    justify-content: center;
}

.anniversary_sponsorsr .sponsors-grid--gold {
    grid-template-columns: repeat(3, 1fr);
    grid-template-columns: repeat(auto-fit, minmax(240px, 410px));
    justify-content: center;
}

.anniversary_sponsorsr .sponsors-grid--silver {
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

/* card */
.anniversary_sponsorsr .sponsor-card {
    background: #ffffff;
    border-radius: 16px;
    padding: 28px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
    display: flex;
    flex-direction: column;
    gap: 16px;
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 4;
    height: 100%;
}

.anniversary_sponsorsr .sponsor-card--compact {
    padding: 24px;
}

.anniversary_sponsorsr .sponsor-card--mini {
    padding: 20px;
    gap: 12px;
    width: 240px;
    margin: auto;
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 3;
}

/* logo */
.anniversary_sponsorsr .sponsor-logo {
    aspect-ratio: 16 / 9;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    text-align: center;
}

.anniversary_sponsorsr .sponsor-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    max-height: 88px;
    /* Platinum default（大） */
}

.anniversary_sponsorsr .sponsors-grid--gold .sponsor-logo img {
    max-width: 80%;
    max-height: 180px;
    min-width: 140px;
    /* Gold（中） */
}

/* text */
.anniversary_sponsorsr .sponsor-name {
    font-size: 16px;
    font-weight: 900;
    margin: 0;
    text-align: center;
}
.anniversary_sponsorsr .--silver-sponsorsr .sponsor-name {
    font-size: 12px;
}

.anniversary_sponsorsr .sponsor-name a {
    border: 0;
    color: #1d3994;
    cursor: pointer;
    position: relative;
    display: inline-block;
}

.anniversary_sponsorsr .sponsor-desc {
    font-size: 14px;
    line-height: 1.8;
    color: #4a5568;
    margin: 0;
}

/* solution (platinum only) */
.anniversary_sponsorsr .sponsor-solution {
    background: #f8f9fd;
    border-radius: 12px;
    padding: 14px;
}

.anniversary_sponsorsr .sponsor-solution__label {
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.15em;
    color: #039897;
    margin: 0 0 6px;
}

.anniversary_sponsorsr .sponsor-solution__text {
    font-size: 14px;
    line-height: 1.7;
    margin: 0;
}

/* Sponsor link button */
.anniversary_sponsorsr .sponsor-link {
    margin-top: auto;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 8px 16px;
    border-radius: 999px;
    font-weight: 800;
    font-size: 15px;
    text-decoration: none;

    color: #ffffff;
    background: #039897;
    border: 2px solid transparent;
    transition: background-color 0.3s ease-out, color 0.3s ease-out,
        border-color 0.3s ease-out;
}

.anniversary_sponsorsr .sponsor-link:hover {
    background: #ffffff;
    color: #039897;
    border-color: #039897;
}

.anniversary_sponsorsr .sponsor-link.is-mini {
    font-size: 14px;
    padding: 4px 8px;
}

/* responsive */
@media (max-width: 968px) {
    .anniversary_sponsorsr .sponsors-grid--platinum {
        grid-template-columns: 1fr;
    }

    .anniversary_sponsorsr .sponsors-grid--gold {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 560px) {

    .anniversary_sponsorsr .sponsors-grid--gold,
    .anniversary_sponsorsr {
        grid-template-columns: 1fr;
    }
}

/* kirikae-test */

        /* ── 動画背景コンテナ ── */
        .anniversary_teaser .hero-area-wrap {
            position: relative;
            overflow: hidden;
            margin: 0 calc(50% - 50vw);
            width: 100vw;
            /* 動画なしフォールバック */
            background: linear-gradient(160deg, #0a2a4a 0%, #0d5f6a 55%, #0d9090 100%);
        }

        /* 動画本体 */
        .hero-area__video {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
            z-index: 0;
            pointer-events: none;
        }

        /* 動画上のオーバーレイ（可読性確保） */
        .hero-area__overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(160deg, rgb(8 28 60 / 20%) 0%, rgb(10 60 80 / 48%) 55%, rgb(8 110 110 / 50%) 100%);
            z-index: 1;
            pointer-events: none;
        }

        /* ── hero--banner（動画背景は親が担うため不要な設定を除去） ── */
        .anniversary_teaser .hero--banner {
            position: relative;
            z-index: 2;
            padding: 0;
            background: none;
        }

        /* ── anniv-nav もhero-area-wrap内に収まるためfull-bleedは不要 ── */
        .anniversary_teaser .hero-area-wrap .anniv-nav {
            margin: 0;
            width: 100%;
            position: relative;
            z-index: 2;
        }

        /* ── グリッドコンテナ ── */
        .hero-banner__inner {
            position: relative;
            z-index: 2;
            display: grid;
            grid-template-columns: auto auto;
            grid-template-areas: "content logo";
            align-items: center;
            max-width: 1100px;
            margin: 0 auto;
            padding: 52px 40px;
            width: 100%;
            box-sizing: border-box;
            justify-content: center;
            column-gap: 20px;
            row-gap: 20px;
        }

        /* ── コンテンツ（左） ── */
        .hero-banner__content {
            grid-area: content;
            color: #fff;
            width: fit-content;
            margin: auto;
        }

        /* タイトル */
        .hero-banner__title {
            font-size: clamp(2rem, 4.5vw, 3rem);
            font-weight: 900;
            color: #fff;
            line-height: 1.15;
            margin: 0 0 18px;
            letter-spacing: 0.02em;
        }

        .hero-banner__title-num {
            font-size: 1.4em;
            font-weight: 900;
            line-height: 1;
            font-family: "Unbounded", sans-serif;
            font-optical-sizing: auto;
            font-weight: 400;
        }

        /* 黒帯サブタイトル */
        .hero-banner__subtitle {
            display: inline-block;
            color: #fff;
            font-size: clamp(0.9rem, 1.8vw, 1.1rem);
            font-weight: 700;
            padding: 7px 16px 7px 13px;
            border: 1px solid #fff;
            margin: 0 0 16px;
            letter-spacing: 0.1em;
            width: 100%;
            max-width: 631px;
        }

        .hero-banner__subtitle-num {
            font-size: 1.15em;
            font-weight: 900;
        }

        /* リードテキスト */
        .hero-banner__lead {
            font-size: clamp(0.8rem, 1.2vw, 1.3rem);
            color: rgba(255, 255, 255, 0.88);
            margin: 0 0 20px;
            letter-spacing: 0.03em;
            font-weight: 600;
        }

        /* 日付エリア（グリッドで整列） */
        .hero-banner__date-row {
            display: grid;
            grid-template-columns: auto auto;
            grid-template-rows: auto auto;
            grid-template-areas:
                "date  cta"
                "venue cta";
            align-items: center;
            justify-content: center;
            column-gap: 28px;
            row-gap: 2px;
            font-family: "Unbounded", sans-serif;
            font-weight: 400;
        }

        .hero-banner__date {
            grid-area: date;
            font-size: clamp(1.5rem, 3vw, 2.1rem);
            color: #fff;
            margin: 0;
            letter-spacing: 0.08em;
            line-height: 1.1;
            white-space: nowrap;
        }

        .hero-banner__day {
            font-size: 0.6em;
        }

        .hero-banner__venue {
            grid-area: venue;
            font-size: clamp(0.7rem, 1.2vw, 18px);
            color: rgba(255, 255, 255, 0.82);
            margin: 0;
            text-align: left;
            font-weight: 600;
        }

        .hero-banner__cta-wrap {
            grid-area: cta;
            display: flex;
            align-items: center;
        }

        /* ── ロゴ（右） ── */
        .hero-banner__logo {
            grid-area: logo;
            flex-shrink: 0;
            width: clamp(140px, 16vw, 235px);
            height: clamp(140px, 16vw, 235px);
            background: #fff;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: clamp(2vw, 18px, 32px);
            box-shadow: 0 4px 28px rgba(0, 0, 0, 0.25);
        }

        .hero-banner__logo img {
            width: 100%;
            height: 100%;
            object-fit: contain;
            display: block;
        }

        /* ── レスポンシブ（768px以下）── */
        @media (max-width: 768px) {
            .hero-banner__inner {
                grid-template-columns: 1fr;
                grid-template-areas:
                    "logo"
                    "content";
                padding: 40px 24px;
                gap: 28px;
                text-align: center;
                column-gap: 0px;
            }

            .hero-banner__logo {
                margin: 0 auto;
                width: 150px;
                height: 150px;
            }

            .hero-banner__date-row {
                grid-template-columns: 1fr;
                grid-template-areas:
                    "date"
                    "venue"
                    "cta";
                justify-items: center;
                row-gap: 8px;
            }

            .hero-banner__venue {
                text-align: center;
            }

            .hero-banner__cta-wrap {
                justify-content: center;
                margin-top: 4px;
            }
        }

        /* Section Styles */

        .anniversary_teaser .section {
            padding: 100px 0;
            position: relative;
            scroll-margin-top: 80px;
        }

        .anniversary_teaser .section-header {
            text-align: center;
            margin-bottom: 48px;
        }

        .anniversary_teaser .section-tag {
            display: inline-block;
            font-size: 13px;
            letter-spacing: 0.2em;
            text-transform: uppercase;
            font-weight: 800;
            color: #0d2f65;
            border: solid 1px #0d346a;
            margin-bottom: 16px;
            padding: 6px 16px;
            border-radius: 6px;
        }

        .anniversary_teaser .section-title {
            font-size: clamp(18px, 4vw, 44px);
            font-weight: 800;
            margin-bottom: 24px;
            color: #1a1d2e;
            letter-spacing: -1.5px;
        }

        .anniversary_teaser .section-lead {
            font-size: 18px;
            color: #4a5568;
            max-width: 800px;
            margin: 0 auto;
            line-height: 1.9;
            font-weight: 500;
        }

        /* 10周年ナビ（aboutの上） */
        .anniversary_teaser .anniv-nav {
            padding: 0 0 72px;
            margin: 0 calc(50% - 50vw);
            width: 100vw;
        }

        .anniversary_teaser .anniv-nav__inner {
            max-width: 1280px;
            margin: 0 auto;
            padding: 0 32px;
        }

        .anniversary_teaser .anniv-nav-tag {
            border-color: white;
            color: white;
        }

        .anniversary_teaser .anniv-nav__title {
            font-size: clamp(26px, 3vw, 34px);
            font-weight: 900;
            color: white;
            letter-spacing: -0.8px;
            margin-bottom: 18px;
        }

        .anniversary_teaser .anniv-nav__lead {
            font-size: 16px;
            color: white;
            line-height: 1.8;
            font-weight: 500;
            margin-bottom: 28px;
        }

        .anniversary_teaser .anniv-nav__grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 16px;
        }

        .anniversary_teaser .anniv-nav__btn {
            display: grid;
            grid-template-columns: 1fr auto;
            gap: 8px 12px;
            align-items: center;
            padding: 18px 18px;
            border-radius: 14px;
            background: #ffffff;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
            transition: all 0.25s;
        }

        .anniversary_teaser .anniv-nav__btn:hover {
            transform: translateY(-3px);
            border-color: #667eea;
            box-shadow: 0 12px 32px rgba(102, 126, 234, 0.15);
        }

        .anniversary_teaser .anniv-nav__btn:hover .anniv-nav__btnIcon {
            transform: translateX(4px);
        }

        .anniversary_teaser .anniv-nav__btnTitle {
            font-size: 16px;
            font-weight: 800;
            color: #1a1d2e;
            line-height: 1.4;
        }

        .anniversary_teaser .anniv-nav__btnText {
            grid-column: 1 / -1;
            font-size: 13px;
            color: #4a5568;
            font-weight: 600;
            line-height: 1.6;
        }

        .anniversary_teaser .anniv-nav__btnIcon {
            font-size: 18px;
            font-weight: 900;
            color: #0d346a;
            transform: translateX(0);
            transition: transform 0.25s;
        }

        /* Clean Background Pattern */
        .anniversary_teaser .bg-animation {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: 0;
            pointer-events: none;
            background: linear-gradient(180deg, #f8f9fd 0%, #ffffff 100%);
        }

        .anniversary_teaser .bg-animation::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background-image: linear-gradient(rgba(102, 126, 234, 0.03) 1px, transparent 1px),
                linear-gradient(90deg, rgba(102, 126, 234, 0.03) 1px, transparent 1px);
            background-size: 80px 80px;
        }

        .anniversary_teaser .gradient-orb {
            display: none;
        }

        .anniversary_teaser .wrapper {
            max-width: 1280px;
            margin: 0 auto;
            padding: 0 32px;
            position: relative;
            z-index: 1;
        }

        /* Hero Section */
        .anniversary_teaser .hero {
            padding: 100px 0 120px;
            text-align: center;
            position: relative;
            background-image: url("/assets/pleasanter/images/10th_anniversary_teaser/hero-bg.png");
            margin: 0 calc(50% - 50vw);
            width: 100vw;
            background-size: cover;
        }

        .anniversary_teaser .hero-img {
            max-width: 260px;
        }

        .anniversary_teaser .hero-title {
            font-size: clamp(42px, 8vw, 86px);
            font-weight: 900;
            margin-bottom: 32px;
            line-height: 1.1;
            color: #1a1d2e;
            letter-spacing: -3px;
            position: relative;
            z-index: 1;
        }

        .anniversary_teaser .hero-title br {
            display: block;
        }

        .anniversary_teaser .hero-subtitle {
            font-size: clamp(20px, 3vw, 32px);
            font-weight: 700;
            margin-bottom: 20px;
            color: #2d3748;
            line-height: 1.5;
            position: relative;
            z-index: 1;
        }

        .anniversary_teaser .hero-description {
            font-size: clamp(16px, 2vw, 20px);
            margin-bottom: 56px;
            color: #4a5568;
            max-width: 900px;
            margin-left: auto;
            margin-right: auto;
            line-height: 1.9;
            font-weight: 500;
            position: relative;
            z-index: 1;
        }

        .anniversary_teaser .hero-cta {
            display: flex;
            gap: 24px;
            justify-content: center;
            flex-wrap: wrap;
            position: relative;
            z-index: 1;
        }

        .anniversary_teaser .anniversary-badge {
            font-size: 14px;
            letter-spacing: 0.05em;
            font-weight: 800;
            text-transform: uppercase;
            padding: 12px 28px;
            margin-bottom: 18px;
            color: #6c656a;
        }

        .anniversary_teaser .event-meta {
            display: flex;
            justify-content: center;
            align-items: center;
            gap: 32px;
            margin-bottom: 64px;
            flex-wrap: wrap;
            position: relative;
            z-index: 1;
        }

        .anniversary_teaser .meta-item {
            display: flex;
            gap: 12px;
            font-weight: 700;
            color: #1a1d2e;
            font-size: 16px;
        }

        .anniversary_teaser .meta-icon {
            width: 24px;
            height: 24px;
            color: #667eea;
        }

        .anniversary_teaser .btn-primary {
            display: inline-flex;
            align-items: center;
            gap: 12px;
            padding: 20px 56px;
            border-radius: 12px;
            background: #667eea;
            color: #fff;
            font-size: 18px;
            font-weight: 800;
            border: none;
            cursor: pointer;
            transition: all 0.3s;
            box-shadow: 0 8px 24px rgba(102, 126, 234, 0.35);
            position: relative;
            overflow: hidden;
        }

        .anniversary_teaser .btn-primary::before {
            content: '';
            position: absolute;
            inset: 0;
            background: linear-gradient(135deg, transparent, rgba(255, 255, 255, 0.2), transparent);
            transform: translateX(-100%);
            transition: transform 0.6s;
        }

        .anniversary_teaser .btn-primary:hover {
            transform: translateY(-2px);
            box-shadow: 0 12px 40px rgba(102, 126, 234, 0.5);
            background: #5a54d6;
        }

        .anniversary_teaser .btn-primary:hover::before {
            transform: translateX(100%);
        }

        .anniversary_teaser .btn-secondary {
            display: inline-flex;
            align-items: center;
            gap: 12px;
            padding: 20px 56px;
            border-radius: 12px;
            background: #ffffff;
            color: #667eea;
            font-size: 18px;
            font-weight: 800;
            border: 2px solid #667eea;
            cursor: pointer;
            transition: all 0.3s;
            box-shadow: 0 4px 16px rgba(102, 126, 234, 0.15);
        }

        .anniversary_teaser .btn-secondary:hover {
            background: #667eea;
            color: #fff;
            transform: translateY(-2px);
            box-shadow: 0 8px 24px rgba(102, 126, 234, 0.35);
        }

        /* Two Column Layout */
        .anniversary_teaser .two-col {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 80px;
            align-items: center;
        }

        .anniversary_teaser .content-block h3 {
            font-size: clamp(26px, 4vw, 48px);
            font-weight: 900;
            margin-bottom: 28px;
            color: #1a1d2e;
            line-height: 1.25;
            letter-spacing: -1px;
        }

        .anniversary_teaser .content-block p {
            font-size: 18px;
            color: #4a5568;
            line-height: 1.9;
            margin-bottom: 24px;
            font-weight: 500;
        }

        .anniversary_teaser .logo-block {
            padding: 20px;
            border-radius: 14px;
            background: #ffffff;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
            color: #0b386e;
        }

        .anniversary_teaser .concept-showcase {
            padding: 0px;
            position: relative;
            overflow: hidden;
        }

        .anniversary_teaser .concept-showcase::before {
            content: '';
            position: absolute;
            inset: -2px;
            border-radius: 24px;
            z-index: 0;
            opacity: 0.8;
        }

        .anniversary_teaser .concept-showcase::after {
            content: '';
            position: absolute;
            inset: 0;
            border-radius: 24px;
            z-index: 0;
        }

        .anniversary_teaser .concept-logo {
            padding: 1em 0 2em;
        }

        .anniversary_teaser .concept-logo img {
            width: min(520px, 100%);
            height: auto;
            display: block;
        }

        .anniversary_teaser .concept-label {
            display: inline-block;
            font-size: 12px;
            padding: 8px 18px;
            border-radius: 6px;
            color: white;
            background: rgb(12 52 106);
            margin-bottom: 24px;
            font-weight: 800;
            letter-spacing: 0.1em;
            backdrop-filter: blur(10px);
            position: relative;
            z-index: 1;
        }

        .anniversary_teaser .concept-title {
            font-size: clamp(28px, 3.5vw, 42px);
            font-weight: 900;
            margin-bottom: 20px;
            color: #fff;
            line-height: 1.25;
            position: relative;
            z-index: 1;
            letter-spacing: -1px;
        }

        .anniversary_teaser .concept-text {
            font-size: 18px;
            line-height: 1.9;
            position: relative;
            z-index: 1;
            font-weight: 500;
        }

        /* Feature Grid */
        .anniversary_teaser .topics-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
            gap: 32px;
            margin-top: 64px;
        }

        .anniversary_teaser .topic-card {
            background: #ffffff;
            border-radius: 16px;
            padding: 23px;
            transition: all 0.3s;
            position: relative;
            overflow: hidden;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
        }

        .anniversary_teaser .topic-number {
            display: inline-block;
            font-size: 12px;
            padding: 6px 14px;
            border-radius: 6px;
            background: #f8f9fd;
            color: #0D346A;
            margin-bottom: 20px;
            font-weight: 800;
            letter-spacing: 0.05em;
        }

        .anniversary_teaser .topic-title {
            font-size: 22px;
            font-weight: 800;
            margin-bottom: 16px;
            color: #1a1d2e;
            line-height: 1.4;
        }

        .anniversary_teaser .topic-description {
            font-size: 16px;
            color: #4a5568;
            line-height: 1.8;
            font-weight: 500;
        }

        /* Guest Speakers - Time Table */
        .anniversary_teaser .speakers-list {
            display: grid;
            gap: 14px;
            margin-top: 64px;
        }

        .anniversary_teaser .speaker-row {
            display: grid;
            grid-template-columns: 130px 160px 1fr;
            gap: 18px 22px;
            align-items: center;
            background: #ffffff;
            border-radius: 16px;
            padding: 22px;
            transition: all 0.25s;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
        }

        .anniversary_teaser .speaker-row:hover {
            transform: translateY(-3px);
            box-shadow: 0 12px 32px rgba(102, 126, 234, 0.15);
        }

        .anniversary_teaser .speaker-time {
            display: grid;
            gap: 6px;
            align-content: start;
        }

        .anniversary_teaser .speaker-time__label {
            display: block;
            font-size: 11px;
            font-weight: 900;
            letter-spacing: 0.2em;
            text-transform: uppercase;
            color: #039897;
        }

        .anniversary_teaser .speaker-time__value {
            display: block;
            font-size: 16px;
            font-weight: 900;
            color: #1a1d2e;
            line-height: 1.2;
        }

        .anniversary_teaser .speaker-photo {
            width: 160px;
            aspect-ratio: 1 / 1;
            border-radius: 16px;
            overflow: hidden;
            background: #f8f9fd;
        }

        .anniversary_teaser .speaker-photo img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
        }

        .anniversary_teaser .speaker-body {
            min-width: 0;
            display: grid;
            gap: 12px;
            align-content: start;
        }

        .anniversary_teaser .speaker-session {
            padding: 12px 14px;
            border-radius: 12px;
            background: #f8f9fd;
        }

        .anniversary_teaser .speaker-session__label {
            display: block;
            font-size: 11px;
            font-weight: 900;
            letter-spacing: 0.2em;
            text-transform: uppercase;
            color: #039897;
            margin-bottom: 6px;
        }

        .anniversary_teaser .speaker-session__title {
            font-size: 16px;
            font-weight: 900;
            color: #1a1d2e;
            line-height: 1.55;
        }

        .anniversary_teaser .speaker-bio {
            font-size: 15px;
            color: #4a5568;
            line-height: 1.8;
            font-weight: 500;
            margin: 0;
        }

        .anniversary_teaser .speaker-name {
            font-size: 18px;
            font-weight: 900;
            color: #1a1d2e;
            line-height: 1.35;
            margin-top: 2px;
        }

        .anniversary_teaser .speaker-title {
            font-size: 14px;
            color: #039897;
            font-weight: 800;
            letter-spacing: 0.02em;
        }

        .anniversary_teaser .speaker-person {
            display: flex;
            align-items: baseline;
            gap: 10px;
            flex-wrap: wrap;
        }

        .anniversary_teaser .speaker-person .speaker-name {
            margin: 0;
        }

        .anniversary_teaser .speaker-person .speaker-title {
            margin: 0;
        }

        /* Sponsor Section */
        .anniversary_teaser .sponsor-tier {
            margin-bottom: 92px;
        }

        .anniversary_teaser .sponsor-tier:last-of-type {
            margin-bottom: 0;
        }

        .anniversary_teaser .sponsor-tier-title {
            font-size: 16px;
            font-weight: 800;
            text-align: center;
            margin-bottom: 40px;
            letter-spacing: 0.15em;
            text-transform: uppercase;
        }

        .anniversary_teaser .sponsor-logos {
            display: grid;
            gap: 24px;
            justify-items: center;
            margin: 0 auto;
        }

        .anniversary_teaser .sponsor-platinum {
            grid-template-columns: repeat(auto-fit, minmax(180px, 220px));
            max-width: 980px;
            justify-content: center;
        }

        .anniversary_teaser .sponsor-gold {
            grid-template-columns: repeat(auto-fit, minmax(220px, 230px));
            justify-content: center;
            justify-items: center;
            max-width: 1200px;
        }

        .anniversary_teaser .sponsor-community {
            grid-template-columns: repeat(auto-fit, 180px);
            justify-content: center;
            max-width: 1200px;
        }
        .anniversary_teaser .sponsor-silver {
            grid-template-columns: repeat(6, 1fr);
            max-width: 1200px;
        }

        .anniversary_teaser .sponsor-logo-card {
            background: #ffffff;
            border-radius: 12px;
            width: 100%;
            aspect-ratio: 16 / 9;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: all 0.3s;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
            position: relative;
            overflow: hidden;
        }

        .anniversary_teaser .sponsor-logo-card:hover {
            transform: translateY(-4px);
            border-color: #667eea;
            box-shadow: 0 8px 24px rgba(102, 126, 234, 0.12);
        }

        .anniversary_teaser .sponsor-logo-card:hover::before {
            opacity: 1;
        }

        .anniversary_teaser .sponsor-logo-placeholder {
            width: 100%;
            height: 100%;
            padding: 26px;
            display: flex;
            align-items: center;
            justify-content: center;
            position: relative;
            z-index: 1;
        }

        .anniversary_teaser .sponsor-logo-placeholder img {
            width: 100%;
            height: 100%;
            object-fit: contain;
            display: block;
        }

        .anniversary_teaser .sponsor-platinum .sponsor-logo-card {
            min-height: 190px;
        }
        .anniversary_teaser .sponsor-community .sponsor-logo-card {
            min-height: 100px;
        }

        .anniversary_teaser .sponsor-cta {
            text-align: center;
            margin-top: 96px;
            padding-top: 80px;
            border-top: 2px solid #e2e8f0;
        }

        .anniversary_teaser .sponsor-cta-text {
            font-size: 20px;
            font-weight: 700;
            color: #1a1d2e;
            margin-bottom: 32px;
        }

        /* Event Overview */
        .anniversary_teaser .event-overview__card {
            max-width: 900px;
            margin: 56px auto 0;
            padding: 40px 44px;
            border-radius: 16px;
            background: #ffffff;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
        }

        .anniversary_teaser .event-overview__list {
            display: grid;
            grid-template-columns: 180px 1fr;
            gap: 18px 28px;
            margin: 0;
        }

        .anniversary_teaser .event-overview__term {
            font-size: 13px;
            font-weight: 900;
            letter-spacing: 0.2em;
            text-transform: uppercase;
            color: #039897;
            padding-top: 4px;
        }

        .anniversary_teaser .event-overview__desc {
            font-size: 16px;
            font-weight: 600;
            color: #1a1d2e;
            line-height: 1.8;
            margin: 0;
        }

        .anniversary_teaser .event-overview__desc small {
            display: block;
            font-size: 13px;
            font-weight: 600;
            color: #4a5568;
            margin-top: 6px;
        }

        /* Registration Form */
        .anniversary_teaser .registration-section {
            padding: 100px 64px;
            text-align: center;
            border: none;
            margin: 0;
            box-shadow: none;
            border-top: 2px solid #e2e8f0;
        }

        .anniversary_teaser .registration-title {
            font-size: clamp(36px, 5vw, 48px);
            font-weight: 900;
            margin-bottom: 20px;
            color: #1a1d2e;
            letter-spacing: -1.5px;
        }

        .anniversary_teaser .registration-subtitle {
            font-size: 18px;
            color: #4a5568;
            margin-bottom: 56px;
            font-weight: 500;
            line-height: 1.8;
        }

        .anniversary_teaser .form-container {
            max-width: 700px;
            margin: 0 auto;
            padding: 40px;
            border-radius: 16px;
            box-shadow: 0 4px 24px rgba(0, 0, 0, 0.06);
            background: white;
            text-align: left;
        }

        .anniversary_teaser #satori__creative_container {
            max-height: 100vh !important;
            overflow-y: auto !important;
            -webkit-overflow-scrolling: touch !important;
        }

        .anniversary_teaser .form-row {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 16px;
            margin-bottom: 16px;
        }

        .anniversary_teaser .form-group {
            margin-bottom: 16px;
            text-align: left;
        }

        .anniversary_teaser .form-label {
            display: block;
            font-size: 14px;
            font-weight: 700;
            color: #2d3748;
            margin-bottom: 8px;
        }

        .anniversary_teaser .form-required {
            color: #f56565;
            margin-left: 4px;
        }

        .anniversary_teaser .form-input,
        .anniversary_teaser .form-select,
        .anniversary_teaser .form-textarea {
            width: 100%;
            padding: 16px 20px;
            border-radius: 16px;
            background: #fff;
            border: 2px solid rgba(102, 126, 234, 0.2);
            color: #1a1d2e;
            font-size: 16px;
            transition: all 0.3s;
            font-family: inherit;
        }

        .anniversary_teaser .form-input:focus,
        .anniversary_teaser .form-select:focus,
        .anniversary_teaser .form-textarea:focus {
            outline: none;
            border-color: #667eea;
            box-shadow: 0 0 0 4px rgba(102, 126, 234, 0.1);
        }

        .anniversary_teaser .form-textarea {
            resize: vertical;
            min-height: 100px;
        }

        .anniversary_teaser .form-checkbox-group {
            display: flex;
            align-items: flex-start;
            gap: 12px;
            padding: 16px;
            background: #f7fafc;
            border-radius: 12px;
        }

        .anniversary_teaser .form-checkbox {
            width: 20px;
            height: 20px;
            margin-top: 2px;
            cursor: pointer;
            accent-color: #667eea;
        }

        .anniversary_teaser .form-checkbox-label {
            font-size: 14px;
            color: #4a5568;
            line-height: 1.6;
            flex: 1;
        }

        .anniversary_teaser .form-submit {
            margin-top: 32px;
        }

        .anniversary_teaser .form-note {
            font-size: 13px;
            color: #718096;
            margin-top: 20px;
            line-height: 1.7;
        }
        @media (min-width: 768px) {
        section.registration-section #satori__creative_container {
            width: auto !important;
        }
        }
        /* Responsive */
        @media (max-width: 968px) {
            .anniversary_teaser .anniv-nav {
                padding: 56px 0;
            }

            .anniversary_teaser .anniv-nav__grid {
                grid-template-columns: repeat(2, 1fr);
            }

            .anniversary_teaser .two-col {
                grid-template-columns: 1fr;
                gap: 48px;
            }

            .anniversary_teaser .hero {
                padding: 2.1vw 2.1vw 0;
            }

            .anniversary_teaser .section {
                padding: 80px 0;
            }

            .anniversary_teaser .registration-section {
                padding: 48px 32px;
            }

            .anniversary_teaser .form-container {
                padding: 40px 24px;
            }

            .anniversary_teaser .form-row {
                grid-template-columns: 1fr;
            }

            .anniversary_teaser .nav {
                display: none;
            }

            .anniversary_teaser .topics-grid,
            .anniversary_teaser .speakers-grid {
                grid-template-columns: 1fr;
            }

            .anniversary_teaser .sponsor-platinum {
                grid-template-columns: 1fr;
                max-width: 400px;
            }

            .anniversary_teaser .sponsor-silver {
                grid-template-columns: repeat(3, 1fr);
                max-width: 700px;
            }

            .anniversary_teaser .speaker-row {
                grid-template-columns: 120px 120px 1fr;
                padding: 18px;
            }

            .anniversary_teaser .speaker-photo {
                width: 120px;
                border-radius: 14px;
            }

            .anniversary_teaser .speaker-time__value {
                font-size: 15px;
            }
        }

        @media (max-width: 767px) {
            .anniversary_teaser .form-container {
                margin: 0 calc(50% - 50vw);
                width: 100vw;
            }
        }

        @media (max-width: 560px) {
            .anniversary_teaser .anniv-nav__inner {
                padding: 0 20px;
            }

            .anniversary_teaser .anniv-nav__grid {
                grid-template-columns: 1fr;
            }

            .anniversary_teaser .speaker-row {
                grid-template-columns: 1fr;
                gap: 12px;
            }

            .anniversary_teaser .speaker-time {
                order: 0;
            }

            .anniversary_teaser .speaker-photo {
                width: 100%;
            }

            .anniversary_teaser .speaker-person {
                flex-direction: column;
                align-items: flex-start;
                gap: 4px;
            }

            .anniversary_teaser .event-overview__card {
                padding: 28px 22px;
            }

            .anniversary_teaser .event-overview__list {
                grid-template-columns: 1fr;
                gap: 10px;
            }

            .anniversary_teaser .event-overview__term {
                padding-top: 0;
            }
        }









.hogehoge {
    color: red;
    font-size: 20px;
}

/* 旧style.css打ち消し */
@media screen and (max-width: 767px) {
    .l-footer {
        padding-top: 6.67vw;
        margin: 0;
    }
}

.appScrollEffectTarget.appTweenFadeUp,
.appTweenGroupItem.appTweenFadeUp,
.appScrollEffectTarget.appTweenFadeLeft,
.appTweenGroupItem.appTweenFadeLeft {
    opacity: 100;
}


/* partner/ */
.l-main .main_header .hdg {
    padding-top: 40px;
}

.Partner_Show-main {
    section {
        padding:0 20px 20px 20px;
    }

    .detail_inner {
        .header_logo {
            margin: 20px auto;
            text-align: center;
            img {
              width: auto;
              max-width: 300px;
            }
        }
    }
    .main_sct:not(.is_gray)+.main_sct {
      margin-top: 0;
    }
}
.s-partner_detail_side a {
    display: block;
}

@media screen and (min-width: 767px) {
    .side_col {
        max-width: 30%;
    }
}

/* form/parts */
.parts-thnaks-page_bnr-wrap {
    a {
        display: block;
    }
}

/* blog&news */
.s-blog_detail {
    .c-button__link--fill {
        border: 1px solid transparent;
        color: #fff;
        &:hover {
        border: 1px solid #000;
        color: #000;
        }
    }
    .c-button__link--black {
        border: 1px solid #000;
        color: #000;
        &:hover {
            border: 1px solid transparent;
            color: #fff;
        }
    }

    .blog_detail_header {
        .header_hdg {
            margin: 1em 0 1em;
        }
    }
}

/* マニュアル・リンクホバー */
.main_manual,
.blog-list-main,
.blog-show-main,
.Partner_Show-main.article_notes {
    a {
        // border: 0;
        color: #1d3994;
        cursor: pointer;
        transition: 0.3s;

        &:hover {
            color: #0066cc;
        }
    }
    img {
        width: initial;
        max-width: 100%;
    }

    .manual-side-bnr {
        a {
            display: block;
        }
    }
}

/* 2025/10/24追記 */
#ManualMarkdown p,
#ManualMarkdown pre,
#ManualMarkdown code {
    white-space: pre-wrap !important;
}
/* 旧タイトルアニメーション打ち消し */
.appScrollEffectTarget, .appTweenFadeUp, .appIsActive {
    animation-duration: 0ms !important;
}
// @media (min-width: 768px) {
// .s-blog_detail {
//     .blog_detail_header {
//         .header_hdg {
//             margin: 1.5vw 0 0px;
//         }
//     }
// }
// }

#pdfLoad{
    left: 50%;
    top: 320px;
    transform: translate(-50%, -50%);
    border: 0;
    background-color: initial;
    outline: none;
    overflow: hidden;
    &::backdrop {
      background-color: rgb(0 0 0 / 65%);
    }
}


.pdfLoader{
     border: 16px solid #f3f3f3;
     border-top: 16px solid #3498db;
     border-radius: 50%;
     width: 120px;
     height: 120px;
     animation: spin 2s linear infinite;
 }

 @keyframes spin {
     0% {
         transform: rotate(0deg);
     }
     100% {
         transform: rotate(360deg);
     }
 }