@charset "urf-8";
/* ≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
 common
≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡*/

body {
    overflow-x: hidden;
}

.section {
    width: 100%;
    max-width: 1080px;
    /* margin: 100px auto; */
    margin: 120px auto;
}

.section.inner {
    padding: 120px 0;
    margin-top: 0;
    margin-bottom: 0;
}

.section-title_sub {
    display: block;
    color: var(--pu-400);
    font-size: 24px;
}

.partner-shadow {
    /*非アクション専用シャドウ*/
    box-shadow: 0 5px 40px -5px rgb(0 0 0 / 10%);
}

.flex-wrapper {
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    justify-content: space-between;
}

.flex-reverse {
    flex-direction: row-reverse;
}

br.pc-only {
    display: block;
}

br.sp-only {
    display: none;
}

.text-color-blue {
    color: var(--pu-400);
}

@media all and (max-width:768px) {
    .section {
        width: auto;
        min-width: auto;
        box-sizing: border-box;
        padding: 0 20px;
        margin: 40px auto;
    }
    .section.inner {
        /* padding: 20px 0; */
        padding: 40px 20px;
    }
    .flex-wrapper {
        display: block;
    }
    .flex-wrapper .flex-item {
        width: 100%;
    }
    br.pc-only {
        display: none;
    }
    br.sp-only {
        display: block;
    }
}

.salespartner {
    font-feature-settings: "palt" 1;
    /*  margin-top: 22px;*/
}

.page-wrapper.salespartner {
    position: relative;
    /* z-index: 0; */
}

.grecaptcha-badge {
    z-index: 100;
}

.partner_box {
    background-color: #fff;
    border-radius: 12px;
    margin-top: 60px;
    padding: 40px;
}

.partner_box_image {}

.partner_box_text {}

@media all and (max-width:768px) {
    .partner_box {
        width: auto;
        margin: 20px auto 0;
        padding: 20px;
    }
}

/* header
======================================================= */

/* .salespartne_header {
    position: absolute;
    top: 0;
    left: 0;
    background-color: var(--sun);
    z-index: 100;
}

.salespartne_header_tit {
    font-size: 20px;
    text-align: left;
    line-height: 50px;
    color: var(--night);
    font-weight: bold;
}

.salespartne_header>.section {
    margin: 0 auto;
    padding: 0;
}

@media all and (max-width:768px) {
    .salespartne_header_tit {
        font-size: 16px;
        line-height: 40px;
    }
    .salespartne_header>.section {
        padding: 0 15px;
    }
} */

/* ≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
 top
≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡*/

/* hero
======================================================= */

.hero {
    position: relative;
    margin: 0 auto 60px;
    /* background-image: url("../img/salespartner/renew2023/hero_bg.png"); */
    background-size: cover;
    background-repeat: no-repeat;
    padding-top: 50px;
    min-height: 496px;
    background-color: #FAF7EF;
}

.hero>.inner {
    position: relative;
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    padding: 50px 0 0;
    margin: 0 auto;
}

.main-copy-wrapper {
    width: 100%;
    text-align: left;
    position: relative;
}

.sub-copy {
    font-size: 24px;
    font-weight: bold;
    color: var(--pu-400);
}

.main-copy {
    font-weight: bold;
    font-size: 40px;
    line-height: 1.3;
}

.main-copy strong {
    font-size: 72px;
}

.main-copy-wrapper .button {
    width: 400px;
    margin-top: 30px;
}

.hero-image-wrapper {
    position: absolute;
    width: 530px;
    top: 66px;
    right: 0;
}

.hero-image-wrapper>img {
    width: 100%;
    height: auto;
}

@media screen and (max-width: 768px) {
    .hero {
        /* margin-bottom: 80px; */
        padding-top: 40px;
        margin-bottom: 0;
        min-height: auto;
        background-image: none;
        background-color: var(--sa-50);
        height: 565px;
    }
    .hero>.inner {
        position: relative;
        padding: 30px 20px;
        display: block;
    }
    .main-copy-wrapper {
        /* align-items: flex-start; */
    }
    .main-copy-wrapper .child-font.section-title {
        width: auto;
        position: relative;
        text-align: center;
        z-index: 2;
    }
    .sub-copy {
        font-size: 16px;
    }
    .main-copy {
        font-size: 24px;
        /* letter-spacing: -2px; */
    }
    .main-copy strong {
        font-size: 32px;
    }
    .page-title {
        font-size: 18px;
        letter-spacing: -2px;
        padding: 0 15px;
        margin: 20px 0;
    }
    .main-copy-wrapper::after {
        left: 0;
        top: -70px;
        height: 80px;
        width: 100%;
        background: linear-gradient(-7deg, #ffcd46 0%, #ffcd46 50%, transparent 50%, transparent 100%);
    }
    .main-copy-wrapper .button {
        width: auto;
    }
    .hero-image-wrapper {
        position: relative;
        width: 100%;
        top: auto;
        right: auto;
    }
    .hero-image {
        height: auto;
    }
}

/* partner-brands
======================================================= */

.partner-brands {
    background-color: #f2faff;
    padding: 1px;
    box-sizing: border-box;
}

.partner-brands .partner-box {
    padding: 40px;
}

.partner-brands-box {
    margin-top: 40px;
    background: var(--cloud);
}

.partner-brands .flex-wrapper {
    flex-wrap: wrap;
    width: 700px;
    margin: 40px auto 0;
}

.partner-brands-logo {
    width: 220px;
    display: block;
    margin-bottom: 20px;
}

@media all and (max-width:768px) {
    .partner-brands .partner-box {
        padding: 30px;
    }
    .partner-brands .flex-wrapper {
        margin-top: 20px;
        flex-wrap: wrap;
        width: 100%;
    }
    .partner-brands-logo {
        margin: 10px auto;
        width: 90%;
    }
}

/* kaonavi-explain
======================================================= */

.kaonavi_explain_image {
    width: 353px;
    height: auto;
}

.explain_text_area {
    text-align: left;
    margin-left: 30px;
    margin-top: 30px;
}

p.category {
    letter-spacing: -1px;
}

.explain_text_area .explain_text {
    margin-top: 20px;
}

.child-section.no1 {
    border-top: none;
}

/* old---------------------- */

.kaonavi-explain-inner {
    /* border-radius: 12px;
  overflow: hidden; */
    border-radius: 12px;
    border: 4px solid var(--water);
}

.kaonavi-explain-trigger {
    width: 100%;
    border-radius: 8px;
    transition: .3s ease;
}

.kaonavi-explain-trigger .trigger-text {
    color: inherit;
    display: block;
    line-height: 72px;
    position: relative;
}

.kaonavi-explain-trigger .trigger-text {
    font-size: 24px;
    font-weight: bold;
    letter-spacing: .1em;
}

.kaonavi-explain-trigger .trigger-text::before {
    content: '';
    background: url(../img/salespartner/renew2023/kaonavi_trigger.png);
    background-size: cover;
    width: 36px;
    height: 36px;
    position: absolute;
    top: 50%;
    margin-top: -18px;
    left: 30px;
    transition: .3s ease;
}

.kaonavi-explain-trigger .trigger-text::after {
    display: none;
}

/* open */

.kaonavi-explain-trigger.open {
    /* box-shadow: none; */
}

.kaonavi-explain-trigger.open .trigger-text::before {
    transform: rotateZ(-135deg);
}

.kaonavi-explain-trigger:hover {
    cursor: pointer;
    background-color: var(--sun);
}

.kaonavi-explain-contents {
    display: none;
    padding: 40px;
    background: #FAFAFC;
    text-align: left;
    border-radius: 0 0 8px 8px;
}

.kaonavi-explain-contents .flex-wrapper {
    align-items: center;
}

.kaonavi-explain-contents .kaonavi-explain-contents_image {
    width: 458px;
}

.kaonavi-explain-contents .kaonavi-explain-contents_image img {
    width: 100%;
    height: auto;
}

.kaonavi-explain-contents .section-title {
    font-size: 32px;
    line-height: 1.4;
}

.kaonavi-explain-contents .section-title span {
    font-size: 20px;
    font-weight: normal;
    display: block;
}

.kaonavi-explain-contents .section-title strong {
    font-weight: bold;
    color: var(--pu-400);
}

.kaonavi-explain-content-wrapper {
    margin-top: 40px;
    background-color: #fff;
    padding: 30px;
}

.kaonavi-explain-content-wrapper-item {
    justify-content: space-between;
}

.kaonavi-explain-content-wrapper-item .flex-item {
    width: 48%;
}

.content-wrap-head {
    position: relative;
    font-size: 20px;
    font-weight: bold;
    color: var(--pu-400);
    padding-bottom: 10px;
    margin-bottom: 10px;
}

.content-wrap-head::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 3px;
    background-color: #F0F1F5;
}

.content-wrap-text,
.content-wrap-list {
    margin-bottom: 40px;
}

.content-wrap-item {
    list-style: disc;
    margin-left: 20px;
}

.flex-wrapper.kaonavi-explain-salespoint {
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch;
}

.kaonavi-explain-salespoint-item {
    border-radius: 10px;
    text-align: left;
    width: 24%;
    padding: 10px;
    margin-top: 10px;
    background-color: var(--sun);
}

.salespoint-head {
    font-weight: bold;
    margin-bottom: 5px;
    text-align: center;
}

.salespoint-text {
    font-size: 12px;
    line-height: 1.3;
}

.kaonavi-explain-head-annotation {
    font-size: 10px;
}

.kaonavi-explain-item-annotation .small {
    bottom: -20px;
    display: block;
    font-size: 10px;
    color: #929292;
    padding-top: 5px;
    line-height: 1;
}

.youtube-box {
    width: 60%;
}




