@charset "utf-8";

/* ----- レイアウトチェック用 ----- */
*{
    /*outline: 2px red solid;*/
}

/* ----- 初期化および初期設定 ----- */
*, *::before, *::after {
    box-sizing: border-box;
}

html {
    scrollbar-gutter: stable;
    overflow-y: scroll;
    scroll-behavior: smooth !important;
}
body {
    overflow-x: clip;
    margin: 0 !important;
    padding: 0 !important;
    background-color: #ffffff;
    letter-spacing: 0.125rem !important;
    line-height: 2rem !important;
    word-break: break-all !important;
    font-family: "DM Sans", "Helvetica", "Noto Sans JP", "ヒラギノ角ゴシック", "游ゴシック", "游ゴシック体", sans-serif !important;
}
ul, li {
    list-style: none !important;
    padding: 0 !important;
}
p {
    font-weight: 400 !important;
}
a {
    text-decoration: none !important;
    color : inherit !important;
}
h2 {
    font-family: inherit !important;
    font-size: 1.5rem !important;
    font-weight: 500 !important;
}

/* ============================================================
   プリロード制御（SEO対策：visibility:hidden → opacity:0 に変更）
   ============================================================ */
body.is-preload *:not(.slt_fade-in) {
    opacity: 0;
    transition: none;
}
body.is-loaded *:not(.slt_fade-in) {
    opacity: 1;
}

/* ============================================================
   ページローダー（スピナーのみ・ロゴなし）
   ・初期表示〜読み込み完了まで全面を白で覆い、中央でスピナーを回す
   ・読み込み完了の合図は既存の body.is-loaded を流用（JS変更不要）
   ・#id セレクタなので上の body.is-preload *{opacity:0} に勝つ
   ============================================================ */
#slt_page-loader {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 100000;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #ffffff;
    opacity: 1;
}
#slt_page-loader .slt_page-loader_spinner {
    width: 48px;
    height: 48px;
    box-sizing: border-box;
    border: 4px solid rgba(0, 0, 0, 0.12);
    border-top-color: #0082c4;
    border-radius: 50%;
    opacity: 1;
    animation: slt_page-loader-spin 0.8s linear infinite;
}
@keyframes slt_page-loader-spin {
    to { transform: rotate(360deg); }
}
/* 読み込み完了でフェードアウト → クリック貫通＆非表示 */
body.is-loaded #slt_page-loader {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.4s ease, visibility 0s linear 0.4s;
}

/* ============================================================
   フェードインアニメーション（Intersection Observer）
   ============================================================ */
.slt_fade-in {
    opacity: 0;
    transform: translateY(50px);
    transition: opacity 1.5s ease, transform 0.75s ease;
}
.slt_fade-in.is-visible {
    opacity: 1;
    transform: translateY(0);
}
/* フェードイン × パララックス併用時：座標はパララックス(JS)に一任し、fade-inは透明度だけ */
.slt_fade-in.slt_parallax-img {
    transform: none;
    transition: opacity 1.5s ease;   /* transform のトランジションは外す */
}

/* ============================================================
   通常ヘッダー（slt_header）
   ============================================================ */
.slt_header {
    background: transparent;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 100;
}
.slt_header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 1200px;
    margin: 0 auto;
    padding: 12px 2rem;
}
.slt_header-logo img {
    width: 250px;
    height: auto;
    margin-top: 5px;
}
.slt_header-logo h1 {
    margin: 0;
    line-height: 1;
}
.slt_header-hamburger-wrap {
    display: flex;
    align-items: center;
}
@media screen and (max-width: 782px) {
    .slt_header-logo img {
        width: 170px;
    }
    .slt_header-inner {
        padding: 10px 1rem;
    }
}

/* ============================================================
   PCスティッキーヘッダー
   ============================================================ */
.slt_sticky-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 9990;
    /*background: #fff;
    box-shadow: 0 2px 12px rgba(0,0,0,0.10);*/
    pointer-events: none;
    transform: translateY(-100%);
    transition: transform 0.5s ease, opacity 0.35s ease;
    opacity: 0;
}
.slt_sticky-header.is-visible {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}
.slt_sticky-header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 1200px;
    margin: 0 auto;
    padding: 10px 2rem;
}
.slt_sticky-header-logo img {
    width: 200px;
    height: auto;
    margin-top: 5px;
}
.slt_sticky-header-actions {
    display: flex;
    align-items: center;
    gap: 36px;
}
.slt_sticky-header-cta-btn {
    display: inline-block;
    background: #0082c4;
    color: #ffffff !important;
    font-size: 0.95rem;
    font-weight: 700;
    padding: 5px 22px;
    border: 1px solid #0082c4;
    border-radius: 2rem;
    text-decoration: none !important;
    transition: background 0.25s ease;
}
.slt_sticky-header-cta-btn:hover {
    color: #0082c4 !important;
    border: 1px solid #0082c4;
    background: #ffffff;
}
@media screen and (max-width: 782px) {
    .slt_sticky-header-cta-btn {
        display: none;
    }
    .slt_sticky-header-logo img {
        width: 130px;
    }
    .slt_sticky-header-inner {
        padding: 8px 1rem;
    }
}

/* ============================================================
   ハンバーガーボタン（共通）
   ============================================================ */
.slt_header-hamburger {
    display: flex;
    flex-direction: column;
    gap: 10px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 4px;
}
.slt_header-hamburger span {
    display: block;
    width: 41px;
    height: 2.5px;
    background: #0082c4;
    border-radius: 2px;
    transition: 0.3s;
}
@media screen and (max-width: 782px) {
    .slt_header-hamburger span {
        width: 35px;
        height: 2px;
    }
}

/* ============================================================
   ドロワーメニュー オーバーレイ
   ============================================================ */
.slt_hamburger-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.35);
    z-index: 99999;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.35s ease, visibility 0.35s ease;
}
.slt_hamburger-overlay.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

/* ドロワー本体パネル */
.slt_menu-panel {
    position: absolute;
    top: 0;
    right: 0;
    width: 500px;
    max-width: 88vw;
    height: 100vh;
    background: #ffffff;
    display: flex;
    flex-direction: column;
    transform: translateX(100%);
    transition: transform 0.35s ease;
    overflow-y: auto;
    box-shadow: -4px 0 25px rgba(0,0,0,0.15);
}
.slt_hamburger-overlay.is-open .slt_menu-panel {
    transform: translateX(0);
}
.slt_menu-panel-header {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 14px 20px;
    border-bottom: 1px solid #e8f4fb;
}

/* 閉じるボタン（×） */
.slt_menu-close {
    width: 42px;
    height: 42px;
    background: none;
    border: none;
    cursor: pointer;
    position: relative;
}
.slt_menu-close span {
    display: block;
    width: 35px;
    height: 2px;
    background: #0082c4;
    position: absolute;
    top: 50%;
    left: 50%;
}
.slt_menu-close span:first-child {
    transform: translate(-50%, -50%) rotate(45deg);
}
.slt_menu-close span:last-child {
    transform: translate(-50%, -50%) rotate(-45deg);
}

/* メニューリンク */
.slt_menu-nav {
    flex: 1;
    padding: 0;
}
.slt_menu-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 22px;
    font-size: 14px;
    font-weight: 600;
    color: #0082c4 !important;
    text-decoration: none !important;
    border-bottom: 1px solid #e8f4fb;
    transition: background 0.2s, color 0.2s;
}
.slt_menu-link:hover {
    background: #f0f8ff;
    color: #005f8f !important;
}
.slt_menu-arrow {
    font-size: 11px;
    color: #aac8dc;
    flex-shrink: 0;
    margin-left: 8px;
}
.slt_menu-buttons {
    padding: 22px 25px 28px 25px;
}

