/*
 * サービスサイトの見た目＝casefactory.jp（FIELD-X 自社テーマ fieldx-original・web-design/casefactory-theme/theme）を踏襲。
 * 作り方（写しの順）: style.css → assets/css/base.css → front-page.php の埋め込み CSS → sass で compile した
 * service/plan/use-case/format/knowledge.scss → case-study.css → fx-cta.css → 末尾に 12jingi 側の上書き（site-overrides.css）。
 * ⚠ 手で直すのは site-overrides.css だけ。テーマ側を直したら scripts/site/build_theme_css.py で作り直す（手順 docs/reference/service-site.md）。
 * 外した物: WordPress 固有（.wp-・entry-content・admin-bar）・スライダー（splide/swiper）・モーダル・MyASP のフォーム・下層の固定背景画像。
 */

/* ===== theme: style.css ===== */


@charset "UTF-8";

/* ==========================================================================
   1. 基本設定 (Base & Reset)
   ========================================================================== */

*, *::before, *::after {
    box-sizing: border-box;
}

body {
    margin: 0;
    padding: 0;
    font-family: var(--font-body);
    color: #333;
    background-color: #fff;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-feature-settings: "palt";
}

img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
}

a {
    color: var(--deepColor);
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

label, legend {
    font-weight: 500;
}


/* ==========================================================================
   2. 共通レイアウト (Layout)
   ========================================================================== */

#primary.site-main, 
.site-header .inner,
.site-footer .inner,
.container {
    max-width: 1200px;
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
}

.site-header {
    background: #fff;
}

#primary.site-main {
    padding-bottom: 60px;
    min-height: 60vh;
}


/* ==========================================================================
   3. 共通パーツ (Components)
   ========================================================================== */

/* トップへ戻るボタン */
.page-top-btn {
    position: fixed;
    bottom: 20px;
    right: 20px;
    background-color: var(--deepColor);
    width: 40px;
    height: 40px;
    border-radius: var(--r-s);
    z-index: 9999;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    box-shadow: var(--shadow-btn);
}
.page-top-btn.is-show {
    opacity: 1;
    visibility: visible;
}
.page-top-btn:hover {
    background-color: var(--deepColor);
    transform: translateY(-3px);
    color: #fff;
}
.arrow-up {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(-45deg);
    margin-top: 4px;
}

/* 必須項目 */
body form.myForm .required label.form_input_label.required:first-child::after {
    content: "\5FC5\9808"; /* "必須" */
    background-color: #eb1c24;
    color: #fff;
    font-size: 13px;
    font-weight: bold;
    border-radius: var(--r-s);
    display: inline-block;
    width: auto;
    height: auto;
    padding: 5px 8px;
    line-height: 1;
    margin-left: 10px;
    vertical-align: middle;
    position: relative;
    top: -2px;
}

/* 安全策: チェックボックス等のラベルには表示させない */
form.myForm .checkbox_label label::after,
form.myForm .checkbox_input label::after {
    content: none;
    display: none;
}

/* スマホ表示 */
@media screen and (max-width: 768px) {
    .entry-content table th,
    .entry-content table td {
        display: block;
        width: 100%;
        padding: 10px 0;
    }
    .entry-content table th {
        margin-top: 20px;
    }
}


/* ==========================================================================
   6. ページ個別設定 (Specific Pages)
   ========================================================================== */

/* 青丸数字の修正 (Formatページ等) */
.format-step--item-tit .num-tit__small {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    padding: 0;
    margin-right: 15px;
    flex-shrink: 0;
    font-size: 24px;
}