@media all and (max-width:768px) {
    .youtube-box {
        width: 100%;
    }

    .kaonavi-explain {
        padding-bottom: 40px;
    }

    .section.kaonavi-explain-inner {
        margin: 40px 20px 0;
        padding: 0;
        /* border-radius: 25px; */
    }

    

    .kaonavi-explain-trigger .trigger-text {
        font-size: 20px;
        line-height: 1.4;
        padding: 10px 20px;
    }
    .kaonavi-explain-trigger .trigger-text::before {
        left: 15px;
        width: 30px;
        height: 30px;
        margin-top: -15px;
    }
    .kaonavi-explain-content-wrapper {
        margin-top: 20px;
        padding: 20px;
    }
    .kaonavi-explain-contents {
        padding: 20px;
    }
    .kaonavi-explain-contents .section-title {
        font-size: 24px;
    }
    .kaonavi-explain-contents .section-title span {
        font-size: 16px;
    }
    .kaonavi-explain-contents .kaonavi-explain-contents_image {
        width: auto;
    }
    .content-wrap-head {
        font-size: 16px;
    }
    .content-wrap-text,
    .content-wrap-list {
        margin-bottom: 20px;
    }
    .kaonavi-explain-content-wrapper-item .flex-item {
        width: auto;
    }
    .explain_text_area {
        margin-left: 0;
    }
    /* .trigger-text::after{
    right: -20px;
  }
  .trigger-text{
    font-size: 20px;
  } */
    .no1 .no1-list .item-no1 {
        width: 150px;
    }
    .no1 .no1-list {
        margin: 0 -20px;
        padding: 0;
    }
}

/* partner-explain
======================================================= */

.partner-explain-subtitle {
    margin-top: 20px;
    line-height: 1.6;
}

.partner-feature {
    margin-top: 60px;
    justify-content: space-between;
}

.partner-card {
    position: relative;
    width: 520px;
    background: #fff;
    position: relative;
    overflow: hidden;
    border-radius: 12px;
    padding: 40px;
}

.partner-card_image {
    position: relative;
    margin: -40px -40px 0;
    height: 286px;
}

.partner-card_image img {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
    width: 340px;
}

.partner-variation-title {
    font-size: 32px;
    font-weight: bold;
    margin-top: 30px;
}

.partner-variation-title span {
    display: inline-block;
    padding: 8px 12px;
    color: #fff;
    margin-right: 0.3em;
    border-radius: 8px;
}

.partner-for-whom {
    text-align: center;
    color: #737378;
    font-weight: bold;
    min-height: 40px;
}

.partner-for-whom small {
    font-size: 12px;
}

.partner-texts {
    margin-top: 20px;
    text-align: left;
}

.partner-text {
    min-height: 5em;
}

.partner-explain .caution {
    margin-top: 60px;
    font-weight: bold;
}

@media all and (max-width:768px) {
    .partner-for-whom small {
        display: block;
    }
}

.target-situation {
    padding: 20px;
    border-radius: 8px;
    margin-top: 20px;
}

.target-situation_title {
    font-size: 20px;
    font-weight: bold;
}

.target-situation_list {
    margin-top: 15px;
}

.target-situation_list_item {
    position: relative;
    text-indent: -1em;
    padding-left: 1em;
    margin: 8px 0;
    font-weight: bold;
}

.target-situation_list_item::before {
    content: "●";
    font-size: 16px;
    line-height: 16px;
    padding-right: 0.2em;
}

/* sales */

.partner-card.sales .partner-card_image,
.partner-card.sales .target-situation {
    background-color: var(--ly-50);
}

.partner-card.sales .partner-variation-title span {
    background-color: var(--ly-600);
}

.partner-card.sales .target-situation_title,
.partner-card.sales .target-situation_list_item::before {
    color: var(--ly-600);
}

/* refferal */

.partner-card.refferal .partner-card_image,
.partner-card.refferal .target-situation {
    background-color: var(--pu-50);
}

.partner-card.refferal .partner-variation-title span {
    background-color: var(--pu-400);
}

.partner-card.refferal .target-situation_title,
.partner-card.refferal .target-situation_list_item::before {
    color: var(--pu-400);
}

/* partner-chart
--------------------------- */

.partner-chart {
    margin-top: 60px;
    padding: 40px;
    border-radius: 12px;
    background-color: #FAFAFC;
    text-align: left;
}

.partner-chart_title {
    font-size: 24px;
    font-weight: bold;
    color: var(--pu-400);
}

.partner-chart-structure {
    padding: 20px;
    background: var(--cloud);
    margin: 30px auto;
}

.partner_structure_image {
    margin-right: 20px;
}

.partner_structure_image:not(:last-child) {
    border-right: 1px solid #E5E6EA;
    padding-right: 40px;
}

.partner-chart_table {
    width: 100%;
    table-layout: fixed;
    margin-top: 20px;
    font-size: 20px;
    background-color: #fff;
    border: 3px solid #fff;
    position: relative;
    overflow: hidden;
    border-radius: 8px;
}

.partner-chart_table th,
td {
    text-align: center;
    padding: 15px 20px;
    border-right: 3px solid #fff;
    border-bottom: 1px solid #fff;
}

.partner-chart_table th {
    font-weight: bold;
}

.partner-chart_table td {}

/* sales */

.partner-chart_table th.sales {
    background-color: var(--ly-600);
    color: #fff;
}

.partner-chart_table td.sales {
    background-color: var(--ly-50);
}

/* refferal */

.partner-chart_table th.refferal {
    background-color: var(--pu-400);
    color: #fff;
}

.partner-chart_table td.refferal {
    background-color: var(--pu-50);
}

.partner-chart_table .tar {
    width: 200px;
    text-align: right;
    color: #737378;
    background-color: #fff;
    border-right: 3px solid #fff;
    border-bottom: 1px solid #F0F1F5;
}

.partner-chart_table tr:first-child .tar {
    background-color: #F0F1F5;
}

.partner-chart_table th:last-child,
td:last-child {
    border-right: none;
}

@media all and (max-width:768px) {
    .partner-explain .section-title {
        font-size: 32px;
    }
    .partner-explain-subtitle br {
        display: none;
    }
    .section-title .section-title_sub {
        font-size: 20px;
    }
    .partner-feature {
        margin-top: 40px;
    }
    .partner-card {
        margin-bottom: 30px;
        padding: 20px;
    }
    .partner-variation-title {
        font-size: 24px;
        margin-top: 20px;
    }
    .partner-variation-title span {
        padding: 5px 10px;
    }
    .target-situation_list {
        margin-top: 10px;
    }
    .target-situation_title {
        font-size: 16px;
    }
    .partner-texts {
        margin-top: 15px;
    }
    .target-situation {
        padding: 15px;
        margin-top: 15px;
    }
    .partner-card_image {
        width: auto;
        margin: -20px -20px 0;
        height: auto;
    }
    .partner-card_image img {
        position: relative;
        left: auto;
        width: auto;
        transform: translateX(0);
        padding: 15px 50px 0;
    }
    /*table*/
    .partner-chart {
        margin-top: 40px;
        padding: 20px 5px 5px;
    }
    .partner-chart-structure {
        margin-top: 15px;
    }
    .partner_structure_image {
        margin-right: 0;
    }
    .partner_structure_image:not(:last-child) {
        border-bottom: 1px solid #E5E6EA;
        border-right: none;
        padding-right: 0;
        padding-bottom: 30px;
        margin-bottom: 20px;
    }
    .partner-chart_table {
        margin-top: 15px;
        font-size: 12px;
        line-height: 1.2;
    }
    .partner-chart_table th,
    td {
        padding: 10px 8px;
    }
    .partner-chart_table .tar {
        width: 80px;
    }
}

/* showcase
======================================================= */

.salespartner-showcase>.inner {
    margin-bottom: 0;
}

.showcase_logo_wrapper {
    padding-top: 60px;
    height: 200px;
    background: #fff;
    
}

.showcase_logo_wrapper img {
    height: 100px;
    transition: .3s ease-out;
}

.showcase_logo_wrapper.vertical img {
    height: 60px;
}

a:hover .showcase_logo_wrapper {
    background: #fff;
}

.s-partner-showcaes-link-to-detail {
    background: #f6f6f6;
    padding: 40px 40px 20px;
    display: block;
    border-radius: 20px;
    text-decoration: none;
    text-align: left;
    transition: .4s ease-in-out;
}

.s-partner-showcaes-link-to-detail:hover {
    background: #ffcd46;
}

.s-partner-showcaes-link-to-detail>.flex-wrapper {
    flex-direction: row-reverse;
}

.s-partner-showcase-texts {
    width: 50%;
}

.top-article-main-visual {
    width: 45%;
    height: 280px;
    border-radius: 20px;
    overflow: hidden;
}

.s-partner-showcase-title {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.5em;
    margin-bottom: 24px;
}

.top-company-explain-wrap {
    position: relative;
}

.top-company-explain-wrap::after {
    display: block;
    content: "";
    background: url(../img/salespartner/top-corabo.png) no-repeat center / cover;
    width: 20px;
    height: 20px;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}

.see-more-btn {
    text-align: center;
    position: relative;
    margin-top: 20px;
    font-weight: bold;
}

.see-more-btn span {
    line-height: 30px;
}

.see-more-btn::after {
    display: inline-block;
    content: "";
    background: url(../img/salespartner/see-more-arrow.png) no-repeat center / contain;
    width: 14px;
    height: 14px;
    margin-left: 4px;
}

.top-company-explain {
    background: #fff;
    border-radius: 10px;
    padding: 10px 30px;
    justify-content: flex-start;
}

.top-company-explain+.top-company-explain {
    margin-top: 30px;
}

.top-company-logo {
    width: 56px;
    height: 56px;
    margin-right: 20px;
}

.top-company-category {
    color: #fff;
    display: inline-block;
    font-weight: bold;
    margin: 10px 0 0;
    padding: 5px 10px;
    font-size: 14px;
    line-height: 1.2;
    border-radius: 8px;
}

.top-company-category.sales {
    background-color: var(--ly-600);
}

.top-company-category.refferal {
    background-color: var(--pu-400);
}

.top-company-category.user {
    background-color: var(--gr-600);
}

.top-company-name {
    margin: 5px 10px 0;
    line-height: 1.4;
    font-size: 14px;
}

.top-company-name::after {
    content: "様";
    font-size: 12px;
}

/* add 220720 */

.s-partner-showcaselist {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 60px;
    gap: 40px;
}

.s-partner-showcaselist-item {
    position: relative;
    width: 48%;
    background: #ffffff;
    border-radius: 10px;
    box-shadow: 0px 2px 10px rgb(0 0 0 / 16%);
    overflow: hidden;
    transition: .3s ease;
}

.s-partner-showcaselist-item>a {
    display: block;
    text-decoration: none;
    height: 100%;
}



.s-partner-showcaselist-thumb {
    transition: .3s ease;
}

.s-partner-showcaselist-item>a:hover .s-partner-showcaselist-thumb {
    opacity: 0.75;
}

.s-partner-showcaselist-cont {
    padding: 20px 40px;
    height: calc(100% - 200px);
    align-items: stretch;
    display: flex;
    flex-wrap: wrap;
}

