@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/


:root {
    --main-color: #E80114;
    --sub-color: #FFCE00;
}

/* 追加css */
/* 汎用 */

@font-face {
    font-family: 'Avenir';
    src: url('../swell_child/fonts/Avenir-Black.ttf');
}

@font-face {
    font-family: 'Avenir_mid';
    src: url('../swell_child/fonts/Avenir-Medium.ttf');
}

@font-face {
    font-family: 'Avenir_book';
    src: url('../swell_child/fonts/Avenir-Book.ttf');
}

@font-face {
    font-family: 'High Summit';
    src: url('../fonts/High Summit.ttf');
}

@font-face {
    font-family: 'DIN2014';
    src: url('/wp-content/themes/swell_child/fonts/DIN2014_Regular.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'DIN2014';
    src: url('/wp-content/themes/swell_child/fonts/DIN2014_Bold.otf') format('opentype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

.f_avenir {
    font-family: 'Avenir', sans-serif;
    font-weight: 900;
}

.is-safari .f_avenir {
    font-weight: 800;
}

.f_avenir_mid {
    font-family: 'Avenir_mid', sans-serif;
    font-weight: 400;
}

.f_avenir_book {
    font-family: 'Avenir_book', sans-serif;
}

.f_highsummit {
    font-family: 'High Summit', serif;
}

/* 追加css end */

/* SWELLはbodyに直接font-familyを指定するため、bodyとbody>*も明示する */
html,
body,
button,
input,
select,
textarea,
body>* {
    font-family: 'Noto Sans JP', sans-serif;
}

/* SWELL本体のCSSはreset.cssより後に読まれるため、reset.cssと同じ値に戻す */
body {
    background-color: #fff;
}

a {
    color: inherit;
}

button,
input,
optgroup,
select,
textarea {
    color: inherit;
    background: transparent;
    padding: 0;
    border: 0;
}

body {
    color: #1A1A1A;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.6;
    padding-top: 100px;
    min-width: 1340px;
}

.wrap {
    width: 1140px;
    margin: 0 auto;
}

.wrap.mid {
    width: 1240px;
}

.wrap.lr {
    width: 1340px;
}

a[href^="tel:"] {
    pointer-events: none;
}

/* PC固定ページ 共通設定 */
.common_page_main {
    padding-block: 85px 90px;
    margin-block: 0 1em;
}

.common_page_main .title_box {
    text-align: center;
}

.common_page_main .title_box .title {
    font-size: 40px;
    letter-spacing: .08em;
    font-weight: 700;
    line-height: 1.5;
}

.common_page_wrap {
    padding: 100px 0;
}

.not_found .text {
    text-align: center;
}

.reserve_text {
    text-align: center;
    font-size: 30px;
}

/* パンくず */
.breadcrumb {
    font-size: 12px;
    color: #3E3E3E;
    letter-spacing: .08em;
}

.breadcrumb a {
    text-decoration: none;
    color: #3E3E3E;
}

/* PC固定ページ お問い合わせ */
.contact_form_disc {
    color: #3E3E3E;
    letter-spacing: .08em;
    font-weight: 400;
    text-align: center;
    margin-block: 0 3.8em;
}

.contact_form_disc .text {
    font-size: 16px;
    margin-block: 0 1em;
}

.contact_form_disc .caution {
    font-size: 14px;
}

.common_contact_form .form_box {
    margin-block: 0 50px;
}

.common_contact_form .form_box dl {
    display: grid;
    grid-template-columns: 26.5% 1fr;
    align-items: center;
    gap: 80px;
}

.common_contact_form .form_box dl.start {
    align-items: flex-start;
}

.common_contact_form .form_box dl+dl {
    margin-block: 1em 0;
}

.common_contact_form .form_box dl dt {
    display: flex;
    align-items: center;
    gap: 0.5em;
    font-size: 16px;
    letter-spacing: .08em;
    font-weight: 700;
    padding-inline: 0 0.5em;
    position: relative;
}

.common_contact_form .form_box dl dt .label {
    flex-shrink: 0;
    color: #3E3E3E;
    font-size: 12px;
    letter-spacing: .2em;
    font-weight: 700;
    border-radius: 100vmax;
    padding: 0.2em 0.9em 0.3em;
}

.common_contact_form .form_box dl dt .label.hissu {
    background: #E50012;
    color: #fff;
}

.common_contact_form .form_box dl dt .label.ninni {
    background: #E0E0E0;
}

.common_contact_form .form_box dl dt::after {
    content: "";
    width: 1px;
    height: 30px;
    background: #AAA;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
}

.common_contact_form input[type="text"],
.common_contact_form input[type="email"],
.common_contact_form #zip {
    width: 100%;
    background: #F8F8F8;
    border: 1px solid #E6E6E6;
    border-radius: 4px;
    font-size: 14px;
    letter-spacing: .08em;
    font-weight: 400;
    padding: 0.8em 1em;
}

.common_contact_form textarea {
    width: 100%;
    height: 180px;
    background: #F8F8F8;
    border: 1px solid #E6E6E6;
    border-radius: 4px;
    padding: 1em;
    font-size: 14px;
    letter-spacing: .08em;
    font-weight: 400;
}

.common_contact_form input::placeholder,
.common_contact_form textarea::placeholder {
    color: #C7C4C4;
}

.common_contact_form select {
    width: 47.5%;
    background: #F8F8F8;
    border: 1px solid #E6E6E6;
    border-radius: 4px;
    font-size: 14px;
    letter-spacing: .08em;
    padding: 1.1em 1em;
}

::-webkit-full-page-media,
:future,
:root .common_contact_form select {
    appearance: none;
}

.common_contact_form select.empty {
    color: #C7C4C4;
}

.common_contact_form select.empty option,
.common_contact_form select option {
    color: #000;
}

.page_contact #btn_wrap {
    justify-content: center;
    text-align: right;
    width: 74%;
    margin: auto;
}

.page_contact #btn_wrap button {
    background: linear-gradient(180deg, rgba(250, 16, 30, 1) 0%, rgba(243, 184, 74, 1) 100%);
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    appearance: none;
    color: #fff;
    display: block;
    width: 310px;
    line-height: 60px;
    font-size: 18px;
    font-weight: 900;
    transition: .3s;
    text-align: center;
    letter-spacing: .08em;
    margin: auto;
}

.page_contact #btn_wrap button[name="submitBack"] {
    background: #333;
    margin-top: 20px;
}

.page_contact #btn_wrap button:hover {
    opacity: .8;
}

.privacy_term_outer .privacy_term_inner {
    height: 138px;
    margin: auto;
    overflow: auto;
}

.privacy_term_outer .privacy_term_inner .privacy_index {
    font-size: 14px;
}

.privacy_term_outer .privacy_term_inner .main_text {
    font-size: 13px;
    margin-bottom: 25px;
}

.privacy_term_outer .privacy_term_inner dl dt {
    font-size: 13px;
    border-left: solid 3px #ccc;
    padding-left: 1em;
    margin-bottom: 5px;
}

.privacy_term_outer .privacy_term_inner dl dd {
    font-size: 13px;
}

.privacy_term_outer .privacy_term_inner dl+dl {
    margin-top: 30px;
}

.privacy_term_outer .privacy_term_inner::-webkit-scrollbar {
    width: 8px;
}

.privacy_term_outer .privacy_term_inner::-webkit-scrollbar-track {
    background: transparent;
}

.privacy_term_outer .privacy_term_inner::-webkit-scrollbar-thumb {
    background-color: #333;
    border-radius: 10px;
}

.privacy_term_outer {
    border-top: solid 1px #e3e3e3;
    padding: 30px 0;
    border-bottom: solid 1px #e3e3e3;
    width: 60%;
    margin: 0 auto 50px;
}

.privacy_check_list .mwform-checkbox-field-text {
    padding-right: 0;
}

.privacy_check_list .error {
    font-size: 12px;
}

.privacy_term_detail {
    text-align: center;
    font-size: 13px;
    margin: 20px 0;
    position: relative;
    font-weight: 600;
}

.privacy_term_detail::after {
    content: "";
    margin: 5px auto 0;
    border: solid #333;
    border-width: 2px 2px 0 0;
    width: 10px;
    aspect-ratio: 1 / 1;
    min-width: 0;
    rotate: 135deg;
    display: block;
}

.mw_wp_form_confirm .privacy_check_list,
.mw_wp_form_confirm .privacy_term_detail {
    display: none;
}

/* ラジオボタン デザイン */
.radio_btns,
.checkboxes {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5em 1.5em;
    padding: .5em 0;
}

/* ラジオボタンを隠す */
.radio_btns input[type=radio].radio_btns__item {
    display: none;
}

.radio_btns label {
    display: inline-block;
    cursor: pointer;
}

/* spanの左側にボタンを配置するスペースを作る */
.radio_btns .radio_btns__item+span {
    color: #3E3E3E;
    font-size: 15px;
    letter-spacing: .08em;
    font-weight: 600;
    padding-left: 2em;
    display: inline-block;
    position: relative;
}

/* 各パーツを作成 */
.radio_btns .radio_btns__item+span::before,
.radio_btns .radio_btns__item+span::after {
    content: '';
    display: block;
    position: absolute;
    border: 1px solid #E6E6E6;
    background: #F8F8F8;
    border-radius: 50%;
    width: 20px;
    aspect-ratio: 1;
    min-width: 0;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
}

/* after上書き */
.radio_btns .radio_btns__item+span::after {
    width: 10px;
    aspect-ratio: 1;
    min-width: 0;
    top: 0px;
    left: 5px;
    border: none;
    background: #FFF;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    transition: all .3s;
}

/*
  checked状態
  文字のcolorとボタンのopacityを変更
*/
.radio_btns .radio_btns__item:checked+span::after {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

/* チェックボックス デザイン */
.page_contact input[type="checkbox"] {
    /* デフォルトcheckボックス非表示*/
    display: none;
}

.mwform-checkbox-field label {
    cursor: pointer;
}

.mwform-checkbox-field-text {
    color: #3E3E3E;
    font-size: 15px;
    letter-spacing: .08em;
    font-weight: 600;
    display: inline-block;
    position: relative;
    padding: 0 0 0 30px;
}

.mwform-checkbox-field-text::before,
.mwform-checkbox-field-text::after {
    content: "";
    position: absolute;
    display: block;
}

.mwform-checkbox-field-text::before {
    background: #F8F8F8;
    border: 1px solid #E6E6E6;
    border-radius: 2px;
    width: 20px;
    aspect-ratio: 1 / 1;
    min-width: 0;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

.mwform-checkbox-field-text::after {
    border-width: 3px;
    border-color: transparent transparent #333 #333;
    border-style: solid;
    width: 20px;
    aspect-ratio: 2/1;
    min-width: 0;
    margin-top: -0.2em;
    top: 50%;
    left: 0;
    transform: translateY(-50%) rotate(-45deg);
    opacity: 0;
}

input[type="checkbox"]:checked+.mwform-checkbox-field-text::after {
    opacity: 1;
}

.mw_wp_form .horizontal-item {
    display: inline-block;
}

.mw_wp_form .horizontal-item+.horizontal-item {
    margin-left: 0 !important;
}

/* サンクスページ */

.page_contact .thanks_textArea .name {
    font-size: 16px;
    line-height: 2;
    text-align: center;
    margin-bottom: 20px;
}

.page_contact .thanks_textArea .contact_text {
    margin: 0 auto 50px;
    width: 62%;
}

.page_contact .thanks_textArea .ichiran_link {
    background-color: var(--main-color);
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    appearance: none;
    color: #fff;
    display: block;
    width: 300px;
    line-height: 50px;
    border-radius: 4px;
    font-size: 16px;
    transition: .3s;
    margin: 0 auto;
    text-decoration: none;
    font-weight: 600;
    letter-spacing: .08em;
    text-align: center;
}

.page_contact .thanks_textArea .ichiran_link:hover {
    opacity: .8;
}

.page_contact .thanks_textArea .contact_text .space {
    display: block;
}

.page_contact .thanks_textArea .contact_text .space {
    display: block;
    margin-top: 10px;
}

/* ステップバー デザイン */
.page_contact .progressbar {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5.6em;
    margin-block: 0 3em;
}

.page_contact .progressbar .item {
    color: #3E3E3E;
    font-size: 14px;
    letter-spacing: .08em;
    font-weight: 400;
    text-align: center;
    line-height: 1.5;
    position: relative;
}

.page_contact .progressbar .item+.item::before {
    content: "";
    width: 50px;
    height: 1px;
    background: #E6E6E6;
    position: absolute;
    top: 64%;
    left: -5em;
}

.page_contact .progressbar .item .mark {
    width: 36px;
    aspect-ratio: 1;
    background: #fff;
    border: 1px solid #AFAFAF;
    border-radius: 50%;
    display: block;
    margin: 0 auto 0.5em;
    position: relative;
}

.page_contact .progressbar .item .mark::before {
    content: "";
    width: 41%;
    aspect-ratio: 1;
    background: #5A5A5A;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    opacity: 0;
}

.page_contact .progressbar .item.active .mark::before {
    opacity: 1;
}

.page_contact .progressbar .item .en {
    display: block;
    color: #A7A7A7;
    letter-spacing: 0;
    font-family: 'Helvetica', 'Arial', sans-serif;
}

.privacy_check_list {
    justify-content: center;
    align-items: center;
    margin-bottom: 25px;
}

.privacy_check_list .hissu {
    background: #c70200;
    color: #fff;
    padding: 2px 15px;
    font-size: 10px;
    letter-spacing: .08em;
    border-radius: 30px;
    font-weight: 600;
}

.mw_wp_form .privacy_check_list .horizontal-item {
    margin: 0;
}

/* PC固定ページ 404ページ */
#page_404 {
    text-align: center;
}

#page_404 .num {
    font-size: 100px;
    font-family: 'Montserrat', 'Noto Sans JP', sans-serif;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

#page_404 .text {
    margin-bottom: 1em;
    font-size: 16px;
}

/* PC固定ページ アーカイブページ */
/* 投稿リスト表示 */
.archive_page_list>article {
    padding-bottom: 15px;
    padding-top: 15px;
    border-bottom: 1px dashed #eee;
    padding-right: 30px;
}

.archive_page_list>article:after {
    content: "";
    position: absolute;
    width: 10px;
    height: 10px;
    top: 0;
    right: 5px;
    bottom: 0;
    margin: auto;
    border: solid #ccc;
    border-width: 2px 2px 0 0;
    transform: rotate(45deg);
}

.archive_page_list>article .date {
    font-weight: bold;
    font-size: 80%;
    width: 100px;
}

.archive_page_list>article .content_area {
    width: calc(100% - 100px);
}

.archive_page_list>article .content_area .ttl {
    font-weight: bold;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}

.archive_page_list>article .content_area .content {
    font-size: 80%;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

/* wp-pagenavi base */
.wp-pagenavi {
    text-align: center;
    margin-top: 50px;
}

.wp-pagenavi a,
.wp-pagenavi span {
    display: inline-block;
    color: #999;
    background-color: #FFF;
    border: solid 1px #e0e0d2;
    padding: 8px 15px;
    margin: 0 2px;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    -webkit-transition: 0.2s ease-in-out;
    -moz-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
    text-align: center;
    text-decoration: none;
}

.wp-pagenavi a:hover {
    color: #FFF;
    background-color: var(--main-color);
    border-color: var(--main-color);
}

.wp-pagenavi .current {
    color: #FFF;
    background-color: var(--main-color);
    border-color: var(--main-color);
    font-weight: bold;
}

/* パーツ */
.common_sec_title {
    display: flex;
    align-items: center;
    gap: 0.5em;
    font-size: 32px;
    font-weight: 700;
    letter-spacing: 0.05em;
}

.common_sec_title.center {
    justify-content: center;
}

.common_sec_title::before {
    content: "";
    width: 26.5px;
    height: 36.3px;
    background-image: url(/wp-content/themes/swell_child/image/icon/icon_logo.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.common_sec_title .small {
    font-size: 0.625em;
}

.common_cta_sec {
    position: relative;
    padding: 93px 0;
    background-image: url(/wp-content/themes/swell_child/image/common_cta_bg.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 1;
}

.common_cta_sec::after {
    content: "";
    position: absolute;
    inset: 0;
    mix-blend-mode: multiply;
    background: linear-gradient(180deg, rgba(51, 51, 51, 1) 0%, rgba(137, 137, 137, 1) 100%);
    z-index: -1;
}

.common_cta_sec .heading {
    color: #fff;
    text-align: center;
    margin-bottom: 13px;
}

.common_cta_sec .heading .title {
    margin-bottom: 11px;
    font-size: 38px;
    font-weight: 700;
    letter-spacing: 0.07em;
}

.common_cta_sec .heading .text {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.07em;
}

.common_cta_sec .common_cta_box {
    color: #fff;
}

.common_cta_sec .common_cta_box .catch_text .large {
    color: var(--sub-color);
}

.common_cta_sec .common_cta_box .common_cta_btn {
    color: #1A1A1A;
}

.common_cta_sec .common_cta_box .catch_text::before,
.common_cta_sec .common_cta_box .catch_text::after {
    background-color: #fff;
}

.common_cta_box .head_text {
    margin-bottom: 0.8em;
    font-size: 30px;
    font-weight: 700;
    letter-spacing: 0.09em;
    text-align: center;
}

.common_cta_box .catch_text {
    position: relative;
    width: fit-content;
    margin: 0 auto 0em;
    font-size: 26px;
    line-height: 1;
    font-weight: 900;
    letter-spacing: 0;
}

.common_cta_box .catch_text::before,
.common_cta_box .catch_text::after {
    position: absolute;
    content: "";
    bottom: 20px;
    width: 40px;
    height: 3px;
    background-color: #1A1A1A;
}

.common_cta_box .catch_text::before {
    left: -1.6em;
    transform: rotate(45deg);
}

.common_cta_box .catch_text::after {
    right: -1.6em;
    transform: rotate(-45deg);
}

.common_cta_box .text {
    margin-bottom: 0.6em;
    font-size: 24px;
    font-weight: 900;
    letter-spacing: 0.01em;
    text-align: center;
}

.common_cta_box .catch_text .large {
    font-size: 54px;
    margin: 0 0.1em;
    color: var(--main-color);
}

.common_cta_btn {
    display: block;
    position: relative;
    margin: 0 auto;
    width: 440px;
    height: 80px;
    padding: 22px 10px 10px 40px;
    font-size: 24px;
    font-weight: 900;
    letter-spacing: 0.08em;
    border-radius: 100vmax;
    box-shadow: 0 5px 0 #DEB400;
    background-color: var(--sub-color);
    transition: .3s;
}

.common_cta_btn .icon {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 10px;
    width: 60px;
    height: 60px;
}

.common_cta_btn .icon .circle,
.common_cta_btn .icon .border {
    transition: .3s;
}

.common_cta_btn:hover {
    transform: translateY(5px);
    box-shadow: none;
}

.common_cta_btn .circle {
    fill: #1A1A1A;
}

.common_cta_btn .border {
    fill: var(--sub-color);
}

.common_cta_btn:hover .circle {
    fill: var(--sub-color);
}

.common_cta_btn:hover .border {
    fill: #1A1A1A;
}

.common_video_box {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 50px 30px;
}

.common_video_box .link {
    display: block;
    cursor: pointer;
}

.common_video_box .link .img {
    position: relative;
    height: 200px;
    overflow: hidden;
    border-radius: 8px;
    margin-bottom: 8px;
}

.common_video_box .link .img::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80px;
    height: 80px;
    background-image: url(/wp-content/themes/swell_child/image/icon/video_btn.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.common_video_box .link .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .3s;
}

.common_video_box .link:hover .img img {
    scale: 1.1;
}

.common_video_box .link .title_box {
    margin-bottom: 20px;
}

.common_video_box .link .title_box .title {
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.06em;
}

.common_video_box .link .title_box .text {
    font-size: 14px;
    font-weight: 700;
    color: #707070;
}

.common_video_box .link .tag_box {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.common_video_box .link .tag_box .tag {
    flex-shrink: 0;
    padding: 0.5em 0.9em;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.06em;
    color: #707070;
    border-radius: 4px;
    border: solid 1px currentColor;
}

.pr_none {
    padding-right: unset !important;
}

.common_page_main {
    position: relative;
}

.common_page_main video {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
    object-fit: cover;
}

.common_page_main .title_box {
    color: #1A1A1A;
    text-align: left;
}

.common_page_main .title_box .sub_title {
    font-size: 20px;
    line-height: 1;
    color: var(--main-color);
}

/* パーツ end */

/* pc_header */
#pc_header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background-color: #fff;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .16);
    z-index: 10000;
    /* overflow-x: scroll; */
    padding-left: 40px;
}

#pc_header .cont .column {
    display: flex;
    align-items: center;
    /* gap: 95px; */
    justify-content: space-between;
}

#pc_header .cont .column .logo {
    width: 190px;
    height: 40px;
    flex-shrink: 0;
}

#pc_header .cont .column .logo a {
    display: block;
}

#pc_header .cont .column .logo a img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

#pc_header .cont .column .nav_area {
    display: flex;
    align-items: center;
    gap: 30px;
}

#pc_header .cont .column .nav_area .menu_lists {
    display: flex;
    align-items: center;
    gap: 25px;
    flex-shrink: 0;
    padding: 20px 0;
}

#pc_header .cont .column .nav_area .menu_lists::after {
    content: "";
    width: 1px;
    height: 60px;
    background-color: #E5E5E5;
}

#pc_header .cont .column .nav_area .menu_lists .menu a {
    padding: 0.3em;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 0.07em;
    transition: .3s;
}

#pc_header .cont .column .nav_area .menu_lists .menu a:hover {
    color: #fff;
    background-color: var(--main-color);
}

#pc_header .cont .column .nav_area .info_area {
    flex-shrink: 0;
}

#pc_header .cont .column .nav_area .info_area .tel {
    font-size: 28px;
    color: var(--main-color);
    line-height: 1.2;
    letter-spacing: 0;
}

#pc_header .cont .column .nav_area .info_area .tel .small {
    font-size: 0.64em;
    margin-right: .2em;
}

#pc_header .cont .column .nav_area .info_area .text {
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.04em;
}

#pc_header .cont .contact_box {
    flex-shrink: 0;
    display: grid;
    place-content: center;
    width: 180px;
    height: 100px;
    background-color: var(--sub-color);
    transition: .3s;
}

#pc_header .cont .contact_box .icon {
    width: 32px;
    height: 35px;
    margin: 0 auto 10px;
}

#pc_header .cont .contact_box .text {
    font-size: 15px;
    font-weight: 900;
    letter-spacing: 0.07em;
}

#pc_header .cont .contact_box:hover {
    opacity: .7;
}

/* pc_header end */

/* mv_sec */
.mv_sec {
    position: relative;
}

.mv_sec .cont.flex {
    flex-wrap: nowrap;
}

/* .mv_sec::before {
    content: "";
    position: absolute;
    width: 500px;
    top: 0;
    height: 100%;
    right: 0;
    background-color: #FDFDFD;
} */

.mv_sec video {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: -1;
    object-fit: cover;
}

/* .mv_sec .cont {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
} */

.mv_sec .cont .text_area {
    padding: 71px 0px 50px;
}

.mv_sec .cont .text_area .lead {
    margin-bottom: 12px;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.02em;
}

.mv_sec .cont .text_area .lead .small {
    font-size: 14px;
}

.mv_sec .cont .text_area .catch {
    margin-bottom: 17px;
    font-size: 56px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.14em;
}

.mv_sec .cont .text_area .catch .color {
    color: var(--main-color);
}

.mv_sec .cont .text_area .bg_line_text {
    margin-bottom: 42px;
}

.mv_sec .cont .text_area .bg_line_text .bg_line {
    padding: 8px 17px;
    width: fit-content;
    color: #fff;
    font-size: 20px;
    font-weight: 800;
    letter-spacing: 0.02em;
    background-color: var(--main-color);
}

.mv_sec .cont .text_area .badge_box ul {
    display: flex;
    gap: 16px;
}

.mv_sec .cont .text_area .badge_box ul .badge {
    flex-shrink: 0;
    width: 263px;
}

.mv_sec .cont .text_area .badge_box ul .badge img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.mv_sec .cont .text_area .badge_box ul .badge .title {
    font-size: 31px;
    font-weight: 700;
    letter-spacing: 0.32em;
}

.mv_sec .cont .text_area .badge_box ul .badge .text {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.08em;
}

.mv_sec .cont .text_area .badge_box ul .badge .text.small {
    font-size: 18px;
}

.mv_sec .form_area {
    flex-shrink: 0;
    /* margin-left: calc(50.6vw - 50%); */
    margin-left: auto;
    width: 500px;
    height: 100%;
    padding: 21px 46px 30px;
    background-color: #fff;
}

.mv_sec .form_area .form_box {
    margin-bottom: 30px;
}

.mv_sec .form_area .form_box .heading {
    margin-bottom: 15px;
    text-align: center;
}

.mv_sec .form_area .form_box .heading .title {
    font-size: 24px;
    font-weight: 600;
    letter-spacing: 0.06em;
}

.mv_sec .form_area .form_box .heading .title .color {
    color: var(--main-color);
}

.mv_sec .form_area .form_box .heading .text {
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.07em;
}

.mv_sec .form_area .form_box .form_cont .common_contact_form input[type="text"],
.mv_sec .form_area .form_box .form_cont .common_contact_form input[type="email"],
.mv_sec .form_area .form_box .form_cont .common_contact_form #zip {
    height: 44px;
    background: #F4F4F4;
    padding-left: 12px;
    border-radius: 6px;
    border: 1px solid #BEBEBE;
}