.slt_menu-btn {
    display: block;
    width: 100%;
    text-align: center;
    font-size: 1.35rem !important;
    font-weight: 500;
    letter-spacing: 0.15rem !important;
    color: #ffffff !important;
    border: 1px solid #ffffff;
    border-radius: 3rem;
    padding: 2rem 3.5rem;
    transition: 0.75s;
    background: linear-gradient(60deg, #ea6173, #fdb927);
    box-shadow: 0px 6px 0px 0px #ffffff;
}
.slt_menu-btn:hover {
    color: #ea6173 !important;
    border: 1px solid #ea6173;
    background: #ffffff;
    box-shadow: 0px 6px 0px 0px #ea6173;
}

@media screen and (max-width: 782px) {
    .slt_menu-btn {
        width: 100%;
        font-size: 1.25rem !important;
        padding: 1rem 0;
        margin: 0 auto 0 auto;
    }
    .slt_menu-panel {
        width: 100%;
        max-width: 100vw;
    }
}

/* ============================================================
   SP固定フッター
   ============================================================ */
.slt_sp-fixed-footer {
    display: none;
}
@media screen and (max-width: 782px) {
    .slt_sp-fixed-footer {
        display: block;
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        z-index: 998;
        opacity: 0;
        transform: translateY(100%);
        transition: opacity 0.35s ease, transform 0.35s ease;
        pointer-events: none;
    }
    .slt_sp-fixed-footer.is-visible {
        opacity: 1;
        transform: translateY(0);
        pointer-events: auto;
    }
    .slt_sp-fixed-footer-inner {
        display: flex;
        align-items: center;
        gap: 0;
        padding: 8px 10px;
    }
    .slt_sp-fixed-footer-buttons {
        display: flex;
        gap: 8px;
        flex: 1;
    }
    .slt_sp-footer-btn {
        flex: 1;
        text-align: center;
        flex: 1;
        padding: 12px 1px !important;
        margin: 0 10px 0 10px;
        font-size: 1rem !important;
        font-weight: 500;
        letter-spacing: 0.15rem !important;
        color: #ffffff !important;
        border-radius: 3rem;
        transition: 0.75s;
        background: linear-gradient(60deg, #ea6173, #fdb927);
    }
    .slt_sp-footer-btn:hover {
        color: #ea6173 !important;
        border: 1px solid #ea6173;
        background: #ffffff;
    }
    .slt_sp-fixed-footer-top {
        flex-shrink: 0;
        width: 50px;
        height: 50px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: #ffffff;
        border: none;
        border-radius: 2rem;
        cursor: pointer;
        padding: 4px;
        margin-left: 4px;
    }
    .slt_sp-fixed-footer-top svg {
        width: 100%;
        height: auto;
        fill: #0082c4;
    }
}

/* ページトップボタンのpadding対応（SPフッター分） */
@media screen and (max-width: 782px) {
    body {
        padding-bottom: 70px;
    }
}

/* ============================================================
   フッター
   ============================================================ */
.slt_footer_wrap {
    width: 100%;
    height: 100%;
    background-image: url(../img/footer/footer_border.gif);
    background-position: 0% 0%;
    background-repeat: no-repeat;
    background-size: contain;
}
.slt_footer_inner {
    padding: 12rem 0 8rem 0;
}
.slt_footer_inner_logo {
    text-align: center;
}
.slt_footer_inner_logo img {
    width: 30%;
    height: auto;
}
.slt_footer_inner_text {
    text-align: center;
}
.slt_footer_inner_text ul {
    padding: 0;
}
.slt_footer_inner_text ul li {
    display: inline-block;
    margin: 1rem 3rem 1rem 3rem;
}
.slt_footer_inner_text ul li a {
    transition: 0.5s ease;
}   
.slt_footer_inner_text ul li a:hover {
    opacity: 50%;
}
@media screen and (max-width: 782px){
    .slt_footer_wrap {
        background-image: url(../img/footer/footer_border_sp.gif);
    }
    .slt_footer_inner {
        padding: 7rem 2rem 5rem 2rem;
    }
    .slt_footer_inner_logo img {
        width: 80%;
        height: auto;
    }
    .slt_footer_inner_text {
        text-align: center;
    }
    .slt_footer_inner_text ul li {
        display: inline-block;
        padding: 1rem 1rem 1rem 1rem;
    }
}

/* ============================================================
    メインコンテンツ
   ============================================================ */

/* ----- main slide FV ----- */
.slt_main-slide_wrap {
    max-width: 1700px;
    height: auto;
    overflow: hidden;
    margin-top: -15px;
}
.slt_main-slide_content-inner img {
    width: 100%;
}
@media screen and (max-width: 782px){
    .slt_main-slide_wrap {
        width: 100%;
        max-width: 100%;
    }
}

/* ============================================================
   FV登場アニメーション
   ============================================================ */
body.is-loaded .slt_main-slide_wrap {
    animation: slt_fv-reveal 1.2s cubic-bezier(0.22, 0.61, 0.36, 1) both;
    will-change: opacity, transform, filter;
}
@keyframes slt_fv-reveal {
    from {
        opacity: 0;
        transform: translateY(20px);
        filter: blur(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
        filter: blur(0);
    }
}
/* 動きを控える設定の端末ではアニメーションを無効化（アクセシビリティ） */
/*@media (prefers-reduced-motion: reduce) {
  body.is-loaded .slt_main-slide_wrap {
    animation: slt_fv-fade 0.6s ease both;
  }
}
@keyframes slt_fv-fade { from { opacity: 0; } to { opacity: 1; } }
}*/

/* ----- /// content01 /// ----- */
/* ----- layout06 both sides bg-pix --- both sides bg-pix + message + text ----- */
.slt-c01a_layout06_wrap {
    width: 100%;
    height: 1450px;
    background-image: url(../img/bg-parts/bg_parts01.gif), url(../img/bg-parts/bg_parts02.gif), url(../img/c01/c01_message-bg.jpg);
    background-position: 10% 0%, 75% 85%, 0% 40%;
    background-repeat: no-repeat, no-repeat, no-repeat;
    background-size: 35%, 23%, 1350px;
    overflow: visible;
}
.slt-c01a_layout06_content-inner_pix_section-a {
    float: right;
}
.slt-c01a_layout06_content-inner_pix_section-b {
    float: left;
}
.slt-c01a_layout06_content-inner_pix01 {
    width: 500px;
    height: auto;
    display: block;
    border-radius: 3rem;
    margin: -170px 0 0 -150px;
}
.slt-c01a_layout06_content-inner_pix02 {
    width: 330px;
    height: auto;
    display: block;
    border-radius: 3rem;
    margin: -30px 0 0 -320px;
}
.slt-c01a_layout06_content-inner_pix03 {
    width: 400px;
    height: auto;
    display: block;
    border-radius: 3rem;
    margin: 320px 100px 0 0;
}
.slt-c01a_layout06_content-inner_pix04 {
    width: 280px;
    height: auto;
    display: block;
    border-radius: 3rem;
    margin: -30px 0 0 320px;
}
.slt-c01a_layout06_content-inner_text {
    padding: 15rem 0 0 8rem; 
}
@media screen and (max-width: 782px){
    .slt-c01a_layout06_wrap {
        height: 1850px;
        background-image: url(../img/bg-parts/bg_parts01.gif), url(../img/bg-parts/bg_parts02.gif), url(../img/c01/c01_message-bg.jpg);
        background-position: -225% 2.4%, 185% 82%, 50% 50%;
        background-size: 95%, 75%, 500%;
        overflow: hidden;
    }
    .slt-c01a_layout06_content-inner_pix_section-a {
        float: none;
    }
    .slt-c01a_layout06_content-inner_pix_section-b {
        float: none;
    }
    .slt-c01a_layout06_content-inner_text {
        padding: 145px 1.5rem 0 1.5rem; 
    }
    .slt-c01a_layout06_content-inner_pix01 {
        width: 450px;
        border-radius: 2rem 0 0 2rem;
        margin: 90px 0 0 25px;
    }
    .slt-c01a_layout06_content-inner_pix02 {
        width: 230px;
        border-radius: 2rem;
        margin: -20px 0 0 90px;
    }
    .slt-c01a_layout06_content-inner_pix03 {
        width: 290px;
        border-radius: 0 2rem 2rem 0;
        margin: 80px 0 0 0;
    }
    .slt-c01a_layout06_content-inner_pix04 {
        width: 200px;
        border-radius: 2rem;
        margin: -20px 0 0 160px;
    }
}
/* ----- layout06 both sides bg-pix --- both sides bg-pix + message + text ----- */
.slt-c01b_layout06_wrap {
    width: 100%;
    height: 1400px;
    background-image: url(../img/c01/c01_mechanism_bg.gif), url(../img/bg-parts/bg_parts03.gif);
    background-position: 100% 80%, 30% 8%;
    background-repeat: no-repeat, no-repeat;
    background-size: 60%, 30%;
    overflow: hidden;
}
.slt-c01b_layout06_content-inner {
    padding: 18rem 0 7rem 5rem; 
}
.slt-c01b_layout06_content-inner_box {
    width: 450px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
.slt-c01b_layout06_content-inner_box_01 {
    width: 100%;
    border: 1px solid #0082c4;
    border-radius: 4rem;
    box-shadow: 0px 6px 0px 0px #0082c4;
}
.slt-c01b_layout06_content-inner_box_02 {
    width: 100%;
    margin-top: 30px;
    border: 1px solid #0082c4;
    border-radius: 4rem;
    box-shadow: 0px 6px 0px 0px #0082c4;
}
.slt-c01b_layout06_content-inner_box_01 p, .slt-c01b_layout06_content-inner_box_02 p {
    text-align: center;
    font-weight: 500 !important;
    line-height: 2.5rem;
    padding: 1rem 1rem 1rem 1rem;
    color: #0082c4 !important;
}
@media screen and (max-width: 782px){
    .slt-c01b_layout06_wrap {
        height: 2000px;
        background-image: url(../img/c01/c01_mechanism_bg_sp.gif), url(../img/bg-parts/bg_parts03.gif);
        background-position: 0% 42%, -50% 8%;
        background-size: 100%, 85%;
    }
    .slt-c01b_layout06_content-inner {
        padding: 13rem 1.5rem 0 1.5rem; 
    }
    .slt-c01b_layout06_content-inner-sp {
        padding: 770px 1.5rem 5rem 1.5rem; 
    }
    .slt-c01b_layout06_content-inner_box {
        width: 100%;
    }
    .slt-c01b_layout06_content-inner_box_01, .slt-c01b_layout06_content-inner_box_02 {
        border-radius: 3rem;
    }
    .slt-c01b_layout06_content-inner_box_01 p, .slt-c01b_layout06_content-inner_box_02 p {
        padding: 0.75rem 1rem 0.5rem 1rem;
    }
}
/* ----- layout01 center-bg --- center message + text ----- */
.slt-c01_layout01-center-bg_wrap {
    width: 100%;
    height: 700px;
    background-image: url(../img/c01/c01_center-bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    border-radius: 5rem;
    vertical-align: middle;
}
.slt-c01_layout01-center-bg_content-inner {
    max-width: 1200px;
    padding: 8rem 0 0 0;
    text-align: right;
}.slt-c01_layout01-center-bg_content-inner_pix {
    float: right;
}
.slt-c01_layout01-center-bg_content-inner_pix05 {
    width: 340px;
    height: auto;
    display: block;
    border-radius: 3rem;
    margin: 100px -100px 0 0;
}
@media screen and (max-width: 782px){
    .slt-c01_layout01-center-bg_wrap {
        height: 1060px;
        background-image: url(../img/c01/c01_center-bg_sp.jpg);
        background-position: 0% 0%;
        border-radius: 2rem;
    }
    .slt-c01_layout01-center-bg_content-inner {
        padding: 8rem 1.5rem 2rem 1.5rem;
        text-align: center;
    }
    .slt-c01_layout01-center-bg_content-inner_pix05 {
        width: 220px;
        height: auto;
        display: block;
        border-radius: 2rem;
        margin: 320px 30px 0 0;
    }
}
/* ----- /// content02 /// ----- */
.slt-c02_content_wrap {
    width: 100%;
    height: 3250px;
    background-image: url(../img/bg-parts/bg_parts_yellow02.gif), url(../img/jirei/jirei_bg.jpg);
    background-position: 50% 2%, center;
    background-repeat: no-repeat;
    background-size: 25%, cover;
    overflow: hidden;
}
.slt-c02_content_title {
    margin: 8rem 0 0 300px;
    text-indent: -5em;
    padding-left: 1em;
}
.slt-c02_content_jirei-pix01 {
    margin: 200px 0 0 50px;
}
.slt-c02_content_jirei-pix01 img {
    width: 630px;
    border-radius: 2rem;
    margin-bottom: -1rem;
}
.slt-c02_content_jirei-pix02 {
    margin: -200px 0 0 770px;
}
.slt-c02_content_jirei-pix02 img {
    width: 390px;
    border-radius: 2rem;
    margin-bottom: -1rem;
}
.slt-c02_content_jirei-pix03 {
    margin: -370px 0 0 220px;
}
.slt-c02_content_jirei-pix03 img {
    width: 380px;
    border-radius: 2rem;
    margin-bottom: -1rem;
}
.slt-c02_content_jirei-pix04 {
    margin: 190px 0 0 0;
}
.slt-c02_content_jirei-pix04 img {
    width: 350px;
    border-radius: 2rem;
    margin-bottom: -1rem;
}
.slt-c02_content_jirei-pix05 {
    margin: -660px 0 0 450px;
}
.slt-c02_content_jirei-pix05 img {
    width: 280px;
    border-radius: 2rem;
    margin-bottom: -1rem;
}
.slt-c02_content_jirei-pix06 {
    margin: -120px 0 0 830px;
}
.slt-c02_content_jirei-pix06 img {
    width: 240px;
    border-radius: 2rem;
    margin-bottom: -1rem;
}
.slt-c02_content_jirei-pix07 {
    margin: -30px 0 0 120px;
}
.slt-c02_content_jirei-pix07 img {
    width: 450px;
    border-radius: 2rem;
    margin-bottom: -1rem;
}
.slt-c02_content_jirei-pix08 {
    margin: -230px 0 0 720px;
}
.slt-c02_content_jirei-pix08 img {
    width: 230px;
    border-radius: 2rem;
    margin-bottom: -1rem;
}
.slt-c02_content_jirei-pix09 {
    margin: -90px 0 0 370px;
}
.slt-c02_content_jirei-pix09 img {
    width: 270px;
    border-radius: 2rem;
    margin-bottom: -1rem;
}
@media screen and (max-width: 782px){
    .slt-c02_content_wrap {
        width: 100%;
        height: 2950px;
        background-image: url(../img/bg-parts/bg_parts_yellow02.gif), url(../img/jirei/jirei_bg.jpg);
        background-position: 180% 3%, center;
        background-repeat: no-repeat;
        background-size: 90%, cover;
        overflow: hidden;
        padding-top: 175px;
    }
    .slt-c02_content_title {
        margin: 0 0 0 0;
        text-align: left;
        text-indent: 0;
        padding-left: 1.5rem;
    }
    .slt-c02_content_jirei-pix01 {
        margin: 100px 0 0 -65px;
    }
    .slt-c02_content_jirei-pix01 p {
        text-align: right;
        margin-right: 1.5rem;
    }
    .slt-c02_content_jirei-pix01 img {
        width: 530px;
        border-radius: 0;
    }
    .slt-c02_content_jirei-pix02 {
        margin: 45px 0 0 65px;
    }
    .slt-c02_content_jirei-pix02 img {
        width: 330px;
        border-radius: 2rem 0 0 2rem;
    }
    .slt-c02_content_jirei-pix04 {
        margin: 35px 0 0 0;
    }
    .slt-c02_content_jirei-pix04 p {
        margin-left: 1.5rem;
    }
    .slt-c02_content_jirei-pix04 img {
        width: 100%;
        border-radius: 0 2rem 2rem 0;
        margin: 0 0 -1rem -15px;
    }
    .slt-c02_content_jirei-pix05 {
        margin: 35px 0 0 0;
    }
    .slt-c02_content_jirei-pix05 p {
        text-align: right;
        margin-right: 1.5rem;
    }
    .slt-c02_content_jirei-pix05 img {
        width: 100%;
        border-radius: 2rem 0 0 2rem;
        margin: 0 -15px -1rem 0;
    }
    .slt-c02_content_jirei-pix06 {
        margin: 35px 0 0 0;
    }
    .slt-c02_content_jirei-pix06 p {
        margin-left: 1.5rem;
    }
    .slt-c02_content_jirei-pix06 img {
        width: 100%;
        border-radius: 0 2rem 2rem 0;
        margin: 0 0 -1rem -15px;
    }
    .slt-c02_content_jirei-pix07 {
        margin: 45px 0 0 -65px;
    }
    .slt-c02_content_jirei-pix07 p {
        text-align: right;
        margin-right: 1.5rem;
    }
    .slt-c02_content_jirei-pix07 img {
        width: 530px;
        border-radius: 0;
    }
    .slt-c02_content_jirei-pix09 {
        margin: 35px 0 0 0;
    }
    .slt-c02_content_jirei-pix09 p {
        text-align: right;
        margin-right: 1.5rem;
    }
    .slt-c02_content_jirei-pix09 img {
        width: 100%;
        border-radius: 2rem 0 0 2rem;
        margin: 0 -15px -1rem 0;
    }
    .slt-c02_content_jirei-pix-wrap {
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-end;
        align-items: center;
    }
    .slt-c02_content_jirei-pix-box01 {
        width: 55%;
    }
    .slt-c02_content_jirei-pix-box02 {
        width: 45%;
    }
}
/* ----- /// content02 ここまで /// ----- */

/* ----- /// content03 お問い合わせ /// ----- */
/* ----- 2column ----- */
.slt-c03_2column_wrap {
    width: 100%;
    height: 870px;
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-end;
    align-items: center;
    background-image: url(../img/c03/c03_otoiawase-bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    border-radius: 5rem;
    vertical-align: middle;
}
.slt-c03_2column_box {
    width: 55%;
    height: 100%;
    padding: 5rem 0 0 5rem;
}
.slt-c03_2column_content-inner {
    width: 630px;
    text-align: left;
}
.slt-c03_2column_content-inner_img {
    width: 105%;
    margin: -110px 0 -15px -60px;
}
@media screen and (max-width: 782px){
    .slt-c03_2column_wrap {
        width: 100%;
        height: 1700px;
        display: flex;
        flex-wrap: wrap;
        background-image: url(../img/c03/c03_otoiawase-bg_sp.jpg);
        border-radius: 2rem;
    }
    .slt-c03_2column_box {
        width: 100%;
        padding: 5rem 1.5rem 0 1.5rem;
    }
    .slt-c03_2column_content-inner {
        width: 100%;
    }
    .slt-c03_2column_content-inner_img {
        width: 115%;
        margin: -140px 0 -10px -25px;
    }
}
/* ----- /// content03 お問い合わせ ここまで /// ----- */

/* ----- /// content04 /// ----- */
/* ----- layout01 center - original --- center message + text ----- */
.slt-c04a_layout01-center_wrap {
    width: 100%;
    height: 1500px;
    background-image: url(../img/bg-parts/bg_parts_line01.gif), url(../img/bg-parts/bg_parts_color01.gif), url(../img/bg-parts/bg_parts_color02.gif), url(../img/c04/c04_onayami-bg.jpg);
    background-position: 10% 80%, 30% 15%, 55% 90%, 88% 45%;
    background-repeat: no-repeat;
    background-size: 60%, 25%, 25%, 47%;
    overflow: hidden;
}
.slt-c04a_layout01-center_content-inner {
    padding: 270px 0 10rem 6rem;
    text-align: left;
}
.slt-c04a_layout01-center_content-inner_ul {
    width: 720px;
}
@media screen and (max-width: 782px){
    .slt-c04a_layout01-center_wrap {
        height: 2150px;
        background-image: url(../img/bg-parts/bg_parts_color01.gif), url(../img/bg-parts/bg_parts_color02.gif), url(../img/c04/c04_onayami-bg_sp.jpg);
        background-position: -60px 7%, 151% 28%, 71% 94%;
        background-size: 100%, 60%, 120%;
    }
    .slt-c04a_layout01-center_content-inner {
        padding: 15rem 1.5rem 2rem 1.5rem;
        text-align: left;
    }
    .slt-c04a_layout01-center_content-inner_ul {
        width: 100%;
        margin: 0 3.5rem 0 1.5rem;
    }
    .slt-c04a_layout01-center_content-inner_ul ul {
        width: 75%;
        margin: 0 0 0 2rem;
    }
    .slt-c04a_layout01-center_content-inner_ul li {
        padding-left: 2rem;
        text-indent: -1.5rem;
    }
    .slt-c04a_layout01-center_linegif {
        padding: 0 1.5rem 0 1.5rem;
    }
    .slt-c04a_layout01-center_linegif img {
        width: 100%;
    }
}
/* ----- layout01 center --- center message + text ----- */
.slt-c04b_layout01-center_wrap {
    width: 100%;
    height: 1180px;
    background-image: url(../img/bg-parts/bg_parts03.gif), url(../img/c04/c04_bg-img.jpg);
    background-position: 50% 20%, 0% 100%;
    background-repeat: no-repeat, no-repeat;
    background-size: 23%, 93%;
    overflow: hidden;
}
.slt-c04b_layout01-center_content-inner {
    padding: 17rem 22rem 2rem 0;
    text-align: right;
}
.slt-c04b_layout01-center_content-inner p {
    margin-right: -6rem;
}
@media screen and (max-width: 782px){
    .slt-c04b_layout01-center_wrap {
        width: 100%;
        height: 1200px;
        background-image: url(../img/bg-parts/bg_parts03.gif), url(../img/c04/c04_bg-img_sp.jpg);
        background-position: -139% 37%, 0% 100%;
        background-repeat: no-repeat, no-repeat;
        background-size: 83%, 100%;
    }
    .slt-c04b_layout01-center_content-inner {
        padding: 25rem 1.5rem 2rem 1.5rem;
        text-align: center;
    }
    .slt-c04b_layout01-center_content-inner p {
        margin-right: 0;
    }
}
/* ----- layout03 right --- right pix + message + text ----- */
.slt-c04_layout03-right_wrap {
    width: 100%;
    height: 700px;
    background-image: url(../img/c04/c04_bg-soudan02.jpg);
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 50rem 0 0 50rem;
}
.slt-c04_layout03-right_content-inner {
    width: 750px;
    padding: 4rem 0 0 500px;
    overflow: hidden;
    box-sizing: content-box;
}
.slt-c04_layout03-right_content-inner_box {
    padding: 0 0 0 0;
    text-align: left;
}
.slt-c04_layout03-right_content-inner_box li {
    text-indent: 2rem;
}
.slt-c04_layout03-right_content-pix {
    margin: -250px 0 0 100px;
}
.slt-c04_layout03-right_content-pix img {
    width: 36%;
    height: auto;
}
@media screen and (max-width: 782px){
    .slt-c04_layout03-right_wrap {
        height: 1300px;
        background-image: url(../img/c04/c04_bg-soudan02.jpg);
        background-position: 20% 50%;
        border-radius: 5rem 0 0 5rem;
    }
    .slt-c04_layout03-right_content-inner {
        width: 90%;
        padding: 8rem 0 0 1.5rem;
    }
    .slt-c04_layout03-right_content-inner_box {
        padding: 0 0 0 0;
    }
    .slt-c04_layout03-right_content-inner_box ul {
        width: 87%;
        margin-left: 1rem;
    }
    .slt-c04_layout03-right_content-inner_box li {
        padding-left: 2rem;
        text-indent: -1rem;
    }
    .slt-c04_layout03-right_content-pix {
        width: 100%;
        margin: 55px -50px 0 0;
        overflow: hidden;
    }
    .slt-c04_layout03-right_content-pix img {
        width: 120%;
    }
}
/* ----- /// content04 ここまで /// ----- */

/* ----- /// content05 /// ----- */
/* ----- layout05 left text + text ----- */
.slt-c05_layout05-left-text_wrap {
    width: 100%;
    height: 100%;
    background-image: url(../img/bg-parts/bg_parts_yellow01.gif);
    background-position: 35% 43%;
    background-repeat: no-repeat;
    background-size: 24%;
}
.slt-c05_layout05-left-text_content-inner {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;  
    padding: 6rem 5rem 12rem 5rem;
    text-align: left;
}
.slt-c05_layout05-left-text_content-inner_left-text {
    width: 40%;
    margin-top: -10rem;
    padding: 0 0 0 2rem;
}
.slt-c05_layout05-left-text_content-inner_left-text_rotate {
    transform: rotate(350deg); 
}
.slt-c05_layout05-left-text_indent-2rem {
    text-indent: -2rem;
}
.slt-c05_layout05-left-text_padding-right {
    padding-right: 3rem;
}
.slt-c05_layout05-left-text_content-inner_right-text {
    width: 60%;
}
@media screen and (max-width: 782px){
    .slt-c05_layout05-left-text_wrap {
        height: 1080px;
        background-position: 50% 10%;
        background-size: 78%;
        overflow: hidden;
    }
    .slt-c05_layout05-left-text_content-inner {
        flex-wrap: wrap;
        align-items: center;  
        padding: 7rem 0 1rem 0;
    }
    .slt-c05_layout05-left-text_content-inner_left-text {
        width: 100%;
        margin-top: 0rem;
        padding: 0 0 0 2rem;
    }
    .slt-c05_layout05-left-text_content-inner_left-text_rotate {
        transform: rotate(350deg); 
    }
    .slt-c05_layout05-left-text_indent-2rem {
        text-indent: 0;
    }
    .slt-c05_layout05-left-text_padding-right {
        padding-right: 1.5rem;
    }
    .slt-c05_layout05-left-text_content-inner_right-text {
        width: 100%;
        padding: 0 1.5rem 0 1.5rem;
    }
}
/* ----- /// content05 ここまで /// ----- */

/* ----- /// content06 /// ----- */
.slt-c06_bg {
    background-image: url(../img/c06/c06_top_bg.jpg);
    background-position: 50% 0%;
    background-repeat: no-repeat;
    background-size: contain;
}
@media screen and (max-width: 782px){
    .slt-c06_bg {
        background-image: url(../img/c06/c06_top_bg_sp.jpg);
        background-position: 50% 0%;
    }
}
/* ----- layout01 center --- center message + text ----- */
.slt-c06_layout01-center_wrap {
    width: 100%;
    height: 100%;
}
.slt-c06_layout01-center_icon {
    width: 100%;
    text-align: center;
    padding: 16rem 0 4rem 0;
}
.slt-c06_layout01-center_icon img {
    width: 120px;
    height: auto;
}
.slt-c06_layout01-center_content-inner {
    width: 850px;
    padding: 0 0 7rem 0;
    margin: 0 auto;
    text-align: center;
}
@media screen and (max-width: 782px){
    .slt-c06_layout01-center_wrap {
        overflow: hidden;
    }
    .slt-c06_layout01-center_icon {
        width: 100%;
        text-align: center;
        padding: 13rem 0 6rem 0;
    }
    .slt-c06_layout01-center_icon img {
        width: 120px;
        height: auto;
    }
    .slt-c06_layout01-center_content-inner {
        width: 100%;
        padding: 0 0 5rem 0;
    }
    .slt-c06_layout01-center_content-inner p {
        padding: 0 1.5rem 0 1.5rem;
    }
}
/* ----- layout03 left --- left pix + message + text ----- */
.slt-c06_layout03-left_wrap {
    width: 100%;
    height: 100%;
}
.slt-c06_layout03-left_content-inner {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;  
}
.slt-c06_layout03-left_content-inner_left {
    width: 45%;
    overflow: visible;
}
.slt-c06_layout03-left_content-inner_left img {
    width: 770px;
    height: auto;
    margin: 0 0 0 -180px;
}
.slt-c06_layout03-left_content-inner_right {
    width: 55%;
}
.slt-c06_layout03-left_content-inner_right-text {
    padding: 2rem 0 0 5rem;
    text-align: left;
}
@media screen and (max-width: 782px){
    .slt-c06_layout03-left_wrap {
        overflow: hidden;
    }
    .slt-c06_layout03-left_content-inner {
        flex-wrap: wrap;
    }
    .slt-c06_layout03-left_content-inner_left {
        width: 100%;
        overflow: hidden;
    }
    .slt-c06_layout03-left_content-inner_left img {
        width: 100%;
        height: auto;
        margin: 0 0 0 0;
    }
    .slt-c06_layout03-left_content-inner_right {
        width: 100%;
    }
    .slt-c06_layout03-left_content-inner_right-text {
        padding: 3rem 1.5rem 0 1.5rem;
        text-align: left;
    }
}
/* ----- layout03 right --- right pix + message + text ----- */
.slt-c06_layout03-right_wrap {
    width: 100%;
    height: 100%;
}
.slt-c06_layout03-right_content-inner {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;  
    background-image: url(../img/c06/c06_mechanism-home_bg.jpg);
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 3rem 3rem 3rem 3rem;
}
.slt-c06_layout03-right_content-inner_left {
    width: 55%;
}
.slt-c06_layout03-right_content-inner_left-text {
    padding: 5rem 1rem 5rem 5rem;
    text-align: left;
}
.slt-c06_layout03-right_content-inner_left-text_white-bg {
    background-color: #ffffff;
    border-radius: 1rem 1rem 1rem 1rem;
    padding: 1rem 2rem 1rem 2rem;
}
.slt-c06_layout03-right_content-inner_right {
    width: 45%;
    overflow: visible;
}
.slt-c06_layout03-right_content-inner_right img {
    width: 85%;
    height: auto;
    padding: 0 3rem 0 1rem;
}
@media screen and (max-width: 782px){
    .slt-c06_layout03-right_wrap {
        overflow: hidden;
    }
    .slt-c06_layout03-right_content-inner {
        flex-wrap: wrap;
        margin: 0 1.5rem 0 1.5rem;
    }
    .slt-c06_layout03-right_content-inner_left {
        width: 100%;
    }
    .slt-c06_layout03-right_content-inner_left-text {
        padding: 3rem 1.5rem 0 1.5rem;
    }
    .slt-c06_layout03-right_content-inner_left-text_white-bg {
        background-color: #ffffff;
        border-radius: 1rem 1rem 1rem 1rem;
        padding: 1rem 1.5rem 1rem 1.5rem;
    }
    .slt-c06_layout03-right_content-inner_right {
        width: 100%;
        text-align: center;
        padding: 3rem 0 8rem 0;
    }
    .slt-c06_layout03-right_content-inner_right img {
        width: 90%;
        padding: 0 0 0 0;
    }
}
/* ----- layout07 2pix --- pix + text ----- */
.slt-c06_layout07-2pix_wrap {
    width: 100%;
    height: 100%;
}
.slt-c06_layout07-2pix_parts {
    width: 100%;
    margin: -190px 0 -30px 0;
    text-align: right;
}
.slt-c06_layout07-2pix_parts img {
    width: 280px;
    margin-right: 30px;
}
.slt-c06_layout07-2pix_content {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
}
.slt-c06_layout07-2pix_content-inner_box-left {
    width: 50%;
    padding: 2rem 2rem 2rem 0;
}
.slt-c06_layout07-2pix_content-inner_box-right {
    width: 50%;
    padding: 2rem 0 2rem 2rem;
}
.slt-c06_layout07-2pix_content-inner_pix {
    width: 100%;
    overflow: visible;
    padding: 0;
}
.slt-c06_layout07-2pix_content-inner_pix iframe {
    width: 95%;
    height: 320px;
    border-radius: 2rem 2rem 2rem 2rem;
    border: 1px solid #0082c4;
    transition: 0.75s;
}
.slt-c06_layout07-2pix_content-inner_pix iframe:hover {
    box-shadow: 0px 0px 25px 0px #7ac1e4;
    transition: 0.75s;
}
.slt-c06_layout07-2pix_content-inner_txt {
    width: 100%;
}
.slt-c06_layout07-2pix_content-inner_txt p {
    padding: 0;
    text-align: left;
}
@media screen and (max-width: 782px){
    .slt-c06_layout07-2pix_wrap {
        overflow: hidden;
    }
    .slt-c06_layout07-2pix_parts img {
        width: 240px;
    }
    .slt-c06_layout07-2pix_content {
        flex-wrap: wrap;
    }
    .slt-c06_layout07-2pix_content-inner_box-left {
        width: 100%;
        padding: 2rem 1.5rem 2rem 1.5rem;
    }
    .slt-c06_layout07-2pix_content-inner_box-right {
        width: 100%;
        padding: 2rem 1.5rem 2rem 1.5rem;
    }
    .slt-c06_layout07-2pix_content-inner_pix {
        width: 100%;
        overflow: hidden;
        padding: 0;
    }
    .slt-c06_layout07-2pix_content-inner_pix iframe {
        width: 100%;
        height: 280px;
    }
    .slt-c06_layout07-2pix_content-inner_txt {
        width: 100%;
    }
    .slt-c06_layout07-2pix_content-inner_txt p {
        padding: 0;
    }
}
/* ----- /// content06 ここまで /// ----- */

/* ----- /// content07 /// ----- */
/* ----- layout03 left --- left pix + message + text ----- */
.slt-c07_layout03-left_wrap {
    width: 100%;
    height: 500px;
    background-image: url(../img/c07/c07_bg.jpg);
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 0 50rem 50rem 0;
}
.slt-c07_layout03-left_content-inner {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;  
}
.slt-c07_layout03-left_content-inner_left {
    width: 35%;
    overflow: visible;
}
.slt-c07_layout03-left_content-inner_left img {
    width: 100%;
    height: auto;
    padding: 40px 0 0 0;
}
.slt-c07_layout03-left_content-inner_right {
    width: 65%;
}
.slt-c07_layout03-left_content-inner_right-text {
    padding: 50px 2rem 0 3rem;
    text-align: left;
}
@media screen and (max-width: 782px){
    .slt-c07_layout03-left_wrap {
        height: 1170px;
        background-image: url(../img/c07/c07_bg.jpg);
        background-position: 20% 50%;
        border-radius: 0 5rem 5rem 0;
        overflow: hidden;
    }
    .slt-c07_layout03-left_content-inner {
        flex-wrap: wrap;
    }
    .slt-c07_layout03-left_content-inner_left {
        width: 100%;
        text-align: center;
    }
    .slt-c07_layout03-left_content-inner_left img {
        width: 83%;
        padding: 3rem 0 0 0;
    }
    .slt-c07_layout03-left_content-inner_right {
        width: 100%;
        padding: 4rem 0 0 0;
    }
    .slt-c07_layout03-left_content-inner_right-text {
        padding: 50px 1.5rem 0 1.5rem;
        text-align: left;
    }
}
/* ----- /// content07 ここまで /// ----- */

/* ----- /// content08 /// ----- */
/* ----- layout01 left --- left message + text ----- */
.slt-c08_layout01-left_wrap {
    width: 100%;
    height: 750px;
    background-image: url(../img/c08/c08_title-img.jpg);
    background-position: 85% 50%;
    background-repeat: no-repeat;
    background-size: 70%;
}
.slt-c08_layout01-left_content-inner {
    padding: 19rem 0 5rem 5rem;
    text-align: left;
}
@media screen and (max-width: 782px){
    .slt-c08_layout01-left_wrap {
        height: 900px;
        background-image: url(../img/c08/c08_title-img_sp.jpg);
        background-position: 85% 75%;
        background-size: 100%;
        overflow: hidden;
    }
    .slt-c08_layout01-left_content-inner {
        padding: 14rem 0 0 1.5rem;
    }
}
/* ----- layout03 left --- left pix + message + text ----- */
.slt-c08_layout03-left_wrap {
    width: 100%;
    height: 100%;
}
.slt-c08_layout03-left_content-inner {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;  
}
.slt-c08_layout03-left_content-inner_left {
    width: 25%;
    overflow: hidden;
}
.slt-c08_layout03-left_content-inner_left img {
    width: 80%;
    height: auto;
    padding: 0 0 0 0;
}
.slt-c08_layout03-left_content-inner_right {
    width: 75%;
}
.slt-c08_layout03-left_content-inner_right-text {
    padding: 0 0 0 0;
    text-align: left;
}
@media screen and (max-width: 782px){
    .slt-c08_layout03-left_wrap {
        overflow: hidden;
    }
    .slt-c08_layout03-left_content-inner {
        flex-wrap: wrap;
    }
    .slt-c08_layout03-left_content-inner_box {
        margin: 0 1.5rem 0 1.5rem;
    }
    .slt-c08_layout03-left_content-inner_left {
        width: 100%;
        text-align: center;
    }
    .slt-c08_layout03-left_content-inner_left img {
        width: 70%;
        padding: 1.5rem 0 1.5rem 0;
    }
    .slt-c08_layout03-left_content-inner_right {
        width: 100%;
    }
}
/* ----- layout03 right --- right pix + message + text ----- */
.slt-c08_layout03-right_wrap {
    width: 100%;
    height: 100%;
}
.slt-c08_layout03-right_content-inner {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;  
}
.slt-c08_layout03-right_content-inner_left {
    width: 75%;
}
.slt-c08_layout03-right_content-inner_left-text {
    padding: 0 0 0 0;
    text-align: left;
}
.slt-c08_layout03-right_content-inner_right {
    width: 25%;
    overflow: hidden;
    text-align: right;
}
.slt-c08_layout03-right_content-inner_right img {
    width: 80%;
    height: auto;
    padding: 0 0 0 0;
}
@media screen and (max-width: 782px){
    .slt-c08_layout03-right_wrap {
        overflow: hidden;
    }
    .slt-c08_layout03-right_content-inner {
        flex-wrap: wrap;
    }
    .slt-c08_layout03-right_content-inner_box {
        margin: 0 1.5rem 0 1.5rem;
    }
    .slt-c08_layout03-right_content-inner_left {
        width: 100%;
    }
    .slt-c08_layout03-right_content-inner_right {
        width: 100%;
        text-align: center;
    }
    .slt-c08_layout03-right_content-inner_right img {
        width: 70%;
        padding: 1.5rem 0 1.5rem 0;
    }
}
/* ----- layout03 left-pix-caption --- left pix + caption + message + text ----- */
.slt-c08_layout03-left-pix-caption_wrap {
    width: 100%;
    height: 100%;
}
.slt-c08_layout03-left-pix-caption_content-inner {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
}
.slt-c08_layout03-left-pix-caption_content-inner_left {
    width: 49%;
    overflow: hidden;
}
.slt-c08_layout03-left-pix-caption_content-inner_left img {
    width: 95%;
    height: auto;
    padding: 0 0 0 0;
}
.slt-c08_layout03-left-pix-caption_content-inner_left p {
    padding: 0 0 0 0;
}
.slt-c08_layout03-left-pix-caption_content-inner_right {
    width: 51%;
}
.slt-c08_layout03-left-pix-caption_content-inner_right-text {
    padding: 0 0 0 1rem;
    text-align: left;
}
@media screen and (max-width: 782px){
    .slt-c08_layout03-left-pix-caption_wrap {
        overflow: hidden;
    }
    .slt-c08_layout03-left-pix-caption_content-inner {
        flex-wrap: wrap;
    }
    .slt-c08_layout03-left-pix-caption_content-inner_box {
        margin: 0 1.5rem 0 1.5rem;
    }
    .slt-c08_layout03-left-pix-caption_content-inner_left {
        width: 100%;
    }
    .slt-c08_layout03-left-pix-caption_content-inner_left img {
        width: 100%;
        padding: 1.5rem 0 1.5rem 0;
    }
    .slt-c08_layout03-left-pix-caption_content-inner_right {
        width: 100%;
    }
    .slt-c08_layout03-left-pix-caption_content-inner_right-text {
        padding: 0 0 0 0;
    } 
}
/* ----- /// content08 ここまで /// ----- */

/* ----- /// content09 /// ----- */
.slt-c09_bg {
    background-image: url(../img/c09/c09_top_bg.jpg);
    background-position: 50% 0%;
    background-repeat: no-repeat;
    background-size: contain;
}
@media screen and (max-width: 782px){
    .slt-c09_bg {
        background-image: url(../img/c09/c09_top_bg_sp.jpg);
        background-position: 20% 0%;
    }
}
/* ----- layout06 - 変更 - both sides bg-pix --- both sides bg-pix + message + text ----- */
.slt-c09_layout06_wrap {
    width: 100%;
    height: 100%;
}
.slt-c09_layout06_content-inner {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    padding: 10rem 0 6rem 0; 
}
.slt-c09_layout06_content-text {
    width: 55%;
}
.slt-c09_layout06_content-pix {
    width: 45%;
    text-align: right;
    overflow: visible;
}
.slt-c09_layout06_content-pix01 {
    width: 420px;
    margin: -200px 190px 0 0;
    border-radius: 3rem;
}
.slt-c09_layout06_content-pix02 {
    width: 270px;
    margin: -30px 0 0 0;
    border-radius: 3rem;
}
.slt-c09_layout06_content-pix03 {
    width: 330px;
    margin: 40px 70px 0 0;
    border-radius: 3rem;
}
@media screen and (max-width: 782px){
    .slt-c09_layout06_wrap {
        overflow: hidden;
    }
    .slt-c09_layout06_content-inner {
        flex-wrap: wrap;
        padding: 10rem 1.5rem 6rem 1.5rem; 
    }
    .slt-c09_layout06_content-text {
        width: 100%;
    }
    .slt-c09_layout06_content-pix {
        width: 100%;
        text-align: left;
    }
    .slt-c09_layout06_content-pix01 {
        width: 100%;
        margin: 0 0 0 0;
        border-radius: 2rem;
    }
    .slt-c09_layout06_content-pix02 {
        width: 230px;
        margin: 3rem 0 0 90px;
        border-radius: 2rem;
    }
    .slt-c09_layout06_content-pix03 {
        width: 300px;
        margin: -30px 0 0 -1.5rem;
        border-radius: 0 2rem 2rem 0;
    }
}
/* ----- layout05 caption + right text + text + bottom-border ----- */
.slt-c09_layout05-caption-righttext-text-border_wrap {
    width: 100%;
    height: 100%;
}
.slt-c09_layout05-caption-righttext-text-border_content {
    padding: 1rem 0 1rem 0;
    text-align: left;
}
.slt-c09_layout05-caption-righttext-text-border_content img {
    width: 100%;
    height: auto;
}
.slt-c09_layout05-caption-righttext-text-border_content_box {
    border-bottom: 1px dotted #0082c4;
}
.slt-c09_layout05-caption-righttext-text-border_content-inner {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
}
.slt-c09_layout05-caption-righttext-text-border_content-inner_left-text {
    width: 65%;
}
.slt-c09_layout05-caption-righttext-text-border_content-inner_right-text {
    width: 35%;
}
@media screen and (max-width: 782px){
    .slt-c09_layout05-caption-righttext-text-border_content {
        padding: 1rem 1.5rem 1rem 1.5rem;
    }
    .slt-c09_layout05-caption-righttext-text-border_content-inner {
        flex-wrap: wrap;
    }
    .slt-c09_layout05-caption-righttext-text-border_content-inner_left-text {
        width: 100%;
    }
    .slt-c09_layout05-caption-righttext-text-border_content-inner_right-text {
        width: 100%;
    }
}
/* ----- /// content09 ここまで /// ----- */

/* ----- /// content10 /// ----- */
.slt-c10_bg {
    background-image: url(../img/c10/c10_bg.jpg);
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 50rem 0 0 50rem;
}
@media screen and (max-width: 782px){
    .slt-c10_bg {
        background-position: 20% 50%;
        border-radius: 5rem 0 0 5rem;
    }
}
/* ----- layout01 left --- left message + text ----- */
.slt-c10_layout01-left_wrap {
    width: 100%;
    height: 100%;
}
.slt-c10_layout01-left_content-inner {
    padding: 5rem 0 1rem 0;
    text-align: right;
}
@media screen and (max-width: 782px){
    .slt-c10_layout01-left_wrap {
        overflow: hidden;
    }
    .slt-c10_layout01-left_content-inner {
        padding: 8rem 1.5rem 0 1.5rem;
    }
}
/* ----- layout05 left text + text ----- */
.slt-c10_layout05-left-text_wrap {
    width: 100%;
    height: 430px;
}
.slt-c10_layout05-left-text_content-inner {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    text-align: left;
}
.slt-c10_layout05-left-text_content-inner_box {
    width: 50%;
}
.slt-c10_layout05-left-text_content-inner_left-text {
    width: 23%;
    padding: 1rem 0 0 0;
}
.slt-c10_layout05-left-text_content-inner_right-text {
    width: 77%;
    padding: 0 3rem 0 0;
}
@media screen and (max-width: 782px){
    .slt-c10_layout05-left-text_wrap {
        height: 100%;
        overflow: hidden;
    }
    .slt-c10_layout05-left-text_content-inner {
        flex-wrap: wrap;
    }
    .slt-c10_layout05-left-text_content-inner_box {
        width: 100%;
    }
    .slt-c10_layout05-left-text_content-inner_left-text {
        width: 100%;
        padding: 1rem 1.5rem 0 1.5rem;
    }
    .slt-c10_layout05-left-text_content-inner_right-text {
        width: 100%;
        padding: 0 1.5rem 0 1.5rem;
    }
}
/* ----- /// content10 ここまで /// ----- */

/* ----- /// content11 フォーム /// ----- */
.slt-c11_bg {
    background-image: url(../img/c11/c11_bg.jpg);
    background-position: 50% 0%;
    background-repeat: no-repeat;
    background-size: cover;
}
@media screen and (max-width: 782px){
    .slt-c11_bg {
        background-position: 50% 0%;
    }
}
/* ----- layout06 both sides bg-pix ＊変更＊ --- both sides bg-pix + message + text ----- */
.slt-c11_layout06a_wrap {
    width: 100%;
    height: 500px;
    margin-top: 15rem;
}
.slt-c11_layout06a_content-inner {
    width: 100%;
}
.slt-c11_layout06a_content-inner_text {
    padding: 200px 0 0 600px;
}
.slt-c11_layout06a_content-inner_pix {
    float: left;
}
.slt-c11_layout06a_content-inner_pix img {
    display: block;
}
.slt-c11_layout06a_content-inner_pix-img-bg {
    width: 310px;
    margin: -130px 0 -150px 840px;
}
.slt-c11_layout06a_content-inner_pix-img01 {
    width: 350px;
    margin: -50px 0 0 180px;
    border-radius: 2rem;
}
.slt-c11_layout06a_content-inner_pix-img02 {
    width: 240px;
    margin: -70px 0 0 0;
    border-radius: 2rem;
}
.slt-c11_layout06a_content-inner_pix-img03 {
    width: 280px;
    margin: 30px 0 0 100px;
    border-radius: 2rem;
}
@media screen and (max-width: 782px){
    .slt-c11_layout06a_wrap {
        height: 1030px;
        margin-top: 10rem;
        overflow: hidden;
    }
    .slt-c11_layout06a_content-inner {
        width: 100%;
    }
    .slt-c11_layout06a_content-inner_text {
        padding: 0 1.5rem 0 1.5rem;
    }
    .slt-c11_layout06a_content-inner_pix {
        float: none;
    }
    .slt-c11_layout06a_content-inner_pix-img-bg {
        width: 310px;
        margin: 0 0 -157px -25px;
    }
    .slt-c11_layout06a_content-inner_pix-img01 {
        width: 320px;
        margin: 100px 0 0 100px;
        border-radius: 2rem 0 0 2rem;
    }
    .slt-c11_layout06a_content-inner_pix-img02 {
        width: 210px;
        margin: -30px 0 0 25px;
    }
    .slt-c11_layout06a_content-inner_pix-img03 {
        width: 240px;
        margin: 30px 0 0 100px;
    }
}
/* ----- layout06 both sides bg-pix ＊変更＊ --- both sides bg-pix + message + text ----- */
.slt-c11_layout06b_wrap {
    width: 100%;
    height: 650px;
}
.slt-c11_layout06b_content-inner {
    padding: 150px 0 0 0; 
}
.slt-c11_layout06b_content-inner_text {
    width: 600px;
    padding: 120px 0 0 0;
}
.slt-c11_layout06b_content-inner_pix {
    float: right;
}
.slt-c11_layout06b_content-inner_pix img {
    display: block;
}
.slt-c11_layout06b_content-inner_pix-img-bg {
    width: 280px;
    margin: 520px 0 -730px -300px;
}
.slt-c11_layout06b_content-inner_pix-img01 {
    width: 280px;
    margin: 0 250px 0 0;
    border-radius: 2rem;
}
.slt-c11_layout06b_content-inner_pix-img02 {
    width: 240px;
    margin: 30px 0 0 200px;
    border-radius: 2rem;
}
.slt-c11_layout06b_content-inner_pix-img03 {
    width: 350px;
    margin: -50px 0 0 -120px;
    border-radius: 2rem;
}
@media screen and (max-width: 782px){
    .slt-c11_layout06b_wrap {
        height: 1260px;
        overflow: hidden;
    }
    .slt-c11_layout06b_content-inner {
        padding: 6rem 0 0 0; 
    }
    .slt-c11_layout06b_content-inner_text {
        width: 93%;
        padding: 0 0 0 0;
    }
    .slt-c11_layout06b_content-inner_pix {
        float: left;
    }
    .slt-c11_layout06b_content-inner_pix-img-bg {
        width: 300px;
        margin: 140px 0 0px -40px;
    }
    .slt-c11_layout06b_content-inner_pix-img01 {
        width: 280px;
        margin: 80px 0 0 30px;
        border-radius: 2rem;
    }
    .slt-c11_layout06b_content-inner_pix-img02 {
        width: 220px;
        margin: 30px 0 0 0;
        border-radius: 0 2rem 2rem 0;
    }
    .slt-c11_layout06b_content-inner_pix-img03 {
        width: 330px;
        margin: -460px 0 0 80px;
        border-radius: 2rem 0 0 2rem;
    }
}
/* ----- form bg ----- */
.slt-c11_form-bg {
    background-image: url(../img/c11/c11_parts.jpg);
    background-position: 0% 0%;
    background-repeat: no-repeat;
    background-size: 54%;
}
@media screen and (max-width: 782px){
    .slt-c11_form-bg {
        background-image: url(../img/c11/c11_parts_sp.jpg);
        background-position: 50% 0%;
        background-size: 100%;
    }
}
/* ----- layout01 center --- center message + text ----- */
.slt-c11_layout01-center_wrap {
    width: 100%;
    height: 820px;
}
.slt-c11_layout01-center_content-inner {
    padding: 105px 0 2rem 600px;
    text-align: left;
}
.slt-c11_layout01-center_content-inner_logo {
    width: 270px;
}
@media screen and (max-width: 782px){
    .slt-c11_layout01-center_wrap {
        height: 100%;
        overflow: hidden;
    }
    .slt-c11_layout01-center_content-inner {
        padding: 730px 1.5rem 2rem 1.5rem;
        text-align: center;
    }
    .slt-c11_layout01-center_content-inner_logo {
        width: 270px;
    }
}
/* ----- form -original- */
.slt-c11_form_wrap {
    width: 100%;
    height: 1750px;
    text-align: left;
}
.slt-c11_form_inner {
    width: 1000px;
    padding: 0 0 0 0;
    margin: 0 auto !important;
}
.slt-c11_form_p {
    padding-left: 6.5rem;
}
.slt-c11_form_inner_box {
    width: 100%;
}
.slt-c11_form_inner_table {
    width: 1000px;
        margin: 0 0 50px 0;
}
.slt-c11_form_inner_table th {
    width: 23%;
    padding: 0 0 0 3rem;
}
.slt-c11_form_inner_table_title-tyousei01 {
    padding: 0 0 0 1.75rem;
}
.slt-c11_form_inner_table_title-tyousei02 {
    padding: 0 0.5rem 0 3rem;
    font-weight: bold;
}
.slt-c11_form_inner_table td {
    width: 77%;
    padding: 1rem 0.75rem 1rem 0;
}
.slt-c11_form_inner_table input {
    border: 1px solid #0082c4;
    border-radius: 5px;
    padding: 0.75rem 1rem 0.75rem 1rem;
}
.slt-c11_form_inner_table_input01_flex {
    display: flex;
    flex-wrap: nowrap;
}
.slt-c11_form_inner_table_input01_box01, .slt-c11_form_inner_table_input01_box03 {
    width: 24%;
}
.slt-c11_form_inner_table_input01_box02 {
    width: 13%;
    padding-top: 0.4rem;
}
.slt-c11_form_inner_table_input01 {
    width: 149px;
}
.slt-c11_form_inner_table_input02 {
    width: 429px;
}
.slt-c11_form_inner_table_input03 {
    width: 230px;
}
.slt-c11_form_inner_table select {
    width: 230px;
    padding: 0.75rem 1rem 0.75rem 1rem;
    font-size: 1rem;
    text-align: center;
    border: 1px solid #0082c4;
    border-radius: 5px;
}
.slt-c11_form_inner_table_bikou {
    width: 670px;
    height: 257px;
    padding: 0.75rem 1rem 0.75rem 1rem;
    border: 1px solid #0082c4;
    border-radius: 5px;
}
.slt-c11_form_display-none {
    display: none;
}
.slt-c11_form_inner_table th, .slt-c11_form_inner_table td {
    border-bottom: 1px dotted #0082c4 !important;
}
.slt-c11_form_inner_table th label {
    color: #0082c4 !important;
}
.slt-c11_form_inner_table {
    background-color: #f8fdff !important;
}
.g-recaptcha {
    margin: 0 0 50px 350px;
    text-align: center !important;
}
.slt-c11_form_submit {
    margin: 0 auto;
    text-align: center;
}
.slt-c11_form_add-button {
    font-size: 0.8rem;
    font-weight: 700;
    width: 100px;
    margin-left: 1rem;
    padding: 0.5rem 0 0.6rem 0;
    border: 1px solid #666666;
    border-radius: 0.5rem;
}
.slt-c11_form_add-button:hover {
    color: #0082c4 !important;
    border: 1px solid #888888;
    background-color: #ffffff;
}
@media screen and (max-width: 782px){
    .slt-c11_form_wrap {
        height: 2600px;
        overflow: hidden;
    }
    .slt-c11_form_inner {
        width: 90%;
        padding: 0 0 0 0;
        margin: 0 auto;
    }
    .slt-c11_form_p {
        padding: 0 0 3rem 2rem;
    }
    .slt-c11_form_inner_box {
        width: 100%;
    }
    .slt-c11_form_inner_table_input01_flex {
        display: flex;
        flex-wrap: nowrap;
    }
    .slt-c11_form_inner_table_input01_box01 {
        width: 35%;
    }
    .slt-c11_form_inner_table_input01_box03 {
        width: 35%;
        margin-left: 3.25rem;
    }
    .slt-c11_form_inner_table_input01_box02 {
        width: 0%;
        padding-top: 0;
    }
    .slt-c11_form_inner_table_title-tyousei01-b {
        margin: 0 0 0 9.1rem;
    }
    .slt-c11_form_inner_table_input01 {
        width: 85%;
        margin-left: 1rem !important;
    }
    .slt-c11_form_inner_table_input02, .slt-c11_form_inner_table_input03 {
        width: 80%;
        margin-left: 1rem !important;
    }
    .slt-c11_form_inner_table_input-zip {
        width: 50% !important;
    }
    .slt-c11_form_inner_table select {
        width: 80%;
        margin-left: 1rem !important;
    }
    .slt-c11_form_inner_table_bikou {
        width: 80%;
        height: 300px;
        margin-left: 1rem !important;
    }
    .slt-c11_form_inner_table td {
        padding: 0.25rem 0 2rem 0;
    }
    .slt-c11_form_inner_table th, .slt-c11_form_inner_table td {
        width: 100%;
        float: left;
    }
    .slt-c11_form_inner_table th {
        border-bottom: none !important;
        padding: 1.25rem 0 0 1rem;
    }
    .slt-c11_form_inner_table_title-tyousei01 {
        padding: 0 0 0 0;
    }
    .slt-c11_form_inner_table_title-tyousei02 {
        padding: 0.2rem 0.5rem 0 1rem;
    }
    .slt-c11_form_inner_table-tyousei p {
        padding: 0 1rem 0 1.5rem !important;
    }
    .slt-c11_form_inner_table-tyousei_input-radio {
        margin-left: 1.5rem !important;
    }
    .slt-c11_form_inner_table {
        width: 100%;
        margin: -48px 0 50px 0;
    }
    .g-recaptcha {
        margin: 0 0 50px 21px;
    }
    .slt-c11_form_add-button {
        width: 85px;
        padding: 0.6rem 0 0.65rem 0;
    }
}
/* ----- /// content11 フォーム ここまで /// ----- */


/* ////////////////////////////////////////////////// */
/* /////////////////// 共通利用CSS /////////////////// */
/* ////////////////////////////////////////////////// */

/* margin調整用 */
.slt_margin-0 {
    margin: 0 !important;
}
.slt_margin-0auto {
	margin: 0 auto !important;
}
.slt_margin-bottom-3em {
	margin-bottom: -3rem !important;
}
.slt_margin-bottom-2rem {
	margin-bottom: -2rem !important;
}
.slt_margin-bottom-1rem {
	margin-bottom: -1rem !important;
}
.slt_margin-bottom-05rem {
	margin-bottom: -0.5rem !important;
}
.slt_margin-bottom0rem {
	margin-bottom: 0rem !important;
}
.slt_margin-bottom05rem {
	margin-bottom: 0.5rem !important;
}
.slt_margin-bottom1rem {
	margin-bottom: 1rem !important;
}
.slt_margin-bottom2rem {
	margin-bottom: 2rem !important;
}
.slt_margin-bottom3rem {
	margin-bottom: 3rem !important;
}
.slt_margin-bottom4rem {
	margin-bottom: 4rem !important;
}
.slt_margin-bottom5rem {
	margin-bottom: 5rem !important;
}
.slt_margin-bottom6rem {
	margin-bottom: 5rem !important;
}
.slt_margin-bottom7rem {
	margin-bottom: 7rem !important;
}
.slt_margin-bottom8rem {
	margin-bottom: 8rem !important;
}
.slt_margin-bottom10rem {
	margin-bottom: 10rem !important;
}
.slt_margin-bottom12rem {
	margin-bottom: 12rem !important;
}
.slt_margin-bottom15rem {
	margin-bottom: 15rem !important;
}
.slt_margin-bottom18rem {
	margin-bottom: 18rem !important;
}
.slt_margin-bottom25rem {
	margin-bottom: 25rem !important;
}
.slt_padding-top0rem {
	padding-top: 0rem !important;
}
.slt_padding-top1rem {
	padding-top: 1rem !important;
}
.slt_padding-top2rem {
	padding-top: 2rem !important;
}
.slt_padding-top3rem {
	padding-top: 3rem !important;
}
.slt_padding-top4rem {
	padding-top: 4rem !important;
}
.slt_padding-top5rem {
	padding-top: 5rem !important;
}
.slt_padding-bottom0rem {
	padding-bottom: 0rem !important;
}
.slt_padding-bottom1rem {
	padding-bottom: 1rem !important;
}
.slt_padding-bottom2rem {
	padding-bottom: 2rem !important;
}
.slt_padding-bottom3rem {
	padding-bottom: 3rem !important;
}
.slt_padding-bottom4rem {
	padding-bottom: 4rem !important;
}
.slt_padding-bottom5rem {
	padding-bottom: 5rem !important;
}
.slt_padding-right5rem {
	padding-right: 5rem !important;
}
@media screen and (max-width: 782px){
    .slt-sp_margin-bottom-3rem {
        margin-bottom: -3rem !important;
    }
    .slt-sp_margin-bottom-2rem {
        margin-bottom: -2rem !important;
    }
    .slt-sp_margin-bottom-1rem {
        margin-bottom: -1rem !important;
    }
    .slt-sp_margin-bottom0rem {
        margin-bottom: 0rem !important;
    }
    .slt-sp_margin-bottom1rem {
        margin-bottom: 1rem !important;
    }
    .slt-sp_margin-bottom2rem {
        margin-bottom: 2rem !important;
    }
    .slt-sp_margin-bottom3rem {
        margin-bottom: 3rem !important;
    }
    .slt-sp_margin-bottom4rem {
        margin-bottom: 4rem !important;
    }
    .slt-sp_margin-bottom5rem {
        margin-bottom: 5rem !important;
    }
    .slt-sp_margin-bottom6rem {
        margin-bottom: 6rem !important;
    }
    .slt-sp_margin-bottom7rem {
        margin-bottom: 7rem !important;
    }
    .slt-sp_margin-bottom8rem {
        margin-bottom: 8rem !important;
    }
    .slt-sp_margin-bottom10rem {
        margin-bottom: 10rem !important;
    }
    .slt-sp_margin-left-1rem {
        margin-left: -1rem !important;
    }
    .slt-sp_padding-top0rem {
        padding-top: 0rem !important;
    }
    .slt-sp_padding-top1rem {
        padding-top: 1rem !important;
    }
    .slt-sp_padding-top2rem {
        padding-top: 2rem !important;
    }
    .slt-sp_padding-top3rem {
        padding-top: 3rem !important;
    }
    .slt-sp_padding-top4rem {
        padding-top: 4rem !important;
    }
    .slt-sp_padding-top5rem {
        padding-top: 5rem !important;
    }
    .slt-sp_padding-left1rem {
        padding-left: 1rem !important;
    }
    .slt-sp_padding-bottom0rem {
        padding-bottom: 0rem !important;
    }
    .slt-sp_padding-bottom1rem {
        padding-bottom: 1rem !important;
    }
    .slt-sp_padding-bottom2rem {
        padding-bottom: 2rem !important;
    }
    .slt-sp_padding-bottom3rem {
        padding-bottom: 3rem !important;
    }
    .slt-sp_padding-bottom4rem {
        padding-bottom: 4rem !important;
    }
    .slt-sp_padding-bottom5rem {
        padding-bottom: 5rem !important;
    }
    .slt-sp_padding-bottom8rem {
        padding-bottom: 8rem !important;
    }
}

/*表示・非表示制御*/
/*スマホ / PC　表示切り替え用　ブロック*/
.slt-pc_diplay_block {
    display: block !important;
}
.slt-sp_diplay_block {
    display: none !important; 
}
/*スマホ / PC　表示切り替え用　インライン*/
.slt-pc_diplay_inline {
    display: inline !important;
}
.slt-sp_diplay_inline {
    display: none !important;
}
@media screen and (max-width: 782px){
/*スマホ / PC　表示切り替え用　ブロック*/
    .slt-pc_diplay_block {
        display: none !important;
    }
    .slt-sp_diplay_block {
        display: block !important;
    }
/*スマホ / PC　表示切り替え用　インライン*/
    .slt-pc_diplay_inline {
        display: none !important;
    }
    .slt-sp_diplay_inline {
        display: inline !important;
    }
}

/*フォント設定*/
.slt_font-family_mincho {
    font-family: "Times New Roman", "ヒラギノ明朝", "游明朝", "游明朝体", serif !important;
}
.slt_font-family_gothic {
    font-family: "Helvetica", "ヒラギノ角ゴシック", "游ゴシック", "游ゴシック体", sans-serif !important;
}

/*フォントカラー*/
.slt_font-color-black {
    color: #000000 !important;
}
.slt_font-color-white {
    color: #ffffff !important;
}
.slt_font-color-red {
    color: #CC3333 !important;
}
.slt_font-color-pink {
    color: #e4007f !important;
}
.slt_font-color-gold {
    color: #e0bc46 !important;
}
.slt_font-color-slt-blue {
    color: #0082c4 !important;
}
.slt_font-color-slt-orange {
    color: #fdb927 !important;
}
.slt_font-color-slt-lpred {
    color: #ea6173 !important;
}

/*フォントサイズ - 太さ調整*/
.slt_font-size50pc {
	font-size: 50% !important;
}
.slt_font-size75pc {
	font-size: 75% !important;
}
.slt_font-size80pc {
	font-size: 80% !important;
}
.slt_font-size125pc {
	font-size: 125% !important;
}
.slt_font-size150pc {
	font-size: 150% !important;
}
.slt_font-size175pc {
	font-size: 175% !important;
}
.slt_font-size200pc {
	font-size: 200% !important;
}
.slt_font-size250pc {
	font-size: 250% !important;
}
.slt_font-size1rem {
	font-size: 1rem !important;
}
.slt_font-size125rem {
	font-size: 1.25rem !important;
}
.slt_font-size15rem {
	font-size: 1.5rem !important;
}
.slt_font-size175rem {
	font-size: 1.75rem !important;
}
.slt_font-size2rem {
	font-size: 2rem !important;
}
.slt_font-size3rem {
	font-size: 3rem !important;
}
.slt_font-size4rem {
	font-size: 4rem !important;
}
.slt_font-size5rem {
	font-size: 5rem !important;
}
.slt_font-weight-normal {
    font-weight: normal !important;
}
.slt_font-weight-bold {
	font-weight: bold !important;
}
@media screen and (max-width: 782px){
    .slt-sp_font-size50pc {
        font-size: 50% !important;
    }
    .slt-sp_font-size75pc {
        font-size: 75% !important;
    }
    .slt-sp_font-size125pc {
        font-size: 125% !important;
    }
    .slt-sp_font-size150pc {
        font-size: 150% !important;
    }
    .slt-sp_font-size175pc {
        font-size: 175% !important;
    }
    .slt-sp_font-size200pc {
        font-size: 200% !important;
    }
    .slt-sp_font-size1rem {
        font-size: 1rem !important;
    }
    .slt-sp_font-size125rem {
        font-size: 1.25rem !important;
    }
    .slt-sp_font-size15rem {
        font-size: 1.5rem !important;
    }
    .slt-sp_font-size175rem {
        font-size: 1.75rem !important;
    }
    .slt-sp_font-size2rem {
        font-size: 2rem !important;
    }
    .slt-sp_font-size3rem {
        font-size: 3rem !important;
    }
    .slt-sp_font-size4rem {
        font-size: 4rem !important;
    }
    .slt-sp_font-size5rem {
        font-size: 5rem !important;
    }
}

/*テキストスタイル　位置調整、文字間、行間　など*/
.slt_text-center {
	text-align: center !important;
}
.slt_text-right {
	text-align: right !important;
}
.slt_text-left {
	text-align: left !important;
}
.slt_text-indent-1rem {
    text-indent: -1rem !important;
}
.slt_text-indent-15rem {
    text-indent: -1.5rem !important;
}
.slt_text-indent-2rem {
    text-indent: -2rem !important;
}
.slt_text-indent-5rem {
    text-indent: -5rem !important;
}
.slt_text_justify {
	text-align: justify !important;
	text-justify: inter-ideograph !important;
}
.slt_text-height1rem {
	line-height: 1rem !important;
}
.slt_text-height125rem {
	line-height: 1.25rem !important;
}
.slt_text-height15rem {
	line-height: 1.5rem !important;
}
.slt_text-height2rem {
	line-height: 2rem !important;
}
.slt_text-height25rem {
	line-height: 2.5rem !important;
}
.slt_text-height3rem {
	line-height: 3rem !important;
}
.slt_text-height35rem {
	line-height: 3.5rem !important;
}
.slt_text-height4rem {
	line-height: 4rem !important;
}
.slt_text-letterspace0 {
    letter-spacing: 0 !important;
}
.slt_text-letterspace025rem {
    letter-spacing: 0.25rem !important;
}
.slt_text-letterspace05rem {
    letter-spacing: 0.5rem !important;
}
.slt_text-letterspace1rem {
    letter-spacing: 1rem !important;
}
@media screen and (max-width: 782px){
    .slt-sp_text-center {
        text-align: center !important;
    }
    .slt-sp_text-right {
        text-align: right !important;
    }
    .slt-sp_text-left {
        text-align: left !important;
    }
    .slt-sp_text-letterspace0 {
        letter-spacing: 0 !important;
    }
    .slt-sp_text-indent-1rem {
        text-indent: -1rem !important;
    }
    .slt-sp_text-indent-15rem {
        text-indent: -1.5rem !important;
    }
    .slt-sp_text-indent-2rem {
        text-indent: -2rem !important;
    }
    .slt-sp_text-height1rem {
        line-height: 1rem !important;
    }
    .slt-sp_text-height125rem {
        line-height: 1.25rem !important;
    }
    .slt-sp_text-height15rem {
        line-height: 1.5rem !important;
    }
    .slt-sp_text-height2rem {
        line-height: 2rem !important;
    }
    .slt-sp_text-height25rem {
        line-height: 2.5rem !important;
    }
    .slt-sp_text-height3rem {
        line-height: 3rem !important;
    }
    .slt-sp_text-height35rem {
        line-height: 3.5rem !important;
    }
    .slt-sp_text-letterspace-5rem {
        letter-spacing: -0.5rem !important;
    }
    .slt-sp_text-letterspace0 {
        letter-spacing: 0 !important;
    }
    .slt-sp_text-letterspace025rem {
        letter-spacing: 0.25rem !important;
    }
    .slt-sp_text-letterspace05rem {
        letter-spacing: 0.5rem !important;
    }
    .slt-sp_text-letterspace1rem {
        letter-spacing: 1rem !important;
    }
}

/*タイトルスタイル　など*/
.slt_h2-title01_25rem {
    font-size: 2.5rem !important;
    color: #000000 !important;
    letter-spacing: 0.5rem !important;
    line-height: 2 !important;
    border: none !important;
}
.slt_h2-title02_2rem {
    font-size: 2rem !important;
    font-weight: bold !important;
    color: #000000 !important;
    letter-spacing: 1rem !important;
    line-height: 1 !important;
    border: none !important;
}
.slt_h2-title02_2rem-white {
    font-size: 2rem !important;
    font-weight: bold !important;
    color: #ffffff !important;
    letter-spacing: 1rem !important;
    line-height: 1 !important;
    border: none !important;
}
.slt_h2-title03_15rem {
    font-size: 1.5rem !important;
    font-weight: bold !important;
    color: #000000 !important;
    letter-spacing: 0.25rem !important;
    line-height: 1.5 !important;
    border: none !important;
}
.slt_h3-title01_1rem {
    font-size: 1rem !important;
    color: #000000 !important;
    letter-spacing: 0.35rem !important;
    line-height: 2 !important;
    border: none !important;
}
.slt_h3-title01_1rem-white {
    font-size: 1rem !important;
    color: #ffffff !important;
    letter-spacing: 0.35rem !important;
    line-height: 2 !important;
    border: none !important;
}
@media screen and (max-width: 782px){
    .slt-sp_h2-title01_2rem {
        font-size: 2rem !important;
        letter-spacing: 1rem !important;
        line-height: 1.5 !important;
    }
    .slt-sp_h2-title02_15rem {
        font-size: 1.5rem !important;
        letter-spacing: 1rem !important;
        line-height: 1.5 !important;
    }
    .slt-sp_h2-title03_15rem {
        font-size: 1.5rem !important;
        letter-spacing: 0.35rem !important;
        line-height: 1.5 !important;
    }
}

/*画像サイズ調整*/
.slt_img-size30pc {
    width: 30% !important;
    height: auto !important;
}
.slt_img-size40pc {
    width: 40% !important;
    height: auto !important;
}
.slt_img-size50pc {
    width: 50% !important;
    height: auto !important;
}
.slt_img-size60pc {
    width: 60% !important;
    height: auto !important;
}
.slt_img-size70pc {
    width: 70% !important;
    height: auto !important;
}
.slt_img-size80pc {
    width: 80% !important;
    height: auto !important;
}
.slt_img-size90pc {
    width: 90% !important;
    height: auto !important;
}
@media screen and (max-width: 782px){
    .slt-sp_img-size30pc {
        width: 30% !important;
        height: auto !important;
    }
    .slt-sp_img-size40pc {
        width: 40% !important;
        height: auto !important;
    }
    .slt-sp_img-size50pc {
        width: 50% !important;
        height: auto !important;
    }
    .slt-sp_img-size60pc {
        width: 60% !important;
        height: auto !important;
    }
    .slt-sp_img-size70pc {
        width: 70% !important;
        height: auto !important;
    }
    .slt-sp_img-size80pc {
        width: 80% !important;
        height: auto !important;
    }
    .slt-sp_img-size90pc {
        width: 90% !important;
        height: auto !important;
    }
}

/*ボーダースタイル*/
.slt_border-bottom_1px-blue {
    border-bottom: 1px solid #000000;
}

/*ボタンデザイン*/
.slt_btn-design01 {
    font-size: 1.35rem !important;
    font-weight: 500;
    letter-spacing: 0.15rem !important;
    color: #ffffff;
    border: 1px solid #ffffff;
    border-radius: 3rem;
    padding: 2rem 3.5rem;
    transition: 0.75s;
    background: linear-gradient(60deg, #ea6173, #fdb927);
    box-shadow: 0px 6px 0px 0px #ffffff;
}
.slt_btn-design01:hover {
    color: #ea6173;
    border: 1px solid #ea6173;
    background: #ffffff;
    box-shadow: 0px 6px 0px 0px #ea6173;
}
.slt_btn-design02 {
    font-size: 2.25rem !important;
    font-weight: 500;
    letter-spacing: 0.15rem !important;
    color: #ffffff;
    border: 1px solid #ffffff;
    border-radius: 5rem;
    padding: 2rem 8rem;
    transition: 0.75s;
    background: linear-gradient(60deg, #ea6173, #fdb927);
    box-shadow: 0px 6px 0px 0px #ffffff;
}
.slt_btn-design02:hover {
    color: #ea6173;
    border: 1px solid #ea6173;
    background: #ffffff;
    box-shadow: 0px 6px 0px 0px #ea6173;
}

@media screen and (max-width: 782px){
    .slt_btn-design01 {
        width: 100%;
        font-size: 1.5rem !important;
        color: #ffffff;
        border-radius: 2rem;
        padding: 2rem 0;
    }
    .slt_btn-design02 {
        font-size: 2rem !important;
        padding: 1.75rem 6.5rem;
        transition: 0.75s;
    }
}

/* //////////////////////////////////////////////// */
/* /////////////////// LP独自CSS /////////////////// */
/* //////////////////////////////////////////////// */

/* フォント設定　*/
.slt_lp-font01_dm {
    font-family: "DM Sans", sans-serif !important;
}
.slt_lp-font02_noto {
    font-family: "Noto Sans JP", sans-serif !important;
}
.slt_lp-font03_zen-kaku {
    font-family: "Zen Kaku Gothic New", sans-serif !important;
}
.slt_lp-font04_zen-maru {
    font-family: "Zen Maru Gothic", serif !important;
}
.slt_lp-font-weight400_rg {
    font-weight: 400 !important;
}
.slt_lp-font-weight500_md {
    font-weight: 500 !important;
}
.slt_lp-font-weight700_bd {
    font-weight: 700 !important;
}

/*　width設定　コンテンツ幅 1200px　*/
.slt_content-width1200px {
    max-width: 1200px !important;
}
@media screen and (max-width: 782px){
    .slt_content-width1200px {
        width: 100% !important;
        max-width: 100% !important;
    }
}

/*　レイアウト調整　*/
.slt_content-margin0auto {
    margin: 0 auto !important;
}

/* 追加装飾　*/
.slt_blue-underline_wavy {
    text-decoration: underline 1px wavy #0082c4;
    text-underline-offset: 0.5rem;
}
.slt_red-underline_wavy {
    text-decoration: underline 1px wavy #ea6173;
    text-underline-offset: 0.5rem;
}
.slt_blue-border-bottom_dot {
    border-bottom: 1px dotted #0082c4;
}
.slt_text-background-yellow {
    background-color: #fff8d9;
    padding: 0.1rem 0.1rem 0.1rem 0.1rem;
}

/* フォームエラー調整 */
.formError {
    width: 270px !important;
    left: 300px !important;
    position: sticky !important;
    margin-top: -38px !important;
}
.formError .formErrorContent, .formErrorArrow div {
    width: 255px !important;
}
.formErrorArrow div {
    display: none !important;
}
.formError .formErrorContent, .formErrorArrow div {
    background: #ff643b !important;
    box-shadow: none !important;
    border: none !important;
}
@media screen and (max-width: 782px){
    .formError {
    width: 80% !important;
    left: 0 !important;
    margin-top: -38px !important;
    }
    .formError .formErrorContent, .formErrorArrow div {
        width: 80% !important;
    }
}

/* ============================================================
   パララックス
   ============================================================ */
/* 装飾画像用：クリックを貫通させる */
.slt_parallax-img {
    pointer-events: none;
    will-change: transform;
}
/* 背景画像用 */
.slt_parallax-bg {
    pointer-events: none;
    background-attachment: scroll; /* iOS対応のためfixedは使わない */
    will-change: background-position-y;
}

/* ////////////////////////////////////////////////////////////*/
/* ////////////////////////////////////////////////////////////*/
/* ////////////////////////////////////////////////////////////*/

/* ============================================================
    キャンペーンレイアウト 260625
   ============================================================ */

/* 横帯背景カラー：画面横幅全体に敷く帯（::before で全幅化） */
.slt-entry-cta_band {
    position: relative;
    width: 100%;
    margin: 3rem 0 3rem 0;
    padding: 6rem 0 6rem 0;
    box-sizing: border-box;
    background-color: #e3f7ff;
}
.slt-entry-cta_band::before {
    content: "";
    position: absolute;
    top: 0rem;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    height: 100%;
    background-image: url(../img/cp2026sm_parts/parts_bg.jpg);
    background-repeat: no-repeat;
    background-size: 1300px;
    background-position: top;
    z-index: 0;
}
/* コンテンツ */
.slt-entry-cta_inner {
    position: relative;
    z-index: 1;
    width: 980px;
    margin: 0 auto;
}
.slt-entry-cta_titlearea {
    position: relative;
    padding: 0rem 2.5rem 1.5rem;
}
/* <picture> ラッパーをレイアウトから透過させ、img を直下要素として扱う */
.slt-entry-cta_titlearea picture {
    display: contents;
}
.slt-entry-cta_heading {
    display: block;
    width: 880px;
    height: auto;
    margin: 0 auto 2rem auto;
}
.slt-entry-cta_titlerow {
    display: flex;
    flex-wrap: nowrap;
    gap: 3rem;
}
.slt-entry-cta_titlerow-left {
    width: 300px;
}
.slt-entry-cta_titlerow-left img {
    width: 100%;
    height: auto;
}
.slt-entry-cta_titlerow-right {
    width: 680px;
    display: flex;
    flex-direction: column;
}
.slt-entry-cta_subheading {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 0 2rem 0;
}
.slt-entry-cta_lead {
    margin: 0;
    line-height: 2rem;
}

/* 2択カード */
.slt-entry-cta_cards {
    display: flex;
    flex-wrap: nowrap;
    gap: 2rem;
    justify-content: center;
    padding: 0 0 2.5rem 0;
}
.slt-entry-cta_card {
    flex: 1 1 50%;
    background-color: #ffffff;
    padding: 2.5rem 2rem 2.75rem;
    text-align: center;
    box-sizing: border-box;
    border-radius: 1rem;
}
.slt-entry-cta_card-title {
    font-weight: 600 !important;
    font-size: 1.75rem;
    line-height: 2.2rem;
    margin: 0 0 2.5rem 0;
}
.slt-entry-cta_card-desc {
    font-size: 1.25rem;
    line-height: 2.4rem;
    margin: 0 0 2rem;
}
.slt-entry-cta_card-shadow01 { 
  box-shadow: 00px 0px 20px 0px rgba(234, 97, 115, 0.45);
}
.slt-entry-cta_card-shadow02 { 
  box-shadow: 00px 0px 20px 0px rgba(0, 130, 196, 0.45);
}

/* 赤の「エントリーする」ボタン（hover挙動は LP の他ボタンと同じ動き） */
.slt-entry-cta_btn {
    display: block;
    width: 100%;
    font-size: 2rem !important;
    font-weight: 500;
    letter-spacing: 0.15rem !important;
    color: #ffffff !important;
    border-radius: 1rem;
    padding: 1.5rem 0;
    transition: 0.75s;         /* ← slt_btn-design と同一の動き */
    cursor: pointer;
}

.slt-entry-cta_btn-col01 {
    background: linear-gradient(60deg, #e5004f, #ea6173);
    border: 1px solid #ea6173;
    box-shadow: 0px 6px 0px 0px #ffffff;
}
.slt-entry-cta_btn-col02 {
    background: linear-gradient(60deg, #0082c4, #0ea3dd);
    border: 1px solid #0082c4;
    box-shadow: 0px 6px 0px 0px #ffffff;
}

.slt-entry-cta_btn-col01:hover {
    color: #ea6173 !important;
    background: #ffffff;
    border: 1px solid #ea6173;
    box-shadow: 0px 6px 0px 0px #ea6173;
}
.slt-entry-cta_btn-col02:hover {
    color: #0082c4 !important;
    background: #ffffff;
    border: 1px solid #0082c4;
    box-shadow: 0px 6px 0px 0px #0082c4;
}

/* エントリーから設置までの流れ（1本の白帯／区切りは画像） */
.slt-entry-cta_flow {
    padding: 0 0 0 0;
}
.slt-entry-cta_flow-title {
    text-align: center;
    font-size: 1.25rem;
    font-weight: 500 !important;
    margin: 0 0 1.5rem;
}
.slt-entry-cta_flow-bar {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    background-color: #ffffff;
    border-radius: 1rem;
    padding: 1rem 3rem 1rem 3rem;
}
/* <picture> ラッパーを透過させ、区切り画像 img を直下要素として扱う */
.slt-entry-cta_flow-bar picture {
    display: contents;
}
.slt-entry-cta_flow-step {
    min-width: 0;
    text-align: center;
    font-size: 1rem;
    line-height: 1.8rem;
}
.slt-entry-cta_flow-sep {
    width: 1.25rem;
    height: auto;
    align-self: center;
}
.slt-entry-cta_flow-note {
    display: inline-block;
    margin-top: 0.4rem;
    padding: 0.1rem 0.6rem;
    border: 1px solid currentColor;
    border-radius: 1rem;
    font-size: 0.9rem;
    line-height: 1.6rem;
}

/* 注釈 */
.slt-entry-cta_notes {
    margin: 2rem 0 0 0;
}
.slt-entry-cta_notes li {
    font-size: 0.75rem;
    line-height: 0.9rem;
    text-indent: -1em;
    padding-left: 1em !important;
}

/* --- 2択エントリー SP --- */
@media screen and (max-width: 782px){
    .slt-entry-cta_band {
        padding: 4rem 1rem 3rem 1rem;
    }
    .slt-entry-cta_band::before {
        top: 0;
        height: 2000px;
        background-image: url(../img/cp2026sm_parts/parts_bg_sp.jpg);
        background-repeat: no-repeat;
        background-size: 100%;
        background-position: top;
        z-index: 0;
    }
    .slt-entry-cta_inner {
        width: auto;
        padding: 0 0 2.5rem;
    }
    .slt-entry-cta_titlearea {
        padding: 2.5rem 0 1.25rem 0;
    }
    .slt-entry-cta_heading {
        width: 100%;
        margin: 0 0 -1.5rem 0;
    }
    .slt-entry-cta_titlerow {
        flex-wrap: wrap;
        align-items: flex-start; 
        gap: 0.75rem;
    }
    .slt-entry-cta_titlerow-left {
        width: 100%;
        align-self: flex-start;
    }
    .slt-entry-cta_titlerow-left img {
        height: auto;
    }
    .slt-entry-cta_titlerow-right {
        width: 100%;
        flex: 1 1 auto;
        min-width: 0;
    }
    .slt-entry-cta_lead {
        margin: 2rem 0 3rem 0;
        padding: 0 1rem 0 1rem;
        line-height: 2rem;
    }
    .slt-entry-cta_subheading {
        margin: 0 0 1rem 0;
    }
    .slt-entry-cta_cards {
        flex-wrap: wrap; 
        gap: 1.5rem;
        padding: 0 0.75rem;
    }
    .slt-entry-cta_card {
        flex: 1 1 100%;
    }

    .slt-entry-cta_card-title {
        font-weight: 600 !important;
        font-size: 1.75rem;
        line-height: 3rem;
        margin: -0.5rem 0 1.5rem 0;
    }
    .slt-entry-cta_card-desc {
        font-size: 1.25rem;
        line-height: 2.25rem;
        margin: 0 0 1.5rem 0;
    }


    .slt-entry-cta_btn {
        font-size: 1.5rem !important;
    }
    .slt-entry-cta_flow {
        padding: 2rem 1.25rem 0;
    }
    .slt-entry-cta_flow-bar {
        flex-direction: column;
        gap: 0.35rem;
        padding: 1.25rem;
    }
    .slt-entry-cta_flow-step {
        width: 100%;
    }
    .slt-entry-cta_flow-sep {
        width: 1.25rem;
    }
    .slt-entry-cta_notes {
        font-size: 0.5rem;
        padding: 1.25rem 1.25rem 0;
    }
}

/* ============================================================
    キャンペーンレイアウト　フォーム項目追加　260625
   ============================================================ */

.slt-entry-radio_wrap {
    position:relative;
    width: 1000px;
    height: 900px;
    box-sizing: border-box;
    border-radius: 2rem;
    padding: 4rem 1.5rem 7rem;
    background-image: url(../img/cp2026sm_parts/parts_bg.jpg); 
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center bottom;
    margin: 0 auto 6rem auto;
}

.slt-entry-radio_wrap::after{
    content:"";
    position:absolute;
    left:50%;
    bottom:-2.4rem;
    transform:translateX(-50%);
    border-style:solid;
    border-width:3rem 5rem 0 5rem;
    border-color:#e3f7ff transparent transparent transparent;
}

.slt-entry-radio_inner {
    width: 100%;
    margin: 0 auto;
    position: relative;
    margin: 0 auto;
}

.slt-entry-radio_titlearea {
    position: relative;
    text-align: center;
}
/* <picture> ラッパーをレイアウトから透過させ、img を直下要素として扱う */
.slt-entry-radio_titlearea picture {
    display: contents;
}
.slt-entry-radio_ribbon {
    width: 880px;
    height: auto;
}

.slt-entry-radio_lead {
    padding: 0 3rem 3rem;
    line-height: 2rem;
}

/* 白枠：ラジオ選択ボックス */
.slt-entry-radio_box {
    background-color: #ffffff;
    max-width: 880px;
    margin: 0 auto;
    padding: 2rem 2.5rem;
    box-sizing: border-box;
    border-radius: 1rem;
}

/* 1選択肢＝クリック可能なラベル（枠全体で選択できる） */
.slt-entry-radio_option {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.75rem 0.5rem;
    cursor: pointer;
    line-height: 2rem;
}
.slt-entry-radio_option:hover {
    background-color: #f5f5f5;
}

/* ネイティブradioは視覚的に隠す（display:noneは使わずフォーカス可能に） */
.slt-entry-radio_input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    margin: 0;
}
/* ●印（カスタムラジオ） */
.slt-entry-radio_mark {
    flex: 0 0 auto;
    display: inline-block;
    width: 1.6rem;
    height: 1.6rem;
    border: 1px solid #0082c4;
    border-radius: 50%;
    background-color: #ffffff;
    position: relative;
    box-sizing: border-box;
}
.slt-entry-radio_input:checked + .slt-entry-radio_mark::after {
    content: "";
    position: absolute;
    inset: 0.25rem;
    border-radius: 50%;
    background-color: #0082c4;
}
/* キーボードフォーカスの可視化（アクセシビリティ） */
.slt-entry-radio_input:focus-visible + .slt-entry-radio_mark {
    outline: 2px solid #0082c4;
    outline-offset: 2px;
}

/* ボックス下の説明文（文字色は未指定） */
.slt-entry-radio_note {
    padding: 2rem 3rem 0 3rem;
    line-height: 2rem;
}

/* --- ラジオ選択 SP --- */
@media screen and (max-width: 782px){
    .slt-entry-radio_wrap {
        width: auto;
        height: auto;
        margin: 0 1rem 6rem 1rem;
        padding: 3rem 1rem 3.5rem 1rem;
        background-image: url(../img/cp2026sm_parts/parts_bg_sp.jpg);    background-repeat: no-repeat;
        background-size: cover;
        background-position: bottom;
    }
    .slt-entry-radio_wrap::after {
        bottom: -2.5rem;
        border-width: 3rem 4rem 0 4rem;
    }
    .slt-entry-radio_titlearea {
        padding: 0.5rem 0 1.25rem 0;
        min-height: 6rem;
    }
    .slt-entry-radio_ribbon {
        width: 100%; 
    }
    .slt-entry-radio_lead {
        padding: 0 1rem 1.5rem;
    }
    .slt-entry-radio_box {
        padding: 1.5rem 1.25rem;
    }
    .slt-entry-radio_option {
        align-items: flex-start;
        gap: 0.75rem;
        line-height: 1.9rem;
    padding: 0.75rem 0.35rem;
    line-height: 2rem;
    }
    .slt-entry-radio_mark {
        margin-top: 0.2rem;
    }
    .slt-entry-radio_note {
        padding: 1.5rem 1rem 0;
    }
}

/* ============================================================
    キャンペーンレイアウト 追随型エントリーボタン　260625
   ============================================================ */
.slt_float-entry-btn_wrap {
    position: fixed;
    right: 26px;
    bottom: 26px;
    z-index: 990;  /* ドロワー(99999)・スティッキー(9990)より下／本文より上 */
    width: 180px;
    opacity: 0;
    transform: translateY(200%);
    transition: transform 0.5s ease, opacity 0.35s ease;
    pointer-events: none;
}
.slt_float-entry-btn_wrap.is-visible {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}
/* フォーム領域が画面内にある間は隠す（is-visibleより後に置いて優先させる） */
.slt_float-entry-btn_wrap.is-form-hidden {
    opacity: 0;
    transform: translateY(200%);
    pointer-events: none;
}
.slt_float-entry-btn {
    display: block;
    width: 100%;
    line-height: 0;
    cursor: pointer;
    transition: transform 0.3s ease, opacity 0.3s ease;
}
.slt_float-entry-btn img {
    width: 100%;
    height: auto;
    display: block;
    filter: drop-shadow(0 0 30px rgba(255,255,255,0.5));
}
.slt_float-entry-btn:hover {
    transform: translateY(-15px);
    opacity: 0.7 !important;
}
@media screen and (max-width: 782px) {
    .slt_float-entry-btn_wrap {
        transform: translateY(200%);
    }
    .slt_float-entry-btn_wrap {
        right: 12px;
        bottom: 68px;        /* SP固定フッター（高さ約60px）に被らない位置 */
        width: 125px;
    }
}