.s-partner-showcaselist-logo {
    border-radius: 10px;
    /* padding: 10px; */
    padding: 10px 0;
}

.partner-showcaselist-logo-item {
    justify-content: flex-start;
    align-items: center;
}

.s-partner-showcaselist-read {
    font-size: 18px;
    font-weight: bold;
    text-align: left;
    width: calc(100% - 100px);
}

.partner-showcaselist-profile-image {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    overflow: hidden;
    margin-right: 10px;
}

.partner-showcaselist-profile-image img {
    width: 100%;
    height: auto;
}

.partner-showcaselist-title {
    align-items: center;
    margin-top: 10px;
}

@media all and (max-width:768px) {
    .salespartner-showcase .section-title {
        /* font-size: 32px; */
    }
    .s-partner-showcaselist {
        margin-top: 20px;
    }
    .s-partner-showcase-texts,
    .top-company-explain,
    .top-article-main-visual {
        width: 100%;
    }
    .s-partner-showcase-title {
        font-size: 18px;
    }
    .s-partner-showcaes-link-to-detail {
        padding: 30px 20px 20px;
    }
    .top-article-main-visual {
        height: 170px;
        margin-bottom: 20px;
    }
    .top-company-explain {
        padding: 20px;
        text-align: center;
    }
    .top-company-logo {
        margin: 0 auto;
        display: block;
        width: 90px;
        height: auto;
    }
    .top-company-explain-wrap::after {
        display: block;
        content: "";
        width: 40px;
        height: 40px;
        top: 6%;
    }
    /* add 220720 */
    .s-partner-showcaselist {
        display: block;
    }
    .s-partner-showcaselist-item {
        width: 100%;
        margin-top: 20px;
    }
    .s-partner-showcaselist-item:first-child {
        margin-top: 0;
    }
    .s-partner-showcaselist-cont {
        padding: 10px 20px 20px;
        height: 100%;
    }
    .s-partner-showcaselist-logo {
        padding: 0;
    }
    .s-partner-showcaselist-logo.-col2 {
        /* display: block; */
    }
    .s-partner-showcaselist-logo.-col2 .s-partner-showcaselist-logo-item {
        /* width: 100%; */
    }
    .s-partner-showcaselist-logo-item>img {
        width: 80px;
    }
    .s-partner-showcaselist-read {
        font-size: 16px;
    }
    .partner-showcaselist-logo-item {
        text-align: left;
    }
    .top-company-name {
        margin: 5px 0;
    }
    .partner-showcaselist-title {
        display: flex;
    }
}

/* merits
======================================================= */

.merits {
    position: relative;
    overflow: hidden;
}

.merits::before {
    position: absolute;
    top: -70px;
    left: -140px;
    content: '';
    background: url(../img/salespartner/renew2023/merit_bg.png);
    background-size: cover;
    width: 911px;
    height: 877px;
    z-index: 0;
}

.merits>.inner {
    position: relative;
    z-index: 1;
    margin-top: 0;
}

.merits-title {
    position: relative;
    text-align: left;
    z-index: 1;
}

.merits-title::before {
    content: '';
    position: absolute;
    background: url(../img/salespartner/renew2023/merit_title.png);
    background-size: cover;
    width: 112px;
    height: 92px;
    top: -60px;
    left: -60px;
    z-index: -1;
}

.merits-title::after {
    content: '';
    position: absolute;
    background: url(../img/salespartner/renew2023/merit_image01.png);
    background-size: cover;
    width: 364px;
    height: 223px;
    top: -45px;
    right: 0;
    z-index: 1;
}

.merits-list {
    position: relative;
    z-index: 2;
    flex-wrap: wrap;
    margin-top: 60px;
    counter-reset: number 0;
}

.merit-card {
    position: relative;
    display: block;
    background: #ffffff;
    border-radius: 10px;
    width: 32%;
    padding: 50px 10px 40px;
    margin-bottom: 20px;
}

.merit-card::before {
    position: absolute;
    top: 20px;
    left: 20px;
    counter-increment: number 1;
    content: counter(number, decimal-leading-zero) " ";
    color: var(--sun);
    font-family: var(--inter);
    font-weight: 700;
    font-weight: bold;
    font-size: 32px;
}

.merit-title {
    font-weight: bold;
    font-size: 32px;
    line-height: 1.3;
}

.merit-title .subread {
    color: var(--pu-400);
    display: block;
    font-size: 16px;
    margin-bottom: 5px;
}

.merit-title .annotation {
    font-size: 12px;
}

.merit-text {
    color: #414141;
    text-align: left;
    margin-top: 10px;
    font-size: 12px;
}

.merit-text .annotation {
    font-size: 10px;
    line-height: 1.4;
    display: block;
}

.merits .icon {
    width: 170px;
    height: 170px;
    border-radius: 50%;
    background: #ffcd46;
    margin: 20px auto;
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    padding: 40px;
}

.merits .icon .icon-img {
    display: block;
    width: 100%;
}

@media all and (max-width:768px) {
    .merits-title {
        text-align: center;
        padding-bottom: 140px;
    }
    .merits-title::before {
        width: 70px;
        height: 57px;
        left: -20px;
        top: -30px;
    }
    .merits-title::after {
        width: 200px;
        height: 122px;
        top: auto;
        bottom: 0;
        right: 50%;
        transform: translateX(50%);
    }
    .merits-list.flex-wrapper {
        margin-top: -20px;
        display: -webkit-flex;
        display: -ms-flex;
        display: flex;
        flex-wrap: wrap;
    }
    .merits::before {
        width: 430px;
        height: 413px;
    }
    .merits>.section-title {
        margin-bottom: 30px;
    }
    .merit-card::before {
        font-size: 24px;
        left: 10px;
        top: 10px;
    }
    .merits-list .merit-card {
        width: 48%;
        padding: 40px 10px 20px;
        margin-bottom: 15px;
    }
    .merits .icon {
        width: 120px;
        height: 120px;
        padding: 30px;
    }
    .merit-title {
        font-size: 16px;
    }
    .merit-title br {
        /* display: none; */
    }
    .merit-title .subread {
        font-size: 12px;
    }
}

/* support
======================================================= */

.support .section-title_sub {
    margin-top: 20px;
    font-weight: bold;
}

.support-card {
    width: 30%;
    margin-top: 60px;
}

.certification_box {
    align-items: center;
    padding: 20px 60px;
}

.certification_box-text {
    text-align: left;
    width: 77%;
}

.certification_box-image {
    width: 40%;
    height: 210px;
}

.certification_box-image img {
    max-height: 100%;
}

.certification_title {
    font-size: 24px;
    font-weight: bold;
    color: var(--pu-400);
}

.certification_text {
    margin-top: 15px;
}

@media all and (max-width:768px) {
    .certification_title {
        font-size: 20px;
        text-align: center;
    }
    .support .flex-wrapper {
        margin: 40px auto;
    }
    .support-card {
        margin-top: 30px;
    }
    .certification_box-image {
        height: 120px;
    }
    .certification_box-image.talemane {
        width: 100%;
        display: flex;
        align-items: center;
    }
}

/* flow
======================================================= */

.flow {
    background-color: var(--sa-50);
}

/* .flow_box {
  background-color: #fff;
  border-radius: 12px;
  margin-top: 60px;
  padding: 40px;
}*/

.flow_image {
    width: 900px;
    margin: 0 auto;
}

.flow_text {
    margin-top: 20px;
}

.flow_image>img.pc-only {
    display: block;
}

.flow_image>img.sp-only {
    display: none;
}

@media all and (max-width:768px) {
    .flow_image {
        width: auto;
    }
    .flow_image>img.pc-only {
        display: none;
    }
    .flow_image>img.sp-only {
        display: block;
    }
}

/* form
======================================================= */

.form {
    background: var(--sun);
}

/* .form .section{
  padding-top: 60px;
  padding-bottom: 120px;
} */

.form .section .section-title {
    margin-bottom: 60px;
}

.salespartner .child-flex-item.child-form {
    background: #fff;
    margin: 0 auto 30px;
    /*  width: 100%;*/
    /*  padding: 60px 230px;*/
}

.salespartner .child-flex-item.child-tel-num {
    background: #fff;
    margin: 0 auto;
    width: 100%;
    max-width: 800px;
    padding: 40px;
    border-radius: 12px;
    text-align: center;
}

.mktoForm #Dept,
.mktoForm #Title,
.mktoForm #jobtitle_official__c {
    margin-right: 0 !important;
}

.mktoFormRow.name-l input#LastName,
.mktoFormRow.name-f input#FirstName {
    /*  width: 180px !important;*/
}

/* .partner-variation-title{
  font-weight: bold;
  font-size: 30px;
  line-height: 46px;
}
.partner-variation-title > span{
  display: block;
  font-size: 46px;
} */

.form-alternative {
    margin-top: 40px;
    text-align: center;
    font-size: 12px;
}

.salespartner .child-flex-item.child-form.child-tel-num {
    text-align: center;
    margin-top: 30px;
    margin-bottom: 0;
}

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

.tel-num {
    text-decoration: none;
    font-family: roboto;
}

.tel-time {
    margin-top: 5px;
    font-family: roboto, ryo-gothic, sans-serif;
}

@media all and (max-width:768px) {
    .form .section .section-title {
        margin-bottom: 0;
    }
    .salespartner .child-flex-item.child-form {
        padding: 20px;
        margin-top: 20px;
    }
    .tel-title {
        font-size: 18px;
    }
    .mktoFormRow.name-l input#LastName,
    .mktoFormRow.name-f input#FirstName {
        width: 145px !important;
    }
}

/* link-to-cta
======================================================= */

.link-to-cta {
    display: flex;
    align-items: center;
    padding: 20px 60px 20px 20px;
    background: var(--pu-400);
    border: 2px solid var(--pu-400);
    position: fixed;
    right: 0;
    bottom: 100px;
    border-radius: 10px 0px 0px 10px;
    text-decoration: none;
    box-shadow: 0 2px 2px 0 rgb(0 0 0 / 14%), 0 6px 10px -2px rgb(0 0 0 / 14%), 0 1px 5px 0 rgb(0 0 0 / 20%);
    transition: .3s ease;
    z-index: 100;
}

.link-to-cta .trigger-text {
    color: #fff;
    font-weight: bold;
    position: relative;
    display: inline-block;
    font-size: 24px;
}

.link-to-cta .trigger-text::after {
    content: "";
    display: block;
    position: absolute;
    top: 4px;
    right: -25px;
    width: 10px;
    height: 10px;
    display: block;
    transform: rotate(45deg);
    /* transition: .2s; */
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform-origin: 70% 70%;
}