.mv_sec .form_area .form_box .form_cont .common_contact_form select {
    width: 100%;
    height: 44px;
    background: #fff;
    border: 1px solid #BEBEBE;
    border-radius: 6px;
    color: #000;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0;
    border: 1px solid #BEBEBE;
    padding: 10px 12px;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.mv_sec .form_area .form_box .form_cont .common_contact_form input::placeholder {
    color: #B9B9B9;
    font-size: 14px;
    font-weight: 400;
}

.mv_sec .form_area .form_box .form_cont .common_contact_form dl {
    display: block;
    width: 420px;
}

.mv_sec .form_area .form_box .form_cont .common_contact_form dl+dl {
    margin-top: 11px;
}

.mv_sec .form_area .form_box .form_cont .common_contact_form dt {
    display: block;
    font-size: 14px;
    margin-bottom: 3px;
    font-weight: 400;
}

.mv_sec .form_area .form_box .form_cont .common_contact_form dt .small {
    font-size: 8px;
    vertical-align: top;
    line-height: 1.9;
}

.mv_sec .form_area .form_box .form_cont .common_contact_form dl dt::after {
    display: none;
}

.mv_sec .form_area .form_box .form_cont .common_contact_form dd {
    cursor: pointer;
}

.mv_sec .form_area .form_box .form_cont .common_contact_form dd.icon {
    position: relative;
}

.mv_sec .form_area .form_box .form_cont .common_contact_form dd.icon::after {
    content: "";
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    width: 11.3px;
    height: 16.2px;
    background-image: url(/wp-content/themes/swell_child/image/icon/icon_form_select.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.mv_sec .form_area .form_box .form_cont .mw_wp_form_confirm .common_contact_form dd.icon::after {
    content: unset;
}

.mv_sec .form_area .form_box .form_cont .common_page_btn {
    display: block;
    position: relative;
    margin: 0 auto;
    width: 260px;
    padding: 13px 0;
    font-size: 16px;
    font-weight: 800;
    text-align: center;
    border-radius: 100vmax;
}

.mv_sec .form_area .form_box .form_cont .common_page_btn:hover {
    transform: translateY(0);
}

.mv_sec .form_area .form_box .form_cont .common_page_btn.confirm {
    background-color: var(--sub-color);
}

.mv_sec .form_area .form_box .form_cont .common_page_btn.confirm:hover {
    opacity: 0.7;
}

.mv_sec .form_area .common_page_btn {
    display: block;
    margin: 0 auto;
    width: 260px;
    color: #1A1A1A;
    font-size: 16px;
    text-align: center;
    border-radius: 100vmax;
}

.mv_sec .form_area .common_page_btn.send {
    background-color: var(--sub-color);
    box-shadow: 0 5px 0 #DEB400;
}

.mv_sec .form_area .common_page_btn.back {
    background-color: #333;
    box-shadow: 0 5px 0 #000;
    margin: 20px auto 0 !important;
    color: #fff;
}

.mv_sec .form_area .common_page_btn:hover {
    box-shadow: none !important;
    transform: translateY(5px);
}

/* mv_sec end */

/* reason_sec */
.reason_sec {
    padding: 100px 0 0;
}

.reason_sec .heading {
    margin-bottom: 46px;
    text-align: center;
}

.reason_sec .heading .title {
    width: fit-content;
    margin: 0 auto .4em;
    padding-bottom: 0.2em;
    font-size: 32px;
    font-weight: 700;
    border-bottom: solid 4px var(--main-color);
}

.reason_sec .heading .title .color_text {
    color: var(--main-color);
}

.reason_sec .heading .text {
    font-size: 18px;
    letter-spacing: 0.06em;
}

.reason_sec .catch {}

.reason_sec .catch .lead {
    font-size: 26px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.1em;
    text-align: center;
}

.reason_sec .catch .lead .small {
    font-size: 0.615em;
}

.reason_sec .catch .column {
    display: flex;
    align-items: center;
    justify-content: center;
}

.reason_sec .catch .column .block {
    display: flex;
    align-items: center;
    gap: 10px;
}

.reason_sec .catch .column .block .text {
    padding: 0.1em 0.5em;
    font-size: 30px;
    font-weight: 700;
    letter-spacing: 0.06em;
    color: #fff;
    background-color: var(--main-color);
}

.reason_sec .catch .column .block .mark {
    font-size: 30px;
}

.reason_sec .catch .column .block.result {
    margin-left: 10px;
}

.reason_sec .catch .column .block.result .mark {
    margin-right: .3em;
}

.reason_sec .catch .column .block.result .large {
    position: relative;
    font-size: 80px;
    font-weight: 700;
    letter-spacing: 0.14em;
}

.reason_sec .catch .column .block.result .large::after {
    content: "";
    position: absolute;
    width: 233px;
    height: 190px;
    top: -7%;
    left: -17%;
    background-image: url(/wp-content/themes/swell_child/image/circle_img1.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    z-index: -1;
}

/* reason_sec end*/

/* works_sec */
.works_sec {
    padding: 110px 0 90px;
}

.works_sec .common_sec_title {
    margin-bottom: 0.7em;
}

.works_sec .common_video_box {
    margin-bottom: 70px;
}

/* works_sec end */

/* worries_sec */
.worries_sec {
    position: relative;
    padding-block: 110px;
    background-color: #FCFCFC;
}

.worries_sec::before {
    position: absolute;
    height: 1305px;
    background-color: #FCFCFC;
}

.worries_sec .heading {
    position: relative;
    width: fit-content;
    margin: 0 auto 40px;
}

.worries_sec .heading::after {
    content: "";
    position: absolute;
    top: -2.8em;
    right: -2em;
    width: 55.5px;
    height: 58.5px;
    background-image: url(/wp-content/themes/swell_child/image/moyamoya.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.worries_sec .heading .title {
    font-size: 32px;
    font-weight: 700;
    letter-spacing: 0.14em;
}

.worries_sec .tab_box {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-bottom: 55px;
}

.worries_sec .tab_box .js_tab {
    position: relative;
    display: grid;
    place-content: center;
    height: 129px;
    border-radius: 12px;
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, .16));
    background-color: #fff;
    cursor: pointer;
    transition: .3s;
}

.worries_sec .tab_box .js_tab::after {
    content: '';
    position: absolute;
    bottom: -0.66vw;
    left: 50%;
    transform: translateX(-50%);
    width: 1.389vw;
    height: 0.694vw;
    background-color: #fff;
    clip-path: polygon(50% 100%, 0 0, 100% 0);
    transition: .3s;
}

.worries_sec .tab_box .js_tab:hover {
    color: #fff;
    background-color: var(--main-color);
}

.worries_sec .tab_box .js_tab:hover::after {
    background-color: var(--main-color);
}

.worries_sec .tab_box .js_tab.active {
    color: #fff;
    background-color: var(--main-color);
}

.worries_sec .tab_box .js_tab.active::after {
    background-color: var(--main-color);
}

.worries_sec .tab_box .js_tab .ttl {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 5px 0;
    width: 130px;
    height: 40px;
    font-size: 18px;
    font-weight: 800;
    color: #fff;
    text-align: center;
    background-color: var(--main-color);
    border-radius: 100vmax;
    transition: .3s;
}

.worries_sec .tab_box .js_tab:hover .ttl {
    color: #1A1A1A;
    background-color: #fff;
}

.worries_sec .tab_box .js_tab.active .ttl {
    color: #1A1A1A;
    background-color: #fff;
}

.worries_sec .tab_box .js_tab .text {
    font-size: 18px;
    font-weight: 900;
    letter-spacing: 0.07em;
    line-height: 1.3;
    text-align: center;
}

.worries_sec .panel_box .js_panel {
    box-shadow: 0 1px 3px rgba(0, 0, 0, .16);
    border-radius: 14px;
    background-color: #fff;
}

.worries_sec .panel_box .js_panel .column {
    display: flex;
    align-items: center;
    gap: 50px;
    padding: 27px 50px 27px 77px;
}

.worries_sec .panel_box .js_panel .column .img {
    flex-shrink: 0;
    height: 260px;
}

.worries_sec .panel_box .js_panel .column .img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.worries_sec .panel_box .js_panel .column .text_area {
    flex-grow: 1;
}

.worries_sec .panel_box .js_panel .column .text_area .label {
    padding: 0.3em 0.7em;
    margin-bottom: 0.7em;
    width: fit-content;
    color: #fff;
    font-size: 18px;
    font-weight: 900;
    letter-spacing: 0.07em;
    border-radius: 6px;
    background-color: var(--main-color);
}

.worries_sec .panel_box .js_panel .column .text_area .title {
    margin-bottom: 0.4em;
    font-size: 28px;
    font-weight: 900;
    letter-spacing: 0.09em;
}

/* .worries_sec .panel_box .js_panel .column .text_area .title .color {} */

.worries_sec .panel_box .js_panel .column .text_area .text {
    display: flex;
    align-items: center;
    gap: 0.7em;
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 0.07em;
}

.worries_sec .panel_box .js_panel .column .text_area .text+.text {
    padding-top: 0.5em;
    margin-top: 0.5em;
    border-top: dashed 2px #848484;
}

.worries_sec .panel_box .js_panel .column .text_area .text::before {
    content: "";
    width: 27px;
    height: 23px;
    background-image: url(/wp-content/themes/swell_child/image/icon/icon_check.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.worries_sec .arrow {
    width: 108px;
    height: 48px;
    margin: 40px auto 22px;
}

.worries_sec .summary_box {
    margin-bottom: 96px;
}

.worries_sec .summary_box .text {
    font-size: 30px;
    font-weight: 700;
    letter-spacing: 0.06em;
}

.worries_sec .summary_box .text.small {
    font-size: 22px;
}

.worries_sec .summary_box .text+.text {
    margin-top: 15px;
}

.worries_sec .summary_box .text .bg_color {
    padding: 6px 10px;
    margin: 0 3px;
    color: #fff;
    background-color: var(--main-color);
}

.worries_sec .summary_box .text.wayv {
    width: fit-content;
    margin-top: 24px;
    padding-bottom: 0.45em;
    box-decoration-break: clone;
    background: url(/wp-content/themes/swell_child/image/wavy_line.svg) left bottom no-repeat;
}

/* .worries_sec .summary_box .text .bg_color.right {}

.worries_sec .summary_box .text .bg_color.left {}

.worries_sec .summary_box .text .large {} */

.worries_sec .example_box {}

.worries_sec .example_box .cont {
    padding: 83px 50px 71px;
    border: solid 3px #1A1A1A;
    border-radius: 20px;
}

.worries_sec .example_box .cont .hedding {
    margin-top: -125px;
}

.worries_sec .example_box .cont .hedding .title {
    display: flex;
    align-items: center;
    width: fit-content;
    gap: 20px;
    margin: 0 auto;
    padding: 16px 37px;
    color: #fff;
    font-size: 30px;
    font-weight: 700;
    letter-spacing: 0.06em;
    border: solid 3px #1A1A1A;
    border-radius: 100vmax;
    background-color: var(--main-color);
}

.worries_sec .example_box .cont .hedding .title::before {
    content: "";
    width: 18px;
    height: 26px;
    clip-path: polygon(100% 50%, 0 0, 0 100%);
    background-color: #fff;
}

.worries_sec .example_box .cont .hedding .sub_text {
    margin-top: 43px;
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-align: center;
}

.worries_sec .example_box .cont .card_box {
    margin-top: 56px;
}

.worries_sec .example_box .cont .card_box ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 33px 30px;
}

.worries_sec .example_box .cont .card_box .card {
    position: relative;
}

.worries_sec .example_box .cont .card_box .card .thumb {
    position: relative;
    height: 290px;
    margin-bottom: 16px;
    border-radius: 14px;
    overflow: hidden;
}

.worries_sec .example_box .cont .card_box .card .thumb::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 10%, rgba(0, 0, 0, 1) 90%);
}

.worries_sec .example_box .cont .card_box .card .thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.worries_sec .example_box .cont .card_box .card .thumb .text_box {
    position: absolute;
    bottom: 20px;
    left: 20px;
}

.worries_sec .example_box .cont .card_box .card .thumb .text_box .title {
    color: #fff;
    font-size: 22px;
    font-weight: 700;
    letter-spacing: 0.06em;
}

.worries_sec .example_box .cont .card_box .card .thumb .text_box .title .small {
    font-size: 16px;
}

.worries_sec .example_box .cont .card_box .card .thumb .text_box .en {
    font-size: 16px;
    color: #FF5C5C;
}

.worries_sec .example_box .cont .card_box .card .text {
    position: relative;
    padding-bottom: 0.7em;
    font-size: 18px;
    letter-spacing: 0.06em;
    font-weight: 800;
    text-align: center;
}

.worries_sec .example_box .cont .card_box .card .text::after {
    content: "";
    position: absolute;
    width: 100px;
    height: 4px;
    background-color: var(--main-color);
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}

.worries_sec .example_box .cont .card_box .card .text::after {
    content: "";
    position: absolute;
    width: 100px;
    height: 4px;
    background-color: var(--main-color);
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}

.worries_sec .example_box .cont .card_box .summary_text {
    margin-top: 56px;
    font-size: 24px;
    font-weight: 700;
    letter-spacing: 0.09em;
    text-align: center;
}

.worries_sec .example_box .cont .card_box .summary_text .color {
    color: var(--main-color);
}

/* worries_sec end */

/* review_sec */
.review_sec {
    padding: 109px 0 128px;
}

.review_sec .heading {
    margin-bottom: 28px;
    text-align: center;
}

.review_sec .heading .title {
    margin-bottom: 22px;
    font-size: 30px;
    font-weight: 700;
    letter-spacing: 0.14em;
}

.review_sec .heading .title .color {
    color: var(--main-color);
}

.review_sec .heading .sub_text {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.06em;
}

.review_sec .card_box ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 23px;
}

.review_sec .card_box ul .card .thumb {
    height: 210px;
    margin-bottom: 14px;
    border-radius: 9px;
    border: solid 1px #EBEBEB;
    overflow: hidden;
}

.review_sec .card_box ul .card .thumb img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.review_sec .card_box ul .card .text_box {
    margin-bottom: 18px;
}

.review_sec .card_box ul .card .text_box .title {
    color: var(--main-color);
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.06em;
}

.review_sec .card_box ul .card .text_box .text {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.06em;
}

.review_sec .card_box ul .card .detail_text {
    font-size: 14px;
    font-weight: 400;
}

/* review_sec end */

/* pla_sec */
.plan_sec {
    position: relative;
    padding: 110px 0 118px;
    background-color: #FFF7F7;
    z-index: 1;
}

.plan_sec::after {
    position: absolute;
    content: "";
    inset: 0;
    background-image: url(/wp-content/themes/swell_child/image/plan_bg.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: -1;
}

.plan_sec .heading {
    margin-bottom: 56px;
}

.plan_sec .heading .common_sec_title {
    margin-bottom: 32px;
}

.plan_sec .heading .sub_text {
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-align: center;
}

.plan_sec .cont .head_text_box {
    margin-bottom: 20px;
}

.plan_sec .cont .head_text_box .title {
    font-size: 22px;
    font-weight: 700;
    letter-spacing: 0.06em;
    color: var(--main-color);
}

.plan_sec .cont .head_text_box .text {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.06em;
}

.plan_sec .cont .card_box {
    margin-bottom: 20px;
}

.plan_sec .cont .card_box ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.plan_sec .cont .card_box ul .card {
    display: flex;
    flex-direction: column;
    border-radius: 8px;
    background-color: #fff;
}

.plan_sec .cont .card_box ul .card.border {
    border: solid 3px var(--main-color);
}

.plan_sec .cont .card_box ul .card.bottom .text_box {
    display: flex;
    justify-content: space-between;
    flex: 1;
    flex-direction: column;
}

.plan_sec .cont .card_box ul .card.bottom .text_box .text {
    margin-bottom: 33px;
}

.plan_sec .cont .card_box ul .card .plan_title {
    padding: 30px 20px 20px;
    color: var(--main-color);
    font-size: 28px;
    border-bottom: solid 1px #D6D6D6;
}

.plan_sec .cont .card_box ul .card .plan_title.row {
    display: flex;
    align-items: center;
    gap: 10px;
}

.plan_sec .cont .card_box ul .card .plan_title .gentei {
    display: inline-block;
    background-color: #FFCE00;
    font-size: 13px;
    text-align: center;
    padding: 0.5em 1em;
    border-radius: 100vmax;
    color: #1A1A1A;
}

.plan_sec .cont .card_box ul .card .text_box {
    padding: 20px;
}

.plan_sec .cont .card_box ul .card .text_box .title {
    margin-bottom: 12px;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.04em;
}

.plan_sec .cont .card_box ul .card .text_box .pop_btn {
    width: fit-content;
    padding: 8px 19px;
    margin-bottom: 18px;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.06em;
    border-radius: 100vmax;
    background-color: var(--main-color);
    cursor: pointer;
}

.plan_sec .cont .card_box ul .card .text_box .text {
    margin-bottom: 13px;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.06em;
}


.plan_sec .cont .card_box ul .card .price_box .title {
    font-size: 18px;
    color: var(--main-color);
}

.plan_sec .cont .card_box ul .card .price_box .price {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
}

.plan_sec .cont .card_box ul .card .price_box .price .block {
    color: #707070;
    font-size: 22px;
    font-weight: 700;
}

.plan_sec .cont .card_box ul .card .border.price_box .price .block {
    font-size: 12px;
}

.plan_sec .cont .card_box ul .card .price_box .price .block .num {
    font-size: 40px;
    letter-spacing: 0;
}

.plan_sec .cont .card_box ul .card .price_box .price .block.down {
    position: relative;
    font-size: 12px;
    padding: 0 2px;
}

.plan_sec .cont .card_box ul .card .price_box .price .block.down::before,
.plan_sec .cont .card_box ul .card .price_box .price .block.down::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 2px;
    left: 0;
}

.plan_sec .cont .card_box ul .card .price_box .price .block.down::before {
    top: calc(50% - 4px);
    border-top: solid 2px #1A1A1A;
}

.plan_sec .cont .card_box ul .card .price_box .price .block.down::after {
    bottom: calc(50% - 4px);
    border-bottom: solid 2px #1A1A1A;
}

.plan_sec .cont .card_box ul .card .price_box .price .block.down .num {
    font-size: 20px;
}

.plan_sec .cont .card_box ul .card .price_box .price .block.down .small {
    font-size: 10px;
}

.plan_sec .cont .card_box ul .card .border.price_box .price .block .num {
    font-size: 12px;
}

.plan_sec .cont .card_box ul .card .price_box .price .block .small {
    font-size: 18px;
    letter-spacing: 0.06em;
}

.plan_sec .cont .card_box ul .card .price_box .price .block.large {
    color: var(--main-color);
    flex-shrink: 0;
}

.plan_sec .cont .card_box ul .card .price_box .price .block.large .num {
    font-size: 40px;
    line-height: 1;
}

.plan_sec .cont .card_box ul .card .price_box .price .block.large .small {
    font-size: 18px;
}

.plan_sec .cont .summary_box {
    position: relative;
    padding: 30PX 50px;
    margin-bottom: 63px;
    border-radius: 8px;
    background-color: #fff;
}

.plan_sec .cont .summary_box .column {
    display: flex;
    align-items: center;
    gap: 50px;
}

.plan_sec .cont .summary_box .column .name_box {
    padding: 20px 20px 14px;
}

.plan_sec .cont .summary_box .column .name_box .en_name {
    color: var(--main-color);
    font-size: 28px;
}

.plan_sec .cont .summary_box .column .name_box .name {
    font-size: 18px;
    letter-spacing: 0.06em;
}

.plan_sec .cont .summary_box .column .text_box {
    flex-grow: 1;
    padding-left: 50px;
    border-left: solid 1px #D6D6D6;
}

.plan_sec .cont .summary_box .column .text_box .text {
    padding: 15px 0;
    font-size: 16px;
    letter-spacing: 0.06em;
}

.plan_sec .cont .summary_box .notes {
    position: absolute;
    bottom: 10px;
    right: 10px;
    color: var(--main-color);
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.06em;
}

/* pla_sec end */

/* video_popup_box */
.video_popup_box {
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 99;
}

.video_popup_box.active {
    display: block;
}

.video_popup_box_bg {
    background: rgba(0, 0, 0, .9);
    height: 100vh;
    position: absolute;
    width: 100%;
}

.video_popup_box.active::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: #000;
    opacity: .6;
}

.video_popup_box .cont {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 620px;
    padding: 50px;
    max-width: 93%;
    border-radius: 14px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .16);
    background-color: #fff;
}

.video_popup_box .cont {}

.video_popup_box .pop_up_modal_close {
    position: absolute;
    top: 0;
    right: 0;
    transform: translate(50%, -50%);
    width: 50px;
    height: 50px;
    cursor: pointer;
}

.video_popup_box .pop_up_modal_clos img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.video_popup_box .common_sec_title {
    margin-bottom: 40px;
}

.video_popup_box .common_video_box {
    height: 434px;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px 10px;
    overflow-y: scroll;
    overflow-x: hidden;
    padding-right: 26px;
}

.video_popup_box .common_video_box .img {
    height: 162px;
}

.video_popup_box .common_video_box .link .title_box {
    margin-bottom: 7px;
}

.video_popup_box .common_video_box::-webkit-scrollbar {
    width: 18px;
    height: 230px;
    border-radius: 100vmax;
}

.video_popup_box .common_video_box::-webkit-scrollbar-track {
    background: transparent;
}

.video_popup_box .common_video_box::-webkit-scrollbar-thumb {
    background-color: var(--main-color);
    border-radius: 100vmax;
}

.video_popup_box.modal {
    display: block;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 999999;
}

.video_popup_box .modal_bg {
    background: rgba(0, 0, 0, .9);
    height: 100vh;
    position: absolute;
    width: 100%;
}

/* video_popup_box end*/

/* strengths_sec */
.strengths_sec {
    padding: 110px 0 0;
}

.strengths_sec .heading {
    margin-bottom: 60px;
}

.strengths_sec .cont .column {
    display: flex;
    align-items: center;
    gap: 40px;
}

.strengths_sec .cont .column:nth-child(even) {
    flex-direction: row-reverse;
}

.strengths_sec .cont .column+.column {
    margin-top: 60px;
}

.strengths_sec .cont .column .img {
    width: 480px;
    flex-shrink: 0;
    border-radius: 12px;
    overflow: hidden;
}

.strengths_sec .cont .column .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.strengths_sec .cont .column .text_box .title {
    margin-bottom: 10px;
    font-size: 24px;
    font-weight: 900;
    letter-spacing: 0.05em;
    padding-left: 1.2em;
    background-image: url(/wp-content/themes/swell_child/image/icon/icon_logo.svg);
    background-size: 21px;
    background-position: left;
    background-repeat: no-repeat;
}

.strengths_sec .cont .column .text_box .lead {
    margin-bottom: 25px;
    color: #fff;
    font-size: 30px;
    font-weight: 700;
    letter-spacing: 0.06em;
}

.strengths_sec .cont .column .text_box .lead .bg_line {
    padding: 0 0.3em;
    display: inline-block;
    background-color: var(--main-color);
}

.strengths_sec .cont .column .text_box .lead .bg_line.pr {
    padding-right: unset;
}

.strengths_sec .cont .column .text_box .lead .bg_line:first-child {
    margin-bottom: 6px;
}

.strengths_sec .cont .column .text_box .text {
    color: #707070;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.7;
    letter-spacing: 0.03em;
}

/* strengths_sec end */

/* flow_sec */
.flow_sec {
    padding: 154px 0 120px;
}

.flow_sec .heading {
    margin-bottom: 32px;
}

.flow_sec .heading .common_sec_title {
    margin-bottom: 20px;
}

.flow_sec .heading .sub_text {
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.06em;
}

.flow_sec .cont .tab_box {
    display: flex;
    gap: 10px;
    margin-bottom: 30px;
}

.flow_sec .cont .tab_box .js_tab {
    display: grid;
    place-content: center;
    width: 180px;
    height: 50px;
    border-radius: 4px;
    background-color: #EDEDED;
    cursor: pointer;
    transition: .3s;
}

.flow_sec .cont .tab_box .js_tab:hover {
    color: #fff;
    background-color: var(--main-color);
}

.flow_sec .cont .tab_box .js_tab.active {
    color: #fff;
    background-color: var(--main-color);
}

.flow_sec .cont .tab_box .js_tab .ttl {
    font-size: 16px;
    letter-spacing: 0.07em;
}

.flow_sec .cont .panel_box {}

.flow_sec .cont .panel_box .js_panel {
    position: relative;
    z-index: 0;
}

.flow_sec .cont .panel_box .js_panel::before {
    position: absolute;
    content: "";
    top: 80px;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 3px;
    background-color: #1A1A1A;
    z-index: -1;
}

.flow_sec .cont .panel_box .js_panel .lead {
    margin-bottom: 30px;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.1em;
}

.flow_sec .cont .panel_box .js_panel .column {
    position: relative;
    display: flex;
    align-items: center;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .16);
    background-color: #fff;
}

.flow_sec .cont .panel_box .js_panel .column::after {
    content: "";
    position: absolute;
    width: 6px;
    height: 100px;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    border-radius: 4px 0 0 4px;
    background-color: var(--main-color);
}

.flow_sec .cont .panel_box .js_panel .column+.column {
    margin-top: 16px;
}

.flow_sec .cont .panel_box .js_panel .column .img_area {
    display: flex;
    gap: 40px;
    flex-shrink: 0;
    width: 393px;
}

.flow_sec .cont .panel_box .js_panel .column .img_area .img {
    flex-shrink: 0;
    width: 200px;
    height: 140px;
}

.flow_sec .cont .panel_box .js_panel .column .img_area .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.flow_sec .cont .panel_box .js_panel .column .img_area .title_box {
    flex-grow: 1;
    display: grid;
    align-content: center;
}

.flow_sec .cont .panel_box .js_panel .column .img_area .title_box .en {
    color: var(--main-color);
    font-size: 14px;
    letter-spacing: 0.07em;
}

.flow_sec .cont .panel_box .js_panel .column .img_area .title_box .title {
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.04em;
}

.flow_sec .cont .panel_box .js_panel .column .text_box {
    position: relative;
    flex-grow: 1;
}

.flow_sec .cont .panel_box .js_panel .column .text_box::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 2px;
    height: 60px;
    background-color: #E6E6E6;
}

.flow_sec .cont .panel_box .js_panel .column .text_box .text {
    padding-left: 50px;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0;
}

/* flow_sec end */

/* message_sec */
/* message_sec end */

/* faq_sec */
.faq_sec {
    padding: 105px 0 128px;
}

.faq_sec .cont {}

.faq_sec .cont .heading {
    margin-bottom: 30px;
}

.faq_sec .cont .heading .title {
    margin-bottom: 22px;
    font-size: 30px;
    font-weight: 700;
    letter-spacing: 0.14em;
}

.faq_sec .cont .heading .sub_text {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.06em;
}

.faq_sec .cont .list_box ul {}

.faq_sec .cont .list_box ul li {}

.faq_sec .cont .list_box ul li+li {
    margin-top: 40px;
}

.faq_sec .cont .list_box ul li .q_box {
    display: flex;
    align-items: center;
    gap: 33px;
    height: 70px;
    padding: 0 24px;
    border-radius: 8px;
    background-color: #FFF5F5;
}

.faq_sec .cont .list_box ul li .q_box .icon {
    flex-shrink: 0;
    color: var(--main-color);
    font-size: 26px;
    line-height: 1;
    letter-spacing: 0.07em;
}

.faq_sec .cont .list_box ul li .q_box .text {
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.07em;
}

.faq_sec .cont .list_box ul li .a_text {
    padding: 18px 24px 0;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.07em;
}

/* faq_sec end */

/* message_sec */
.message_sec {
    padding: 124px 0 113px;
    background-color: #F8F8F8;
}

.message_sec .wrap {
    width: 1040px;
}

.message_sec .heading {
    margin-bottom: 25px;
}

.message_sec .heading .title {
    font-size: 34px;
    font-weight: 400;
    letter-spacing: 0.1em;
    text-align: center;
}

.message_sec .heading .title .color {
    color: var(--main-color);
    font-size: 44px;
}

.message_sec .icon_box {
    margin-bottom: 59px;
}

.message_sec .icon_box ul {
    display: flex;
    justify-content: center;
    gap: 16px;
}

.message_sec .icon_box ul li {
    display: grid;
    place-content: center;
    width: 160px;
    height: 160px;
    border-radius: 50%;
    border: solid 1px #F0F0F0;
    background-color: #fff;
}

.message_sec .icon_box ul li .icon {
    width: 55px;
    height: 39px;
    margin: 0 auto 12px;
    text-align: center;
}

.message_sec .icon_box ul li .title {
    font-size: 18px;
    font-weight: 900;
    text-align: center;
}

.message_sec .icon_box .detail_text {
    margin-top: 16px;
    font-size: 16px;
    letter-spacing: 0.06em;
    text-align: center;
}

.message_sec .cont {}

.message_sec .cont .head_text {
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-align: center;
    margin-bottom: 21px;
}

.message_sec .cont .graph_box {
    position: relative;
    padding: 46px 50px 54px;
    margin: 0 auto 58px;
    border-radius: 14px;
    border: solid 1px #E6E6E6;
    background-color: #FDFDFD;
}

.message_sec .cont .graph_box::after {
    content: "";
    position: absolute;
    bottom: -23px;
    left: 50%;
    transform: translateX(-50%);
    width: 177px;
    height: 44px;
    background-color: var(--main-color);
    clip-path: polygon(50% 100%, 0 0, 100% 0);
}

.message_sec .cont .graph_box .img {
    width: 82.6%;
    margin: 0 auto 36px;
}

.message_sec .cont .graph_box .img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.message_sec .cont .graph_box .title {
    margin-bottom: 25px;
    font-size: 20px;
    font-weight: 900;
    letter-spacing: 0.03em;
    text-align: center;
}

.message_sec .cont .graph_box .nots_box {
    font-size: 12px;
    font-weight: 400;
    text-align: right;
}

.message_sec .cont .graph_box .nots_box .link {
    color: #00608B;
    text-decoration: underline;
}

.message_sec .cont .summary_box .summary_text {
    margin-bottom: 24px;
    padding: 0.2em 0;
    font-size: 30px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-align: center;
    background-color: var(--main-color);
}

.message_sec .cont .summary_box .summary_text .bg_line {
    display: inline-block;
    color: #fff;
    background-color: var(--main-color);
}

.message_sec .cont .summary_box .text {
    font-size: 22px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-align: center;
}

.message_sec .cont .summary_box .text .small {
    font-size: 16px;
}

/* message_sec end */

/* footer */
footer {
    position: relative;
    z-index: 9999;
    background-color: #1A1A1A;
}

footer .cont {
    padding: 47px 0 17px;
}

footer .cont .logo {
    display: block;
    width: 213px;
}

footer .cont .logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

footer .cont .copyright_box {
    color: #fff;
    font-size: 12px;
    letter-spacing: 0.07em;
    text-align: right;
}

footer .cont .copyright_box .text {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 6px;
}