/* ===== theme: base.css ===== */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */*{margin:0;padding:0;box-sizing:border-box}html{-webkit-text-size-adjust:100%;font-size:62.5%;scroll-behavior:smooth;width:100%;overflow-x:hidden;background:#fff;text-align:left;line-height:1.5}body{font-size:1.6rem;word-break:break-all;width:100%;overflow-x:hidden}@media(max-width: 767px){body{font-size:1.4rem;width:100%;overflow-x:hidden}}main{display:block}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{display:inline;background-color:rgba(0,0,0,0);color:#333}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none;-webkit-backface-visibility:hidden;display:inline-block;font-size:0;width:auto;height:auto;max-width:100%}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;max-width:100%}button,input{overflow:visible}button,select{border-color:#cdd3d6;text-transform:none;background:rgba(0,0,0,0);background:rgba(255,255,255,.99)}select{max-width:100%}[type=button],[type=reset],[type=submit],button{cursor:pointer;border:none}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto;line-height:1.35}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]{appearance:textfield;-moz-appearance:textfield}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}input[type=submit]{-webkit-appearance:none}input[type=text],input[type=email],input[type=password],input[type=submit],input[type=file],input[type=button],textarea{appearance:none !important;-webkit-appearance:none !important;border-radius:0}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{padding-top:.5em;color:#ddd}input,textarea{border:1px solid #cdd3d6;padding:5.4px}table{width:100%;border-collapse:collapse}p{line-height:1.5}li{list-style:none}.d-flex{display:flex !important}.d-block{display:block !important}.d-inline{display:inline !important}.inline-block{display:inline-block !important}.d-none{display:none !important}.noto-sans{font-family:var(--font-body)!important}.roboto{font-family:"Roboto",sans-serif !important}.damion{font-family:"Damion",cursive !important}.poppins{font-family:"Poppins",sans-serif;font-weight:600}.btn,.btn--paint,.btn--border,.btn--sub,.btn--main{border:1px solid #cdd3d6;display:inline-block;padding:10px;font-size:1.4rem;text-align:center}@media(min-width: 768px){.btn,.btn--paint,.btn--border,.btn--sub,.btn--main{font-size:1.6rem}}.download-btn{background:var(--deepColor);border-radius:var(--r-l);padding:1rem 4rem 1rem 6rem;display:block;max-width:22.8rem;text-align:center;margin:0 auto;color:rgba(255,255,255,.99);position:relative;font-size:1.5rem;font-weight:600}.download-btn::before{content:url(../img/common/icon-download.svg);position:absolute;left:53px;top:55%;transform:translateY(-50%)}a{text-decoration:none;transition:.1s}a:hover{opacity:.7;transition:.2s}.container{width:96%;max-width:1374px;margin:0 auto}@media(max-width: 767px){.container{width:90% !important;padding:0 16px}}.container .container,.container .container--small{padding-left:0;padding-right:0}.container--flex{width:86.4%;max-width:100%;margin:0 auto}@media(max-width: 767px){.container--flex{width:90%;padding:0 16px}}.container--flex .container,.container--flex .container--small{padding-left:0;padding-right:0}.container--small{width:1188px;margin:0 auto}@media(max-width: 767px){.container--small{width:90%}}.container--x-small{width:906px;margin:0 auto}@media(max-width: 767px){.container--x-small{width:90%}}.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-auto,.col-pc,.col-pc-1,.col-pc-10,.col-pc-11,.col-pc-12,.col-pc-2,.col-pc-3,.col-pc-4,.col-pc-5,.col-pc-6,.col-pc-7,.col-pc-8,.col-pc-9,.col-pc-auto,.col-md,.col-tab-1,.col-tab-10,.col-tab-11,.col-tab-12,.col-tab-2,.col-tab-3,.col-tab-4,.col-tab-5,.col-tab-6,.col-tab-7,.col-tab-8,.col-tab-9,.col-tab-auto,.col-sp,.col-sp-1,.col-sp-10,.col-sp-11,.col-sp-12,.col-sp-2,.col-sp-3,.col-sp-4,.col-sp-5,.col-sp-6,.col-sp-7,.col-sp-8,.col-sp-9,.col-sp-auto,.col-pc--lg,.col-pc--lg-1,.col-pc--lg-10,.col-pc--lg-11,.col-pc--lg-12,.col-pc--lg-2,.col-pc--lg-3,.col-pc--lg-4,.col-pc--lg-5,.col-pc--lg-6,.col-pc--lg-7,.col-pc--lg-8,.col-pc--lg-9,.col-pc--lg-auto{position:relative;width:100%;padding-right:34px;padding-left:34px}@media(max-width: 767px){.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-auto,.col-pc,.col-pc-1,.col-pc-10,.col-pc-11,.col-pc-12,.col-pc-2,.col-pc-3,.col-pc-4,.col-pc-5,.col-pc-6,.col-pc-7,.col-pc-8,.col-pc-9,.col-pc-auto,.col-md,.col-tab-1,.col-tab-10,.col-tab-11,.col-tab-12,.col-tab-2,.col-tab-3,.col-tab-4,.col-tab-5,.col-tab-6,.col-tab-7,.col-tab-8,.col-tab-9,.col-tab-auto,.col-sp,.col-sp-1,.col-sp-10,.col-sp-11,.col-sp-12,.col-sp-2,.col-sp-3,.col-sp-4,.col-sp-5,.col-sp-6,.col-sp-7,.col-sp-8,.col-sp-9,.col-sp-auto,.col-pc--lg,.col-pc--lg-1,.col-pc--lg-10,.col-pc--lg-11,.col-pc--lg-12,.col-pc--lg-2,.col-pc--lg-3,.col-pc--lg-4,.col-pc--lg-5,.col-pc--lg-6,.col-pc--lg-7,.col-pc--lg-8,.col-pc--lg-9,.col-pc--lg-auto{padding-right:8px;padding-left:8px}}@media(max-width: 767px){.container{width:100%;margin-right:auto;margin-left:auto}}.row{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;display:flex;flex-wrap:wrap;margin-right:-34px;margin-left:-34px}.row>*{box-sizing:border-box;flex-shrink:0;width:100%;max-width:100%}.col-1{flex:0 0 auto;width:8.3333333333%}.col-2{flex:0 0 auto;width:16.6666666667%}.col-3{flex:0 0 auto;width:25%}.col-4{flex:0 0 auto;width:33.3333333333%}.col-5{flex:0 0 auto;width:41.6666666667%}.col-6{flex:0 0 auto;width:50%}.col-7{flex:0 0 auto;width:58.3333333333%}.col-8{flex:0 0 auto;width:66.6666666667%}.col-9{flex:0 0 auto;width:75%}.col-10{flex:0 0 auto;width:83.3333333333%}.col-11{flex:0 0 auto;width:91.6666666667%}.col-12{flex:0 0 auto;width:100%}@media(max-width: 767px){.col-sp{flex:1 0 0%}.col-sp-1{flex:0 0 auto;width:8.3333333333%}.col-sp-2{flex:0 0 auto;width:16.6666666667%}.col-sp-3{flex:0 0 auto;width:25%}.col-sp-4{flex:0 0 auto;width:33.3333333333%}.col-sp-5{flex:0 0 auto;width:41.6666666667%}.col-sp-6{flex:0 0 auto;width:50%}.col-sp-7{flex:0 0 auto;width:58.3333333333%}.col-sp-8{flex:0 0 auto;width:66.6666666667%}.col-sp-9{flex:0 0 auto;width:75%}.col-sp-10{flex:0 0 auto;width:83.3333333333%}.col-sp-11{flex:0 0 auto;width:91.6666666667%}.col-sp-12{flex:0 0 auto;width:100%}}@media(min-width: 768px){.col-md{flex:1 0 0%}.row-cols-md-auto>*{flex:0 0 auto;width:auto}.row-cols-md-1>*{flex:0 0 auto;width:100%}.row-cols-md-2>*{flex:0 0 auto;width:50%}.row-cols-md-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-md-4>*{flex:0 0 auto;width:25%}.row-cols-md-5>*{flex:0 0 auto;width:20%}.row-cols-md-6>*{flex:0 0 auto;width:16.6666666667%}.col-tab-auto{flex:0 0 auto;width:auto}.col-tab-1{flex:0 0 auto;width:8.3333333333%}.col-tab-2{flex:0 0 auto;width:16.6666666667%}.col-tab-3{flex:0 0 auto;width:25%}.col-tab-4{flex:0 0 auto;width:33.3333333333%}.col-tab-5{flex:0 0 auto;width:41.6666666667%}.col-tab-6{flex:0 0 auto;width:50%}.col-tab-7{flex:0 0 auto;width:58.3333333333%}.col-tab-8{flex:0 0 auto;width:66.6666666667%}.col-tab-9{flex:0 0 auto;width:75%}.col-tab-10{flex:0 0 auto;width:83.3333333333%}.col-tab-11{flex:0 0 auto;width:91.6666666667%}.col-tab-12{flex:0 0 auto;width:100%}}@media(min-width: 1200px){.col-pc{flex:1 0 0%}.row-cols-lg-auto>*{flex:0 0 auto;width:auto}.row-cols-lg-1>*{flex:0 0 auto;width:100%}.row-cols-lg-2>*{flex:0 0 auto;width:50%}.row-cols-lg-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-lg-4>*{flex:0 0 auto;width:25%}.row-cols-lg-5>*{flex:0 0 auto;width:20%}.row-cols-lg-6>*{flex:0 0 auto;width:16.6666666667%}.col-pc-auto{flex:0 0 auto;width:auto}.col-pc-1{flex:0 0 auto;width:8.3333333333%}.col-pc-2{flex:0 0 auto;width:16.6666666667%}.col-pc-3{flex:0 0 auto;width:25%}.col-pc-4{flex:0 0 auto;width:33.3333333333%}.col-pc-5{flex:0 0 auto;width:41.6666666667%}.col-pc-6{flex:0 0 auto;width:50%}.col-pc-7{flex:0 0 auto;width:58.3333333333%}.col-pc-8{flex:0 0 auto;width:66.6666666667%}.col-pc-9{flex:0 0 auto;width:75%}.col-pc-10{flex:0 0 auto;width:83.3333333333%}.col-pc-11{flex:0 0 auto;width:91.6666666667%}.col-pc-12{flex:0 0 auto;width:100%}}@media(min-width: 1920px){.col-pc--lg{flex:1 0 0%}.row-cols-xl-auto>*{flex:0 0 auto;width:auto}.row-cols-xl-1>*{flex:0 0 auto;width:100%}.row-cols-xl-2>*{flex:0 0 auto;width:50%}.row-cols-xl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xl-4>*{flex:0 0 auto;width:25%}.row-cols-xl-5>*{flex:0 0 auto;width:20%}.row-cols-xl-6>*{flex:0 0 auto;width:16.6666666667%}.col-pc--lg-auto{flex:0 0 auto;width:auto}.col-pc--lg-1{flex:0 0 auto;width:8.3333333333%}.col-pc--lg-2{flex:0 0 auto;width:16.6666666667%}.col-pc--lg-3{flex:0 0 auto;width:25%}.col-pc--lg-4{flex:0 0 auto;width:33.3333333333%}.col-pc--lg-5{flex:0 0 auto;width:41.6666666667%}.col-pc--lg-6{flex:0 0 auto;width:50%}.col-pc--lg-7{flex:0 0 auto;width:58.3333333333%}.col-pc--lg-8{flex:0 0 auto;width:66.6666666667%}.col-pc--lg-9{flex:0 0 auto;width:75%}.col-pc--lg-10{flex:0 0 auto;width:83.3333333333%}.col-pc--lg-11{flex:0 0 auto;width:91.6666666667%}.col-pc--lg-12{flex:0 0 auto;width:100%}}.flex{display:flex}.flex-row{flex-direction:row !important}.flex-column{flex-direction:column !important}.flex-row-reverse{flex-direction:row-reverse !important}.flex-column-reverse{flex-direction:column-reverse !important}.flex-wrap{flex-wrap:wrap !important}.flex-nowrap{flex-wrap:nowrap !important}.flex-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-start{justify-content:flex-start !important}.justify-content-end{justify-content:flex-end !important}.justify-content-center{justify-content:center !important}.justify-content-between{justify-content:space-between !important}.justify-content-around{justify-content:space-around !important}.justify-content-evenly{justify-content:space-evenly !important}.page-tit{font-size:5rem;font-weight:900;margin-bottom:3rem;text-align:center;color:var(--deepColor);margin-top:13rem}@media(max-width: 767px){.page-tit{font-size:3rem;margin-top:2.6rem;margin-bottom:1rem}}.page-sub-tit{font-size:2.4rem;font-weight:900;margin-bottom:3rem;text-align:center;color:var(--deepColor)}@media(max-width: 767px){.page-sub-tit{font-size:1.6rem}}.border-tit{font-size:3.5rem;font-weight:600;color:rgba(255,255,255,.99);position:relative;text-align:center;padding:1.5rem;margin-bottom:4rem}@media(max-width: 767px){.border-tit{font-size:2.4rem}}.border-tit::after{position:absolute;bottom:-10px;left:calc(50% - 85px);width:170px;height:3px;content:"";background:rgba(255,255,255,.99)}.border-tit__blue{font-size:2rem;border-bottom:2px solid var(--deepColor);display:inline-block;margin-bottom:1rem}@media(max-width: 767px){.border-tit__blue{font-size:1.6rem}}.border-tit__yellow{margin-left:2rem;font-size:4rem;font-style:normal;background:linear-gradient(transparent 80%, var(--accent2) 20%);display:inline}@media(max-width: 767px){.border-tit__yellow{font-size:1.6rem}}.border-tit__yellow-center{text-align:center;width:max-content;display:block;margin:0 auto 3rem}.under-border{font-size:3.5rem;font-weight:600;color:var(--deepColor);position:relative;text-align:center;padding:1.5rem;margin-bottom:4rem}@media(max-width: 767px){.under-border{font-size:2.4rem}}.under-border::after{position:absolute;bottom:-10px;left:calc(50% - 35px);width:70px;height:5px;content:"";background:var(--accent2)}.left-border-tit{font-size:2.4rem;font-weight:500;position:relative;margin-bottom:1rem;padding-left:1rem}@media(max-width: 767px){.left-border-tit{font-size:1.6rem}}.left-border-tit::before{position:absolute;content:"";width:5px;height:22px;background:var(--deepColor);left:0px;top:50%;transform:translateY(-50%)}@media(max-width: 767px){.left-border-tit::before{height:100%}}.border-blue-tit{font-size:1.8rem;font-weight:600;border-bottom:2px solid var(--deepColor);padding-bottom:1rem;margin-bottom:2rem;display:inline-block;line-height:1.6}@media(max-width: 767px){.border-blue-tit{font-size:1.8rem;margin-top:1rem;display:block}}.en-waku-tit{font-family:"Poppins",sans-serif;font-weight:800;-webkit-text-stroke:1px var(--deepColor);text-stroke:1px var(--deepColor);color:rgba(255,255,255,.99);text-align:center;font-size:10rem}@media(max-width: 767px){.en-waku-tit{font-size:4rem}}.num-tit{border-radius:var(--r-pill);background:var(--deepColor);color:rgba(255,255,255,.99);padding:.7rem 1rem;min-height:5rem;min-width:5rem;font-size:2.5rem;margin-right:2rem}@media(max-width: 767px){.num-tit{font-size:1.4rem;margin-right:.5rem}}.num-tit__small{border-radius:var(--r-pill);background:var(--deepColor);color:rgba(255,255,255,.99);padding:1.2rem 1rem;min-height:5rem;min-width:5rem;font-size:2rem;margin-right:0rem;margin-bottom:2rem;display:inline-block}@media(max-width: 767px){.num-tit__small{font-size:1.4rem;margin-bottom:0;padding:1.7rem 1rem}}.page--head{margin-bottom:12rem}@media(max-width: 767px){.page--head{margin-bottom:4rem}}.page-text{font-size:2rem;text-align:center;font-weight:500}@media(max-width: 767px){.page-text{font-size:1.6rem}}.common-cta{background:var(--deepColor);padding:3rem 0 5rem}.common-cta-content{background-color:rgba(255,255,255,.99);padding:5rem 5rem 6rem;border-radius:var(--r-l)}@media(max-width: 767px){.common-cta-content{padding:2rem}}.common-cta-content--text{text-align:center;font-weight:600;margin-bottom:5rem}.btn--list{display:flex;justify-content:space-around;align-items:center}@media(max-width: 767px){.btn--list{display:block}}.btn--list-item{width:33.333%;display:block}@media(max-width: 767px){.btn--list-item{width:100%;margin-bottom:2rem}}@media(min-width: 768px){.btn--list-item{min-width:35rem}}.btn--list-item--link{padding:2rem 4rem;text-align:center;box-shadow:var(--shadow-btn);border-radius:var(--r-pill);font-size:1.7rem;font-weight:600;display:block}@media(max-width: 767px){.btn--list-item--link{font-size:1.6rem;padding:1.5rem 2rem}}@media(min-width: 768px){.btn--list-item--link{min-width:34rem;width:30%}}.btn--list-item--link__blue{background:var(--deepColor);color:rgba(255,255,255,.99);position:relative;padding-left:6rem}.btn--list-item--link__blue::before{position:absolute;content:url(../img/common/icon-download.svg);top:55%;left:30px;transform:translateY(-50%)}.btn--list-item--link__yellow{background:var(--accent2);color:#333;position:relative;padding-left:6rem}.btn--list-item--link__yellow::before{position:absolute;content:url(../img/common/icon-note.svg);top:55%;left:30px;transform:translateY(-50%)}.btn--list-item--link__white{border:2px solid var(--deepColor)}.icon-tab{padding-left:6.5rem;font-size:1.6rem;display:block;color:var(--deepColor);font-weight:600;position:relative}@media(max-width: 767px){.icon-tab{font-size:1.6rem;padding-left:5rem}}.icon-tab::after{position:absolute;background:url(../img/common/icon-tab.svg);background-size:cover;content:"";font-size:2rem;left:3.8rem;top:0.6rem;width:1.6rem;height:1.6rem}@media(max-width: 767px){.icon-tab::after{width:1.8rem;height:1.8rem;left:2rem;top:5px}}.icon-list-item{font-size:1.8rem;position:relative;padding-left:1.8rem;margin-bottom:2rem}@media(max-width: 767px){.icon-list-item{font-size:1.6rem}}.icon-list-item::after{position:absolute;content:"・";font-size:1.8rem;left:0;top:0}.hover--opacity{transition:.1s}.hover--opacity:hover{opacity:.7;transition:.2s}.hover--scale{display:block}@media(min-width: 768px){.hover--scale:hover{overflow:hidden}.hover--scale:hover img{transition:.25s;transform:scale(1.05)}}.header{display:flex;justify-content:space-between;align-content:center;flex-wrap:wrap;align-items:center}.header-logo{padding:1.5rem 2.2rem}@media(max-width: 767px){.header-logo{padding:1rem;width:50%}}.nav{display:flex;align-content:center}@media(max-width: 1002px){.nav{margin-left:auto;margin-right:auto}}.nav--item{padding-left:3.4rem;font-size:1.7rem;font-weight:600}@media(max-width: 1400px){.nav--item{font-size:2rem}}@media(max-width: 1200px){.nav--item{font-size:1.6rem}}.nav--item__arrow{position:relative}.nav--item__arrow::after{position:absolute;content:url(../img/common/icon-arrow-down.svg);left:50%;bottom:-24px;transform:translateX(50%)}.dropdown__lists{display:none;width:360px;position:absolute;top:70px;left:0;z-index:10;background-color:var(--deepColor);padding:2rem;transition:all .3s}.nav--item__arrow.active .dropdown__lists{display:block}.dropdown__list:not(:first-child)::before{content:"";width:100%;height:1px;background-color:var(--middleColor);position:absolute;top:0;left:0}.dropdown__list a{display:flex;justify-content:center;align-items:center;color:#fff;text-decoration:none;position:relative}.dropdown__list a::before{content:"";display:block;width:12px;height:12px;border-top:2px solid #fff;border-left:2px solid #fff;transform:rotate(135deg);position:absolute;right:15px;top:calc(50% - 5px)}.nav--item__contact{background:var(--deepColor);color:rgba(255,255,255,.99);padding:3rem 1.7rem}.h2-tit{padding:16rem 27rem;color:rgba(255,255,255,.99);font-size:3.8rem;font-weight:600}@media(max-width: 767px){.h2-tit{padding:3.6rem 4.7rem;font-size:1.5rem}}.h2-tit__en{display:block;font-size:1.6rem;margin-right:-1rem}@media(max-width: 767px){.h2-tit__en{font-size:1rem}}.breadcrumb{padding-top:2rem;display:flex;flex-wrap:wrap}.breadcrumb a{color:var(--deepColor)}.accordion--content{display:none;margin-top:2rem}.js-accordion--parent--plus{cursor:pointer;display:inline-block;width:16px;height:16px;position:relative;margin-left:8px}.js-accordion--parent--plus::before,.js-accordion--parent--plus::after{content:"";position:absolute;background-color:#000;transition:.3s}.js-accordion--parent--plus::before{width:1px;height:13px;left:50%;top:50%;transform:translate(-50%, -50%)}.js-accordion--parent--plus::after{width:13px;height:1px;left:50%;top:50%;transform:translate(-50%, -50%)}.js-accordion--minus::before{transform:translate(-50%, -50%) rotate(90deg)}.footer{padding-top:12.2rem}@media(max-width: 767px){.footer{padding-top:3rem}}.footer-logo{width:43.6rem;height:11.1rem}.company-name{font-size:2.6rem;font-weight:500;margin-left:5rem}@media(max-width: 767px){.company-name{font-size:2rem}}.company-address{margin-left:5rem;font-size:1.6rem;font-weight:500}@media(max-width: 767px){.company-address{margin-bottom:4rem}}.footer-nav{margin-bottom:12.2rem}@media(max-width: 767px){.footer-nav{margin-bottom:3rem}}.footer-nav--item{position:relative;padding-left:1.5rem;font-size:1.5rem;font-weight:600;margin-bottom:1rem}@media(max-width: 767px){.footer-nav--item{font-size:1.6rem}}.footer-nav--item ::after{position:absolute;content:url(../img/common/icon-arrow.svg);left:0;top:0}.footer-sub-nav-item{position:relative;padding-left:3rem;font-size:1.5rem;font-weight:600;margin-bottom:1rem}@media(max-width: 767px){.footer-sub-nav-item{font-size:1.3rem}}.footer-sub-nav-item ::after{position:absolute;content:"";height:.3rem;width:1.2rem;background:var(--deepColor);left:1.5rem;top:50%}@media(max-width: 767px){.footer-sub-nav-item ::after{top:25%}}.copyright{text-align:center;margin-bottom:2.5rem;font-size:1.4rem}@media(max-width: 767px){.copyright{font-size:1.2rem}}.footer-sub-nav-item-link::after{top:50%}@media(max-width: 767px){.nav{display:none}}@media(min-width: 768px){.toggle,.nav--sp{display:none}}@media(max-width: 767px){.toggle{display:block;cursor:pointer;width:38px;margin:1rem;z-index:10}.nav--sp{display:none;position:fixed;overflow-y:scroll;top:10px;left:10px;width:calc(100% - 20px);height:calc(100vh - 20px);background:rgba(255,255,255,.99);z-index:101;padding:24px 8px 32px}.nav--sp-menu-item{margin-bottom:2rem;display:block}.toggle--close{display:none;position:fixed;top:15px;right:10px;width:38px;height:38px;background:#cdd3d6;z-index:103}.toggle--close img{margin:0 auto}.nav--sp--bg{display:none;position:fixed;top:0;left:0;width:100%;height:100vh;background:rgba(0,0,0,.3);z-index:100}.header--sp--fix{position:fixed;top:0;left:0;width:100%;height:40px;background-color:rgba(255,255,255,.99);z-index:10}}.body-fix{position:fixed !important}.js-loading-icon{margin:100px auto 0;width:auto;text-align:center;position:fixed;top:40%;left:50%;transform:translate(-50%, -40%);z-index:2}.js-loading-icon>div{width:12px;height:12px;background-color:#cdd3d6;margin:0 3px;border-radius:100%;display:inline-block;-webkit-animation:sk-bouncedelay 1.4s infinite ease-in-out both;animation:sk-bouncedelay 1.4s infinite ease-in-out both}.js-loading-icon .bounce1{-webkit-animation-delay:-0.32s;animation-delay:-0.32s}.js-loading-icon .bounce2{-webkit-animation-delay:-0.16s;animation-delay:-0.16s}@-webkit-keyframes sk-bouncedelay{0%,80%,100%{-webkit-transform:scale(0)}40%{-webkit-transform:scale(1)}}@keyframes sk-bouncedelay{0%,80%,100%{-webkit-transform:scale(0);transform:scale(0)}40%{-webkit-transform:scale(1);transform:scale(1)}}.js-loaded-contents{opacity:0}.js-accordion+*{display:none}.accordion--parent,.js-accordion--parent--plus{cursor:pointer}.js-accordion--parent--plus{position:relative}.js-accordion--parent--plus::before,.js-accordion--parent--plus::after{content:"";position:absolute;transform:translate(-50%, -50%);background:#333}.js-accordion--parent--plus::before{width:1px;height:13px;top:50%;right:6.5px;transition:.3s}.js-accordion--parent--plus::after{width:13px;height:1px;top:50%;right:-5px}.js-accordion--minus{cursor:pointer;position:relative}.js-accordion--minus::before,.js-accordion--minus::after{content:"";position:absolute;transform:translate(-50%, -50%);background:#333}.js-accordion--minus::before{width:1px;height:13px;top:calc(50% - 7px);right:6.5px;transform:rotate(90deg);transition:.3s}.js-accordion--minus::after{width:13px;height:1px;top:50%;right:-5px}@media(min-width: 768px){.pc-none{display:none !important}}@media(max-width: 767px){.sp-none{display:none !important}}.normal{font-weight:400}.medium{font-weight:500}.semi-bold{font-weight:600}.bold{font-weight:bold}.black{color:#333}.red{color:#ff0742}.color-main{color:var(--deepColor)}.text-center{text-align:center}.relative{position:relative}.bg-gray{background:#fafafa;padding:6rem 0}.bg-yellow{background:var(--backColor);padding:6rem 0}.bg-blue{background:var(--lightColor);padding:6rem 0}.m-0{margin:0 !important}.m-1{margin:10px !important}.m-2{margin:20px !important}.m-3{margin:30px !important}.m-4{margin:40px !important}.m-5{margin:50px !important}.m-auto{margin:auto !important}.mx-0{margin-right:0 !important;margin-left:0 !important}.mx-1{margin-right:10px !important;margin-left:10px !important}.mx-2{margin-right:20px !important;margin-left:20px !important}.mx-3{margin-right:30px !important;margin-left:30px !important}.mx-4{margin-right:40px !important;margin-left:40px !important}.mx-5{margin-right:50px !important;margin-left:50px !important}.mx-auto{margin-right:auto !important;margin-left:auto !important}.my-0{margin-top:0 !important;margin-bottom:0 !important}.my-1{margin-top:10px !important;margin-bottom:10px !important}.my-2{margin-top:20px !important;margin-bottom:20px !important}.my-3{margin-top:30px !important;margin-bottom:30px !important}.my-4{margin-top:40px !important;margin-bottom:40px !important}.my-5{margin-top:50px !important;margin-bottom:50px !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-0{margin-top:0 !important}.mt-1{margin-top:10px !important}.mt-2{margin-top:20px !important}.mt-3{margin-top:30px !important}.mt-4{margin-top:40px !important}.mt-5{margin-top:50px !important}.mt-auto{margin-top:auto !important}.me-0{margin-right:0 !important}.me-1{margin-right:10px !important}.me-2{margin-right:20px !important}.me-3{margin-right:30px !important}.me-4{margin-right:40px !important}.me-5{margin-right:50px !important}.me-auto{margin-right:auto !important}.mb-0{margin-bottom:0 !important}.mb-1{margin-bottom:10px !important}.mb-2{margin-bottom:20px !important}.mb-3{margin-bottom:30px !important}.mb-4{margin-bottom:40px !important}.mb-5{margin-bottom:50px !important}.mb-auto{margin-bottom:auto !important}.ms-0{margin-left:0 !important}.ms-1{margin-left:10px !important}.ms-2{margin-left:20px !important}.ms-3{margin-left:30px !important}.ms-4{margin-left:40px !important}.ms-5{margin-left:50px !important}.ms-auto{margin-left:auto !important}.p-0{padding:0 !important}.p-1{padding:10px !important}.p-2{padding:20px !important}.p-3{padding:30px !important}.p-4{padding:40px !important}.p-5{padding:50px !important}.px-0{padding-right:0 !important;padding-left:0 !important}.px-1{padding-right:10px !important;padding-left:10px !important}.px-2{padding-right:20px !important;padding-left:20px !important}.px-3{padding-right:30px !important;padding-left:30px !important}.px-4{padding-right:40px !important;padding-left:40px !important}.px-5{padding-right:50px !important;padding-left:50px !important}.py-0{padding-top:0 !important;padding-bottom:0 !important}.py-1{padding-top:10px !important;padding-bottom:10px !important}.py-2{padding-top:20px !important;padding-bottom:20px !important}.py-3{padding-top:30px !important;padding-bottom:30px !important}.py-4{padding-top:40px !important;padding-bottom:40px !important}.py-5{padding-top:50px !important;padding-bottom:50px !important}.pt-0{padding-top:0 !important}.pt-1{padding-top:10px !important}.pt-2{padding-top:20px !important}.pt-3{padding-top:30px !important}.pt-4{padding-top:40px !important}.pt-5{padding-top:50px !important}.pe-0{padding-right:0 !important}.pe-1{padding-right:10px !important}.pe-2{padding-right:20px !important}.pe-3{padding-right:30px !important}.pe-4{padding-right:40px !important}.pe-5{padding-right:50px !important}.pb-0{padding-bottom:0 !important}.pb-1{padding-bottom:10px !important}.pb-2{padding-bottom:20px !important}.pb-3{padding-bottom:30px !important}.pb-4{padding-bottom:40px !important}.pb-5{padding-bottom:50px !important}.ps-0{padding-left:0 !important}.ps-1{padding-left:10px !important}.ps-2{padding-left:20px !important}.ps-3{padding-left:30px !important}.ps-4{padding-left:40px !important}.ps-5{padding-left:50px !important}html{font-size:62.5%}.sample{font-size:1.6rem}@media(width >= 767px){.sample{font-size:1.8rem}}@media(width <= 768px){.sample{font-size:1.8rem}}@media(width <= 1024px){.sample{font-size:1.6rem}}@media(width <= 1200px){.sample{font-size:1.8rem}}@media(width <= 1920px){.sample{font-size:2.6rem}}p{margin-bottom:0}ol,ul{margin:0}
/* リンクアイコンの垂直寄せ */
.icon-tab::after {
    top: 0.6rem;
}