.link-to-cta .trigger-text {
    font-size: 20px;
    font-weight: bold;
    text-align: left;
}

.link-to-cta .trigger-text::after {
    top: 20px;
}

.link-to-cta .trigger-text .pc-only {
    display: block;
    font-size: 16px;
    font-weight: normal;
}

.link-to-cta:hover {
    background: var(--sun);
}

.link-to-cta:hover .trigger-text {
    color: var(--pu-400);
}

.link-to-cta:hover .trigger-text::after {
    border-color: var(--pu-400);
}

@media all and (max-width:768px) {
    .link-to-cta:not(.minimum) {
        transform: translateX(105%);
        /* bottom: auto; */
    }
    .link-to-cta.minimum {
        transform: translateX(0);
    }
    .link-to-cta .trigger-text .pc-only {
        display: none;
    }
    .link-to-cta {
        padding: 10px 10px 30px 10px;
    }
    .link-to-cta .trigger-text {
        width: 55px;
        font-size: 13px;
        line-height: 1.4;
    }
    .link-to-cta.minimum .trigger-text::after {
        /* display: none; */
        top: 40px;
        right: 21px;
    }
}

/* ≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
 パートナー事例ページ
≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡*/

/* COMMON */

.single-salespartner {
    color: #3f3f3f;
    font-family: YakuHanJP, "Noto Sans", "游ゴシック体", YuGothic, sans-serif;
}

/* MV */

.article-main-visual {
    max-width: 648px;
    width: 50%;
}

.article-title-area {
    position: relative;
    overflow: hidden;
    /* height: 500px; */
    height: 560px;
    margin-bottom: 100px;
}

.article-title-area::before,
.article-title-area::after {
    content: '';
    position: absolute;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: -1;
}

.article-title-area::before {
    top: 0;
    left: 50%;
    margin-left: 380px;
    background-image: url(../img/salespartner/renew2023/article-bg_01.png);
    width: 371px;
    height: 272px;
}

.article-title-area::after {
    bottom: 0;
    left: 50%;
    margin-left: -460px;
    background-image: url(../img/salespartner/renew2023/article-bg_02.png);
    width: 628px;
    height: 209px;
}

.single-salespartner .page-title.category {
    font-size: 20px;
    font-weight: bold;
}

.single-salespartner.sales .page-title.category {
    color: var(--ly-600);
}

.single-salespartner.refferal .page-title.category {
    color: var(--pu-400);
}

.article-title {
    line-height: 1.4;
    margin-top: 30px;
    text-shadow: 5px 5px 10px var(--cloud), -5px -5px 10px var(--cloud);
}

.article-title-area .flex-wrapper {
    align-items: center;
}

.article-title-texts {
    width: 42%;
    text-align: left;
}

.article-main-visual {
    position: absolute;
    right: 0;
    /* top: 10%; */
    top: 0;
}

@media all and (max-width:768px) {
    .article-title-texts,
    .article-main-visual {
        width: 100%;
    }
    .article-main-visual {
        bottom: -240px;
        top: auto;
    }
    .single-salespartner .page-title.category {
        padding: 0;
    }
    .article-title {
        font-size: 32px;
        margin-top: 10px;
    }
    .article-title-area::before,
    .article-title-area::after {}
    .article-title-area::before {
        transform: scale(.75) rotate(13deg) translate(-120%, 104%);
    }
    .article-title-area::after {
        transform: scale(.75) translate(-10%, 0);
    }
}

/* 企業プロフィール */

.single-salespartner .partner-card-area {
    margin: -147px 0 0;
}

.single-salespartner .partner-card-area .section.inner {
    padding: 0;
}

.single-salespartner .partner-card {
    padding: 30px;
    border-radius: 12px;
    border: 10px solid var(--cloud);
}

.single-salespartner.sales .partner-card {
    background-color: var(--ly-50);
}

.single-salespartner.refferal .partner-card {
    background-color: var(--pu-50);
}

.single-salespartner .partner-feature {
    margin-bottom: 60px;
    position: relative;
}

.single-salespartner .partner-card {
    width: 100%;
}

.single-salespartner .partner-card_image {
    width: 20%;
    margin: 0;
    height: auto;
    background-color: var(--cloud);
    padding: 10px;
}

.single-salespartner .partner-card_image img {
    top: 50%;
    transform: translate(-50%, -50%);
    width: auto;
    padding: 30px;
}

.single-salespartner .partner-card_text {
    text-align: left;
    width: 77.5%;
}

.single-salespartner .partner-variation-title {
    margin-top: 0;
    font-size: 20px;
    display: inline-block;
}

.single-salespartner.sales .partner-variation-title .child-font {
    background-color: var(--ly-600);
}

.single-salespartner.refferal .partner-variation-title .child-font {
    background-color: var(--pu-400);
}

.single-company-name {
    font-size: 32px;
    display: inline-block;
    vertical-align: middle;
    line-height: 1.6em;
    font-weight: bold;
}

.single-company-name::after {
    content: "様";
    font-size: 20px;
    padding-left: 3px;
}

.single-salespartner .partner-texts {
    margin-top: 15px;
}

.single-link {
    color: var(--pu-400);
    font-weight: bold;
}

.single-company-link {
    display: block;
    color: var(--pu-400);
}

.single-link:hover,
.single-company-link:hover {
    opacity: 1;
    cursor: pointer;
}

.single-salespartner .partner-text {
    font-size: 14px;
    line-height: 1.6em;
    text-align: left;
    margin-top: 15px;
}

/* 企業プロフィール:2カラム */

.single-salespartner .partner-card-area.-column2 .partner-card {
    width: 49%;
    padding: 20px;
}

.single-salespartner .partner-card-area.-column2>.flex-wrapper {
    position: relative;
}

.single-salespartner .partner-card-area.-column2>.flex-wrapper::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: url(../img/salespartner/corabo.png) no-repeat center / cover;
    width: 40px;
    height: 40px;
    z-index: 10;
}

.single-salespartner .partner-card-area.-column2 .partner-variation-title {
    display: block;
    font-size: 16px;
}

.single-salespartner .partner-card-area.-column2 .partner-variation-title span {
    padding: 5px 10px;
}

.single-salespartner .partner-card-area.-column2 .single-company-name {
    font-size: 24px;
    line-height: 1.3;
    margin-top: 10px;
}

.single-salespartner .partner-card-area.-column2 .partner-card_image {
    width: 30%;
}

.single-salespartner .partner-card-area.-column2 .partner-card_image img {
    padding: 20px;
}

.single-salespartner .partner-card-area.-column2 .partner-card_text {
    width: 65%;
}

.single-salespartner .partner-card.user {
    background-color: var(--sa-50);
}

.single-salespartner .partner-card.user .partner-variation-title .child-font {
    background-color: var(--sa-600);
    color: var(--pa-600);
}

@media all and (max-width:768px) {
    .single-salespartner .partner-card-area .section.inner {
        padding: 0 20px;
    }
    .single-salespartner .partner-card {
        padding: 15px;
        border: 5px solid var(--cloud);
    }
    .single-salespartner .partner-card_image {
        width: auto;
    }
    .single-salespartner .partner-card_image img {
        position: relative;
        top: auto;
        left: auto;
        transform: translate(0, 0);
        padding: 10px 60px;
    }
    .single-salespartner .partner-card_text {
        width: auto;
        margin-top: 15px;
    }
    .single-salespartner .partner-variation-title {
        font-size: 16px;
    }
    .single-company-name {
        font-size: 24px;
        margin-top: 5px;
    }
    /* 企業プロフィール:2カラム */
    .single-salespartner .partner-card-area.-column2 .partner-card {
        width: auto;
    }
    .single-salespartner .partner-card-area.-column2 .partner-card_image {
        width: auto;
    }
    .single-salespartner .partner-card-area.-column2 .partner-card_image img {
        padding: 10px 60px;
    }
    .single-salespartner .partner-card-area.-column2 .partner-card_text {
        width: auto;
    }
}

/* 1 column */

.single-salespartner .partner-feature.-col1::after {
    display: none;
}

.single-salespartner .partner-feature.-col1 .partner-card-item-wrapper {
    width: 100%;
}

@media all and (max-width:768px) {
    .single-salespartner .partner-card-item-wrapper:first-child {
        margin-bottom: 120px;
    }
}

/* 目次 */

.mokji {
    position: relative;
    background: var(--gr-50);
    border-radius: 12px;
    padding: 30px 40px;
    text-align: left;
    margin-bottom: 60px;
}

.mokji-section-title {
    font-size: 24px;
    font-weight: bold;
    /* color: var(--pu-400); */
}

.mokji-section-title span {
    font-size: 12px;
    padding-left: 10px;
    color: var(--gr-300);
}

.mokji-list-list {}

.mokji-list-item {
    position: relative;
    text-indent: -1em;
    padding-left: 1em;
    margin: 8px 0;
}

.mokji-list-item::before {
    content: "●";
    font-size: 16px;
    line-height: 16px;
    padding-right: 0.2em;
    color: var(--gr-300);
}

.mokji-list-link {
    font-weight: bold;
    text-decoration: none;
    color: var(--pu-400);
}

@media all and (max-width:768px) {
    .mokji {
        padding: 20px;
        margin-bottom: 40px;
    }
}

/* 記事本体 */

.article-container {
    width: 680px;
    margin: 60px auto 0;
}

.article-container>.partner-explain {
    margin-top: 0;
}

.article-body {
    text-align: left;
}

.article-body img {
    margin-top: 30px;
    display: block;
}

.article-body h2 {
    line-height: 1.4em;
    font-weight: 800;
    font-size: 32px;
    color: var(--pu-400);
    margin-top: 60px;
}

.article-body h3 {
    font-weight: 800;
    font-size: 18px;
    margin-top: 30px;
    margin-bottom: 10px;
}

.article-body p {
    margin-top: 20px;
}

.article-body p.single-caption {
    font-size: 12px;
    opacity: .5;
    margin-top: 8px;
    line-height: 1.2;
}

.article-body span.single-speaker {
    font-weight: bold;
    padding-right: 10px;
}

p:has(.single-speaker) {
    margin-top: 40px;
}

h2 .partner-strong {
    background: var(--sun);
    padding: 0 10px;
    border-radius: 10px;
    display: inline-block;
    margin-right: 20px;
}

.partner-strong {
    background: var(--sun);
    font-weight: bold;
}