footer .cont .copyright_box .text::after {
    content: "";
    flex-shrink: 0;
    width: 11px;
    height: 11px;
    background-image: url(/wp-content/themes/swell_child/image/icon/icon_footer_link.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

footer .cont .copyright_box .copyright {
    margin-top: 7px;
}

/* footer end */

/* 追従バナー */
.top_fixed_banner {
    position: fixed;
    bottom: 30px;
    right: 0;
    width: 240px;
    z-index: 999;
    display: none;
}

.top_fixed_banner .close_btn {
    position: absolute;
    top: 0;
    left: 0;
    transform: translate(-50%, -50%);
    width: 30px;
    height: 30px;
    overflow: hidden;
    cursor: pointer;
}

.top_fixed_banner .link {
    display: block;
}

.top_fixed_banner .link img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

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

.mv_sec .flex_box .cont {
    padding: 30px 0 55px;
}

.mv_sec .flex_box .cont .badge_box {
    display: flex;
    gap: 16px;
    margin-bottom: 20px;
}

.mv_sec .flex_box .cont .badge_box .badge_img {
    width: 196px;
}

.mv_sec .flex_box .cont .badge_box .badge_img picture {
    width: 100%;
    display: block;
}

.mv_sec .flex_box .cont .badge_box .badge_img picture img {
    width: 100%;
}

.mv_sec .flex_box .cont .item_box .text_box {
    margin-bottom: 10px;
    min-width: 830px;
}

.mv_sec .flex_box .cont .item_box .text_box .speech {
    width: fit-content;
    background-color: #E60012;
    color: #fff;
    border-radius: 25px;
    font-size: 24px;
    letter-spacing: .07em;
    font-weight: 900;
    padding: 0.13em 1.2em .17em;
}

.mv_sec .flex_box .cont .item_box .text_box .price_box .price {
    font-size: 18px;
    letter-spacing: .06em;
    font-weight: 500;
    color: #707070;
    position: relative;
    line-height: 1;
    margin-top: -1.3em;
    width: fit-content;
    margin-left: auto;
}

.mv_sec .flex_box .cont .item_box .text_box .price_box .price .num {
    font-size: 1.8em;
    margin: 0 .1em 0 .15em;
    line-height: 1;
    display: inline-block;
}

.mv_sec .flex_box .cont .item_box .text_box .price_box .price .mini {
    font-size: 0.7em;
}

.mv_sec .flex_box .cont .item_box .text_box .price_box .ttl {
    font-size: 74px;
    letter-spacing: .07em;
    font-weight: 700;
    line-height: 1;
    display: flex;
    align-items: center;
    margin-bottom: .1em;
}

.mv_sec .flex_box .cont .item_box .text_box .price_box .ttl .mini {
    display: inline-block;
    font-size: 0.65em;
    margin-top: .5em;
}

.mv_sec .flex_box .cont .item_box .text_box .price_box .ttl .color {
    color: #E60012;
}

.mv_sec .flex_box .cont .item_box .text_box .price_box .ttl .color .num {
    font-size: 110px;
    display: flex;
    letter-spacing: 0;
}

.mv_sec .flex_box .cont .item_box .text_box .price_box .ttl .color .column_box {
    display: flex;
    flex-direction: column-reverse;
    line-height: 1.1;
    font-size: 48px;
    width: fit-content;
    justify-content: center;
    margin-left: .1em;
    font-weight: 700;
}

.mv_sec .flex_box .cont .item_box .text_box .price_box .ttl .color .top {
    font-size: 0.37em;
    color: #1A1A1A;
    text-align: center;
    margin-bottom: .1em;
}

.mv_sec .flex_box .cont .item_box .text_box .price_box .ttl .color .bottom_box {
    display: flex;
    align-items: center;
}

.mv_sec .flex_box .cont .item_box .text_box .price_box .ttl .color .bottom_box .line {
    font-size: 48px;
    line-height: 1;
    margin-top: 0.3em;
}

.mv_sec .flex_box .cont .item_box .text_box .price_box .text {
    font-size: 26px;
    letter-spacing: .11em;
    font-weight: 700;
    line-height: 1;
    border-radius: 4px;
}

.mv_sec .flex_box .cont .item_box .mv_list ul {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 35px;
}

.mv_sec .flex_box .cont .common_cta_box .catch_text {
    margin: 0 0 10px 85px;
    font-size: 22px;
}

.mv_sec .flex_box .cont .common_cta_box .common_cta_btn.mail_tap {
    margin: 0;
}

.mv_sec .flex_box .cont .common_cta_box .catch_text .large {
    font-size: 36px;
}

.mv_sec .flex_box .cont .common_cta_box .catch_text::before,
.mv_sec .flex_box .cont .common_cta_box .catch_text::after {
    width: 22px;
    bottom: 10px;
}

.mv_sec .flex_box .cont .common_cta_box .catch_text::before {
    left: -28px;
}

.mv_sec .flex_box .cont .common_cta_box .catch_text::after {
    right: -28px;
}

.mv_sec .flex_box .cont .item_box .mv_list ul li .text {
    font-size: 16px;
    letter-spacing: .06em;
    font-weight: 700;
    background-color: #fff;
    padding: 0.7em .9em;
    color: #E60012;
    line-height: 1;
    border-radius: 4px;
    text-align: center;
}

.mv_sec .flex_box .cont .item_box .text_box .price_box .price::after {
    content: '';
    display: block;
    width: 100%;
    height: 11px;
    margin-top: 0px;
    border-top: solid 2px #707070;
    border-bottom: solid 2px #707070;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-30%);
}


/* 追従バナー end */

/* 無料相談LP */
.page_form .mv_sec .flex_box .cont {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 70px 0 55px;
}

.page_form .mv_sec .catch_area .text {
    font-size: 56px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.14em;
    text-align: center;
}

.page_form .mv_sec .catch_area .text .color {
    color: #fff;
    padding: 0 .3em;
    margin-right: 0.2em;
    background-color: var(--main-color);
}

.page_form .mv_sec .badge_box {
    display: flex;
    justify-content: center;
    gap: 30px;
    width: fit-content;
    margin: 50px auto 0;
    padding: 30px 40px;
    border-radius: 10px;
    /* background-color: #fdfceb; */
}

.page_form .mv_sec .flex_box .cont .badge_box .badge_img {
    width: 300px;
}

/* 無料相談LP end */


/* /form fv_sec */

section.form_fv_sec .img-sec {
    margin: 20px auto;
    position: relative;
    width: 80%;
}

section.form_fv_sec .img-sec .cta_img {
    position: absolute;
    bottom: 34px;
    left: 33%;
    width: 34%;
}

section.form_fv_sec .img-sec .hand_img {
    position: absolute;
    bottom: 28px;
    left: 29%;
    width: 12%;
}

/* サービス紹介動画制作LP（PC） */

.page_service_lp section.section_fv {
    position: relative;
    height: 720px;
    overflow: hidden;
    background: url(./image/service-lp/fv_back.webp) no-repeat;
    background-size: cover;
    background-position: center;
}

/* .page_service_lp section.section_fv .video_box {
    perspective: 1800px;
    perspective-origin: center center;
    will-change: transform;
    transition: .6s;
} */

.page_service_lp section.section_fv .video_box .video {
    position: absolute;
}

.page_service_lp section.section_fv .video_box .video video,
.page_service_lp section.section_fv .video_box .video img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page_service_lp section.section_fv .video_box .video.pay_route {
    width: 284px;
    left: 820px;
    top: -8px;
}

.page_service_lp section.section_fv .video_box .video.dyethewall {
    width: 540px;
    left: 1250px;
    top: 260px;
}

.page_service_lp section.section_fv .video_box .video.penguin2 {
    width: 560px;
    left: 1130px;
    top: 520px;
    z-index: 3;
}

.page_service_lp section.section_fv .video_box .video.sample {
    width: 265px;
    left: 820px;
    top: 540px;
}

.page_service_lp section.section_fv .video_box .video.template {
    width: 215px;
    left: 580px;
    top: 150px;
}

.page_service_lp section.section_fv .video_box .video.hotel {
    width: 585px;
    height: 320px;
    left: 660px;
    top: 210px;
    z-index: 2;
    perspective: 1800px;
    perspective-origin: center center;
    will-change: transform;
    transition: .6s;
}

.page_service_lp section.section_fv .video_box .video.hotel video {
    transform:
        rotateX(0deg) rotateY(-40deg) rotateZ(1deg);
}

.page_service_lp section.section_fv .video_box .video.hp {
    width: 180px;
    left: 630px;
    top: 385px;
}

.page_service_lp section.section_fv .video_box .video.editica {
    width: 555px;
    left: 1150px;
    top: -82px;
}

.page_service_lp section.section_fv .logo {
    position: absolute;
    left: 50px;
    top: 38px;
    z-index: 3;
}

.page_service_lp section.section_fv .accent_image {
    width: 291px;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 2;
}

.page_service_lp section.section_fv .wrap {
    position: relative;
    padding-top: 147px;
    z-index: 3;
}

.page_service_lp section.section_fv .text_box {
    position: relative;
    z-index: 3;
}

.page_service_lp section.section_fv .shadow {
    width: 1440px;
    height: 100%;
    position: absolute;
    left: 50%;
    top: 0;
    transform: translateX(-50%);
    z-index: 1;
}

.page_service_lp section.section_fv .main_catch {
    font-size: 62px;
    font-weight: 900;
    line-height: 1.42;
    margin-bottom: 9px;
    letter-spacing: .03em;
}

.page_service_lp section.section_fv .main_catch .accent {
    color: #E50012;
}

.page_service_lp section.section_fv .label {
    width: 687px;
    height: 53px;
    background-image: url(./image/service-lp/logo_white.svg), url(./image/service-lp/fv_label.png);
    background-repeat: no-repeat;
    background-size: 154px, contain;
    background-position: top 4px right 56.5px, center;
    color: #fff;
    padding-top: 5px;
    font-size: 22px;
    font-weight: 700;
    padding-left: 40px;
    margin-bottom: 21px;
    letter-spacing: .05em;
}

.page-template-page-store-movie .page_service_lp section.section_fv .label {
    font-size: 19px;
}

.page_service_lp.corporate-movie section.section_fv .label {
    background-size: 125px, contain;
    background-position: top 7px right 56.5px, center;
    font-size: 20px;
}

.page_service_lp section.section_fv .crown_list {
    gap: 12px;
    margin-bottom: 50px;
}

.page_service_lp section.section_fv .crown_list .crown {
    width: 217px;
}

.page_service_lp section.section_fv .contact_box .lead {
    width: fit-content;
    padding: 0 12px;
    position: relative;
    font-size: 17px;
    font-weight: 800;
    margin-bottom: 9px;
}

.page_service_lp section.section_fv .contact_box .lead:before,
.page_service_lp section.section_fv .contact_box .lead:after {
    content: "";
    width: 2px;
    height: 20px;
    background: #1A1A1A;
    position: absolute;
    bottom: 2px;
}

.page_service_lp section.section_fv .contact_box .lead:before {
    left: 0;
    transform: rotate(-25deg);
}

.page_service_lp section.section_fv .contact_box .lead:after {
    right: 0;
    transform: rotate(25deg);
}

.page_service_lp section.section_fv .contact_box .button_grid {
    gap: 15px;
}

.common_button a {
    display: block;
    width: 360px;
    line-height: 70px;
    border-radius: 6px;
    color: #fff;
    font-size: 18px;
    font-weight: 900;
    background: #FA101E;
    background: linear-gradient(180deg, rgba(250, 16, 30, 1) 0%, rgba(243, 184, 74, 1) 100%);
    padding-left: 25px;
    box-shadow: 0 6px 0 #AF010B;
    position: relative;
    text-align: left;
    transition: .3s;
}

.common_button a > * {
    pointer-events: none;
}

.common_button a:hover {
    box-shadow: none;
    transform: translateY(6px);
}

.common_button a .arrow {
    width: 27px;
    height: 27px;
    background: url(./image/service-lp/arrow_orange.svg) no-repeat;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}

.common_button.contact a {
    background: #fff;
    background: linear-gradient(#FA101E, #F3B84A);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.common_button.contact a:before {
    content: "";
    width: 100%;
    height: 70px;
    border: 2px solid #E50012;
    position: absolute;
    left: 0;
    top: 0;
    border-radius: 6px;
}

.common_button.contact a .arrow {
    background-image: url(./image/service-lp/arrow_white.svg);
}

.page_service_lp section.section_video_solution {
    padding: 123px 0 114px;
}

.page_service_lp section.section_video_solution .wrap {
    position: relative;
}

.page_service_lp section.section_video_solution .accent_triangle {
    position: absolute;
}

.page_service_lp section.section_video_solution .accent_triangle.left {
    top: 38px;
    left: -75px;
}

.page_service_lp section.section_video_solution .accent_triangle.right {
    top: 130px;
    right: -85px;
}

.page_service_lp section.section_video_solution .accent_triangle.red {
    top: -90px;
    right: -10px;
    z-index: -1;
}

.page_service_lp section.section_video_solution .section_head {
    text-align: center;
    margin-bottom: 50px;
}

.page_service_lp section.section_video_solution .section_head .section_title {
    font-size: 42px;
    font-weight: 900;
    letter-spacing: .02em;
}

.page_service_lp section.section_video_solution .section_head .section_title .accent {
    font-size: 54px;
    color: #A81621;
    position: relative;
}

.page_service_lp section.section_video_solution .section_head .section_title .accent:before {
    content: "・・・";
    position: absolute;
    left: .3em;
    top: -.9em;
    font-size: 30px;
    letter-spacing: .9em;
}

.page_service_lp section.section_video_solution .trouble_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-bottom: 87.5px;
}

.page_service_lp section.section_video_solution .trouble_item .hukidashi {
    position: relative;
    margin-bottom: 16px;
    padding: 25px 12px 32px;
    border: 2px solid #1A1A1A;
    border-radius: 10px;
    background-color: #fff;
    height: 150px;
    text-align: center;
}

.page_service_lp section.section_video_solution .trouble_item .hukidashi::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    border-style: solid;
    border-width: 10px 10px 0 10px;
    border-color: #1A1A1A transparent transparent;
    translate: -50% 100%;
}

.page_service_lp section.section_video_solution .trouble_item .hukidashi::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    border-style: solid;
    border-width: 7.2px 7.2px 0 7.2px;
    border-color: #ffffff transparent transparent;
    translate: -50% 100%;
}

.page_service_lp section.section_video_solution .trouble_item .hukidashi .trouble_label {
    position: absolute;
    left: 50%;
    top: -18px;
    background: #A81621;
    color: #fff;
    border-radius: 30px;
    line-height: 1.55;
    transform: translateX(-50%);
    padding: 3px 19px;
    font-size: 15px;
    font-weight: 900;
    letter-spacing: .06em;
    white-space: nowrap;
}
.page_service_lp.corporate-movie section.section_video_solution .trouble_item .hukidashi .trouble_label {
    width: 80%;
}

.page_service_lp section.section_video_solution .trouble_item .hukidashi .trouble_label .accent {
    font-size: 18px;
    color: #FFEE90;
}

.page_service_lp section.section_video_solution .trouble_item .hukidashi .trouble_text {
    font-size: 24px;
    font-weight: 900;
    line-height: 1.35;
    letter-spacing: .05em;
}

.page_service_lp section.section_video_solution .trouble_item .hukidashi .trouble_text .accent {
    color: #A81621;
}

.page_service_lp section.section_video_solution .trouble_item .hukidashi .trouble_text small {
    font-size: 15px;
    font-weight: 600;
    margin-bottom: 7px;
    display: inline-block;
}

.page_service_lp section.section_video_solution .trouble_item .hukidashi .illust {
    position: absolute;
}

.page_service_lp section.section_video_solution .trouble_item:nth-child(1) .hukidashi .illust {
    top: 28px;
    right: 37.5px;
}

.page-template-page-store-movie .page_service_lp section.section_video_solution .trouble_item:nth-child(1) .hukidashi .illust {
    right: 20px;
}

.page_service_lp section.section_video_solution .trouble_item:nth-child(2) .hukidashi .illust {
    top: 25.5px;
    right: 17.5px;
}

.page_service_lp section.section_video_solution .trouble_item:nth-child(3) .hukidashi .illust {
    top: 27.5px;
    right: 15.5px;
}

.page_service_lp section.section_video_solution .trouble_item .case_box {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12.1px;
}

.page_service_lp section.section_video_solution .trouble_item .case_box .icon_box {
    width: 54px;
}

.page_service_lp section.section_video_solution .trouble_item .case_box .case_label {
    font-family: 'DIN2014';
    color: #C9C4C4;
    font-weight: 700;
}

.page_service_lp section.section_video_solution .trouble_item .case_box .case_name {
    font-weight: 700;
    font-size: 17px;
    color: #333333;
}

.page_service_lp section.section_video_solution .problem_message {
    text-align: center;
    margin-bottom: 78px;
}

.page_service_lp section.section_video_solution .problem_message .message_text {
    font-size: 30px;
    font-weight: 800;
}

.page_service_lp section.section_video_solution .problem_message .message_text .dotted {
    position: relative;
}

.page_service_lp section.section_video_solution .problem_message .message_text .dotted:before {
    content: "・";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: -1em;
    font-size: 20px;
}

.page_service_lp section.section_video_solution .problem_message .message_text .accent {
    background: #ED716F;
    background: linear-gradient(180deg, rgba(237, 113, 111, 1) 0%, rgba(200, 2, 8, 1) 100%);
    color: #fff;
    font-size: 36px;
    font-weight: 900;
    padding: 0 11px;
    vertical-align: bottom;
}

.page_service_lp section.section_video_solution .arrow_box {
    text-align: center;
    margin-bottom: 65px;
}

.page_service_lp section.section_video_solution .solution_head {
    text-align: center;
    font-weight: 900;
    font-size: 38px;
    margin-bottom: 50px;
}

.page_service_lp section.section_video_solution .solution_head .solution_label {
    position: relative;
    display: inline-block;
    padding: 0 11px 0 21px;
}

.page_service_lp section.section_video_solution .solution_head .solution_label:before,
.page_service_lp section.section_video_solution .solution_head .solution_label:after {
    content: "";
    width: 3px;
    height: 40px;
    background: #1A1A1A;
    position: absolute;
    bottom: 2px;
}

.page_service_lp section.section_video_solution .solution_head .solution_label:before {
    left: 0;
    transform: rotate(-30deg);
}

.page_service_lp section.section_video_solution .solution_head .solution_label:after {
    right: 0;
    transform: rotate(30deg);
}

.page_service_lp section.section_video_solution .solution_head .solution_title {
    display: inline-block;
    position: relative;
    z-index: 2;
    line-height: 1.4;
}

.page_service_lp section.section_video_solution .solution_head .solution_title:before {
    content: "";
    width: 100%;
    height: 14px;
    background: #FFF7B9;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: -1;
    filter: blur(3px);
}

.page_service_lp section.section_video_solution .solution_head .solution_title .accent {
    color: #E50012;
    font-size: 48px;
}

.page_service_lp section.section_video_solution .solution_contents {
    align-items: center;
}

.page_service_lp section.section_video_solution .solution_contents .movie_box {
    width: 500px;
}

.page_service_lp section.section_video_solution .solution_contents .illust_box {
    width: 500px;
    max-width: 100%;
}

.page_service_lp section.section_video_solution .solution_contents .solution_text_box {
    width: 570px;
    position: relative;
}

.page_service_lp section.section_video_solution .solution_contents .solution_text_box .solution_text_title {
    font-size: 30px;
    font-weight: 900;
    line-height: 1.3;
    letter-spacing: .05em;
    border-bottom: 2px dashed #C1C1C1;
    padding-bottom: 8px;
    margin-bottom: 15px;
}

.page_service_lp section.section_video_solution .solution_contents .solution_text_box .solution_text_title .accent {
    color: #E50012;
    font-size: 40px;
}

.page_service_lp section.section_video_solution .solution_contents .solution_text_box .solution_text {
    color: #333333;
    letter-spacing: .05em;
    line-height: 1.7;
}

.page_service_lp section.section_video_solution .solution_contents .solution_text_box .solution_text .accent {
    color: #DE1E43;
    font-weight: 700;
}

.page_service_lp section.section_editica {
    background: url(./image/service-lp/editica_back.webp) no-repeat;
    background-size: cover;
    background-position: center;
    padding: 110px 0 120px;
}

.page_service_lp section.section_editica .section_head {
    text-align: center;
    width: fit-content;
    margin: 0 auto 50px;
}

.page_service_lp section.section_editica .section_head .logo_box {
    font-size: 29px;
    font-weight: 700;
}

.page_service_lp section.section_editica .section_head .logo_box {
    margin-bottom: 10px;
}

.page_service_lp section.section_editica .section_head .logo_box img {
    width: 177px;
    vertical-align: top;
    margin-right: 10px;
}

.page_service_lp section.section_editica .section_head .section_title {
    font-size: 46px;
    font-weight: 900;
    line-height: 1.3;
    margin-bottom: 27px;
    letter-spacing: .05em;
    position: relative;
    padding: 0 62px;
}

.page_service_lp section.section_editica .section_head .section_title:before,
.page_service_lp section.section_editica .section_head .section_title:after {
    content: "";
    width: 62px;
    height: 171px;
    background: url(./image/service-lp/ribon_left.svg) no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    bottom: 0;
}

.page_service_lp section.section_editica .section_head .section_title:before {
    left: 0;
}

.page_service_lp section.section_editica .section_head .section_title:after {
    right: 0;
    background-image: url(./image/service-lp/ribon_right.svg);
}

.page_service_lp section.section_editica .section_head .section_title .accent {
    color: #E50012;
}

.page_service_lp section.section_editica .section_head .section_title small {
    font-size: 40px;
}

.page_service_lp section.section_editica .section_head .lead_text p {
    letter-spacing: .05em;
    color: #333333;
}

.page_service_lp section.section_editica .change_head {
    text-align: center;
    width: fit-content;
    margin: 0 auto 26px;
    position: relative;
    padding: 0 10px 0 24px;
    letter-spacing: .1em;
}

.page_service_lp section.section_editica .change_head .accent {
    color: #E50012;
}

.page_service_lp section.section_editica .change_head:before,
.page_service_lp section.section_editica .change_head:after {
    content: "";
    width: 3px;
    height: 40px;
    background: #1A1A1A;
    position: absolute;
    bottom: 0;
}

.page_service_lp section.section_editica .change_head:before {
    left: 0;
    transform: rotate(-25deg);
}

.page_service_lp section.section_editica .change_head:after {
    right: 0;
    transform: rotate(25deg);
}

.page_service_lp section.section_editica .change_head .change_title {
    font-size: 30px;
    font-weight: 900;
}

.page_service_lp section.section_editica .comparison_box {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
}

.page_service_lp section.section_editica .comparison_box .comparison_item {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 0 6px rgba(0, 0, 0, 0.08);
    padding: 15px;
    padding-bottom: 39px;
    position: relative;
}

.page_service_lp section.section_editica .comparison_box .comparison_item.movie {
    border: 3px solid #E50012;
}

.page_service_lp section.section_editica .comparison_box .comparison_item .arrow_box {
    position: absolute;
    right: -30px;
    top: 50%;
    transform: translateY(-50%);
}

.page_service_lp section.section_editica .comparison_box .comparison_item .comparison_label {
    line-height: 60px;
    background: #DEDEDE;
    border-radius: 8px;
    text-align: center;
    font-size: 24px;
    font-weight: 800;
    margin-bottom: 22px;
}

.page_service_lp section.section_editica .comparison_box .comparison_item.movie .comparison_label {
    background: #ED716F;
    background: linear-gradient(141deg, rgba(237, 113, 111, 1) 0%, rgba(200, 2, 8, 1) 100%);
    color: #fff;
}

.page_service_lp section.section_editica .comparison_box .comparison_item .image_box {
    text-align: center;
    margin-bottom: 34px;
}

.page_service_lp section.section_editica .comparison_box .comparison_item.movie .image_box {
    margin-bottom: 11px;
}

.page_service_lp section.section_editica .comparison_box .comparison_item.movie .image_box img {
    width: 317px;
}

.page_service_lp section.section_editica .comparison_box .comparison_item ul.comparison_list {
    margin: 0 35px;
}

.page_service_lp section.section_editica .comparison_box .comparison_item ul.comparison_list li {
    padding-left: 42px;
    padding-bottom: 17px;
    border-bottom: 2px dashed #C1C1C1;
    font-size: 17px;
    font-weight: 600;
    position: relative;
    letter-spacing: .03em;
}

.page_service_lp section.section_editica .comparison_box .comparison_item ul.comparison_list li:before {
    content: "";
    width: 27px;
    height: 24px;
    background: url(./image/service-lp/icon_attention.svg) no-repeat;
    background-position: center;
    background-size: contain;
    position: absolute;
    left: 0;
    top: 5px;
}

.page_service_lp section.section_editica .comparison_box .comparison_item.movie ul.comparison_list li:before {
    width: 38px;
    height: 36px;
    top: -5px;
    background-image: url(./image/service-lp/icon_check.svg);
}

.page_service_lp section.section_editica .comparison_box .comparison_item ul.comparison_list li:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.page_service_lp section.section_editica .comparison_box .comparison_item ul.comparison_list li+li {
    margin-top: 16px;
}

.page_service_lp section.section_editica .comparison_box .comparison_item ul.comparison_list li .accent {
    font-size: 22px;
    font-weight: 800;
}

.page_service_lp section.section_editica .comparison_box .comparison_item ul.comparison_list li .red {
    color: #E50012;
}

.page_service_lp .common_section_head {
    text-align: center;
    margin-bottom: 50px;
}

.page_service_lp .common_section_head .eng {
    font-family: 'DIN2014';
    color: #EFBFC3;
    font-size: 28px;
    font-weight: 700;
}

.page_service_lp .common_section_head .section_title {
    font-size: 46px;
    font-weight: 900;
    line-height: 1.35;
    letter-spacing: .03em;
}

.page_service_lp .common_section_head .section_title small {
    font-size: 40px;
    display: block;
}

.page_service_lp .common_section_head .section_title .accent {
    color: #E50012;
}

.page_service_lp .common_section_head .section_title .accent .num {
    font-size: 60px;
    line-height: 1;
}

.page_service_lp .common_section_head .lead_text {
    margin-top: 16px;
    color: #333333;
}

.page_service_lp section.section_feature {
    padding: 100px 0 157px;
}

.page_service_lp section.section_feature .feature_box {
    background: #FFF5F5;
    border: 3px solid #1A1A1A;
    border-radius: 8px;
    padding: 65px;
}

.page_service_lp section.section_feature .feature_box .feature_item {
    padding-bottom: 50px;
    border-bottom: 2px dashed #ADADAD;
    align-items: center;
}

.page_service_lp section.section_feature .feature_box .feature_item:last-child {
    padding-bottom: 0;
    border-bottom: none;
}

.page_service_lp section.section_feature .feature_box .feature_item+.feature_item {
    margin-top: 50px;
}

.page_service_lp section.section_feature .feature_box .feature_item .image_box {
    width: 420px;
}

.page_service_lp section.section_feature .feature_box .feature_item:nth-child(even) .image_box {
    order: 2;
}

.page_service_lp section.section_feature .feature_box .feature_item .text_box {
    width: 520px;
}

.page_service_lp section.section_feature .feature_box .feature_item .text_box .feature_label {
    font-size: 32px;
    font-family: 'DIN2014';
    padding-left: 32px;
    background: url(./image/service-lp/icon_logo.svg) no-repeat;
    background-position: 0;
    font-weight: 700;
}

.page_service_lp section.section_feature .feature_box .feature_item .text_box .feature_title {
    background: #EB5451;
    background: linear-gradient(180deg, rgba(235, 84, 81, 1) 0%, rgba(224, 63, 62, 1) 46%, rgba(190, 0, 6, 1) 100%);
    color: #fff;
    font-size: 34px;
    width: fit-content;
    padding: 0 14.2px;
    border-radius: 4px;
    font-weight: 900;
    margin-bottom: 23px;
    letter-spacing: .02em;
}

.page-template-page-store-movie .page_service_lp section.section_feature .feature_box .feature_item .text_box .feature_title {
    font-size: 33px;
}

.page_service_lp section.section_feature .feature_box .feature_item .text_box .feature_title .accent {
    background: linear-gradient(#FFF8D3, #FFDB7B);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.page_service_lp section.section_feature .feature_box .feature_item .text_box .feature_text {
    letter-spacing: .08em;
    color: #333333;
}

.page_service_lp section.section_common_cta {
    background: url(./image/service-lp/cta_back.webp) no-repeat;
    background-size: cover;
    background-position: center;
    position: relative;
    padding: 58px 0;
    text-align: center;
}

.page_service_lp section.section_common_cta:before {
    content: "";
    width: 100%;
    height: 100%;
    background: #C7000C;
    background: linear-gradient(150deg, rgba(199, 0, 12, 1) 0%, rgba(173, 119, 17, 1) 100%);
    opacity: .8;
    position: absolute;
    left: 0;
    top: 0;
}

.page_service_lp section.section_common_cta:after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background: url(./image/service-lp/mask_accent.svg) no-repeat;
    background-size: cover;
    background-position: center top;
    z-index: 2;
}

.page_service_lp section.section_common_cta .wrap {
    position: relative;
    z-index: 3;
    color: #fff;
}

.page_service_lp section.section_common_cta .label {
    position: absolute;
    border: 2px solid #1A1A1A;
    border-radius: 6px;
    text-align: center;
    background: #FFF79B;
    background: linear-gradient(180deg, rgba(255, 247, 155, 1) 0%, rgba(255, 187, 119, 1) 100%);
    font-size: 30px;
    font-weight: 800;
    line-height: 52px;
    padding: 0 22px 0 32px;
    left: 50%;
    top: -28px;
    transform: translateX(-50%);
}

.page_service_lp section.section_common_cta .label small {
    font-size: 26px;
}

.page_service_lp section.section_common_cta .label::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    border-style: solid;
    border-width: 16px 18px 0 18px;
    border-color: #1A1A1A transparent transparent;
    translate: -50% 100%;
}

.page_service_lp section.section_common_cta .label::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    border-style: solid;
    border-width: 13.3px 15px 0 15px;
    border-color: #FFBB77 transparent transparent;
    translate: -50% 100%;
}

.page_service_lp section.section_common_cta .catch {
    font-size: 46px;
    font-weight: 900;
    line-height: 1.35;
    margin-bottom: 10px;
    letter-spacing: .05em;
}

.page_service_lp section.section_common_cta .catch small {
    font-size: 40px;
}

.page_service_lp section.section_common_cta .text {
    margin-bottom: 28px;
    letter-spacing: .05em;
}

.common_contact_box {
    background: #fff;
    width: 900px;
    margin: 0 auto;
    border-radius: 8px;
    padding: 22px 45px 24px 45px;
}

.common_contact_box .lead {
    color: initial;
}

.common_contact_box .lead {
    position: relative;
    width: fit-content;
    margin: 0 auto 12px;
    padding: 0 20px;
    font-size: 18px;
    font-weight: 800;
}

.common_contact_box .lead:before,
.common_contact_box .lead:after {
    content: "";
    width: 2px;
    height: 20px;
    background: #1A1A1A;
    position: absolute;
    bottom: 2px;
}

.common_contact_box .lead:before {
    left: 0;
    transform: rotate(-25deg);
}

.common_contact_box .lead:after {
    right: 0;
    transform: rotate(25deg);
}

.common_contact_box .button_grid {
    position: relative;
}

.common_contact_box .button_grid:before {
    content: "";
    width: 2px;
    height: 65px;
    border-left: 2px dashed #707070;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.page_service_lp section.section_use_cases {
    background: url(./image/service-lp/user_case_back.webp) no-repeat;
    background-size: cover;
    background-position: center;
    padding: 100px 0;
}

.page_service_lp section.section_use_cases .cont {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 0 6px rgba(0, 0, 0, 0.08);
    padding: 60px 70px 64px 70px;
}

.page_service_lp section.section_use_cases .cont .tab-container ,
.page_service_lp section.section_works .cont .tab-container {
    display: flex;
    justify-content: center;
    gap: 20px;
}

.page_service_lp section.section_use_cases .cont .content ,
.page_service_lp section.section_works .cont .content{
    display: none;
}

.page_service_lp section.section_use_cases .cont .content.show,
.page_service_lp section.section_works .cont .content.show {
    display: block;
}

.page_service_lp section.section_use_cases .cont .tab-container .tab ,
.page_service_lp section.section_works .cont .tab-container .tab {
    width: 210px;
    line-height: 54px;
    background: #EFEFEF;
    border-radius: 8px 8px 0 0;
    text-align: center;
    font-size: 20px;
    font-weight: 900;
    cursor: pointer;
}

