.elementor-13941 .elementor-element.elementor-element-2dd24588{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--overlay-opacity:0.35;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-13941 .elementor-element.elementor-element-2dd24588::before, .elementor-13941 .elementor-element.elementor-element-2dd24588 > .elementor-background-video-container::before, .elementor-13941 .elementor-element.elementor-element-2dd24588 > .e-con-inner > .elementor-background-video-container::before, .elementor-13941 .elementor-element.elementor-element-2dd24588 > .elementor-background-slideshow::before, .elementor-13941 .elementor-element.elementor-element-2dd24588 > .e-con-inner > .elementor-background-slideshow::before, .elementor-13941 .elementor-element.elementor-element-2dd24588 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-13941 .elementor-element.elementor-element-6c2c693 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-13941 .elementor-element.elementor-element-54e0ea3b{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:200px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:200;}.elementor-13941 .elementor-element.elementor-element-54e0ea3b:not(.elementor-motion-effects-element-type-background), .elementor-13941 .elementor-element.elementor-element-54e0ea3b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFDF6;}.elementor-13941 .elementor-element.elementor-element-54e0ea3b > .elementor-shape-top .elementor-shape-fill, .elementor-13941 .elementor-element.elementor-element-54e0ea3b > .e-con-inner > .elementor-shape-top .elementor-shape-fill{fill:#FFA9A9;}.elementor-13941 .elementor-element.elementor-element-54e0ea3b > .elementor-shape-top svg, .elementor-13941 .elementor-element.elementor-element-54e0ea3b > .e-con-inner > .elementor-shape-top svg{height:300px;}.elementor-13941 .elementor-element.elementor-element-54e0ea3b > .elementor-shape-bottom .elementor-shape-fill, .elementor-13941 .elementor-element.elementor-element-54e0ea3b > .e-con-inner > .elementor-shape-bottom .elementor-shape-fill{fill:#FBF6E6;}.elementor-13941 .elementor-element.elementor-element-54e0ea3b > .elementor-shape-bottom svg, .elementor-13941 .elementor-element.elementor-element-54e0ea3b > .e-con-inner > .elementor-shape-bottom svg{height:0px;}.elementor-13941 .elementor-element.elementor-element-2c4aee96{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:60px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-13941 .elementor-element.elementor-element-2c4aee96:not(.elementor-motion-effects-element-type-background), .elementor-13941 .elementor-element.elementor-element-2c4aee96 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFDF6;}.elementor-13941 .elementor-element.elementor-element-dfd48ce{--display:flex;--margin-top:-20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-13941 .elementor-element.elementor-element-920e535{text-align:center;}.elementor-13941 .elementor-element.elementor-element-d6f9dfa{--display:flex;--min-height:540px;--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;--overlay-opacity:0.89;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:100px;--padding-left:0px;--padding-right:0px;}.elementor-13941 .elementor-element.elementor-element-d6f9dfa:not(.elementor-motion-effects-element-type-background), .elementor-13941 .elementor-element.elementor-element-d6f9dfa > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-6b7644d );background-image:url("https://olive-group.jp/wp-content/uploads/2026/02/bg_dots_pattern.webp");background-position:center center;background-size:cover;}.elementor-13941 .elementor-element.elementor-element-d6f9dfa::before, .elementor-13941 .elementor-element.elementor-element-d6f9dfa > .elementor-background-video-container::before, .elementor-13941 .elementor-element.elementor-element-d6f9dfa > .e-con-inner > .elementor-background-video-container::before, .elementor-13941 .elementor-element.elementor-element-d6f9dfa > .elementor-background-slideshow::before, .elementor-13941 .elementor-element.elementor-element-d6f9dfa > .e-con-inner > .elementor-background-slideshow::before, .elementor-13941 .elementor-element.elementor-element-d6f9dfa > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#F8CFC7;--background-overlay:'';}.elementor-13941 .elementor-element.elementor-element-d6f9dfa > .elementor-shape-top .elementor-shape-fill, .elementor-13941 .elementor-element.elementor-element-d6f9dfa > .e-con-inner > .elementor-shape-top .elementor-shape-fill{fill:#FBF6E6;}.elementor-13941 .elementor-element.elementor-element-d6f9dfa > .elementor-shape-top svg, .elementor-13941 .elementor-element.elementor-element-d6f9dfa > .e-con-inner > .elementor-shape-top svg{height:209px;}.elementor-13941 .elementor-element.elementor-element-d6f9dfa > .elementor-shape-bottom .elementor-shape-fill, .elementor-13941 .elementor-element.elementor-element-d6f9dfa > .e-con-inner > .elementor-shape-bottom .elementor-shape-fill{fill:var( --e-global-color-secondary );}.elementor-13941 .elementor-element.elementor-element-2b07db8f{--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;--justify-content:center;--flex-wrap:wrap;--margin-top:-200px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-13941 .elementor-element.elementor-element-9126cb3{--display:flex;}.elementor-13941 .elementor-element.elementor-element-0eef930{text-align:center;}.elementor-13941 .elementor-element.elementor-element-0eef930 .elementor-heading-title{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );color:#5D0045;}.elementor-13941 .elementor-element.elementor-element-3f9640b0{--display:flex;--overlay-opacity:0.93;--border-radius:30px 30px 30px 30px;box-shadow:4px 4px 16px -9px rgba(0, 0, 0, 0.18);--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-13941 .elementor-element.elementor-element-3f9640b0:not(.elementor-motion-effects-element-type-background), .elementor-13941 .elementor-element.elementor-element-3f9640b0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-38381fd );}.elementor-13941 .elementor-element.elementor-element-3f9640b0::before, .elementor-13941 .elementor-element.elementor-element-3f9640b0 > .elementor-background-video-container::before, .elementor-13941 .elementor-element.elementor-element-3f9640b0 > .e-con-inner > .elementor-background-video-container::before, .elementor-13941 .elementor-element.elementor-element-3f9640b0 > .elementor-background-slideshow::before, .elementor-13941 .elementor-element.elementor-element-3f9640b0 > .e-con-inner > .elementor-background-slideshow::before, .elementor-13941 .elementor-element.elementor-element-3f9640b0 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-13941 .elementor-element.elementor-element-2fe5d38{text-align:center;}.elementor-13941 .elementor-element.elementor-element-1f896e64{--display:flex;--border-radius:30px 30px 30px 30px;--padding-top:0px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-13941 .elementor-element.elementor-element-1f896e64:not(.elementor-motion-effects-element-type-background), .elementor-13941 .elementor-element.elementor-element-1f896e64 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://olive-group.jp/wp-content/uploads/2025/12/kids2.webp");background-position:center center;background-size:cover;}.elementor-13941 .elementor-element.elementor-element-1afc755c{--spacer-size:180px;}.elementor-13941 .elementor-element.elementor-element-17ca41fd{text-align:center;font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-13941 .elementor-element.elementor-element-258d4f03 a.elementor-button:hover{background-color:var( --e-global-color-primary );color:var( --e-global-color-7b653d6 );}.elementor-13941 .elementor-element.elementor-element-258d4f03 .uael-marketing-button .elementor-button-content-wrapper{margin-bottom:0px;}.elementor-13941 .elementor-element.elementor-element-258d4f03 a.elementor-button{color:var( --e-global-color-primary );}.elementor-13941 .elementor-element.elementor-element-258d4f03 a.elementor-button-icon svg, .elementor-13941 .elementor-element.elementor-element-258d4f03 .elementor-button-icon svg{fill:var( --e-global-color-primary );}.elementor-13941 .elementor-element.elementor-element-1aa46d53{--display:flex;--overlay-opacity:0.93;--border-radius:30px 30px 30px 30px;box-shadow:4px 4px 16px -9px rgba(0, 0, 0, 0.18);--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-13941 .elementor-element.elementor-element-1aa46d53:not(.elementor-motion-effects-element-type-background), .elementor-13941 .elementor-element.elementor-element-1aa46d53 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-38381fd );}.elementor-13941 .elementor-element.elementor-element-1aa46d53::before, .elementor-13941 .elementor-element.elementor-element-1aa46d53 > .elementor-background-video-container::before, .elementor-13941 .elementor-element.elementor-element-1aa46d53 > .e-con-inner > .elementor-background-video-container::before, .elementor-13941 .elementor-element.elementor-element-1aa46d53 > .elementor-background-slideshow::before, .elementor-13941 .elementor-element.elementor-element-1aa46d53 > .e-con-inner > .elementor-background-slideshow::before, .elementor-13941 .elementor-element.elementor-element-1aa46d53 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-13941 .elementor-element.elementor-element-bc87fa4{text-align:center;}.elementor-13941 .elementor-element.elementor-element-2b854a3b{--display:flex;--border-radius:30px 30px 30px 30px;--padding-top:0px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-13941 .elementor-element.elementor-element-2b854a3b:not(.elementor-motion-effects-element-type-background), .elementor-13941 .elementor-element.elementor-element-2b854a3b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://olive-group.jp/wp-content/uploads/2025/12/kids.webp");background-position:top center;background-size:cover;}.elementor-13941 .elementor-element.elementor-element-3d4378ee{--spacer-size:180px;}.elementor-13941 .elementor-element.elementor-element-186f5638{text-align:center;font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-13941 .elementor-element.elementor-element-9a89d5d a.elementor-button:hover{background-color:var( --e-global-color-primary );color:var( --e-global-color-7b653d6 );}.elementor-13941 .elementor-element.elementor-element-9a89d5d .uael-marketing-button .elementor-button-content-wrapper{margin-bottom:0px;}.elementor-13941 .elementor-element.elementor-element-9a89d5d a.elementor-button{color:var( --e-global-color-primary );}.elementor-13941 .elementor-element.elementor-element-9a89d5d a.elementor-button-icon svg, .elementor-13941 .elementor-element.elementor-element-9a89d5d .elementor-button-icon svg{fill:var( --e-global-color-primary );}.elementor-13941 .elementor-element.elementor-element-2bb0734{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-13941 .elementor-element.elementor-element-1e3ca09{--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;--margin-top:20px;--margin-bottom:20px;--margin-left:0px;--margin-right:0px;}.elementor-13941 .elementor-element.elementor-element-94cd69d .elementor-heading-title{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );color:var( --e-global-color-primary );}.elementor-13941 .elementor-element.elementor-element-5c9c713{--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;--flex-wrap:wrap;--border-radius:40px 40px 40px 40px;}.elementor-13941 .elementor-element.elementor-element-5c9c713:not(.elementor-motion-effects-element-type-background), .elementor-13941 .elementor-element.elementor-element-5c9c713 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFBE7;}.elementor-13941 .elementor-element.elementor-element-35fc82f{--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;}.elementor-13941 .elementor-element.elementor-element-9c5ec8a.elementor-position-right .elementor-image-box-img{margin-left:15px;}.elementor-13941 .elementor-element.elementor-element-9c5ec8a.elementor-position-left .elementor-image-box-img{margin-right:15px;}.elementor-13941 .elementor-element.elementor-element-9c5ec8a.elementor-position-top .elementor-image-box-img{margin-bottom:15px;}.elementor-13941 .elementor-element.elementor-element-9c5ec8a .elementor-image-box-wrapper .elementor-image-box-img{width:100%;}.elementor-13941 .elementor-element.elementor-element-9c5ec8a .elementor-image-box-img img{transition-duration:0.3s;}.elementor-13941 .elementor-element.elementor-element-9c5ec8a .elementor-image-box-title{color:#FC6262;}.elementor-13941 .elementor-element.elementor-element-4c23535{--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;}.elementor-13941 .elementor-element.elementor-element-9d6f234.elementor-position-right .elementor-image-box-img{margin-left:15px;}.elementor-13941 .elementor-element.elementor-element-9d6f234.elementor-position-left .elementor-image-box-img{margin-right:15px;}.elementor-13941 .elementor-element.elementor-element-9d6f234.elementor-position-top .elementor-image-box-img{margin-bottom:15px;}.elementor-13941 .elementor-element.elementor-element-9d6f234 .elementor-image-box-wrapper .elementor-image-box-img{width:100%;}.elementor-13941 .elementor-element.elementor-element-9d6f234 .elementor-image-box-img img{transition-duration:0.3s;}.elementor-13941 .elementor-element.elementor-element-9d6f234 .elementor-image-box-title{color:#FC6262;}.elementor-13941 .elementor-element.elementor-element-351fd35{--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-13941 .elementor-element.elementor-element-b8f27d5.elementor-position-right .elementor-image-box-img{margin-left:15px;}.elementor-13941 .elementor-element.elementor-element-b8f27d5.elementor-position-left .elementor-image-box-img{margin-right:15px;}.elementor-13941 .elementor-element.elementor-element-b8f27d5.elementor-position-top .elementor-image-box-img{margin-bottom:15px;}.elementor-13941 .elementor-element.elementor-element-b8f27d5 .elementor-image-box-wrapper .elementor-image-box-img{width:100%;}.elementor-13941 .elementor-element.elementor-element-b8f27d5 .elementor-image-box-img img{transition-duration:0.3s;}.elementor-13941 .elementor-element.elementor-element-b8f27d5 .elementor-image-box-title{color:#FC6262;}.elementor-13941 .elementor-element.elementor-element-1239f52{--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-13941 .elementor-element.elementor-element-d2c5959.elementor-position-right .elementor-image-box-img{margin-left:15px;}.elementor-13941 .elementor-element.elementor-element-d2c5959.elementor-position-left .elementor-image-box-img{margin-right:15px;}.elementor-13941 .elementor-element.elementor-element-d2c5959.elementor-position-top .elementor-image-box-img{margin-bottom:15px;}.elementor-13941 .elementor-element.elementor-element-d2c5959 .elementor-image-box-wrapper .elementor-image-box-img{width:100%;}.elementor-13941 .elementor-element.elementor-element-d2c5959 .elementor-image-box-img img{transition-duration:0.3s;}.elementor-13941 .elementor-element.elementor-element-d2c5959 .elementor-image-box-title{color:#FC6262;}.elementor-13941 .elementor-element.elementor-element-1ff1d7a{--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;--margin-top:050px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-13941 .elementor-element.elementor-element-1ff1d7a:not(.elementor-motion-effects-element-type-background), .elementor-13941 .elementor-element.elementor-element-1ff1d7a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFEAA7;}.elementor-13941 .elementor-element.elementor-element-8521510{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-13941 .elementor-element.elementor-element-926c9e1 .elementor-heading-title{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );color:var( --e-global-color-primary );}.elementor-13941 .elementor-element.elementor-element-76e3a1e{--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;--border-radius:30px 30px 30px 30px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-13941 .elementor-element.elementor-element-76e3a1e:not(.elementor-motion-effects-element-type-background), .elementor-13941 .elementor-element.elementor-element-76e3a1e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-13941 .elementor-element.elementor-element-b24d0b5{font-family:"Zen Maru Gothic", Sans-serif;font-size:18px;line-height:1.4rlh;letter-spacing:1.1px;word-spacing:0px;}.elementor-13941 .elementor-element.elementor-element-f0f411c{--display:flex;}.elementor-13941 .elementor-element.elementor-element-862ff73 img{border-radius:75px 75px 75px 75px;}.elementor-13941 .elementor-element.elementor-element-eb39f77{text-align:center;}@media(max-width:1024px){.elementor-13941 .elementor-element.elementor-element-2dd24588{--min-height:37vh;--padding-top:80px;--padding-bottom:50px;--padding-left:30px;--padding-right:30px;--z-index:0;}.elementor-13941 .elementor-element.elementor-element-54e0ea3b{--padding-top:30px;--padding-bottom:190px;--padding-left:30px;--padding-right:30px;--z-index:0;}.elementor-13941 .elementor-element.elementor-element-2c4aee96{--padding-top:120px;--padding-bottom:120px;--padding-left:30px;--padding-right:30px;}.elementor-13941 .elementor-element.elementor-element-9aa4347{z-index:0;}.elementor-13941 .elementor-element.elementor-element-dfd48ce{--z-index:0;}.elementor-13941 .elementor-element.elementor-element-d6f9dfa{--padding-top:175px;--padding-bottom:200px;--padding-left:30px;--padding-right:30px;--z-index:0;}.elementor-13941 .elementor-element.elementor-element-0eef930 .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );}.elementor-13941 .elementor-element.elementor-element-94cd69d .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );}.elementor-13941 .elementor-element.elementor-element-8521510{--z-index:0;}.elementor-13941 .elementor-element.elementor-element-926c9e1 .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );}}@media(max-width:767px){.elementor-13941 .elementor-element.elementor-element-2dd24588{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:60px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-13941 .elementor-element.elementor-element-54e0ea3b > .elementor-shape-top svg, .elementor-13941 .elementor-element.elementor-element-54e0ea3b > .e-con-inner > .elementor-shape-top svg{height:150px;}.elementor-13941 .elementor-element.elementor-element-54e0ea3b{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;--z-index:0;}.elementor-13941 .elementor-element.elementor-element-2ae708b > .elementor-widget-container{margin:-20px -20px -20px -20px;padding:17px 0px 0px 0px;}.elementor-13941 .elementor-element.elementor-element-2c4aee96{--padding-top:0px;--padding-bottom:30px;--padding-left:20px;--padding-right:20px;}.elementor-13941 .elementor-element.elementor-element-dfd48ce{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-13941 .elementor-element.elementor-element-612d32a > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-13941 .elementor-element.elementor-element-688cf8a > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-13941 .elementor-element.elementor-element-d6f9dfa{--padding-top:300px;--padding-bottom:60px;--padding-left:20px;--padding-right:20px;}.elementor-13941 .elementor-element.elementor-element-0eef930 .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );}.elementor-13941 .elementor-element.elementor-element-3f9640b0{--margin-top:0px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;}.elementor-13941 .elementor-element.elementor-element-1aa46d53{--margin-top:0px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;}.elementor-13941 .elementor-element.elementor-element-94cd69d .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );}.elementor-13941 .elementor-element.elementor-element-9c5ec8a .elementor-image-box-img{margin-bottom:15px;}.elementor-13941 .elementor-element.elementor-element-9d6f234 .elementor-image-box-img{margin-bottom:15px;}.elementor-13941 .elementor-element.elementor-element-b8f27d5 .elementor-image-box-img{margin-bottom:15px;}.elementor-13941 .elementor-element.elementor-element-d2c5959 .elementor-image-box-img{margin-bottom:15px;}.elementor-13941 .elementor-element.elementor-element-1ff1d7a{--z-index:0;}.elementor-13941 .elementor-element.elementor-element-8521510{--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;}.elementor-13941 .elementor-element.elementor-element-926c9e1 .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );}}@media(min-width:768px){.elementor-13941 .elementor-element.elementor-element-2dd24588{--content-width:100%;}.elementor-13941 .elementor-element.elementor-element-2b07db8f{--width:1000px;}.elementor-13941 .elementor-element.elementor-element-9126cb3{--width:100%;}.elementor-13941 .elementor-element.elementor-element-3f9640b0{--width:48%;}.elementor-13941 .elementor-element.elementor-element-1aa46d53{--width:48%;}.elementor-13941 .elementor-element.elementor-element-1e3ca09{--width:100%;}.elementor-13941 .elementor-element.elementor-element-5c9c713{--width:100%;}.elementor-13941 .elementor-element.elementor-element-35fc82f{--width:49%;}.elementor-13941 .elementor-element.elementor-element-4c23535{--width:49%;}.elementor-13941 .elementor-element.elementor-element-351fd35{--width:49%;}.elementor-13941 .elementor-element.elementor-element-1239f52{--width:49%;}.elementor-13941 .elementor-element.elementor-element-76e3a1e{--content-width:600px;}}@media(max-width:1024px) and (min-width:768px){.elementor-13941 .elementor-element.elementor-element-35fc82f{--width:48%;}.elementor-13941 .elementor-element.elementor-element-4c23535{--width:48%;}.elementor-13941 .elementor-element.elementor-element-351fd35{--width:48%;}.elementor-13941 .elementor-element.elementor-element-1239f52{--width:48%;}}/* Start custom CSS for heading, class: .elementor-element-920e535 *//* もっと可愛く！手書き風ストライプと揺れるお花 */
.elementor-13941 .elementor-element.elementor-element-920e535 {
    /* 画像URL（自動的に読み込まれます） */
    --flower-url: url('https://olive-group.jp/wp-content/uploads/2026/02/cute_flower_crayon.webp');
    --sparkle-url: url('https://olive-group.jp/wp-content/uploads/2026/02/cute_sparkle_icon-1.webp');
    
    text-align: center;
    margin: 40px auto;
    position: relative;
    max-width: 600px; /* PCでの幅 */
}

/* 見出し本体のデザイン */
.elementor-13941 .elementor-element.elementor-element-920e535 .elementor-heading-title {
    display: inline-block;
    position: relative;
    padding: 0.8em 2.5em; /* 上下、左右の余白 */
    
    font-family: "M PLUS Rounded 1c", "Hiragino Kaku Gothic ProN", sans-serif;
    color: #880e4f; /* 濃いピンク文字 */
    font-weight: 800; /* 太字で可愛く */
    
    /* 背景：手書き風ストライプ */
    background: repeating-linear-gradient(
        -45deg,
        #fffdf6,
        #fffdf6 10px,
        #fff9c4 10px,
        #fff9c4 20px
    );
    
    /* 枠線：ふんわりピンクの二重線 */
    border: 4px double #ffccbc;
    border-radius: 50px; /* 丸み */
    
    /* 影：浮き出るような影 */
    box-shadow: 0 4px 0 #ffccbc, 0 8px 15px rgba(255, 183, 77, 0.2);
    
    z-index: 1;
}

/* 左上のお花（ゆらゆら揺れる） */
.elementor-13941 .elementor-element.elementor-element-920e535 .elementor-heading-title::before {
    content: "";
    position: absolute;
    top: -25px;
    left: -20px;
    width: 50px;
    height: 50px;
    background-image: var(--flower-url);
    background-size: contain;
    background-repeat: no-repeat;
    filter: drop-shadow(2px 2px 0 rgba(0,0,0,0.1)); /* 影をつける */
    
    /* ゆらゆらアニメーション */
    animation: swingFlower 3s ease-in-out infinite;
    transform-origin: bottom center;
}

/* 右下のキラキラ（ふわふわ浮く） */
.elementor-13941 .elementor-element.elementor-element-920e535 .elementor-heading-title::after {
    content: "";
    position: absolute;
    bottom: -15px;
    right: -25px;
    width: 40px;
    height: 40px;
    background-image: var(--sparkle-url);
    background-size: contain;
    background-repeat: no-repeat;
    
    /* ふわふわアニメーション */
    animation: floatSparkle 2.5s ease-in-out infinite;
}

/* アニメーション定義 */
@keyframes swingFlower {
    0%, 100% { transform: rotate(-10deg); }
    50% { transform: rotate(10deg); }
}

@keyframes floatSparkle {
    0%, 100% { transform: translateY(0) scale(1); }
    50% { transform: translateY(-5px) scale(1.1); }
}

/* モバイル調整 */
@media (max-width: 767px) {
    .elementor-13941 .elementor-element.elementor-element-920e535 .elementor-heading-title {
        font-size: 1.1rem; /* 少し小さく */
        padding: 0.8em 1.5em; /* 余白調整 */
        width: 80%; /* 幅を広めに */
    }
    .elementor-13941 .elementor-element.elementor-element-920e535 .elementor-heading-title::before {
        width: 40px;
        height: 40px;
        top: -20px;
        left: -15px;
    }
    .elementor-13941 .elementor-element.elementor-element-920e535 .elementor-heading-title::after {
        width: 30px;
        height: 30px;
        bottom: -10px;
        right: -15px;
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-0eef930 *//* もっと可愛く！手書き風ストライプと揺れるお花 */
.elementor-13941 .elementor-element.elementor-element-0eef930 {
    /* 画像URL（自動的に読み込まれます） */
    --flower-url: url('https://olive-group.jp/wp-content/uploads/2026/02/cute_flower_crayon.webp');
    --sparkle-url: url('https://olive-group.jp/wp-content/uploads/2026/02/cute_sparkle_icon-1.webp');
    
    text-align: center;
    margin: 40px auto;
    position: relative;
    max-width: 600px; /* PCでの幅 */
}

/* 見出し本体のデザイン */
.elementor-13941 .elementor-element.elementor-element-0eef930 .elementor-heading-title {
    display: inline-block;
    position: relative;
    padding: 0.8em 2.5em; /* 上下、左右の余白 */
    
    font-family: "M PLUS Rounded 1c", "Hiragino Kaku Gothic ProN", sans-serif;
    color: #880e4f; /* 濃いピンク文字 */
    font-weight: 800; /* 太字で可愛く */
    
    /* 背景：手書き風ストライプ */
    background: repeating-linear-gradient(
        -45deg,
        #fffdf6,
        #fffdf6 10px,
        #fff9c4 10px,
        #fff9c4 20px
    );
    
    /* 枠線：ふんわりピンクの二重線 */
    border: 4px double #ffccbc;
    border-radius: 50px; /* 丸み */
    
    /* 影：浮き出るような影 */
    box-shadow: 0 4px 0 #ffccbc, 0 8px 15px rgba(255, 183, 77, 0.2);
    
    z-index: 1;
}

/* 左上のお花（ゆらゆら揺れる） */
.elementor-13941 .elementor-element.elementor-element-0eef930 .elementor-heading-title::before {
    content: "";
    position: absolute;
    top: -25px;
    left: -20px;
    width: 50px;
    height: 50px;
    background-image: var(--flower-url);
    background-size: contain;
    background-repeat: no-repeat;
    filter: drop-shadow(2px 2px 0 rgba(0,0,0,0.1)); /* 影をつける */
    
    /* ゆらゆらアニメーション */
    animation: swingFlower 3s ease-in-out infinite;
    transform-origin: bottom center;
}

/* 右下のキラキラ（ふわふわ浮く） */
.elementor-13941 .elementor-element.elementor-element-0eef930 .elementor-heading-title::after {
    content: "";
    position: absolute;
    bottom: -15px;
    right: -25px;
    width: 40px;
    height: 40px;
    background-image: var(--sparkle-url);
    background-size: contain;
    background-repeat: no-repeat;
    
    /* ふわふわアニメーション */
    animation: floatSparkle 2.5s ease-in-out infinite;
}

/* アニメーション定義 */
@keyframes swingFlower {
    0%, 100% { transform: rotate(-10deg); }
    50% { transform: rotate(10deg); }
}

@keyframes floatSparkle {
    0%, 100% { transform: translateY(0) scale(1); }
    50% { transform: translateY(-5px) scale(1.1); }
}

/* モバイル調整 */
@media (max-width: 767px) {
    .elementor-13941 .elementor-element.elementor-element-0eef930 .elementor-heading-title {
        font-size: 1.1rem; /* 少し小さく */
        padding: 0.8em 1.5em; /* 余白調整 */
        width: 80%; /* 幅を広めに */
    }
    .elementor-13941 .elementor-element.elementor-element-0eef930 .elementor-heading-title::before {
        width: 40px;
        height: 40px;
        top: -20px;
        left: -15px;
    }
    .elementor-13941 .elementor-element.elementor-element-0eef930 .elementor-heading-title::after {
        width: 30px;
        height: 30px;
        bottom: -10px;
        right: -15px;
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-94cd69d *//* --- 1. 大枠の設定 --- */
.elementor-13941 .elementor-element.elementor-element-94cd69d {
    text-align: center;
    margin-bottom: 60px;
}

/* --- 2. 見出しテキスト（文字＋下線） --- */
.elementor-13941 .elementor-element.elementor-element-94cd69d .elementor-heading-title {
    font-family: "Zen Maru Gothic", sans-serif;
    font-weight: 700;
    font-size: 1.8rem;
    color: #880e4f;
    position: relative;
    display: inline-block;
    padding: 0 10px 15px 10px; /* 文字周りの余白（下は下線用） */
    
    /* 下線画像を背景として設定 */
    background-image: url('https://olive-group.jp/wp-content/uploads/2026/02/deco_handwritten_underline.webp');
    background-repeat: no-repeat;
    background-position: center bottom -20px; /* 文字の下に来るように調整 */
    background-size: 120% 50px; /* 横幅を文字より少し広く、高さ指定 */
    overflow: visible !important;
}

/* --- 3. クレヨンのお花（左側） --- */
.elementor-13941 .elementor-element.elementor-element-94cd69d .elementor-heading-title::before {
    content: ""; /* 中身は空 */
    position: absolute;
    top: 50%;
    left: -50px; /* 左外側へ */
    transform: translateY(-50%) rotate(-10deg); /* 垂直中央＆少し回転 */
    width: 40px;
    height: 40px;
    /* 画像を指定 */
    background-image: url('https://olive-group.jp/wp-content/uploads/2026/02/cute_flower_crayon.webp');
    background-size: contain;
    background-repeat: no-repeat;
}

/* --- 4. キラキラアイコン（右側） --- */
.elementor-13941 .elementor-element.elementor-element-94cd69d .elementor-heading-title::after {
    content: "";
    position: absolute;
    top: 0;
    right: -40px; /* 右上の外側へ */
    width: 30px;
    height: 30px;
    background-image: url('https://olive-group.jp/wp-content/uploads/2026/02/cute_sparkle_icon-1.webp');
    background-size: contain;
    background-repeat: no-repeat;
    transform: rotate(15deg);
}

/* --- スマホ表示の調整 --- */
@media (max-width: 768px) {
    .elementor-13941 .elementor-element.elementor-element-94cd69d .elementor-heading-title {
        font-size: 1.5rem;
        background-size: 110% 40px; /* スマホなら下線を少し小さく */
        background-position: center bottom -15px;
    }
    /* スマホでアイコン位置・サイズ調整 */
    .elementor-13941 .elementor-element.elementor-element-94cd69d .elementor-heading-title::before {
        left: -35px;
        width: 30px;
        height: 30px;
    }
    .elementor-13941 .elementor-element.elementor-element-94cd69d .elementor-heading-title::after {
        right: -30px;
        width: 25px;
        height: 25px;
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-926c9e1 *//* 修正版3：キラキラ画像URLを変更 */
.elementor-13941 .elementor-element.elementor-element-926c9e1 {
    /* 左のお花画像 */
    --flower-url: url('https://olive-group.jp/wp-content/uploads/2026/02/cute_flower_crayon.webp');
    /* ★変更：右のキラキラ画像 */
    --sparkle-url: url('https://olive-group.jp/wp-content/uploads/2026/02/cute_sparkle_icon-1.webp');
    
    text-align: center;
    margin: 40px auto;
    position: relative;
    width: auto;
    max-width: 100%;
}

/* 見出し本体のデザイン */
.elementor-13941 .elementor-element.elementor-element-926c9e1 .elementor-heading-title {
    display: inline-block;
    position: relative;
    padding: 0.8em 3em; 
    
    font-family: "M PLUS Rounded 1c", "Hiragino Kaku Gothic ProN", sans-serif;
    color: #880e4f;
    font-weight: 800;
    line-height: 1.4;
    
    /* 背景：手書き風ストライプ */
    background: repeating-linear-gradient(
        -45deg,
        #fffdf6,
        #fffdf6 10px,
        #fff9c4 10px,
        #fff9c4 20px
    );
    
    /* 枠線 */
    border: 4px double #ffccbc;
    border-radius: 50px;
    box-shadow: 0 4px 0 #ffccbc, 0 8px 15px rgba(255, 183, 77, 0.2);
    
    z-index: 1;
    
    white-space: nowrap !important;
    word-break: keep-all;
}

/* 左上のお花 */
.elementor-13941 .elementor-element.elementor-element-926c9e1 .elementor-heading-title::before {
    content: "";
    position: absolute;
    top: -25px;
    left: -20px;
    width: 50px;
    height: 50px;
    background-image: var(--flower-url);
    background-size: contain;
    background-repeat: no-repeat;
    filter: drop-shadow(2px 2px 0 rgba(0,0,0,0.1));
    animation: swingFlower 3s ease-in-out infinite;
    transform-origin: bottom center;
    pointer-events: none;
}

/* 右下のキラキラ */
.elementor-13941 .elementor-element.elementor-element-926c9e1 .elementor-heading-title::after {
    content: "";
    position: absolute;
    bottom: -20px;
    right: -25px;
    width: 45px;
    height: 45px;
    background-image: var(--sparkle-url);
    background-size: contain;
    background-repeat: no-repeat;
    animation: floatSparkle 2.5s ease-in-out infinite;
    pointer-events: none;
}

/* アニメーション */
@keyframes swingFlower {
    0%, 100% { transform: rotate(-10deg); }
    50% { transform: rotate(10deg); }
}

@keyframes floatSparkle {
    0%, 100% { transform: translateY(0) scale(1); }
    50% { transform: translateY(-5px) scale(1.1); }
}

/* モバイル調整 */
@media (max-width: 767px) {
    .elementor-13941 .elementor-element.elementor-element-926c9e1 .elementor-heading-title {
        font-size: 1.1rem;
        padding: 0.8em 2em;
        white-space: nowrap !important;
        width: auto;
    }
    
    .elementor-13941 .elementor-element.elementor-element-926c9e1 .elementor-heading-title::before {
        width: 40px;
        height: 40px;
        top: -18px;
        left: -12px;
    }
    .elementor-13941 .elementor-element.elementor-element-926c9e1 .elementor-heading-title::after {
        width: 35px;
        height: 35px;
        bottom: -15px;
        right: -12px;
    }
}/* End custom CSS */
/* Start custom CSS *//* ==========================================================================
   olive-group.jp 印刷用スタイルシート
   WordPress「追加CSS」またはElementor「カスタムCSS」に貼り付けて使用

   ★重要: 印刷時のA4ページ幅は約794px。
   各コンポーネントの @media (max-width: 900px) がトリガーされるため、
   モバイルレイアウト（縦並び・装飾非表示）を強制上書きする必要がある。
   インラインCSS の !important に勝つため、高詳細度セレクタを使用。
   ========================================================================== */

@media print {

  /* ==================================================================
     1. 基本設定: 色・背景の印刷を有効化 + アニメーション完全停止
     ================================================================== */
  *,
  *::before,
  *::after {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
    color-adjust: exact !important;
    animation: none !important;
    animation-duration: 0s !important;
    animation-delay: 0s !important;
    transition: none !important;
    transition-duration: 0s !important;
  }

  html,
  body {
    /* デスクトップ幅で描画し、ブラウザの「用紙に合わせる」で縮小させる */
    width: 1280px !important;
    min-width: 1280px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    font-size: initial !important;
  }

  body {
    background: #fff !important;
  }

  /* ==================================================================
     2. ヘッダーナビゲーション
        ★ PC版の横並びレイアウトを完全再現
        構造: header > 67bb6dc4(fixed) > 79c8fc58(bar) >
              689362e7(logo 30%) + 79a27c5a(nav area) >
              7457e95a(menus 84%) + 54d24356(お問合せ)
     ================================================================== */

  /* 2-1. header本体: fixed解除 */
  header.elementor-location-header {
    position: relative !important;
    width: 100% !important;
  }

  /* 2-2. fixedコンテナ → relative（フローに戻す） */
  header .elementor-element[data-settings*="fixed"],
  header .elementor-element.elementor-element-67bb6dc4 {
    position: relative !important;
    --position: relative !important;
    margin-bottom: 0 !important;
    --margin-bottom: 0 !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    inset: auto !important;
    transform: none !important;
    z-index: auto !important;
  }

  /* 2-3. ヘッダー内の全コンテナ: セクション15の width:100% を打ち消す */
  header.elementor-location-header .e-con,
  header.elementor-location-header .e-con-boxed,
  header.elementor-location-header .e-con-full,
  header.elementor-location-header .e-con-inner {
    width: auto !important;
    max-width: none !important;
  }

  /* 2-4. 外側バー(67bb6dc4): 横幅100%、横並び */
  header .elementor-element.elementor-element-67bb6dc4 {
    width: 100% !important;
    --content-width: 1280px !important;
    --padding-top: 15px !important;
    --padding-bottom: 10px !important;
    padding: 15px 20px 10px !important;
  }

  header .elementor-element.elementor-element-67bb6dc4 > .e-con-inner {
    width: 100% !important;
    max-width: 1280px !important;
    margin: 0 auto !important;
  }

  /* 2-5. 内側バー(79c8fc58): 横並びflex */
  header .elementor-element.elementor-element-79c8fc58 {
    width: 100% !important;
    --content-width: 1280px !important;
  }

  header .elementor-element.elementor-element-79c8fc58 > .e-con-inner {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 1280px !important;
  }

  /* 2-6. ロゴエリア(689362e7): 左寄せ、幅制限 */
  header .elementor-element.elementor-element-689362e7 {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 10px !important;
    width: auto !important;
    max-width: 300px !important;
    flex-shrink: 0 !important;
    flex-grow: 0 !important;
    --width: auto !important;
    --flex-grow: 0 !important;
  }

  /* 2-7. ロゴ画像: 100px（Elementor設定値） */
  header .elementor-element.elementor-element-a12d3e1 img {
    width: 80px !important;
    height: auto !important;
  }

  /* 2-8. サイト名: フォントサイズ */
  header .elementor-element.elementor-element-ced9936 .elementor-heading-title {
    font-size: 1.1rem !important;
    white-space: nowrap !important;
  }

  /* 2-9. ナビエリア(79a27c5a): 残りスペースを埋める */
  header .elementor-element.elementor-element-79a27c5a {
    flex: 1 1 auto !important;
    width: auto !important;
    --width: auto !important;
  }

  header .elementor-element.elementor-element-79a27c5a > .e-con-inner {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    width: 100% !important;
  }

  /* 2-10. メニューコンテナ(7457e95a): 横並び */
  header .elementor-element.elementor-element-7457e95a {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    flex: 1 1 auto !important;
    width: auto !important;
    --width: auto !important;
    --flex-grow: 1 !important;
  }

  /* 2-11. ドロップダウン・モバイルトグル: 非表示 */
  .elementor-nav-menu--dropdown,
  .elementor-menu-toggle {
    display: none !important;
  }

  /* 2-12. モバイル専用ナビウィジェット(5e7757c): 非表示 */
  .elementor-hidden-desktop,
  .elementor-hidden-desktop.elementor-hidden-tablet {
    display: none !important;
  }

  /* 2-13. デスクトップナビウィジェット(1d4c2e6): 強制表示 */
  header .elementor-element.elementor-element-1d4c2e6 {
    display: block !important;
  }

  /* 2-14. 水平メニュー: flexで横並び */
  .elementor-nav-menu--dropdown-mobile .elementor-nav-menu--main {
    display: flex !important;
  }

  .elementor-nav-menu--main .elementor-nav-menu {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 0 !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .elementor-nav-menu--main .elementor-nav-menu .menu-item {
    display: block !important;
    flex-shrink: 0 !important;
  }

  .elementor-nav-menu--main .elementor-nav-menu .elementor-item {
    display: block !important;
    padding: 8px 15px !important;
    font-size: 0.85rem !important;
    white-space: nowrap !important;
    color: #333 !important;
    text-decoration: none !important;
  }

  /* 2-15. お問合せボタン(54d24356): 右端に表示 */
  header .elementor-element.elementor-element-54d24356 {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    width: auto !important;
    --width: auto !important;
    min-width: 100px !important;
    padding: 8px 20px !important;
    border-radius: 8px !important;
  }

  header .elementor-element.elementor-element-54d24356 > .e-con-inner {
    width: auto !important;
  }

  /* ==================================================================
     3. ヒーローセクション (.kg-header-section)
        - 100vwトリック解除 → 固定幅1280px
        - 背景グラデーション明示保持
        - モーダル: アニメ停止、疑似要素の黄色背景
     ================================================================== */
  .kg-header-section {
    position: relative !important;
    width: 1280px !important;
    max-width: 1280px !important;
    min-width: 1280px !important;
    left: 0 !important;
    right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    min-height: 700px !important;
    padding: 40px 0 !important;
    overflow: visible !important;
    background-color: #fdfbf7 !important;
    background-image:
      radial-gradient(#e3f2fd 20%, transparent 20%),
      radial-gradient(#fff9c4 20%, transparent 20%),
      linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,243,224,0.5) 100%) !important;
    background-position: 0 0, 25px 25px, 0 0 !important;
    background-size: 50px 50px, 50px 50px, 100% 100% !important;
    page-break-inside: avoid !important;
  }

  /* ★ モバイルCSS上書き: flex-direction, min-height, padding-bottom */
  .kg-header-container {
    position: relative !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    align-items: center !important;
    min-height: 600px !important;
    height: auto !important;
    max-width: 1280px !important;
    width: 100% !important;
    padding: 20px !important;
    padding-bottom: 20px !important;
    overflow: visible !important;
  }

  .kg-center-modal {
    box-shadow: 0 10px 25px rgba(255, 171, 145, 0.3) !important;
    max-width: 520px !important;
    width: 90% !important;
    padding: 50px 40px !important;
    margin: 0 auto !important;
    transform: translateY(-4px) !important;
    /* ★ モバイルCSS上書き: order, flex-basis, margin-top */
    order: 0 !important;
    flex-basis: auto !important;
    margin-top: 0 !important;
    page-break-inside: avoid !important;
  }

  .kg-center-modal::before {
    background-color: #fffde7 !important;
    opacity: 1 !important;
    border-radius: 32px !important;
  }

  /* ==================================================================
     4. 施設写真フレーム: absolute配置を強制復元
        ★ インラインCSSの !important に勝つため高詳細度セレクタ使用
     ================================================================== */
  .kg-header-section .kg-header-container .kg-photo-frame {
    position: absolute !important;
    display: block !important;
    width: 220px !important;
    margin: 0 !important;
    order: 0 !important;
    padding: 8px !important;
    background: #fff !important;
    border-radius: 15px !important;
    box-shadow: 0 8px 15px rgba(0, 0, 0, 0.1) !important;
    z-index: 20 !important;
    page-break-inside: avoid !important;
  }

  .kg-header-section .kg-header-container .kg-photo-frame.kg-pos-tl {
    top: 5% !important;
    left: 0% !important;
    right: auto !important;
    bottom: auto !important;
    transform: rotate(-5deg) !important;
  }

  .kg-header-section .kg-header-container .kg-photo-frame.kg-pos-tr {
    top: 8% !important;
    right: 0% !important;
    left: auto !important;
    bottom: auto !important;
    transform: rotate(5deg) !important;
  }

  .kg-header-section .kg-header-container .kg-photo-frame.kg-pos-bl {
    bottom: 10% !important;
    left: 5% !important;
    top: auto !important;
    right: auto !important;
    transform: rotate(3deg) !important;
  }

  .kg-header-section .kg-header-container .kg-photo-frame.kg-pos-br {
    bottom: 8% !important;
    right: 5% !important;
    top: auto !important;
    left: auto !important;
    transform: rotate(-3deg) !important;
  }

  /* ==================================================================
     5. ヒーロー装飾要素: 強制表示 + デスクトップ位置固定
     ================================================================== */
  .kg-animal,
  .kg-animal-left,
  .kg-animal-right,
  .kg-animal-extra,
  .kg-animal-bears,
  .kg-animal-giraffes,
  .kg-cloud-css,
  .kg-balloon-img,
  .kg-bottom-wave,
  .kg-bottom-wave svg,
  .kg-bottom-wave path {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .kg-cloud-css::before,
  .kg-cloud-css::after {
    display: block !important;
    visibility: visible !important;
  }

  /* tebura-top-header バリアント */
  .kg-header-section .kg-animal-left {
    left: 25% !important;
    bottom: -12% !important;
    width: 280px !important;
    transform: rotate(-5deg) !important;
  }

  .kg-header-section .kg-animal-right {
    right: 25% !important;
    bottom: 2% !important;
    width: 160px !important;
    transform: rotate(5deg) !important;
  }

  .kg-header-section .kg-animal-extra {
    display: block !important;
    right: 20% !important;
    top: 6% !important;
    width: 150px !important;
    transform: rotate(10deg) !important;
    z-index: 30 !important;
  }

  /* elementor_header_block バリアント */
  .kg-header-section .kg-animal-bears {
    left: 20% !important;
    bottom: 2% !important;
    width: 160px !important;
    transform: rotate(-10deg) !important;
  }

  .kg-header-section .kg-animal-giraffes {
    right: 18% !important;
    bottom: 2% !important;
    width: 220px !important;
    transform: rotate(5deg) !important;
  }

  /* 雲（アニメ停止後の静止状態） */
  .kg-cloud-1 {
    top: 10% !important;
    left: 10% !important;
    transform: translateX(0) !important;
  }

  .kg-cloud-2 {
    bottom: 20% !important;
    right: 10% !important;
    transform: scale(0.8) !important;
  }

  /* 気球 */
  .kg-balloon-img {
    transform: translateY(-6px) !important;
  }

  .kg-balloon-l {
    top: 15% !important;
    left: 15% !important;
  }

  /* 下部の雲SVGウェーブ */
  .kg-bottom-wave {
    bottom: -2px !important;
    line-height: 0 !important;
  }

  .kg-bottom-wave svg {
    width: calc(100% + 1.3px) !important;
    height: 120px !important;
  }

  .kg-bottom-wave path {
    fill: #ffebee !important;
    fill-opacity: 1 !important;
  }

  /* ==================================================================
     6. 保育理念カード (.kindergarten-block)
        ★ 最重要: flex-direction: row を強制して3列表示
     ================================================================== */
  .kindergarten-block {
    padding: 60px 0 !important;
    page-break-inside: avoid !important;
    overflow: visible !important;
    background-color: #fffdf6 !important;
  }

  /* ★★★ モバイルCSS「flex-direction: column」を上書き ★★★ */
  .kindergarten-block .k-container {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    align-items: stretch !important;
    gap: 20px !important;
    max-width: 1000px !important;
    width: 100% !important;
    padding: 0 20px !important;
  }

  /* ★★★ カード幅: モバイルの width:100%/max-width:380px を上書き ★★★ */
  .kindergarten-block .k-container .k-card {
    flex: 1 1 0 !important;
    width: auto !important;
    max-width: 33% !important;
    min-width: 0 !important;
    page-break-inside: avoid !important;
    background-color: #ffebee !important;
    border: 4px solid #fff !important;
    overflow: hidden !important;
  }

  .kindergarten-block .k-card.card-center {
    background-color: #fffde7 !important;
    border-color: #fdd835 !important;
    transform: scale(1.02) !important;
  }

  .k-icon-area {
    width: 50px !important;
    height: 50px !important;
    margin-bottom: 10px !important;
  }

  .k-title {
    font-size: 1.1rem !important;
    margin-bottom: 8px !important;
  }

  .k-text {
    font-size: 0.85rem !important;
    line-height: 1.6 !important;
  }

  /* k-img-area（画像付きカード版） */
  .k-img-area {
    width: 100% !important;
    aspect-ratio: 4 / 3 !important;
    height: auto !important;
    min-height: 140px !important;
    background: #fff !important;
    margin-bottom: 15px !important;
    overflow: hidden !important;
    page-break-inside: avoid !important;
  }

  .k-img-area > img,
  .k-img-area img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    transform: none !important;
  }

  /* ★★★ 装飾画像: モバイルの display:none を上書き ★★★ */
  .kindergarten-block .deco-img,
  .kindergarten-block .deco-bears,
  .kindergarten-block .deco-animals,
  .kindergarten-block .deco-giraffes,
  .kindergarten-block .deco-sun {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .deco-bears {
    bottom: -60px !important;
    left: -220px !important;
    width: 250px !important;
  }

  .deco-giraffes {
    bottom: -50px !important;
    right: -250px !important;
    width: 280px !important;
  }

  .deco-sun {
    top: -120px !important;
    left: -80px !important;
    width: 140px !important;
    transform: translateY(-6px) !important;
  }

  .deco-animals {
    top: -120px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 180px !important;
  }

  /* ==================================================================
     7. 手ぶらで保育 メインセクション (.tebura-*)
     ================================================================== */
  .tebura-section-wrapper {
    padding: 40px 10px !important;
    background-color: #fffdf5 !important;
    page-break-inside: avoid !important;
  }

  .tebura-card-container {
    padding: 40px !important;
    max-width: 800px !important;
    overflow: visible !important;
  }

  .tebura-icon {
    display: block !important;
    width: 100px !important;
    height: 100px !important;
    background-size: 200px 200px !important;
    opacity: 0.9 !important;
  }

  .icon-diaper {
    background-position: 0 0 !important;
    transform: rotate(-15deg) !important;
  }

  .icon-towel {
    background-position: -100px 0 !important;
    transform: rotate(10deg) !important;
  }

  .icon-bib {
    background-position: 0 -100px !important;
    transform: rotate(5deg) !important;
  }

  .icon-stars {
    background-position: -100px -100px !important;
    transform: rotate(-10deg) !important;
  }

  .tebura-photo {
    max-width: 400px !important;
  }

  .tebura-photo-frame {
    transform: rotate(-1deg) !important;
    overflow: visible !important;
  }

  .tebura-badge-free {
    position: absolute !important;
    top: -15px !important;
    right: -15px !important;
    background: #ff7043 !important;
    color: #fff !important;
    transform: rotate(15deg) !important;
  }

  .tebura-main-title {
    font-size: 2rem !important;
    color: #d81b60 !important;
  }

  .tebura-main-title::before {
    left: -35px !important;
    transform: translateY(-50%) rotate(-20deg) !important;
  }

  .tebura-main-title::after {
    right: -35px !important;
    transform: translateY(-50%) rotate(20deg) !important;
  }

  .tebura-sub-title {
    background-color: #ffe0b2 !important;
    color: #e65100 !important;
  }

  .marker-pink {
    background: linear-gradient(transparent 60%, #ffcdd2 60%) !important;
  }

  /* ==================================================================
     8. 手ぶら詳細カード (.tebura-details)
        ★ flex-direction: row を強制して3列表示
     ================================================================== */
  .tebura-details {
    padding: 60px 15px !important;
    overflow: visible !important;
    background-color: #fffdf6 !important;
    page-break-inside: avoid !important;
  }

  /* ★★★ モバイルCSS「flex-direction: column」を上書き ★★★ */
  .tebura-details .td-container {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    align-items: stretch !important;
    gap: 20px !important;
    max-width: 1000px !important;
    width: 100% !important;
  }

  /* ★★★ カード幅: モバイルの width:100%/max-width:none を上書き ★★★ */
  .tebura-details .td-card {
    flex: 1 1 0 !important;
    width: auto !important;
    max-width: 33% !important;
    min-width: 0 !important;
    page-break-inside: avoid !important;
  }

  .tebura-details .td-img-area {
    width: 100% !important;
    height: 160px !important;
    overflow: hidden !important;
    background: #fff !important;
  }

  .tebura-details .td-img-area > img {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    transform: none !important;
  }

  .tebura-details .td-title {
    font-size: 1rem !important;
    color: #880e4f !important;
  }

  .tebura-details .td-text {
    font-size: 0.8rem !important;
    line-height: 1.5 !important;
  }

  /* ★ 装飾: モバイルの display:none を上書き */
  .tebura-details .td-deco,
  .tebura-details .td-deco-bears,
  .tebura-details .td-deco-animals,
  .tebura-details .td-deco-giraffes,
  .tebura-details .td-deco-sun {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .tebura-details .td-deco-sun {
    transform: translateY(-6px) !important;
  }

  /* ==================================================================
     9. 手ぶら詳細カード2 (.tebura-details-2)
        ★ flex-direction: row を強制して3列表示
     ================================================================== */
  .tebura-details-2 {
    padding: 60px 15px !important;
    overflow: visible !important;
    background-color: #fffdf6 !important;
    page-break-inside: avoid !important;
  }

  /* ★★★ モバイルCSS「flex-direction: column」を上書き ★★★ */
  .tebura-details-2 .td-container {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    align-items: stretch !important;
    gap: 20px !important;
    max-width: 1000px !important;
    width: 100% !important;
  }

  /* ★★★ カード幅を上書き ★★★ */
  .tebura-details-2 .td-card {
    flex: 1 1 0 !important;
    width: auto !important;
    max-width: 33% !important;
    min-width: 0 !important;
    page-break-inside: avoid !important;
  }

  .tebura-details-2 .td-img-area {
    width: 100% !important;
    height: 160px !important;
    overflow: hidden !important;
    background: #fff !important;
  }

  .tebura-details-2 .td-img-area > img {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    transform: none !important;
  }

  .tebura-details-2 .td-title {
    font-size: 1rem !important;
    color: #880e4f !important;
  }

  .tebura-details-2 .td-text {
    font-size: 0.8rem !important;
    line-height: 1.5 !important;
  }

  /* ★ 装飾: モバイルの display:none を上書き */
  .tebura-details-2 .td-deco,
  .tebura-details-2 .td-deco-rainbow,
  .tebura-details-2 .td-deco-elephant,
  .tebura-details-2 .td-deco-balloon {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .tebura-details-2 .td-deco-rainbow {
    top: -100px !important;
    left: -150px !important;
    width: 200px !important;
  }

  .tebura-details-2 .td-deco-elephant {
    bottom: -40px !important;
    right: -280px !important;
    width: 260px !important;
  }

  .tebura-details-2 .td-deco-balloon {
    top: -140px !important;
    right: -120px !important;
    width: 160px !important;
    transform: translateY(-8px) !important;
  }

  /* ==================================================================
     10. 見出し装飾 (.miryoku)
     ================================================================== */
  .miryoku .elementor-heading-title {
    color: #880e4f !important;
    page-break-after: avoid !important;
  }

  .miryoku {
    position: relative !important;
    padding-bottom: 40px !important;
    color: #880e4f !important;
  }

  .miryoku::after {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    left: 50% !important;
    bottom: 0 !important;
    transform: translateX(-50%) !important;
    width: 300px !important;
    height: 35px !important;
    background-image: url('https://olive-group.jp/wp-content/uploads/2026/02/kindergarten_heading_decoration.webp') !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    background-position: center bottom !important;
  }

  /* ==================================================================
     11. お問い合わせボタン (.tebura-contact-btns-v2)
         ★ モバイルの flex-direction: column を上書き
     ================================================================== */
  .tebura-contact-btns-v2 {
    display: flex !important;
    flex-direction: row !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 50px !important;
    flex-wrap: wrap !important;
    width: 100% !important;
    padding: 60px 20px !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    page-break-inside: avoid !important;
  }

  .tbtn-link {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 340px !important;
    height: 120px !important;
    max-width: 340px !important;
    margin-top: 20px !important;
    text-decoration: none !important;
    isolation: isolate !important;
    overflow: visible !important;
    transform: none !important;
    page-break-inside: avoid !important;
  }

  .tbtn-bg {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: fill !important;
    z-index: 1 !important;
  }

  .tbtn-icon {
    position: absolute !important;
    z-index: 3 !important;
    pointer-events: none !important;
  }

  .tbtn-icon-rabbit {
    width: 130px !important;
    left: -40px !important;
    bottom: -25px !important;
    top: auto !important;
    transform: rotate(-5deg) !important;
  }

  .tbtn-icon-bear {
    width: 100px !important;
    left: -25px !important;
    bottom: -25px !important;
    transform: rotate(5deg) !important;
  }

  .tbtn-text {
    position: relative !important;
    z-index: 2 !important;
    font-family: 'Yomogi', 'M PLUS Rounded 1c', cursive !important;
    font-size: 1.8rem !important;
    font-weight: 700 !important;
    color: #5d4037 !important;
    letter-spacing: 0.1em !important;
    line-height: 1.2 !important;
    text-align: center !important;
    text-shadow: 2px 2px 0 rgba(255,255,255,0.8) !important;
    padding-left: 30px !important;
  }

  /* ==================================================================
     12. 働くママセクション / 求人セクション
     ★ elementor-invisible（アニメーション待ち状態）を強制表示
     ★ animated-slow のアニメ初期状態（opacity:0）を上書き
     ================================================================== */

  /* ★★★ elementor-invisible: 高詳細度で強制可視化 ★★★ */
  .elementor-invisible,
  .e-con.elementor-invisible,
  .e-con.e-child.elementor-invisible,
  [class*="elementor-element"].elementor-invisible {
    visibility: visible !important;
    opacity: 1 !important;
  }

  /* ★ animated-slow / animated: アニメ停止＆初期状態リセット */
  .animated,
  .animated-slow {
    animation: none !important;
    animation-duration: 0s !important;
    animation-fill-mode: none !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  /* ★ 働くママ親コンテナ（d6f9dfa）: 背景・シェイプ・レイアウト */
  .elementor-element.elementor-element-d6f9dfa {
    page-break-inside: avoid !important;
    overflow: visible !important;
  }

  /* ★ 働くママ内部の2カラムレイアウト */
  .elementor-element-d6f9dfa .elementor-element-9126cb3 {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
  }

  /* ★ 「働くママにやさしい保育園です」見出し: 全幅 */
  .elementor-element-d6f9dfa .elementor-element-0eef930 {
    flex-basis: 100% !important;
    width: 100% !important;
    text-align: center !important;
  }

  /* ★ 子カード（3f9640b0, 1aa46d53）: 2列表示 */
  .elementor-element-d6f9dfa .elementor-element-3f9640b0,
  .elementor-element-d6f9dfa .elementor-element-1aa46d53 {
    visibility: visible !important;
    opacity: 1 !important;
    flex: 1 1 45% !important;
    max-width: 50% !important;
    page-break-inside: avoid !important;
  }

  /* ★ パルスアニメーション付きボタン: アニメ停止 */
  .elementor-animation-pulse {
    animation: none !important;
  }

  /* ★ マーケティングボタン（ママさんドライバー募集中 等）の表示 */
  .uael-marketing-button .elementor-button {
    animation: none !important;
  }

  /* ★ シェイプディバイダー（雲）: 表示 */
  .elementor-shape {
    display: block !important;
  }

  .elementor-shape svg {
    width: 100% !important;
  }

  /* ==================================================================
     13. グループ保育園一覧
     ================================================================== */
  .elementor-image-box-wrapper {
    page-break-inside: avoid !important;
  }

  .elementor-image-box-img img {
    max-height: 150px !important;
    width: auto !important;
    object-fit: cover !important;
  }

  /* ==================================================================
     14. フッター
     ================================================================== */
  footer.elementor-location-footer {
    page-break-before: auto !important;
    page-break-inside: avoid !important;
    margin-top: 20px !important;
  }

  footer .elementor-shape {
    display: block !important;
  }

  /* ==================================================================
     15. Elementor共通の印刷対応
     ★ ヘッダー内コンテナは除外（セクション2で個別制御）
     ================================================================== */
  main .e-con,
  main .e-con-boxed,
  main .e-con-full,
  footer .e-con,
  footer .e-con-boxed,
  footer .e-con-full {
    max-width: 100% !important;
    width: 100% !important;
    overflow: visible !important;
  }

  main .e-con-inner,
  footer .e-con-inner {
    max-width: 100% !important;
    width: 100% !important;
  }

  .elementor-widget-spacer {
    display: none !important;
  }

  .elementor > .e-con {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }

  [data-settings*="background_background"] {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  /* ==================================================================
     16. リンク: 印刷時にURLを非表示
     ================================================================== */
  a[href]::after {
    content: none !important;
  }

  /* ==================================================================
     17. ページ区切り制御
     ================================================================== */
  .e-con.e-parent {
    page-break-inside: avoid !important;
  }

  h1, h2, h3, h4, h5, h6,
  .elementor-heading-title {
    page-break-after: avoid !important;
    orphans: 3 !important;
    widows: 3 !important;
  }

  img {
    page-break-inside: avoid !important;
    max-width: 100% !important;
  }

  /* ==================================================================
     18. ボックスシャドウの簡素化
     ================================================================== */
  .elementor-widget-container,
  .elementor-image-box-wrapper {
    box-shadow: none !important;
  }

  /* ==================================================================
     19. 印刷ページ設定
     ================================================================== */
  @page {
    size: A4 landscape;
    margin: 5mm;
  }

  @page :first {
    margin-top: 5mm;
  }

  /* ==================================================================
     20. 不要要素の非表示
     ================================================================== */
  .skip-link {
    display: none !important;
  }

  script,
  noscript {
    display: none !important;
  }

  /* ==================================================================
     21. overflow クリッピング防止（全コンポーネント共通）
     ================================================================== */
  .tebura-details,
  .tebura-details-2,
  .tebura-section-wrapper,
  .tebura-card-container,
  .kindergarten-block,
  .kg-header-section {
    overflow-x: visible !important;
    overflow-y: visible !important;
    overflow: visible !important;
  }

}/* End custom CSS */