@media all and (max-width:768px) {
    .article-container {
        width: 100%;
        margin-top: 40px;
        padding: 0 20px;
    }
    .article-container>.partner-explain {
        padding: 0;
    }
    .article-body h2 {
        font-size: 24px;
        margin-top: 40px;
    }
    .article-body h3 {
        margin-top: 20px;
        margin-bottom: 10px;
    }
}

/* 導線、記事共通 */

.top-company-name .sp-only,
.single-company-name .sp-only {
    display: none;
}

@media all and (max-width:768px) {
    .top-company-name .sp-only,
    .single-company-name .sp-only {
        display: block;
    }
}

/* CTA */

.partner-cta.child-section.cta-list {
    background: var(--sun);
}

.partner-cta.cta-list .list {
    justify-content: center;
}

.partner-cta.cta-list .child-button.dmo:hover {
    background: var(--cloud);
}

.hero .child-button.dmo {
    background-color: var(--pu-400);
    border: 2px solid var(--pu-400);
}

@media screen and (max-width: 768px) {
    .child-section.cta-list {
        padding: 30px 20px;
    }
    .hero .child-button.dmo {
        font-size: 20px;
        color: var(--cloud);
        width: 100%;
        height: 72px;
        text-align: center;
        align-items: center;
        justify-content: center;
        text-decoration: none;
        border-radius: 12px;
        margin: 16px 0;
        padding: 0 8px;
        box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 6px 10px -2px rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
    }
}

/*
===================================================
General Purpose
===================================================
*/

@-webkit-keyframes loop {
    0% {
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
    }
    to {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
    }
}

@keyframes loop {
    0% {
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
    }
    to {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
    }
}

@-webkit-keyframes loop2 {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    to {
        -webkit-transform: translateX(-200%);
        transform: translateX(-200%);
    }
}

@keyframes loop2 {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    to {
        -webkit-transform: translateX(-200%);
        transform: translateX(-200%);
    }
}

.company__loop {
    height: 100px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 9042px;
    /*(168px+20px)*24個*2行*/
}

.company__list {
    height: 100%;
    overflow: hidden;
    display: flex;
    justify-content: space-around;
    align-items: center;
}

.company__list:first-child {
    -webkit-animation: loop 100s -50s linear infinite;
    animation: loop 100s -50s linear infinite;
}

.company__list:last-child {
    -webkit-animation: loop2 100s linear infinite;
    animation: loop2 100s linear infinite;
}

.company__list img {
    max-height: 100%;
    max-width: 168px;
    /*height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;*/
    height: auto;
    margin: 0 10px;
    /*display: inline-block;*/
    /*vertical-align: middle;*/
}

/* フォーム用css */

@charset "UTF-8";
/* ==========================================================
 child-form-header
========================================================== */

.wrapper.form {
    padding-top: 80px;
}

.chld-form-header {
    position: relative;
    width: 100%;
    height: 80px;
}

.child-form-header .child-header-logo {
    width: 160px;
    top: 20px;
}

/* ==========================================================
 child-section
========================================================== */

.child-section.form {
    padding: 40px 0 0;
}

@media screen and (max-width: 768px) {
    .child-section.form {
        padding: 0;
    }
    .child-section.form .section-title,
    .child-section.form .section-subtitle {
        /*text-align: center;*/
    }
}

/* ==========================================================
 child-flex
========================================================== */

.child-flex-item.child-detail {
    flex: auto;
    width: 100%;
}

.child-flex-item.child-form {
    flex: none;
    width: 620px;
    min-width: 620px;
    padding: 40px;
    background-color: #f5f5f5;
    border-radius: 12px;
}

@media screen and (max-width: 1024px) {
    .child-flex-item.child-form {
        padding: 40px;
    }
}

@media screen and (max-width: 768px) {
    .child-flex-item.child-form {
        width: 100%;
        min-width: 0;
        padding: 20px;
    }
}

/* ==========================================================
 child-detail
========================================================== */

.child-detail .child-font.page-title {
    font-size: 40px;
}

.child-detail-list {
    width: 100%;
    padding: 32px 40px;
    border: solid 1px #e5e5e5;
    border-radius: 12px;
    margin: 16px 0;
    list-style-type: disc;
}

.child-detail-list li {
    font-weight: bold;
    padding-bottom: 16px;
    margin-left: 20px;
}

.child-detail-list li:last-of-type {
    padding-bottom: 0;
}

.child-detail-list li .child-font.caution {
    color: #eb4f25;
}

.child-detail-list li .child-font.small {
    margin-top: 1em;
}

@media screen and (max-width: 768px) {
    .child-detail .child-font {
        /*text-align: center;*/
    }
    .child-detail .child-font.small {
        /*text-align: left;*/
    }
    .child-detail .child-font.page-title {
        font-size: 32px;
    }
    .child-detail-list {
        padding: 15px 20px;
    }
}

/* ==========================================================
 IS用電話番号表記
========================================================== */

.child-footer-tel.forIS::after {
    content: "9:30~18:00\A土日祝除く";
    text-align: center;
}

@media screen and (max-width: 768px) {
    .child-footer-tel.forIS {
        margin: 16px 0;
    }
}

/* ==========================================================
 installed 既存顧客の導線
========================================================== */

.installed-set {
    position: relative;
    margin: 60px 0 0 0;
    border-top: 1px solid #e5e5e5;
}

.installed-set>.title {
    font-weight: bold;
    display: inline-block;
    transform: translateY(-50%);
    background-color: #fff;
    padding-right: 20px;
}

.installed-set>.text {
    margin: 0;
}

.installed-set .child-icon-after {
    display: inline-flex;
    color: #0043D1;
    text-align: left;
    margin-top: 16px;
}

.installed-set .child-icon-after.blank-blk::after {
    background-image: url(/img/common/child_icon_blank_blu.svg);
    width: 20px;
    height: 20px;
    margin-left: 10px;
}

@media screen and (max-width: 768px) {
    .installed-set {
        margin: 30px 0 15px;
    }
}

/* ==========================================================
電話番号表記
========================================================== */

.child-footer-form .child-footer-tel {
    font-size: 32px;
    justify-content: center;
}

.child-footer-tel::before {
    width: 32px;
    height: 32px;
    margin: 4px 8px;
}

.child-footer-tel::after {
    text-align: center;
}

/* ==========================================================
 注意文
========================================================== */

.child-footer-caution {
    margin-top: 16px;
}

/* ==========================================================
 パートナーアワードバナー
========================================================== */

.partner {
    padding-inline:15.9722vw;
}

@media screen and (max-width: 450px) {
    .partner {
        padding-inline: unset;
    }
}

.banner-link {
    display: block;
    width: 100%;
    height: auto;
    box-shadow: 0 2px 2px 0 rgb(0 0 0 / 14%), 0 6px 10px -2px rgb(0 0 0 / 14%), 0 1px 5px 0 rgb(0 0 0 / 20%);
    
}

.banner-link:hover {
    opacity: .8;
}

.banner-link.partneraward {
    max-width: 960px;
    margin: 80px auto 0;
}

@media screen and (max-width: 768px) {
    .banner-link.partneraward {
        margin-top: 40px;
    }
}

/* ==========================================================
 iframe版ロゴスライダー用
========================================================== */

.child-section.company-loopframe {
    max-width: 1760px;
    margin: 0 auto;
    overflow: hidden;
    padding: 0;
    background-color: #fff;
    /*	border-bottom: solid 1px #ddd;*/
}

.logo-slider-frame {
    width: 100%;
    height: 100px;
}













/* form */
.section__inner {
    max-width: 100vw;
    margin: 0 auto;
    padding: 0 6.25%;
}

.text__02 {
    margin-top: 30px;
}

@media (max-width:768px) {
    .text__02 {
        margin-top: 15px;
    }
}

.p-eighth-sec {
    
    background-color: #FFF
}



.p-eighth-sec .text__01 {
    position: relative;
    text-align: center;
    margin-bottom: 60px
}

@media (max-width:768px) {
    .p-eighth-sec .text__01 {
        margin-bottom: 20px
    }
}

@media (max-width:599px) {
    .p-eighth-sec .text__01 {
        margin-bottom: 20px
    }
}

/* .p-eighth-sec .text__01::after {
    position: absolute;
    bottom: -50px;
    left: 50%;
    transform: translateX(-50%);
    content: "";
    width: 1px;
    height: 50px;
    background-color: #222222
} */

.p-eighth-sec .text__01 p {
    margin-bottom: 22px;
    font-family: lato, sans-serif;
    font-weight: 700;
    font-size: 2.08333vw
}

@media (min-width:1441px) {
    .p-eighth-sec .text__01 p {
        font-size: 30px
    }
}

@media (max-width:768px) {
    .p-eighth-sec .text__01 p {
        font-size: 18px
    }
}

@media (max-width:599px) {
    .p-eighth-sec .text__01 p {
        margin-bottom: 8px;
        font-size: 4.8vw
    }
}

.p-eighth-sec .text__01 span {
    margin-bottom: 20px;
    display: inline-block;
    font-family: lato, sans-serif;
    font-weight: 700;
    font-size: 0.97222vw;
    letter-spacing: 0.2em
}

@media (min-width:1441px) {
    .p-eighth-sec .text__01 span {
        font-size: 14px
    }
}

@media (max-width:768px) {
    .p-eighth-sec .text__01 span {
        font-size: 12px
    }
}

@media (max-width:599px) {
    .p-eighth-sec .text__01 span {
        font-size: 3.2vw
    }
}

.p-eighth-sec .text__02 {
    margin-bottom: 40px;
    text-align: center;
    font-family: lato, sans-serif;
    font-weight: 500;
    font-size: 0.97222vw;
    line-height: 1.85
}

@media (min-width:1441px) {
    .p-eighth-sec .text__02 {
        font-size: 14px
    }
}

@media (max-width:768px) {
    .p-eighth-sec .text__02 {
        font-size: 12px
    }
}

@media (max-width:599px) {
    .p-eighth-sec .text__02 {
        font-size: 2.9333333333vw
    }
}

.form-wrapper {
    padding-top: 0
}

.form-list span {
    background-color: #FFD800
}

p.policy-area-span {
    background-color: #FFD800
}

.form-btn-area .btn-03 {
    background-color: #FFD800;
    color: #222222
}

.mw_wp_form .error {
    background-color: transparent
}

.u-sp__view {
    display: none
}

@media (max-width:599px) {
    .u-sp__view {
        display: inline-block
    }
}