.page_service_lp section.section_use_cases .cont .tab-container .tab.active ,
.page_service_lp section.section_works .cont .tab-container .tab.active {
    background: #ED716F;
    background: linear-gradient(180deg, rgba(237, 113, 111, 1) 0%, rgba(200, 2, 8, 1) 100%);
    color: #fff;
}

.page_service_lp section.section_use_cases .cont .content-container {
    margin-bottom: 80px;
}

.page_service_lp section.section_use_cases .cont .content-container .content {
    padding: 0 78.5px 0 90px;
    border: 2px solid #1A1A1A;
    border-radius: 8px;
    background: url(./image/service-lp/stripe.svg) no-repeat;
    background-size: cover;
    background-position: center;
}


.page_service_lp section.section_works .cont .content-container .content {
    padding: 50px 78.5px 30px 90px;
    border-radius: 8px;
    background: url(./image/service-lp/stripe.svg) no-repeat;
    background-size: cover;
    background-position: center;
}



.page_service_lp section.section_use_cases .cont .content-container .content .image {
    width: 385px;
    height: 370px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 20px;
}

.page_service_lp section.section_use_cases .cont .content-container .content:nth-child(3) .image  {
    align-items: flex-end;
    width: 404px;
}

.page_service_lp section.section_use_cases .cont .content-container .content:nth-child(3) .image img {
    width: 100%;
}

.page_service_lp section.section_use_cases .cont .content-container .content .image img {
    width: 385px;
}

.page_service_lp section.section_use_cases .cont .content-container .content .text_box{
    width: 490px;
    padding-top: 87px;
}

.page_service_lp section.section_works .cont .content-container .content .text_box{
    width: 100%;
}


.page_service_lp section.section_use_cases .cont .content-container .content .text_box .catch,
.page_service_lp section.section_works .cont .content-container .content .text_box .catch {
    font-size: 34px;
    font-weight: 900;
    letter-spacing: .03em;
}

.page_service_lp section.section_use_cases .cont .content-container .content .text_box .catch:first-letter,
.page_service_lp section.section_works .cont .content-container .content .text_box .catch:first-letter {
    color: #E50012;
}

.page_service_lp section.section_use_cases .cont .content-container .content .text_box .catch small ,
.page_service_lp section.section_works .cont .content-container .content .text_box .catch small {
    font-size: 22px;
}

.page_service_lp.corporate-movie section.section_use_cases .cont .content-container .content .text_box .catch small, .page_service_lp section.section_works .cont .content-container .content .text_box .catch small {
    display: block;
    margin-bottom: 5px;
}

.page_service_lp section.section_use_cases .cont .content-container .content .text_box .lead,
.page_service_lp section.section_works .cont .content-container .content .text_box .lead {
    font-size: 18px;
    font-weight: 700;
    border-bottom: 2px dashed #C1C1C1;
    padding-bottom: 13px;
    margin-bottom: 20px;
    color: #333333;
}

.page_service_lp section.section_use_cases .cont .content-container .content .text_box .text ,
.page_service_lp section.section_works .cont .content-container .content .text_box .text {
    font-size: 15px;
    letter-spacing: .05em;
    color: #333333;
}

.page_service_lp section.section_usage_flow .common_section_head .section_title {
    font-size: 44px;
}

.page_service_lp section.section_usage_flow .flow_step_list {
    position: relative;
}

.page_service_lp section.section_usage_flow .bar {
    text-align: center;
    margin-bottom: 28px;
}

.page_service_lp section.section_usage_flow .flow_step_list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.page_service_lp section.section_usage_flow .flow_step_list .flow_step_item {
    background: #FFF5F5;
    border-radius: 8px;
    padding: 15px 20px 37px;
    position: relative;
}

.page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_head {
    position: absolute;
    left: 50%;
    top: -64px;
    transform: translateX(-50%);
    width: 54px;
    height: 54px;
    color: #fff;
    text-align: center;
    z-index: 2;
}

.page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_head:after {
    content: "";
    width: 100%;
    height: 100%;
    background: #ED716F;
    background: linear-gradient(180deg, rgba(237, 113, 111, 1) 0%, rgba(200, 2, 8, 1) 100%);
    border-radius: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;

}

.page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_head .step_num {
    line-height: 1;
    display: inline-block;
    font-family: 'DIN2014';
    font-size: 24px;
    font-weight: 700;
}

.page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_head .step_num small {
    font-size: 15px;
}

.page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_head:before {
    content: "";
    width: 3px;
    height: 20px;
    background: #E50012;
    position: absolute;
    left: 50%;
    bottom: -10px;
    z-index: -1;
    transform: translateX(-50%);
}

.page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_box {
    text-align: center;
}

.page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_box .step_title {
    background: #fff;
    border-radius: 4px;
    text-align: center;
    font-size: 20px;
    font-weight: 800;
    line-height: 42px;
    border: 2px solid;
    margin-bottom: 24px;
}

.page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_box .step_image {
    text-align: center;
    margin-bottom: 7.5px;
}

.page_service_lp section.section_usage_flow .flow_step_list .flow_step_item:nth-child(1) .step_box .step_image {
    margin-top: 54px;
    margin-bottom: 34px;
}

.page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_box .step_text {
    font-size: 17px;
    font-weight: 800;
}

.page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_box .step_text small {
    font-size: 13px;
    font-weight: 500;
    color: #777777;
}

.page_service_lp section.section_usage_flow .flow_step_list .flow_step_item:nth-child(1) .step_box .step_text.large {
    font-size: 18px;
}

.page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_box .step_text:first-letter {
    color: #E50012;
}

.page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_box ul li {
    border-bottom: 2px dashed #DEC8C8;
    padding-bottom: 14px;
    position: relative;
}

.page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_box ul li:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 16px solid transparent;
    border-left: 16px solid transparent;
    border-top: 14px solid #F0D1D1;
    border-bottom: 0;
    position: absolute;
    left: 50%;
    bottom: -10px;
    transform: translateX(-50%);
}

.page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_box ul li:last-child::after {
    display: none;
}

.page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_box ul li+li {
    margin-top: 18px;
}

.page_service_lp section.section_usage_flow .flow_step_list .flow_step_item:nth-child(4) .step_box ul li+li {
    margin-top: 25.5px;
}

.page_service_lp section.section_usage_flow .flow_step_list .flow_step_item:nth-child(3) .step_box ul li+li {
    margin-top: 13px;
}

.page_service_lp section.section_works {
    padding: 90px 0 146px;
    overflow: hidden;
}

.page_service_lp section.section_works .wrap {
    position: relative;
}

.page_service_lp section.section_works .accent_triangle {
    position: absolute;
    z-index: -1;
}

.page_service_lp section.section_works .accent_triangle.left {
    left: -72px;
    top: 60px;
}

.page_service_lp section.section_works .accent_triangle.right {
    right: -125px;
    top: 338px;
}

.page_service_lp section.section_works .accent_triangle.right img {
    width: 324px;
}

.page_service_lp section.section_works .slide {
    border: 3px solid #1A1A1A;
    border-radius: 8px;
    padding: 56px 60px;
    background: #fff;
    margin: 0 25px;
    width: 1140px;
}

.page_service_lp section.section_works .slider_box{
    position: relative;
}

.page_service_lp section.section_works .slider_box::before {
    content: "";
    position: absolute;
    top: 0px;
    left: 0px;
    width: 90px;
    height: 90px;
     background: #ED716F;
    background: linear-gradient(180deg, rgba(237, 113, 111, 1) 0%, rgba(200, 2, 8, 1) 100%);
    clip-path: polygon(0 0, 100% 0, 0 100%);
    z-index: 1;
    border-top-left-radius: 7px;
}

.page_service_lp section.section_works .slider_box::after {
    content: "Pick\A up!";
    white-space: pre;
    position: absolute;
    top: 8px;
    left: 8px;
    color: #fff;
    font-weight: bold;
    line-height: 1;
    z-index: 2;
    font-size: 20px;
}

.page_service_lp section.section_works .slide .in_flex {
    align-items: center;
    margin-bottom: 50px;
}

.page_service_lp section.section_works .slide .image {
    width: 475px;
    position: relative;
    cursor: pointer;
}

.page_service_lp section.section_works .slide .video {
    width: 475px;
    position: relative;
    cursor: pointer;
    height: 270px;
}

.page_service_lp section.section_works .slide .image:before {
    content: "";
    width: 80px;
    height: 80px;
    background: url(./image/service-lp/icon_play.png) no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.page_service_lp section.section_works .slide .text_box {
    width: 490px;
}

.page_service_lp section.section_works .slide .text_box .company {
    color: #AAAAAA;
    font-size: 17px;
}

.page_service_lp section.section_works .slide .text_box .name {
    font-size: 32px;
    font-weight: 900;
    border-bottom: 2px dashed #C1C1C1;
    padding-bottom: 9px;
    margin-bottom: 13px;
}

.page_service_lp section.section_works .slide .text_box .name:first-letter {
    color: #E50012;
}

.page_service_lp section.section_works .slide .text_box .name small {
    font-size: 26px;
}

.page_service_lp section.section_works .slide .text_box .lead {
    font-size: 15px;
    margin-bottom: 30px;
    color: #333333;
}

.page_service_lp section.section_works .slide .text_box .button {
    background: #ED716F;
    background: linear-gradient(180deg, rgba(237, 113, 111, 1) 0%, rgba(200, 2, 8, 1) 100%);
    color: #fff;
    width: 200px;
    line-height: 50px;
    padding-left: 28px;
    font-weight: 900;
    position: relative;
    border-radius: 4px;
    letter-spacing: .03em;
    transition: .3s;
    border: 2px solid;
    cursor: pointer;
}

.page_service_lp section.section_works .slide .text_box .button:after {
    content: "";
    width: 25px;
    height: 25px;
    background: url(./image/service-lp/arrow_red.svg) no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    right: 14.8px;
    top: 50%;
    transform: translateY(-50%);
}

.page_service_lp section.section_works .slide .text_box .button:hover {
    background: #fff;
    color: #E50012;
    border: 2px solid;
}

.page_service_lp section.section_works .slide .text_box .button:hover::after {
    background-image: url(./image/service-lp/arrow_red_2.svg);
}

.page_service_lp .modal {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, .6);
    display: none;
    z-index: 9999;
}

.page_service_lp .modal.is-active {
    display: flex;
    align-items: center;
    justify-content: center;
}

.page_service_lp .modal .js_modal_close {
    position: absolute;
    top: -20px;
    right: -21px;
}

.page_service_lp .modal_inner {
    background: #fff;
    padding: 70px 100px 60px;
    width: 1240px;
    height: 630px;
    position: relative;
    box-shadow: 0 0 6px rgba(0, 0, 0, 0.08);
    border-radius: 8px;
}

.page_service_lp .modal_inner .in_wrap {
    overflow: scroll;
    height: 100%;
}

.page_service_lp .modal_inner .in_flex {
    align-items: center;
    margin-bottom: 30px;
}

.page_service_lp .modal_inner .image {
    width: 475px;
    position: relative;
}

.page_service_lp .modal_inner .video {
    width: 475px;
    position: relative;
    height: 267px;
}

.page_service_lp .modal_inner .video iframe {
    width: 100%;
    height: 100%;
    max-height: unset !important;
}

.page_service_lp .modal_inner .image:before {
    content: "";
    width: 80px;
    height: 80px;
    background: url(./image/service-lp/icon_play.png) no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.page_service_lp .modal_inner .text_box {
    width: 490px;
}

.page_service_lp .modal_inner .text_box .company {
    color: #AAAAAA;
    font-size: 17px;
}

.page_service_lp .modal_inner .text_box .name {
    font-size: 32px;
    font-weight: 900;
    border-bottom: 2px dashed #C1C1C1;
    padding-bottom: 9px;
    margin-bottom: 13px;
}

.page_service_lp .modal_inner .text_box .name:first-letter {
    color: #E50012;
}

.page_service_lp .modal_inner .text_box .name small {
    font-size: 26px;
}

.page_service_lp .modal_inner .text_box .lead {
    font-size: 15px;
    margin-bottom: 30px;
    color: #333333;
}

.page_service_lp .modal_inner .information_box {
    background: #FFF5F5;
    border-radius: 10px;
    padding: 51px 60px 56px;
}

.page_service_lp .modal_inner .information_box .box+.box {
    margin-top: 70px;
}

.page_service_lp .modal_inner .information_box .box .box_title,
.page_service_lp .section_works .cont .text_box .box_title {
    font-size: 20px;
    font-weight: 700;
    color: #F57473;
    position: relative;
    padding-left: 17px;
    margin-bottom: 23px;
}

.page_service_lp .modal_inner .information_box .box .box_title:before ,
.page_service_lp .section_works .cont .text_box .box_title:before  {
    content: "";
    width: 4px;
    height: 30px;
    background: #ED716F;
    background: linear-gradient(180deg, rgba(237, 113, 111, 1) 0%, rgba(200, 2, 8, 1) 100%);
    position: absolute;
    left: 0;
    top: 0;
}

.page_service_lp .modal_inner .information_box .box dl dt,
.page_service_lp .section_works .cont .text_box dl dt {
    font-size: 24px;
    font-weight: 900;
    letter-spacing: .07em;
    border-bottom: 2px dashed #A09494;
    padding-bottom: 17px;
    margin-bottom: 24px;
}

.page_service_lp .modal_inner .information_box .box dl dt .accent ,
.page_service_lp .section_works .cont .text_box dl dt .accent {
    color: #E50012;
}

.page_service_lp .modal_inner .information_box .box dl dd ,
.page_service_lp .section_works .cont .text_box dl dd {
    color: #333333;
    line-height: 1.7;

}

.page_service_lp section.section_works .slick-list {
    overflow: visible;
}

.page_service_lp section.section_works .slick-dots {
    bottom: -46px;
    display: none;
}

.page_service_lp section.section_works .slick-dots li {
    width: 14px;
    height: 14px;
    background: #DBDBDB;
    border-radius: 100%;
    margin: 0 13px;
}

.page_service_lp section.section_works .slick-dots li.slick-active {
    background: #D00010;
}

.page_service_lp section.section_works .slick-dots li button {
    display: none;
}

.page_service_lp section.section_works .slick-arrow {
    width: 50px;
    height: 50px;
    background: url(./image/service-lp/arrow_prev.svg) no-repeat;
    background-size: contain;
    background-position: center;
    z-index: 2;
}

.page_service_lp section.section_works .slick-arrow:before {
    display: none;
}

.page_service_lp section.section_works .slick-next {
    background-image: url(./image/service-lp/arrow_next.svg);
}

.page_service_lp section.section_strategy {
    background: url(./image/service-lp/strategy_back.webp) no-repeat;
    background-size: cover;
    background-position: center;
    padding: 100px 0 107px;
}

.page_service_lp section.section_strategy .common_section_head {
    margin-bottom: 36px;
}

.page_service_lp section.section_strategy .common_section_head .section_title {
    font-size: 42px;
}

.page_service_lp section.section_strategy .common_section_head .section_title .accent {
    font-size: 50px;
}

.page_service_lp section.section_strategy .strategy_catch {
    width: fit-content;
    margin: 0 auto 18px;
    font-size: 20px;
    font-weight: 600;
    position: relative;
    padding: 0 20px;
}

.page_service_lp section.section_strategy .strategy_catch:before,
.page_service_lp section.section_strategy .strategy_catch:after {
    content: "";
    width: 2.5px;
    height: 28px;
    background: #5D5D5D;
    position: absolute;
    bottom: -2px;
}

.page_service_lp section.section_strategy .strategy_catch:before {
    left: 0;
    transform: rotate(-30deg);
}

.page_service_lp section.section_strategy .strategy_catch:after {
    right: 0;
    transform: rotate(30deg);
}

.page_service_lp section.section_strategy .strategy_list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    margin-bottom: 38px;
}

.page_service_lp section.section_strategy .strategy_item {
    background: #fff;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.14);
    border-radius: 8px;
    padding: 28px 70px 22px 94px;
    background-image: url(./image/service-lp/icon_check_circle.svg);
    background-repeat: no-repeat;
    background-position: 20px;
}

.page_service_lp section.section_strategy .strategy_item .strategy_text {
    font-size: 24px;
    font-weight: 900;
    border-bottom: 2px dashed #AAAAAA;
    padding-bottom: 10px;
    letter-spacing: .05em;
}

.page_service_lp section.section_strategy .strategy_item .strategy_text small {
    font-size: 18px;
}

.page_service_lp section.section_strategy .strategy_item .strategy_text .accent {
    color: #D00010;
}

.page_service_lp section.section_strategy .message_box {
    text-align: center;
}

.page_service_lp section.section_strategy .message_box .message_text {
    font-size: 30px;
    font-weight: 800;
    margin-bottom: 7px;
    letter-spacing: .08em;
}

.page_service_lp section.section_strategy .message_box .message_accent {
    display: inline-block;
    background: #ED716F;
    background: linear-gradient(180deg, rgba(237, 113, 111, 1) 0%, rgba(200, 2, 8, 1) 100%);
    color: #fff;
    font-size: 36px;
    font-weight: 900;
    border-radius: 4px;
    padding: 0 0 0 17px;
    letter-spacing: .04em;
}

.page_service_lp section.section_support {
    padding: 100px 0 110px;
}

.page_service_lp section.section_support .common_section_head .section_title {
    font-size: 48px;
    letter-spacing: .05em;
}

.page_service_lp section.section_support .common_section_head .section_title small {
    font-size: 26px;
    margin-top: .5em;
}

.page_service_lp section.section_support .support_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-bottom: 34px;
}

.page_service_lp section.section_support .support_item {
    background: #FFF8F8;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    position: relative;
    text-align: center;
}

.page_service_lp section.section_support .support_item:before {
    content: "";
    width: 100%;
    height: 100%;
    background: url(./image/service-lp/stripe_mask.png) no-repeat;
    background-position: center;
    background-size: cover;
    position: absolute;
    left: 0;
    top: 0;
}

.page_service_lp section.section_support .support_item .in_wrap {
    position: relative;
    overflow: hidden;
    padding: 132.7px 65px 22px;
}

.page_service_lp section.section_support .support_item .in_wrap:after {
    content: "";
    width: 220px;
    height: 220px;
    background: #FFE6E6;
    opacity: .4;
    border-radius: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
}

.page_service_lp section.section_support .support_item * {
    position: relative;
    z-index: 2;
}

.page_service_lp section.section_support .support_item .support_label {
    font-family: 'DIN2014';
    background: #ED716F;
    background: linear-gradient(180deg, rgba(237, 113, 111, 1) 0%, rgba(200, 2, 8, 1) 100%);
    border-radius: 17px;
    color: #fff;
    text-align: center;
    line-height: 30px;
    font-size: 17px;
    position: absolute;
    left: 50%;
    top: -15px;
    transform: translateX(-50%);
    width: 116px;
    z-index: 3;
    font-weight: 700;
}

.page_service_lp section.section_support .support_item .support_label:before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 12px solid transparent;
    border-left: 12px solid transparent;
    border-top: 8px solid #C80208;
    border-bottom: 0;
    position: absolute;
    left: 50%;
    bottom: -7px;
    transform: translateX(-50%);
}

.page_service_lp section.section_support .support_item .support_text {
    display: inline-block;
    font-size: 24px;
    font-weight: 900;
    padding-left: 33px;
    background: url(./image/service-lp/icon_check.svg) no-repeat;
    background-size: 33px;
    background-position: 0 0;
    border-bottom: 2px dashed #AF9B9B;
    padding-bottom: 7px;
}

.page_service_lp section.section_support .support_item .support_text:first-letter {
    color: #E50012;
}

.page_service_lp section.section_support .support_item .image_box {
    position: absolute;
    left: 50%;
    top: 47px;
    transform: translateX(-50%);
}

.page_service_lp section.section_support .support_item:nth-child(2) .image_box {
    top: 36.2px;
}

.page_service_lp section.section_support .support_item:nth-child(3) .image_box {
    top: 42.3px;
}

.page_service_lp section.section_support .support_message {
    text-align: center;
    margin-bottom: 18px;
}

.page_service_lp section.section_support .support_message .support_title {
    font-size: 38px;
    font-weight: 800;
    width: fit-content;
    margin: 0 auto 70px;
    position: relative;
    line-height: 1.5;
    letter-spacing: .04em;
}

.page_service_lp section.section_support .support_message .support_title:before {
    content: "";
    width: 100%;
    height: 14px;
    background: #FFF7B9;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: -1;
    filter: blur(3px);
}

.page_service_lp section.section_support .support_message .support_title .accent {
    color: #E50012;
}

.page_service_lp section.section_support .support_message .support_sub_title {
    width: fit-content;
    margin: 0 auto;
    font-size: 24px;
    font-weight: 800;
    padding: 0 30px 0 44px;
    position: relative;
}

.page_service_lp section.section_support .support_message .support_sub_title:before,
.page_service_lp section.section_support .support_message .support_sub_title:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 15px solid transparent;
    border-left: 15px solid transparent;
    border-top: 18px solid #FFB7B5;
    border-bottom: 0;
    position: absolute;
    top: 13px;
}

.page_service_lp section.section_support .support_message .support_sub_title:before {
    left: 0;
}

.page_service_lp section.section_support .support_message .support_sub_title:after {
    right: 0;
}

.page_service_lp section.section_support .creator_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    width: 1060px;
    margin: 0 auto;
    padding: 0px 140px;
}

.page_service_lp section.section_support .creator_item {
    position: relative;
}

.page_service_lp section.section_support .creator_item .catch_box {
    position: absolute;
    left: 0;
    top: 225px;
    z-index: 2;
    font-size: 20px;
    font-weight: 700;
    color: #fff;
}

.page_service_lp section.section_support .creator_item .catch_box span {
    background: #ED716F;
    background: linear-gradient(174deg, rgba(237, 113, 111, 1) 0%, rgba(200, 2, 8, 1) 100%);
    padding: 2px 11px 2px 13px;
    display: inline-block;
    letter-spacing: .03em;
}

.page_service_lp section.section_support .creator_item .catch_box span:last-child {
    margin-top: 7px;
}

.page_service_lp section.section_support .creator_item .image_box {
    margin-bottom: 10px;
}

.page_service_lp section.section_support .creator_item .position {
    font-size: 20px;
    font-weight: 700;
    padding-left: 25px;
    background: url(./image/service-lp/icon_logo.svg) no-repeat;
    background-position: 0;
    background-size: 18px;
    margin-bottom: 5px;
    letter-spacing: .05em;
}

.page_service_lp section.section_support .creator_item .name {
    font-size: 14px;
    padding-left: 25px;
    position: relative;
    color: #535353;
}

.page_service_lp section.section_support .creator_item .name:before {
    content: "";
    width: 16px;
    height: 1px;
    background: #707070;
    position: absolute;
    left: 0;
    top: 50%;
}

.page_service_lp section.section_price {
    background: url(./image/service-lp/price_back.webp) no-repeat;
    background-size: cover;
    background-position: center;
    padding: 100px 0 106px;
}

.page_service_lp section.section_price .common_section_head {
    margin-bottom: 29px;
}

.page_service_lp section.section_price .common_section_head .section_title {
    font-size: 48px;
}

.page_service_lp section.section_price .comparison_table {
    position: relative;
    z-index: 2;
    margin-bottom: 110px;
}

.page_service_lp section.section_price .comparison_table table {
    width: 1160px;
    border-collapse: separate;
    border-spacing: 10px 0;
    transform: translateX(-10px);
}

.page_service_lp section.section_price .comparison_table table thead th {
    background: #D8D8D8;
    border-radius: 10px 10px 0 0;
    font-size: 18px;
    font-weight: 800;
    text-align: center;
    line-height: 54px;
    width: 192px;
}

.page_service_lp section.section_price .comparison_table table thead th:first-child {
    background: none;
}

.page_service_lp section.section_price .comparison_table table thead th.editica {
    background: #ED716F;
    background: linear-gradient(180deg, rgba(237, 113, 111, 1) 0%, rgba(200, 2, 8, 1) 100%);
    width: 232px;
}

.page_service_lp section.section_price .comparison_table table thead th.editica .logo img {
    width: 120px;
    vertical-align: middle;
    transform: translateY(-4px);
}

.page_service_lp section.section_price .comparison_table table tbody {
    position: relative;
    z-index: 2;
}

.page_service_lp section.section_price .comparison_table table tbody:before {
    content: "";
    width: 292px;
    height: 100%;
    background: #fff;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    border-radius: 10px 0 0 10px;
    box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.08);
}

.page_service_lp section.section_price .comparison_table table tbody th {
    background: #fff;
    font-size: 17px;
    font-weight: 800;
    padding: 16px 16px 16px 64px;
    width: 292px;
    position: relative;
    background-repeat: no-repeat;
}

.page_service_lp section.section_price .comparison_table table tbody th:before {
    content: "";
    width: 250px;
    height: 2px;
    border-bottom: 2px dashed #D1D1D1;
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
}

.page_service_lp section.section_price .comparison_table table tbody tr:last-child th:before {
    display: none;
}

.page_service_lp section.section_price .comparison_table table tbody tr:first-child th {
    border-radius: 10px 0 0 0;
    padding-top: 20px;
}

.page_service_lp section.section_price .comparison_table table tbody tr:last-child th {
    border-radius: 0 0 0 10px;
}

.page_service_lp section.section_price .comparison_table table tbody tr:nth-child(1) th {
    background-image: url(./image/service-lp/icon_target.svg);
    background-position: 28px;
}

.page_service_lp section.section_price .comparison_table table tbody tr:nth-child(2) th {
    background-image: url(./image/service-lp/icon_marketing.svg);
    background-position: 29px;
}

.page_service_lp section.section_price .comparison_table table tbody tr:nth-child(3) th {
    background-image: url(./image/service-lp/icon_price.svg);
    background-position: 29px;
}

.page_service_lp section.section_price .comparison_table table tbody tr:nth-child(4) th {
    background-image: url(./image/service-lp/icon_hand.svg);
    background-position: 23px;
}

.page_service_lp section.section_price .comparison_table table tbody tr:nth-child(5) th {
    background-image: url(./image/service-lp/icon_speed.svg);
    background-position: 28px;
}

.page_service_lp section.section_price .comparison_table table tbody tr:nth-child(6) th {
    background-image: url(./image/service-lp/icon_voice.svg);
    background-position: 29px;
}

.page_service_lp section.section_price .comparison_table table tbody tr:nth-child(7) th {
    background-image: url(./image/service-lp/icon_shield.svg);
    background-position: 30px;
}

.page_service_lp section.section_price .comparison_table table tbody td {
    background: #fff;
}

.page_service_lp section.section_price .comparison_table table tbody td {
    text-align: center;
    height: 59px;
    vertical-align: middle;
    font-size: 24px;
    position: relative;
    color: #4B4B4B;
    background: #FAFAFA;
}

.page_service_lp section.section_price .comparison_table table tbody td .title {
    display: none;
}

.page_service_lp section.section_price .comparison_table table tbody td:before {
    content: "";
    width: 162px;
    height: 2px;
    border-bottom: 2px dashed #D1D1D1;
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
}

.page_service_lp section.section_price .comparison_table table tbody td:nth-child(2):before {
    width: 202px;
}

.page_service_lp section.section_price .comparison_table table tbody tr:last-child td:before {
    display: none;
}

.page_service_lp section.section_price .comparison_table table tbody td:nth-child(2) {
    color: #CB0010;
    border-left: 3px solid;
    border-right: 3px solid;
}

.page_service_lp section.section_price .comparison_table table tbody tr:last-child td:nth-child(2) {
    border-bottom: 3px solid;
}

.page_service_lp section.section_price .comparison_table .shadow {
    content: "";
    width: 192px;
    height: 100%;
    background: #fff;
    position: absolute;
    top: 0;
    z-index: -1;
    border-radius: 10px 10px 0 0;
    box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.08);
}

.page_service_lp section.section_price .comparison_table .shadow_1 {
    left: 302px;
    width: 232px;
}

.page_service_lp section.section_price .comparison_table .shadow_2 {
    left: 544px;
}

.page_service_lp section.section_price .comparison_table .shadow_3 {
    left: 746px;
}

.page_service_lp section.section_price .comparison_table .shadow_4 {
    left: 948px;
}

.page_service_lp section.section_price .plan_box .common_section_head {
    margin-bottom: 25px;
}

.page_service_lp section.section_price .plan_box .common_section_head .section_title {
    font-size: 48px;
}

.page_service_lp section.section_price .plan_box .common_section_head .section_title small {
    font-size: 22px;
    font-weight: 800;
}

.page_service_lp section.section_price .plan_box .plan_lead {
    width: fit-content;
    margin: 0 auto;
    font-size: 18px;
    font-weight: 800;
    background: url(./image/service-lp/star.svg) no-repeat;
    background-position: top center;
    position: relative;
    padding: 0 20px;
    padding-top: 14px;
    margin-bottom: 14px;
}

.page_service_lp section.section_price .plan_box .plan_lead:before,
.page_service_lp section.section_price .plan_box .plan_lead:after {
    content: "";
    width: 2.5px;
    height: 28px;
    background: #5D5D5D;
    position: absolute;
    bottom: -2px;
}

.page_service_lp section.section_price .plan_box .plan_lead:before {
    left: 0;
    transform: rotate(-30deg);
}

.page_service_lp section.section_price .plan_box .plan_lead:after {
    right: 0;
    transform: rotate(30deg);
}

.page_service_lp section.section_price .plan_box .plan_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-bottom: 33px;
}

.page_service_lp section.section_price .plan_box .plan_item {
    background: #FFFFFF;
    border-radius: 10px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.16);
    border-radius: 10px;
    overflow: hidden;
    position: relative;
}

.page_service_lp section.section_price .plan_box .plan_item:before {
    content: "";
    display: block;
    height: 0;
    width: 0;
    position: absolute;
    bottom: 0;
    right: 0;
    border-left: 20px solid transparent;
    border-bottom: 20px solid #F23936;
}

