.elementor-15 .elementor-element.elementor-element-34909f1{--display:flex;--min-height:650px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:flex-end;--flex-wrap:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-34909f1:not(.elementor-motion-effects-element-type-background), .elementor-15 .elementor-element.elementor-element-34909f1 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://kurofuku.jp/wp-content/uploads/2025/10/top_img1.jpg");background-position:top left;background-repeat:no-repeat;background-size:contain;}.elementor-15 .elementor-element.elementor-element-1f2636d{--display:flex;--min-height:650px;--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-15 .elementor-element.elementor-element-6fbb3db{width:var( --container-widget-width, 260px );max-width:260px;--container-widget-width:260px;--container-widget-flex-grow:0;bottom:0px;}body:not(.rtl) .elementor-15 .elementor-element.elementor-element-6fbb3db{left:0px;}body.rtl .elementor-15 .elementor-element.elementor-element-6fbb3db{right:0px;}.elementor-15 .elementor-element.elementor-element-8bc707f{width:var( --container-widget-width, 240px );max-width:240px;--container-widget-width:240px;--container-widget-flex-grow:0;bottom:0px;}body:not(.rtl) .elementor-15 .elementor-element.elementor-element-8bc707f{left:146px;}body.rtl .elementor-15 .elementor-element.elementor-element-8bc707f{right:146px;}.elementor-15 .elementor-element.elementor-element-c987d0c{--display:flex;--margin-top:-100px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-c987d0c.e-con{--align-self:center;}.elementor-15 .elementor-element.elementor-element-38de3b8{width:var( --container-widget-width, 520px );max-width:520px;padding:100px 0px 0px 0px;--container-widget-width:520px;--container-widget-flex-grow:0;bottom:-526px;}body:not(.rtl) .elementor-15 .elementor-element.elementor-element-38de3b8{right:0px;}body.rtl .elementor-15 .elementor-element.elementor-element-38de3b8{left:0px;}.elementor-15 .elementor-element.elementor-element-681d564{width:var( --container-widget-width, 90% );max-width:90%;--container-widget-width:90%;--container-widget-flex-grow:0;bottom:-372px;}body:not(.rtl) .elementor-15 .elementor-element.elementor-element-681d564{right:12px;}body.rtl .elementor-15 .elementor-element.elementor-element-681d564{left:12px;}.elementor-15 .elementor-element.elementor-element-681d564 img{border-radius:10px 10px 10px 10px;}.elementor-15 .elementor-element.elementor-element-3e61238{width:initial;max-width:initial;bottom:190px;}body:not(.rtl) .elementor-15 .elementor-element.elementor-element-3e61238{right:40px;}body.rtl .elementor-15 .elementor-element.elementor-element-3e61238{left:40px;}.elementor-15 .elementor-element.elementor-element-ffdf340{--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:80px 80px;--row-gap:80px;--column-gap:80px;--padding-top:100px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-de6e7b5{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-6c43611{width:var( --container-widget-width, 165px );max-width:165px;--container-widget-width:165px;--container-widget-flex-grow:0;}.elementor-15 .elementor-element.elementor-element-6c43611 img{width:100%;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );color:var( --e-global-color-primary );}.elementor-15 .elementor-element.elementor-element-23bc62c .elementor-heading-title{font-family:"IBM_Plex_Sans_JP", Sans-serif;font-size:34px;font-weight:500;letter-spacing:4px;word-spacing:2px;}.elementor-15 .elementor-element.elementor-element-3cb17c9{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-5017f46{width:var( --container-widget-width, 750px );max-width:750px;--container-widget-width:750px;--container-widget-flex-grow:0;}.elementor-15 .elementor-element.elementor-element-5017f46.elementor-element{--align-self:center;}.elementor-15 .elementor-element.elementor-element-5017f46 img{width:100%;}.elementor-15 .elementor-element.elementor-element-311560c{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-a0c1eef{z-index:1;}.elementor-15 .elementor-element.elementor-element-211f458{--display:flex;--min-height:660px;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--overlay-opacity:1;--overlay-mix-blend-mode:lighten;--margin-top:100px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-211f458::before, .elementor-15 .elementor-element.elementor-element-211f458 > .elementor-background-video-container::before, .elementor-15 .elementor-element.elementor-element-211f458 > .e-con-inner > .elementor-background-video-container::before, .elementor-15 .elementor-element.elementor-element-211f458 > .elementor-background-slideshow::before, .elementor-15 .elementor-element.elementor-element-211f458 > .e-con-inner > .elementor-background-slideshow::before, .elementor-15 .elementor-element.elementor-element-211f458 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-image:url("https://kurofuku.jp/wp-content/uploads/2025/10/top_img2.png");--background-overlay:'';background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-15 .elementor-element.elementor-element-44b758c{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-15 .elementor-element.elementor-element-7c90195{width:var( --container-widget-width, 300px );max-width:300px;--container-widget-width:300px;--container-widget-flex-grow:0;}.elementor-15 .elementor-element.elementor-element-7c90195 img{width:100%;}.elementor-15 .elementor-element.elementor-element-f573c5f .elementor-heading-title{font-family:"IBM_Plex_Sans_JP", Sans-serif;font-size:34px;font-weight:500;letter-spacing:4px;word-spacing:2px;}.elementor-15 .elementor-element.elementor-element-957fac6{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-096560f{--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:40px 40px;--row-gap:40px;--column-gap:40px;--margin-top:60px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-9060d98{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-7dd2b96{width:var( --container-widget-width, 236px );max-width:236px;--container-widget-width:236px;--container-widget-flex-grow:0;}.elementor-15 .elementor-element.elementor-element-7dd2b96 img{width:100%;}.elementor-15 .elementor-element.elementor-element-aad1635 .elementor-heading-title{font-family:"IBM_Plex_Sans_JP", Sans-serif;font-size:34px;font-weight:500;letter-spacing:4px;word-spacing:2px;}.elementor-15 .elementor-element.elementor-element-926b22c{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-881db63{--display:flex;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-997a48c .elementor-heading-title{font-family:"IBM_Plex_Sans_JP", Sans-serif;font-size:28px;font-weight:500;letter-spacing:2px;word-spacing:2px;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-15 .elementor-element.elementor-element-078c920{text-align:justify;font-family:"Noto_Sans_JP", Sans-serif;font-size:16px;font-weight:300;line-height:26px;letter-spacing:2px;word-spacing:2px;}.elementor-15 .elementor-element.elementor-element-0083f5f{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-ccf01e3{width:var( --container-widget-width, 380px );max-width:380px;--container-widget-width:380px;--container-widget-flex-grow:0;top:16px;}body:not(.rtl) .elementor-15 .elementor-element.elementor-element-ccf01e3{left:16px;}body.rtl .elementor-15 .elementor-element.elementor-element-ccf01e3{right:16px;}.elementor-15 .elementor-element.elementor-element-ccf01e3 img{border-radius:10px 10px 10px 10px;}.elementor-15 .elementor-element.elementor-element-f3151d6{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--margin-top:-90px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-cd1a63c{--display:flex;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-d84ab7c .elementor-heading-title{font-family:"IBM_Plex_Sans_JP", Sans-serif;font-size:28px;font-weight:500;letter-spacing:2px;word-spacing:2px;}.elementor-15 .elementor-element.elementor-element-f23abd5{text-align:justify;font-family:"Noto_Sans_JP", Sans-serif;font-size:16px;font-weight:300;line-height:26px;letter-spacing:2px;word-spacing:2px;}.elementor-15 .elementor-element.elementor-element-a00cabd{--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-15 .elementor-element.elementor-element-a00cabd.e-con{--order:-99999 /* order start hack */;}.elementor-15 .elementor-element.elementor-element-eae0edb{width:var( --container-widget-width, 380px );max-width:380px;--container-widget-width:380px;--container-widget-flex-grow:0;top:16px;}body:not(.rtl) .elementor-15 .elementor-element.elementor-element-eae0edb{left:16px;}body.rtl .elementor-15 .elementor-element.elementor-element-eae0edb{right:16px;}.elementor-15 .elementor-element.elementor-element-eae0edb img{border-radius:10px 10px 10px 10px;}.elementor-15 .elementor-element.elementor-element-dde511e{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--margin-top:-90px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-6f07d09{--display:flex;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-0cae4b7 .elementor-heading-title{font-family:"IBM_Plex_Sans_JP", Sans-serif;font-size:28px;font-weight:500;letter-spacing:2px;word-spacing:2px;}.elementor-15 .elementor-element.elementor-element-ae973a2{text-align:justify;font-family:"Noto_Sans_JP", Sans-serif;font-size:16px;font-weight:300;line-height:26px;letter-spacing:2px;word-spacing:2px;}.elementor-15 .elementor-element.elementor-element-bfee8f4{--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-15 .elementor-element.elementor-element-bfee8f4.e-con{--order:99999 /* order end hack */;}.elementor-15 .elementor-element.elementor-element-329e36a{width:var( --container-widget-width, 380px );max-width:380px;--container-widget-width:380px;--container-widget-flex-grow:0;top:16px;}body:not(.rtl) .elementor-15 .elementor-element.elementor-element-329e36a{left:16px;}body.rtl .elementor-15 .elementor-element.elementor-element-329e36a{right:16px;}.elementor-15 .elementor-element.elementor-element-329e36a img{border-radius:10px 10px 10px 10px;}.elementor-15 .elementor-element.elementor-element-f59c8aa{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--margin-top:-90px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-c0cff7f{--display:flex;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-49b06ef .elementor-heading-title{font-family:"IBM_Plex_Sans_JP", Sans-serif;font-size:28px;font-weight:500;letter-spacing:2px;word-spacing:2px;}.elementor-15 .elementor-element.elementor-element-dd33a53{text-align:justify;font-family:"Noto_Sans_JP", Sans-serif;font-size:16px;font-weight:300;line-height:26px;letter-spacing:2px;word-spacing:2px;}.elementor-15 .elementor-element.elementor-element-55f8470{--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-15 .elementor-element.elementor-element-55f8470.e-con{--order:-99999 /* order start hack */;}.elementor-15 .elementor-element.elementor-element-559c7d8{width:var( --container-widget-width, 380px );max-width:380px;--container-widget-width:380px;--container-widget-flex-grow:0;top:16px;}body:not(.rtl) .elementor-15 .elementor-element.elementor-element-559c7d8{left:16px;}body.rtl .elementor-15 .elementor-element.elementor-element-559c7d8{right:16px;}.elementor-15 .elementor-element.elementor-element-559c7d8 img{border-radius:10px 10px 10px 10px;}.elementor-15 .elementor-element.elementor-element-67f7519{--display:flex;--margin-top:-40px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-a05ac24{--display:flex;--min-height:644px;--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;--justify-content:flex-end;--overlay-opacity:1;--overlay-mix-blend-mode:lighten;--margin-top:100px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-a05ac24::before, .elementor-15 .elementor-element.elementor-element-a05ac24 > .elementor-background-video-container::before, .elementor-15 .elementor-element.elementor-element-a05ac24 > .e-con-inner > .elementor-background-video-container::before, .elementor-15 .elementor-element.elementor-element-a05ac24 > .elementor-background-slideshow::before, .elementor-15 .elementor-element.elementor-element-a05ac24 > .e-con-inner > .elementor-background-slideshow::before, .elementor-15 .elementor-element.elementor-element-a05ac24 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-image:url("https://kurofuku.jp/wp-content/uploads/2025/10/top_img5.png");--background-overlay:'';background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-15 .elementor-element.elementor-element-4ee4075{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-dc89a0b{--display:flex;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:20px 20px;--row-gap:20px;--column-gap:20px;--margin-top:1px;--margin-bottom:60px;--margin-left:0px;--margin-right:200px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:2;}.elementor-15 .elementor-element.elementor-element-dc89a0b.e-con{--align-self:flex-end;}.elementor-15 .elementor-element.elementor-element-e28723d{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-cccdf9e{width:var( --container-widget-width, 120px );max-width:120px;--container-widget-width:120px;--container-widget-flex-grow:0;}.elementor-15 .elementor-element.elementor-element-cccdf9e.elementor-element{--align-self:flex-start;}.elementor-15 .elementor-element.elementor-element-cccdf9e img{width:100%;}.elementor-15 .elementor-element.elementor-element-e198b79.elementor-element{--align-self:flex-start;}.elementor-15 .elementor-element.elementor-element-e198b79 .elementor-heading-title{font-family:"IBM_Plex_Sans_JP", Sans-serif;font-size:30px;font-weight:500;line-height:38px;letter-spacing:4px;word-spacing:2px;}.elementor-15 .elementor-element.elementor-element-b901ab2{text-align:justify;font-family:"Noto_Sans_JP", Sans-serif;font-size:16px;font-weight:300;line-height:26px;letter-spacing:2px;word-spacing:2px;}.elementor-15 .elementor-element.elementor-element-855039b{--display:flex;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--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-15 .elementor-element.elementor-element-4f74e0f{width:var( --container-widget-width, 210px );max-width:210px;--container-widget-width:210px;--container-widget-flex-grow:0;top:-160px;}body:not(.rtl) .elementor-15 .elementor-element.elementor-element-4f74e0f{right:918px;}body.rtl .elementor-15 .elementor-element.elementor-element-4f74e0f{left:918px;}.elementor-15 .elementor-element.elementor-element-4f74e0f img{width:100%;}.elementor-15 .elementor-element.elementor-element-9af8cbc{width:var( --container-widget-width, 238px );max-width:238px;--container-widget-width:238px;--container-widget-flex-grow:0;top:-100px;}body:not(.rtl) .elementor-15 .elementor-element.elementor-element-9af8cbc{right:640px;}body.rtl .elementor-15 .elementor-element.elementor-element-9af8cbc{left:640px;}.elementor-15 .elementor-element.elementor-element-9af8cbc img{width:100%;}.elementor-15 .elementor-element.elementor-element-6baf9d2{width:var( --container-widget-width, 330px );max-width:330px;--container-widget-width:330px;--container-widget-flex-grow:0;top:189px;}body:not(.rtl) .elementor-15 .elementor-element.elementor-element-6baf9d2{right:674px;}body.rtl .elementor-15 .elementor-element.elementor-element-6baf9d2{left:674px;}.elementor-15 .elementor-element.elementor-element-6baf9d2 img{width:100%;}.elementor-15 .elementor-element.elementor-element-95c6e6f{width:var( --container-widget-width, 360px );max-width:360px;--container-widget-width:360px;--container-widget-flex-grow:0;top:-160px;}body:not(.rtl) .elementor-15 .elementor-element.elementor-element-95c6e6f{right:60px;}body.rtl .elementor-15 .elementor-element.elementor-element-95c6e6f{left:60px;}.elementor-15 .elementor-element.elementor-element-95c6e6f img{width:100%;}.elementor-15 .elementor-element.elementor-element-1416e59{--display:flex;--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:40px 40px;--row-gap:40px;--column-gap:40px;--margin-top:100px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:100px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-767fd80{--display:flex;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-d7a5341{--display:flex;--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-fffedcf{width:var( --container-widget-width, 120px );max-width:120px;--container-widget-width:120px;--container-widget-flex-grow:0;}.elementor-15 .elementor-element.elementor-element-fffedcf img{width:100%;}.elementor-15 .elementor-element.elementor-element-5d8fbe1.elementor-element{--align-self:center;}.elementor-15 .elementor-element.elementor-element-5d8fbe1 .elementor-heading-title{font-family:"IBM_Plex_Sans_JP", Sans-serif;font-size:20px;font-weight:500;line-height:20px;letter-spacing:4px;word-spacing:2px;}.elementor-15 .elementor-element.elementor-element-fc4e4e0{--display:flex;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--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-15 .elementor-element.elementor-element-fdd8cc4{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-05c25aa{--display:flex;--padding-top:0px;--padding-bottom:100px;--padding-left:0px;--padding-right:0px;}@media(max-width:1024px){.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-widget-heading .elementor-heading-title{letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}}@media(max-width:767px){.elementor-15 .elementor-element.elementor-element-34909f1{--min-height:0px;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-15 .elementor-element.elementor-element-34909f1:not(.elementor-motion-effects-element-type-background), .elementor-15 .elementor-element.elementor-element-34909f1 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-size:94% auto;}.elementor-15 .elementor-element.elementor-element-1f2636d{--min-height:300px;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-15 .elementor-element.elementor-element-6fbb3db{--container-widget-width:106px;--container-widget-flex-grow:0;width:var( --container-widget-width, 106px );max-width:106px;}body:not(.rtl) .elementor-15 .elementor-element.elementor-element-6fbb3db{left:20px;}body.rtl .elementor-15 .elementor-element.elementor-element-6fbb3db{right:20px;}.elementor-15 .elementor-element.elementor-element-8bc707f{--container-widget-width:95px;--container-widget-flex-grow:0;width:var( --container-widget-width, 95px );max-width:95px;z-index:2;}body:not(.rtl) .elementor-15 .elementor-element.elementor-element-8bc707f{left:90px;}body.rtl .elementor-15 .elementor-element.elementor-element-8bc707f{right:90px;}.elementor-15 .elementor-element.elementor-element-c987d0c{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-15 .elementor-element.elementor-element-e2f566b{z-index:2;}.elementor-15 .elementor-element.elementor-element-38de3b8{width:var( --container-widget-width, 170px );max-width:170px;padding:0px 0px 0px 0px;--container-widget-width:170px;--container-widget-flex-grow:0;bottom:218px;}body:not(.rtl) .elementor-15 .elementor-element.elementor-element-38de3b8{right:20px;}body.rtl .elementor-15 .elementor-element.elementor-element-38de3b8{left:20px;}.elementor-15 .elementor-element.elementor-element-681d564{--container-widget-width:156px;--container-widget-flex-grow:0;width:var( --container-widget-width, 156px );max-width:156px;bottom:270px;}body:not(.rtl) .elementor-15 .elementor-element.elementor-element-681d564{right:26px;}body.rtl .elementor-15 .elementor-element.elementor-element-681d564{left:26px;}.elementor-15 .elementor-element.elementor-element-681d564 img{border-radius:4px 4px 4px 4px;}body:not(.rtl) .elementor-15 .elementor-element.elementor-element-3e61238{right:30px;}body.rtl .elementor-15 .elementor-element.elementor-element-3e61238{left:30px;}.elementor-15 .elementor-element.elementor-element-3e61238{bottom:190px;}.elementor-15 .elementor-element.elementor-element-ffdf340{--gap:40px 40px;--row-gap:40px;--column-gap:40px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-de6e7b5{--padding-top:40px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-15 .elementor-element.elementor-element-6c43611{--container-widget-width:110px;--container-widget-flex-grow:0;width:var( --container-widget-width, 110px );max-width:110px;}.elementor-widget-heading .elementor-heading-title{letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-15 .elementor-element.elementor-element-23bc62c .elementor-heading-title{font-size:24px;letter-spacing:2px;}.elementor-15 .elementor-element.elementor-element-3cb17c9{--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-15 .elementor-element.elementor-element-211f458{--gap:20px 20px;--row-gap:20px;--column-gap:20px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-15 .elementor-element.elementor-element-44b758c{--padding-top:40px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-15 .elementor-element.elementor-element-7c90195{--container-widget-width:187px;--container-widget-flex-grow:0;width:var( --container-widget-width, 187px );max-width:187px;}.elementor-15 .elementor-element.elementor-element-f573c5f{width:var( --container-widget-width, 226px );max-width:226px;--container-widget-width:226px;--container-widget-flex-grow:0;text-align:center;}.elementor-15 .elementor-element.elementor-element-f573c5f .elementor-heading-title{font-size:24px;line-height:1.4em;}.elementor-15 .elementor-element.elementor-element-096560f{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-15 .elementor-element.elementor-element-7dd2b96{--container-widget-width:161px;--container-widget-flex-grow:0;width:var( --container-widget-width, 161px );max-width:161px;}.elementor-15 .elementor-element.elementor-element-aad1635 .elementor-heading-title{font-size:24px;}.elementor-15 .elementor-element.elementor-element-926b22c{--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-15 .elementor-element.elementor-element-881db63{--margin-top:-50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-15 .elementor-element.elementor-element-997a48c .elementor-heading-title{font-size:22px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-15 .elementor-element.elementor-element-078c920{font-size:14px;}.elementor-15 .elementor-element.elementor-element-0083f5f.e-con{--order:-99999 /* order start hack */;}.elementor-15 .elementor-element.elementor-element-ccf01e3{--container-widget-width:90%;--container-widget-flex-grow:0;width:var( --container-widget-width, 90% );max-width:90%;}.elementor-15 .elementor-element.elementor-element-f3151d6{--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-15 .elementor-element.elementor-element-cd1a63c{--margin-top:-50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-15 .elementor-element.elementor-element-d84ab7c{width:var( --container-widget-width, 273px );max-width:273px;--container-widget-width:273px;--container-widget-flex-grow:0;}.elementor-15 .elementor-element.elementor-element-d84ab7c .elementor-heading-title{font-size:22px;line-height:1.4em;}.elementor-15 .elementor-element.elementor-element-f23abd5{font-size:14px;}.elementor-15 .elementor-element.elementor-element-eae0edb{--container-widget-width:90%;--container-widget-flex-grow:0;width:var( --container-widget-width, 90% );max-width:90%;}.elementor-15 .elementor-element.elementor-element-dde511e{--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-15 .elementor-element.elementor-element-6f07d09{--margin-top:-50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-15 .elementor-element.elementor-element-0cae4b7{width:var( --container-widget-width, 220px );max-width:220px;--container-widget-width:220px;--container-widget-flex-grow:0;}.elementor-15 .elementor-element.elementor-element-0cae4b7 .elementor-heading-title{font-size:22px;line-height:1.4em;}.elementor-15 .elementor-element.elementor-element-ae973a2{font-size:14px;}.elementor-15 .elementor-element.elementor-element-bfee8f4.e-con{--order:-99999 /* order start hack */;}.elementor-15 .elementor-element.elementor-element-329e36a{--container-widget-width:90%;--container-widget-flex-grow:0;width:var( --container-widget-width, 90% );max-width:90%;}.elementor-15 .elementor-element.elementor-element-f59c8aa{--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-15 .elementor-element.elementor-element-c0cff7f{--margin-top:-50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-15 .elementor-element.elementor-element-49b06ef .elementor-heading-title{font-size:22px;line-height:1.4em;}.elementor-15 .elementor-element.elementor-element-dd33a53{font-size:14px;}.elementor-15 .elementor-element.elementor-element-559c7d8{--container-widget-width:90%;--container-widget-flex-grow:0;width:var( --container-widget-width, 90% );max-width:90%;}.elementor-15 .elementor-element.elementor-element-67f7519{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-15 .elementor-element.elementor-element-a05ac24{--min-height:660px;--margin-top:40px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-15 .elementor-element.elementor-element-4ee4075{--min-height:0px;}.elementor-15 .elementor-element.elementor-element-dc89a0b{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-15 .elementor-element.elementor-element-cccdf9e{--container-widget-width:88px;--container-widget-flex-grow:0;width:var( --container-widget-width, 88px );max-width:88px;}.elementor-15 .elementor-element.elementor-element-e198b79 .elementor-heading-title{font-size:24px;line-height:1.4em;}.elementor-15 .elementor-element.elementor-element-b901ab2{font-size:14px;}.elementor-15 .elementor-element.elementor-element-4f74e0f{--container-widget-width:106px;--container-widget-flex-grow:0;width:var( --container-widget-width, 106px );max-width:106px;top:-232px;}body:not(.rtl) .elementor-15 .elementor-element.elementor-element-4f74e0f{right:0px;}body.rtl .elementor-15 .elementor-element.elementor-element-4f74e0f{left:0px;}.elementor-15 .elementor-element.elementor-element-9af8cbc{--container-widget-width:171px;--container-widget-flex-grow:0;width:var( --container-widget-width, 171px );max-width:171px;top:-100px;}body:not(.rtl) .elementor-15 .elementor-element.elementor-element-9af8cbc{right:126px;}body.rtl .elementor-15 .elementor-element.elementor-element-9af8cbc{left:126px;}.elementor-15 .elementor-element.elementor-element-6baf9d2{--container-widget-width:176px;--container-widget-flex-grow:0;width:var( --container-widget-width, 176px );max-width:176px;top:-268px;}body:not(.rtl) .elementor-15 .elementor-element.elementor-element-6baf9d2{right:207px;}body.rtl .elementor-15 .elementor-element.elementor-element-6baf9d2{left:207px;}.elementor-15 .elementor-element.elementor-element-95c6e6f{--container-widget-width:170px;--container-widget-flex-grow:0;width:var( --container-widget-width, 170px );max-width:170px;top:6px;}body:not(.rtl) .elementor-15 .elementor-element.elementor-element-95c6e6f{right:0px;}body.rtl .elementor-15 .elementor-element.elementor-element-95c6e6f{left:0px;}.elementor-15 .elementor-element.elementor-element-1416e59{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-15 .elementor-element.elementor-element-767fd80{--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-15 .elementor-element.elementor-element-fffedcf{--container-widget-width:88px;--container-widget-flex-grow:0;width:var( --container-widget-width, 88px );max-width:88px;}.elementor-15 .elementor-element.elementor-element-5d8fbe1 .elementor-heading-title{font-size:16px;}.elementor-15 .elementor-element.elementor-element-fdd8cc4{--min-height:185px;}.elementor-15 .elementor-element.elementor-element-96bc836{width:100%;max-width:100%;}.elementor-15 .elementor-element.elementor-element-05c25aa{--padding-top:0px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}}@media(min-width:768px){.elementor-15 .elementor-element.elementor-element-1f2636d{--width:400px;}.elementor-15 .elementor-element.elementor-element-c987d0c{--width:550px;}.elementor-15 .elementor-element.elementor-element-0083f5f{--width:60%;}.elementor-15 .elementor-element.elementor-element-a00cabd{--width:60%;}.elementor-15 .elementor-element.elementor-element-bfee8f4{--width:60%;}.elementor-15 .elementor-element.elementor-element-55f8470{--width:60%;}.elementor-15 .elementor-element.elementor-element-dc89a0b{--width:400px;}.elementor-15 .elementor-element.elementor-element-767fd80{--width:100%;}.elementor-15 .elementor-element.elementor-element-fdd8cc4{--width:49%;}}/* Start custom CSS for image, class: .elementor-element-6fbb3db *//* 共通：左からフェードイン */
.appear-left{
  opacity: 0;
  transform: translateX(-18px);
  animation-name: appearLeft;
  animation-timing-function: ease;
  animation-fill-mode: both;   /* 終了後そのまま */
}

/* 3秒 / 6秒 のバリエーション */
.appear-left--3s{ animation-duration: 3s; }
.appear-left--6s{ animation-duration: 6s; }

/* キーフレーム */
@keyframes appearLeft{
  0%   { opacity: 0; transform: translateX(-18px); }
  60%  { opacity: 1; transform: translateX(2px); }  /* ほんの少しオーバーシュート */
  100% { opacity: 1; transform: translateX(0); }
}

/* 動きを控えるユーザー設定に配慮 */
@media (prefers-reduced-motion: reduce){
  .appear-left{ animation: none !important; opacity: 1 !important; transform: none !important; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e2f566b *//* レイアウトの土台：背景はサイト側に既存 */
.kv-hero{
  position: relative;
  color: #fff;                    /* 下段テキストの色 */
 
 
  margin-left: clamp(0, 6vw, 40px);
}

/* 白ベタ帯の h1 */
.hero-band{
  display: inline-block;          /* 幅はテキストぶんだけ */
  margin: 0 0 clamp(14px, 2.2vw, 22px) 0;
  padding: .35em .4em .3em;       /* 画像の雰囲気に近い余白 */
  background: #fff;               /* 白ベタ */
  color: #222;                    /* 文字は濃いグレー */
  border-radius: 4px;            /* 角丸（画像はやや角丸） */
  box-shadow: 0 2px 10px rgba(0,0,0,.06);
  font-weight: 700;
  line-height: 1.25;
  font-size: clamp(34px, 3.6vw, 56px);
  letter-spacing: .02em;

  /* アニメ初期状態 */
  opacity: 0;
  transform: translateX(-26px);
  animation: slideInL .8s ease forwards;
}

/* 中身を span で包むのは、Safariでの文字レンダリングを安定させるため */
.hero-band > span{ display:block; }

/* 説明テキスト（白ベタなし） */
.hero-sub{
  margin-top: clamp(8px, 1.2vw, 14px);
  font-size: clamp(14px, 1.6vw, 20px);
  font-weight: 600;
  letter-spacing: .06em;
  line-height: 1.6;
}

/* 各行を個別にアニメさせるため分割 */
.hero-sub .line{
  display: inline-block;
  opacity: 0;
  transform: translateX(-18px);
  animation: slideInL .7s ease forwards;
}

/* 左からサッと出るキーフレーム */
@keyframes slideInL{
  0%   { opacity:0; transform: translateX(-26px); }
  60%  { opacity:1; transform: translateX(2px); }   /* 少しオーバーシュート */
  100% { opacity:1; transform: translateX(0); }
}

/* 表示順序のディレイ（上→下へ段階的に） */
.delay-1{ animation-delay: .05s; }
.delay-2{ animation-delay: .25s; }
.delay-3{ animation-delay: .45s; }
.delay-4{ animation-delay: .65s; }

/* モーションを控えるユーザーへの配慮 */
@media (prefers-reduced-motion: reduce){
  .hero-band,
  .hero-sub .line{
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
}

/* レスポンシブ微調整：小さい画面では改行間隔を少し詰める */
@media (max-width: 480px){
  .kv-hero{ margin-left: 16px; }
  .hero-band{ border-radius: 8px; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-3e61238 *//* 縦帯の土台 */
.side-banner{
  position: absolute;           /* 固定表示にしたいなら fixed */
  left: 0;
  top: 0;
  height: 300px;
  pointer-events: none;
}

/* テキストだけ回転して縦書き風に配置 */
.side-banner__textwrap{
  position: absolute;
  left: 30px;
  top: 60%;
  transform: translateY(-430px) rotate(90deg);
  transform-origin: left top;
  pointer-events: auto;
}

.side-banner__text{
  margin: 0;
  font-family: "Jost", system-ui, -apple-system, "Noto Sans JP", sans-serif;
  font-weight: 300;
  font-size: 14px;
  line-height: 1.45;
  letter-spacing: 0.08em;
  color: #fff;
  white-space: nowrap;
}

/* 線は縦のまま（回転しない） */
.side-banner__line{
  position: absolute;
  left: 18px;                 /* 帯の中でのX位置を調整 */
  bottom: 60px;               /* 下からの位置 */
  width: 2px;                 /* 線の太さ */
  height: 120px;              /* 線の長さ */
  background: rgba(255,255,255,.9);
  transform-origin: top center;
  animation: line-draw 2.2s ease-in-out infinite;
}

/* 上→下に描かれるアニメーション */
@keyframes line-draw{
  0%   { transform: scaleY(0);   opacity: .6; }
  60%  { transform: scaleY(1);   opacity: 1;  }
  80%  { transform: scaleY(1);   opacity: 1;  }
  100% { transform: scaleY(0);   opacity: .5; }
}

@media (prefers-reduced-motion: reduce){
  .side-banner__line{ animation: none; }
}
@media (max-width: 700px){
  .side-banner__text{ font-size: 10px; }
  .side-banner__line{
  position: absolute;
  width: 1px;                 /* 線の太さ */
  left: 20px;                 /* 帯の中でのX位置を調整 */
  bottom: 180px;               /* 下からの位置 */
}
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-6c43611 *//* ── reveal-blur：ふわっと出る（やわらかプリセット） ───────────────── */
.reveal-blur{
  /* 調整しやすい変数 */
  --dur: 1800ms;           /* 全体の時間 */
  --dur-blur: 1100ms;     /* ぼかしを少し長めに */
  --delay: 60ms;          /* ほんの少し遅延 */
  --y: 18px;              /* 初期の縦ズレ量 */
  --blur: 14px;           /* 初期ぼかし */
  --scale: .985;          /* 初期スケール（やや小さく） */
  --ease: cubic-bezier(.22,.61,.36,1);  /* やわらか加速→減速 */

  opacity: 0;
  transform: translateY(var(--y)) scale(var(--scale));
  filter: blur(var(--blur));
  transition:
    opacity var(--dur) var(--ease) var(--delay),
    transform var(--dur) var(--ease) var(--delay),
    filter var(--dur-blur) var(--ease) var(--delay);
  will-change: opacity, transform, filter;
  transform-origin: center top;
}

.reveal-blur.is-inview{
  opacity: 1;
  transform: translateY(0) scale(1);
  filter: blur(0);
}

/* ふわっと度をさらに上げたいとき（任意クラス） */
.reveal-blur.soft2{
  --dur: 1100ms;
  --dur-blur: 1300ms;
  --y: 22px;
  --blur: 16px;
  --scale: .98;
  --delay: 80ms;
}

/* 連番ディレイ（必要なものだけ使う） */
.reveal-delay-1{ --delay: 120ms; }
.reveal-delay-2{ --delay: 220ms; }
.reveal-delay-3{ --delay: 320ms; }

/* 動きを抑制したいユーザー設定に配慮 */
@media (prefers-reduced-motion: reduce){
  .reveal-blur{
    transition: none !important;
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a0c1eef */:root{
  --bg: #1E3041;
  --line: #b0b0b0;
  --white: #fff;
  --chip-bg: rgba(255,255,255,.08);
  --chip-bd: rgba(255,255,255,.25);
}

.sys-cards{ position: relative; padding: 0px 0 0px; color: var(--white); }

/* PC: 4カラム */
.sys-cards__track{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  align-items: stretch;
}

/* カード */
.sys-card{
  background: #1E3041A1;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 16px;
  box-shadow: 0 2px 10px rgba(0,0,0,.12) inset;
  display: flex;
  flex-direction: column;
  min-height: 260px;
}

/* 画像は“全部見える”＝contain */
.sys-card__img{
  width: 100%;
  aspect-ratio: 16 / 10;        /* 高さを揃える枠 */
  object-fit: contain;          /* ← これでトリミングしない */         /* 余白が出た時の下地 */
  border-radius: 10px;
  display:block;
}

.sys-card__title{ margin: 14px 0 10px; font-weight: 600; font-size: 20px; letter-spacing: .06em; }
.sys-card__chips{ display:flex; flex-wrap:wrap; gap:8px; margin:0; padding:0; list-style:none; }
.sys-card__chips li{ border:1px solid var(--chip-bd); background:var(--chip-bg); border-radius:8px; padding:6px 10px; font-size:13px; line-height:1; white-space:nowrap; }

/* モバイル：カルーセル化。矢印は“モバイルのみ表示” */
.sys-cards__nav{ display:none; }   /* PCでは非表示 */

@media (max-width: 1024px){
  .sys-cards__track{
    display:grid;
    grid-auto-flow: column;
    grid-auto-columns: calc(80% - 12px);
    overflow-x:auto;
    overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;
    gap:16px;
    padding: 6px 56px;
  }
  .sys-card{ scroll-snap-align: start; }

  .sys-cards__nav{
    display:grid;                /* ← モバイルでのみ表示 */
    place-items:center;
    position:absolute; top:50%; translate:0 -50%;
    width:40px; height:40px; border-radius:999px;
    border:1px solid var(--line);
    background: rgba(0,0,0,.25);
    color:var(--white);
    font-size:24px; cursor:pointer; z-index:2;
    transition: background .2s ease, border-color .2s ease, opacity .2s ease;
  }
  .sys-cards__nav:hover{ background: rgba(255,255,255,.12); border-color:#fff; }
  .sys-cards__nav.is-prev{ left:8px; }
  .sys-cards__nav.is-next{ right:8px; }
  .sys-cards__nav[disabled]{ opacity:.35; pointer-events:none; }

  /* さらに狭い画面で1枚幅を広く */
  @media (max-width: 560px){
    .sys-cards__track{ grid-auto-columns: calc(88% - 12px); }
  }
}
/* 最後の li をプレーン表示（背景なし／枠線なし） */
.sys-card__chips li:last-child{
  background: transparent;
  border: none;
  padding: 0;
  line-height: 1.4;
  font-size: 13px;
  opacity: .9;                 /* 少し弱めに */
}

/* 前のチップとの間隔を確保（背景がなくなるのでマージンで調整） */
.sys-card__chips li:last-child{
  margin-left: 4px;
}

/* 画像とオーバーレイ用のラッパー */
.sys-card__media{
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 10;   /* 高さ揃えはラッパー側で */
  border-radius: 10px;
  overflow: hidden;        /* はみ出し防止（必要なら） */
}

/* ベース画像：ラッパーいっぱいに contain */
.sys-card__media .sys-card__img{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;     /* トリミングしない */
  display: block;
}

.sys-card__overlay{
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 80%;
  height: auto;
  pointer-events: none;

  /* 角丸を確実に効かせる */
  display: block;                 /* 画像をブロック要素化 */
  border-radius: 8px;
  overflow: hidden;               /* 角丸に沿ってクリップ */
  clip-path: inset(0 round 8px);  /* ブラウザ差の保険 */
}
/* ====== モバイル（～1024px）のカード幅・余白・矢印サイズを縮める ====== */
@media (max-width: 1024px){

  /* 1) 1枚あたりの表示幅を縮める（既存: 80% → 70% など） */
  .sys-cards__track{
    /* 例: 70% にすると次のカードがより覗く */
    grid-auto-columns: calc(40% - 12px)!important;
    /* 2) 左右パディングも少しだけ縮める（矢印分のスペース） */
    padding: 6px 40px; /* 既存: 6px 56px */
  }

  /* 3) 矢印ボタン自体を小さく（幅・高さ・フォントサイズ） */
  .sys-cards__nav{
    width: 32px;
    height: 32px;
    font-size: 20px;
  }
  .sys-cards__nav.is-prev{ left: 6px; }
  .sys-cards__nav.is-next{ right: 6px; }
}

/* さらに狭い画面（～560px）はもう少し縮める（既存: 88% → 78% など） */
@media (max-width: 560px){
  .sys-cards__track{
    grid-auto-columns: calc(78% - 12px);
    padding: 6px 36px;
  }
  .sys-cards__nav{
    width: 28px;
    height: 28px;
    font-size: 18px;
  }
}
.sys-card{
  display: grid;               /* ← flexからgridに変更 */
  grid-template-rows: auto auto 1fr;  /* 画像 / タイトル / 本文・チップ */
  min-height: 260px;
}

/* タイトルは最大2行でカット（行数固定） */
.sys-card__title{
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: calc(1em * 2 * 1.3); /* だいたい2行分の高さを確保（1.3は行高の目安） */
}

/* チップ領域にも最低高さを与える（例：2行分想定） */
.sys-card__chips{
  min-height: 2.6em;  /* 行高に合わせて微調整 */
}


/* ==== モバイルは flex カルーセルで「1枚＋次が顔出し」==== */
@media (max-width: 1024px){
  .sys-cards__track{
    display: flex;                 /* ← gridをやめてflexに */
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    gap: 16px;
    padding: 6px 56px;             /* 矢印ぶんの左右余白。必要なら調整 */
    -webkit-overflow-scrolling: touch;
  }
  /* 1枚の幅を“ちょい見せ”に（例：78%）。好みに合わせて 70–88% で調整可 */
  .sys-card{
    flex: 0 0 78%;
    scroll-snap-align: start;
  }
}

/* さらに狭い画面は、もう少し広めにして見やすく */
@media (max-width: 560px){
  .sys-card{
    flex-basis: 84%;
  }
}
@media (max-width:1024px){
  .sys-cards{ padding-bottom:0px; }            /* 下に余白を作って重なり回避 */
  .sys-cards__nav{
    top:auto; bottom:130px; translate:0 0;        /* 中央揃え解除→下端へ */
  }
  .sys-cards__nav.is-prev{ left:10px; }          /* 左下 */
  .sys-cards__nav.is-next{ right:10px; }         /* 右下 */
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b4c2f63 */:root{
  --bd:#b0b0b0; --white:#fff; --muted:rgba(0,0,0,.75);
}

/* セクション側は切り落とさない */
.spotlight-carousel{
  position: relative;
  padding: 0;                /* 好みで */
  overflow: visible;         /* ← 拡大分を見せる */
  color: #111;
}

/* トラック：上下に拡大の余白を作り、Y方向は見せる */
.spc-track{
  display: grid;
  grid-auto-flow: column;
  gap: 18px;
  padding: 24px 64px;        /* ← 上下に24px余白（拡大分の天井/床） */
  overflow-x: auto;
  overflow-y: visible;       /* ← 重要：上下を隠さない */
  scroll-snap-type: x mandatory;
  overscroll-behavior-x: contain;

  /* スクロールバー非表示（各ブラウザ） */
  -ms-overflow-style: none;      /* IE/Edge 旧 */
  scrollbar-width: none;         /* Firefox */
}
.spc-track::-webkit-scrollbar{ display: none; } /* Chrome/Safari */

/* PC見え幅 */
@media (min-width:1025px){ .spc-track{ grid-auto-columns: min(33.33%, 380px); } }
@media (max-width:1024px){ .spc-track{ grid-auto-columns: 78%; } }
@media (max-width:600px){  .spc-track{ grid-auto-columns: 88%; } }

/* ---- カード ---- */
.spc-card{
  scroll-snap-align: center;
  background: #fff;                 /* ← カード全体を白に */
  border: 1px solid var(--bd);
  border-radius: 16px;
  box-shadow: 0 6px 22px rgba(0,0,0,.20);
  transition: transform .35s ease, box-shadow .35s ease, opacity .35s ease;
  transform: scale(.92);
  transform-origin: center;         /* ← 真ん中基準で拡大 */
  opacity: .92;
}
.spc-card.is-center{
  transform: scale(1.06);           /* ← 拡大率（好みで） */
  box-shadow: 0 10px 28px rgba(0,0,0,.30);
  opacity: 1;
}

/* 画像は角丸・上辺寄せ。切り抜きを避けたいなら contain 推奨 */
.spc-card__imgwrap{ padding: 12px 12px 0; border-top-left-radius:16px; border-top-right-radius:16px; }
.spc-card__imgwrap img{
  width:100%; height:190px; object-fit: cover; border-radius:14px; display:block;
  /* トリミングしたくない場合は ↓ に変更
     object-fit: contain; background:#fff; */
}

/* 本文（白カードに合わせて余白だけ） */
.spc-card__body{ margin: 12px; padding: 14px 14px 16px; background: transparent; color:#111; }
.spc-card__title{ margin:0 0 10px; font-size:18px; font-weight:700; letter-spacing:.02em; }
.spc-card__list{ margin:0; padding-left:1.1em; list-style:disc; color:var(--muted); }
.spc-card__list li{ line-height:1.6; margin:.25em 0; }

/* 矢印（必要ならそのまま。PCで消したいなら media query で display:none ） */
.spc-nav{
  position:absolute; top:50%; translate:0 -50%;
  width:44px; height:44px; border-radius:999px;
  border:1px solid var(--bd);
  background:rgba(0,0,0,.25);
  color:#fff; font-size:24px; display:grid; place-items:center;
  cursor:pointer; z-index:2;
  transition:background .2s ease, border-color .2s ease, opacity .2s ease;
}
.spc-nav:hover{ background:rgba(0,0,0,.35); border-color:#fff; }
.spc-nav.is-prev{ left:10px; }
.spc-nav.is-next{ right:10px; }
.spc-nav[disabled]{ opacity:.35; pointer-events:none; }

/* 動きを抑える設定に配慮 */
@media (prefers-reduced-motion: reduce){
  .spc-card{ transition:none; transform:none !important; opacity:1 !important; }
}
/* 画像ラッパ：余白ゼロ */
.spc-card__imgwrap{
  padding: 0;                         /* ← ここを0に */
  border-top-left-radius: 16px;
  border-top-right-radius: 16px;
}

/* 画像：下側の角丸を0、上だけカードと揃える */
.spc-card__imgwrap img{
  width: 100%;
  height: 190px;                      /* 必要に応じて調整可 */
  object-fit: cover;                  /* トリミング避けたいなら contain に */
  border-radius: 16px 16px 0 0;       /* ← 上:16px / 下:0 */
  display: block;
  background: transparent;            /* containにする場合は #fff などでもOK */
}
.spc-card__list{ list-style: none; padding-left: 1.1em; }
.spc-card__list li{
  position: relative;
}
.spc-card__list li::before{
  content: "■";
  color: #bb7ef3;
  position: absolute;
  left: -1.1em;              /* 字下げに合わせて配置 */
  top: 0;
  line-height: 1.6;          /* 行高に合わせて */
}
/* 基本：幅100%、高さはクランプで可変 */
.spc-card__imgwrap img{
  width: 100%;
  height: clamp(140px, 28vw, 220px); /* 最小140px～最大220pxをvwでなめらかに */
  object-fit: cover;                 /* 全面表示。切抜き嫌なら contain に変更 */
  border-radius: 16px 16px 0 0;
  display: block;
}

/* とても小さい端末は少し低めに */
@media (max-width: 480px){
  .spc-card__imgwrap img{
    height: clamp(120px, 34vw, 180px);
  }
}
/* ===== Spotlight Carousel：テキストを14pxに ===== */
.spotlight-carousel,
.spotlight-carousel .spc-card,
.spotlight-carousel .spc-card__body,
.spotlight-carousel .spc-card__list,
.spotlight-carousel .spc-card__list li{
  font-size: 14px;
  line-height: 1.7;         /* 読みやすさ確保 */
}

/* リストのマージン微調整（任意） */
.spc-card__list{ margin: 0; }
.spc-card__list li{ margin: .25em 0; }

/* タイトルは少し大きめのままにする場合（既定: 18px） */
.spc-card__title{ font-size: 18px; } /* 14pxに完全統一したいなら下を有効化 */
/* .spc-card__title{ font-size: 14px; }  */  /* ← 全部14px派はこちら *//* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-399613e */.button-32 {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 250px;
    margin:0 auto;
    padding: .9em 2em;
    overflow: hidden;
    border: 1px solid #fff;
    border-radius: 25px;
    background-color: #FFFFFF00;
    color: #fff;
    font-size: 1em;
}

.button-32:hover {
    background-color: transparent;
    color: #fff;
}

.button-32::before {
    position: absolute;
    z-index: -1;
    transform: rotate(-30deg);
    width: 100%;
    height: 0;
    border-radius: 25px;
    background-color: #bb7ef3;
    content: '';
    transition: height .3s ease;
}

.button-32:hover::before {
    height: 350%;
}

.button-32::after {
    transform: rotate(45deg);
    width: 5px;
    height: 5px;
    margin-left: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    content: '';
}

.button-32:hover::after {
    border-color: #fff;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e889d7a */.button-32 {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 250px;
    margin:0 auto;
    padding: .9em 2em;
    overflow: hidden;
    border: 1px solid #fff;
    border-radius: 25px;
    background-color: #FFFFFF00;
    color: #fff;
    font-size: 1em;
}

.button-32:hover {
    background-color: transparent;
    color: #fff;
}

.button-32::before {
    position: absolute;
    z-index: -1;
    transform: rotate(-30deg);
    width: 100%;
    height: 0;
    border-radius: 25px;
    background-color: #bb7ef3;
    content: '';
    transition: height .3s ease;
}

.button-32:hover::before {
    height: 350%;
}

.button-32::after {
    transform: rotate(45deg);
    width: 5px;
    height: 5px;
    margin-left: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    content: '';
}

.button-32:hover::after {
    border-color: #fff;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-82982a9 */.news-list{ display:grid; gap:12px; }

.news-item{
  --bg:#1E3041; --bd:#b0b0b0;
  position:relative; display:flex; align-items:center; gap:16px;
  padding:14px 18px; color:#fff; text-decoration:none;
  border-radius:14px; border:1px solid var(--bd);
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02)), var(--bg);
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
  overflow:hidden;
}
.news-item::after{
  content:""; position:absolute; inset:-1px; border-radius:inherit; pointer-events:none;
  background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.16) 50%, rgba(255,255,255,0) 100%);
  transform: translateX(-120%); transition: transform .8s ease;
}
.news-item:hover{ transform: translateY(-2px); box-shadow:0 6px 20px rgba(0,0,0,.22); border-color:#fff; }
.news-item:hover::after{ transform: translateX(120%); }

.news-date{ font-family:"Jost",system-ui,-apple-system,"Noto Sans JP",sans-serif; font-weight:600; font-size:14px; letter-spacing:.08em; opacity:.9; white-space:nowrap; }
.news-title{ font-weight:400; font-size:18px; letter-spacing:.05em; line-height:1.4; }
/* --- 文字は常に白 --- */
.news-item,
.news-item .news-date,
.news-item .news-title{
  color: #fff !important;
}

/* --- 1行で … 表示（タイトルだけ省略） --- */
.news-item{
  display: flex;
  align-items: center;
  gap: 16px;
  white-space: nowrap;     /* 全体1行 */
  padding-right: 48px;     /* 右矢印の分だけ余白確保 */
}
.news-date{ flex: 0 0 auto; }           /* つぶさない */
.news-title{
  flex: 1 1 auto;
  overflow: hidden;
  text-overflow: ellipsis; /* ……で省略 */
  white-space: nowrap;
}

/* --- 右端の矢印：ホバーでスライドイン --- */
/* ※ ::after は既に“shine”で使っているので ::before を使用 */
.news-item::before{
  content: "›";                    /* 好みで "→" でもOK */
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%) translateX(6px);
  opacity: 0;
  transition: transform .25s ease, opacity .25s ease;
  font-size: 20px;
  line-height: 1;
  color: #fff;
  pointer-events: none;
}
.news-item:hover::before{
  opacity: 1;
  transform: translateY(-50%) translateX(0);
}

/* すでに入れている“shine”用 ::after はそのままでOK */
/* ===== ニュース：レスポンシブで小さめ文字 ===== */

/* ベースをやや抑え目に（PC） */
.news-date{ font-size: 14px !important; }
.news-title{ font-size: 16px !important; }

/* タブレット以下 */
@media (max-width: 1024px){
  .news-item{ gap: 12px !important; padding: 12px 44px 12px 14px !important; }
  .news-date{ font-size: 13px !important; letter-spacing: .06em; }
  .news-title{ font-size: 15px !important; }
}

/* スマホ（～768px） */
@media (max-width: 768px){
  .news-item{ gap: 10px !important; padding: 10px 40px 10px 12px !important; }
  .news-date{ font-size: 14px !important; letter-spacing: .05em; }
  .news-title{ font-size: 14px !important; }
}

/* 小さめスマホ（～480px） */
@media (max-width: 480px){
  .news-item{ gap: 8px !important; padding: 20px 38px 20px 10px !important; }
  .news-date{ font-size: 14px !important; letter-spacing: .06em; }
  .news-title{ font-size: 14px !important; }
}

/* 1行省略の安定化（念のため再指定） */
.news-item{ white-space: nowrap !important; }
.news-title{
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6abd983 */.button-32 {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 250px;
    margin:0 auto;
    padding: .9em 2em;
    overflow: hidden;
    border: 1px solid #fff;
    border-radius: 25px;
    background-color: #FFFFFF00;
    color: #fff;
    font-size: 1em;
}

.button-32:hover {
    background-color: transparent;
    color: #fff;
}

.button-32::before {
    position: absolute;
    z-index: -1;
    transform: rotate(-30deg);
    width: 100%;
    height: 0;
    border-radius: 25px;
    background-color: #bb7ef3;
    content: '';
    transition: height .3s ease;
}

.button-32:hover::before {
    height: 350%;
}

.button-32::after {
    transform: rotate(45deg);
    width: 5px;
    height: 5px;
    margin-left: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    content: '';
}

.button-32:hover::after {
    border-color: #fff;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-96bc836 *//* ===== FAQ カード ===== */
.faq-card{
  --bg: url('');                    /* 背景画像（HTMLのstyleで上書き） */
  --rad: 16px;                      /* 角丸 */
  --bd: #b0b0b0;                    /* 枠線 */
  position: relative;
  display: block;
  border-radius: var(--rad);
  border: 1px solid var(--bd);
  overflow: hidden;
  color: #fff;
  text-decoration: none;
  box-shadow: 0 12px 32px rgba(0,0,0,.22);
  aspect-ratio: 5 / 3;              /* 高さ固定したい場合は height を指定 */
  background: #1E3041;
}

/* 背景画像（cover） */
.faq-card::before{
  content:"";
  position:absolute; inset:0;
  background-image: var(--bg);
  background-size: cover;
  background-position: center;
  filter: saturate(.95);
}

/* グラデーションオーバーレイ（ホバーで流れる） */
.faq-card::after{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(135deg, rgba(187,126,243,.48), rgba(72,170,255,.35));
  mix-blend-mode: normal;
  /* 動き：大きめに敷いて位置をスライド */
  background-size: 200% 200%;
  background-position: 0% 50%;
  transition: background-position 1.2s ease, opacity .3s ease;
  opacity: .95;
}

/* テキスト */
.faq-card__body{
  position: absolute;
  left: 18px; bottom: 16px; right: 56px;
  line-height: 1.15;
}
.faq-card__en{
  display: block;
  font-family: "Jost", system-ui, -apple-system, "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: clamp(22px, 2.4vw, 28px);
  letter-spacing: .04em;
}
.faq-card__ja{
  display:block;
  margin-top: 8px;
  font-weight: 600;
  font-size: clamp(14px, 1.6vw, 16px);
  letter-spacing: .05em;
  opacity: .95;
}

/* 右下の矢印（ホバーでスライド） */
.faq-card__arrow{
  position: absolute;
  right: 16px; bottom: 14px;
  font-size: 22px;
  line-height: 1;
  transition: transform .35s ease, opacity .35s ease, text-shadow .35s ease;
  transform: translateX(-4px);
  opacity: .9;
}
.faq-card:hover .faq-card__arrow{
  transform: translateX(6px);               /* 右へスッと */
  opacity: 1;
  text-shadow: 0 0 10px rgba(255,255,255,.35);
}

/* ホバー演出：グラデが流れる・ほんの少し持ち上がる */
.faq-card{
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}
.faq-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 16px 36px rgba(0,0,0,.28);
  border-color: #fff;
}
.faq-card:hover::after{
  background-position: 100% 50%;            /* グラデーションが横に流れる */
}

/* 動きを控える設定に配慮 */
@media (prefers-reduced-motion: reduce){
  .faq-card, .faq-card::after, .faq-card__arrow{ transition: none !important; }
}
/* テキストは常に白（テーマ上書き対策で !important） */
.faq-card,
.faq-card__body,
.faq-card__en,
.faq-card__ja,
.faq-card__arrow{
  color:#fff !important;
}

/* ホバー時に色が変わらないよう再指定 */
.faq-card:hover .faq-card__en,
.faq-card:hover .faq-card__ja,
.faq-card:hover .faq-card__arrow{
  color:#fff !important;
}

/* グラデの上で可読性を少し上げたい場合（任意） */
.faq-card__en{ text-shadow: 0 1px 6px rgba(0,0,0,.25); }
.faq-card__ja{ text-shadow: 0 1px 5px rgba(0,0,0,.22); }

/* 疑似要素のレイヤー順を明示 */
.faq-card::before{ z-index: 0; }   /* 背景写真 */
.faq-card::after{  z-index: 1; }   /* グラデーション */

/* コンテンツ（テキスト/矢印）を最前面へ：absolute を維持！ */
.faq-card__body{
  position: absolute;              /* ← relative にしない */
  left: 18px; bottom: 16px; right: 56px;
  z-index: 2;
  color: #fff !important;
}
.faq-card__arrow{
  position: absolute;              /* ← relative にしない */
  right: 16px; bottom: 14px;
  z-index: 2;
  color: #fff !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-cba404d *//* コンテナ：背景は既存サイトの#1E3041想定 */
.marquee-rtol{
  position: relative;
  overflow: hidden;
  /* 任意の高さ */
  height: clamp(44px, 7vw, 72px);
  /* 端フェード（不要なら削除） */
  -webkit-mask-image: linear-gradient(90deg, rgba(0,0,0,0) 0%, #000 8%, #000 92%, rgba(0,0,0,0) 100%);
          mask-image: linear-gradient(90deg, rgba(0,0,0,0) 0%, #000 8%, #000 92%, rgba(0,0,0,0) 100%);
}

/* トラック：横に並べて無限ループ */
.marquee-rtol__track{
  display: inline-flex;
  white-space: nowrap;
  will-change: transform;
  animation: marquee-rtol 22s linear infinite;
}

/* テキスト本体 */
.marquee-rtol__text{
  font-family: "Jost", system-ui, -apple-system, "Noto Sans JP", sans-serif;
  font-weight: 500;
  text-transform: uppercase;           /* 全大文字 */
  letter-spacing: .08em;
  font-size: clamp(78px, 3.2vw, 86px);
  line-height: 1;
  color: #fff;
  padding: 0 .3em;                     /* 連結時の間隔 */
}

/* 右 → 左へ無限スクロール（2枚でシームレス） */
@keyframes marquee-rtol{
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); } /* 子要素2枚ぶんで1周 */
}

/* 動きを控える設定に配慮 */
@media (prefers-reduced-motion: reduce){
  .marquee-rtol__track{ animation: none; }
}
.marquee-rtol .marquee-rtol__text{ font-size: 56px !important; }
@media (max-width:1024px){ .marquee-rtol .marquee-rtol__text{ font-size: 48px !important; } }
@media (max-width:720px){  .marquee-rtol .marquee-rtol__text{ font-size: 40px !important; } }
@media (max-width:480px){  .marquee-rtol .marquee-rtol__text{ font-size: 32px !important; } }/* End custom CSS */