.form {
    padding: 9.722vw 0 13.889vw;
    background-color: #fafafa;
}

.form-headding {
    text-align: center;
}

.form-headding p {
    font-size: 0.972vw;
    line-height: 1.8;
}

.form-wrapper {
    display: block;
    width: 100%;
    /* max-width: 65.278vw; */
    margin: 0 auto;
    /* padding-top: 70px; */
}

.form-list {
    margin-top: 45px;
}

.form-list p {
    text-align: left;
    font-size: 1.25vw;
    font-weight: 600;
    line-height: 2;
}

@media (max-width:599px) {
    .form-list p {
        font-size: 12px;
    }
}

p.form-txt {
    font-size: 0.833vw;
    font-weight: 400;
    padding-top: 10px;
}

.form-list span {
    display: inline-block;
    width: 30px;
    height: 16px;
    text-align: center;
    font-size: 0.833vw;
    color: #fff;
    font-weight: 400;
    line-height: 16px;
    background-color: #ffe200;
    margin-left: 20px;
}

.form-list-flex {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-between;
}

@media screen and (max-width: 500px) {
    .form-list-flex {
        flex-wrap: wrap;
        gap: 0;
    }
}

@media screen and (max-width: 400px) {
    .form-list-flex {
        flex-wrap: wrap;
        gap: 30px;
    }
}

.form-item {
    display: block;
    position: relative;
    width: 100%;
    height: 4.167vw;
    background-color: #efefef;
    line-height: 4.167vw;
    font-size: 1.111vw;
    color: #191919;
    border-radius: 0.694vw;
    margin-top: 1.042vw;
    padding-left: 0;
    box-sizing: border-box;
}

.select-item::after {
    position: absolute;
    top: 50%;
    right: 1.389vw;
    content: "";
    width: 0.833vw;
    height: 0.833vw;
    background: url(https://andweb.ne.jp/wp-content/themes/andweb/assets/images/select-arrow.png);
    background-size: contain;
    transform: translateY(-50%);
}

.form-item input {
    display: block;
    position: relative;
    /* transform: translatex(-15px); */
    width: 100%;
    background-color: #fff;
    line-height: 4.167vw;
    font-size: 1.111vw;
    color: #191919;
    border-radius: 0.694vw;
    border: 1px solid #d1d1d1;
    padding-left: 1.042vw;
    box-sizing: border-box;
}

@media screen and (max-width: 768px) {
    .form-item input {
        font-size: 12px;
        padding: 13px;
    }
}

.form-item select {
    display: block;
    position: relative;
    /* transform: translatex(-15px); */
    width: 100%;
    height: 4.167vw;
    background-color: #fff;
    line-height: 4.167vw;
    font-size: 1.111vw;
    color: #191919;
    border-radius: 0.694vw;
    border: 1px solid #d1d1d1;
    padding-left: 1.042vw;
    box-sizing: border-box;
}

.form-list-flex div {
    width: calc(50% - 10px);
}

@media screen and (max-width: 400px) {
    .form-list-flex div {
        width: 100%;
    }
}

.contact-date-wrapper {
    margin-top: 20px;
}

.contact-date-list {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}

@media screen and (max-width: 599px) {
    .contact-date-list {
        margin-top: 20px;
    }
}

.contact-date-list p {
    display: inline-block;
    font-size: 1.111vw;
    font-weight: 500;
    padding-right: 25px;
}

.contact-date-item {
    display: block;
    position: relative;
    width: calc(50% - 6.944vw);
    height: 4.167vw;
    margin-top: 0.694vw;
    display: block;
    background-color: #efefef;
    line-height: 4.167vw;
    font-size: 1.111vw;
    color: #191919;
    border-radius: 0.694vw;
    padding-left: 1.042vw;
    box-sizing: border-box;
}

@media screen and (max-width: 599px) {
    .form-list span {
        display: inline-block;
        width: auto;
        height: 16px;
        text-align: center;
        font-size: 10px;
        color: #fff;
        font-weight: 400;
        line-height: 16px;
        background-color: #ffe200;
        margin-left: 20px;
        padding: 0 8px;
    }
    .contact-date-item {
        width: 100%;
    }
}

.contact-date-item select {
    display: block;
    position: absolute;
    transform: translatex(-15px);
    width: 100%;
    height: 100%;
    background-color: #fff;
    line-height: 4.167vw;
    font-size: 1.111vw;
    color: #191919;
    border-radius: 0.694vw;
    border: 1px solid #d1d1d1;
    padding-left: 15px;
}

.contact-date-item input {
    display: block;
    position: relative;
    transform: translatex(-15px);
    width: calc(100% + 1.042vw);
    height: 100%;
    background-color: #fff;
    line-height: 4.167vw;
    font-size: 1.111vw;
    color: #191919;
    border-radius: 0.694vw;
    border: 1px solid #d1d1d1;
    padding-left: 1.042vw;
    box-sizing: border-box;
}

.form-item-txt-area {
    display: block;
    position: relative;
    width: 100%;
    height: 20.833vw;
    margin-top: 0.694vw;
    padding: 0.694vw 1.042vw;
    border-radius: 0.694vw;
    font-size: 0.972vw;
    line-height: 1.5;
}

@media screen and (max-width: 599px) {
    .form-item-txt-area {
        font-size: 10px;
    }
}

.form-item-txt-area textarea {
    display: block;
    position: relative;
    /* transform: translatex(-15px) translatey(-10px); */
    width: 100%;
    height: 20.833vw;
    background-color: #fff;
    line-height: 1.5;
    font-size: 1.111vw;
    color: #191919;
    font-family: "Noto Sans JP";
    border-radius: 0.694vw;
    border: 1px solid #d1d1d1;
    padding: 10px 15px;
}

@media screen and (max-width: 599px) {
    .form-item-txt-area textarea {
        padding: 2px 5px;
        font-size: 12px;
    }
}



.policy-area {
    width: 100%;
    margin-top: 4.167vw;
    line-height: 2;
}

.policy-area p {
    display: inline;
    font-size: 1.111vw;
    font-weight: 400;
    padding-top: 10px;
}

p.policy-area-span {
    display: inline-block;
            width: 25px;
        height: 13px;
    text-align: center;
    font-size: 10px;
    color: #fff;
    font-weight: 400;
    line-height: 12px;
    background-color: #ffe200;
    margin-left: 1.389vw;
    padding-top: 0;
}

@media screen and (max-width: 500px) {
    .p.policy-area-span {
        font-size: 8px;
    }
}

.policy-area a {
    color: #222;
    font-size: 1.111vw;
    font-weight: 600;
}

@media screen and (max-width: 599px) {
    .policy-area a {
        font-size: 10px;
    }
}

.form-btn-area {
    width: 100%;
    padding-top: 80px;
}

.form-button__element {
    text-align: center;
}

.form-btn-area .btn-03 {
    margin: 0 auto;
    background-color: #ffe200;
    position: relative;
    border: 0;
    color: #fff;
    font-weight: 600;
    font-size: 13px;
}

@media screen and (max-width: 599px) {
    .form-btn-area .btn-03 {
        
    }
}

@media screen and (max-width: 599px) {
    .btn-03 {
        width: 150px;
        height: 100px;
        border-radius: 50vw;
    }
}

.btn-arrow::after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    right: 1.389vw;
    transform: translateY(-50%);
    width: 1.042vw;
    height: 1.042vw;
    background: url(../images/arrow.png);
    background-size: cover;
}

.form-check-wrapper {
    padding: 0.694vw 0;
    line-height: 1.5;
}

.form-check-wrapper span {
    display: inline;
    width: 100%;
    text-align: left;
    height: auto;
    margin-left: 0;
    font-size: 0.972vw;
    line-height: 2;
}

.mwform-checkbox-field label,
.mwform-radio-field label {
    font-weight: normal;
    margin-bottom: 0;
    font-size: 14px;
}

span.mwform-checkbox-field.vertical-item {
    background-color: transparent;
}

span.mwform-checkbox-field-text {
    width: 100%;
    background-color: transparent;
    color: #222;
    font-size: 15px;
}

@media screen and (max-width: 599px) {
    span.mwform-checkbox-field-text {
        line-height: 1.5;
        font-size: 14px;
    }
}

span.mwform-checkbox-field.horizontal-item {
    background-color: transparent;
    margin-left: 0;
}

span.error {
    display: block;
    position: absolute;
    width: 100%;
    text-align: left;
    background-color: transparent;
    margin-left: 0.694vw;
    padding-top: 5px;
}

.prev-btn {
    background-color: transparent !important;
    color: #191919 !important;
}

.complete-box {
    text-align: center;
}

.complete-box p {
    font-size: 1.042vw;
    line-height: 1.8;
}

.complete-home {
    display: inline-block;
    margin-top: 3.472vw;
}


.form-btn-area .btn-03 {
    margin: 0 auto;
    background-color: #ffe200;
    color: #222222;
    position: relative;
    border: 0;
    font-weight: 600;
    font-size: 13px;
    width: 16.667vw;
    height: 4.167vw;
    text-align: center;
    border-radius: 4.167vw;
}

@media screen and (max-width: 599px) {
    .form-btn-area .btn-03 {
        width: 64vw;
        height: 14.666vw;
        border-radius: 50vw;
    }
}






/* 代理店報酬 */
.p-fifth-sec {
    padding: 130px 15.9722vw 100px;
    background-color: #f2faff
}

@media (min-width:1441px) {
    .p-fifth-sec {
        padding: 130px 230px 100px
    }
}

@media (max-width:768px) {
    .p-fifth-sec {
        padding: 100px 40px 100px
    }
}

@media (max-width:599px) {
    .p-fifth-sec {
        padding: 100px 4.8vw 100px
    }
}

.p-fifth-sec .text__01 {
    position: relative;
    text-align: center;
    margin-bottom: 65px
}

@media (max-width:768px) {
    .p-fifth-sec .text__01 {
        margin-bottom: 35px
    }
}

@media (max-width:599px) {
    .p-fifth-sec .text__01 {
        margin-bottom: 35px
    }
}

/* .p-fifth-sec .text__01::after {
    position: absolute;
    bottom: -50px;
    left: 50%;
    transform: translateX(-50%);
    content: "";
    width: 1px;
    height: 50px;
    background-color: #222222
} */

.p-fifth-sec .text__01 p {
    margin-bottom: 22px;
    font-family: lato, sans-serif;
    font-weight: 700;
    font-size: 2.08333vw
}