.page_service_lp section.section_price .plan_box .plan_item:nth-child(2)::before {
    border-bottom: 20px solid #E50012;
}

.page_service_lp section.section_price .plan_box .plan_item:nth-child(3)::before {
    border-bottom: 20px solid #DE1E43;
}

.page_service_lp section.section_price .plan_box .plan_name {
    background: #FF8883;
    background: linear-gradient(180deg, rgba(255, 136, 131, 1) 0%, rgba(233, 74, 74, 1) 100%);
    color: #fff;
    text-align: center;
    font-size: 23px;
    font-weight: 800;
    line-height: 50px;
}

.page_service_lp section.section_price .plan_box .plan_item:nth-child(2) .plan_name {
    background: #FD4358;
    background: linear-gradient(180deg, rgba(253, 67, 88, 1) 0%, rgba(216, 10, 39, 1) 100%);
}

.page_service_lp section.section_price .plan_box .plan_item:nth-child(3) .plan_name {
    background: #D93B56;
    background: linear-gradient(180deg, rgba(217, 59, 86, 1) 0%, rgba(177, 37, 67, 1) 100%);
}

.page_service_lp section.section_price .plan_box .plan_name .en {
    font-family: 'DIN2014';
    font-weight: 700;
    font-size: 32px;
}

.page_service_lp section.section_price .plan_box .plan_inner {
    padding: 25px;
    padding-bottom: 35px;
}

.page_service_lp section.section_price .plan_box .plan_inner .plan_target {
    font-size: 17px;
    font-weight: 700;
    position: relative;
    padding-left: 25px;
    width: fit-content;
    margin: 0 auto;
    margin-bottom: 4px;
    letter-spacing: .05em;
}

.page_service_lp section.section_price .plan_box .plan_inner .plan_target:before {
    content: "";
    width: 20px;
    height: 27px;
    background: url(./image/service-lp/icon_logo.svg) no-repeat;
    background-position: center;
    background-size: contain;
    position: absolute;
    left: 0;
    top: 0;
}

.page_service_lp section.section_price .plan_box .plan_inner .price_box {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.page_service_lp section.section_price .plan_box .plan_inner .price_box:before,
.page_service_lp section.section_price .plan_box .plan_inner .price_box:after {
    content: "";
    width: 26px;
    height: 74px;
    background: url(./image/service-lp/ribon_left.svg) no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    top: 5px;
}

.page_service_lp section.section_price .plan_box .plan_inner .price_box:before {
    left: 12px;
}

.page_service_lp section.section_price .plan_box .plan_inner .price_box:after {
    right: 12px;
    background-image: url(./image/service-lp/ribon_right.svg);
}

.page_service_lp section.section_price .plan_box .plan_inner .price_box .price_label {
    width: 50px;
    height: 50px;
    border-radius: 4px;
    background: #FFF3ED;
    color: #D00010;
    font-size: 14px;
    font-weight: 800;
    text-align: center;
    padding-top: 5px;
    line-height: 1.4;
}

.page_service_lp section.section_price .plan_box .plan_inner .price_box .price {
    font-size: 24px;
    font-weight: 900;
}

.page_service_lp section.section_price .plan_box .plan_inner .price_box .price .num {
    font-family: 'DIN2014';
    font-weight: 700;
    color: #F23936;
    font-size: 74px;
    line-height: 1.2;
    margin-right: 4px;
    margin-left: 5px;
}

.page_service_lp section.section_price .plan_box .plan_item:nth-child(2) .plan_inner .price_box .price .num {
    color: #E50012;
}

.page_service_lp section.section_price .plan_box .plan_item:nth-child(3) .plan_inner .price_box .price .num {
    color: #DE1E43;
}

.page_service_lp section.section_price .plan_box .plan_inner .plan_text {
    border-top: 2px dashed #626262;
    padding-top: 23px;
    margin-top: 12px;
    font-size: 14px;
    letter-spacing: .05em;
}

.page_service_lp section.section_price .plan_note {
    text-align: center;
    letter-spacing: .05em;
    margin-top: -60px;
}

.page_service_lp section.section_price .plan_note .accent {
    color: #D00010;
    font-weight: 700;
}

.page_service_lp section.section_process {
    padding: 100px 0 120px;
}

.page_service_lp section.section_process .common_section_head {
    margin-bottom: 19px;
}

.page_service_lp section.section_process .common_section_head .section_title {
    font-size: 48px;
}

.page_service_lp section.section_process .process_item {
    align-items: center;
    justify-content: space-between;
}

.page_service_lp section.section_process .process_item .icon_box {
    width: 140px;
    position: relative;
}

.page_service_lp section.section_process .process_item .icon_box:before {
    content: "";
    width: 2px;
    height: 100px;
    background: #1A1A1A;
    position: absolute;
    left: 50%;
    top: 100%;
    transform: translateX(-50%);
}

.page_service_lp section.section_process .process_item:last-child .icon_box:before {
    display: none;
}

.page_service_lp section.section_process .process_item .text_box {
    width: 980px;
    border-bottom: 2px dashed #A0A0A0;
    padding: 53px 0;
    align-items: center;
}

.page_service_lp section.section_process .process_item:last-child .text_box {
    padding: 40px 0;
}

.page_service_lp section.section_process .process_item .text_box .step_text {
    width: 250px;
    position: relative;
    padding-left: 20px;
}

.page_service_lp section.section_process .process_item .text_box .step_text:before {
    content: "";
    width: 2px;
    height: 90px;
    background: #DBDBDB;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

.page_service_lp section.section_process .process_item .text_box .step_text .step {
    color: #D00010;
    font-family: 'DIN2014';
    font-weight: 700;
    font-size: 20px;
}

.page_service_lp section.section_process .process_item .text_box .step_text .title {
    font-size: 22px;
    font-weight: 800;
    line-height: 1.34;
}

.page_service_lp section.section_process .process_item .text_box .description_box {
    width: calc(100% - 250px);
    color: #606060;
    font-size: 15px;
    padding-left: 40px;
    letter-spacing: .05em;
}

.page_service_lp section.section_faq {
    padding-bottom: 146px;
}

.page_service_lp section.section_faq .common_section_head {
    margin-bottom: 39px;
}

.page_service_lp section.section_faq .common_section_head .section_title {
    font-size: 48px;
}

.page_service_lp section.section_faq .faq_list .faq_item+.faq_item {
    margin-top: 34px;
}

.page_service_lp section.section_faq .faq_list .faq_item .faq_question {
    background: #FFF4F5;
    border-radius: 8px;
    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.16);
    width: 100%;
    padding: 16px 20px;
    display: flex;
    align-items: center;
    gap: 17px;
    position: relative;
}

.page_service_lp section.section_faq .faq_list .faq_item:nth-child(even) .faq_question {
    background: #FFF9F7;
}

.page_service_lp section.section_faq .faq_list .faq_item .faq_question::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 30px;
    width: 20px;
    height: 20px;
    margin: auto;
    border-top: 4px solid #1A1A1A;
    border-right: 4px solid #1A1A1A;
    transform: translateY(-2px) rotate(135deg);
    box-sizing: border-box;
}

.page_service_lp section.section_faq .faq_list .faq_item .faq_question.nowOpen::after {
    transform: translateY(5px) rotate(135deg) scale(-1);
}

.page_service_lp section.section_faq .faq_list .faq_item .faq_question .question_icon {
    font-family: 'DIN2014';
    font-weight: 700;
    background: #ED716F;
    background: linear-gradient(180deg, rgba(237, 113, 111, 1) 0%, rgba(200, 2, 8, 1) 100%);
    color: #fff;
    width: 44px;
    height: 44px;
    line-height: 44px;
    ;
    border-radius: 100%;
    display: block;
    text-align: center;
    font-size: 32px;
}

.page_service_lp section.section_faq .faq_list .faq_item .faq_question .question_text {
    font-size: 20px;
    font-weight: 900;
    letter-spacing: .05em;
}

.page_service_lp section.section_faq .faq_list .faq_item .faq_answer {
    padding-top: 16px;
    padding-left: 32px;
    display: flex;
    gap: 21px;
}

.page_service_lp section.section_faq .faq_list .faq_item .faq_answer .answer_label {
    font-family: 'DIN2014';
    font-weight: 700;
    font-size: 32px;
    color: #E59F00;
    line-height: 1;
}

.page_service_lp section.section_faq .faq_list .faq_item .faq_answer .answer_text {
    font-size: 15px;
    color: #606060;
    letter-spacing: .05em;
}

.page_service_lp section.section_faq .faq_list .faq_item .faq_answer .closeBtnHat {
    display: none;
}

.page_service_lp section.section_video_solution .solution_contents .movie_box video {
    width: 100%;
}

footer#movie_footer {
    background: url(./image/service-lp/footer_back.webp) no-repeat;
    background-size: cover;
    background-position: center;
    padding: 48px 0 46px;
    text-align: center;
}

footer#movie_footer .logo {
    margin-bottom: 20px;
}

footer#movie_footer .logo img {
    width: 212px;
}

footer#movie_footer .company {
    margin-bottom: 73px;
}

footer#movie_footer .company a {
    color: #555555;
    font-weight: 600;
    border-bottom: 2px solid #B4B4B4;
    padding-bottom: 10px;
    padding-right: 31px;
    background: url(./image/service-lp/arrow_red_2.svg) no-repeat;
    background-position: 100% 2px;
    font-size: 13px;
}

footer#movie_footer .copyright small {
    font-family: 'DIN2014';
    font-weight: 400;
    color: #969696;
    font-size: 14px;
}

body.page-template-page-service-movie,
body.page-template-page-store-movie {
    padding-top: 0;
}

header#movie_header {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 10;
    background: #fff;
    padding: 17px 0 18px;
    display: none;
    min-width: 1340px;
}

header#movie_header .cont {
    align-items: center;
}

header#movie_header .logo img {
    width: 189px;
}

header#movie_header .head_nav {
    align-items: center;
    gap: 25px;
}

header#movie_header .head_nav ul {
    gap: 25px;
}

header#movie_header .head_nav ul li a {
    font-size: 17px;
    font-weight: 600;
    transition: .3s;
}

header#movie_header .head_nav ul li a:hover {
    color: #E50012;
}

header#movie_header .button_grid {
    gap: 12px;
    transform: translateY(-2.5px);
}

header#movie_header .button_grid .common_button a {
    width: 300px;
    line-height: 60px;
    padding-left: 16px;
    box-shadow: 0 5px 0 #AF010B;
    font-size: 16px;
}

header#movie_header .button_grid .common_button.contact a:before {
    height: 60px;
    top: 0;
}

header#movie_header .button_grid .common_button a .arrow {
    width: 23px;
    height: 24px;
    right: 10px;
    background-size: contain;
}

header#movie_header .button_grid .common_button a:hover {
    box-shadow: none;
}

/* お問い合わせフォーム（PC） */

.page_contact .information_box {
    width: 45%;
}

.page_contact .information_box .title {
    font-size: 35px;
    letter-spacing: .05em;
    font-weight: 900;
    margin-bottom: 1em;
    border-left: 6px solid #E50012;
    padding-left: 1em;
}

.page_contact .information_box .lead {
    font-size: 16px;
    margin-bottom: 70px;
    letter-spacing: .05em;
}

.page_contact .information_box .creator .text {
    width: fit-content;
    margin: 0 auto 10px auto;
    font-size: 20px;
    font-weight: 800;
    padding: 0 25px 0 30px;
    position: relative;
}

.page_contact .information_box .creator .text:before,
.page_contact .information_box .creator .text:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 10px solid transparent;
    border-left: 10px solid transparent;
    border-top: 14px solid #FFB7B5;
    border-bottom: 0;
    position: absolute;
    top: 10px;
}

.page_contact .information_box .creator .text:before {
    left: 0;
}

.page_contact .information_box .creator .text:after {
    right: 0;
}

.page_contact .information_box .creator .video video {
    width: 100%;
}

.page_contact .information_box .creator ul {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
}

.page_contact .information_box .understand_box .in_wrap {
    /* padding: 30px; */
    /* border-radius: 8px; */
    /* background: #fafafa; */
}

.page_contact .information_box .understand_box .box_title {
    /* width: fit-content; */
    /* padding: 0 12px; */
    /* position: relative; */
    /* font-size: 17px; */
    /* font-weight: 800; */
    /* margin: 0 auto; */
    /* margin-bottom: 9px; */
}

.page_contact .information_box .understand_box .box_title:before,
.page_contact .information_box .understand_box .box_title:after {
    /* content: ""; */
    /* width: 2px; */
    /* height: 20px; */
    /* background: #1A1A1A; */
    /* position: absolute; */
    /* bottom: 2px; */
}

.page_contact .information_box .understand_box .box_title:before {
    /* left: 0; */
    /* transform: rotate(-25deg); */
}

.page_contact .information_box .understand_box .box_title:after {
    /* right: 0; */
    /* transform: rotate(25deg); */
}

.page_contact .information_box .understand_box ul {
    /* margin-bottom: 20px; */
    /* display: grid; */
    /* grid-template-columns: repeat(2, 1fr); */
    /* gap: 10px; */
}

.page_contact .information_box .understand_box ul li {
    /* font-weight: 700; */
    /* border-bottom: 1px dashed #ccc; */
    /* padding-bottom: 10px; */
}

.page_contact .information_box .understand_box .document_box {
    /* border-radius: 4px; */
    /* display: grid; */
    /* grid-template-columns: repeat(3, 1fr); */
    /* gap: 10px; */
}

.page_contact .information_box .understand_box .document_box .image {
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.6);
    width: 130px;
}

.page_contact .bottom_flex {
    margin-top: 50px;
    gap: 20px;
}

.page_contact .bottom_flex .privacy a {
    font-size: 14px;
    text-decoration: underline;
    color: #969696;
}

.page_contact .bottom_flex .copyright small {
    font-family: 'DIN2014';
    color: #969696;
    font-size: 14px;
}

.page_contact .form {
    width: 50%;
    background: #FFF5F5;
    padding: 30px;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.14);
}

.page_contact .form .privacy_term_outer {
    display: none;
}

.page_contact .form .form_box .radio_btns .radio_btns__item+span::before {
    background: #fff;
}

.page_contact .form .form_box dl {
    display: block;
}

.page_contact .form .form_box dl dt {
    margin-bottom: 10px;
}

.page_contact .form .common_contact_form .form_box dl dt::after {
    display: none;
}

.page_contact .form .mwform-checkbox-field-text::before {
    background: #fff;
}

.page_contact .form .common_contact_form .form_box {
    margin-bottom: 20px;
}

.page_contact .form #btn_wrap {
    width: 100%;
}

.page_contact .form #btn_wrap button {
    width: 100%;
    box-shadow: 0 6px 0 #AF010B;
}

.page_contact .form .common_contact_form select {
    background: #fff;
    width: 100%;
}

.page_contact .form .common_contact_form input[type="text"],
.page_contact .form .common_contact_form input[type="email"],
.page_contact .form .common_contact_form #zip {
    background: #fff;
}

.page_contact .form .common_contact_form textarea {
    background: #fff;
}

.page_contact .form .form_box .radio_btns .radio_btns__item:checked+span::before {
    background: #E50012;
}

.page_contact .common_contact_form .form_box dl+dl .checkboxes {
    padding: 0;
}

.page_contact .thanks_textArea.new {
    width: 50%;
    padding: 45px 25px;
    background-color: #FFF5F5;
    border: 1px solid #e6e0e0;
    margin: 0 auto;
    text-align: center;
}

.page_contact .thanks_textArea.new .thanks_text_box .ttl {
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.04em;
    line-height: 1;
    margin-bottom: 18px;
}

.page_contact .thanks_textArea.new .thanks_text_box .text {
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 1.7;
}

.page_contact .thanks_textArea.new .thanks_text_box .text a {
    color: #1A1A1A;
    text-decoration: underline;
}

.page_contact .thanks_textArea.new .thanks_text_box .text+.text {
    margin-top: 10px;
}

.page_contact .information_box .understand_box .box_title {
    font-size: 20px;
    font-weight: bold;
    padding-bottom: 5px;
    border-bottom: 1px solid #e6e0e0;
}

.page_contact .information_box .understand_box .in_wrap {
    margin-top: 15px;
}

.page_contact .information_box .understand_box ul li {
    display: flex;
    align-items: center;
    font-size: 16px;
    font-weight: 500;
    line-height: 1;
}

.page_contact .information_box .understand_box ul li::before {
    content: "";
    display: block;
    flex-shrink: 0;
    margin-right: 12px;
    width: 5px;
    aspect-ratio: 1;
    border-radius: 50%;
    background-color: currentColor;
}

.page_contact .information_box .understand_box ul li+li {
    margin-top: 11px;
}

.page_contact .information_box .understand_box .document_box {
    display: flex;
    gap: 8px;
    margin-top: 20px;
    padding: 25px;
    background-color: #fafafa;
}

.page_contact .information_box .understand_box .document_box .image:first-child {
    margin-left: 50px;
}

body.wp-singular.page-template.page-template-pageTemplate.page-template-page-corporate-movie {
    padding-top: 0;
}

header#movie_header .button_grid .common_button.contact a {
    width: 265px;
}

.common_button.contact a.fv_contact_click {
    width: 320px;
}

.page_service_lp section.section_point {
    padding: 150px 0;
}

.page_service_lp .section_point .category_row {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px;
}

.page_service_lp .section_point .category_card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 26px 12px 18px;
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.02);
}

.page_service_lp .section_point .category_card:hover {
    border-color: #cbd5e1;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    transform: translateY(-2px);
}

.page_service_lp .section_point .card_content {
    text-align: center;
}

.page_service_lp .section_point .card_icon {
    width: 60px;
    height: 60px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 23px;
    margin: 0 auto 7px auto;
}

.page_service_lp .section_point .card_title {
    font-size: 13px;
    font-weight: bold;
    color: #1e293b;
    line-height: 1.4;
    white-space: nowrap;
}

.page_service_lp .section_point .card_arrow {
    color: #94a3b8;
    font-size: 14px;
    font-weight: bold;
    margin-left: 4px;
}

.page_service_lp .modal_block .modal_overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.page_service_lp .modal_block .modal_overlay.is_active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.page_service_lp .modal_block .modal_container {
    background: #ffffff;
    width: 580px;
    border-radius: 4px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
    position: relative;
    overflow: hidden;
    transform: scale(0.95);
    transition: transform 0.3s ease;
}

.page_service_lp .modal_block .modal_overlay.is_active .modal_container {
    transform: scale(1);
}

.page_service_lp .modal_block .modal_close_btn {
    position: absolute;
    top: 15px;
    right: 15px;
    background: #fff;
    border: none;
    font-size: 20px;
    cursor: pointer;
    color: #0f172a;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
    border-radius: 100%;
}

.page_service_lp .modal_block .modal_image_wrap {
    width: 100%;
    height: 260px;
    background-color: #e2e8f0;
}

.page_service_lp .modal_block .modal_image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page_service_lp .modal_block .modal_heading {
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    color: #1e293b;
    padding: 20px 0 10px;
}