/* ===== theme: front-page inline ===== */
@charset "UTF-8";*{margin:0;padding:0}body,input,textarea{font-family:var(--font-body);font-optical-sizing:auto;font-weight:300;font-style:normal;font-size:16px;color:#1a1a1a;line-height:1.6em;background:#fff;word-break:break-all}a:hover,a:active{text-decoration:none}a img{border:none}a:hover img{opacity:.6;filter:alpha(opacity=60);-ms-filter:"alpha( opacity=60 )"}a:link,a:visited img{opacity:1;filter:alpha(opacity=100);-ms-filter:"alpha( opacity=100 )"}a:hover{opacity:.6;filter:alpha(opacity=60);-ms-filter:"alpha( opacity=60 )";-webkit-transition:0.7s;-moz-transition:0.7s;-o-transition:0.7s;transition:0.7s}@keyframes fadeIn{0%{opacity:.01}100%{opacity:1}}@-webkit-keyframes fadeIn{0%{opacity:.01}100%{opacity:1}}.pc{display:block!important}.tb{display:none!important}.sp{display:none!important}.wrap{padding:80px 0;width:100%;height:auto;margin:0 auto;background:#fff;position:relative}.wrap_inner{width:1000px;margin:0 auto;height:auto;padding:0}.c_btn .wrap_inner{max-width:1000px;width:80%}h1{margin:0 auto}h2{text-align:center;font-size:49px;line-height:1.3em;font-weight:700;margin:0 auto 50px;position:relative;padding:.5rem 0 2rem}h2 span{color:var(--ttlColor);font-size:25px}h3{font-size:25px;color:#222;margin:30px auto 10px;text-align:left}.br-pc{display:block}.br-sp{display:none}.midashi{width:100%;max-width:800px;margin:0 auto;display:block;position:relative;z-index:9000!important}.wrapper{overflow:hidden}.sp-br{display:none}span.uLine{background:linear-gradient(transparent 60%,var(--accentSoft) 30%);display:inline-block}.floatLeft{float:left}.floatRight{float:right}.is-hidden{visibility:hidden;opacity:0}.fv{width:100%;height:auto;background:linear-gradient(to right,#fff,var(--middleColor));padding:0}.fvWrap{width:100%;max-width:1150px;padding:0;margin:0 auto}.fvWrap .floatLeft{width:60%}.fvWrap p.upperCatchcopy{font-size:clamp(22px,calc(100vw* 22 / 769),32px);font-weight:700;margin:10px 0 .5em}.fvWrap .catchcopy{font-size:clamp(44px,calc(100vw * 44 / 769),66px);font-weight:900;margin:0;line-height:1.3em}.fvWrap .catchcopy span.thinTxt{font-size:.8em;font-weight:300}.fvWrap .catchcopy span.blueBack{background:var(--deepColor);color:#fff}.fvWrap p.subCatchcopy{font-size:clamp(18px,calc(100vw * 18 / 769),26px);font-weight:700;margin:10px 0 0 0;line-height:1.5em}.fvWrap .subCatchcopy span.underline{font-size:1.1em;font-weight:900;color:var(--deepColor);background:linear-gradient(transparent 60%,var(--yellowColor) 30%);display:inline-block}.fvWrap p{font-size:clamp(14px,calc(100vw * 14 / 769),22px);margin:20px 0 0 0;line-height:1.5em}.fvWrap img{width:100%;height:auto}@media screen and (min-width:769px){.fvWrap{height:min(52vw,522px)}.fvWrap .floatLeft{margin-top:50px}.fvWrap .imageBox{position:relative;top:50%;transform:translateY(-50%);margin:0 auto;width:40%;float:right}}.sliderspace{background:#f6f6f6}.sliderspace h2{font-size:28px;margin-bottom:20px}.slider{width:100%;max-width:1000px;margin:0 auto;position:relative}.slider img{width:100%;height:auto;opacity:.3}.slick__item.slick-center img{opacity:1}.slick-prev{left:8%;z-index:1}.slick-next{right:10%;z-index:1}.slick-prev:before,.slick-next:before{font-family:'slick';font-size:45px;line-height:.6;opacity:1;color:#666;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.slick-dots{bottom:-60px}.slick-dots li{width:35px;height:2px;margin:0 3px;background:#ccc}.slick-dots li button{width:auto;height:auto;padding:0}.slick-dots li button::before{display:none}.slick-dots li.slick-active::before{width:0;height:100%;left:0;top:0;background:#333;position:absolute;display:block;content:"";-webkit-animation:5s linear 0s infinite alternate slide_meter;animation:5s linear 0s infinite alternate slide_meter}.slick-dots li.slick-active.first::before{-webkit-animation:4s linear 0s infinite alternate slide_meter;animation:4s linear 0s infinite alternate slide_meter}@-webkit-keyframes slide_meter{from{width:0}to{width:100%}}@keyframes slide_meter{from{width:0}to{width:100%}}.problem{background:var(--lightColor)}.problem h2{color:var(--deepColor);padding:10px;text-align:center;border-radius:var(--r-pill);margin:0 auto 20px;font-weight:700}.problem ul{width:100%;margin:0 auto;overflow:hidden}.problem ul li{list-style:none;width:30%;height:auto;float:left;margin:10px}.problem ul li h3{font-size:24px;text-align:center;line-height:1.4em;margin-bottom:20px}.problem ul li p{font-size:17px;line-height:1.4em}.problem ul li img{width:100%;height:auto;margin:0 auto}.arrow{background:var(--graOrangeColor);height:calc(tan(60deg) * 60px / 3);width:300px;clip-path:polygon(0 0,100% 0,50% 100%);margin:30px auto;clear:both}.result{font-size:34px;text-align:center;line-height:1.6em;font-weight:700}.solution{background:#fff;padding-top:80px;margin-top:0}.solution ul{width:100%;margin:0 auto}.solution ul li{width:100%;height:auto;padding:0;margin:0 auto 50px;background:#fff}.solution ul li .pho{width:30%!important;height:auto}.solution ul li .floatLeft{width:70%;padding:0 10px}.solution ul li .floatRight{width:70%;padding:0 10px}.solution ul li h3{color:var(--deepColor);font-size:30px;margin:0 auto 20px;line-height:1.8em;font-weight:700}.solution ul li p{font-size:18px;margin:0 auto;line-height:1.8em}.solution .otherPoint{width:100%;max-width:700px;margin:0 auto;padding:40px;background:var(--lightColor);border-radius:var(--r-l)}.solution .otherPoint table{font-size:24px;font-weight:700;table-layout:auto}.solution .otherPoint table th{width:10%;padding:15px 0;vertical-align:middle;line-height:1.5em}.solution .otherPoint table td{width:90%;padding:15px 0;vertical-align:middle;line-height:1.5em}.solution .otherPoint table th .fa-square-check{color:var(--redColor);font-size:26px}.merit{background:var(--backColor)}.merit table{width:100%;margin:0 auto 50px}.merit table th{width:30%}.merit table th img{width:100%;height:auto}.merit table td{width:70%;padding-left:20px}.merit table td h2{font-size:35px;text-align:left;margin:0 auto}.merit table td .intro{font-size:25px;font-weight:700;line-height:1.4em;margin:0 auto 30px}.merit table td .intro span{color:var(--redColor)}.merit ul{width:100%;margin:0 auto}.merit ul li{list-style:none;width:30%;height:30rem;text-align:center;background:#fff;padding:30px 20px;margin:10px;border-radius:var(--r-l);box-shadow:var(--shadow-btn)}.merit ul li h3{text-align:center;color:var(--deepColor);font-size:23px;line-height:1.5em}.merit ul li img{width:100px;height:auto}.merit ul li p{font-size:15px;text-align:left}.reason{background:var(--lightColor)}.reason ul li{list-style:none;width:100%;height:auto;margin:0 auto 30px;padding:20px;background:#fff;position:relative}.reason ul li .num{background:var(--middleColor);color:#fff;width:160px;position:absolute;top:0;left:0;text-align:center;padding-top:50px;font-size:26px;line-height:2.3em;font-weight:700;height:100%}.reason ul li .num span{font-size:90px}.reason ul li h3{font-size:22px;line-height:1.5em;margin:15px auto}.reason ul li .floatLeft{width:450px;margin-left:170px}.reason ul li .floatRight{width:315px;height:auto}.reason ul li p{font-size:15px;line-height:1.6em}.use{background:none}.use.scrollin{background:url(./images/7-useBg.webp);background-size:cover;background-position:center}.use p{text-align:center;font-size:30px;margin:20px auto;color:#fff;line-height:1.8em;font-weight:700}.use p.genre{text-align:left;background:#fff;color:#1a1a1a;font-size:20px;padding:30px 50px;width:80%;margin:20px auto;font-weight:300}@media screen and (min-width:769px){#company li{display:flex;align-items:center}#company li picture img{width:100%!important}#company li picture{flex:2}#company li div{flex:5}#company li .order1{order:1}#company li .order2{order:2}#company li .order2+.order1{margin-right:40px}#company li .order1+.order2{margin-left:40px}}.performance{background:var(--backColor);padding-top:80px;margin-top:0}.performance table{width:100%;height:auto;padding:30px;background:#fff;border-radius:var(--r-l);box-shadow:var(--shadow-btn);margin:0 auto 50px}.performance table th{width:30%;vertical-align:middle}.performance table th img{width:230px;height:auto}.performance table td{width:700px;padding:30px 30px 30px 0}.performance table td h3{margin:0 auto;text-align:center;line-height:1.6em}.performance table td .name{font-size:14px;font-weight:700;text-align:center;margin:30px auto}.performance table td .name span{font-size:16px;margin-left:15px}.performance table td p{line-height:1.8em}@media screen and (min-width:769px){#performance table.one-colmun th{width:80%;display:block;margin:20px auto}#performance table.one-colmun td{display:block;width:100%;padding:0 30px 30px}}.price_f table{width:100%;margin:0 auto;border-radius:var(--r-l)}.price_f table th{text-align:center;width:33%;background:var(--backColor);vertical-align:top;padding:10px 0 0}.price_f table th.osusume,.price_f table td.osusume{box-shadow:5px 0 0 0 var(--redColor) inset,-5px 0 0 0 var(--redColor) inset;position:relative;background-color:var(--osusumeColor)}.price_f table th.osusume::before{content:'';width:100%;height:25px;position:absolute;background-color:var(--osusumeColor);left:0;top:-25px;border:5px solid var(--redColor);border-top-left-radius:15px;border-top-right-radius:15px;border-bottom:none}.price_f table tr.end td.osusume::after{content:'';width:100%;height:20px;position:absolute;background-color:var(--osusumeColor);left:0;bottom:-20px;border:5px solid var(--redColor);border-bottom-left-radius:15px;border-bottom-right-radius:15px;border-top:none}.price_f table tr.end td{padding-bottom:10px}.price_f table th.osusume .osusumeIcon{width:max-content;color:var(--redColor);font-size:18px;font-weight:700;padding:.3em 1em;background:#fff;border:4px solid var(--redColor);border-radius:var(--r-pill);position:absolute;top:-40px;left:50%;transform:translateX(-50%)}.price_f table th h3{color:var(--deepColor);font-size:26px;text-align:center;line-height:1.6em;margin-top:0}.price_f table th p,.price_f table td p{font-size:16px;line-height:1.6em;padding:0 6px;font-weight:300;text-align:center}.price_f table th p span,.price_f table td p.price-txt{font-size:35px;font-weight:700;text-align:center}.price_f table th.osusume h3{color:var(--deepColor);text-align:center;line-height:1.6em;padding:0 5px}.price_f table td.addTxt{background:#fff;font-size:16px;padding:30px 0 10px;text-align:center}.price_f table td.addOption{padding:30px}.price_f table td{width:33%;background:var(--backColor);vertical-align:top;padding:5px 10px;line-height:1.9em}.price_f table td span{font-size:20spx;font-weight:700}.price_f table th p.subtitle{font-size:.75em}.price_f table th p.hr{margin:10px auto;width:90%;border-top:1px solid #C1C1C1}.price_s{background:var(--lightColor)}.price_s>.wrap_inner{width:95%;max-width:1000px}.priceTbl{border-collapse:collapse;table-layout:fixed;width:100%;max-width:1000px;text-align:center}.priceTbl thead th{padding:1em .8em;border-right:1px solid #fff}.priceTbl td{padding:1em;vertical-align:top}.priceTbl thead th:not(:first-child){background:#6E6E6E;color:#fff;font-size:20px;padding:1em .5em}.priceTbl thead th span{font-size:.8rem}.priceTbl thead th:nth-child(2){background-color:#fff;position:relative;border-left:4px solid var(--redColor);border-right:4px solid var(--redColor)}.priceTbl thead th:nth-child(2)::before{content:'';width:calc(100% + 8px);height:15px;position:absolute;background-color:#fff;left:-4px;bottom:100%;border:4px solid var(--redColor);border-bottom:none;border-top-left-radius:10px;border-top-right-radius:10px}.priceTbl thead th:nth-child(2) p{display:none}.priceTbl tbody th,.priceTbl tbody td{border:1px solid #b0b0b0}.priceTbl tbody th{background-color:var(--middleColor);color:#fff;vertical-align:middle;border-bottom:1px solid #fff!important}.priceTbl tbody td{background-color:#fff}.priceTbl tbody td span{font-size:24px;font-weight:700;text-align:center}.priceTbl tbody td span.d_circle{color:var(--redColor);font-weight:900}.priceTbl tbody td span.s_circle{color:var(--redColor);font-weight:900}.priceTbl tbody td span.triangle{color:var(--deepColor);font-weight:900}.priceTbl td:nth-child(2){background:#fff;border-left:4px solid var(--redColor);border-right:4px solid var(--redColor)}.priceTbl tr.recommend th{vertical-align:middle;background:var(--middleColor)}.priceTbl tr.recommend td{vertical-align:middle;font-weight:700}.priceTbl tr.recommend td.bBtm{border-bottom:4px solid var(--redColor)!important;vertical-align:middle}.tblLogo{width:100%;height:auto}.flow{background:var(--backColor);padding-top:80px;margin-top:0}.stepbar{margin:0 auto;width:85%}.stepbar .stepbarwrap{margin:2em 0;position:relative}.stepbar .stepbarwrap .steptitle{display:inline-flex;align-items:center}.stepbar .stepbarwrap .steptitle .stepcircle{display:inline-block;width:7em;height:7em;content:"";border-radius:50%;background-color:var(--deepColor);color:#fff;text-align:center;aspect-ratio:1/1}.stepbar .stepbarwrap .steptitle .stepcircle span{display:inline-block;line-height:1.6em;font-size:4em;font-weight:700;position:relative;top:0em}.stepbar .stepbarwrap .steptitle .title{margin:.5em;font-weight:700;font-size:2em;color:var(--deepColor);line-height:1.2em;width:calc(100% - 4em)}.stepbar .stepbarwrap .steptxt{padding-left:8em}.stepbar .stepbarwrap .steptxt .txt{font-size:1em}.stepbar .stepbarwrap .stepline{width:6px;height:calc(100% + 1em);background-color:#e3e3e3;position:absolute;top:2em;left:3.4em;z-index:-1}.stepbarwrap:last-of-type .stepline:last-of-type{display:none}@media screen and (max-width:960px){.stepbar{width:90%}}.qa{background:var(--lightColor);padding-top:80px;margin-top:0}.qa h2::before{position:absolute;border-bottom:3px solid gray;top:100%;left:50%;transform:translateX(-50%);width:80px;content:''}.qa ul{margin:0 auto 20px;width:100%}.qa ul li.q{list-style:none;background:var(--middleColor);border-radius:var(--r-m);padding:20px;font-size:23px;font-weight:700;color:#fff}.qa ul li.q span{color:#fff;margin-right:20px;font-weight:700}.qa ul li.a{list-style:none;padding:20px;color:#1a1a1a;font-size:18px;line-height:1.8em}.qa ul li.a span{color:var(--middleColor);margin-right:20px;font-weight:700}.ctaForm{background:var(--deepColor);padding-top:80px;margin-top:0}.ctaForm h2,.ctaForm h2 span{color:#fff}.ctaForm .floatLeft{width:50%}.ctaForm .floatLeft img{width:310px;height:auto;margin:0 auto 30px auto;display:block}.ctaForm .floatLeft p span{font-size:23px;font-weight:700;line-height:2em}.ctaForm .floatLeft p{font-size:20px;line-height:2em;color:#fff;padding-right:10px}.ctaForm .floatRight{width:50%}.ctaForm .floatRight h2{font-size:20px;color:#fff;margin:30px auto 0!important;padding:0!important}.ctaForm .floatRight p{font-size:20px;line-height:2em;color:#fff}.ctaForm table{background:#fff;width:100%;margin:30px auto;border:1px solid #c9c9c9}.ctaForm table th{width:30%;padding:10px 20px;background:#ededed;border:1px solid #c9c9c9;text-align:left}.ctaForm table td{width:70%;padding:10px 20px;background:#fff;border:1px solid #c9c9c9}.ctaForm .cta-bgcolor{background:#f2f2f2;border:1px solid #c9c9c9}input:not([type='checkbox']){width:100%;height:50px;border:1px solid #c9c9c9;padding-left:10px}textarea{width:100%;border:1px solid #c9c9c9;padding:10px}.hobby-selection label{padding-top:2px;margin-right:10px}.req{background:var(--redColor);color:#fff;font-size:13px;padding:2px 5px}.hover-transition{text-align:center;font-size:21px;color:#fff;border:none!important;margin:30px auto;width:400px!important;display:block;padding:0 0 2px!important;border-radius:var(--r-pill);background:var(--graOrangeColor);cursor:pointer!important}.hover-transition:hover{opacity:.7;filter:alpha(opacity=70);-ms-filter:"alpha( opacity=70 )";-webkit-transition:0.7s;-moz-transition:0.7s;-o-transition:0.7s;transition:0.7s}.ctaBtn{font-size:20px;color:#fff;text-align:center;padding:15px 15px 20px;display:block;margin:0 auto;line-height:1.8em;border-radius:var(--r-pill);width:auto;background:var(--ctaButtonColor);box-shadow:var(--shadow-btn)}.ctaBtn span{font-size:30px;font-weight:700}.ctaBtn,.ctaBtn:hover{color:#fff}.ctaBtn span .fa-download{color:var(--yellowColor)}a.btnLink{font-size:20px;text-decoration:underline;text-align:center;color:#1a1a1a!important;padding:15px 0 0;display:block}.company{background:#fff}.company h2{font-size:20px;padding-bottom:10px}.company table{width:50%;border:none;margin:0 auto}.company table th{width:30%;border-bottom:1px solid #b1b1b1;padding:10px 0;text-align:left}.company table td{width:70%;border-bottom:1px solid #b1b1b1;padding:10px 0}.hide{bottom:-130px}.main p{text-align:center;margin:30px auto 0}.content{min-height:calc(100vh - 196px)}.clearfix:after{content:"";display:block;clear:both}.clearfix{display:inline-block}.clearfix{display:block}img.img-radius{border-radius:50%;object-fit:cover}@media only screen and (min-width:768px) and (max-width:1180px){.pc{display:none!important}.tb{display:block!important}}@media screen and (max-width:768px){.pc{display:none!important}.tb{display:none!important}.sp{display:block!important}.wrap{padding:40px 0;width:100%;height:auto;margin:0 auto;background:#fff}.wrap_inner{width:90%;margin:0 auto;height:auto;padding:0}.btn .wrap_inner{width:90%}.br-pc{display:none}.br-sp{display:block}.br-tb{display:block}h1{margin:0 auto}h2{text-align:center;font-size:30px;line-height:1.3em;font-weight:700;margin:0 auto 10px;position:relative;padding:.5rem 0 2rem}h2 span{font-size:22px}.midashi{width:100%;margin:0 auto;display:block}.floatLeft{float:none!important;margin:10px auto}.floatRight{float:none!important;margin:10px auto}.fv{width:100%;height:auto;background:linear-gradient(to right,#fff,var(--middleColor));padding:25px 0}.fvWrap{width:90%;max-width:1280px;padding:0;margin:0 auto}.fvWrap .floatLeft{width:100%;margin-bottom:0}.fvWrap p.upperCatchcopy{font-size:clamp(16px,calc(100vw * 16 / 375),20px);margin:10px auto .5em}.fvWrap .catchcopy{font-size:min(8.5vw,44px);font-weight:900;line-height:1.4em;text-align:center}.fvWrap .catchcopy span.thinTxt{font-size:.8em;font-weight:300}.fvWrap .catchcopy span.blueBack{background:var(--deepColor);color:#fff}.fvWrap p.subCatchcopy{font-size:clamp(14px,calc(100vw * 14 / 375),18px);font-weight:700;line-height:1.5em;text-align:center}.fvWrap .subCatchcopy span.underline{font-size:1.1em;font-weight:900;color:var(--deepColor);background:linear-gradient(transparent 60%,var(--yellowColor) 30%);display:inline-block}.fvWrap p{font-size:clamp(12px,calc(100vw * 12 / 375),16px);margin:5px 0 0 0;line-height:1.5em;text-align:center}.imageBox{height:auto;overflow:hidden}.fvWrap img{width:65%;height:auto;margin:0 auto;display:block}.fvWrap a.btnLink{font-size:16px;text-decoration:underline;text-align:center;color:#1a1a1a!important;padding:5px 0 20px;display:block}.sliderspace{background:#f6f6f6}.sliderspace h2{font-size:22px!important;margin-bottom:0px!important}.slider{width:100%;max-width:1000px;margin:0 auto}.slider img{width:100%;height:auto}.slick-prev{left:4%;z-index:1}.slick-next{right:10%;z-index:1}.problem{background:var(--lightColor)}.problem h2{color:var(--deepColor);padding:10px;text-align:center;border-radius:var(--r-pill);width:100%;margin:0 auto 20px;font-weight:700}.problem ul{width:100%;margin:0 auto}.problem ul li{list-style:none;width:100%;height:auto;float:none;margin:0 auto 30px}.problem ul li h3{font-size:24px;text-align:center;line-height:1.4em;margin-bottom:20px}.problem ul li p{font-size:17px;line-height:1.4em}.problem ul li img{width:60%;height:auto;margin:0 auto;display:block}.arrow{background:var(--graOrangeColor);height:calc(tan(60deg) * 60px / 3);width:200px;clip-path:polygon(0 0,100% 0,50% 100%);margin:30px auto;clear:both}.result{font-size:24px;text-align:center;line-height:1.6em;font-weight:700}.solution{background:#fff}.solution ul{width:100%;margin:0 auto}.solution ul li{width:100%;height:auto;padding:0;margin:0 auto 50px;background:#fff}.solution ul li .pho{width:100%!important;margin:10px auto;display:block}.solution ul li .floatLeft{width:100%}.solution ul li .floatRight{width:100%}.solution ul li h3{color:var(--deepColor);font-size:26px;margin:0 auto 20px;line-height:1.6em;font-weight:700;text-align:center}.solution ul li p{font-size:18px;margin:0 auto;line-height:1.8em}.solution ul li h3{font-size:20px}.solution .otherPoint{width:100%;max-width:700px;margin:0 auto;padding:30px;background:var(--lightColor);border-radius:var(--r-l)}.solution .otherPoint table{font-size:19px;font-weight:700;table-layout:auto}.solution .otherPoint table th{width:10%;padding:10px 0}.solution .otherPoint table td{width:90%;padding:10px 0 10px 10px;line-height:1.5em}.solution .otherPoint table th .fa-square-check{color:var(--redColor);font-size:25px}.merit{background:var(--backColor)}.merit table{width:100%;margin:0 auto 50px}.merit table th{width:100%;display:block;text-align: center;}.merit table th img{width:80%;height:auto;margin-bottom:10px;}.merit table td{width:100%;display:block;padding-left:0}.merit table td h2{font-size:min(5.5vw,26px);text-align:center;margin:0 auto}.merit table td .intro{font-size:18px;font-weight:700;line-height:1.6em;margin:0 auto 30px}.merit table td .intro span{color:var(--redColor)}.merit ul{width:100%;margin:0 auto}.merit ul li{list-style:none;width:100%;height:auto;text-align:center;background:#fff;padding:30px 20px;margin:0 auto 30px;border-radius:var(--r-l);box-shadow:var(--shadow-btn)}.merit ul li h3{text-align:center;color:var(--deepColor);font-size:23px;line-height:1.5em}.merit ul li img{width:100px;height:auto}.merit ul li p{font-size:15px;text-align:left}.reason{background:var(--lightColor)}.reason h2{font-size:30px;line-height:1.3em}.reason ul li{list-style:none;width:100%;height:auto;margin:0 auto 30px;padding:20px;background:#fff;position:relative}.reason ul li .num{background:var(--middleColor);color:#fff;width:100px;height:100px;position:absolute;top:0;left:50%;text-align:center;padding-top:20px;font-size:16px;line-height:1.6em;font-weight:700;margin-left:-50px}.reason ul li .num span{font-size:30px}.reason ul li h3{font-size:22px;line-height:1.5em;margin:15px auto;text-align:center}.reason ul li .floatLeft{width:100%;margin:100px auto 0}.reason ul li .floatRight{width:100%}.reason ul li p{font-size:15px;line-height:1.6em}.use{background:none}.use.scrollin{background:url(./images/7-useBg_sp.webp);background-size:cover;background-position:center}.use p{text-align:center;font-size:21px;margin:20px auto;color:#fff;line-height:1.8em;font-weight:700}.use p.genre{background:#fff;color:#1a1a1a;font-size:16px;padding:20px 20px;width:90%;margin:20px auto;font-weight:300}.performance{background:var(--backColor)}.performance table{width:100%;height:auto;padding:30px;background:#fff;border-radius:var(--r-l);box-shadow:var(--shadow-btn);margin:0 auto 50px}.performance table th{width:100%;display:block;padding-top:30px}.performance table th img{width:180px;height:auto;display:block;margin:0 auto}.performance table td{width:100%;padding:10px 30px 30px 30px;display:block}.performance table td h3{margin:0 auto;text-align:center;line-height:1.5em}.performance table td .name{font-size:14px;font-weight:700;text-align:center;margin:30px auto}.performance table td p{line-height:1.8em}.price_f table{width:100%;margin:30px auto 0;border-radius:var(--r-l)}.price_f table th{text-align:center;width:33%;vertical-align:top;padding:0}.price_f table th.osusume,.price_f table td.osusume{box-shadow:4px 0 0 0 var(--redColor) inset,-4px 0 0 0 var(--redColor) inset;position:relative;background-color:var(--osusumeColor)}.price_f table th.osusume::before{content:'';width:100%;height:25px;position:absolute;background-color:var(--osusumeColor);left:0;border:4px solid var(--redColor);border-top-left-radius:15px;border-top-right-radius:15px;border-bottom:none}.price_f table tr.end td.osusume::after{content:'';width:100%;height:20px;position:absolute;background-color:var(--osusumeColor);left:0;border:4px solid var(--redColor);border-bottom-left-radius:15px;border-bottom-right-radius:15px;border-top:none}.price_f table th.osusume .osusumeIcon{width:max-content;color:var(--redColor);font-size:16px;font-weight:700;padding:.1em .6em;background:#fff;border:3px solid var(--redColor);border-radius:var(--r-pill);position:absolute;top:-46px;left:50%;transform:translateX(-50%)}.price_f table th h3{color:var(--deepColor);font-size:14px;text-align:center;line-height:1.6em;margin:10px 0}.price_f table th p,.price_f table td p{font-size:12px;line-height:1.6em;font-weight:300;margin:3px 0}.price_f table th p span,.price_f table td p.price-txt{font-size:17px;font-weight:700}.price_f table th.osusume h3{color:var(--deepColor);text-align:center;line-height:1.6em;padding:0 5px}.price_f table th.addTxt{background:#fff}.price_f table th.addTxt p{font-size:16px;margin-top:10px}.price_f table td{width:33%;background:var(--backColor);vertical-align:top;padding:0;line-height:1.9em}.price_f table td span{font-size:15px;font-weight:700}.price_s{background:var(--lightColor)}.priceTbl{border-collapse:collapse;table-layout:fixed;width:100%;text-align:center}.priceTbl thead th{padding:1em .8em;border-right:1px solid #fff}.priceTbl td{padding:2px;vertical-align:top}.priceTbl thead th:not(:first-child){background:#6E6E6E;color:#fff;font-size:18px;padding:1em .5em}.priceTbl thead th span{font-size:.8rem}.priceTbl thead th:nth-child(2){color:#000;background-color:var(--backColor);position:relative;border-left:4px solid var(--redColor);border-right:4px solid var(--redColor);border-top:4px solid var(--redColor)!important}.priceTbl thead th:nth-child(2)::before{content:'';width:calc(100% + 8px);height:20px;position:absolute;background-color:#fff;left:-4px;bottom:94%;border:4px solid var(--redColor);border-bottom:none;border-top-left-radius:10px;border-top-right-radius:10px;background-color:var(--backColor)}.priceTbl thead th:nth-child(2) p{display:inline-block}.priceTbl thead th:nth-child(2) img{display:none}.priceTbl tbody th,.priceTbl tbody td{border:1px solid #b0b0b0}.priceTbl tbody th{background-color:var(--middleColor);color:#fff;vertical-align:middle;border-bottom:1px solid #fff!important}.priceTbl tbody td{background-color:#fff;font-size:14px;line-height:1.4em}.priceTbl tbody td span{font-size:16px;line-height:1.3em}.priceTbl td:nth-child(2){background:#fff;border-left:4px solid var(--redColor);border-right:4px solid var(--redColor)}.table-scroll{overflow-x:auto;padding-top:20px}.flow{background:var(--backColor);margin-top:0}.stepbar{margin:0 auto;width:100%}.stepbar .stepbarwrap{margin:2em 0;position:relative}.stepbar .stepbarwrap .steptitle{display:inline-flex;align-items:center}.stepbar .stepbarwrap .steptitle .stepcircle{display:inline-block;width:4em;height:4em;content:"";border-radius:50%;background-color:var(--deepColor);color:#fff;text-align:center}.stepbar .stepbarwrap .steptitle .stepcircle span{display:inline-block;line-height:1.9em;font-size:2em;font-weight:700;position:relative;top:0em}.stepbar .stepbarwrap .steptitle .title{margin:.5em;font-weight:700;font-size:1.3em;color:var(--deepColor);line-height:1.4em;width:calc(100% - 4em)}.stepbar .stepbarwrap .steptxt{padding-left:4.5em}.stepbar .stepbarwrap .steptxt .txt{font-size:1em}.stepbar .stepbarwrap .stepline{width:6px;height:calc(100% + 3em);background-color:#e3e3e3;position:absolute;top:1.5em;left:1.8em;z-index:-1}.stepbarwrap:last-of-type .stepline:last-of-type{display:none}.qa{background:var(--lightColor);margin-top:0}.qa h2{position:relative;margin-bottom:50px}.qa h2::before{position:absolute;border-bottom:3px solid gray;top:100%;left:50%;transform:translateX(-50%);width:80px;content:''}.qa ul{margin:0 auto 20px;width:100%}.qa ul li.q{list-style:none;background:var(--middleColor);border-radius:var(--r-m);padding:20px;font-size:18px;font-weight:700;color:#fff}.qa ul li.q span{color:#fff;margin-right:20px;font-weight:700}.qa ul li.a{list-style:none;padding:20px;color:#1a1a1a;font-size:16px;line-height:1.8em}.qa ul li.a span{color:var(--middleColor);margin-right:20px;font-weight:700;font-size:18px}.ctaForm{background:var(--deepColor);margin-top:0}.ctaForm .floatLeft{width:100%}.ctaForm .floatLeft img{margin:-30px auto 30px;width:50%;height:auto;display:block}.ctaForm .floatLeft p span{font-size:20px;font-weight:700;line-height:1.8em}.ctaForm .floatLeft p{color:#fff;font-size:15px;line-height:1.6em;margin-bottom:30px}.ctaForm .floatRight{width:100%}.ctaForm .floatRight h2{font-size:20px!important;color:#fff;margin:30px auto 0!important;padding:0!important}.ctaForm .floatRight p{color:#fff;font-size:15px;line-height:1.6em;text-align:center}.ctaForm table{background:#fff;width:100%;margin:30px auto;border:1px solid #c9c9c9}.ctaForm table th{width:30%;padding:10px;background:#ededed;border:1px solid #c9c9c9;text-align:left;font-size:13px}.ctaForm table td{width:70%;padding:10px;background:#fff;border:1px solid #c9c9c9}input:not([type='checkbox']){width:100%;height:50px;border:1px solid #c9c9c9;padding-left:10px;font-size:12px}textarea{width:100%;border:1px solid #c9c9c9;padding:10px;font-size:12px}.hobby-selection label{padding-top:2px;margin-right:10px}.req{background:var(--redColor);color:#fff;font-size:13px;padding:2px 5px}.hover-transition{text-align:center;font-size:20px;color:#fff;background:orange;border:none;margin:30px auto;width:90%!important;display:block;padding:10px 0;border-radius:var(--r-pill);background:var(--graOrangeColor);cursor:pointer!important}.hover-transition:hover{opacity:.6;filter:alpha(opacity=60);-ms-filter:"alpha( opacity=60 )";-webkit-transition:0.7s;-moz-transition:0.7s;-o-transition:0.7s;transition:0.7s}.ctaBtn{font-size:14px;color:#fff;text-align:center;padding:15px;display:block;margin:0 auto;background:orange;line-height:1.8em;border-radius:var(--r-pill);width:100%;background:var(--ctaButtonColor)}.ctaBtn span{font-size:18px;font-weight:700}.ctaBtn span .fa-download{color:var(--yellowColor)}a.btnLink{font-size:16px;text-decoration:underline;text-align:center;color:#1a1a1a!important;padding:5px 0 0;display:block}.company{background:#fff}.company h2{font-size:18px!important}.company table{width:100%;border:none}.company table th{width:30%;border-bottom:1px solid #b1b1b1;padding:10px 0;text-align:left}.company table td{width:70%;border-bottom:1px solid #b1b1b1;padding:10px 0}.hide{bottom:-105px}.main p{text-align:center;margin:30px auto 0}.content{min-height:calc(100vh - 116px)}/*.page p{font-size:13px;line-height:1.7em;text-align:justify;text-justify:inter-ideograph}*/.sp_br{display:block}}@media screen and (max-width:466px){.f-menu div .f-menuTxt_tel{padding:0}}@media screen and (min-width:1181px){.f-menu img{display:inline-block;position:relative;top:50%;transform:translateY(-50%);margin:0 auto}}#ctaForm .hobby-selection input[type="checkbox"]{vertical-align:middle}.submit.form_input_submit input{cursor:pointer}@media only screen and (max-width:800px){.ctaForm .content_form .input_unit{margin-top:0;margin-bottom:0}.ctaForm .content_form .input_unit .my_column.my_right,.ctaForm .content_form .input_unit .my_column.my_right input{width:100%}}.fvWrap.catch-long p.upperCatchcopy{font-size:clamp(22px,calc(100vw* 22 / 769),40px);font-weight:900;margin-top:0;padding:10px 0 0}.fvWrap.catch-long h1.catchcopy{font-size:clamp(36px,calc(100vw * 36 / 769),60px);font-weight:900;margin:0;line-height:1.3em}.fvWrap.catch-long p.subCatchcopy{font-size:clamp(18px,calc(100vw * 18 / 769),32px);font-weight:700;margin:20px 0 0 0;line-height:1.5em}.fvWrap.catch-long p,.fvWrap.catch-long p.subCatchcopy{margin:10px 0 0 0;line-height:1.5em}.fvWrap.catch-long .floatLeft{width:70%}.fvWrap.catch-long img{width:30%;height:auto}@media screen and (max-width:768px){.fvWrap.catch-long p.upperCatchcopy{font-size:clamp(14px,calc(100vw * 28 / 769),28px);margin:auto 0;padding-top:10px}.fvWrap.catch-long h1.catchcopy{font-size:clamp(16px,calc(100vw * 36 / 769),36px)}.fvWrap.catch-long p.subCatchcopy{font-size:clamp(12px,calc(100vw * 24 / 769),24px)}.fvWrap.catch-long .floatLeft{width:100%}.fvWrap.catch-long img{width:65%;height:auto}}.fv .textList{margin:10px auto;display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.fv .textList .tag{margin:5px;padding:5px 5px;font-size:min(1.7vw,20px);font-weight:700;color:#FFF;background:var(--graBlueColor);text-align:center;width:95%}@media only screen and (min-width:1000px){.fv .textList .tag.col-1{width:55%}.fv .textList .tag.col-2{width:46%}}@media only screen and (max-width:1000px){.fv .textList .br-pc{display:none}.fv .textList{gap:0}}@media only screen and (max-width:768px){.fv .textList .tag{padding:5px;font-size:min(2.8vw,16px)}}.img-caption{font-weight:400;font-size:.8em}
/****************/

:root {
  --deepColor: #0071b9;
  --middleColor: #1A7A9D;
  --lightColor: #ebf7fc;
  --backColor: #fffdf1;
  --ttlColor: #0071b9;
  --fvBackColor: #33aade;
  --graOrangeColor: linear-gradient(to right,#ee5a24,#f8ad3b);
  --graBlueColor: linear-gradient(to right,#00a69a,#0071b9);
  --ctaButtonColor: linear-gradient(to right,#ee5a24,#f8ad3b);
  --redColor: #eb1c24;
  --yellowColor: #ffff00;
  --osusumeColor: #ecc6c56b;
  --lineColor: #FFEA00;
}
.fv {
    background: linear-gradient(to right, #ffffff, var(--middleColor));
}
/* TEL無のCTA */
@media only screen and (min-width: 768px) and (max-width: 940px) {
    .headerWrap #header a.hCtnBtn, .headerWrap #header a.dlBtn {width: 200px;}
    .headerWrap #header h1 {width: 42%; display: inline-block; position: relative; top: 50%; transform: translateY(-50%);}
    .headerWrap #header h1 img {margin: 0 0 0 15px;}
}
/* CATボタン1:1行 */
.headerWrap a.dlBtn{line-height:4em;font-size: 18px;}
.headerWrap #menu a.dlBtn {line-height: 4.2em;font-size: 14px;padding-top: 8px;}@media only screen and (min-width: 768px) and (max-width: 1180px){
    .headerWrap #menu a.dlBtn{line-height: 4.2em;font-size: 12px;}}@media only screen and (max-width: 768px){
    .headerWrap #menu a.dlBtn{line-height: 1.4em;font-size: 10px;padding-top: 20px;}}
/* CATボタン2:1行 */
.headerWrap a.hCtnBtn{line-height:4em;font-size: 18px;}
.headerWrap #menu a.hCtnBtn {line-height: 4.2em;font-size: 14px;padding-top: 8px;}@media only screen and (min-width: 768px) and (max-width: 1180px){
    .headerWrap #menu a.hCtnBtn{line-height: 4.2em;font-size: 12px;}}@media only screen and (max-width: 768px){
    .headerWrap #menu a.hCtnBtn{line-height: 1.4em;font-size: 10px;padding-top: 20px;}}
/* CATボタン */

/* catchcopy */
.fvWrap p.upperCatchcopy {
    font-size: clamp(18px, calc(100vw * 18 / 769), 29px);
}
.fvWrap .catchcopy {
    background-color: #ebf7fcf2;
    margin: 5px 0;
    padding: 10px 0 20px;
    text-align: center;
    font-size: clamp(43px, calc(100vw * 43 / 769), 66px);
}@media screen and (max-width: 768px){
    .fvWrap .catchcopy {
        font-size: min(8.3vw, 44px);
    }}

/* 個別style */
.fvWrap p.upperCatchcopy {
    display: inline-block;
    background-color: #ebf7fcf2;
    color: #000;
    padding: 0.2em 0.5em;
    border-radius: var(--r-l);
    position: relative;
    text-align: center;
    width: 100%;
}

.fvWrap p.upperCatchcopy::after {
    content: "";
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    border-width: 10px 8px 0 8px;
    border-style: solid;
    border-color: #ebf7fcf2 transparent transparent transparent;
}

.fv .textList {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 0;
}

.fv .textList .tag {
    background: #00076B;
    color: white;
    padding: 0.2em 4em;
    font-weight: bold;
    position: relative;
    clip-path: polygon(0 0, calc(100% - 20px) 0, 100% 100%, 20px 100%);
    white-space: nowrap;
    text-align: left;
    width: 100%;
}

.fv .textList .tag .item {
    width: 0.8em;
    height: 0.8em;
    border: 3px solid white;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: transparent;
    margin-left: -1.5em;
}

.fv .textList .tag p {
    text-align: left;
    margin: 5px 0;
    padding-left: 20px;
}

.fv .highlight {
    color: var(--lineColor);
}

.fvWrap p.subCatchcopy {
    margin: 10px 0 20px;
}

.fvWrap span.underline {
    background: linear-gradient(transparent 60%, var(--lineColor) 30%);
    display: inline-block;
}

.br-sp_s  {
    display: none
}

.problem ul li h3 {
    font-size: 23px;
}

.merit ul li h3 {
    font-size: 21px;
}@media screen and (min-width: 769px){
    .fvWrap {
        height: min(57vw, 584px);
        position: relative; 
    }
    .fvWrap .imageBox {
        position: absolute;
        top: initial;
        bottom: 0;
        right: 0;
        margin: 0 auto;
        width: 46%;
        transform: initial;
        float: initial;
    }
    .fvWrap .floatLeft {
        margin: 40px 0 40px 40px;
    }
    .fv .textList .tag {
        width: 85%;
    }
    .merit ul li {
      height: 26em;
    }}@media screen and (max-width: 768px){
    .fv {
        padding: 25px 0 0;
    }
    .problem h2 {
        font-size: min(5.5vw, 24px);
    }
    .result {
        font-size: min(4.9vw, 23px);
    }}

/* SCENE Area */
.scene {
    padding-bottom: 0;
}
.scene .row-1 {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

.scene .row-1 .col-1, .scene .row-1 .col-2 {
    flex: none;
    width: auto;
    padding: 0 10px;
}

.scene .row-1 h2 {
    color: var(--ttlColor);
    font-size: 25px;
    text-align: center;
    margin: 0;
    padding: 0;
}

.scene .row-1 p {
    font-size: 22px;
    font-weight: bold;
    color: #333;
    margin: 0;
    text-align: center;
}

.scene_row {
    display: flex;
    margin-bottom: 0;
}

.scene_col {
    position: relative;
    width: 50%;
    padding: 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.scene_col.no01,
.scene_col.no04 {
    background-color: #f4f7f7;
}

.scene_col.no02,
.scene_col.no03 {
    background-color: var(--lightColor);
}

.scene_col .image-container {
    position: relative;
    width: 100%;
    margin-bottom: 30px;
}

.scene_col img {
    width: 100%;
    height: 240px;
    object-fit: cover;
    border-radius: var(--r-m);
    display: block;
}

.scene_col .main-heading {
    font-size: 20px;
    color: #333;
    font-weight: bold;
    margin-bottom: 20px;
    text-align: center;
}

.scene_col ul {
    list-style: none;
    text-align: left;
    margin: 30px 0;
    width: 100%;
    max-width: 400px;
}

.scene_col li {
    font-size: 18px;
    color: #333;
    margin-bottom: 12px;
    line-height: 1.5;
}

.scene .ib_c-headdig--scesub {
    position: absolute;
    top: 190px;
    margin: 0 auto;
}

.scene .ib_c-headdig--scesub h3 {
    background-color: #fff;
    width: fit-content;
    margin: 0;
    padding: 11px;
    line-height: 1.3;
    font-size: min(2.8vw, 20px);
}

table, td, th {
    border: none;
    padding: 0;
}
label {
    color: inherit;
    font-size: inherit;
    font-style: inherit;
    font-weight: inherit;
    line-height: inherit;
}
.scene .rich-heading-align-left {
    text-align: left !important;
}@media (max-width: 768px){
    .scene .row-1 {
        flex-direction: column;
        text-align: center;
        margin-bottom: 30px;
    }

    .scene .row-1 .col-1,
    .scene .row-1 .col-2 {
        width: 100%;
    }

    .scene .row-1 p {
        font-size: 18px;
    }

    .scene .scene_row {
        flex-direction: column;
    }

    .scene_col {
        width: 100%;
    }

    .scene_col .image-container {
        margin-bottom: 15px;
    }

    .scene_col li {
        font-size: 15px;
    }}@media (max-width: 480px){
    .scene .ib_c-headdig--scesub h3 {
        font-size: min(3.4vw, 16px);
    }
    .scene_col li {
        font-size: 14px;
    }
    .scene_col img {
        height: 230px;
    }
    .br-sp_s {
        display: block
    }}
#ast-scroll-top {
    z-index: 101;
}

/* スライド調整 */
.sliderspace button:hover, .sliderspace button:focus {
    background-color: #045cb4;
}@media (min-width: 769px){
    .sliderspace .wrap_inner {
        font-size: 13px;
        padding: 0 4em;
    }}


.cf-writers .lead{max-width:800px;margin:0 auto 40px;text-align:left;line-height:1.9}
.cf-writers ul{display:flex;flex-wrap:wrap;gap:24px;justify-content:center;list-style:none}
.cf-writers li{flex:1 1 280px;max-width:320px;background:var(--lightColor);border-radius:var(--r-m);padding:24px}
.cf-writers .label{display:inline-block;font-size:13px;font-weight:700;color:var(--ttlColor);letter-spacing:.08em;margin-bottom:8px}
.cf-writers h3{font-size:20px;margin:0 0 12px}
.cf-writers li p{font-size:15px;line-height:1.8}@media (max-width:767px){.cf-writers .wrap_inner{width:90%}.cf-writers li{max-width:none}}

.cf-voices .wrap_inner{max-width:1000px}
.cf-voices .use{max-width:800px;margin:0 auto 32px;line-height:1.9}
.cf-voices ul{display:flex;flex-wrap:wrap;gap:24px;justify-content:center;list-style:none}
.cf-voices li{flex:1 1 380px;max-width:480px}
.cf-voices a{display:block;height:100%;background:var(--lightColor);border-radius:var(--r-m);padding:24px;color:#1a1a1a;text-decoration:none}
.cf-voices .label{display:block;font-size:13px;font-weight:700;color:var(--ttlColor);letter-spacing:.08em;margin-bottom:8px}
.cf-voices .quote{display:block;font-size:17px;font-weight:700;line-height:1.7;margin-bottom:12px}
.cf-voices .more{font-size:14px;color:var(--ttlColor)}@media (max-width:767px){.cf-voices .wrap_inner{width:90%}.cf-voices li{max-width:none}}

/* ===== theme: pages (compiled scss) ===== */
.service-section{margin-bottom:9.5rem}@media(max-width: 767px){.service-section--flex{display:block}}.service-img-wrap{position:relative}@media(max-width: 767px){.service-img-wrap{padding-bottom:20%}}@media(min-width: 768px){.service-img-wrap{width:38.6%}}.service-img{position:absolute;margin-top:14.6rem;display:block;z-index:1;width:90%}@media(max-width: 767px){.service-img{margin-top:0}}.service-img::after{content:"";background-color:var(--deepColor);position:absolute;top:-30px;height:calc(100% + 30px);width:calc(100% - 30px);z-index:-1}@media(max-width: 767px){.service-img::after{height:calc(100% + 5px);top:-10px;width:calc(100% + 10px)}}@media(min-width: 768px){.service-img__l{padding-right:5.4rem;margin-left:3rem}}@media(max-width: 767px){.service-img__l{margin-top:0;width:calc(100% - 10px);margin:0 auto 0 10px}}.service-img__l::after{left:-30px}@media(max-width: 767px){.service-img__l::after{left:-10px}}@media(min-width: 768px){.service-img__r{padding-left:5.4rem;margin-right:3rem}}@media(max-width: 767px){.service-img__r{margin-top:0;width:calc(100% - 10px);margin:0 auto}}.service-img__r::after{right:-30px}@media(max-width: 767px){.service-img__r::after{right:-10px}}@media(min-width: 768px){.service-content-wrap{width:61.4%}}.service-tit{display:flex;align-items:center;margin-bottom:2rem;justify-content:flex-start}.service-tit--num{font-family:"Poppins",sans-serif;font-weight:600;font-size:16.9rem;color:var(--deepColor);opacity:.15;padding-right:2rem}@media(max-width: 864px){.service-tit--num{font-size:6rem;padding-right:1rem}}.service-tit--text-wrap{width:61%;display:block}@media(max-width: 767px){.service-tit--text-wrap{width:64%}}.service-tit--text{font-size:3.5rem;color:hsla(0,0%,100%,.99);box-decoration-break:clone;-webkit-box-decoration-break:clone;display:inline;padding:.1em .5em;line-height:1.8;background-color:var(--deepColor)}@media(max-width: 767px){.service-tit--text{font-size:1.8rem;line-height:2.5;padding:.4em .5em}}.service-content{border-bottom:4px solid var(--deepColor);padding:0 3rem 1rem 3rem;margin-bottom:2rem;font-size:1.8rem}@media(max-width: 767px){.service-content{font-size:1.6rem;padding-left:0;padding-right:0;border-bottom:1px solid var(--deepColor)}}.service-area{border:3px solid var(--deepColor);padding:3rem;margin-top:4.6rem}@media(max-width: 767px){.service-area{padding:2rem;margin-bottom:4rem}}.service-check{font-size:1.7rem;font-weight:600;position:relative;padding-left:3.8rem;margin-bottom:4.5rem}@media(max-width: 767px){.service-check{font-size:1.6rem;padding-left:2rem;margin-bottom:2rem}}.service-check::after{position:absolute;content:"";background:url(../img/common/icon-check.svg);background-size:cover;left:0;top:0;width:2.5rem;height:2.5rem}@media(max-width: 767px){.service-check::after{font-size:1.6rem;width:2rem;height:2rem}}.service-intro{padding-left:3.8rem;font-size:1.6rem}@media(max-width: 767px){.service-intro{padding-left:2rem}}
.check--list{margin-bottom:4rem}.check--list-item{font-size:3rem;font-weight:500;position:relative;padding-left:4.5rem;margin-bottom:1rem}@media(max-width: 767px){.check--list-item{font-size:1.6rem;padding-left:3rem}}.check--list-item::after{position:absolute;content:"";background-repeat:no-repeat;background-size:cover;top:50%;left:0;transform:translateY(-50%);background:url(../img/common/icon-circle-check.svg);width:42px;height:42px}@media(max-width: 767px){.check--list-item::after{width:24px;height:24px;background-size:cover;top:12px}}.plan-about--text{text-align:center;font-size:3.2rem;font-weight:600;color:var(--deepColor)}@media(max-width: 767px){.plan-about--text{font-size:1.6rem}}.plan-desc{padding:6rem 0}.plan-desc--table{text-align:center;font-weight:600;border:none;filter:drop-shadow(3px 3px 6px rgba(0, 0, 0, 0.5));margin-bottom:2rem}.plan-desc--table-th{padding:3rem 2rem;font-size:1.8rem;background:hsla(0,0%,100%,.99)}.plan-desc--table__l-text{font-size:2.5rem;font-weight:600}@media(max-width: 767px){.plan-desc--table__l-text{font-size:2rem}}.plan-desc--table__border-none{border:none;background:none}.plan-desc--table__gray{background:#fafafa;border-radius:var(--r-m) 0 0 0;display:block;width:100%}.plan-desc--table__blue{background:var(--deepColor);color:hsla(0,0%,100%,.99)}.plan-desc--table__yellow{background:var(--accent2);border-radius:0 var(--r-m) 0 0}.plan-desc--table__sp{border-radius:var(--r-m) var(--r-m) 0 0}.plan-desc--table-th__l{border:1px solid #333}.plan-desc--table-td{border:1px solid #333;background:hsla(0,0%,100%,.99);padding:3rem 2rem}.plan-desc--l-text{font-size:2.4rem;font-weight:600}.plan-option--content{padding:9rem;border-radius:var(--r-l);border:3px solid var(--deepColor);background:hsla(0,0%,100%,.99)}@media(max-width: 767px){.plan-option--content{padding:3rem}}.plan-option--menu-item{margin-bottom:4rem}.plan-option--price{font-size:2rem;font-weight:500;border-bottom:1px dotted #333;padding-bottom:2rem;margin-bottom:2rem}@media(max-width: 767px){.plan-option--price{font-size:1.6rem}}.plan-option--list{padding-left:0}.plan-option--list-item{font-size:1.9rem;margin-left:0;font-weight:600;margin-bottom:1rem}@media(max-width: 767px){.plan-option--list-item{font-size:1.6rem}}.plan-option--list-item::after{font-size:1.9rem}@media(max-width: 767px){.plan-option--list-item::after{font-size:1.6rem}}.plan-option--text{font-size:1.9rem;font-weight:600;margin-bottom:1rem}@media(max-width: 767px){.plan-option--text{font-size:1.6rem}}.plan-option--menu-item-link{font-size:1.9rem;padding-left:3rem}@media(max-width: 767px){.plan-option--menu-item-link{font-size:1.6rem}}.plan-option--menu-item-link::after{left:0;width:2rem;height:2rem;top:50%;transform:translateY(-50%)}.plan-desc--border{background:hsla(0,0%,100%,.99);border-radius:var(--r-l);box-shadow:var(--shadow-btn);padding:0 17rem;margin-bottom:4rem}@media(max-width: 767px){.plan-desc--border{padding:0;box-shadow:none;border-radius:0;background:none}}.plan-desc--list-item{border-bottom:1px dotted #333;padding-top:3rem}@media(max-width: 767px){.plan-desc--list-item{border:none;box-shadow:var(--shadow-btn);padding:3rem;margin-bottom:3rem}}.plan-desc--list-item:last-child{border:none}.plan-desc--text{text-align:center;font-size:2.3rem;font-weight:600}@media(max-width: 767px){.plan-desc--text{font-size:1.6rem}}.plan-qa{padding:6rem 0}.qa-tit-wrap{display:flex;align-items:center;font-size:2rem}@media(max-width: 767px){.qa-tit-wrap{width:85%}}.qa-tit{color:var(--deepColor);padding-right:1rem}@media(max-width: 767px){.qa-tit{font-size:1.6rem;width:15%}}.cp_qa01{margin-bottom:25px;border-radius:var(--r-m);border:1px solid var(--deepColor);padding:1em 2em 1em 3em;font-size:2rem}@media(max-width: 767px){.cp_qa01{padding:1rem 2rem}}.cp_qa01 .cp_actab input{display:none}.cp_qa01 .cp_actab{position:relative;overflow:hidden;width:100%;margin-bottom:1px;color:#1b2538}.cp_qa01 .cp_actab label{font-weight:bold;position:relative;display:flex;align-items:center;margin:0 0 0 0;padding:1em 2em 1em 1em;cursor:pointer}.cp_qa01 .cp_actab .cp_actab-content p{margin:1em;border-top:1px solid var(--deepColor);padding-top:2rem}.cp_qa01 .cp_actab .cp_actab-content{max-height:40em;color:#333;transition:max-height .5s ease}.cp_qa01 .cp_actab input:checked~.cp_actab-content{max-height:0;overflow:hidden}.cp_qa01 .cp_actab label::after{transform:translateY(-25%) rotate(225deg);width:10px;height:10px;margin-left:10px;border-bottom:2px solid var(--deepColor);border-right:2px solid var(--deepColor);content:"";transition:transform .5s;right:30px;position:absolute}.cp_qa01 .cp_actab input[type=checkbox]:checked+label::after{transform:rotate(45deg)}.plan-flow--list{padding:10rem 8rem;border-radius:var(--r-m);border:3px solid var(--deepColor);background:hsla(0,0%,100%,.99)}@media(max-width: 767px){.plan-flow--list{padding:3rem}}.plan-flow--list-item{margin-bottom:6rem}@media(max-width: 767px){.plan-flow--list-item{margin-bottom:3rem}}.plan-flow--tit{font-size:3rem;color:var(--deepColor);border-bottom:1px dotted #333;padding-bottom:2rem;margin-bottom:2rem;font-weight:600}@media(max-width: 767px){.plan-flow--tit{font-size:1.6rem}}.plan-flow--text{font-size:2.5rem;font-weight:600}@media(max-width: 767px){.plan-flow--text{font-size:1.6rem}}.plan-info{padding:12rem 0 16rem}@media(max-width: 767px){.plan-info{padding-bottom:12rem}}.plan-info--text{font-size:2.8rem;text-align:center;font-weight:600;line-height:1.7}@media(max-width: 767px){.plan-info--text{font-size:1.6rem}}
.case-scene{padding:3rem 9rem 9rem 9rem;border-radius:var(--r-pill);border:3px solid var(--deepColor);margin-bottom:12rem;box-shadow:var(--shadow-btn)}@media(max-width: 767px){.case-scene{padding:3rem;border-radius:var(--r-l);margin-bottom:5rem}}@media(max-width: 767px){.case-content--row{display:block}}.case-scene--tit{font-size:4.3rem;font-family:"Poppins",sans-serif;font-style:italic;font-weight:500;position:relative;margin-bottom:2rem}@media(max-width: 767px){.case-scene--tit{font-size:1.6rem;margin-left:2rem}}.case-scene--tit::before{position:absolute;content:"";width:6px;height:40px;background:var(--deepColor);left:-20px;top:50%;transform:translateY(-50%)}@media(max-width: 767px){.case-scene--tit::before{height:100%}}@media(max-width: 767px){.case-scene--tit-en{display:block}}.case-scene--tit-border{font-weight:600}@media(max-width: 767px){.case-scene--tit-border{margin-left:0}}@media(min-width: 768px){.case-scene--tit-border{margin-left:2rem}}.case-scene-content{width:68%}@media(max-width: 767px){.case-scene-content{width:100%}}.case-scene-content--tit{text-align:center;font-size:2.4rem;display:block;margin-bottom:2rem;line-height:1.7}@media(max-width: 767px){.case-scene-content--tit{font-size:1.6rem}}.case-scene--list-tit{font-size:2.5rem;font-weight:600;position:relative;padding:0 0 0 4rem;margin-bottom:2.5rem}.case-scene--list-tit::after{position:absolute;content:"";top:50%;transform:translateY(-50%);background-repeat:no-repeat;background-size:cover;left:0}@media(max-width: 767px){.case-scene--list-tit{font-size:1.6rem;padding-left:3rem}}.case-scene--list-tit__merit::after{background:url(../img/common/icon-merit.svg);width:33px;height:33px}@media(max-width: 767px){.case-scene--list-tit__merit::after{width:24px;height:24px;background-size:cover}}.case-scene--list-tit__sample::after{background:url(../img/common/icon-link.svg);width:33px;height:38px}@media(max-width: 767px){.case-scene--list-tit__sample::after{width:24px;height:24px;background-size:cover}}.case-scene--list-tit__voice::after{background:url(../img/common/icon-voice.svg);width:33px;height:33px}@media(max-width: 767px){.case-scene--list-tit__voice::after{width:24px;height:24px;background-size:cover}}.case-scene--list-tit__docu::after{background:url(../img/common/icon-document.svg);width:33px;height:33px}@media(max-width: 767px){.case-scene--list-tit__docu::after{width:24px;height:24px;background-size:cover}}.case-scene--text{font-size:1.8rem;line-height:1.8;font-weight:500;margin-bottom:2rem}@media(max-width: 767px){.case-scene--text{font-size:1.6rem}}.case-scene--text-bg{font-size:1.8rem;line-height:1.8;font-weight:500;margin-bottom:2rem;padding:2rem;background:#fafafa}@media(max-width: 767px){.case-scene--text-bg{font-size:1.6rem}}.arrow--list{margin-bottom:3rem}.arrow--list-item{color:var(--deepColor);font-size:1.8rem;line-height:1.8;position:relative;margin-bottom:1rem;padding-left:3rem;font-weight:500}@media(max-width: 767px){.arrow--list-item{font-size:1.6rem}}.arrow--list-item::before{position:absolute;background:url(../img/common/icon-link-crcle.svg);content:"";left:0;top:50%;transform:translateY(-50%);background-size:cover;width:20px;height:20px}.arrow--list-item a{color:var(--deepColor)}.case-img-wrap{width:32%}@media(max-width: 767px){.case-img-wrap{width:100%;margin-top:4rem}}@media(min-width: 768px){.case-img-wrap{padding-right:6rem;margin-top:7rem}}.case-other{background:var(--backColor)}.case-other--list-item{margin-bottom:4rem}@media(max-width: 767px){.case-other--list-item{margin-bottom:2rem}}.case-other--check{font-size:2.5rem;color:var(--deepColor);font-weight:600;position:relative;padding-left:3.8rem;margin-bottom:.5rem}@media(max-width: 767px){.case-other--check{font-size:1.6rem;padding-left:2rem;margin-bottom:2rem}}.case-other--check::after{position:absolute;content:"";background:url(../img/common/icon-check.svg);background-size:cover;left:0;top:0;width:3.3rem;height:3.3rem}@media(max-width: 767px){.case-other--check::after{font-size:1.6rem;width:2rem;height:2rem}}.case-other--text{font-size:20px;font-weight:500}@media(max-width: 767px){.case-other--text{font-size:1.6rem}}
.format-desc--text{font-size:21px;font-weight:600;text-align:center;background:hsla(0,0%,100%,.99);padding:6rem}@media(max-width: 767px){.format-desc--text{font-size:1.6rem;padding:2rem}}.format-step--list-item{margin-top:15rem}@media(max-width: 767px){.format-step--list-item{margin-top:4rem}}.format-step--col-40{width:37%;padding-left:2rem;padding-right:2rem}.format-step--col-20{width:26%;padding-left:2rem;padding-right:2rem}.format-step--item{box-shadow:var(--shadow-btn);padding:3rem 2rem;margin-bottom:3rem;background:hsla(0,0%,100%,.99)}.format-step--item-tit{text-align:center}.format-step--tit{border-bottom:7px solid var(--deepColor);margin-bottom:6rem}@media(max-width: 767px){.format-step--tit{padding-bottom:1rem;border-bottom:2px solid var(--deepColor);margin-bottom:3rem}}.format-step--tit__en{-webkit-text-stroke:3px var(--deepColor);text-stroke:3px var(--deepColor);color:hsla(0,0%,100%,.99);font-size:6.9rem;font-family:"Poppins",sans-serif;font-weight:800;font-style:italic;display:inline-block;line-height:2}@media(max-width: 767px){.format-step--tit__en{font-size:1.8rem;-webkit-text-stroke:1px var(--deepColor);text-stroke:1px var(--deepColor);display:block}}.format-step--tit__blue{background:var(--deepColor);color:hsla(0,0%,100%,.99);font-size:3.6rem;font-weight:600;padding:.5rem 1.5rem;margin-left:2rem}@media(max-width: 767px){.format-step--tit__blue{font-size:1.8rem;padding:.2rem .8rem;margin-left:0}}.format-step--text{text-align:center;font-size:1.6rem;font-weight:500}@media(max-width: 767px){.format-step--item-img{margin-bottom:3rem}}.format-l-tit{background:var(--deepColor);color:hsla(0,0%,100%,.99);text-align:center;font-size:4rem;font-weight:600;padding:3.5rem 0;position:relative;margin-bottom:10rem}@media(max-width: 767px){.format-l-tit{font-size:2rem}}.format-l-tit::after{width:0;height:0;border-style:solid;border-right:102px solid rgba(0,0,0,0);border-left:102px solid rgba(0,0,0,0);border-top:60px solid var(--deepColor);border-bottom:0;position:absolute;content:"";left:50%;bottom:-5rem;transform:translateX(-50%)}@media(max-width: 767px){.format-l-tit::after{border-right:50px solid rgba(0,0,0,0);border-left:50px solid rgba(0,0,0,0);border-top:30px solid var(--deepColor);bottom:-3rem}}.format-emphasis--content{background:url(../img/format/format-bg.webp);background-size:cover;background-position:center center;padding:17rem 0;margin-bottom:17rem}@media(max-width: 767px){.format-emphasis--content{padding:2rem;margin-bottom:6rem}}.format-emphasis--text{text-align:center;font-size:2.5rem;font-size:600;margin-bottom:2rem;font-weight:600;line-height:1.7}@media(max-width: 767px){.format-emphasis--text{font-size:1.6rem}}.format-emphasis--s-text{text-align:center;font-size:2rem;font-size:600;margin-bottom:2rem;font-weight:600;margin-bottom:17rem}@media(max-width: 767px){.format-emphasis--s-text{font-size:1.6rem}}@media(max-width: 767px){.format-step .row{flex-direction:column;flex-wrap:nowrap}.format-step .row>.format-step--col-40{display:contents}.format-step .row>.format-step--col-20{width:100%;padding-left:0;padding-right:0;margin-bottom:3rem;order:-1}.format-step .row>ul.format-step--col-40:nth-of-type(1)>.format-step--item:nth-child(1){order:1}.format-step .row>ul.format-step--col-40:nth-of-type(2)>.format-step--item:nth-child(1){order:2}.format-step .row>ul.format-step--col-40:nth-of-type(1)>.format-step--item:nth-child(2){order:3}.format-step .row>ul.format-step--col-40:nth-of-type(2)>.format-step--item:nth-child(2){order:4}}
.ast-separate-container{background:hsla(0,0%,100%,.99)}.knowledge-article{margin-bottom:8rem}.knowledge-article--list-item{box-shadow:var(--shadow-btn);margin-bottom:5rem}@media(max-width: 767px){.knowledge-article--list-item{width:90%;margin:0 auto 4rem}}.knowledge-article--img img{height:27rem;object-fit:cover;width:100%;object-position:100% 0}@media(max-width: 767px){.knowledge-article--img img{height:auto}}.knowledge-article--bg{background:hsla(0,0%,100%,.99);padding-bottom:3rem;padding-top:3rem}@media(max-width: 767px){.knowledge-article--bg{padding:2rem}}.knowledge-article--tit{font-size:2.1rem;text-align:center;padding:3rem;padding:0 3rem 3rem}@media(max-width: 767px){.knowledge-article--tit{font-size:1.8rem;padding:0 2rem 2rem}}.knowledge-single-content{margin:6.5rem 0}.knowledge-single-tit{font-size:3.6rem;font-weight:600;margin-bottom:3rem}.knowledge-single-subtit{font-size:2.4rem;font-weight:600;margin-bottom:2.4rem}.knowledge-single-article--img{margin-bottom:4rem}.knowledge-single-text{font-size:1.8rem;margin-bottom:1rem}.knowledge-single--body{margin-top:4rem;font-size:1.8rem}.knowledge-single--body h2{font-weight:400}@media(max-width: 767px){.knowledge-single--body{margin-bottom:4rem}}.knowledge-single-form--content{background-color:#f9f9f9;border:1px solid #e6e6e6;padding:30px 32px 40px;height:100%}.knowledge-single--form-text{font-size:1.8rem}.submit input{width:100%;font-size:2rem}


/* ===== theme: case-study.css ===== */
@charset "UTF-8";
/*---------------------------------------------------------------
 * お客様の声（CPT: case_study）専用スタイル
 * 一覧 archive-case_study.php / 詳細 single-case_study.php
 *
 * ⚠ このファイルは assets/scss/ に対応する SCSS を持たない。
 *    直接この .css を編集すること。
 * ⚠ base.css で html{font-size:62.5%} なので 1rem = 10px。
 * ⚠ base.css は li{list-style:none} を全体に当てている。
 *    箇条書きを出す箇所は list-style を明示的に戻す。
 *
 * 【記事本文まわりの寸法について】
 * 納品済みの静的事例ページ（/case/casefactory/draft/ に保管）と
 * 同じ見た目になるよう、原本の CSS をそのまま移植している。
 * 原本は html{font-size:17px} を基準に rem で書かれているので、
 * 「原本の値 × 17px ÷ 10px」でこちらの rem に換算してある。
 *   例) 原本 .callout .label{font-size:1.2rem} = 20.4px → ここでは 2.04rem
 * ⚠ 原本の SP ブレークポイントは 600px。テーマ標準は 767px だが、
 *    記事本文だけは原本に合わせて 600px を使う（見た目を一致させるため）。
 * ⚠ 記事内の青は原本の var(--deepColor)。サイト共通の var(--deepColor) とは別。
 *    ここを揃えたくなったら .cs-* の var(--deepColor) をまとめて置換する。
 *-------------------------------------------------------------*/

/* 見出し帯。/use-case と同じ背景画像を流用している（専用画像を用意したらここだけ差し替える） */
.h2-wrap--case-study-bg {
  background: url(../img/case/h2-bg-case.webp);
  background-size: cover;
  background-repeat: no-repeat;
}

/*--------------------------------------------------------------
# 一覧 /case-study/
#   ⚠ 一覧はサイトの 1 ページなので配色はテーマ共通の var(--deepColor)。
#      記事本文（下の「詳細」セクション）だけ原本の var(--deepColor) を使う。
--------------------------------------------------------------*/
.case-study-list-section {
  margin-bottom: 10rem;
}

@media (max-width: 767px) {
  .case-study-list-section {
    margin-bottom: 5rem;
  }
}

.case-study-list > li {
  margin-bottom: 5rem;
}

.case-study-card {
  display: block;
  height: 100%;
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: var(--r-m);
  overflow: hidden;
  color: #333;
  transition: 0.2s;
}

.case-study-card:hover {
  opacity: 1;
  box-shadow: var(--shadow-btn);
  transform: translateY(-3px);
}

.case-study-card--img {
  margin: 0;
  background: #f6f6f6;
}

.case-study-card--img img {
  display: block;
  width: 100%;
  height: auto;
}

.case-study-card--body {
  padding: 2.4rem 2.4rem 3rem;
}

.case-study-card--client {
  font-size: 1.4rem;
  font-weight: 600;
  color: var(--deepColor);
  margin-bottom: 1rem;
}

.case-study-card--tit {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.6;
  margin-bottom: 1.4rem;
}

@media (max-width: 767px) {
  .case-study-card--tit {
    font-size: 1.7rem;
  }
}

.case-study-card--lead {
  font-size: 1.5rem;
  line-height: 1.9;
  margin-bottom: 2rem;
}

.case-study-card--more {
  display: inline-block;
  font-size: 1.5rem;
  font-weight: 600;
  color: var(--deepColor);
}

.case-study-empty {
  font-size: 1.6rem;
  text-align: center;
  padding: 6rem 0;
}

/* ページネーション */
.case-study-pagination {
  margin: 2rem 0 0;
  text-align: center;
}

.case-study-pagination .nav-links {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  justify-content: center;
}

.case-study-pagination .page-numbers {
  display: block;
  min-width: 4rem;
  padding: 0.8rem 1.2rem;
  border: 1px solid var(--deepColor);
  border-radius: var(--r-s);
  font-size: 1.5rem;
  color: var(--deepColor);
}

.case-study-pagination .page-numbers.current {
  background: var(--deepColor);
  color: #fff;
}

/*--------------------------------------------------------------
# 詳細 /case-study/{slug}/
#   ここから下は原本（静的事例ページ）の寸法をそのまま移植している。
--------------------------------------------------------------*/
/*
 * ⚠ style.css の `body.single{background:var(--lightColor)}` はブログ記事のための指定だが、
 *    WordPress は CPT の詳細ページにも body へ `single` を付けるため、事例ページまで
 *    薄い青灰色になっていた。原本は白地なので、この投稿タイプだけ白に戻す。
 *    style.css 側を `body.single-post` に直せばこの打ち消しは不要になる。
 */
body.single-case_study {
  background: #fff;
}

/* 原本 .container{max-width:900px; padding:1.41rem 0.94rem; font-size:1rem} + body{line-height:1.8} */
.cs-article {
  width: 100%;
  /* 原本は content-box で内容幅 900px。こちらは border-box なので padding 分を足す */
  max-width: 93.2rem;
  margin: 0 auto;
  padding: 2.4rem 1.6rem 8rem;
  font-size: 1.7rem;
  line-height: 1.8;
  color: #333;
}

@media (max-width: 600px) {
  .cs-article {
    padding: 1.68rem 4vw 4rem;
    font-size: 1.6rem;
  }
}

/* 原本 .publisher-group{font-size:0.85rem; color:#808080} */
.cs-meta {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 0.4rem 1.6rem;
  color: #808080;
  font-size: 1.45rem;
  margin-bottom: 2.4rem;
}

@media (max-width: 600px) {
  .cs-meta {
    font-size: 1.41rem;
  }
}

/*
 * 記事タイトル。
 * ⚠ 原本はアイキャッチ画像そのものに見出しが描かれており、画像の外に
 *    文字の見出しは出していない。ここで h1 を見せると同じ文言が
 *    画像と文字で二重に出るため、読み上げ・検索エンジン向けに残したまま
 *    視覚的にだけ隠す。見出しの入っていないアイキャッチを使う事例を
 *    作るときは、この隠しを外すこと。
 */
.cs-title {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

/* 原本 .hero-img{width:100%; margin-bottom:1.41rem} */
.cs-hero {
  margin: 0 0 2.4rem;
}

.cs-hero--img {
  display: block;
  width: 100%;
  height: auto;
}

/* 原本の導入文は素の <p>。下マージンは持たず、次の .summary-grid 側で空ける */
.cs-intro {
  margin: 0;
}

/*--------------------------------------------------------------
# 導入前の課題／導入理由（解決策）／導入効果
#   ⚠ 原本の .summary-grid は grid-template-columns を持たない ＝ 1 カラム。
#      3 カラムに並べると原本と見た目が変わるので横に並べないこと。
--------------------------------------------------------------*/
.cs-summary {
  display: grid;
  gap: 3.4rem;
  margin: 3.2rem 0;
}

.cs-callout {
  display: flex;
  flex-direction: column;
  border-radius: var(--r-m);
  background: #f6f6f6;
}

.cs-callout--label {
  color: #fff;
  background: var(--deepColor);
  font-size: 2.04rem;
  padding: 1.19rem;
  text-align: center;
  border-radius: var(--r-m) var(--r-m) 0 0;
}

.cs-callout--body {
  font-size: 1.7rem;
  line-height: 2;
  /* 原本は div.content(padding-left 42.5px) の中の ul(padding-left 19.89px)。合算値を持たせる */
  padding: 1.7rem 1.7rem 3.4rem 6.24rem;
  margin: 0;
}

.cs-callout--body li {
  list-style: disc;
}

@media (max-width: 600px) {
  .cs-callout--label {
    font-size: 1.6rem;
  }
  .cs-callout--body {
    font-size: 1.6rem;
    padding: 1.6rem 1.6rem 1.6rem 4.27rem;
  }
}

/*--------------------------------------------------------------
# 取材先プロフィール（原本 .interviewee-wrapper）
--------------------------------------------------------------*/
.cs-interviewee {
  border: 1px solid #e0e0e0;
  border-radius: var(--r-m);
  padding: 2.55rem;
  margin: 3.2rem 0;
  font-size: 1.7rem;
}

.cs-interviewee--head {
  display: flex;
  gap: 1.99rem;
  align-items: center;
}

.cs-interviewee--logo {
  /* ⚠ 原本はページごとに width を直接指定していた（横長ロゴ 119.85px / 正方形ロゴ 85px）。
     ここは 1 つの CSS で両方に合わせるため、幅と高さの上限で抑える。 */
  width: auto;
  height: auto;
  max-width: 11.99rem;
  max-height: 8.5rem;
  border-radius: var(--r-s);
  flex-shrink: 0;
}

.cs-interviewee--name {
  font-size: 1.99rem;
  font-weight: bold;
  margin: 0 0 0.4rem;
}

.cs-interviewee--profile {
  font-size: 1.7rem;
  line-height: 1.8;
  margin: 0.4rem 0 1.19rem;
  text-align: left;
}

@media (max-width: 600px) {
  .cs-interviewee {
    font-size: 1.6rem;
  }
  .cs-interviewee--head {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  .cs-interviewee--logo {
    margin-bottom: 1.19rem;
  }
  .cs-interviewee--profile {
    font-size: 1.6rem;
  }
}

/* 会社概要（原本 .company-info） */
.cs-company {
  padding: 1.6rem 0;
  overflow-x: auto;
}

.cs-company table {
  width: 100%;
  border-collapse: collapse;
  font-size: 1.7rem;
}

.cs-company th {
  width: 11.99rem;
  text-align: left;
  padding: 0.6rem 1.7rem;
  background: #f6f6f6;
}

.cs-company td {
  padding: 0.6rem 0.8rem;
  word-break: break-word;
}

.cs-company a {
  color: #333;
  text-decoration: underline;
}

@media (max-width: 600px) {
  .cs-company {
    padding-left: 0;
    padding-right: 0;
  }
  .cs-company th {
    width: 6.4rem;
    min-width: 5.6rem;
    padding-left: 0.96rem;
    padding-right: 0.48rem;
    font-size: 1.47rem;
  }
  .cs-company td {
    font-size: 1.52rem;
    padding-left: 0.96rem;
    padding-right: 0.48rem;
    word-break: break-all;
  }
}

/*--------------------------------------------------------------
# 写真とキャプション（原本 .customer-photo / .caption）
--------------------------------------------------------------*/
.cs-photo {
  margin: 0;
  text-align: center;
}

.cs-photo--img,
.cs-body figure img {
  display: block;
  max-width: 54rem;
  width: 100%;
  height: auto;
  object-fit: cover;
  margin: 0 auto 1.28rem;
  border-radius: var(--r-s);
  box-shadow: var(--shadow-btn);
}

.cs-caption,
.cs-body figcaption {
  display: block;
  margin-top: 0.43rem;
  font-size: 1.49rem;
  color: #888;
  text-align: center;
  line-height: 1.5;
}

@media (max-width: 600px) {
  .cs-photo--img,
  .cs-body figure img {
    width: 100%;
  }
}

/*--------------------------------------------------------------
# 本文（原本 .section 相当。ブロックエディタで書く部分）
#   原本は各見出しを <section class="section"> で包み、
#     .section  { margin: 2.35rem 0 4rem; line-height: 1.75 }
#     .section h2 { margin: 0 0 2rem }
#     .section p  { margin-bottom: 2.5rem }
#   としている。こちらは section で包まないので、見出しの上マージンで
#   同じ間隔（セクション間 68px）を作る。
--------------------------------------------------------------*/
.cs-body {
  font-size: 1.7rem;
  line-height: 1.75;
}

@media (max-width: 600px) {
  .cs-body {
    font-size: 1.6rem;
  }
}

.cs-body h2 {
  font-size: 2.55rem;
  font-weight: bold;
  line-height: 1.4;
  color: var(--deepColor);
  border-left: 0.35rem solid var(--deepColor);
  padding-left: 1.19rem;
  margin: 6.8rem 0 3.4rem;
}

/* 本文の先頭だけは原本の .section の上マージン（2.35rem = 40px）に合わせる */
.cs-body > h2:first-child {
  margin-top: 4rem;
}

@media (max-width: 600px) {
  .cs-body h2 {
    font-size: 1.92rem;
  }
}

.cs-body h3 {
  font-size: 2rem;
  font-weight: bold;
  margin: 3.5rem 0 1.6rem;
}

.cs-body p {
  line-height: 1.75;
  margin-bottom: 4.25rem;
}

/* エディタ由来の空 <p> は余白が二重になるので潰す */
.cs-body p:empty {
  display: none;
}

.cs-body ul,
.cs-body ol {
  margin: 0 0 4.25rem 2rem;
}

.cs-body ul li {
  list-style: disc;
}

.cs-body ol li {
  list-style: decimal;
}

.cs-body img {
  height: auto;
}

.cs-body figure {
  margin: 0 0 4rem;
  text-align: center;
}

.cs-body a {
  color: var(--deepColor);
  text-decoration: underline;
}

/* 本文中のマーカー（原本 .mark はベタ塗り。下線グラデにしない） */
.cs-body .mark {
  background: var(--accentSoft);
  font-weight: bold;
  border-radius: 0.15em;
  padding: 0.08em 0.18em;
}

/*--------------------------------------------------------------
# 記事下（原本 footer 相当 ＋ WP 側で足した一覧への導線）
--------------------------------------------------------------*/
.cs-credit {
  margin-top: 4.79rem;
  text-align: right;
  font-size: 1.19rem;
  color: #333;
}

/* 原本のクレジットはリンク。base.css が a の下線を消しているので戻す（原本は黒＋下線） */
.cs-credit a {
  color: #000;
  text-decoration: underline;
}

@media (max-width: 600px) {
  .cs-credit {
    margin-top: 4.512rem;
    font-size: 1.12rem;
  }
}

.cs-back {
  text-align: center;
  margin-top: 4rem;
}

.cs-back a {
  display: inline-block;
  padding: 1.6rem 4rem;
  border: 2px solid var(--deepColor);
  border-radius: var(--r-pill);
  font-size: 1.6rem;
  font-weight: 600;
  color: var(--deepColor);
}


/* ===== theme: fx-cta.css ===== */
/* 記事内 CTA [fx_cta]
 *
 * ⚠ 囲みは「罫線なしの背景トーン」で表現する。
 *    左アクセントバー（border-left）・全周罫線・角丸ボックスは使わない（社内 UI 規約）。
 */

.fx-cta {
	background: var(--lightColor);
	padding: 1.6rem 1.8rem;
	margin: 2.4rem 0;
}

.fx-cta__body {
	margin-bottom: 1.2rem;
}

.fx-cta__body p {
	margin: 0 0 0.8em;
	line-height: 1.9;
}

.fx-cta__body p:last-child {
	margin-bottom: 0;
}

.fx-cta__action {
	margin: 0;
}

.fx-cta__action a {
	display: inline-block;
	/* ⚠ 主導線の色はサイト全体で橙に揃える（フローティングバー・記事下ボタンと同じ var(--accentColor)）。
	   2026-08-12 まで青で、サイトに 2 つ目の主色を持ち込んでいた */
	background: var(--accentColor);
	color: #fff;
	text-decoration: none;
	padding: 0.9em 1.8em;
	font-weight: 700;
	line-height: 1.4;
}

.fx-cta__action a::after {
	content: "→";
	margin-left: 0.6em;
}

.fx-cta__action a:hover,
.fx-cta__action a:focus {
	background: var(--accentHover);
	color: #fff;
}

/* 資料ダウンロードは主導線と色を分け、問い合わせより一段弱く見せる */
.fx-cta--knowledge {
	background: #f5f4f0;
}

.fx-cta--knowledge .fx-cta__action a {
	background: #3d4a55;
}

.fx-cta--knowledge .fx-cta__action a:hover,
.fx-cta--knowledge .fx-cta__action a:focus {
	background: #2c363e;
}

@media screen and (max-width: 767px) {
	.fx-cta {
		padding: 1.4rem 1.2rem;
	}

	.fx-cta__action a {
		display: block;
		text-align: center;
	}
}


/* ===== 12jingi の上書き（手で直すのはここだけ） ===== */
:root {
  /* 色・角丸・影・書体の変数は base.php が SiteTheme から :root に出す（tones.json＋会員の 4 つの設定）。ここは変数を定義しない */
  --osusumeColor: #ecc6c56b;
}
html { font-size: 62.5%; scroll-behavior: smooth; }
body { font-family: var(--font-body); font-weight: var(--font-weight-body, 400); font-size: 16px; color: #1a1a1a; line-height: 1.8; }
h1, h2, h3, .catchcopy, .h2-tit, .page-tit, .under-border { font-weight: var(--font-weight-heading, 700); }
a { color: var(--deepColor); }
img { max-width: 100%; height: auto; }
.visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* ヘッダー（ロゴは文字） */
.header { background: #fff; position: relative; z-index: 20; }
.header-logo { margin: 0; }
.header-logo a { display: block; font-size: 2.6rem; font-weight: 900; color: var(--deepColor); line-height: 1.2; text-decoration: none; }
.header-logo a small { display: block; font-size: 1.2rem; font-weight: 500; letter-spacing: .04em; }
.nav { list-style: none; margin: 0; padding: 0; }
.nav--item { position: relative; }
.nav--item > a { display: block; padding: 3rem 0; color: #333; text-decoration: none; }
.nav--item:last-child { padding-left: 3.4rem; }
.nav--item > a.nav--item__contact { padding: 3rem 1.7rem; color: #fff; background: var(--deepColor); }
.nav--item__arrow::after { content: ""; position: absolute; left: 50%; bottom: 1.6rem; width: 8px; height: 8px; border-right: 2px solid var(--deepColor); border-bottom: 2px solid var(--deepColor); transform: translateX(-50%) rotate(45deg); }
.nav--item__arrow:hover .dropdown__lists, .nav--item__arrow:focus-within .dropdown__lists { display: block; }
.dropdown__lists { list-style: none; background-color: var(--deepColor); }
.dropdown__list { position: relative; padding: .8rem 2.4rem .8rem 0; }
.toggle { background: none; border: 0; padding: 0; }
.nav--sp.is-open, .nav--sp--bg.is-open { display: block; }
.nav--sp-menu { list-style: none; margin: 0; padding: 0; }
.nav--sp-menu-item { font-size: 1.8rem; font-weight: 600; color: #333; text-decoration: none; }
.nav--sp .accordion--content { display: block; margin: .4rem 0 0 1.6rem; }
.nav--sp .accordion--content a { font-size: 1.5rem; color: #333; }
.toggle--close.is-open { display: block; }

/* ファーストビュー */
.fv .fvWrap { padding: 0 20px; }
.fv .textList { justify-content: flex-start; }
.fv .textList .tag { width: auto; min-width: 60%; text-align: left; padding: 6px 16px; }
.fv .textList .tag .item { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: #fff; margin-right: 8px; vertical-align: middle; }
.fv .textList .tag .highlight { color: var(--yellowColor); }
.fv--noimg .fvWrap .floatLeft { width: 100%; float: none; text-align: center; padding: 60px 0; }
.fv--noimg .fvWrap .textList { justify-content: center; }
@media screen and (min-width: 769px) { .fvWrap { height: auto; min-height: min(52vw, 522px); padding-bottom: 40px; } .fvWrap .imageBox { top: auto; transform: none; margin-top: 50px; } }
.fvWrap .imageBox img { object-fit: cover; }
.fvWrap .catchcopy span.underline { background: linear-gradient(transparent 60%, var(--yellowColor) 30%); }
.fv .c_btn-inline { margin-top: 24px; }
.c_btn .ctaBtn { font-size: clamp(14px, 1.3vw, 20px); }
.c_btn .ctaBtn span { font-size: clamp(20px, 2.1vw, 30px); }

/* 見出し */
h2 span { display: inline-block; }
h2 span:empty { display: none; }
.wrap--light { background: var(--lightColor); }
.wrap--cream { background: var(--backColor); }
.wrap--gray { background: #f6f6f6; }


/* 特徴（solution）: 画像が無い行は文章だけ */
.solution ul li { overflow: hidden; }
.solution ul li .full { width: 100%; padding: 0 10px; }
.solution ul li .pho { object-fit: cover; }

/* チェック表（otherPoint）: FontAwesome の代わりに同梱の svg */
.solution .otherPoint table th .checkIcon, .otherPoint table th .checkIcon { display: inline-block; width: 22px; height: 22px; background: url(../img/common/icon-check.svg) center / contain no-repeat; vertical-align: middle; }
.otherPoint { background: var(--lightColor); border-radius: var(--r-l); padding: 30px 40px; max-width: 700px; margin: 0 auto; }
.otherPoint table { width: 100%; border: none; }
.otherPoint table th { width: 40px; vertical-align: top; padding: 10px 0; }
.otherPoint table td { padding: 10px 0; font-weight: 700; font-size: 17px; line-height: 1.6; }
.otherPoint table td small { display: block; font-weight: 400; font-size: 14px; color: #555; }

/* 理由（reason）の見た目は下の「⑦」に 1 か所でまとめている（2026-10-16 に格子へ変えた時に統合） */

.merit ul li { height: auto; min-height: 0; }
.merit > .wrap_inner > ul { list-style: none; }

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

/* 事例（performance） */
.performance table th:empty { display: none; }
.performance table td h3 { text-align: center; }
.performance .more { text-align: center; margin: 20px auto 0; }
.performance .more a { color: var(--deepColor); font-weight: 700; }

/* 料金 */
.price_f table { width: 100%; }
.price_f table th .osusumeIcon { background: #eb1c24; color: #fff; border-radius: var(--r-l); display: inline-block; padding: 2px 14px; font-size: 14px; }

/* 比較表 */
.price_s .table-scroll { overflow-x: auto; }

/* 流れ */
.flow .stepbar { max-width: 760px; margin: 0 auto; }
.stepbar .stepbarwrap .steptxt .duration { display: block; margin-top: 6px; font-size: 14px; color: #555; }

/* Q&A */
.qa ul { list-style: none; }

/* 問い合わせ */
.ctaForm .content_form #contact-form { background: #fff; border: 0; padding: 0; }
.ctaForm .phone { text-align: center; font-size: 18px; margin: 20px auto 0; }

/* 会社概要・規約の本文 */
.company table th, .company table td { font-size: 16px; }
.prose { max-width: 800px; margin: 0 auto; font-size: 16px; line-height: 1.9; }
.prose h2 { font-size: 24px; text-align: left; margin: 40px 0 16px; padding: 0 0 8px; border-bottom: 2px solid var(--deepColor); }
.prose h3 { font-size: 20px; margin: 28px 0 8px; }
.prose p { margin: 0 0 1em; }
.prose table th, .prose table td { padding: 8px 0; border-bottom: 1px solid #ddd; vertical-align: top; text-align: left; }
.prose table th { width: 30%; }

/* 数字・ロゴ */
.numbers ul { list-style: none; display: flex; flex-wrap: wrap; justify-content: center; gap: 24px; padding: 0; margin: 0 auto; }
.numbers li { background: #fff; border-radius: var(--r-m); min-width: 220px; padding: 28px 24px; text-align: center; box-shadow: var(--shadow-btn); }
.numbers li .label { font-size: 15px; font-weight: 700; color: var(--deepColor); }
.numbers li .value { display: block; font-size: 48px; font-weight: 900; line-height: 1.2; color: #1a1a1a; }
.numbers li .value small { font-size: 18px; margin-left: 2px; }
.numbers li .asOf { font-size: 12px; color: #666; }
.logos ul { list-style: none; display: flex; flex-wrap: wrap; justify-content: center; gap: 24px 40px; padding: 0; margin: 0 auto; align-items: center; }
.logos li { max-width: 180px; }
.logos li img { max-height: 60px; width: auto; filter: grayscale(1); opacity: .8; }

/* 信頼の材料・代表 */
.cf-writers ul { list-style: none; }
.message .signature { text-align: right; font-weight: 700; margin-top: 16px; }
.message .career { list-style: none; padding: 0; margin: 16px 0 0; font-size: 15px; color: #444; }
.message .career li::before { content: "・"; }

/* 下層ページの見出し帯（テーマの h2-wrap。画像は会員の物か、無ければ色） */
.h2-wrap { background: linear-gradient(to right, var(--middleColor), var(--deepColor)); background-size: cover; background-position: center; position: relative; }
.h2-wrap--image { background-image: var(--h2-bg); }
.h2-wrap--image::before { content: ""; position: absolute; inset: 0; background: rgba(0, 0, 0, .35); }
.h2-wrap .h2-tit { position: relative; margin: 0; }
@media (max-width: 1100px) { .h2-tit { padding: 10rem 6rem; } }
.breadcrumb { font-size: 1.4rem; list-style: none; padding-left: 0; margin: 0 auto; }
.breadcrumb li { display: inline; }
.page--head { margin-top: 2rem; }
.page--head .page-text { max-width: 760px; margin: 0 auto; }

/* 下層: 文章と画像の詳細（テーマの service-section） */
.service-section .service-content-wrap.full { width: 100%; }
.service-section + .service-section { margin-top: 2rem; }
.service-section .service-content { font-size: 1.7rem; line-height: 1.9; }
.service-section .service-content p { margin: 0 0 1em; }
.service-section .service-img img { width: 100%; display: block; }
.service-section .service-area .icon-list { list-style: none; padding: 0; }

/* 詳細版の欄（根拠・内訳・例） */
.detail { max-width: 900px; margin: 30px auto 0; }
.detail h3 { font-size: 22px; color: var(--deepColor); border-bottom: 2px solid var(--deepColor); padding-bottom: 6px; margin: 30px 0 14px; }
.detail .evidence p { font-size: 16px; line-height: 1.9; }
.detail .breakdown { list-style: none; padding: 0; counter-reset: bd; }
.detail .breakdown li { position: relative; padding: 10px 0 10px 56px; counter-increment: bd; }
.detail .breakdown li::before { content: counter(bd); position: absolute; left: 0; top: 10px; width: 40px; height: 40px; border-radius: 50%; background: var(--deepColor); color: #fff; font-weight: 700; display: flex; align-items: center; justify-content: center; }
.detail .breakdown h4 { margin: 0 0 4px; font-size: 18px; }
.detail .breakdown p { margin: 0; font-size: 15px; }
.detail .examples { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 16px; }
.detail .examples div { background: var(--lightColor); border-radius: var(--r-m); padding: 20px; }
.detail .examples h4 { margin: 0 0 6px; font-size: 17px; color: var(--deepColor); }
.detail .examples p { margin: 0; font-size: 15px; }

/* 共通の呼びかけ（3 ボタン・テーマの common-cta） */
.common-cta .btn--list { list-style: none; padding: 0; gap: 20px; }
.common-cta .btn--list-item--link { text-decoration: none; }
.common-cta .btn--list-item--link__white { background: #fff; color: var(--deepColor); }
.common-cta .btn--list-item--link__blue { background: var(--deepColor); }

/* トップへ戻る・追従 CTA はテーマの物をそのまま */
.page-top-btn { background-color: var(--deepColor); }

/* 編集画面のプレビュー: 追従 CTA の邪魔を減らす */
.editor-preview .dcta--bar { position: sticky; }

@media screen and (max-width: 768px) {
  .header { flex-wrap: nowrap; }
  .header-logo a { font-size: 2rem; }
  .problem ul li { width: 100%; margin: 10px 0; }
  .reason ul li .floatLeft.full { width: 100%; }
  .h2-tit { padding: 3.6rem 2rem; }
  .breadcrumb { width: 90%; }
  .numbers li { min-width: 45%; padding: 20px 12px; }
  .numbers li .value { font-size: 36px; }
  .otherPoint { padding: 20px; }
  .company table { width: 100%; }
}

/* 成果物の見本（samples）: スライダーの代わりに並べる */
.sliderspace .sampleList { list-style: none; display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; padding: 0; margin: 0 auto; }
.sliderspace .sampleList li { background: #fff; border-radius: var(--r-m); padding: 14px; }
.sliderspace .sampleList li img { width: 100%; border-radius: var(--r-m); }
.sliderspace .sampleList li h3 { font-size: 17px; margin: 10px 0 4px; text-align: center; }
.sliderspace .sampleList li p { font-size: 14px; margin: 0; }
@media screen and (max-width: 768px) { .sliderspace .sampleList { grid-template-columns: 1fr; } }

/* 会社概要（テーマは小さな見出し＝ほかの節と揃える） */
.company h2 { font-size: 34px; }
.company h2 span { font-size: 20px; }
.company table { width: 60%; }
/* メニューのカードの中の表 */
.merit ul li .company table { width: 100%; }
.merit ul li .company table th { width: 30%; white-space: nowrap; text-align: left; }
.merit ul li .company table td { text-align: left; }

/* ===== 下層ページ（テーマの各ページの形） ===== */
.page-section { padding: 6rem 0; }
.page-section.bg-gray, .page-section.bg-yellow, .page-section.bg-blue { padding: 6rem 0; }
.page-section > .container--small > .bg-gray, .page-section > .container--small > .bg-yellow { margin: 0 -2rem; padding: 4rem 2rem; }
.under-border { margin-top: 0; }
.check--list { list-style: none; padding: 0; }
.check--list-note { font-size: 1.4rem; font-weight: 400; color: #666; margin-left: .6rem; }
.check--list-item__no { opacity: .55; }
.plan-about--text { margin-top: 2rem; }
.plan-flow--list { list-style: none; padding: 0; }
.plan-flow--list-item { margin-bottom: 3rem; }
.plan-flow--tit { display: flex; align-items: center; gap: 1.2rem; font-size: 2.2rem; font-weight: 600; margin: 0 0 1rem; }
.plan-flow--tit .num-tit { display: inline-flex; align-items: center; justify-content: center; width: 5rem; height: 5rem; padding: 0; margin: 0; flex-shrink: 0; }
.plan-flow--tit .duration { font-size: 1.4rem; font-weight: 400; color: #666; }
.plan-flow--text { margin: 0 0 0 6.2rem; }
.plan-option--menu { list-style: none; padding: 0; }
.plan-option--price { font-weight: 700; color: var(--deepColor); margin: .4rem 0 0; }
.plan-desc--list { list-style: none; padding: 0; }
.plan-desc--list-item { padding: 3rem 0; border-bottom: 1px solid #ddd; }
.plan-desc--list-item:last-child { border-bottom: 0; }
.plan-desc--table { width: 100%; border-collapse: separate; border-spacing: 0; }
.plan-desc--table small { display: inline-block; font-size: 1.2rem; background: #eb1c24; color: #fff; border-radius: var(--r-l); padding: .1rem 1rem; margin-top: .4rem; }
.plan-desc--text { margin-top: 2rem; font-size: 1.5rem; }
.plan-qa--list { list-style: none; padding: 0; }
.cp_actab { position: relative; margin-bottom: 1.2rem; }
.cp_actab input { position: absolute; opacity: 0; width: 0; height: 0; }
.cp_actab label { display: block; cursor: pointer; background: var(--middleColor); color: #fff; padding: 1.6rem 5rem 1.6rem 2rem; border-radius: var(--r-m); font-weight: 700; position: relative; }
.cp_actab label::after { content: ""; position: absolute; right: 2rem; top: 50%; width: 10px; height: 10px; border-right: 2px solid #fff; border-bottom: 2px solid #fff; transform: translateY(-70%) rotate(45deg); transition: transform .2s; }
.cp_actab input:checked + label::after { transform: translateY(-30%) rotate(-135deg); }
.cp_actab .qa-tit { color: var(--yellowColor); font-weight: 900; margin-right: 1rem; }
.cp_actab-content { display: none; padding: 1.6rem 2rem; background: #fff; }
.cp_actab input:checked ~ .cp_actab-content { display: block; }
.cp_actab-content .qa-tit { color: var(--deepColor); }
.service-area.detail { margin: 3rem auto 0; max-width: 900px; }
.service-area .service-check p { margin: 0; }
.service-area .arrow--list { list-style: none; padding-left: 3.8rem; }
.service-area .arrow--list-item::before { content: "→ "; color: var(--deepColor); }
.case-content .case-scene { margin-bottom: 8rem; }
.case-scene--list { list-style: none; padding: 0; }
.case-study-list { list-style: none; padding: 0; }
.case-study-list-section { padding: 2rem 0 6rem; }
.case-study-card { display: block; color: inherit; text-decoration: none; }
.format-step--list { list-style: none; padding: 0; }
.format-step--col-40 { list-style: none; padding: 0; }
.format-step--list-item { padding: 6rem 0; }
.knowledge-article { padding: 2rem 0 6rem; }
.knowledge-article--list { list-style: none; padding: 0; }
.knowledge-article--list-item { background: #f7f7f7; border-radius: var(--r-m); overflow: hidden; margin-bottom: 3rem; }
.knowledge-article--img img { width: 100%; display: block; }
.knowledge-article--bg { padding: 2.4rem; }
.knowledge-article--tit { font-size: 1.8rem; margin: 0 0 1rem; }
.knowledge-article--text { font-size: 1.4rem; margin: 0 0 1.6rem; }
.download-btn { text-decoration: none; }
.contact-form { padding: 0 0 6rem; }
.contact-form .page-text { margin-bottom: 2rem; }
.contact-form--free { max-width: 60rem; margin: 0 auto 3rem; }
.contact-form--free .check--list-item { font-size: 1.8rem; }
.contact-form--phone { margin-top: 2rem; }
.cs-article { width: 86.4%; max-width: 900px; margin: 0 auto; padding: 4rem 0; }
.cs-company table { width: 100%; }
.cs-company th, .cs-company td { padding: 1rem; border-bottom: 1px solid #ddd; text-align: left; vertical-align: top; }
.cs-company th { width: 28%; font-weight: 600; }
.cs-back { text-align: center; margin-top: 4rem; }
@media screen and (max-width: 768px) {
  .page-section { padding: 3rem 0; }
  /* テーマの .row は両端に負の余白を持つ＝列の padding が無い所でははみ出すので、下層の行では打ち消す */
  .service-section .row, .plan-desc--list-item .row, .case-content--row { margin-left: 0; margin-right: 0; }
  .service-section .container--flex, .cs-article { width: 100%; padding: 0 16px; }
  .service-tit--num { font-size: 5rem; }
  .service-content-wrap { width: 100%; }
  .plan-flow--text { margin-left: 0; }
  .cs-article { width: 90%; }
}

/* ===== 呼びかけボタンの形（tones.json の ctaStyle） ===== */
.ctaBtn, .footer_banner .ctaBtn, .cta-bar-button-area a { border-radius: var(--r-pill); background: var(--ctaButtonColor); box-shadow: var(--shadow-btn); }
.cta--flat-square .ctaBtn, .cta--flat-square .cta-bar-button-area a, .cta--flat-square .btn--list-item--link { border-radius: 0; box-shadow: none; background: var(--accentColor); }
.cta--flat-square .ctaBtn:hover, .cta--flat-square .cta-bar-button-area a:hover { background: var(--accentHover); filter: none; }
.cta--solid-round .ctaBtn, .cta--solid-round .cta-bar-button-area a { background: var(--accentColor); }
/* かっちり: 丸い部品を角に */
.tone--sharp .stepcircle, .tone--sharp .num-tit, .tone--sharp .num-tit__small, .tone--sharp .cs-callout--label { border-radius: 0; }
.tone--sharp .problem h2, .tone--sharp .scene_col, .tone--sharp .otherPoint, .tone--sharp .merit ul li, .tone--sharp .common-cta-content, .tone--sharp .plan-option--content, .tone--sharp .case-scene, .tone--sharp .plan-desc--table__gray, .tone--sharp .plan-desc--table__yellow, .tone--sharp .plan-desc--table__sp, .tone--sharp .dcta--popup .dcta__inner, .tone--sharp .knowledge-article--list-item { border-radius: 0; }
.tone--sharp .arrow { clip-path: polygon(0 0, 100% 0, 50% 100%); }
.tone--sharp .reason ul li, .tone--sharp .performance table, .tone--sharp .cf-writers ul li { box-shadow: none; border: 1px solid #ddd; }
/* 英語の添え字が無い時の見出しの余白 */
h2 > span:first-child:empty { display: none; }

/* ===== 写真が無い欄は「番号＋見出し」の文字組み（アイコンの丸で埋めない） ===== */
.problem ul li .numLabel, .merit ul li .numLabel, .scene_col .numLabel, .plan-desc--list-item .numLabel { font-family: "Poppins", sans-serif; font-weight: 600; font-size: 3.2rem; line-height: 1; color: var(--deepColor); opacity: .35; display: block; margin: 0 auto 8px; }
.problem ul li .numLabel { text-align: center; font-size: 4.8rem; }
.problem ul li { padding-top: 10px; }
.merit ul li { padding-top: 24px; }
.scene_col .numLabel { font-size: 2.4rem; margin: 0 0 12px; }
.plan-desc--list-item .numLabel { text-align: center; font-size: 5.6rem; margin-top: 10px; }
.ctaForm .floatLeft .lead { font-size: 26px; font-weight: 700; line-height: 1.6; color: #fff; margin: 0 0 20px; }
.case-img--empty { background: var(--lightColor); aspect-ratio: 4 / 3; }

/* ⚠ ここから下は site-overrides.css の写し（2026-10-14 に手で足した）。
   このファイルは build_theme_css.py の生成物で、正本は site-overrides.css。
   テーマのソース（web-design/casefactory-theme）が開発の箱に無く再生成できないため、
   効かせるために写した＝直す時は **site-overrides.css を直してからここも同じに直す**。 */
/* ヘッダーの電話番号（ロング LP のヘッダーと同じ・罫線や囲みは付けない） */
.header-tel { margin: 0; text-align: right; line-height: 1.3; }
.header-tel a { font-size: 2rem; font-weight: 700; color: var(--deepColor); text-decoration: none; letter-spacing: .02em; }
.header-tel small { display: block; font-size: 1.1rem; font-weight: 500; color: #666; }
@media screen and (max-width: 768px) { .header-tel { display: none; } }

/* ⚠ ここから下は site-overrides.css の写し（生成物を手で直している・正本は overrides 側）。
   テーマのソースが開発の箱に無く再生成できないため、効かせるために写した。 */

/* カードのアイコン（同梱の 31 個から選ぶ・写真が無い枠に出る。囲み線は付けない＝UI の規約） */
.site-icon-wrap { display: block; width: 88px; height: 88px; margin: 0 auto 12px; color: var(--deepColor); }
.site-icon-wrap svg { width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 1.6; }
.otherPoint .site-icon-wrap { width: 30px; height: 30px; margin: 0; }
.problem .site-icon-wrap, .merit .site-icon-wrap { width: 72px; height: 72px; }
@media screen and (max-width: 768px) { .site-icon-wrap { width: 64px; height: 64px; } }
/* ===== 2026-10-16 林周平さん指示の見直し（崩れ・読みにくさ・不揃いを直す） =====
   ⚠ 直すのはこのファイルだけ（site.css は LP から引き継いだ束＝触らない）。
   公開した本番のページ（site.btobservice.com）を PC 1280・携帯 390 で見て、
   実際に起きていた 8 つを直す。見本は `php scripts/site/render_sample.php <出力先>` で確かめられる。 */

/* ① 本文の行間が 1.4em で詰まっていて読みにくい（日本語は 1.8 以上が読みやすい） */
.problem ul li p,
.solution ul li p,
.reason ul li p,
.merit ul li p,
.scene_col p { line-height: 1.9; }

/* ② 大見出しが 1000px いっぱいまで伸びて不自然な所で折り返す（「ありま／せんか」）。
      1 行の長さを読みやすい幅で止め、折り返しの位置を均す */
.wrap h2 { max-width: 20em; margin-inline: auto; text-wrap: balance; }
.wrap h2 span { margin-bottom: .4em; }

/* ③ ファーストビュー: 見出しが 66px 固定で 4 行に割れ、画面の大半を占めていた。
      画像の無い形（fv--noimg）は文字だけなので、幅を本文と同じ 1000px に寄せて字を落とす */
.fv--noimg .fvWrap { max-width: 1040px; margin-inline: auto; }
.fv--noimg .catchcopy { font-size: clamp(28px, 3.4vw, 46px); line-height: 1.45; max-width: 22em; margin-inline: auto; text-wrap: balance; }
.fv--noimg p.upperCatchcopy { font-size: clamp(16px, 1.6vw, 22px); }

/* ④ 斜めカットの帯が幅 95%（上書きで 60%）まで伸びて、右端の斜めが画面外へ出ていた。
      中身の長さに合わせる */
.fv .textList .tag { width: fit-content; min-width: 0; max-width: 100%; padding: 8px 20px; }

/* ⑤ 困りごと（problem）: float で並ぶため見出しの行数でカードごとに位置がずれ、
      画像も元の縦横比のままで大きさが揃わなかった。3 列の格子にして形をそろえる */
.problem ul { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; align-items: start; overflow: visible; }
.problem ul li { width: auto; margin: 0; float: none; }
.problem ul li img { width: min(100%, 240px); aspect-ratio: 1 / 1; object-fit: cover; display: block; margin: 0 auto 16px; }
.problem ul li h3 { font-size: 20px; line-height: 1.5; margin: 0 auto 12px; }
.problem ul li p { font-size: 16px; }

/* ⑥ 特長（solution）: 行ごとに画像の縦横比が違い、段の高さが揃わなかった */
.solution ul li .pho { aspect-ratio: 4 / 3; object-fit: cover; }
.solution ul li { display: flex; align-items: center; gap: 24px; }
.solution ul li .floatLeft, .solution ul li .floatRight { float: none; width: auto; flex: 1 1 auto; padding: 0; }
.solution ul li .pho { float: none; flex: 0 0 30%; }
.solution ul li .pho.floatRight { order: 2; }

/* ⑦ 選ばれる理由（reason）: 画像が元の縦横比のままで、札とカードの高さが合わず下に大きな余白が出ていた */
.reason ul li img { aspect-ratio: 4 / 3; object-fit: cover; width: 100%; }
.reason ul li { list-style: none; min-height: 190px; display: grid; grid-template-columns: 160px 1fr 300px; align-items: center; gap: 0 24px; padding: 0 24px 0 0; }
.reason ul li .num { position: static; height: auto; align-self: stretch; display: flex; flex-direction: column; justify-content: center; padding: 24px 0; }
.reason ul li .floatLeft.full { width: auto; padding: 20px 0; }

/* ⑧ 呼びかけ（c_btn）の上下が 100px 以上空いて間延びしていた */
.c_btn .wrap_inner { padding: 48px 0; }

@media screen and (max-width: 768px) {
  /* 携帯: 格子を 1 列へ戻し、丸い画像の大きさをそろえる */
  .problem ul { grid-template-columns: 1fr; gap: 24px; }
  .problem ul li img { width: min(60%, 200px); }
  .problem ul li h3 { font-size: 19px; }
  .solution ul li { display: block; }
  .solution ul li .pho { aspect-ratio: 16 / 9; }
  .reason ul li { grid-template-columns: 1fr; padding: 0 0 20px; }
  .reason ul li .num { padding: 16px 0; }
  .reason ul li .floatLeft.full { padding: 16px 20px 0; }
  .reason ul li img { aspect-ratio: 16 / 9; }
  .fv--noimg .catchcopy { font-size: clamp(22px, 6.4vw, 30px); }
  .c_btn .wrap_inner { padding: 32px 0; }
}

/* ⑨ 🔴 本文が単語の途中で折り返される（`body { word-break: break-all }` が束に入っている）。
      「工程ご／とに」「ありま／せんか」のように読みの切れ目を無視して切れるのを止める。
      ⚠ はみ出し対策は overflow-wrap に任せる（長い URL だけ必要な時に切る）。
      `auto-phrase` は日本語の文節で折り返す指定（対応していないブラウザは normal のまま＝害がない） */
.site-body, .site-body p, .site-body li, .site-body td, .site-body th, .site-body dd, .site-body dt,
.site-body h1, .site-body h2, .site-body h3, .site-body h4 { word-break: normal; overflow-wrap: anywhere; }
.site-body h1, .site-body h2, .site-body h3, .site-body .catchcopy, .site-body .result { word-break: auto-phrase; }

/* ⑪ ファーストビューの小見出しが「担当者／へ」と 1 文字だけ落ちる・帯だけ左に寄って軸がずれる */
.site-body .upperCatchcopy, .site-body .textList .tag { word-break: auto-phrase; }
.fv--noimg .textList { justify-content: center; }

/* ⑫ 長い文章の 1 行が 1000px いっぱい（60 字超）で目が戻りにくい。日本語の読みやすい幅（約 40 字）で止める */
.message ul li .full > p, .message ul li .full > p.signature { max-width: 40em; margin-inline: auto; }
.message ul li .full > p.signature { text-align: right; }
.message ul li .full > p:has(> .btnLink) { max-width: 40em; margin-inline: auto; text-align: center; }
.message ul li .full > p > .btnLink { text-align: center; }

/* ⑬ 下層ページの見出しが幅 61% に押し込められ、「…代行サー／ビス」と語の途中で割れて帯が階段状に見える。
      文字の入る幅を広げ、左ぞろえにして本文と軸をそろえる（帯の見た目＝box-decoration-break はテーマのまま） */
.service-tit { align-items: flex-start; }
.service-tit--text-wrap { width: auto; flex: 1 1 auto; text-align: left; }
.service-tit--num { flex: 0 0 auto; line-height: 1; }

/* ⑭ 右下の呼びかけの説明文に地が無く、下の足元のリンクと文字が重なって読めない（2026-10-29・390px の見本で確認）。
      箱に地と影を付ける。追従する案内（帯・右下）が出ている間は「トップへ戻る」を隠す＝申し込みボタンの上に重なっていた。
      ⚠ 帯と右下が同時に出ないのは dynamic-cta.js が持つ（CSS では扱わない） */
.dcta--corner .cta-corner-content { background: #fff; border-radius: var(--r-m); box-shadow: var(--shadow-btn); padding: 14px 16px 16px; }
.dcta--corner .cta-corner-content > p { margin: 0 24px 10px 0; }
body:has(#dcta-bar.is-shown, #dcta-corner.is-shown) .page-top-btn { opacity: 0; visibility: hidden; }

/* トップ＝ロング版 LP の写し（2026-10-29）: 申し込みのフォームの画像は背景でなく左の列の 1 枚（LP の .ctaForm__media と同じ） */
.ctaForm .ctaForm__media { margin: 0 0 16px; }
.ctaForm .ctaForm__media img { display: block; width: 100%; max-width: 420px; height: auto; margin: 0 auto; }