@media (min-width:1441px) {
    .p-fifth-sec .text__01 p {
        font-size: 30px
    }
}

@media (max-width:768px) {
    .p-fifth-sec .text__01 p {
        font-size: 18px
    }
}

@media (max-width:599px) {
    .p-fifth-sec .text__01 p {
        margin-bottom: 8px;
        font-size: 4.8vw
    }
}

.p-fifth-sec .text__01 span {
    margin-bottom: 20px;
    display: inline-block;
    font-family: lato, sans-serif;
    font-weight: 700;
    font-size: 0.97222vw;
    letter-spacing: 0.2em
}

@media (min-width:1441px) {
    .p-fifth-sec .text__01 span {
        font-size: 14px
    }
}

@media (max-width:768px) {
    .p-fifth-sec .text__01 span {
        font-size: 12px
    }
}

@media (max-width:599px) {
    .p-fifth-sec .text__01 span {
        font-size: 3.2vw
    }
}

.text__10 {
        margin-top: 30px;
    font-size: 0.97222vw;
    margin-bottom: 40px;
}

@media (max-width:768px) {
 .text__10 {
    margin-top: 15px;
        font-size: 2.9333333333vw;
    text-align: center;
    font-family: lato, sans-serif;
    font-weight: 500;
    line-height: 1.85;
    }
}


.p-fifth-sec .box__flex {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 980px;
    margin: 0 auto;
    display: flex;
  flex-wrap: wrap;
  gap: 30px; /* 必要に応じて調整 */
  justify-content: space-between;
}

@media (max-width:599px) {
    .p-fifth-sec .box__flex {
        flex-direction: column
    }
}

.p-fifth-sec .box__flex .box__01,
.p-fifth-sec .box__flex .box__02 {
    position: relative;
    width: 46.473%;
    padding: 3.47222vw 2.638888vw 2.777777vw;
    margin-bottom: 70px;
    background-color: #f2faff;
    box-shadow: 0 6px 20px #7C7C7C20;
    width: calc(50% - 15px); /* gapの半分だけ引く */
    border: 2px dashed #222222
}

@media (min-width:1441px) {
    .p-fifth-sec .box__flex .box__01,
    .p-fifth-sec .box__flex .box__02 {
        width: 230px;
        width: calc(50% - 15px); /* gapの半分だけ引く */
        padding: 50px 38px 40px
    }
}

@media (max-width:599px) {
    .p-fifth-sec .box__flex .box__01,
    .p-fifth-sec .box__flex .box__02 {
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 100%;
        padding: 0;
        margin-bottom: 30px;
        border: 1px dashed #222222
    }
    .p-fifth-sec .box__flex .box__01:last-of-type,
    .p-fifth-sec .box__flex .box__02:last-of-type {
        margin-bottom: 0
    }
}

.p-fifth-sec .box__flex .box__01::before,
.p-fifth-sec .box__flex .box__02::before {
    position: absolute;
    top: -2px;
    left: 50%;
    transform: translateX(-50%);
    content: "";
    width: 13.1944vw;
    height: 2px;
    background-color: #fff;
    z-index: 1
}

@media (min-width:1441px) {
    .p-fifth-sec .box__flex .box__01::before,
    .p-fifth-sec .box__flex .box__02::before {
        width: 190px
    }
}

@media (max-width:599px) {
    .p-fifth-sec .box__flex .box__01::before,
    .p-fifth-sec .box__flex .box__02::before {
        top: -1px;
        height: 1px;
        width: 32vw
    }
}

.p-fifth-sec .box__flex .box__01 .rank,
.p-fifth-sec .box__flex .box__02 .rank {
    position: absolute;
    top: -1.388888vw;
    left: 50%;
    transform: translateX(-50%);
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: 1.805555vw;
    line-height: 1.4;
    z-index: 2
}

@media (min-width:1441px) {
    .p-fifth-sec .box__flex .box__01 .rank,
    .p-fifth-sec .box__flex .box__02 .rank {
        top: -20px;
        font-size: 26px
    }
}

@media (max-width:599px) {
    .p-fifth-sec .box__flex .box__01 .rank,
    .p-fifth-sec .box__flex .box__02 .rank {
        top: -4vw;
        font-size: 4.8vw
    }
}

.p-fifth-sec .box__flex .box__01 .inner__text__01,
.p-fifth-sec .box__flex .box__02 .inner__text__01,
.p-fifth-sec .box__flex .box__03 .inner__text__01 {
    text-align: center;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 0.90278vw;
    line-height: 1.7
}

@media (min-width:1441px) {
    .p-fifth-sec .box__flex .box__01 .inner__text__01,
    .p-fifth-sec .box__flex .box__02 .inner__text__01,
    .p-fifth-sec .box__flex .box__03 .inner__text__01 {
        font-size: 13px
    }
}

@media (max-width:599px) {
    .p-fifth-sec .box__flex .box__01 .inner__text__01,
    .p-fifth-sec .box__flex .box__02 .inner__text__01,
    .p-fifth-sec .box__flex .box__03 .inner__text__01 {
        margin-top: 30px;
        font-size: 3.2vw
    }
}



.p-fifth-sec .box__flex .box__01 .price,
.p-fifth-sec .box__flex .box__02 .price,
.p-fifth-sec .box__flex .box__03 .price,
.p-fifth-sec .box__flex .box__04 .price {
    position: relative;
    width: fit-content;
    margin: 0 auto 10px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: 1.11111vw;
    line-height: 1.5;
    white-space: nowrap;
    position: relative;
  display: inline-block;
    z-index: 1
}

@media (min-width:1441px) {
    .p-fifth-sec .box__flex .box__01 .price,
    .p-fifth-sec .box__flex .box__02 .price,
    .p-fifth-sec .box__flex .box__03 .price {
        font-size: 16px
    }
}

@media (max-width:599px) {
    .p-fifth-sec .box__flex .box__01 .price,
    .p-fifth-sec .box__flex .box__02 .price,
    .p-fifth-sec .box__flex .box__03 .price {
        margin: 10px auto 10px;
        font-size: 3.73333vw
    }
}

.p-fifth-sec .box__flex .box__01 .price span,
.p-fifth-sec .box__flex .box__02 .price span,
.p-fifth-sec .box__flex .box__03 .price span {
    font-family: lato, sans-serif;
    font-weight: 700;
    font-size: 4.167vw
}

@media (min-width:1441px) {
    .p-fifth-sec .box__flex .box__01 .price span,
    .p-fifth-sec .box__flex .box__02 .price span,
    .p-fifth-sec .box__flex .box__03 .price span {
        font-size: 60px
    }
}

@media (max-width:599px) {
    .p-fifth-sec .box__flex .box__01 .price span,
    .p-fifth-sec .box__flex .box__02 .price span,
    .p-fifth-sec .box__flex .box__03 .price span {
        font-size: 8.53333vw
    }
}

.p-fifth-sec .box__flex .box__01 .price::after,
.p-fifth-sec .box__flex .box__02 .price::after,
.p-fifth-sec .box__flex .box__03 .price::after,
.p-fifth-sec .box__flex .box__04 .price::after {
     content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
   transform: translateX(-50%);
  width: 120%;
  height: 8px;
  z-index: -1;
  clip-path: polygon(10% 0, 100% 0, 90% 100%, 0 100%);
  border-radius: 2px;
}