.page_service_lp .modal_block .modal_points_list {
    padding: 0 30px 30px;
    list-style: none;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.page_service_lp .modal_block .modal_point_item {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 14px;
    color: #334155;
    line-height: 1.5;
}

.page_service_lp .modal_block .modal_point_badge {
    background-color: #e53e3e;
    color: #ffffff;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: bold;
    flex-shrink: 0;
}

@media (max-width: 750px) {
    .wrap {
        max-width: 90%;
    }

    a[href $='.pdf']::before {
        width: 7vw;
        height: 8vw;
        margin-right: 2.5vw;
    }

    a[href $='.pdf']:hover {
        text-decoration: underline;
    }

    a[href^="tel:"] {
        pointer-events: auto;
    }

    body {
        font-size: 13px;
        padding-top: 70px;
        min-width: auto;
    }

    /* SPヘッダー */
    #sp_header {
        position: fixed;
        left: 0;
        top: 0;
        width: 100%;
        background: #fff;
        box-shadow: 0 1px 3px rgba(0, 0, 0, .16);
        z-index: 99999;
        height: 70px;
    }

    #sp_header .logo {
        position: absolute;
        left: 20px;
        top: 21px;
    }

    #sp_header .logo img {
        height: 28px;
    }

    #sp_header .icon {
        width: 40px;
        height: 40px;
        border-radius: 50%;
        position: absolute;
    }

    #sp_header .icon img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    #sp_header .mail {
        right: 130px;
        top: 15px;
    }

    #sp_header .tel {
        right: 82px;
        top: 15px;
        background-image: url(/wp-content/themes/swell_child/image/icon/icon_tel.png);
        background-position: center;
        background-size: contain;
    }

    /* SP固定ページ 共通設定 */
    .common_page_main {
        padding-block: 15vw;
    }

    .common_page_main .title_box .title {
        font-size: 5.6vw;
    }

    .common_page_wrap {
        padding: 20vw 0;
    }

    .reserve_text {
        font-size: 6vw;
    }

    /* パンくず */
    .breadcrumb {
        font-size: 3vw;
    }

    /* SP固定ページ お問い合わせ */
    .contact_form_disc {
        margin-block: 0 2em;
    }

    .contact_form_disc .text {
        font-size: 3.6vw;
        margin-block: 0 0.8em;
    }

    .contact_form_disc .caution {
        font-size: 3.1vw;
        letter-spacing: .06em;
    }

    .common_contact_form .form_box {
        margin-block: 0 10vw;
    }

    .common_contact_form .form_box dl {
        grid-template-columns: 1fr;
        gap: 0.6em;
    }

    .common_contact_form .form_box dl+dl {
        margin-block: 1.3em 0;
    }

    .common_contact_form .form_box dl dt {
        flex-direction: row-reverse;
        justify-content: space-between;
        font-size: 4.1vw;
        padding-inline: 0;
    }

    .common_contact_form .form_box dl dt .label {
        font-size: 3.1vw;
    }

    .common_contact_form .form_box dl dt::after {
        content: none;
    }

    .common_contact_form input[type="text"],
    .common_contact_form input[type="email"],
    .common_contact_form #zip {
        font-size: 3.6vw;
    }

    .common_contact_form select {
        width: 100%;
        /* height: 53px; */
        font-size: 3.6vw;
    }

    .common_contact_form textarea {
        height: 33vw;
        font-size: 3.6vw;
    }

    .radio_btns,
    .checkboxes {
        gap: 0.5em 2.5em;
    }

    .page_contact #btn_wrap button {
        width: 83%;
        line-height: 15.5vw;
        font-size: 4.6vw;
    }

    .page_contact #btn_wrap button[name="submitBack"] {
        margin-top: 4vw;
    }

    .mwform-checkbox-field.horizontal-item {
        display: block;
    }

    .page_contact #btn_wrap {
        width: 100%;
        text-align: center;
    }

    .privacy_check_list .mwform-checkbox-field-text {
        font-size: 3.8vw;
        padding-left: 11vw;
    }

    .mw_wp_form .privacy_check_list .horizontal-item {
        margin-right: 4vw;
    }

    .privacy_check_list .hissu {
        padding: 0.3vw 4vw;
    }

    .privacy_check_list {
        margin-bottom: 6vw;
    }

    .privacy_term_detail {
        font-size: 3.4vw;
        margin: 5vw 0;
    }

    .privacy_term_outer {
        width: 96%;
        padding: 5vw 0;
    }

    .privacy_term_outer .privacy_term_inner .main_text {
        font-size: 3.4vw;
        line-height: 1.6;
        margin-bottom: 5vw;
    }

    .privacy_term_outer .privacy_term_inner dl dt {
        font-size: 3.5vw;
        margin-bottom: 1.5vw;
    }

    .privacy_term_outer .privacy_term_inner dl dd {
        font-size: 3.5vw;
        line-height: 1.6;
    }

    .privacy_term_outer .privacy_term_inner dl+dl {
        margin-top: 7vw;
    }

    .privacy_term_detail::after {
        width: 2.5vw;
        margin: 1.5vw auto 0;
    }

    .page-id-775 footer {
        margin-bottom: 0;
    }

    /* サンクスページ */
    .page_contact .thanks_textArea .name {
        font-size: 4vw;
        margin-bottom: 3vw;
    }

    .page_contact .thanks_textArea .contact_text {
        font-size: 3.5vw;
        margin-bottom: 2em;
        width: 100%;
    }

    .page_contact .thanks_textArea .ichiran_link {
        width: 80%;
        line-height: 12vw;
        font-size: 4vw;
    }

    /* ステップバー デザイン */
    .page_contact .progressbar {
        gap: 4.5em;
        margin-block: 0 2.5em;
    }

    .page_contact .progressbar .item {
        font-size: 3.1vw;
    }

    .page_contact .progressbar .item+.item::before {
        width: 5.7vw;
        top: 63%;
        left: -3.3em;
    }

    .page_contact .progressbar .item .mark {
        width: 7.7vw;
        margin: 0 auto 0.4em;
    }

    /* SP固定ページ 404ページ */
    #page_404 .num {
        font-size: 20vw;
        line-height: 1.5;
    }

    #page_404 .text {
        font-size: 3.5vw;
    }

    /* SP投稿ページ アーカイブページ */
    .archive_page_list>article {
        padding-right: 20px;
    }

    .archive_page_list>article .date {
        width: 80px;
    }

    .archive_page_list>article .content_area {
        width: calc(100% - 80px);
    }

    .archive_page_list>article:after {
        width: 7px;
        height: 7px;
    }

    /* SP固定ページ サイトマップ */
    ul#sitemap_list li {
        margin: 0;
    }

    body #sitemap_list li a {
        font-size: 4vw;
        padding: 1vw 2vw;
        line-height: 9vw;
        margin-bottom: 1vw;
    }

    body #sitemap_list li.home-item {
        margin-bottom: 4vw;
    }

    body #sitemap_list {
        padding: 0;
    }

    /* パーツ */
    .common_sec_title {
        gap: unset;
        font-size: 6.154vw;
        letter-spacing: 0.045em;
        flex-direction: column;
        justify-content: center;
    }

    .common_sec_title::before {
        width: 6.795vw;
        height: 9.308vw;
    }

    .common_sec_title .small {
        font-size: 4.103vw;
    }

    .common_cta_sec {
        padding: 14.359vw 0;
        background-image: url(/wp-content/themes/swell_child/image/common_cta_bg.png);
    }

    .common_cta_sec .heading {
        margin-bottom: 3.333vw;
    }

    .common_cta_sec .heading .title {
        margin-bottom: 3.333vw;
        font-size: 6.579vw;
    }

    .common_cta_sec .heading .text {
        font-size: 3.333vw;
    }

    .common_cta_box .head_text {
        margin-bottom: 6.154vw;
        font-size: 4.615vw;
        letter-spacing: 0.05em;
    }

    .common_cta_box .head_text .large {
        font-size: 6.154vw;
    }

    .common_cta_box .catch_text {
        width: fit-content;
        font-size: 4.615vw;
        font-weight: 900;
    }

    .common_cta_box .catch_text::before,
    .common_cta_box .catch_text::after {
        bottom: 3vw;
        width: 6.410vw;
        height: 0.513vw;
    }

    .common_cta_box .catch_text::before {
        left: -1.6em;
        transform: rotate(45deg);
    }

    .common_cta_box .catch_text::after {
        right: -1.6em;
        transform: rotate(-45deg);
    }

    .common_cta_box .text {
        margin-bottom: 0.6em;
        font-size: 4.103vw;
    }

    .common_cta_box .catch_text .large {
        font-size: 8.718vw;
    }

    .common_cta_btn {
        width: 100%;
        height: 15.385vw;
        padding: 4.359vw 0 0;
        font-size: 4.615vw;
        text-align: center;
    }

    .common_cta_btn .icon {
        width: 10.256vw;
        height: 10.256vw;
    }

    .common_cta_btn:hover {
        transform: translateY(0);
        box-shadow: 0 1.282vw 0 #DEB400;
    }

    .common_cta_btn:hover .icon .circle {
        fill: #1A1A1A;
    }

    .common_cta_btn:hover .icon .arrow {
        fill: var(--sub-color);
    }

    .common_video_box {
        grid-template-columns: repeat(2, 90vw);
        gap: 7.692vw 5.128vw;
        overflow-x: scroll;
    }

    .woks_sec .common_video_box {
        padding-bottom: 7.692vw;
    }

    .common_video_box .link .img {
        height: 50.385vw;
        border-radius: 8px;
        margin-bottom: 3.462vw;
    }

    .common_video_box .link .img::after {
        width: 8.385vw;
        height: 15.385vw;
    }

    .common_video_box .link:hover .img img {
        scale: 1;
    }

    .common_video_box .link .title_box {
        margin-bottom: 2vw;
    }

    .common_video_box .link .title_box .title {
        font-size: 4.103vw;
    }

    .common_video_box .link .title_box .text {
        font-size: 3.333vw;
    }

    .common_video_box .link .tag_box {
        gap: 1.538vw;
    }

    .common_video_box .link .tag_box .tag {
        padding: 0.43em 0.95em;
        font-size: 3.333vw;
    }

    /* パーツ end */

    /* mv_sec */
    .mv_sec {
        position: relative;
        padding-bottom: 11vw;
    }

    .mv_sec::before {
        display: none;
    }

    .mv_sec .cont {
        display: block;
    }

    .mv_sec .cont .text_area {
        padding: 9.231vw 0 0;
    }

    .mv_sec .cont .text_area .lead {
        margin-bottom: 2.564vw;
        font-size: 3.590vw;
    }

    .mv_sec .cont .text_area .lead .small {
        font-size: 3.077vw;
    }

    .mv_sec .cont .text_area .catch {
        margin-bottom: 2.308vw;
        font-size: 8.8vw;
        font-weight: 800;
        line-height: 1.35;
        letter-spacing: 0.135em;
    }

    .mv_sec .cont .text_area .catch .large {
        font-size: 46px;
    }

    .mv_sec .cont .text_area .bg_line_text {
        margin-bottom: 5.897vw;
    }

    .mv_sec .cont .text_area .bg_line_text .bg_line {
        padding: 0.769vw 2.564vw;
        font-size: 4.515vw;
        letter-spacing: 0.06em;
    }

    .mv_sec .cont .text_area .bg_line_text .bg_line+.bg_line {
        margin-top: 1.538vw;
    }

    .mv_sec .cont .text_area .badge_box {
        margin-bottom: 5.641vw;
    }

    .mv_sec .cont .text_area .badge_box ul {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 2.564vw;
    }

    .mv_sec .cont .text_area .badge_box ul .badge.pc {
        display: none;
    }

    .mv_sec .cont .text_area .badge_box ul .badge {
        /* width: 43.590vw; */
        width: unset;
    }

    .mv_sec .cont .text_area .badge_box ul .badge .text {
        font-size: 4.615vw;
    }

    .mv_sec .cont .text_area .badge_box ul .badge .text.small {
        font-size: 3.077vw;
    }

    .mv_sec .cont .common_cta_box .head_text {
        display: none;
    }

    /* mv_sec end */

    /* reason_sec */
    .reason_sec {
        padding: 10.9vw 0 0;
    }

    .reason_sec .heading {
        margin-bottom: 7.3vw;
    }

    .reason_sec .heading .title {
        margin: 0 auto .9em;
        padding-bottom: 0.2em;
        font-size: 5.6vw;
        border-bottom: solid 3px var(--main-color);
    }

    .reason_sec .heading .text {
        font-size: 3.58vw;
    }

    .reason_sec .catch .lead {
        margin-bottom: 0.5em;
        font-size: 5.6vw;
        line-height: 1.45;
        letter-spacing: 0;
    }

    .reason_sec .catch .lead .small {
        font-size: 0.63em;
    }

    .reason_sec .catch .column {
        flex-direction: column;
        gap: 4.23vw;
    }

    .reason_sec .catch .column .block {
        gap: 1vw;
    }

    .reason_sec .catch .column .block.wide {
        width: 100%;
        justify-content: space-around;
    }

    .reason_sec .catch .column .block .text {
        padding: 0.1em 0.5em;
        font-size: 6.1vw;
    }

    .reason_sec .catch .column .block .mark {
        font-size: 5.6vw;
    }

    .reason_sec .catch .column .block.result {
        margin-left: 2vw;
    }

    .reason_sec .catch .column .block.result .mark {
        font-size: 12.8vw;
        margin-right: .1em;
    }

    .reason_sec .catch .column .block.result .large {
        font-size: 17.9vw;
    }

    .reason_sec .catch .column .block.result .large::after {
        width: 48.9vw;
        height: 40vw;
        top: -6%;
        left: -17%;
    }

    /* reason_sec end*/

    /* works_sec */
    .works_sec {
        padding: 20vw 0 12.8vw;
    }

    .works_sec .common_sec_title {
        margin-bottom: 0.7em;
    }

    .works_sec .common_video_box {
        margin-bottom: 14.615vw;
        padding-bottom: 7.692vw;
    }

    .works_sec .common_video_box::-webkit-scrollbar {
        height: 1.026vw;
    }

    .works_sec .common_video_box::-webkit-scrollbar-track {
        background: #E8E8E8;
    }

    .works_sec .common_video_box::-webkit-scrollbar-thumb {
        background-color: var(--sub-color);
    }



    /* works_sec end */

    /* worries_sec */
    .worries_sec {
        padding-block: 18.205vw;
    }

    .worries_sec::before {
        height: 394.872vw;
    }

    .worries_sec .heading {
        margin: 0 auto 7.692vw;
    }

    .worries_sec .heading::after {
        top: -2.9em;
        right: -3em;
        width: 12.821vw;
        height: 13.590vw;
    }

    .worries_sec .heading .title {
        font-size: 5.641vw;
        text-align: center;
    }

    .worries_sec .tab_box {
        display: flex;
        flex-direction: column;
        gap: 1.974vw;
        margin-bottom: 8.205vw;
    }

    .worries_sec .tab_box .js_tab {
        display: flex;
        align-items: center;
        gap: 4.103vw;
        padding: 2.564vw;
        height: 17.949vw;
        border-radius: 6px;
        box-shadow: unset;
        cursor: unset;
    }

    .worries_sec .tab_box .js_tab::after {
        content: '';
        position: absolute;
        bottom: auto;
        left: auto;
        right: 0;
        width: 5.128vw;
        height: 3.077vw;
        background-color: var(--main-color);
        clip-path: polygon(50% 100%, 0 0, 100% 0);
        box-shadow: 0 0.256vw 0.513vw rgba(0, 0, 0, .16);
    }

    .worries_sec .tab_box .js_tab .ttl {
        position: static;
        transform: unset;
        display: grid;
        place-content: center;
        padding: unset;
        width: 12.821vw;
        height: 12.821vw;
        font-size: 3.077vw;
        font-weight: 800;
        border-radius: 50%;
        flex-shrink: 0;
    }

    .worries_sec .tab_box .js_tab .ttl .num {
        font-size: 4.615vw;
        line-height: 1;
    }

    .worries_sec .tab_box .js_tab .text {
        flex-grow: 1;
        font-size: 4.103vw;
        text-align: left;
    }

    .worries_sec .panel_box .js_panel {
        border-radius: 10px;
    }

    .worries_sec .panel_box .js_panel .column {
        position: relative;
        flex-direction: column;
        height: 127.436vw;
        gap: 3.077vw;
        padding: 5.128vw 2.564vw 2.564vw;
    }

    .worries_sec .panel_box .js_panel .column .img {
        flex-shrink: 0;
        height: 46.154vw;
    }

    .worries_sec .panel_box .js_panel .column .img img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .worries_sec .panel_box .js_panel .column .text_area {
        flex-grow: 1;
    }

    .worries_sec .panel_box .js_panel .column .text_area .label {
        position: absolute;
        top: 0;
        left: 0;
        padding: 0.3em 0.7em;
        margin-bottom: unset;
        width: fit-content;
        color: #fff;
        font-size: 4.103vw;
        font-weight: 900;
        letter-spacing: 0.07em;
        border-radius: 10px 0 10px 0;
        background-color: var(--main-color);
    }

    .worries_sec .panel_box .js_panel .column .text_area .title {
        margin-bottom: 2.564vw;
        font-size: 5.641vw;
        text-align: center;
    }

    .worries_sec .panel_box .js_panel .column .text_area .title .color {
        color: var(--main-color);
    }

    .worries_sec .panel_box .js_panel .column .text_area .block {
        height: 49.744vw;
        padding: 5.128vw;
        border-radius: 6px;
        background-color: #FAFAFA;
    }

    .worries_sec .panel_box .js_panel .column .text_area .text {
        display: flex;
        align-items: center;
        font-size: 3.590vw;
        font-weight: 700;
        letter-spacing: 0.02em;
    }

    .worries_sec .panel_box .js_panel .column .text_area .text+.text {
        padding-top: 0.5em;
        margin-top: 0.5em;
        border-top: dashed 2px #848484;
    }

    .worries_sec .panel_box .js_panel .column .text_area .text::before {
        display: none;
    }

    .worries_sec .arrow {
        width: 15.897vw;
        height: 7.103vw;
        margin: 7.692vw auto 7.949vw;
    }

    .worries_sec .summary_box {
        margin-bottom: 21.795vw;
    }

    .worries_sec .summary_box .text {
        font-size: 5.641vw;
        text-align: right;
    }

    .worries_sec .summary_box .text.small {
        font-size: 4.103vw;
        font-weight: 800;
        text-align: left;
    }

    .worries_sec .summary_box .text+.text {
        margin-top: 1.795vw;
    }

    .worries_sec .summary_box .text .bg_color {
        padding: 1.538vw 3.846vw;
        display: block;
        width: fit-content;
    }

    .worries_sec .summary_box .text .bg_color.right {
        margin-left: auto;
        margin-bottom: 1.538vw;
    }

    .worries_sec .summary_box .text.wayv {
        margin-top: 7.692vw;
        text-align: center;
        background-image: unset;
    }

    .worries_sec .summary_box .text.wayv .inline_up {
        padding-bottom: 1.795vw;
        box-decoration-break: clone;
        background: url(/wp-content/themes/swell_child/image/wavy_line_sp1.svg) left bottom no-repeat;
    }

    .worries_sec .summary_box .text.wayv .inline_bottom {
        padding-bottom: 1.795vw;
        box-decoration-break: clone;
        background: url(/wp-content/themes/swell_child/image/wavy_line_sp2.svg) left bottom no-repeat;
    }

    .worries_sec .example_box .cont {
        padding: 18.974vw 5.128vw 10.513vw;
        border: solid 2px #1A1A1A;
        border-radius: 20px;
    }

    .worries_sec .example_box .cont .hedding {
        margin-top: -27.949vw;
    }

    .worries_sec .example_box .cont .hedding .title {
        padding: 2.564vw 5.128vw;
        font-size: 4.872vw;
        border: solid 2px #1A1A1A;
        border-radius: 6px;
    }

    .worries_sec .example_box .cont .hedding .title::before {
        display: none;
    }

    .worries_sec .example_box .cont .hedding .sub_text {
        margin-top: 6.154vw;
        font-size: 3.846vw;
        font-weight: 700;
    }

    .worries_sec .example_box .cont .card_box {
        margin-top: 5.128vw;
    }

    .worries_sec .example_box .cont .card_box ul {
        grid-template-columns: repeat(2, 1fr);
        gap: 5.128vw 2.564vw;
    }

    .worries_sec .example_box .cont .card_box .card {
        position: relative;
    }

    .worries_sec .example_box .cont .card_box .card .thumb {
        position: relative;
        height: unset;
        margin-bottom: 2.564vw;
        border-radius: 4px;
    }

    .worries_sec .example_box .cont .card_box .card .thumb::before {
        display: none;
    }

    .worries_sec .example_box .cont .card_box .card .text_box .en {
        color: #FF5C5C;
    }

    .worries_sec .example_box .cont .card_box .card .thumb img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .worries_sec .example_box .cont .card_box .card .text_box {
        position: unset;
        margin-top: 2.564vw;
    }

    .worries_sec .example_box .cont .card_box .card .text_box .title {
        color: #1A1A1A;
        font-size: 4.615vw;
        font-weight: 700;
        line-height: 1.1;
        letter-spacing: .06em;
        text-align: center;
    }

    .worries_sec .example_box .cont .card_box .card .text_box .title .small {
        font-size: 3.590vw;
    }

    .worries_sec .example_box .cont .card_box .card .text_box .en {
        font-size: 3.590vw;
        text-align: center;
    }

    .worries_sec .example_box .cont .card_box .card .text {
        position: relative;
        padding-bottom: unset;
        margin-top: 0.5em;
        padding-top: 0.5em;
        font-size: 3.590vw;
        font-weight: 400;
        line-height: 1.4;
    }

    .worries_sec .example_box .cont .card_box .card .text::after {
        content: "";
        position: absolute;
        width: 25.641vw;
        height: 1.026vw;
        background-color: var(--main-color);
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
    }

    .worries_sec .example_box .cont .card_box .card .text::after {
        width: 15.385vw;
        height: 0.513vw;
        bottom: auto;
        top: 0;
    }

    .worries_sec .example_box .cont .card_box .card .text.mt {
        margin-top: 1.9em;
    }

    .worries_sec .example_box .cont .card_box .summary_text {
        margin-top: 8.385vw;
        font-size: 4.103vw;
        font-weight: 800;
        letter-spacing: 0.05em;
        text-align: left;
    }

    .worries_sec .example_box .cont .card_box .summary_text .large {
        font-size: 7.692vw;
        line-height: 1.5;
        letter-spacing: 0.12em;
    }

    .worries_sec .example_box .cont .card_box .summary_text .color {
        color: var(--main-color);
    }

    /* worries_sec end */

    /* review_sec */
    .review_sec {
        padding: 14.8vw 0 15.385vw;
    }

    .review_sec .heading {
        margin-bottom: 7.179vw;
        text-align: center;
    }

    .review_sec .heading .title {
        margin-bottom: 4.872vw;
        font-size: 5.641vw;
    }

    .review_sec .heading .sub_text {
        font-size: 3.590vw;
    }

    .review_sec .card_box ul {
        grid-template-columns: 1fr;
        gap: 2.564vw;
    }

    .review_sec .card_box ul .card {
        padding: 5.128vw;
        border-radius: 9px;
        border: solid 1px #EBEBEB;
    }

    .review_sec .card_box ul .card .thumb {
        display: none;
    }

    .review_sec .card_box ul .card .text_box {
        margin-bottom: 4.615vw;
    }

    .review_sec .card_box ul .card .text_box .title {
        font-size: 4.103vw;
    }

    .review_sec .card_box ul .card .text_box .text {
        font-size: 3.590vw;
        font-weight: 700;
        letter-spacing: 0.06em;
    }

    .review_sec .card_box ul .card .detail_text {
        font-size: 3.333vw;
        letter-spacing: 0.01em;
    }

    /* review_sec end */

    /* pla_sec */
    .plan_sec {
        padding: 14.359vw 0 18.205vw;
    }

    .plan_sec .heading {
        margin-bottom: 6.923vw;
    }

    .plan_sec .heading .common_sec_title {
        margin-bottom: 5.641vw;
    }

    .plan_sec .heading .sub_text {
        font-size: 3.5vw;
        font-weight: 500;
        letter-spacing: 0.03em;
    }

    .plan_sec .cont .head_text_box {
        margin-bottom: 3.590vw;
        text-align: center;
    }

    .plan_sec .cont .head_text_box .title {
        font-size: 4.615vw;
    }

    .plan_sec .cont .head_text_box .text {
        font-size: 3.333vw;
        letter-spacing: 0.03em;
    }

    .plan_sec .cont .card_box {
        margin-bottom: 2.564vw;
    }

    .plan_sec .cont .card_box ul {
        display: grid;
        grid-template-columns: 1fr;
        gap: 2.564vw;
    }

    .plan_sec .cont .card_box ul .card.border {
        border: solid 2px var(--main-color);
    }

    .plan_sec .cont .card_box ul .card.border .price_box .title {
        font-family: 'Avenir_mid', sans-serif !important;
    }

    .plan_sec .cont .card_box ul .card.bottom .text_box {
        display: flex;
    }

    .plan_sec .cont .card_box ul .card.bottom .text_box .text {
        margin-bottom: unset;
    }

    .plan_sec .cont .card_box ul .card.bottom .text_box .text .inner {
        display: flex;
        flex-direction: column;
    }

    .plan_sec .cont .card_box ul .card .plan_title {
        padding: 5.128vw;
        font-size: 5.641vw;
    }

    .plan_sec .cont .card_box ul .card .plan_title.row {
        gap: 2vw;
    }

    .plan_sec .cont .card_box ul .card .plan_title .gentei {
        font-size: 3.2vw;
    }

    .plan_sec .cont .card_box ul .card .text_box {
        padding: 3.590vw 5.128vw 5.128vw;
        display: flex;
        flex-direction: column;
    }

    .plan_sec .cont .card_box ul .card .text_box .title {
        margin-bottom: 2.308vw;
        font-size: 3.590vw;
        font-weight: 800;
        letter-spacing: 0.06em;
        order: 0;
    }

    .plan_sec .cont .card_box ul .card.bottom .text_box .inner {
        display: flex;
        flex-direction: column;
    }

    .plan_sec .cont .card_box ul .card.bottom .text_box .inner .price_box {
        order: 1;
    }

    .plan_sec .cont .card_box ul .card .text_box .pop_btn {
        display: grid;
        place-content: center;
        width: 66.667vw;
        height: 11.795vw;
        padding: unset;
        margin: 4.103vw auto 0;
        font-size: 3.846vw;
        font-weight: 800;
        letter-spacing: 0;
        cursor: unset;
        text-align: center;
        order: 5;
    }

    .plan_sec .cont .card_box ul .card .text_box .text {
        margin-bottom: unset;
        font-size: 3.333vw;
        letter-spacing: 0;
        order: 4;
    }


    .plan_sec .cont .card_box ul .card .price_box .title {
        font-size: 4.103vw;
        order: 2;
    }

    .plan_sec .cont .card_box ul .card .price_box .price {
        display: flex;
        align-items: flex-end;
        justify-content: space-between;
        gap: 5.128vw;
    }

    .plan_sec .cont .card_box ul .card .price_box .price .block {
        font-size: 5.641vw;
    }

    .plan_sec .cont .card_box ul .card .border.price_box .price .block {
        font-size: 3.077vw;
    }

    .plan_sec .cont .card_box ul .card .price_box .price .block .num {
        font-size: 8.718vw;
    }

    .plan_sec .cont .card_box ul .card .price_box .price .block.down {
        position: relative;
        font-size: 3.077vw;
        padding: 0 0.513vw;
    }

    .plan_sec .cont .card_box ul .card .price_box .price .block.down .num {
        font-size: 5.641vw;
    }

    .plan_sec .cont .card_box ul .card .price_box .price .block.down .small {
        font-size: 2vw;
    }

    .plan_sec .cont .card_box ul .card .border.price_box .price .block .num {
        font-size: 3.077vw;
    }

    .plan_sec .cont .card_box ul .card .price_box .price .block .small {
        font-size: 3.590vw;
    }

    .plan_sec .cont .card_box ul .card .price_box .price .block.large .num {
        font-size: 8.718vw;
    }

    .plan_sec .cont .card_box ul .card .price_box .price .block.large .small {
        font-size: 3.590vw;
    }

    .plan_sec .cont .summary_box {
        padding: unset;
        margin-bottom: 9.744vw;
    }

    .page_form .plan_sec .cont .summary_box {
        margin-bottom: unset;
    }

    .plan_sec .cont .summary_box .column {
        flex-direction: column;
        gap: unset;
    }

    .plan_sec .cont .summary_box .column .name_box {
        display: block;
        width: 100%;
    }

    .plan_sec .cont .summary_box .column .name_box .en_name {
        font-size: 5.641vw;
    }

    .plan_sec .cont .summary_box .column .text_box {
        padding: 3.590vw 5.128vw 5.128vw;
        border-top: solid 1px #D6D6D6;
        border-left: unset;
    }

    .plan_sec .cont .summary_box .column .text_box .name {
        font-size: 3.590vw;
        margin-bottom: 3.590vw;
        font-weight: 800;
    }

    .plan_sec .cont .summary_box .column .text_box .text {
        padding: unset;
        font-size: 3.333vw;
        letter-spacing: 0;
    }

    .plan_sec .cont .summary_box .notes {
        position: static;
        margin-top: 5.128vw;
        letter-spacing: 0;
        text-align: right;
    }

    /* pla_sec end */

    /* video_popup_box */
    .video_popup_box {
        top: 70px;
        height: calc(100vh - 70px);
    }

    .video_popup_box_bg {
        padding: 5.128vw 0;
    }

    .video_popup_box .cont {
        position: unset;
        top: 50%;
        left: 50%;
        transform: unset;
        width: 100%;
        height: calc(100vh - 28.205vw);
        max-width: 100%;
        padding: 5.1vw;
        border-radius: 10px;
        overflow: scroll;
    }

    .video_popup_box .pop_up_modal_close {
        position: unset;
        top: auto;
        right: auto;
        left: 50%;
        bottom: 5.1vw;
        transform: unset;
        display: flex;
        justify-content: center;
        gap: 2.564vw;
        width: unset;
        height: unset;
        margin-top: 13.846vw;
    }

    .video_popup_box .pop_up_modal_close .img {
        flex-shrink: 0;
        width: 3.538vw;
        height: 3.538vw;
    }

    .video_popup_box .pop_up_modal_close .text {
        font-size: 4.103vw;
        font-weight: 700;
        letter-spacing: 0.06em;
    }

    .video_popup_box .common_sec_title {
        display: none;
    }

    .video_popup_box .common_video_box {
        height: unset;
        grid-template-columns: 1fr;
        gap: 5.128vw;
        overflow-y: unset;
        overflow-x: unset;
        padding-right: unset;
    }

    .video_popup_box .common_video_box .slick-dots {
        bottom: -8.205vw;
        color: #E2E2E2;
    }

    .video_popup_box .common_video_box .slick-dots li {
        width: 3.077vw;
        height: 3.077vw;
        margin: 0 2.564vw;
    }

    .video_popup_box .common_video_box .slick-dots li button {
        width: 3.077vw;
        height: 3.077vw;
        border-radius: 50%;
        background-color: #E2E2E2;
    }

    .video_popup_box .common_video_box .slick-dots li button:before {
        display: none;
    }

    .video_popup_box .common_video_box .slick-dots li.slick-active button {
        background-color: var(--main-color);
    }

    .video_popup_box .common_video_box .slick-dots li.slick-active button:before {
        display: none;
    }

    .video_popup_box .common_video_box .img {
        height: 44.359vw;
    }

    .video_popup_box .common_video_box .link+.link {
        margin-top: 5.128vw;
    }

    .video_popup_box .common_video_box .link .title_box {
        margin-bottom: 3.077vw;
    }

    .video_popup_box .common_video_box::-webkit-scrollbar {
        display: none;
    }

    .video_popup_box .common_video_box::-webkit-scrollbar-track {
        display: none;
        background: transparent;
    }

    .video_popup_box .common_video_box::-webkit-scrollbar-thumb {
        display: none;
    }

    /* video_popup_box end*/

    /* strengths_sec */
    .strengths_sec {
        padding: 14.103vw 0 0;
    }

    .strengths_sec .heading {
        margin-bottom: 10.256vw;
    }

    .strengths_sec .cont .column {
        flex-direction: column;
        gap: 3.590vw;
        position: relative;
    }

    .strengths_sec .cont .column:nth-child(even) {
        flex-direction: column;
    }

    .strengths_sec .cont .column+.column {
        margin-top: 13.590vw;
    }

    .strengths_sec .cont .column:nth-child(even) .text_box .lead {
        top: -3.590vw;
        left: auto;
        right: 0;
        text-align: right;
    }

    .strengths_sec .cont .column .img {
        width: 100%;
        height: 180px;
        border-radius: 8px;
    }

    .strengths_sec .cont .column .text_box .title {
        display: none;
    }

    .strengths_sec .cont .column .text_box .lead {
        margin-bottom: unset;
        font-size: 4.615vw;
        position: absolute;
        top: -4.5vw;
        left: 0;
    }

    .strengths_sec .cont .column .text_box .lead .bg_line {
        padding: 0.25em 0.6em;
    }

    .strengths_sec .cont .column .text_box .lead .bg_line.pr {
        padding: 0.25em 0.6em;
    }

    .strengths_sec .cont .column .text_box .lead .bg_line:first-child {
        margin-bottom: 1.282vw;
    }

    .strengths_sec .cont .column .text_box .text {
        font-size: 3.590vw;
        letter-spacing: 0;
    }

    /* strengths_sec end */

    /* flow_sec */
    .flow_sec {
        padding: 15.128vw 0 17.949vw;
    }

    .flow_sec .heading {
        margin-bottom: 5.128vw;
    }

    .flow_sec .heading .common_sec_title {
        margin-bottom: 4.615vw;
    }

    .flow_sec .heading .sub_text {
        font-size: 3.333vw;
        font-weight: 600;
        letter-spacing: 0.03em;
    }

    .flow_sec .cont {}

    .flow_sec .cont .tab_box {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 2.564vw;
        margin-bottom: 6.154vw;
    }

    .flow_sec .cont .tab_box .js_tab {
        display: grid;
        place-content: center;
        width: unset;
        height: unset;
        padding: 3.077vw 5.641vw;
    }

    .flow_sec .cont .tab_box .js_tab .ttl {
        font-size: 4.103vw;
        letter-spacing: 0.07em;
    }

    .flow_sec .cont .panel_box .js_panel::before {
        top: 25.641vw;
        left: 14.103vw;
        transform: unset;
    }

    .flow_sec .cont .panel_box .js_panel .lead {
        margin-bottom: 4.103vw;
        font-size: 4.103vw;
        letter-spacing: 0.06em;
    }

    .flow_sec .cont .panel_box .js_panel .column {
        flex-direction: column;
        align-items: flex-start;
        gap: 3.077vw;
        border-radius: 8px;
        padding: 2.564vw 5.128vw 5.128vw;
    }

    .flow_sec .cont .panel_box .js_panel .column::after {
        display: none;
    }

    .flow_sec .cont .panel_box .js_panel .column+.column {
        margin-top: 2.564vw;
    }

    .flow_sec .cont .panel_box .js_panel .column .img_area {
        gap: 5.128vw;
        width: 100%;
    }

    .flow_sec .cont .panel_box .js_panel .column .img_area .img {
        width: 17.949vw;
        height: 17.949vw;
        border-radius: 50%;
        overflow: hidden;
    }

    .flow_sec .cont .panel_box .js_panel .column .img_area .title_box {
        flex-grow: 1;
        display: grid;
        align-content: center;
    }

    .flow_sec .cont .panel_box .js_panel .column .img_area .title_box .en {
        font-size: 3.590vw;
        letter-spacing: 0.01em;
    }

    .flow_sec .cont .panel_box .js_panel .column .img_area .title_box .title {
        font-size: 4.103vw;
    }

    .flow_sec .cont .panel_box .js_panel .column .text_box::before {
        display: none;
    }

    .flow_sec .cont .panel_box .js_panel .column .text_box .text {
        padding-left: unset;
        font-size: 3.333vw;
    }

    /* flow_sec end */

    /* faq_sec */
    .faq_sec {
        padding: 15.128vw 0 12.821vw;
    }

    .faq_sec .cont .heading {
        margin-bottom: 5.897vw;
    }

    .faq_sec .cont .heading .title {
        margin-bottom: 3.846vw;
        font-size: 5.641vw;
    }

    .faq_sec .cont .heading .sub_text {
        font-size: 3.333vw;
        letter-spacing: 0;
    }

    .faq_sec .cont .list_box ul li+li {
        margin-top: 6.154vw;
    }

    .faq_sec .cont .list_box ul li .q_box {
        gap: 5.128vw;
        padding: 0 3.7vw;
        height: 15.3vw;
        border-radius: 4px;
        line-height: 1.4;
    }

    .faq_sec .cont .list_box ul li .q_box .icon {
        font-size: 6.667vw;
    }

    .faq_sec .cont .list_box ul li .q_box .text {
        font-size: 4.103vw;
        letter-spacing: 0.03em;
    }

    .faq_sec .cont .list_box ul li .a_text {
        padding: 3.077vw 0 0;
        font-size: 3.333vw;
        letter-spacing: 0.05em;
    }

    /* faq_sec end */

    /* message_sec */
    .message_sec {
        padding: 16.667vw 0 13.077vw;
    }

    .message_sec .wrap {
        width: 90%;
    }

    .message_sec .heading {
        margin-bottom: 3.590vw;
    }

    .message_sec .heading .title {
        font-size: 5.641vw;
        font-weight: 400;
        letter-spacing: 0.14em;
    }

    .message_sec .heading .title .color {
        font-size: 7.692vw;
    }

    .message_sec .icon_box {
        margin-bottom: 6.667vw;
    }

    .message_sec .icon_box ul {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 2.564vw;
        padding: unset;
    }

    .message_sec .icon_box ul li {
        aspect-ratio: unset;
        width: 28.205vw;
        height: 28.205vw;
        background-color: #fff;
    }

    .message_sec .icon_box ul li .icon {
        width: 14.103vw;
        height: 7vw;
        margin: 0 auto 1.3vw;
    }

    .message_sec .icon_box ul li .icon img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .message_sec .icon_box ul li .title {
        font-size: 3.590vw;
    }

    .message_sec .icon_box .detail_text {
        margin-top: 5.128vw;
        font-size: 3.590vw;
        font-weight: 400;
        letter-spacing: 0.03em;
        text-align: left;
    }

    .message_sec .cont .head_text {
        letter-spacing: 0;
        margin-bottom: 4.359vw;
    }

    .message_sec .cont .graph_box {
        position: relative;
        padding: 6.667vw 6.154vw 12.564vw;
        margin: 0 auto 8.462vw;
        border-radius: 10px;
    }

    .message_sec .cont .graph_box::after {
        content: "";
        position: absolute;
        bottom: -4.103vw;
        width: 32.564vw;
        height: 7.949vw;
    }

    .message_sec .cont .graph_box .img {
        width: 100%;
        margin: 0 auto 4.103vw;
    }

    .message_sec .cont .graph_box .title {
        margin-bottom: 3.590vw;
        font-size: 4.103vw;
    }

    .message_sec .cont .graph_box .nots_box {
        font-size: 2.564vw;
    }

    .message_sec .cont .graph_box .nots_box .link {
        display: none;
    }

    .message_sec .cont .summary_box .summary_text {
        letter-spacing: 0.03em;
        background-color: unset;
    }

    .message_sec .cont .summary_box .summary_text.small {
        margin-bottom: 2.051vw;
        font-size: 4.103vw;
        text-align: left;
    }

    .message_sec .cont .summary_box .summary_text {
        margin-bottom: 4.872vw;
        padding: unset;
        font-size: 6.154vw;
        font-weight: 800;
        letter-spacing: 0.05em;
        text-align: left;
    }

    .message_sec .cont .summary_box .summary_text .bg_line {
        padding: 0 0.3em;
    }

    .message_sec .cont .summary_box .summary_text .bg_line.mb {
        margin-bottom: 1.538vw;
    }

    .message_sec .cont .summary_box .text {
        font-size: 5.128vw;
        font-weight: 800;
    }

    .message_sec .cont .summary_box .text .small {
        font-size: 3.590vw;
    }

    /* message_sec end */

    /* footer */
    footer {
        /* 2026-09-18 追従バナーを非表示にしたため無効化（バナーを戻すときは有効化する） */
        /* margin-bottom: 30.769vw; */
        z-index: 1;
    }

    footer .cont {
        padding: 12.821vw 0 4.615vw;
    }

    footer .cont .logo {
        width: 42.308vw;
        margin-bottom: 9.436vw;
    }

    footer .cont .copyright_box {
        font-size: 3.077vw;
        letter-spacing: 0;
    }

    footer .cont .copyright_box .text {
        gap: 1.538vw;
    }

    footer .cont .copyright_box .text::after {
        width: 2.821vw;
        height: 2.821vw;
    }

    footer .cont .copyright_box .copyright {
        margin-top: 1.795vw;
    }

    /* footer end */

    /* 追従バナー */
    .tuijyu_banner_box {
        position: fixed;
        bottom: 0;
        left: 0;
        height: 30.769vw;
        z-index: 99;
        display: none;
    }

    .tuijyu_banner_box .link {
        display: block;
    }

    .tuijyu_banner_box img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    /* 追従バナー end */


    /* 修正mv */

    .mv_sec .flex_box .cont .badge_box {
        gap: 4vw;
        margin-bottom: 6vw;
        justify-content: center;
    }

    .mv_sec .flex_box .cont .badge_box .badge_img {
        width: 40.1vw;
    }

    .mv_sec .wrap.lr {
        width: 90%;
    }

    .mv_sec .flex_box .cont .item_box {
        background-color: #E60012;
        padding: 5.5vw 7vw 7vw 7vw;
        border-radius: 20px;
        margin-bottom: 5vw;
    }

    .mv_sec .flex_box .cont .item_box .text_box {
        margin-bottom: 3vw;
        min-width: 100%;
    }

    .mv_sec .flex_box .cont .item_box .text_box .speech {
        color: #E60012;
        background-color: #fff;
        font-size: 4.1vw;
        margin-bottom: 1em;
        padding: 0.4em 1.2em 0.45em;
    }

    .mv_sec .flex_box .cont .item_box .text_box .price_box .price {
        display: none;
    }

    .mv_sec .flex_box .cont .item_box .text_box .price_box .ttl {
        display: block;
        color: #fff;
        font-size: 7.3vw;
        text-align: left;
    }

    .mv_sec .flex_box .cont .item_box .text_box .price_box .ttl .color {
        color: #fff;
    }

    .mv_sec .flex_box .cont .item_box .text_box .price_box .ttl .color .num {
        color: #FFFF00;
        font-size: 17vw;
        line-height: 1;
        margin: 0.15em 0 0.2em;
    }

    .mv_sec .flex_box .cont .item_box .text_box .price_box .ttl .color .top {
        color: #fff;
        font-size: 3.8vw;
        margin-bottom: .1em;
    }

    .mv_sec .flex_box .cont .item_box .text_box .price_box .ttl .color .column_box {
        font-size: 8.2vw;
        margin-left: 0.2em;
    }

    .mv_sec .flex_box .cont .item_box .text_box .price_box .ttl .color .bottom_box .line {
        font-size: 8.2vw;
        margin-top: 0.8em;
    }

    .mv_sec .flex_box .cont .item_box .text_box .price_box .ttl .color .bottom_box {
        align-items: unset;
    }

    .mv_sec .flex_box .cont .item_box .text_box .price_box .text {
        font-size: 4.1vw;
        color: #fff;
        text-align: center;
    }

    .mv_sec .flex_box .cont .item_box .mv_list ul li .text {
        font-size: 3.1vw;
        padding: 0.75em 0.7em 0.65em;
    }

    .mv_sec .flex_box .cont .item_box .mv_list ul {
        gap: 1.7vw 1.5vw;
        margin-bottom: 0;
    }

    .mv_sec .flex_box .cont .common_cta_box .catch_text {
        margin: 0 auto 2.5vw;
        font-size: 4.4vw;
    }

    .mv_sec .flex_box .cont .common_cta_box .catch_text .large {
        font-size: 9.2vw;
    }

    .mv_sec .flex_box .cont {
        padding: 6vw 0 0;
    }

    .mv_sec .flex_box .cont .item_box .mv_list ul li:nth-child(4) {
        width: 36.7vw;
    }

    .mv_sec .flex_box .cont .item_box .mv_list ul li:last-child {
        width: 36.7vw;
    }

    #sp_header .mail.time {
        right: 22vw;
    }

    /* 無料相談LP */
    .page-template-page-form #sp_header .tel {
        right: 20px;
    }

    .page-template-page-form #sp_header .mail {
        display: none;
    }

    .page-template-page-form .hamburger {
        display: none;
    }

    .page_form .mv_sec {
        padding-bottom: unset;
    }

    .page_form .mv_sec .flex_box .cont {
        padding: 9vw 0 8vw;
    }

    .page_form .mv_sec .catch_area .text {
        font-size: 5.3vw;
        line-height: 1.6;
        letter-spacing: 0.06em;
    }

    .page_form .mv_sec .badge_box {
        gap: 4vw;
        width: 100%;
        margin: 5vw auto 0;
        padding: 4vw;
        margin-bottom: unset;
    }

    .page_form .mv_sec .flex_box .cont .badge_box {
        margin-bottom: unset;
    }

    .page_form .mv_sec .flex_box .cont .badge_box .badge_img {
        width: calc(100% - 4vw) / 2;
    }

    .page_form .works_sec {
        padding: 7vw 0;
    }

    .page_form .works_sec .common_video_box {
        margin-bottom: unset;
        padding-bottom: unset;
    }

    .page_form .common_video_box {
        grid-template-columns: repeat(2, 1fr);
        gap: 7.692vw 5.128vw;
        overflow-x: auto;
    }

    .page_form .common_video_box .link .tag_box .tag {
        padding: 0.2em;
        font-size: 2.2vw;
    }

    .page_form .common_video_box .link .img {
        height: 26vw;
    }

    .page_form .common_video_box .link .title_box .title {
        font-size: 3, 6vw;
    }

    .page_form .plan_sec {
        padding: 7vw 0;
    }

    .page_form .common_page_wrap {
        padding: 7vw 0;
    }

    /* 無料相談LP end */

    /* /form fv_sec */

    section.form_fv_sec .img-sec {
        width: 90%;
    }

    section.form_fv_sec .img-sec .cta_img {
        position: absolute;
        bottom: 35px;
        left: 5%;
        width: 90%;
    }

    section.form_fv_sec .img-sec .hand_img {
        position: absolute;
        bottom: 23px;
        left: -9%;
        width: 34%;
    }

    /* サービス紹介動画制作LP（SP） */

    .page_service_lp section.section_fv {
        height: auto;
        background: url(./image/service-lp/fv_back_sp.webp) no-repeat;
        background-size: cover;
        background-position: center;
    }

    .page_service_lp section.section_fv .wrap {
        padding-top: 12.1vw;
        padding-bottom: 14.4vw;
    }

    .page_service_lp section.section_fv .main_catch {
        font-size: 8.2vw;
        text-align: center;
        white-space: nowrap;
        transform: translateX(-0.8vw);
    }

    .page-template-page-store-movie .page_service_lp section.section_fv .main_catch {
        font-size: 7.2vw;
    }

    .page_service_lp section.section_fv .label {
        width: 89.7vw;
        height: 10.0vw;
        background-image: url(./image/service-lp/fv_label_sp.png);
        background-size: contain;
        background-position: center;
        padding-top: 1.0vw;
        padding-bottom: 1.5vw;
        font-size: 4.1vw;
        padding-left: 0;
        margin-bottom: 4.6vw;
        text-align: center;
    }

    .page-template-page-store-movie .page_service_lp section.section_fv .label {
        font-size: 3.3vw;
    }

    .page_service_lp section.section_fv .sp_video_box {
        text-align: center;
        margin-bottom: 3.8vw;
    }

    .page_service_lp section.section_fv .sp_video_box video {
        width: 79.5vw;
    }

    .page_service_lp section.section_fv .crown_list {
        gap: 0;
        margin-bottom: 10.8vw;
        justify-content: center;
        gap: 0.8vw 2.6vw;
    }

    .page_service_lp section.section_fv .crown_list .crown {
        width: 43.6vw;
    }

    .page_service_lp section.section_fv .crown_list .crown:nth-child(2) {
        order: 3;
    }

    .page_service_lp section.section_fv .contact_box .lead {
        padding: 0 3.1vw;
        font-size: 3.6vw;
        margin: 0 auto;
        margin-bottom: 3.8vw;
        text-align: center;
    }

    .page_service_lp section.section_fv .contact_box .lead:before,
    .page_service_lp section.section_fv .contact_box .lead:after {
        height: 5.1vw;
        bottom: 0.5vw;
    }

    .page_service_lp section.section_fv .contact_box .button_grid {
        gap: 3.5vw;
        justify-content: center;
    }

    .page_service_lp section.section_fv .contact_box .common_button a {
        width: 86vw;
    }

    .common_button a {
        width: 82.1vw;
        line-height: 17.9vw;
        font-size: 4.1vw;
        padding-left: 6.3vw;
    }

    .common_button a:hover {
        box-shadow: 0 6px 0 #AF010B;
        transform: translateY(0);
    }

    .common_button a .arrow {
        width: 6.9vw;
        height: 6.9vw;
        right: 5.1vw;
        background-size: contain;
    }

    .common_button.contact {
        background: #fff;
    }

    .common_button.contact a:before {
        height: 17.9vw;
    }

    .page_service_lp section.section_video_solution {
        padding: 15.4vw 0;
        overflow: hidden;
    }

    .page_service_lp section.section_video_solution .accent_triangle {
        width: 37.2vw;
        z-index: -1;
    }

    .page_service_lp section.section_video_solution .accent_triangle.left {
        top: 9.7vw;
        left: -9.5vw;
    }

    .page_service_lp section.section_video_solution .accent_triangle.right {
        top: 33.3vw;
        right: -12.8vw;
    }

    .page_service_lp section.section_video_solution .accent_triangle.red {
        top: -23.1vw;
        right: -2.6vw;
        z-index: -1;
    }

    .page_service_lp section.section_video_solution .section_head {
        margin-bottom: 7.6vw;
    }

    .page_service_lp section.section_video_solution .section_head .section_title {
        font-size: 6.2vw;
    }

    .page_service_lp section.section_video_solution .section_head .section_title .accent {
        font-size: 7.7vw;
    }

    .page_service_lp section.section_video_solution .section_head .section_title .accent:before {
        font-size: 5.1vw;
        letter-spacing: .5em;
    }

    .page_service_lp section.section_video_solution .trouble_list {
        grid-template-columns: repeat(1, 1fr);
        gap: 6.7vw;
        margin-bottom: 8.7vw;
    }

    .page_service_lp section.section_video_solution .trouble_item {
        position: relative;
    }

    .page_service_lp section.section_video_solution .trouble_item .hukidashi {
        margin-bottom: 0;
        padding: 4vw 3.1vw 3.3vw 21.5vw;
        border-radius: 1.5vw;
        height: 24.6vw;
        text-align: left;
    }

    .page_service_lp section.section_video_solution .trouble_item .hukidashi::before,
    .page_service_lp section.section_video_solution .trouble_item .hukidashi::after {
        display: none;
    }

    .page_service_lp section.section_video_solution .trouble_item .hukidashi .trouble_label {
        top: -2.8vw;
        border-radius: 4.4vw;
        line-height: 1.55;
        padding: 0.3vw 3.1vw;
        font-size: 3.1vw;
    }

    .page_service_lp section.section_video_solution .trouble_item .hukidashi .trouble_label .accent {
        font-size: 3.6vw;
    }

    .page_service_lp section.section_video_solution .trouble_item .hukidashi .trouble_text {
        font-size: 4.1vw;
    }

    .page_service_lp section.section_video_solution .trouble_item .hukidashi .trouble_text small {
        font-size: 3.3vw;
        margin-bottom: .8vw;
    }

    .page_service_lp section.section_video_solution .trouble_item .hukidashi .illust {
        width: 11vw;
        top: 2.8vw !important;
        right: 3.0vw !important;
    }

    .page_service_lp section.section_video_solution .trouble_item .case_box {
        display: block;
        position: absolute;
        left: 4.6vw;
        top: 5.4vw;
    }

    .page_service_lp section.section_video_solution .trouble_item .case_box .icon_box {
        width: 13.3vw;
    }

    .page_service_lp section.section_video_solution .trouble_item .case_box .case_text {
        display: none;
    }

    .page_service_lp section.section_video_solution .problem_message {
        margin-bottom: 12.8vw;
    }

    .page_service_lp section.section_video_solution .problem_message .message_text {
        font-size: 5.1vw;
        line-height: 1.75;
    }

    .page_service_lp section.section_video_solution .problem_message .message_text .medium {
        font-size: 5.6vw;
    }

    .page_service_lp section.section_video_solution .problem_message .message_text .dotted:before {
        font-size: 5.1vw;
    }

    .page_service_lp section.section_video_solution .problem_message .message_text .accent {
        font-size: 6.2vw;
        padding: 0 2.1vw;
    }

    .page_service_lp section.section_video_solution .arrow_box {
        margin-bottom: 10.3vw;
    }

    .page_service_lp section.section_video_solution .arrow_box img {
        width: 41.0vw;
    }

    .page_service_lp section.section_video_solution .solution_head {
        font-size: 6.2vw;
        margin-bottom: 12.8vw;
    }

    .page_service_lp section.section_video_solution .solution_head .solution_label {
        padding: 0 2.3vw 0 4.6vw;
        font-size: 5.1vw;
    }

    .page_service_lp section.section_video_solution .solution_head .solution_label:before,
    .page_service_lp section.section_video_solution .solution_head .solution_label:after {
        width: 2px;
        height: 5.9vw;
        bottom: 0.5vw;
    }

    .page_service_lp section.section_video_solution .solution_head .solution_title {
        display: inline-block;
        position: relative;
        z-index: 2;
        line-height: 1.4;
    }

    .page_service_lp section.section_video_solution .solution_head .solution_title:before {
        display: none;
    }

    .page_service_lp section.section_video_solution .solution_head .sp_border {
        position: relative;
        line-height: 1.7;
    }

    .page_service_lp section.section_video_solution .solution_head .sp_border:before {
        content: "";
        width: 100%;
        height: 3vw;
        background: #FFF7B9;
        position: absolute;
        left: 0;
        bottom: 0;
        z-index: -1;
        filter: blur(3px);
    }

    .page_service_lp section.section_video_solution .solution_head .solution_title .accent {
        font-size: 7.7vw;
    }

    .page_service_lp.corporate-movie section.section_video_solution .solution_head .solution_title .accent {
        font-size: 6.8vw;
    }

    .page_service_lp section.section_video_solution .solution_contents {
        display: block;
    }

    .page_service_lp section.section_video_solution .solution_contents .movie_box {
        width: 100%;
        margin-bottom: 4.1vw;
    }

    .page_service_lp section.section_video_solution .solution_contents .illust_box {
        margin-bottom: 4.1vw;
    }

    .page_service_lp section.section_video_solution .solution_contents .solution_text_box {
        width: 100%;
    }

    .page_service_lp section.section_video_solution .solution_contents .solution_text_box .solution_text_title {
        font-size: 4.6vw;
        padding-bottom: 2.3vw;
        margin-bottom: 3.3vw;
    }

    .page_service_lp section.section_video_solution .solution_contents .solution_text_box .solution_text_title .medium {
        font-size: 5.6vw;
    }

    .page-template-page-store-movie .page_service_lp section.section_video_solution .solution_contents .solution_text_box .solution_text_title .medium {
        font-size: 5vw;
    }

    .page-template-page-store-movie .page_service_lp section.section_video_solution .solution_contents .solution_text_box .solution_text_title .accent {
        font-size: 6vw;
    }

    .page_service_lp section.section_video_solution .solution_contents .solution_text_box .solution_text_title .accent {
        font-size: 6.7vw;
    }

    .page_service_lp section.section_video_solution .solution_contents .solution_text_box .solution_text {
        font-size: 3.6vw;
        letter-spacing: .08em;
    }

    .page_service_lp section.section_editica {
        background: url(./image/service-lp/editica_back_sp.webp) no-repeat;
        background-size: cover;
        background-position: center;
        padding: 16.9vw 0 15.4vw;
    }

    .page_service_lp section.section_editica .section_head {
        margin: 0 auto 9.2vw;
    }

    .page_service_lp section.section_editica .section_head .logo_box {
        font-size: 4.1vw;
    }

    .page_service_lp section.section_editica .section_head .logo_box {
        margin-bottom: 0.5vw;
    }

    .page_service_lp section.section_editica .section_head .logo_box img {
        width: 28.7vw;
        margin-right: 1.0vw;
    }

    .page_service_lp section.section_editica .section_head .section_title {
        font-size: 5.1vw;
        margin-bottom: 6.9vw;
        padding: 0 9.5vw;
    }

    .page_service_lp section.section_editica .section_head .section_title:before,
    .page_service_lp section.section_editica .section_head .section_title:after {
        width: 10.3vw;
        height: 28.7vw;
    }

    .page_service_lp section.section_editica .section_head .section_title:before {
        left: 0;
    }

    .page_service_lp section.section_editica .section_head .section_title:after {
        right: 0;
        background-image: url(./image/service-lp/ribon_right.svg);
    }

    .page_service_lp section.section_editica .section_head .section_title .accent {
        font-size: 8.2vw;
        margin-bottom: 0.8vw;
        display: inline-block;
    }

    .page_service_lp section.section_editica .section_head .section_title small {
        font-size: 4.6vw;
    }

    .page_service_lp section.section_editica .section_head .lead_text p {
        font-size: 3.6vw;
    }

    .page_service_lp section.section_editica .change_head {
        margin: 0 auto 2.8vw;
        padding: 0 3.1vw 0 5.1vw;
    }

    .page_service_lp section.section_editica .change_head:before,
    .page_service_lp section.section_editica .change_head:after {
        width: 2px;
        height: 10.3vw;
        bottom: 0;
    }

    .page_service_lp section.section_editica .change_head .change_title {
        font-size: 4.6vw;
    }

    .page_service_lp section.section_editica .comparison_box {
        grid-template-columns: repeat(1, 1fr);
        gap: 0;
    }

    .page_service_lp section.section_editica .comparison_box .comparison_item {
        padding: 2.6vw;
        padding-bottom: 6.7vw;
    }

    .page_service_lp section.section_editica .comparison_box .comparison_item .comparison_label {
        line-height: 11.3vw;
        font-size: 4.4vw;
        margin-bottom: 3.3vw;
    }

    .page_service_lp section.section_editica .comparison_box .comparison_item .image_box {
        margin-bottom: 4.6vw;
    }

    .page_service_lp section.section_editica .comparison_box .comparison_item .image_box img {
        width: 62.1vw;
    }

    .page_service_lp section.section_editica .comparison_box .comparison_item.movie .image_box img {
        width: 64.4vw;
    }

    .page_service_lp section.section_editica .comparison_box .comparison_item.movie .image_box {
        margin-bottom: 2.8vw;
    }

    .page_service_lp section.section_editica .comparison_box .comparison_item.movie .image_box img {
        width: 64vw;
    }

    .page_service_lp section.section_editica .comparison_box .comparison_item ul.comparison_list {
        margin: 0 2.6vw;
    }

    .page_service_lp section.section_editica .comparison_box .comparison_item ul.comparison_list li {
        padding-left: 7.2vw;
        padding-bottom: 3.1vw;
        font-size: 3.1vw;
    }

    .page_service_lp section.section_editica .comparison_box .comparison_item ul.comparison_list li:before {
        width: 4.9vw;
        height: 4.4vw;
        top: 1.3vw;
    }

    .page_service_lp section.section_editica .comparison_box .comparison_item.movie ul.comparison_list li:before {
        width: 5.6vw;
        height: 5.6vw;
        top: -1.3vw;
    }

    .page_service_lp section.section_editica .comparison_box .comparison_item ul.comparison_list li+li {
        margin-top: 4.1vw;
    }

    .page_service_lp section.section_editica .comparison_box .comparison_item ul.comparison_list li .accent {
        font-size: 4vw;
        letter-spacing: 0;
    }

    .page_service_lp section.section_editica .comparison_box .comparison_item.movie ul.comparison_list li .accent {
        font-size: 4.3vw;
    }

    .page_service_lp section.section_editica .comparison_box .arrow_bottom {
        text-align: center;
        margin-bottom: 4.1vw;
    }

    .page_service_lp section.section_editica .comparison_box .arrow_bottom img {
        width: 41.0vw;
    }

    .page_service_lp .common_section_head {
        margin-bottom: 7.7vw;
    }

    .page_service_lp .common_section_head .eng {
        font-size: 5.6vw;
    }

    .page_service_lp .common_section_head .section_title {
        font-size: 5.6vw;
        line-height: 1.45;
    }

    .page_service_lp .common_section_head .section_title small {
        font-size: 5.6vw;
    }

    .page_service_lp .common_section_head .section_title .accent {
        font-size: 6.7vw;
    }

    .page_service_lp .common_section_head .lead_text {
        margin-top: 2.8vw;
        font-size: 3.6vw;
        letter-spacing: .05em;
    }

    .page_service_lp section.section_feature {
        padding: 14.1vw 0 20.0vw;
    }

    .page_service_lp section.section_feature .feature_box {
        border: 2px solid #1A1A1A;
        padding: 6.2vw 5.1vw;
    }

    .page_service_lp section.section_feature .feature_box .feature_item {
        padding-bottom: 7.7vw;
    }

    .page_service_lp section.section_feature .feature_box .feature_item+.feature_item {
        margin-top: 7.7vw;
    }

    .page_service_lp section.section_feature .feature_box .feature_item .image_box {
        width: 100%;
        margin-bottom: 3.1vw;
    }

    .page_service_lp section.section_feature .feature_box .feature_item .image_box img {
        width: 100%;
        height: 35.9vw;
        object-fit: cover;
        border-radius: 1.5vw;
    }

    .page_service_lp section.section_feature .feature_box .feature_item:nth-child(even) .image_box {
        order: -1;
    }

    .page_service_lp section.section_feature .feature_box .feature_item .text_box {
        width: 100%;
    }

    .page_service_lp section.section_feature .feature_box .feature_item .text_box .feature_label {
        font-size: 4.6vw;
        padding-left: 4.9vw;
        background-size: 3.8vw;
        margin-bottom: 1.8vw;
    }

    .page_service_lp section.section_feature .feature_box .feature_item .text_box .feature_title {
        font-size: 5.6vw;
        padding: 0;
        margin-bottom: 2.1vw;
        background: none;
    }

    .page-template-page-store-movie .page_service_lp section.section_feature .feature_box .feature_item .text_box .feature_title {
        font-size: 5.6vw;
    }

    .page_service_lp section.section_feature .feature_box .feature_item .text_box .feature_title .label {
        background: #EB5451;
        background: linear-gradient(180deg, rgba(235, 84, 81, 1) 0%, rgba(190, 0, 6, 1) 100%);
        padding: 0.5vw 2.3vw;
        border-radius: 0.8vw;
        display: inline-block;
    }

    .page_service_lp section.section_feature .feature_box .feature_item .text_box .feature_title .label:last-child {
        margin-top: 1.5vw;
    }

    .page_service_lp section.section_feature .feature_box .feature_item .text_box .feature_text {
        letter-spacing: .08em;
        font-size: 3.6vw;
    }

    .page_service_lp section.section_common_cta {
        background: url(./image/service-lp/cta_back_sp.webp) no-repeat;
        background-size: cover;
        background-position: center;
        padding: 10.5vw 0 11.5vw;
    }

    .page_service_lp section.section_common_cta:after {
        display: none;
    }

    .page_service_lp section.section_common_cta .label {
        border-radius: 1.5vw;
        font-size: 5.1vw;
        height: 10.0vw;
        line-height: 8.2vw;
        padding: 0 3.3vw 0 4.4vw;
        white-space: nowrap;
        top: -4.6vw;
    }

    .page_service_lp section.section_common_cta .label small {
        font-size: 4.4vw;
    }

    .page_service_lp section.section_common_cta .label::before {
        border-width: 11px 11.5px 0 11.5px;
    }

    .page_service_lp section.section_common_cta .label::after {
        border-width: 8.2px 8.6px 0 8.6px;
    }

    .page_service_lp section.section_common_cta .catch {
        font-size: 6.2vw;
        margin-bottom: 1.3vw;
        line-height: 1.45;
    }

    .page_service_lp section.section_common_cta .catch .big {
        font-size: 8.2vw;
    }

    .page_service_lp section.section_common_cta .catch small {
        font-size: 6.2vw;
    }

    .page_service_lp section.section_common_cta .text {
        margin-bottom: 4.9vw;
        font-size: 3.3vw;
    }

    .common_contact_box {
        width: 100%;
        padding: 3.8vw;
        padding-bottom: 4.9vw;
    }

    .common_contact_box .lead {
        margin: 0 auto 3.1vw;
        padding: 0 3.8vw;
        font-size: 3.8vw;
        text-align: center;
    }

    .common_contact_box .lead:before,
    .common_contact_box .lead:after {
        width: 2px;
        height: 5.1vw;
        bottom: 0.5vw;
    }

    .common_contact_box .button_grid {
        position: relative;
        gap: 3.5vw;
    }

    .common_contact_box .button_grid:before {
        display: none;
    }

    .page_service_lp section.section_use_cases {
        background: url(./image/service-lp/user_case_back_sp.webp) no-repeat;
        background-size: cover;
        background-position: center;
        padding: 15.4vw 0;
    }

    .page_service_lp section.section_use_cases .cont,{
        padding: 5.6vw 4.9vw 6.2vw 4.9vw;
    }

    .page_service_lp section.section_use_cases .cont .tab-container,
    .page_service_lp section.section_works .cont .tab-container {
        gap: 2.1vw;
    }

    .page_service_lp section.section_use_cases .cont .tab-container .tab,
    .page_service_lp section.section_works .cont .tab-container .tab {
        width: 23.1vw;
        line-height: 1.4;
        border-radius: 6px 6px 0 0;
        font-size: 3.3vw;
        padding: 1.3vw 0 1.0vw;
    }

    .page_service_lp section.section_use_cases .cont .content-container,
    .page_service_lp section.section_works .cont .content-container {
        margin-bottom: 9.2vw;
    }

    .page_service_lp section.section_use_cases .cont .content-container .content {
        padding: 6.2vw 5.1vw;
        border-radius: 8px;
        background: url(./image/service-lp/stripe.svg) no-repeat;
        background-size: cover;
        background-position: center;
    }

    .page_service_lp section.section_use_cases .cont .content-container .content .image {
        width: 100%;
        height: auto;
        display: block;
        padding-top: 0;
        margin-bottom: 1.3vw;
        text-align: center;
    }

    .page_service_lp section.section_use_cases .cont .content-container .content .image img {
        width: 64.1vw;
    }

    .page_service_lp section.section_use_cases .cont .content-container .content:nth-child(3) .image {
        width: 100%;
    }

    .page_service_lp section.section_use_cases .cont .content-container .content:nth-child(3) .image img {
        width: 59.2vw;
    }

    .page_service_lp section.section_use_cases .cont .content-container .content .text_box {
        width: 100%;
        padding-top: 0;
    }

    .page_service_lp section.section_use_cases .cont .content-container .content .text_box .catch {
        font-size: 6.2vw;
        text-align: center;
    }

    .page_service_lp section.section_use_cases .cont .content-container .content .text_box .catch small {
        font-size: 3.8vw;
        display: block;
    }

    .page_service_lp section.section_use_cases .cont .content-container .content .text_box .lead {
        text-align: center;
        font-size: 3.3vw;
        padding-bottom: 3.1vw;
        margin-bottom: 2.6vw;
    }

    .page_service_lp section.section_use_cases .cont .content-container .content .text_box .text {
        font-size: 3.3vw;
    }

    .page_service_lp section.section_use_cases .cont {
    padding: 5vw;
}

    .page_service_lp section.section_usage_flow .common_section_head .section_title {
        font-size: 5.1vw;
    }

    .page_service_lp section.section_usage_flow .common_section_head .section_title .accent {
        font-size: 6.2vw;
    }

    .page_service_lp section.section_usage_flow .flow_step_list {
        grid-template-columns: repeat(1, 1fr);
        gap: 7.2vw;
    }

    .page_service_lp section.section_usage_flow .flow_step_list .flow_step_item {
        border-radius: 6px;
        padding: 2.3vw 2.6vw 4.9vw;
        position: relative;
    }

    .page_service_lp section.section_usage_flow .flow_step_list .flow_step_item:after {
        content: "";
        width: 0;
        height: 0;
        border-style: solid;
        border-right: 30px solid transparent;
        border-left: 30px solid transparent;
        border-top: 16px solid #FCABA9;
        border-bottom: 0;
        position: absolute;
        left: 50%;
        bottom: -16px;
        transform: translateX(-50%);
    }

    .page_service_lp section.section_usage_flow .flow_step_list .flow_step_item:last-child::after {
        display: none;
    }

    .page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_head {
        display: none;
    }

    .page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_box .step_title {
        font-size: 4.1vw;
        line-height: 8.7vw;
        margin-bottom: 4.1vw;
    }

    .page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_box .step_title .num {
        font-size: 4.9vw;
        display: inline-block;
        font-family: 'DIN2014';
        color: #E50012;
        margin-right: 2.1vw;
    }

    .page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_box .step_image {
        margin-bottom: 0;
    }

    .page_service_lp section.section_usage_flow .flow_step_list .flow_step_item:nth-child(1) .step_box .step_image {
        margin-top: 0;
        margin-bottom: 0;
        width: 20.5vw;
    }

    .page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_box .step_text {
        font-size: 3.8vw;
    }

    .page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_box .step_text small {
        font-size: 80%;
    }

    .page_service_lp section.section_usage_flow .flow_step_list .flow_step_item:nth-child(1) .step_box .step_text.large {
        font-size: 3.8vw;
    }

    .page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_text_group {
        margin: 0 5.8vw;
    }

    .page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_box ul li {
        padding-bottom: 4.1vw;
    }

    .page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_box ul li .sp_flex {
        display: flex;
        justify-content: center;
        gap: 4.1vw;
        align-items: center;
    }

    .page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_box ul li .sp_flex .step_text {
        text-align: left;
    }

    .page_service_lp section.section_usage_flow .flow_step_list .flow_step_item:nth-child(4) .step_box ul li .sp_flex .step_text {
        width: 20.5vw;
    }

    .page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_box ul li:after {
        border-right: 11px solid transparent;
        border-left: 11px solid transparent;
        border-top: 10px solid #F0D1D1;
        bottom: -10px;
    }

    .page_service_lp section.section_usage_flow .flow_step_list .flow_step_item .step_box ul li+li {
        margin-top: 4.1vw;
    }

    .page_service_lp section.section_usage_flow .flow_step_list .flow_step_item:nth-child(4) .step_box ul li+li {
        margin-top: 3.5vw;
    }

    .page_service_lp section.section_usage_flow .flow_step_list .flow_step_item:nth-child(3) .step_box ul li+li {
        margin-top: 4.1vw;
    }

    .page_service_lp section.section_works {
        padding: 14.1vw 0 29.5vw;
    }

    .page_service_lp section.section_works .common_section_head .section_title {
        font-size: 7.7vw;
    }

    .page_service_lp section.section_works .common_section_head .section_title .accent {
        font-size: 7.7vw;
    }

    .page_service_lp section.section_works .accent_triangle {
        width: 41.0vw;
    }

    .page_service_lp section.section_works .accent_triangle.left {
        left: -11.8vw;
        top: 12.8vw;
    }

    .page_service_lp section.section_works .accent_triangle.right {
        right: -13.8vw;
        top: 95.6vw;
    }

    .page_service_lp section.section_works .accent_triangle.right img {
        width: 100%;
    }

    .page_service_lp section.section_works .slide {
        padding: 5.1vw;
        padding-bottom: 7.7vw;
        margin: 0 2.6vw;
        width: 89.7vw;
    }

    .page_service_lp section.section_works .slide .in_flex {
        display: block;
    }

    .page_service_lp section.section_works .slide .image {
        width: 100%;
        margin-bottom: 3.6vw;
    }

    .page_service_lp section.section_works .slide .video {
        width: 100%;
        margin-bottom: 3.6vw;
    }

    .page_service_lp section.section_works .slide .image:before {
        width: 13.3vw;
        height: 13.3vw;
    }

    .page_service_lp section.section_works .slide .text_box {
        width: 100%;
    }

    .page_service_lp section.section_works .slide .text_box .company {
        font-size: 3.3vw;
    }

    .page_service_lp section.section_works .slide .text_box .name {
        font-size: 5.6vw;
        padding-bottom: 2.1vw;
        margin-bottom: 2.8vw;
    }

    .page_service_lp section.section_works .slide .text_box .name small {
        font-size: 4.6vw;
    }

    .page_service_lp section.section_works .slide .text_box .lead {
        font-size: 3.3vw;
        margin-bottom: 5vw;
    }

    .page_service_lp section.section_works .slide .text_box .button {
        width: 50vw;
        line-height: 12vw;
        padding-left: 5vw;
        margin: 0 auto;
    }

    .page_service_lp section.section_works .slide .text_box .button:after {
        width: 5vw;
        height: 5vw;
        right: 4vw;
    }

    .page_service_lp section.section_works .slide .text_box .button:hover {
        color: #fff;
        background: #ED716F;
        background: linear-gradient(180deg, rgba(237, 113, 111, 1) 0%, rgba(200, 2, 8, 1) 100%);
    }

    .page_service_lp section.section_works .slide .text_box .button:hover::after {
        background-image: url(./image/service-lp/arrow_red.svg);
    }

    .page_service_lp section.section_works .cont .content-container .content {
        padding:6vw 5vw 1vw;
}

