.elementor-26171 .elementor-element.elementor-element-f699a80{--display:flex;--min-height:2000px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-26171 .elementor-element.elementor-element-7fb14f3{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-26171 .elementor-element.elementor-element-eaad110{--display:flex;}.elementor-26171 .elementor-element.elementor-element-984c281{--spacer-size:10px;}.elementor-26171 .elementor-element.elementor-element-3fdd2c4{--spacer-size:30px;}.elementor-26171 .elementor-element.elementor-element-bfca6a0{--e-image-carousel-slides-to-show:1;}.elementor-26171 .elementor-element.elementor-element-bfca6a0 .swiper-pagination-bullet{--swiper-pagination-bullet-horizontal-gap:7px;--swiper-pagination-bullet-vertical-gap:7px;width:10px;height:10px;}.elementor-26171 .elementor-element.elementor-element-bfca6a0 .elementor-image-carousel-wrapper .elementor-image-carousel .swiper-slide-image{border-radius:10px 10px 10px 10px;}.elementor-26171 .elementor-element.elementor-element-853a400{--spacer-size:30px;}.elementor-26171 .elementor-element.elementor-element-30529ca{--spacer-size:40px;}.elementor-26171 .elementor-element.elementor-element-eeb3ddb.elementor-element{--align-self:center;}.elementor-26171 .elementor-element.elementor-element-2fc5458{--spacer-size:20px;}.elementor-26171 .elementor-element.elementor-element-19f785b .ha-news-ticker-wrapper span.ha-news-ticker-sticky-title{background-color:#FFFFFF;border-style:solid;border-width:0px 1px 0px 0px;border-color:#E8E8E8;border-radius:0px 0px 0px 0px;padding:7px 7px 7px 7px;}.elementor-26171 .elementor-element.elementor-element-19f785b{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-26171 .elementor-element.elementor-element-19f785b > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-26171 .elementor-element.elementor-element-19f785b.elementor-element{--align-self:center;}.elementor-26171 .elementor-element.elementor-element-19f785b  .ha-news-ticker-wrapper  span.ha-news-ticker-sticky-title{left:0px;right:auto;}.elementor-26171 .elementor-element.elementor-element-19f785b .ha-news-ticker-wrapper .ha-news-ticker-item{margin-right:25px;}.elementor-26171 .elementor-element.elementor-element-19f785b .ha-news-ticker-wrapper .ha-news-ticker-item:last-child{margin-right:0;}.elementor-26171 .elementor-element.elementor-element-19f785b .ha-news-ticker-wrapper{border-style:solid;border-width:1px 0px 1px 0px;border-color:#E8E8E8;border-radius:0px 0px 0px 0px;}.elementor-26171 .elementor-element.elementor-element-19f785b .ha-news-ticker-wrapper  span.ha-news-ticker-sticky-title{color:var( --e-global-color-primary );font-family:"Montserrat", Sans-serif;font-size:14px;font-weight:700;text-transform:uppercase;}.elementor-26171 .elementor-element.elementor-element-19f785b .ha-news-ticker-wrapper  li.ha-news-ticker-item a{color:#333333;}.elementor-26171 .elementor-element.elementor-element-19f785b .ha-news-ticker-wrapper  li.ha-news-ticker-item .ha-news-ticker-title{font-weight:300;}.elementor-26171 .elementor-element.elementor-element-92904e1{--display:grid;--e-con-grid-template-columns:repeat(4, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--gap:10px 10px;--row-gap:10px;--column-gap:10px;--grid-auto-flow:row;}.elementor-26171 .elementor-element.elementor-element-2fa1c04{--display:flex;}.elementor-26171 .elementor-element.elementor-element-f842769{--display:flex;}.elementor-26171 .elementor-element.elementor-element-a0cc3ed{--spacer-size:40px;}.elementor-26171 .elementor-element.elementor-element-111e16e{--spacer-size:40px;}.elementor-26171 .elementor-element.elementor-element-4830a3c{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--gap:10px 10px;--row-gap:10px;--column-gap:10px;--grid-auto-flow:row;}.elementor-26171 .elementor-element.elementor-element-e678cfe{--spacer-size:50px;}.elementor-26171 .elementor-element.elementor-element-b4fd907{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:40px;--margin-right:0px;}.elementor-26171 .elementor-element.elementor-element-f157c71{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-26171 .elementor-element.elementor-element-8bdb104{--spacer-size:50px;}.elementor-26171 .elementor-element.elementor-element-d2c1efd{--display:flex;}.elementor-26171 .elementor-element.elementor-element-04e8f36{width:var( --container-widget-width, 90% );max-width:90%;--container-widget-width:90%;--container-widget-flex-grow:0;}.elementor-26171 .elementor-element.elementor-element-073f54c{--spacer-size:25px;}.elementor-26171 .elementor-element.elementor-element-370956d{--spacer-size:30px;}.elementor-26171 .elementor-element.elementor-element-0c1a3ac > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-26171 .elementor-element.elementor-element-6d18be7{--spacer-size:5px;}.elementor-26171 .elementor-element.elementor-element-d13abce{width:var( --container-widget-width, 95% );max-width:95%;--container-widget-width:95%;--container-widget-flex-grow:0;}.elementor-26171 .elementor-element.elementor-element-d13abce.elementor-element{--align-self:center;}.elementor-26171 .elementor-element.elementor-element-5992ae8{--spacer-size:30px;}.elementor-26171 .elementor-element.elementor-element-7e01f29{width:var( --container-widget-width, 95% );max-width:95%;--container-widget-width:95%;--container-widget-flex-grow:0;}.elementor-26171 .elementor-element.elementor-element-7e01f29.elementor-element{--align-self:center;}.elementor-26171 .elementor-element.elementor-element-be4d8d6{--display:flex;}.elementor-26171 .elementor-element.elementor-element-3545c1e{--spacer-size:30px;}.elementor-26171 .elementor-element.elementor-element-76581b7{--display:flex;}.elementor-26171 .elementor-element.elementor-element-74486ef{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--gap:0px 10px;--row-gap:0px;--column-gap:10px;--grid-auto-flow:row;}.elementor-26171 .elementor-element.elementor-element-5c7b30c img{border-style:solid;border-width:1px 1px 1px 1px;}.elementor-26171 .elementor-element.elementor-element-416660d img{border-style:solid;border-width:1px 1px 1px 1px;}.elementor-26171 .elementor-element.elementor-element-c01de19{--display:flex;}.elementor-26171 .elementor-element.elementor-element-11dd273{--spacer-size:10px;}.elementor-26171 .elementor-element.elementor-element-908e1c8{--e-image-carousel-slides-to-show:2;width:var( --container-widget-width, 1100% );max-width:1100%;--container-widget-width:1100%;--container-widget-flex-grow:0;}.elementor-26171 .elementor-element.elementor-element-908e1c8 .elementor-image-carousel-wrapper .elementor-image-carousel .swiper-slide-image{border-style:solid;border-width:1px 1px 1px 1px;}.elementor-26171 .elementor-element.elementor-element-10082d8{--display:flex;}body.elementor-page-26171:not(.elementor-motion-effects-element-type-background), body.elementor-page-26171 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-d6cea4e );}:root{--page-title-display:none;}body.elementor-page-26171{margin:0px 0px 0px 0px;}@media(min-width:600px){.elementor-26171 .elementor-element.elementor-element-f699a80{--width:1100px;}.elementor-26171 .elementor-element.elementor-element-7fb14f3{--width:680px;}.elementor-26171 .elementor-element.elementor-element-b4fd907{--width:380px;}.elementor-26171 .elementor-element.elementor-element-d2c1efd{--width:95%;}.elementor-26171 .elementor-element.elementor-element-74486ef{--content-width:1100px;}.elementor-26171 .elementor-element.elementor-element-c01de19{--content-width:1100px;}.elementor-26171 .elementor-element.elementor-element-10082d8{--content-width:1100px;}}@media(max-width:1024px) and (min-width:600px){.elementor-26171 .elementor-element.elementor-element-b4fd907{--width:100%;}}@media(max-width:1024px){.elementor-26171 .elementor-element.elementor-element-92904e1{--grid-auto-flow:row;}.elementor-26171 .elementor-element.elementor-element-4830a3c{--grid-auto-flow:row;}.elementor-26171 .elementor-element.elementor-element-74486ef{--grid-auto-flow:row;}}@media(max-width:599px){.elementor-26171 .elementor-element.elementor-element-f699a80{--width:95%;}.elementor-26171 .elementor-element.elementor-element-3fdd2c4{--spacer-size:15px;}.elementor-26171 .elementor-element.elementor-element-853a400{--spacer-size:15px;}.elementor-26171 .elementor-element.elementor-element-30529ca{--spacer-size:20px;}.elementor-26171 .elementor-element.elementor-element-92904e1{--e-con-grid-template-columns:repeat(2, 1fr);--grid-auto-flow:row;}.elementor-26171 .elementor-element.elementor-element-a0cc3ed{--spacer-size:20px;}.elementor-26171 .elementor-element.elementor-element-111e16e{--spacer-size:20px;}.elementor-26171 .elementor-element.elementor-element-4830a3c{--e-con-grid-template-columns:repeat(2, 1fr);--grid-auto-flow:row;}.elementor-26171 .elementor-element.elementor-element-b4fd907{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-26171 .elementor-element.elementor-element-8bdb104{--spacer-size:20px;}.elementor-26171 .elementor-element.elementor-element-d2c1efd{--width:98%;}.elementor-26171 .elementor-element.elementor-element-073f54c{--spacer-size:20px;}.elementor-26171 .elementor-element.elementor-element-5fa94cb.elementor-element{--align-self:center;}.elementor-26171 .elementor-element.elementor-element-370956d{--spacer-size:20px;}.elementor-26171 .elementor-element.elementor-element-6d18be7{--spacer-size:1px;}.elementor-26171 .elementor-element.elementor-element-5992ae8{--spacer-size:20px;}.elementor-26171 .elementor-element.elementor-element-3545c1e{--spacer-size:1px;}.elementor-26171 .elementor-element.elementor-element-74486ef{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-26171 .elementor-element.elementor-element-c01de19{--content-width:94%;}.elementor-26171 .elementor-element.elementor-element-10082d8{--content-width:94%;}}/* Start custom CSS for html, class: .elementor-element-00144fa *//* --- 1. フォント表示の最適化設定 --- */
@font-face {
    font-family: 'Material Symbols Outlined';
    font-style: normal;
    /* Webフォントが読み込まれるまで代替文字を表示し、表示速度を上げる */
    font-display: swap; 
}

/* --- 2. 見出し全体のスタイル --- */
body .heading-209 { 
    display: flex;         /* アイコンと文字を垂直中央で揃えるために追加 */
    align-items: center;    /* アイコンと文字を垂直中央で揃えるために追加 */
    padding: 0 10px;
    border-bottom: 3px solid #fff000;
    background-color: #ffffff;
    color: #000000;
    
    font-size: 25px; 
    font-weight: bold;
    line-height: 2.0; 
    margin-top: 0;
    margin-bottom: 15px;
    
    /* 文字のガタつきを抑える設定 */
    font-optical-sizing: auto;
}

/* --- 3. アイコンの個別設定 --- */
.heading-209 .heading-209-icon { 
    color: #fff000; 
    font-size: 40px; 
    padding: 4px;
    margin-right: 8px;      /* アイコンと文字の間に少し隙間を作る */
    
    /* 警告対策: Webフォントを強制指定 */
    font-family: 'Material Symbols Outlined';
    font-variation-settings:
        'FILL' 0,
        'wght' 400,
        'GRAD' 0,
        'opsz' 40; /* フォントサイズに合わせる */
}

/* --- 4. レスポンシブ (スマホ・タブレット対応) --- */
@media (max-width: 900px) {
    body .heading-209 { 
        font-size: 22px; 
        line-height: 1.4; 
    }
}

@media (max-width: 680px) {
    body .heading-209 { 
        font-size: 20px; 
        line-height: 1.8; 
    }
    
    .heading-209 .heading-209-icon { 
        font-size: 25px; 
        font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 25;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-de72a34 *//* --- 1. フォント表示の最適化設定 --- */
@font-face {
    font-family: 'Material Symbols Outlined';
    font-style: normal;
    /* Webフォントが読み込まれるまで代替文字を表示し、表示速度を上げる */
    font-display: swap; 
}

/* --- 2. 見出し全体のスタイル --- */
body .heading-209 { 
    display: flex;         /* アイコンと文字を垂直中央で揃えるために追加 */
    align-items: center;    /* アイコンと文字を垂直中央で揃えるために追加 */
    padding: 0 10px;
    border-bottom: 3px solid #fff000;
    background-color: #ffffff;
    color: #000000;
    
    font-size: 25px; 
    font-weight: bold;
    line-height: 2.0; 
    margin-top: 0;
    margin-bottom: 15px;
    
    /* 文字のガタつきを抑える設定 */
    font-optical-sizing: auto;
}

/* --- 3. アイコンの個別設定 --- */
.heading-209 .heading-209-icon { 
    color: #fff000; 
    font-size: 40px; 
    padding: 4px;
    margin-right: 8px;      /* アイコンと文字の間に少し隙間を作る */
    
    /* 警告対策: Webフォントを強制指定 */
    font-family: 'Material Symbols Outlined';
    font-variation-settings:
        'FILL' 0,
        'wght' 400,
        'GRAD' 0,
        'opsz' 40; /* フォントサイズに合わせる */
}

/* --- 4. レスポンシブ (スマホ・タブレット対応) --- */
@media (max-width: 900px) {
    body .heading-209 { 
        font-size: 22px; 
        line-height: 1.4; 
    }
}

@media (max-width: 680px) {
    body .heading-209 { 
        font-size: 20px; 
        line-height: 1.8; 
    }
    
    .heading-209 .heading-209-icon { 
        font-size: 25px; 
        font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 25;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e08ad56 *//* --- 既存のPC用設定 --- */
.topsaidebar01 {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    width: 100%;
}

.topsaidebar01 img {
    width: 361px;
    height: 142px;
    object-fit: cover;
    max-width: 100%;
    display: block;
}

/* --- モバイル用の設定（画面幅が768px以下の場合） --- */
@media screen and (max-width: 768px) {
    .topsaidebar01 {
        gap: 10px; /* スマホでは少し隙間を広げると見やすい */
        padding: 0 10px; /* 左右に少し余白を作る */
    }

    .topsaidebar01 img {
        /* スマホでは横幅をいっぱい（または指定の割合）にする */
        width: 100%; 
        height: auto; /* 高さを自動調整にしてアスペクト比を維持 */
        max-width: 400px; /* 大きくなりすぎないように制限 */
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-5fa94cb *//* ==================================== */
/* 1. デスクトップ用のスタイル（基本設定） */
/* ==================================== */
.image-container {
    /* Flexboxを使って縦に並べる設定 */
    display: flex;
    flex-direction: column; 
    
    /* 画像間の隙間を10pxに設定 */
    gap: 10px; 
    
    /* コンテナの幅の例（必要に応じて調整してください） */
    max-width: 380px; 
    margin: 0 auto;
}

.image-container img {
    width: 100%;
    height: auto;
    display: block;
}


/* ==================================== */
/* 2. モバイル用のスタイル（768px以下で適用） */
/* ==================================== */
@media (max-width: 768px) {
    .image-container {
        /* 縦並びを解除し、横並びにする */
        flex-direction: row; 
        
        /* 横スクロールを有効にする */
        overflow-x: auto; 
        overflow-y: hidden; 
        
        /* 画像が縮まないように折り返しを禁止 */
        flex-wrap: nowrap; 
        
        /* スクロール時に1枚ずつピタッと止まるようにする */
        scroll-snap-type: x mandatory; 
        -webkit-overflow-scrolling: touch; 
        
        /* 画面幅いっぱいに設定し、左右にスクロール用の余白を設ける */
        width: 100%; 
        padding: 0 10px; 
        
        /* モバイルでは縦の隙間（gap）は不要になるためリセットしても良い */
        gap: 0; 
    }

    .image-container img {
        /* 画像1枚分の幅を設定（例: 画面幅 - 左右の余白を引いた幅） */
        width: calc(100vw - 40px); 
        
        /* 画像がコンテナ内で縮まないようにする */
        flex-shrink: 0; 
        
        /* スクロール時に中央に寄せて止まるようにする */
        scroll-snap-align: center; 
        
        /* 画像間のGAPは、この部分のmarginで調整します */
        margin: 0 5px; 
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0c1a3ac */.tab-4 {
    display: flex;
    flex-wrap: wrap;
    max-width: 100%;
}

.tab-4 > label {
    flex: 1 1;
    order: -1;
    position: relative;
    min-width: 70px;
    padding: 1.2em 1em;
    background-color: #f2f2f2;
    color: #999;
    font-size: 1.1em;
    font-weight: 800;
    text-align: center;
    cursor: pointer;
}

.tab-4 > label:hover,
.tab-4 label:has(:checked) {
    background-color: #000000;
    color: #fff;
}

.tab-4 label:has(:checked)::before {
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 18px;
    height: 9px;
    background-color: #000000;
    content: '';
    clip-path: polygon(0 0, 100% 0, 50% 100%);
}

.tab-4 input {
    display: none;
}

.tab-4 > div {
    display: none;
    width: 100%;
    padding: 1.5em 1em;
}

.tab-4 label:has(:checked) + div {
    display: block;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d13abce *//* ========================================================= */
/* ベースコンテナ: top-migi-pr7 (aタグに変更) */
/* ========================================================= */
.top-migi-pr7 {
    display: flex;
    align-items: center; 
    gap: 10px; 
    
    max-width: 800px;
    margin: 0; 

    /* ★★★ リンクとしてのデフォルトスタイルを解除 ★★★ */
    text-decoration: none; /* 下線を削除 */
    color: inherit; /* 文字色を親要素から継承 */
}

/* --------------------------------------------------------- */
/* 左側：画像コンテナのスタイル (PC/タブレット用: 130px 固定) */
/* ... 略（変更なし） ... */
/* --------------------------------------------------------- */
.top-migi-pr7__image-container {
    flex-shrink: 0; 
    width: 130px; 
    max-width: 130px; 
}
.top-migi-pr7__image-container img {
    display: block;
    width: 100%; 
    height: auto; 
}

/* --------------------------------------------------------- */
/* 右側：テキストコンテナのスタイル (変更なし) */
/* ... 略（変更なし） ... */
/* --------------------------------------------------------- */
.top-migi-pr7__text-content {
    flex-grow: 1; 
    display: flex;
    flex-direction: column; 
    width: auto; 
}
.top-migi-pr7__text-content b {
    font-size: 14px;
    font-weight: bold;
    color: #000000; /* 文字色を固定 */
    margin-bottom: 0px;
}
.top-migi-pr7__text-content p {
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.3;
    color: #555; /* 文字色を固定 */
    margin-top: 0; 
}

/* ========================================================= */
/* リストコンテナ (トップレベル) */
/* ... 略（変更なし） ... */
/* ========================================================= */
.top-migi-pr7-list {
    display: flex;
    flex-direction: column;
    gap: 15px; 
    
    max-width: 800px;
    margin: 5px auto; 
}


/* ========================================================= */
/* モバイル対応（画面幅が 767px 以下の場合） */
/* ========================================================= */
@media (max-width: 767px) {
    /* 1. リスト全体を2列のグリッドにする */
    .top-migi-pr7-list {
        display: grid; 
        grid-template-columns: 1fr 1fr; 
        gap: 10px; 
        margin: 5px 10px; 
        max-width: none; 
    }

    /* 2. 各項目 (top-migi-pr7) を縦並びにする */
    .top-migi-pr7 {
        flex-direction: column; 
        gap: 5px; 
        align-items: flex-start; 
    }

    /* 3. 画像の幅をコンテナ幅いっぱいに広げる */
    .top-migi-pr7__image-container {
        width: 100%; 
        max-width: none;
    }

    /* 4. テキストエリアもコンテナ幅いっぱいに広げる */
    .top-migi-pr7__text-content {
        width: 100%; 
    }
    .top-migi-pr7__text-content b {
        font-size: 12px; /* タイトルを 13px に変更 */
    }

    .top-migi-pr7__text-content p {
        font-size: 12px; /* 説明文を 13px に変更 */
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7e01f29 *//* ========================================================= */
/* ベースコンテナ: top-migi-pr8 (スマホでも横並びを維持) */
/* ========================================================= */
.top-migi-pr8 {
    display: flex;
    align-items: center; 
    gap: 10px; 
    max-width: 800px;
    margin: 0; 
    text-decoration: none; 
    color: inherit; 
}

/* --------------------------------------------------------- */
/* 左側：画像コンテナ (スマホでもサイズを固定) */
/* --------------------------------------------------------- */
.top-migi-pr8__image-container {
    flex-shrink: 0; 
    width: 100px; /* スマホでの圧迫感を防ぐため、少しだけ小さく設定(PCはmax指定) */
    max-width: 130px; 
}
@media (min-width: 768px) {
    .top-migi-pr8__image-container {
        width: 130px; 
    }
}

.top-migi-pr8__image-container img {
    display: block;
    width: 100%; 
    height: auto; 
}

/* --------------------------------------------------------- */
/* 右側：テキストコンテナ */
/* --------------------------------------------------------- */
.top-migi-pr8__text-content {
    flex-grow: 1; 
    display: flex;
    flex-direction: column; 
}

.top-migi-pr8__text-content b {
    display: block;
    font-size: 14px;
    font-weight: bold;
    color: #000000;
    margin-bottom: 0px;
    line-height: 1.2;
}

.top-migi-pr8__text-content p {
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.3;
    color: #555; 
    margin-top: 0; 
    margin-bottom: 0;
}

/* ========================================================= */
/* リストコンテナ (全体の上の隙間をゼロに) */
/* ========================================================= */
.top-migi-pr8-list {
    display: flex;
    flex-direction: column;
    gap: 10px; 
    max-width: 800px;
    margin: 0px auto 5px auto; /* 上のマージンを完全に0に */
}

/* ========================================================= */
/* モバイル対応（767px 以下でも横並びを継続） */
/* ========================================================= */
@media (max-width: 767px) {
    .top-migi-pr8-list {
        /* グリッドを解除して縦並びリストに戻す（中身は横並び） */
        display: flex;
        flex-direction: column; 
        gap: 8px; /* スマホ時の項目間の隙間 */
        margin: 0px 10px 5px 10px; 
    }

    .top-migi-pr8 {
        /* flex-direction: column を削除し、横並びを維持 */
        align-items: center; 
    }

    .top-migi-pr8__text-content b {
        font-size: 13px; 
    }
    
    .top-migi-pr8__text-content p {
        font-size: 11px; /* スマホで一行が長くなりすぎないよう調整 */
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-42a72b8 *//* 外側の枠の設定 */
.slider-container-logo {
    width: 80%; /* 画面に対する幅（適宜変更してください） */
    max-width: 1100px; /* 最大幅 */
    margin: 5px auto; /* 画面中央に配置 */
    overflow: hidden; /* 枠からはみ出た部分を非表示にする（重要！） */
    /* 枠線を削除しました */
}

/* 実際に動かす要素の設定 */
.slider-track-logo {
    /* すべての画像が横一列に並ぶようにする */
    display: flex;
    
    /* 画像の合計枚数は14枚ですが、元のCSSに合わせて幅を調整します。
       元のコードでは画像8枚 (120px × 8) = 960px となっていますが、
       HTMLの画像は14枚あります。ここでは元のCSSの幅 (960px) を維持します。
       無限ループを実現するためには、全画像の合計幅を設定する必要があります。
       ここでは画像の合計枚数に合わせて幅を再計算します。
       画像14枚 × 120px = 1680px に変更します。
       ただし、元のHTMLの画像4枚が1セットで、それを繰り返す構造になっているため、
       元のCSS設定意図を尊重しつつ、トラック幅とアニメーション移動距離を修正します。
    */
    /* 元のCSSの意図: 画像4枚セット (120px*4=480px) を複製してトラックを作成。
       HTMLは画像14枚ですが、ここでは元の意図通りにトラック幅を再計算します。
       - トラックの合計幅: 14枚 × 120px = 1680px
       - アニメーションの移動距離: 4枚 × 120px = 480px (1セット分)
    */
    width: 1680px; /* 画像14枚 × 120px = 1680px */
    
    /* アニメーションを適用 */
    animation: scroll-logo 20s linear infinite; /* アニメーション名も変更 */
}

/* アニメーション停止（ホバー時） */
.slider-container-logo:hover .slider-track-logo {
    animation-play-state: paused; /* マウスオーバーで流れを一時停止 */
}


/* 個々の画像の設定 */
.slide-item-logo {
    /* 画像1枚あたりの幅を 120px に設定 */
    width: 120px; 
    height: auto; /* 高さは自動調整 */
    flex-shrink: 0; /* 画像が縮まないようにする（重要！） */
    /* object-fit: cover; */
}


/* 画像を流すアニメーションの定義 */
@keyframes scroll-logo { /* アニメーション名を変更 */
    /* 0%の状態（開始時）：移動なし */
    0% {
        transform: translateX(0);
    }
    
    /* 100%の状態（終了時）：画像1セット分（480px）だけ左に移動 */
    100% {
        /* 画像4枚分 (120px × 4) = 480px 移動させる */
        transform: translateX(-480px); 
    }
}/* End custom CSS */