/* シルバー：グレーに光沢感 */
.p-fifth-sec .box__flex .box__01 .price.silver::after {
  background: linear-gradient(90deg, #bbb, #e0e0e0, #bbb);
  height: 20px;
}

/* ゴールド：高級感のある金色グラデーション */
.p-fifth-sec .box__flex .box__02 .price.gold::after {
  background: linear-gradient(90deg, #FFD700, #FFC107, #FFD700);
height: 20px;
}

/* プラチナ：上品な白金色 */
.p-fifth-sec .box__flex .box__04 .price.platinum::after {
  background: linear-gradient(90deg, #e5e4e2, #c0c0c0, #e5e4e2);;
height: 20px;
  margin-bottom: 3px;
}

.p-fifth-sec .box__flex .box__01 .inner__text__02,
.p-fifth-sec .box__flex .box__02 .inner__text__02,
.p-fifth-sec .box__flex .box__03 .inner__text__02 {
    text-align: center;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: 0.83333vw
}

@media (min-width:1441px) {
    .p-fifth-sec .box__flex .box__01 .inner__text__02,
    .p-fifth-sec .box__flex .box__02 .inner__text__02,
    .p-fifth-sec .box__flex .box__03 .inner__text__02 {
        font-size: 12px
    }
}

@media (max-width:599px) {
    .p-fifth-sec .box__flex .box__01 .inner__text__02,
    .p-fifth-sec .box__flex .box__02 .inner__text__02,
    .p-fifth-sec .box__flex .box__03 .inner__text__02 {
        margin: 0 auto 20px;
        font-size: 3.2vw
    }
}

.p-fifth-sec .box__flex .box__02 .price::after {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    content: "";
    width: 110%;
    height: 30px;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1
}

@media (max-width:768px) {
   
}

.p-fifth-sec .box__flex .box__03 .price::after {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    content: "";
    width: 105%;
    height: 30px;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1
}


.p-fifth-sec .box__flex .box__04 {
    position: relative;
    width: 100%;
    padding: 3.47222vw 0 2.777777vw;
    margin: 0 auto;
    background-color: #f2faff;
    box-shadow: 0 6px 20px #7C7C7C20;
    border: 2px dashed #222222
}

@media (min-width:1441px) {
    .p-fifth-sec .box__flex .box__04 {
        padding: 50px 0 40px
    }
}

@media (max-width:599px) {
    .p-fifth-sec .box__flex .box__04 {
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 100%;
        padding: 0;
        margin-bottom: 25px;
        border: 1px dashed #222222
    }
    .p-fifth-sec .box__flex .box__04:last-of-type {
        margin-bottom: 0
    }
}

.p-fifth-sec .box__flex .box__04::before {
    position: absolute;
    top: -2px;
    left: 50%;
    transform: translateX(-50%);
    content: "";
    width: 13.1944vw;
    height: 2px;
    background-color: #fff;
    z-index: 1
}

@media (min-width:1441px) {
    .p-fifth-sec .box__flex .box__04::before {
        width: 190px
    }
}

@media (max-width:599px) {
    .p-fifth-sec .box__flex .box__04::before {
        top: -1px;
        height: 1px;
        width: 32vw
    }
}

.p-fifth-sec .box__flex .box__04 .rank {
    position: absolute;
    top: -1.388888vw;
    left: 50%;
    transform: translateX(-50%);
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: 1.805555vw;
    line-height: 1.4;
    z-index: 2
}

@media (min-width:1441px) {
    .p-fifth-sec .box__flex .box__04 .rank {
        top: -20px;
        font-size: 26px
    }
}

@media (max-width:599px) {
    .p-fifth-sec .box__flex .box__04 .rank {
        top: -4vw;
        font-size: 4.8vw
    }
}

.p-fifth-sec .box__flex .box__04 .inner__text__01 {
    text-align: center;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 0.90278vw;
    line-height: 1.7
}

@media (min-width:1441px) {
    .p-fifth-sec .box__flex .box__04 .inner__text__01 {
        font-size: 13px
    }
}

@media (max-width:599px) {
    .p-fifth-sec .box__flex .box__04 .inner__text__01 {
        margin-top: 30px;
        font-size: 3.2vw
    }
}

.p-fifth-sec .box__flex .box__04 .price {
    position: relative;
    width: fit-content;
    margin: 0 auto 10px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: 1.11111vw;
    line-height: 1.5;
    white-space: nowrap;
    z-index: 1
}

@media (min-width:1441px) {
    .p-fifth-sec .box__flex .box__04 .price {
        font-size: 16px
    }
}

@media (max-width:599px) {
    .p-fifth-sec .box__flex .box__04 .price {
        margin: 10px auto 10px;
        font-size: 3.73333vw
    }
}

.p-fifth-sec .box__flex .box__04 .price::after {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    content: "";
    width: 115%;
    height: 30px;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1
}


.p-fifth-sec .box__flex .box__04 .price span {
    font-family: lato, sans-serif;
    font-weight: 700;
    font-size: 4.862vw
}

@media (min-width:1441px) {
    .p-fifth-sec .box__flex .box__04 .price span {
        font-size: 70px
    }
}

@media (max-width:599px) {
    .p-fifth-sec .box__flex .box__04 .price span {
        font-size: 8.53333vw
    }
}

.p-fifth-sec .box__flex .box__04 .inner__text__02 {
    margin-bottom: 10px;
    text-align: center;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: 0.83333vw
}

@media (min-width:1441px) {
    .p-fifth-sec .box__flex .box__04 .inner__text__02 {
        font-size: 12px
    }
}

@media (max-width:599px) {
    .p-fifth-sec .box__flex .box__04 .inner__text__02 {
        margin: 0 auto 20px;
        font-size: 3.2vw
    }
}

.p-fifth-sec .box__flex .box__04 .inner__box {
    width: fit-content;
    margin: 0 auto
}

@media (max-width:599px) {
    .p-fifth-sec .box__flex .box__04 .inner__box {
        margin: 0 auto 20px
    }
}

.p-fifth-sec .box__flex .box__04 .inner__box .inner__text__03 {
    margin-bottom: 5px;
    text-align: center;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 0.97222vw;
    line-height: 2
}

@media (max-width:599px) {
    .p-fifth-sec .box__flex .box__04 .inner__box .inner__text__03 {
        font-size: 3.2vw
    }
}

.p-fifth-sec .box__flex .box__04 .inner__box .inner__text__03::before,
.p-fifth-sec .box__flex .box__04 .inner__box .inner__text__03::after {
    display: inline-block;
    content: "";
    width: 6.9444vw;
    height: 1px;
    background-image: url(../images/agency/line-dashed.svg);
    background-repeat: no-repeat;
    background-size: contain;
    vertical-align: middle
}

@media (max-width:599px) {
    .p-fifth-sec .box__flex .box__04 .inner__box .inner__text__03::before,
    .p-fifth-sec .box__flex .box__04 .inner__box .inner__text__03::after {
        width: 21.335vw
    }
}

.p-fifth-sec .box__flex .box__04 .inner__box .inner__text__03::before {
    margin-right: 1.180555vw
}

@media (min-width:1441px) {
    .p-fifth-sec .box__flex .box__04 .inner__box .inner__text__03::before {
        margin-right: 17px
    }
}

@media (max-width:599px) {
    .p-fifth-sec .box__flex .box__04 .inner__box .inner__text__03::before {
        margin-right: 2.6666666667vw
    }
}

.p-fifth-sec .box__flex .box__04 .inner__box .inner__text__03::after {
    margin-left: 1.180555vw
}

@media (min-width:1441px) {
    .p-fifth-sec .box__flex .box__04 .inner__box .inner__text__03::after {
        margin-left: 17px
    }
}

@media (max-width:599px) {
    .p-fifth-sec .box__flex .box__04 .inner__box .inner__text__03::after {
        margin-left: 2.6666666667vw
    }
}

.p-fifth-sec .box__flex .box__04 .inner__box .inner__box__price {
    text-align: center;
    font-family: lato, sans-serif;
    font-weight: 700;
    font-size: 2.777777vw;
    line-height: 1.5
}

@media (min-width:1441px) {
    .p-fifth-sec .box__flex .box__04 .inner__box .inner__box__price {
        font-size: 40px
    }
}

@media (max-width:599px) {
    .p-fifth-sec .box__flex .box__04 .inner__box .inner__box__price {
        font-size: 5.33333vw
    }
}

.p-fifth-sec .box__flex .box__04 .inner__box .inner__box__price .small {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 0.90278vw
}

@media (min-width:1441px) {
    .p-fifth-sec .box__flex .box__04 .inner__box .inner__box__price .small {
        font-size: 13px
    }
}

@media (max-width:599px) {
    .p-fifth-sec .box__flex .box__04 .inner__box .inner__box__price .small {
        font-size: 3.2vw
    }
}

.p-fifth-sec .box__flex .box__04 .inner__box .inner__box__price .large {
    font-family: lato, sans-serif;
    font-weight: 700;
    font-size: 4.167vw
}

@media (min-width:1441px) {
    .p-fifth-sec .box__flex .box__04 .inner__box .inner__box__price .large {
        font-size: 60px
    }
}

@media (max-width:599px) {
    .p-fifth-sec .box__flex .box__04 .inner__box .inner__box__price .large {
        font-size: 6.933vw
    }
}

.p-fifth-sec .box__flex .box__04 .inner__box .inner__text__04 {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: 0.83333vw;
    text-align: center
}

@media (min-width:1441px) {
    .p-fifth-sec .box__flex .box__04 .inner__box .inner__text__04 {
        font-size: 12px
    }
}

@media (max-width:599px) {
    .p-fifth-sec .box__flex .box__04 .inner__box .inner__text__04 {
        font-size: 2.9333333333vw
    }
}




.partner__inner {
    padding: 120px 100px;
}






/* fv */
.p-top_mv {
    position: relative;
    z-index: 1;
    background-color: #fef6eb;
}

.p-top_mv__outer {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: 0 auto;
}

@media (max-width: 767.98px) {
    .p-top_mv__inner {
        margin: 0 25px;
    }
}

.p-top_mv__cover {
    overflow: hidden;
    position: relative;
}

@media (min-width: 768px) {
    .p-top_mv__cover {
        height: 780px;
    }
}

@media (max-width: 767.98px) {
    .p-top_mv__cover {
        padding-top: calc(470 / 375 * 100%);
    }
}

.p-top_mv__bg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.p-top_mv__bg img {
    opacity: 1;
    transition: opacity 1.3s cubic-bezier(0.645, 0.045, 0.355, 1) 0.1s, -webkit-transform 1.3s cubic-bezier(0.645, 0.045, 0.355, 1) 0.1s;
    transition: opacity 1.3s cubic-bezier(0.645, 0.045, 0.355, 1) 0.1s, transform 1.3s cubic-bezier(0.645, 0.045, 0.355, 1) 0.1s;
    transition: opacity 1.3s cubic-bezier(0.645, 0.045, 0.355, 1) 0.1s, transform 1.3s cubic-bezier(0.645, 0.045, 0.355, 1) 0.1s, -webkit-transform 1.3s cubic-bezier(0.645, 0.045, 0.355, 1) 0.1s;
    -webkit-transform: scale(1.06);
    transform: scale(1.06);
    height: 100%;
    WIDTH: 100%;
    object-fit: cover;
}

.p-top_mv__bg.is-active img {
    opacity: 1;
    -webkit-transform: scale(1.001);
    transform: scale(1.001);
}

.p-top_mv__obj1 {
    position: absolute;
    top: 0;
    left: 0;
}

@media (min-width: 768px) {
    .p-top_mv__obj1 {
        height: 530px;
    }
}

@media (max-width: 767.98px) {
    .p-top_mv__obj1 {
        height: 100%;
    }
}

.p-top_mv__obj1 img {
    width: auto;
    height: 100%;
}

.p-top_mv__obj2 {
    position: absolute;
    top: 0;
    right: 0;
}

@media (min-width: 768px) {
    .p-top_mv__obj2 {
        height: 565px;
    }
}

@media (max-width: 767.98px) {
    .p-top_mv__obj2 {
        height: 100%;
        text-align: right;
    }
}

.p-top_mv__obj2 img {
    width: auto;
    height: 100%;
}

@media (min-width: 768px) {
    .p-top_mv__obj3 {
        display: none;
    }
}

@media (max-width: 767.98px) {
    .p-top_mv__obj3 {
        position: absolute;
        right: 0;
        bottom: -35px;
        -webkit-transform: scale(0.5);
        transform: scale(0.5);
        -webkit-transform-origin: right top;
        transform-origin: right top;
    }
}

.p-top_mv__ttl {
    opacity: 1;
    transition: opacity 1.3s cubic-bezier(0.645, 0.045, 0.355, 1) 0.1s;
}

@media (min-width: 768px) {
    .p-top_mv__ttl {
        display: flex;
        align-items: center;
        justify-content: center;
        padding-bottom: 35px;
        padding-left: 9%;
        width: 44%;
        height: 530px;
        text-align: center;
    }
}

@media (max-width: 767.98px) {
    .p-top_mv__ttl {
        margin: 0 auto;
        padding-top: calc(42 / 325 * 100%);
        width: 270px;
        text-align: center;
    }
}

.p-top_mv__ttl.is-active {
    opacity: 1;
}

.p-top_mv__logo {}

@media (min-width: 768px) {
    .p-top_mv__logo {
        display: none;
    }
}

@media (max-width: 767.98px) {
    .p-top_mv__logo {
        width: 208px;
        position: absolute;
        left: 50%;
        bottom: 20px;
        transform: translate(-50%, 0);
    }
}