.page_service_lp .section_works .cont .text_box .box_title {
    font-size: 4vw;
}
.page_service_lp .section_works .cont .text_box .box_title {
    font-size: 3.8vw;
}
.page_service_lp .section_works .cont .text_box dl dt {
    font-size: 5vw;
    letter-spacing: 0;
}

.page_service_lp section.section_works .slider_box::before {
    width: 20vw;
    height: 20vw;
}


.page_service_lp section.section_works .slider_box::after {
    font-size: 4vw;
    top: 1.7vw;
    left: 1.9vw;
}



    .page_service_lp .modal {
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, .6);
        display: none;
        z-index: 9999;
    }

    .page_service_lp .modal .js_modal_close {
        top: -15px;
        right: -15px;
        width: 10.3vw;
    }

    .page_service_lp .modal_inner {
        padding: 6.4vw 5.1vw;
        width: 90vw;
        height: 90vh;
    }

    .page_service_lp .modal_inner .in_flex {
        margin-bottom: 7.7vw;
        display: block;
    }

    .page_service_lp .modal_inner .image {
        width: 100%;
        margin-bottom: 2.6vw;
    }

    .page_service_lp .modal_inner .image:before {
        width: 13.3vw;
        height: 13.3vw;
    }

    .page_service_lp .modal_inner .video {
        width: 100%;
        height: 44.6vw;
        margin-bottom: 2.6vw;
    }

    .page_service_lp .modal_inner .text_box {
        width: 100%;
    }

    .page_service_lp .modal_inner .text_box .company {
        font-size: 3.3vw;
    }

    .page_service_lp .modal_inner .text_box .name {
        font-size: 5.6vw;
        padding-bottom: 1.8vw;
        margin-bottom: 2.3vw;
    }

    .page_service_lp .modal_inner .text_box .name small {
        font-size: 4.6vw;
    }

    .page_service_lp .modal_inner .text_box .lead {
        font-size: 3.3vw;
        margin-bottom: 0;
        letter-spacing: .07em;
    }

    .page_service_lp .modal_inner .information_box {
        height: auto;
        overflow: initial;
        padding: 4.6vw 3.8vw 6.4vw;
    }

    .page_service_lp .modal_inner .information_box .box+.box {
        margin-top: 10.3vw;
    }

    .page_service_lp .modal_inner .information_box .box .box_title {
        font-size: 3.8vw;
        padding-left: 2.6vw;
        margin-bottom: 3.1vw;
    }

    .page_service_lp .modal_inner .information_box .box .box_title:before {
        width: 3px;
        height: 5.1vw;
    }

    .page_service_lp .modal_inner .information_box .box dl dt {
        font-size: 5.1vw;
        padding-bottom: 3.1vw;
        margin-bottom: 3.8vw;
    }

    .page_service_lp .modal_inner .information_box .box dl dd {
        font-size: 3.6vw;
        letter-spacing: .05em;
    }

    .page_service_lp section.section_works .slick-list {
        overflow: hidden;
    }

    .page_service_lp section.section_works .slick-dots {
        bottom: -10.5vw;
    }

    .page_service_lp section.section_works .slick-dots li {
        width: 3.1vw;
        height: 3.1vw;
        margin: 0 2.9vw;
    }

    .page_service_lp section.section_works .slick-arrow {
        width: 10.3vw;
        height: 10.3vw;
        top: calc(100% + 7.7vw);
    }

    .page_service_lp section.section_works .slick-prev {
        left: 16.4vw;
    }

    .page_service_lp section.section_works .slick-next {
        right: 16.4vw;
    }

    .page_service_lp section.section_strategy {
        background: url(./image/service-lp/strategy_back_sp.webp) no-repeat;
        background-size: cover;
        background-position: center;
        padding: 15.4vw 0 16.2vw;
    }

    .page_service_lp section.section_strategy .common_section_head {
        margin-bottom: 9.2vw;
    }

    .page_service_lp section.section_strategy .common_section_head .section_title {
        font-size: 5.6vw;
    }

    .page_service_lp section.section_strategy .common_section_head .section_title .accent {
        font-size: 7.7vw;
    }

    .page_service_lp section.section_strategy .common_section_head .section_title .medium {
        font-size: 6.2vw;
    }

    .page_service_lp section.section_strategy .strategy_catch {
        margin: 0 auto 3.3vw;
        font-size: 3.8vw;
        padding: 0 4.6vw;
    }

    .page_service_lp section.section_strategy .strategy_catch:before,
    .page_service_lp section.section_strategy .strategy_catch:after {
        height: 5.1vw;
        bottom: -0.5vw;
    }

    .page_service_lp section.section_strategy .strategy_list {
        grid-template-columns: repeat(1, 1fr);
        gap: 2.1vw;
        margin-bottom: 6.2vw;
    }

    .page_service_lp section.section_strategy .strategy_item {
        border-radius: 6px;
        padding: 4.9vw 5.1vw 4.6vw 16.9vw;
        background-position: 3.6vw;
        background-size: 9.7vw;
    }

    .page_service_lp section.section_strategy .strategy_item .strategy_text {
        font-size: 4.6vw;
        padding-bottom: 1.5vw;
    }

    .page_service_lp section.section_strategy .strategy_item .strategy_text small {
        font-size: 3.6vw;
    }

    .page_service_lp section.section_strategy .message_box .message_text {
        font-size: 4.6vw;
        margin-bottom: 1.8vw;
    }

    .page_service_lp section.section_strategy .message_box .message_accent {
        font-size: 6.2vw;
        padding: 0.5vw 0 0.5vw 3.1vw;
    }

    .page_service_lp section.section_support {
        padding: 15.4vw 0;
    }

    .page_service_lp section.section_support .wrap.bottom {
        max-width: 100%;
    }

    .page_service_lp section.section_support .common_section_head .section_title {
        font-size: 6.9vw;
        white-space: nowrap;
    }

    .page_service_lp section.section_support .common_section_head .section_title small {
        font-size: 5.1vw;
        white-space: initial;
        margin-top: 0;
        margin-bottom: 2vw;
    }

    .page_service_lp section.section_support .support_list {
        grid-template-columns: repeat(1, 1fr);
        gap: 6.4vw;
        margin-bottom: 5.6vw;
    }

    .page_service_lp section.section_support .support_item {
        text-align: left;
    }

    .page_service_lp section.section_support .support_item .in_wrap {
        padding: 7.3vw 6.4vw 5.1vw 27.9vw;
    }

    .page_service_lp section.section_support .support_item .in_wrap:after {
        width: 17.9vw;
        height: 17.9vw;
        left: 3.8vw;
        transform: translate(0, -50%);
    }

    .page_service_lp section.section_support .support_item .support_label {
        line-height: 5.1vw;
        font-size: 3.6vw;
        top: -2.6vw;
        width: 21.5vw;
    }

    .page_service_lp section.section_support .support_item .support_label:before {
        border-right: 8.5px solid transparent;
        border-left: 8.5px solid transparent;
        border-top: 6.5px solid #C80208;
        bottom: -4px;
    }

    .page_service_lp section.section_support .support_item .support_text {
        font-size: 4.6vw;
        padding-left: 6.4vw;
        background-size: 6.4vw;
        padding-bottom: 1.5vw;
    }

    .page_service_lp section.section_support .support_item .image_box {
        left: 0;
        top: 0;
        transform: translateX(0);
        width: 26.5vw;
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .page_service_lp section.section_support .support_item:nth-child(1) .image_box img {
        width: 20.5vw;
    }

    .page_service_lp section.section_support .support_item:nth-child(2) .image_box {
        top: 0;
    }

    .page_service_lp section.section_support .support_item:nth-child(2) .image_box img {
        width: 17.9vw;
    }

    .page_service_lp section.section_support .support_item:nth-child(3) .image_box {
        top: 0;
    }

    .page_service_lp section.section_support .support_item:nth-child(3) .image_box img {
        width: 19.5vw;
    }

    .page_service_lp section.section_support .support_message {
        margin-bottom: 3.6vw;
    }

    .page_service_lp section.section_support .support_message .support_title {
        font-size: 5.9vw;
        margin: 0 auto 13.3vw;
    }

    .page_service_lp section.section_support .support_message .support_title:before {
        display: none;
    }

    .page_service_lp section.section_support .support_message .support_title .border {
        position: relative;
    }

    .page_service_lp section.section_support .support_message .support_title .border:before {
        content: "";
        width: 100%;
        height: 3vw;
        background: #FFF7B9;
        position: absolute;
        left: 0;
        bottom: 0;
        z-index: -1;
        filter: blur(3px);
    }

    .page_service_lp section.section_support .support_message .support_sub_title {
        font-size: 4.4vw;
        padding: 0 4.6vw 0 7.4vw;
    }

    .page_service_lp section.section_support .support_message .support_sub_title:before,
    .page_service_lp section.section_support .support_message .support_sub_title:after {
        border-right: 10px solid transparent;
        border-left: 10px solid transparent;
        border-top: 13px solid #FFB7B5;
        top: auto;
        bottom: 5px;
    }

    .page_service_lp section.section_support .creator_list {
        width: 100%;
        display: block;
        white-space: nowrap;
        overflow: scroll;
        padding: 0 5vw;
    }

    .page_service_lp section.section_support .creator_item {
        display: inline-block;
        white-space: initial;
        width: 41.0vw;
    }

    .page_service_lp section.section_support .creator_item+.creator_item {
        margin-left: 3.1vw;
    }

    .page_service_lp section.section_support .creator_item .catch_box {
        top: 36.4vw;
        font-size: 3.6vw;
    }

    .page_service_lp section.section_support .creator_item .catch_box span {
        padding: 0.8vw 1.8vw 0.8vw 1.8vw;
        letter-spacing: 0.02em;
    }

    .page_service_lp section.section_support .creator_item .catch_box span:last-child {
        margin-top: 1.0vw;
    }

    .page_service_lp section.section_support .creator_item .image_box {
        margin-bottom: 2.6vw;
    }

    .page_service_lp section.section_support .creator_item .position {
        font-size: 3.6vw;
        padding-left: 4.6vw;
        background-size: 3.5vw;
        margin-bottom: 0.8vw;
    }

    .page_service_lp section.section_support .creator_item .name {
        font-size: 3.1vw;
        padding-left: 4.6vw;
    }

    .page_service_lp section.section_support .creator_item .name:before {
        width: 3.1vw;
    }

    .page_service_lp section.section_price {
        background: url(./image/service-lp/price_back_sp.webp) no-repeat;
        background-size: cover;
        background-position: center;
        padding: 15.4vw 0 16.4vw;
    }

    .page_service_lp section.section_price .wrap {
        max-width: 100%;
    }

    .page_service_lp section.section_price .common_section_head {
        margin-bottom: 6.4vw;
    }

    .page_service_lp section.section_price .common_section_head .section_title {
        font-size: 7.7vw;
    }

    .page_service_lp section.section_price .common_section_head .section_title .accent {
        font-size: 7.7vw;
    }

    .page_service_lp section.section_price .comparison_table {
        margin-bottom: 16.7vw;
        overflow: scroll;
        margin-left: 5vw;
    }

    .page_service_lp section.section_price .comparison_table table {
        width: 249.7vw;
        border-spacing: 16px 0;
        transform: translateX(-16px);
        padding-bottom: 1.0vw;
    }

    .page_service_lp section.section_price .comparison_table table thead th {
        border-radius: 10px 10px 0 0;
        font-size: 4.6vw;
        line-height: 12.8vw;
        width: 59.5vw;
    }

    .page_service_lp section.section_price .comparison_table table thead th:first-child {
        display: none;
    }

    .page_service_lp section.section_price .comparison_table table thead th.editica {
        width: 59.7vw;
    }

    .page_service_lp section.section_price .comparison_table table thead th.editica .logo img {
        width: 30.8vw;
    }

    .page_service_lp section.section_price .comparison_table table tbody:before {
        display: none;
    }

    .page_service_lp section.section_price .comparison_table table tbody th {
        display: none;
    }

    .page_service_lp section.section_price .comparison_table table tbody td {
        height: 16.9vw;
        font-size: 5.6vw;
        line-height: 1.3;
    }

    .page_service_lp section.section_price .comparison_table table tbody td:nth-child(2) {
        height: 17.9vw;
    }

    .page_service_lp section.section_price .comparison_table table tbody td:before {
        width: 51.8vw;
    }

    .page_service_lp section.section_price .comparison_table .shadow {
        width: 56.9vw;
        height: calc(100% - 3.2px);
    }

    .page_service_lp section.section_price .comparison_table .shadow_1 {
        left: 0;
        width: 56.9vw;
    }

    .page_service_lp section.section_price .comparison_table .shadow_2 {
        left: 61.5vw;
    }

    .page_service_lp section.section_price .comparison_table .shadow_3 {
        left: 122.9vw;
    }

    .page_service_lp section.section_price .comparison_table .shadow_4 {
        left: 184.4vw;
    }

    .page_service_lp section.section_price .comparison_table table tbody td .title {
        display: block;
        font-size: 3.6vw;
        font-weight: 700;
        color: #333333;
    }

    .page_service_lp section.section_price .plan_box .common_section_head {
        margin-bottom: 6.4vw;
    }

    .page_service_lp section.section_price .plan_box .common_section_head .section_title {
        font-size: 7.7vw;
    }

    .page_service_lp section.section_price .plan_box .common_section_head .section_title small {
        font-size: 4.6vw;
    }

    .page_service_lp section.section_price .plan_box .wrap {
        max-width: 90%;
        padding: 0;
    }

    .page_service_lp section.section_price .plan_box .plan_list {
        grid-template-columns: repeat(1, 1fr);
        gap: 5.1vw;
        margin-bottom: 5.6vw;
    }

    .page_service_lp section.section_price .plan_box .plan_item:before {
        border-left: 20px solid transparent;
        border-bottom: 20px solid #F23936;
    }

    .page_service_lp section.section_price .plan_box .plan_item:nth-child(2)::before {
        border-bottom: 20px solid #E50012;
    }

    .page_service_lp section.section_price .plan_box .plan_item:nth-child(3)::before {
        border-bottom: 20px solid #DE1E43;
    }

    .page_service_lp section.section_price .plan_box .plan_name {
        font-size: 4.6vw;
        line-height: 11.8vw;
    }

    .page_service_lp section.section_price .plan_box .plan_name .en {
        font-size: 6.7vw;
    }

    .page_service_lp section.section_price .plan_box .plan_inner {
        padding: 3.8vw 5.1vw;
        padding-bottom: 5.9vw;
    }

    .page_service_lp section.section_price .plan_box .plan_inner .plan_target {
        font-size: 4.1vw;
        padding-left: 6.4vw;
        margin-bottom: 0;
    }

    .page_service_lp section.section_price .plan_box .plan_inner .plan_target:before {
        width: 20px;
        height: 27px;
    }

    .page_service_lp section.section_price .plan_box .plan_inner .price_box {
        width: fit-content;
        margin: 0 auto;
        padding: 0 11.2vw;
    }

    .page_service_lp section.section_price .plan_box .plan_inner .price_box:before,
    .page_service_lp section.section_price .plan_box .plan_inner .price_box:after {
        width: 6.2vw;
        height: 17.4vw;
        top: 2.6vw;
    }

    .page_service_lp section.section_price .plan_box .plan_inner .price_box:before {
        left: 0;
    }

    .page_service_lp section.section_price .plan_box .plan_inner .price_box:after {
        right: 0;
    }

    .page_service_lp section.section_price .plan_box .plan_inner .price_box .price_label {
        width: 12.8vw;
        height: 12.8vw;
        font-size: 3.3vw;
        padding-top: 1.5vw;
    }

    .page_service_lp section.section_price .plan_box .plan_inner .price_box .price {
        font-size: 5.9vw;
    }

    .page_service_lp section.section_price .plan_box .plan_inner .price_box .price .num {
        font-size: 18.5vw;
        margin-right: 1.0vw;
        margin-left: 1.3vw;
    }

    .page_service_lp section.section_price .plan_box .plan_inner .plan_text {
        padding-top: 3.6vw;
        margin-top: 1.0vw;
        font-size: 3.3vw;
        letter-spacing: .045em;
    }

    .page_service_lp section.section_price .plan_note {
        font-size: 3.6vw;
        letter-spacing: .08em;
    }

    .page_service_lp section.section_process {
        padding: 14.1vw 0 17.9vw;
    }

    .page_service_lp section.section_process .common_section_head {
        margin-bottom: 6.4vw;
    }

    .page_service_lp section.section_process .common_section_head .section_title {
        font-size: 7.7vw;
    }

    .page_service_lp section.section_process .common_section_head .section_title .accent {
        font-size: 7.7vw;
    }

    .page_service_lp section.section_process .process_item {
        display: block;
        position: relative;
    }

    .page_service_lp section.section_process .process_item:after {
        content: "";
        width: 0;
        height: 0;
        border-style: solid;
        border-right: 30px solid transparent;
        border-left: 30px solid transparent;
        border-top: 16px solid #FCABA9;
        border-bottom: 0;
        position: absolute;
        left: 50%;
        bottom: -3.6vw;
        transform: translateX(-50%);
    }

    .page_service_lp section.section_process .process_item:last-child::after {
        display: none;
    }

    .page_service_lp section.section_process .process_item+.process_item {
        margin-top: 6.4vw;
    }

    .page_service_lp section.section_process .process_item .icon_box {
        width: 17.9vw;
        position: absolute;
        left: 0;
        top: 0;
    }

    .page_service_lp section.section_process .process_item:last-child .icon_box {
        top: 1vw;
    }

    .page_service_lp section.section_process .process_item .icon_box:before {
        display: none;
    }

    .page_service_lp section.section_process .process_item .text_box {
        width: 100%;
        padding: 0.5vw 0 4.6vw;
    }

    .page_service_lp section.section_process .process_item:last-child .text_box {
        padding: 0 0 4.6vw;
    }

    .page_service_lp section.section_process .process_item .text_box .step_text {
        width: 100%;
        padding-left: 0;
        margin-left: 22.1vw;
        margin-bottom: 1.2vw;
        margin-top: 1.8vw;
    }

    .page_service_lp section.section_process .process_item:last-child .text_box .step_text {
        margin-top: 0;
        margin-bottom: 1.8vw;
    }

    .page_service_lp section.section_process .process_item .text_box .step_text:before {
        display: none;
    }

    .page_service_lp section.section_process .process_item .text_box .step_text .step {
        font-size: 4.1vw;
    }

    .page_service_lp section.section_process .process_item .text_box .step_text .title {
        font-size: 4.6vw;
        min-height: 10.3vw;
    }

    .page_service_lp section.section_process .process_item .text_box .description_box {
        width: 100%;
        font-size: 3.3vw;
        padding-left: 0;
    }

    .page_service_lp section.section_faq {
        padding-bottom: 20vw;
    }

    .page_service_lp section.section_faq .common_section_head {
        margin-bottom: 6.4vw;
    }

    .page_service_lp section.section_faq .common_section_head .section_title {
        font-size: 7.7vw;
    }

    .page_service_lp section.section_faq .common_section_head .section_title .accent {
        font-size: 7.7vw;
    }

    .page_service_lp section.section_faq .faq_list .faq_item+.faq_item {
        margin-top: 6.4vw;
    }

    .page_service_lp section.section_faq .faq_list .faq_item .faq_question {
        padding: 2.4vw 5.1vw 2.6vw 3vw;
        gap: 2.8vw;
    }

    .page_service_lp section.section_faq .faq_list .faq_item:nth-child(even) .faq_question {
        background: #FFF9F7;
    }

    .page_service_lp section.section_faq .faq_list .faq_item .faq_question::after {
        right: 4.6vw;
        width: 3.6vw;
        height: 3.6vw;
        border-top: 3px solid #1A1A1A;
        border-right: 3px solid #1A1A1A;
    }

    .page_service_lp section.section_faq .faq_list .faq_item .faq_question .question_icon {
        width: 8.7vw;
        height: 8.7vw;
        line-height: 8.7vw;
        font-size: 5.9vw;
    }

    .page_service_lp section.section_faq .faq_list .faq_item .faq_question .question_text {
        font-size: 4.1vw;
        width: 59vw;
    }

    .page_service_lp section.section_faq .faq_list .faq_item .faq_answer {
        padding-top: 2.8vw;
        padding-left: 5.6vw;
        gap: 3.8vw;
    }

    .page_service_lp section.section_faq .faq_list .faq_item .faq_answer .answer_label {
        font-size: 5.9vw;
    }

    .page_service_lp section.section_faq .faq_list .faq_item .faq_answer .answer_text {
        font-size: 3.3vw;
    }

    footer#movie_footer {
        background: url(./image/service-lp/footer_back_sp.webp) no-repeat;
        background-size: cover;
        background-position: center;
        padding: 10.4vw 0 10vw;
        margin-bottom: 0;
    }

    footer#movie_footer .logo {
        margin-bottom: 4.9vw;
    }

    footer#movie_footer .logo img {
        width: 47.4vw;
    }

    footer#movie_footer .company {
        margin-bottom: 12.6vw;
    }

    footer#movie_footer .company a {
        padding-bottom: 2.6vw;
        padding-right: 7.9vw;
        background-position: 100% 0;
        background-size: 5.1vw;
        font-size: 3.1vw;
    }

    footer#movie_footer .copyright small {
        font-size: 3.6vw;
    }

    body.page-template-page-service-movie,
    body.page-template-page-store-movie {
        padding-top: 15.4vw;
    }

    .page_service_lp .fixed_sp {
        position: fixed;
        left: 0;
        bottom: 0;
        width: 100%;
        background: #fff;
        z-index: 10;
        padding: 1.8vw 2.1vw 2.1vw;
        display: none;
    }

    .page_service_lp .fixed_sp .lead {
        width: fit-content;
        position: relative;
        font-weight: 800;
        margin-bottom: 2.3vw;
        padding: 0 3.1vw;
        font-size: 3.6vw;
        margin: 0 auto;
        margin-bottom: 1.3vw;
        text-align: center;
    }

    .page_service_lp .fixed_sp .lead:before,
    .page_service_lp .fixed_sp .lead:after {
        content: "";
        width: 2px;
        height: 5.1vw;
        background: #1A1A1A;
        position: absolute;
        bottom: 0.5vw;
    }

    .page_service_lp .fixed_sp .lead:before {
        left: 0;
        transform: rotate(-25deg);
    }

    .page_service_lp .fixed_sp .lead:after {
        right: 0;
        transform: rotate(25deg);
    }

    .page_service_lp .fixed_sp .button_grid .common_button a {
        width: 46.9vw;
        font-size: 3.6vw;
        padding-left: 4.4vw;
        line-height: 11.8vw;
    }

    .page_service_lp .fixed_sp .button_grid .common_button a:before {
        height: 100%;
        top: 0;
    }

    .page_service_lp .fixed_sp .button_grid .common_button a .arrow {
        width: 4.6vw;
        height: 4.9vw;
        right: 2.6vw;
    }

    header#sp_movie_header {
        position: fixed;
        left: 0;
        top: 0;
        background: #fff;
        z-index: 10;
        height: 60px;
        width: 100%;
    }

    header#sp_movie_header .logo {
        position: absolute;
        left: 5vw;
        top: 14px;
    }

    header#sp_movie_header .logo img {
        width: 138px;
    }

    /* お問い合わせフォーム（SP） */

    .page_contact .information_box {
        width: 100%;
        margin-bottom: 10vw;
    }

    .page_contact .information_box .title {
        font-size: 5.5vw;
        border-left: 4px solid #E50012;
    }

    .page_contact .information_box .lead {
        font-size: 3.8vw;
        margin-bottom: 0;
    }

    .page_contact .information_box .lead br {
        display: none;
    }

    .page_contact .form {
        width: 100%;
        padding: 4vw;
    }

    .page_contact .form .form_box dl {
        grid-template-columns: 1fr;
        gap: 0.6em;
    }

    .page_contact .bottom_flex {
        margin-top: 10vw;
        gap: 10px;
        justify-content: center;
    }

    .page_contact .bottom_flex .privacy a {
        font-size: 3.3vw;
    }

    .page_contact .bottom_flex .copyright small {
        font-size: 3vw;
    }

    .page_contact .thanks_textArea.new .thanks_text_box .ttl {
        font-size: 4.5vw;
        margin-bottom: 5vw;
    }

    .page_contact .thanks_textArea.new .thanks_text_box .text {
        font-size: 3.6vw;
    }

    .page_contact .thanks_textArea.new .thanks_text_box .text+.text {
        margin-top: 2vw;
    }

    .page_contact .thanks_textArea.new {
        width: 100%;
        padding: 7vw 3.5vw 10vw;
        margin-left: 0;
        text-align: left;
    }

    .page_service_lp section.section_point {
        padding: 20vw 0;
    }
    
    .page_service_lp .section_point .category_row {
        grid-template-columns: repeat(1, 1fr);
        gap: 2.67vw;
    }
    
    .page_service_lp .section_point .category_card {
        position: relative;
        padding: 4vw 3vw;
    }

    .page_service_lp .section_point .card_title {
        font-size: 3.3vw;
    }

    .page_service_lp .section_point .category_card::after {
      content: '';
      position: absolute;
      top: 0;
      bottom: 0;
      right: 5vw;
      width: 2.5vw;
      height: 2.5vw;
      margin: auto;
      border-top: 2px solid #e2e8f0;
      border-right: 2px solid #e2e8f0;
      transform: rotate(45deg);
      box-sizing: border-box;
    }
    
    .page_service_lp .section_point .category_card:hover {
        border-color: #e2e8f0;
        box-shadow: none;
        transform: translateY(0);
    }
    
    .page_service_lp .section_point .card_content {
        text-align: center;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 5vw;
    }
    
    .page_service_lp .section_point .card_icon {
        margin: 0;
        width: 12vw;
        height: 12vw;
    }
    
    .page_service_lp .modal_block .modal_container {
        width: 90%;
    }
    
    .page_service_lp .modal_block .modal_image_wrap {
        height: 50vw;
    }

    .page_service_lp .common_section_head .section_title .accent .num {
        font-size: 10vw;
    }

}