.elementor-16 .elementor-element.elementor-element-685102f{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-551059f{--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:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-551059f:not(.elementor-motion-effects-element-type-background), .elementor-16 .elementor-element.elementor-element-551059f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://www.yamatake-sohken.com/wp-content/uploads/2025/09/top8svg.jpg");background-position:bottom right;background-repeat:no-repeat;background-size:contain;}.elementor-16 .elementor-element.elementor-element-7862ffb{--display:flex;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.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 );color:var( --e-global-color-primary );}.elementor-16 .elementor-element.elementor-element-e051aa7 .elementor-heading-title{font-family:"Montserrat-VariableFont_wght", Sans-serif;font-size:20px;font-weight:500;text-transform:uppercase;letter-spacing:2px;color:#169E7E;}.elementor-16 .elementor-element.elementor-element-1c2f9ab .elementor-heading-title{font-family:"IBMPlexSansJP-Bold", Sans-serif;font-size:48px;font-weight:500;line-height:60px;letter-spacing:2px;}.elementor-16 .elementor-element.elementor-element-1818817 .elementor-heading-title{font-family:"Montserrat-VariableFont_wght", Sans-serif;font-size:14px;font-weight:600;letter-spacing:2px;color:#B4B4B4;}.elementor-widget-text-editor{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-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-16 .elementor-element.elementor-element-0749c5a{width:100%;max-width:100%;font-family:"IBMPlexSansJP-Regular", Sans-serif;font-weight:400;line-height:30px;letter-spacing:2px;word-spacing:0px;}.elementor-16 .elementor-element.elementor-element-40b5324{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-cd01134{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-1f849a0{--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:80px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-1f849a0:not(.elementor-motion-effects-element-type-background), .elementor-16 .elementor-element.elementor-element-1f849a0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #FFFFFF 14%, #169E7E 14%);}.elementor-16 .elementor-element.elementor-element-0d563f0{--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:0px 0px;--row-gap:0px;--column-gap:0px;--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-weight:var( --e-global-typography-text-font-weight );}.elementor-16 .elementor-element.elementor-element-bf4cb52{width:100%;max-width:100%;}.elementor-16 .elementor-element.elementor-element-bf4cb52 img{width:100%;}.elementor-16 .elementor-element.elementor-element-943eb27{width:100%;max-width:100%;}.elementor-16 .elementor-element.elementor-element-943eb27 img{width:100%;}.elementor-16 .elementor-element.elementor-element-f46ad53{--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;--justify-content:center;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:40px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-8e7d980{text-align:center;}.elementor-16 .elementor-element.elementor-element-8e7d980 .elementor-heading-title{font-family:"Montserrat-VariableFont_wght", Sans-serif;font-size:30px;font-weight:500;text-transform:uppercase;letter-spacing:2px;color:#FFFFFF;}.elementor-16 .elementor-element.elementor-element-5ccbac8{text-align:center;}.elementor-16 .elementor-element.elementor-element-5ccbac8 .elementor-heading-title{font-family:"IBMPlexSansJP-Bold", Sans-serif;font-size:20px;font-weight:400;line-height:20px;letter-spacing:2px;color:#FFFFFF;}.elementor-16 .elementor-element.elementor-element-adafcf4{--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;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--margin-top:-24px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-b6fa906{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-6de0214:not( .elementor-widget-image ) .elementor-widget-container, .elementor-16 .elementor-element.elementor-element-6de0214.elementor-widget-image .elementor-widget-container img{-webkit-mask-image:url( https://www.yamatake-sohken.com/wp-content/plugins/elementor/assets/mask-shapes/circle.svg );-webkit-mask-size:contain;-webkit-mask-position:center center;-webkit-mask-repeat:no-repeat;}.elementor-16 .elementor-element.elementor-element-214fe7d{text-align:center;}.elementor-16 .elementor-element.elementor-element-214fe7d .elementor-heading-title{font-family:"IBMPlexSansJP-Bold", Sans-serif;font-size:20px;font-weight:500;line-height:20px;letter-spacing:2px;color:#FFFFFF;}.elementor-16 .elementor-element.elementor-element-59fd09e{width:100%;max-width:100%;text-align:center;font-family:"IBMPlexSansJP-Regular", Sans-serif;font-weight:400;line-height:30px;letter-spacing:2px;word-spacing:0px;color:#FFFFFF;}.elementor-16 .elementor-element.elementor-element-2af8040{--display:flex;--margin-top:50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-7d6cc53:not( .elementor-widget-image ) .elementor-widget-container, .elementor-16 .elementor-element.elementor-element-7d6cc53.elementor-widget-image .elementor-widget-container img{-webkit-mask-image:url( https://www.yamatake-sohken.com/wp-content/plugins/elementor/assets/mask-shapes/circle.svg );-webkit-mask-size:contain;-webkit-mask-position:center center;-webkit-mask-repeat:no-repeat;}.elementor-16 .elementor-element.elementor-element-b64333c{text-align:center;}.elementor-16 .elementor-element.elementor-element-b64333c .elementor-heading-title{font-family:"IBMPlexSansJP-Bold", Sans-serif;font-size:20px;font-weight:500;line-height:20px;letter-spacing:2px;color:#FFFFFF;}.elementor-16 .elementor-element.elementor-element-f591767{width:100%;max-width:100%;text-align:center;font-family:"IBMPlexSansJP-Regular", Sans-serif;font-weight:400;line-height:30px;letter-spacing:2px;word-spacing:0px;color:#FFFFFF;}.elementor-16 .elementor-element.elementor-element-c24336f{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-5b82f3a:not( .elementor-widget-image ) .elementor-widget-container, .elementor-16 .elementor-element.elementor-element-5b82f3a.elementor-widget-image .elementor-widget-container img{-webkit-mask-image:url( https://www.yamatake-sohken.com/wp-content/plugins/elementor/assets/mask-shapes/circle.svg );-webkit-mask-size:contain;-webkit-mask-position:center center;-webkit-mask-repeat:no-repeat;}.elementor-16 .elementor-element.elementor-element-3a44a34{text-align:center;}.elementor-16 .elementor-element.elementor-element-3a44a34 .elementor-heading-title{font-family:"IBMPlexSansJP-Bold", Sans-serif;font-size:20px;font-weight:500;line-height:20px;letter-spacing:2px;color:#FFFFFF;}.elementor-16 .elementor-element.elementor-element-2ffcf09{width:100%;max-width:100%;text-align:center;font-family:"IBMPlexSansJP-Regular", Sans-serif;font-weight:400;line-height:30px;letter-spacing:2px;word-spacing:0px;color:#FFFFFF;}.elementor-16 .elementor-element.elementor-element-8ac86d3{--display:flex;--justify-content:center;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--padding-top:81px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-8ac86d3:not(.elementor-motion-effects-element-type-background), .elementor-16 .elementor-element.elementor-element-8ac86d3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #FFFFFF 62%, #E7E7E7 62%);}.elementor-16 .elementor-element.elementor-element-57005cb{--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-16 .elementor-element.elementor-element-50eebd4 .elementor-heading-title{font-family:"Montserrat-VariableFont_wght", Sans-serif;font-size:30px;font-weight:500;text-transform:uppercase;letter-spacing:2px;color:#169E7E;}.elementor-16 .elementor-element.elementor-element-04b741b .elementor-heading-title{font-family:"IBMPlexSansJP-Bold", Sans-serif;font-size:20px;font-weight:500;line-height:20px;letter-spacing:2px;}.elementor-16 .elementor-element.elementor-element-84637a2{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-7db4ad4{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:40px 40px;--row-gap:40px;--column-gap:40px;--padding-top:0px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-7db4ad4:not(.elementor-motion-effects-element-type-background), .elementor-16 .elementor-element.elementor-element-7db4ad4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#E7E7E7;}.elementor-16 .elementor-element.elementor-element-b394439{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-a8c8f76{--display:flex;--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;--justify-content:center;--align-items:center;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--padding-top:80px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-121652b{--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-16 .elementor-element.elementor-element-121652b.e-con{--align-self:center;}.elementor-16 .elementor-element.elementor-element-1d458e9{--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;--justify-content:center;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-d211ba5 .elementor-heading-title{font-family:"Montserrat-VariableFont_wght", Sans-serif;font-size:30px;font-weight:500;text-transform:uppercase;letter-spacing:2px;color:#169E7E;}.elementor-16 .elementor-element.elementor-element-2204fcd .elementor-heading-title{font-family:"IBMPlexSansJP-Bold", Sans-serif;font-size:20px;font-weight:500;line-height:20px;letter-spacing:2px;}.elementor-16 .elementor-element.elementor-element-b5579ae > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-16 .elementor-element.elementor-element-eb18c32{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-7bc04a8{--display:flex;--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-7bc04a8:not(.elementor-motion-effects-element-type-background), .elementor-16 .elementor-element.elementor-element-7bc04a8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#E7E7E7;}.elementor-16 .elementor-element.elementor-element-a8baa37{width:100%;max-width:100%;}.elementor-16 .elementor-element.elementor-element-a8baa37 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-16 .elementor-element.elementor-element-d5f33d5{--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-16 .elementor-element.elementor-element-c0a27ed{--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;--padding-top:80px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-3db3edd{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-6a03806{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-f18d0b1 .elementor-heading-title{font-family:"Montserrat-VariableFont_wght", Sans-serif;font-size:30px;font-weight:500;text-transform:uppercase;letter-spacing:2px;color:#169E7E;}.elementor-16 .elementor-element.elementor-element-deb9b88 .elementor-heading-title{font-family:"IBMPlexSansJP-Bold", Sans-serif;font-size:20px;font-weight:500;line-height:20px;letter-spacing:2px;}.elementor-16 .elementor-element.elementor-element-383cd38{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-383cd38.e-con{--align-self:flex-end;}.elementor-16 .elementor-element.elementor-element-4a27676{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}@media(min-width:768px){.elementor-16 .elementor-element.elementor-element-551059f{--content-width:1000px;}.elementor-16 .elementor-element.elementor-element-7862ffb{--width:816px;}.elementor-16 .elementor-element.elementor-element-40b5324{--width:300px;}.elementor-16 .elementor-element.elementor-element-cd01134{--width:800px;}.elementor-16 .elementor-element.elementor-element-adafcf4{--content-width:900px;}.elementor-16 .elementor-element.elementor-element-b394439{--width:300px;}.elementor-16 .elementor-element.elementor-element-eb18c32{--width:300px;}.elementor-16 .elementor-element.elementor-element-d5f33d5{--width:300px;}.elementor-16 .elementor-element.elementor-element-383cd38{--width:300px;}.elementor-16 .elementor-element.elementor-element-4a27676{--width:500px;}}@media(max-width:767px){.elementor-16 .elementor-element.elementor-element-685102f{--min-height:0px;}.elementor-16 .elementor-element.elementor-element-03f0e76{width:100%;max-width:100%;}.elementor-16 .elementor-element.elementor-element-551059f{--padding-top:80px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px;}.elementor-16 .elementor-element.elementor-element-e051aa7 .elementor-heading-title{font-size:14px;}.elementor-16 .elementor-element.elementor-element-1c2f9ab{width:var( --container-widget-width, 270px );max-width:270px;--container-widget-width:270px;--container-widget-flex-grow:0;}.elementor-16 .elementor-element.elementor-element-1c2f9ab .elementor-heading-title{font-size:30px;line-height:1.4em;}.elementor-16 .elementor-element.elementor-element-1818817 .elementor-heading-title{letter-spacing:1px;}.elementor-16 .elementor-element.elementor-element-0749c5a{font-size:14px;line-height:1.87em;}.elementor-16 .elementor-element.elementor-element-cd01134{--width:100%;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-16 .elementor-element.elementor-element-2936446{width:100%;max-width:100%;}.elementor-16 .elementor-element.elementor-element-2936446 > .elementor-widget-container{margin:0px 0px 0px -20px;padding:0px 0px 0px 0px;}.elementor-16 .elementor-element.elementor-element-2936446.elementor-element{--align-self:center;}.elementor-16 .elementor-element.elementor-element-1f849a0{--gap:40px 40px;--row-gap:40px;--column-gap:40px;--margin-top:40px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-1f849a0:not(.elementor-motion-effects-element-type-background), .elementor-16 .elementor-element.elementor-element-1f849a0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #FFFFFF 1%, #169E7E 0%);}.elementor-16 .elementor-element.elementor-element-f46ad53{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-8e7d980 .elementor-heading-title{font-size:16px;}.elementor-16 .elementor-element.elementor-element-adafcf4{--gap:20px 20px;--row-gap:20px;--column-gap:20px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-16 .elementor-element.elementor-element-b6fa906{--width:80%;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-214fe7d .elementor-heading-title{font-size:18px;}.elementor-16 .elementor-element.elementor-element-59fd09e{font-size:14px;line-height:1.8em;}.elementor-16 .elementor-element.elementor-element-2af8040{--width:80%;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-16 .elementor-element.elementor-element-b64333c .elementor-heading-title{font-size:18px;}.elementor-16 .elementor-element.elementor-element-f591767{font-size:14px;line-height:1.8em;}.elementor-16 .elementor-element.elementor-element-c24336f{--width:80%;}.elementor-16 .elementor-element.elementor-element-3a44a34 .elementor-heading-title{font-size:18px;}.elementor-16 .elementor-element.elementor-element-2ffcf09{font-size:14px;line-height:1.8em;}.elementor-16 .elementor-element.elementor-element-8ac86d3:not(.elementor-motion-effects-element-type-background), .elementor-16 .elementor-element.elementor-element-8ac86d3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #FFFFFF 38%, #E7E7E7 38%);}.elementor-16 .elementor-element.elementor-element-8ac86d3{--padding-top:40px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-50eebd4 .elementor-heading-title{font-size:16px;}.elementor-16 .elementor-element.elementor-element-04b741b .elementor-heading-title{font-size:20px;}.elementor-16 .elementor-element.elementor-element-6d5ec96{width:100%;max-width:100%;}.elementor-16 .elementor-element.elementor-element-7db4ad4{--padding-top:0px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-16 .elementor-element.elementor-element-a8c8f76{--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-16 .elementor-element.elementor-element-1d458e9{--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:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-16 .elementor-element.elementor-element-d211ba5 .elementor-heading-title{font-size:16px;}.elementor-16 .elementor-element.elementor-element-c0a27ed{--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-16 .elementor-element.elementor-element-6a03806{--justify-content:center;}.elementor-16 .elementor-element.elementor-element-f18d0b1 .elementor-heading-title{font-size:16px;}.elementor-16 .elementor-element.elementor-element-21e25c2{width:100%;max-width:100%;}}/* Start custom CSS for html, class: .elementor-element-03f0e76 *//* =========================================================
   FV STYLES 完全版（SP修正版）
========================================================= */

.fv{
  position:relative;

  --follow-line-h:100px;
  --follow-font-size:12px;
  --follow-gap:50px;
  --follow-ig-offset:-16px;

  background:url('/wp-content/uploads/2025/09/top7.jpg')
  no-repeat left top;

  background-size:720px auto;

  padding:clamp(40px,8vw,80px) 0 140px;
}

.fv-inner{
  max-width:min(1200px,92vw);

  margin:0 auto;

  display:grid;
  grid-template-columns:1fr 1fr;

  gap:clamp(16px,3vw,40px);

  position:relative;

  align-items:start;
}

.fv-col{
  position:relative;
}

/* =========================================================
   SLIDER
========================================================= */

.fv-slider{
  position:relative;

  width:100%;

  aspect-ratio:1/1;

  min-height:320px;

  overflow:hidden;

  border-radius:16px;
}

.fv-slide{
  position:absolute;
  inset:0;

  width:100%;
  height:100%;

  object-fit:cover;

  opacity:0;

  will-change:opacity, transform;
}

/* LEFT */

.fv-slider--left .fv-slide{
  animation:
  fvKenLeftCycle 24s
  cubic-bezier(.4,0,.2,1)
  infinite;
}

.fv-slider--left .fv-slide:nth-child(1){
  animation-delay:0s;
  transform-origin:20% 20%;
}

.fv-slider--left .fv-slide:nth-child(2){
  animation-delay:-8s;
  transform-origin:80% 30%;
}

.fv-slider--left .fv-slide:nth-child(3){
  animation-delay:-16s;
  transform-origin:50% 80%;
}

/* RIGHT */

.fv-slider--right .fv-slide{
  animation:
  fvKenRightCycle 30s
  cubic-bezier(.4,0,.2,1)
  infinite;
}

.fv-slider--right .fv-slide:nth-child(1){
  animation-delay:0s;
  transform-origin:80% 20%;
}

.fv-slider--right .fv-slide:nth-child(2){
  animation-delay:-10s;
  transform-origin:20% 70%;
}

.fv-slider--right .fv-slide:nth-child(3){
  animation-delay:-20s;
  transform-origin:50% 50%;
}

/* =========================================================
   ANIMATION
========================================================= */

@keyframes fvKenLeftCycle{

  0%{
    opacity:0;
    transform:scale(1);
  }

  2%{
    opacity:1;
  }

  31%{
    opacity:1;
    transform:
    scale(1.04)
    translate(1%,-1%);
  }

  33%{
    opacity:0;
  }

  100%{
    opacity:0;
  }

}

@keyframes fvKenRightCycle{

  0%{
    opacity:0;
    transform:scale(1);
  }

  2%{
    opacity:1;
  }

  31%{
    opacity:1;
    transform:
    scale(1.04)
    translate(-1%,1%);
  }

  33%{
    opacity:0;
  }

  100%{
    opacity:0;
  }

}

/* =========================================================
   VERTICAL COPY
========================================================= */

.fv-vertical-copy{
  position:absolute;

  left:50%;
  top:-40px;

  transform:translateX(-50%);

  display:flex;

  gap:8px;

  align-items:flex-start;

  z-index:5;
}

.fv-vertical-chip{
  background:#fff;

  padding:10px;

  box-shadow:
  0 2px 10px rgba(0,0,0,.06);

  writing-mode:vertical-rl;

  font-family:
  "IBM Plex Sans JP",
  sans-serif;

  font-weight:500;

  font-size:30px;

  letter-spacing:2px;

  line-height:1.6;

  filter:blur(8px);

  opacity:0;

  animation:
  fvCopyIn 1.2s ease forwards;

  font-feature-settings:
  'palt' 1,
  'vpal' 1;

  display:inline-flex;
}

.fv-vertical-chip .fv-nogap{
  letter-spacing:0;

  display:inline-block;

  margin-inline-end:8px;
  margin-inline-start:2px;

  margin-block-end:-4px;
}

.fv-vertical-chip.chip-left{
  animation-delay:3.2s;
  margin-top:10px;
}

.fv-vertical-chip.chip-right{
  animation-delay:3s;
}

@keyframes fvCopyIn{
  to{
    filter:blur(0);
    opacity:1;
  }
}

/* =========================================================
   FOLLOW
========================================================= */

.fv .fv-follow{
  position:fixed !important;

  left:-30px !important;
  top:60% !important;

  transform:translateY(-50%) !important;

  display:flex;
  flex-direction:column;
  align-items:center;

  gap:var(--follow-gap);

  z-index:2000;
}

.fv .fv-follow__text{
  font-family:"Montserrat",sans-serif !important;

  font-weight:600;

  letter-spacing:2px;

  font-size:var(--follow-font-size);

  color:#111;

  transform:rotate(90deg);
}

.fv .fv-follow__line{
  width:2px;

  background:
  linear-gradient(
    to bottom,
    rgba(22,158,126,0) 0%,
    rgba(22,158,126,1) 50%,
    rgba(22,158,126,0) 100%
  );

  background-size:100% 200%;

  animation:fvFlow 1.5s linear infinite;
}

@keyframes fvFlow{
  0%{
    background-position:0 0;
  }

  100%{
    background-position:0 200%;
  }
}

.fv .fv-follow__ig img{
  width:22px;
  height:22px;
  display:block;
}

.fv .fv-follow__ig{
  margin-top:var(--follow-ig-offset);
}

/* =========================================================
   LOGO
========================================================= */

.fv-logo{
  position:absolute;

  z-index:6;

  opacity:0;

  pointer-events:none;

  width:var(--logo-w);

  height:auto;

  animation:
  fvLogoIn .9s ease forwards;

  animation-delay:3s;

  filter:blur(6px);

  transform:
  translateY(4px)
  scale(.98);
}

.fv-logo--left{
  left:12px;
  bottom:0;

  --logo-w:clamp(350px,18vw,250px);
}

.fv-logo--right{
  right:12px;
  top:0;

  --logo-w:clamp(350px,18vw,250px);
}

@keyframes fvLogoIn{
  to{
    opacity:1;

    filter:blur(0);

    transform:
    translateY(0)
    scale(1);
  }
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width:1024px){

  .fv-inner{
    grid-template-columns:1fr;
    gap:20px;
  }

  .fv-vertical-copy{
    left:auto;
    right:12px;

    transform:none;
  }

  .fv-follow{
    display:none;
  }

  .fv{
    padding-bottom:120px;
    background-size:60% auto;
  }

}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width:768px){

  .fv{
    height:100vh!important;

    padding:0;

    background:none;
  }

  .fv-inner{
    display:flex;

    flex-direction:column;

    width:100%;
    height:100vh;

    max-width:100%;

    gap:0;

    margin:0;
  }

  .fv-col{
    flex:1;

    position:relative;

    width:100%;
  }

  .fv-slider{
    position:absolute;

    inset:0;

    width:100%;
    height:100%;

    border-radius:0;
  }

  .fv-slide{
    opacity:0;
  }

  /* ロゴ */

  .fv-logo--left{
    left:0;
    bottom:-1px;

    --logo-w:62vw;
  }

  .fv-logo--right{
    left:0;
    top:0;

    --logo-w:62vw;
  }

  /* コピー */

  .fv-vertical-copy{
    top:20px;
    right:20px;

    left:auto;

    transform:none;

    gap:14px;
  }

  .fv-vertical-chip{
    font-size:20px;

    padding:16px 8px;

    line-height:1.4;

    letter-spacing:0;
  }

  .fv-vertical-chip.chip-left{
    margin-top:4px;
  }

  .fv-vertical-chip .fv-nogap{
    margin-inline-end:1px;
  }

  /* FOLLOW削除 */

  .fv .fv-follow{
    display:none !important;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-3d6140d */.button-31 {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 100%;
    margin:0 auto;
    padding: .9em 2em;
    border: 1px solid #169e7e;
    border-radius: 25px;
    background-color: #fff;
    color: #169e7e;
    font-size: 1em;
    transition: box-shadow .3s ease;
}

.button-31:hover {
    box-shadow: inset #169e7e 0 0 0 2em;
    color: #fff;
}


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

.button-31:hover::after {
    border-color: #fff;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-2936446 *//* レイアウト */
.vstrips{
  --gap: 14px;
  --w: 240px;               /* カラム幅 */
  --radius: 10px;
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(2px,1vw,4px);
  max-width: min(500px,62vw);
  margin: 0 auto;
}
.vstrip{
  width: var(--w);
  margin-inline: auto;
  height: 600px; /* 表示窓の高さ（調整可） */
  overflow: hidden;
  position: relative;
}
.vstrip__track{
  display:flex;
  flex-direction: column;
  gap: var(--gap);
  will-change: transform;
}
.vstrip__track li{ list-style: none; }
.vstrip__track img{
  display:block;
  width:100%;
  aspect-ratio: 3 / 4;     /* 3:4で統一。不要なら削除 */
  object-fit: cover;
  border-radius: var(--radius);
}

/* アニメーション（無限ループ用に -50% ぶんだけ移動） */
.vstrip--up   .vstrip__track{ animation: vstripUp   var(--dur-up, 28s) linear infinite; }
.vstrip--down .vstrip__track{ animation: vstripDown var(--dur-down, 28s) linear infinite; }

@keyframes vstripUp   { from { transform: translateY(0);    } to { transform: translateY(-50%); } }
@keyframes vstripDown { from { transform: translateY(-50%); } to { transform: translateY(0);    } }


/* レイアウト */
.vstrips {
  --gap: 14px;
  --radius: 10px;
  display: grid;
  grid-template-columns: 1fr 1fr; /* 左右均等な枠を作成 */
  gap: 10px;
  max-width: 500px;
  margin: 0 auto;
  padding: 0 10px;
  justify-items: center; /* グリッド内の要素を強制的に中央寄せ */
  align-items: center;
}

.vstrip {
  width: 100%; /* 親のグリッド幅に追従 */
  height: 600px;
  overflow: hidden;
  position: relative;
  /* margin-inline: auto; を削除することでズレを防止 */
}

.vstrip__track {
  display: flex;
  flex-direction: column;
  gap: var(--gap);
  will-change: transform;
}

/* その他のスタイルは維持 */
.vstrip__track li { list-style: none; }
.vstrip__track img {
  display: block;
  width: 100%;
  aspect-ratio: 3 / 4;
  object-fit: cover;
  border-radius: var(--radius);
}

/* アニメーション */
.vstrip--up .vstrip__track { animation: vstripUp var(--dur-up, 28s) linear infinite; }
.vstrip--down .vstrip__track { animation: vstripDown var(--dur-down, 28s) linear infinite; }

@keyframes vstripUp { from { transform: translateY(0); } to { transform: translateY(-50%); } }
@keyframes vstripDown { from { transform: translateY(-50%); } to { transform: translateY(0); } }

/* レスポンシブ */
@media (max-width: 768px) {
  .vstrips { gap: 4px; max-width: 100%; }
  .vstrip { height: 60vh; }
  .vstrip__track img { aspect-ratio: 1 / 1.2; border-radius: 6px; }
}
/* 親コンテナ：左右の余白をここで均等に管理する */
.vstrips {
  display: flex;
  justify-content: center; /* 左右の要素を完全に中央に配置 */
  align-items: flex-start;
  gap: 10px;               /* 画像の間の隙間 */
  max-width: 500px;
  width: 100%;             /* 横幅いっぱいに広げる */
  margin: 0 auto;          /* コンテナ自体を画面中央へ */
  padding: 0 10px;
  box-sizing: border-box;  /* paddingを含めて幅を計算 */
}

/* 左右のカラム：幅を強制的に50%にする */
.vstrip {
  width: 50%;              /* 左右均等 */
  overflow: hidden;
  position: relative;
}

.vstrip__track {
  display: flex;
  flex-direction: column;
  gap: 14px;
  will-change: transform;
}

.vstrip__track li { list-style: none; }
.vstrip__track img {
  display: block;
  width: 100%;
  aspect-ratio: 3 / 4;
  object-fit: cover;
  border-radius: 10px;
}

/* レスポンシブ調整 */
@media (max-width: 768px) {
  .vstrips { gap: 6px; padding: 0 6px; }
  .vstrip { height: 60vh; }
  .vstrip__track img { aspect-ratio: 1 / 1.2; border-radius: 6px; }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-060eb7f *//* ===== タブ ===== */
.ae-works-page__tabs { 
  display: flex; 
  gap: 20px; 
  margin-bottom: 40px; 
  border-bottom: 2px solid #f0f0f0; 
  overflow-x: auto; /* はみ出し時にスクロール可能に */
  white-space: nowrap; /* タブを改行させない */
  scrollbar-width: none; /* Firefox用：スクロールバー非表示 */
}
.ae-works-page__tabs::-webkit-scrollbar { display: none; } /* Chrome/Safari用：スクロールバー非表示 */

.ae-works-page__tab { 
  background: none; border: none; cursor: pointer; 
  padding: 10px 5px; font-size: 16px; font-weight: 600; 
  color: #999; transition: color 0.3s; position: relative; 
  flex-shrink: 0; /* スクロール時に縮まないように */
}
.ae-works-page__tab.is-active { color: #00856A; }
.ae-works-page__tab.is-active::after { content: ''; position: absolute; bottom: -2px; left: 0; width: 100%; height: 2px; background: #00856A; }

/* ===== グリッド ===== */
.ae-works-archive-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }

.ae-works-archive-card { display: flex; flex-direction: column; background: #fff; border: 1px solid #eef0f2; border-radius: 12px; overflow: hidden; text-decoration: none !important; position: relative; box-shadow: 0 4px 15px rgba(0,0,0,0.04); transition: 0.3s; }
.ae-works-archive-card:hover { transform: translateY(-5px); box-shadow: 0 10px 30px rgba(0,0,0,0.1); }
.ae-works-archive-card__img-wrap { width: 100%; aspect-ratio: 3/2; overflow: hidden; position: relative; }
.ae-works-archive-card__img { width: 100%; height: 100%; object-fit: cover; }

/* アイコン・コンテンツ */
.ae-works-archive-card__new { position: absolute; top: 10px; left: 10px; z-index: 10; background: #ff4757; color: #fff; padding: 3px 10px; font-size: 10px; border-radius: 4px; font-weight: bold; }
.ae-works-archive-card__area-badge { position: absolute; top: 12px; right: 12px; z-index: 5; background: rgba(0, 133, 106, 0.9); color: #fff; font-size: 11px; padding: 4px 10px; border-radius: 4px; }
.ae-works-archive-card__content { padding: 16px; }
.ae-works-archive-card__tags { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 8px; }
.ae-works-archive-card__tags span { font-size: 10px; color: #00856A; background-color: #f0f7f6; padding: 2px 6px; border-radius: 4px; font-weight: 600; }
.ae-works-archive-card__title { font-size: 15px; font-weight: 700; color: #222; line-height: 1.5; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

/* ===== レスポンシブ設定 ===== */
@media (max-width: 1024px) { 
  .ae-works-archive-grid { grid-template-columns: repeat(3, 1fr); gap: 20px; } 
}
@media (max-width: 768px) { 
  .ae-works-archive-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; } 
}
@media (max-width: 480px) { 
  .ae-works-archive-grid { grid-template-columns: 1fr; } /* スマホは1列 */
  .ae-works-page__tabs { gap: 15px; margin-bottom: 24px; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6e39f10 */.button-31 {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 100%;
    margin:0 auto;
    padding: .9em 2em;
    border: 1px solid #169e7e;
    border-radius: 25px;
    background-color: #fff;
    color: #169e7e;
    font-size: 1em;
    transition: box-shadow .3s ease;
}

.button-31:hover {
    box-shadow: inset #169e7e 0 0 0 2em;
    color: #fff;
}


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

.button-31:hover::after {
    border-color: #fff;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-b5579ae *//* 4カラムグリッド */
.report-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}

.report-card {
    display: flex; 
    flex-direction: column;
    background: #fff;
    text-decoration: none !important;
    border: 1px solid #eee;
    border-radius: 8px;
    overflow: hidden;
    transition: 0.3s;
    height: 100%;
}
.report-card:hover { transform: translateY(-5px); box-shadow: 0 10px 20px rgba(0,0,0,0.1); }

/* 画像エリア */
.report-card__img { aspect-ratio: 4/3; overflow: hidden; flex-shrink: 0; }
.report-card__img img { width: 100%; height: 100%; object-fit: cover; }

/* テキストエリア */
.report-card__body { 
    padding: 15px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}
.report-card__title { font-size: 16px; margin-bottom: 8px; color: #333; line-height: 1.4; }
.report-card__text {
    font-size: 13px; color: #666;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 15px;
    line-height: 1.5;
}

/* 矢印アイコン（完全版） */
.report-card__arrow { 
    margin-top: auto; 
    text-align: right; 
    padding-top: 10px;
}
.report-card__arrow span {
    display: inline-flex; 
    align-items: center; 
    justify-content: center;
    width: 36px; 
    height: 36px;
    background-color: #169E7E;
    border-radius: 50%;
    color: #ffffff;
    font-size: 18px;
    font-weight: bold;
    transition: background-color 0.3s;
}
.report-card:hover .report-card__arrow span {
    background-color: #128267;
}

/* レスポンシブ対応 */
@media (max-width: 1024px) { 
    .report-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; } 
}
@media (max-width: 600px) { 
    .report-grid { grid-template-columns: 1fr; } 
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-171f145 */.button-31 {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 100%;
    margin:0 auto;
    padding: .9em 2em;
    border: 1px solid #169e7e;
    border-radius: 25px;
    background-color: #fff;
    color: #169e7e;
    font-size: 1em;
    transition: box-shadow .3s ease;
}

.button-31:hover {
    box-shadow: inset #169e7e 0 0 0 2em;
    color: #fff;
}


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

.button-31:hover::after {
    border-color: #fff;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-a8baa37 *//* ===== AE Portfolio/Works 横スクロール ===== */
.ae-marquee {
  --gap: 24px;
  --card-w: 360px;
  --card-h: 380px;
  --marquee-speed: 60s; /* ショートコード引数で上書きされる */
  overflow: hidden;
  position: relative;
  padding: 60px 0;
}

.ae-marquee__flow {
  display: flex;
  width: max-content;
  animation: aeMarquee var(--marquee-speed) linear infinite;
}
.ae-marquee:hover .ae-marquee__flow { animation-play-state: paused; }

@keyframes aeMarquee {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); } /* トラックを2回並べているため -50% で1周 */
}

.ae-marquee__track {
  display: flex;
  gap: var(--gap);
  padding-inline: var(--gap);
}

.ae-card {
  width: var(--card-w);
  height: var(--card-h);
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  flex: 0 0 auto;
  position: relative;
  will-change: transform, box-shadow;
  box-shadow: none;
  transition: transform .25s ease, box-shadow .25s ease;
  transform-origin: center;
}

.ae-card__link {
  display: grid;
  grid-template-rows: auto 1fr;
  height: 100%;
  color: inherit;
  text-decoration: none;
}

.ae-card__media { position: relative; aspect-ratio: 16/9; overflow: hidden; }
.ae-card__img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ae-card__img.--noimg { background: #e5e5e5; width:100%; height:100%; }

.ae-card__badge {
  position: absolute;
  top: 10px; right: 10px;
  display: inline-block;
  padding: 6px 10px;
  font-size: 12px; font-weight: 700; letter-spacing: .5px;
  background: var(--badge-bg, #222);
  color: var(--badge-tx, #fff);
  border-radius: 8px;
  box-shadow: 0 2px 10px rgba(0,0,0,.15);
  z-index: 2;
}

.ae-card__body {
  padding: 14px 16px 16px;
  display: grid;
  gap: 8px;
}

/* タイトル：1行で省略表示（…） */
.ae-card__title {
  font-size: 18px;
  line-height: 1.5;
  margin: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding-right: 20px;
}

/* 本文テキスト：右に余白 */
.ae-card__text {
  font-size: 14px;
  line-height: 1.7;
  color: #666;
  margin: 0;
  padding-right: 40px;
}

.ae-card__arrow {
  position: absolute;
  right: 12px; bottom: 12px;
  width: 36px; height: 36px; border-radius: 8px;
  display: grid; place-items: center;
  background: #111; color: #fff; font-weight: 700;
}

/* ホバー：当たったカードだけ拡大＋影 */
.ae-card:hover,
.ae-card:focus-within {
  transform: scale(1.06);
  box-shadow: 0 12px 28px rgba(0,0,0,.12);
  z-index: 1;
}

/* モバイル調整 */
@media (max-width: 768px) {
  .ae-marquee { --gap: 16px; padding: 16px 0; }
  .ae-card { --card-w: 280px; --card-h: 320px; border-radius: 10px; }
  .ae-card__title { font-size: 16px; }
  .ae-card__text  { font-size: 13px; }
}

/* 動きを抑制（ユーザー設定尊重） */
@media (prefers-reduced-motion: reduce) {
  .ae-marquee__flow { animation: none !important; }
}
.ae-card__new {
  position: absolute;
  top: 10px; left: 10px;
  width: 60px; height: 60px;          /* 正方形にして円形にする */
  border-radius: 50%;                 /* ←円形化 */
  display: flex; align-items: center; justify-content: center;
  font-size: 14px; font-weight: 700; letter-spacing: .5px;
  background: #d31652; color: #fff;
  box-shadow: 0 2px 8px rgba(0,0,0,.15);
  z-index: 3;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-1f1b064 */.button-32 {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 100%;
    margin:0 auto;
    padding: .9em 2em;
    overflow: hidden;
    border: 1px solid #169e7e;
    border-radius: 25px;
    background-color: #fff;
    color: #169e7e;
    font-size: 1em;
    letter-spacing: 2px;
}

.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: #169e7e;
    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 #169e7e;
    border-right: 2px solid #169e7e;
    content: '';
}

.button-32:hover::after {
    border-color: #fff;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-a577764 *//* ===== NEWS widget (scoped) ===== */
.newsw {
  --brand: #169e7e;
  --row-pad: 14px; /* 少し縦を広げて押しやすく */
  --gap-x: 10px;
  --arrow-size: 36px;
  --badge-col: 64px;
}

.newsw-list { list-style: none; margin: 0; padding: 0; }
.newsw-item { border-bottom: 1px solid #d8d8d8; }

.newsw-link {
  display: grid;
  /* 4カラム構成：NEW列 | 日付列 | タイトル列(残り全部) | 矢印 */
  grid-template-columns: var(--badge-col) 130px 1fr var(--arrow-size);
  align-items: center;
  gap: var(--gap-x);
  padding: var(--row-pad) 6px;
  color: #222; text-decoration: none;
  transition: background-color .25s ease;
}
.newsw-link:hover { background: #f5f5f5; }

/* 各種パーツ共通 */
.newsw-new {
  display: inline-block; padding: 2px 8px;
  font-size: 11px; line-height: 1; letter-spacing: .06em;
  color: #fff; background: #d31652; border-radius: 999px;
  white-space: nowrap;
}

.newsw-date {
  font-family: "Montserrat", system-ui, sans-serif;
  font-size: 12px; letter-spacing: .05em; color: #9c9c9c;
}

.newsw-title {
  font-family: "IBM Plex Sans JP", system-ui, sans-serif;
  font-weight: 600; letter-spacing: .02em;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; /* clipからellipsisに変更 */
}

/* 右端の丸矢印 */
.newsw-arrow {
  justify-self: end;
  width: var(--arrow-size); height: var(--arrow-size);
  border-radius: 50%; background: var(--brand); color: #fff;
  display: grid; place-items: center;
  flex-shrink: 0; /* 矢印が潰れないように */
}

/* --- モバイル調整（640px以下） --- */
@media (max-width: 640px) {
  .newsw { --badge-col: 50px; --row-pad: 12px; }
  
  .newsw-link {
    /* スマホでは日付を短くし、タイトル領域を確保 */
    grid-template-columns: var(--badge-col) 90px 1fr var(--arrow-size);
    gap: 6px;
  }
  
  .newsw-new { padding: 2px 4px; font-size: 10px; }
  .newsw-date { font-size: 10px; }
  .newsw-title { font-size: 14px; }
}

/* --- 動きの制御 --- */
.newsw-arrow__icon{ transition: transform .25s ease; }
.newsw-link:hover .newsw-arrow{ transform:translateX(4px); }
.newsw-link:hover .newsw-arrow__icon{ transform:translateX(2px); }
@media (prefers-reduced-motion: reduce){
  .newsw-link:hover .newsw-arrow{ transform:none; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-093cff8 */.button-32 {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 100%;
    margin:0 auto;
    padding: .9em 2em;
    overflow: hidden;
    border: 1px solid #169e7e;
    border-radius: 25px;
    background-color: #fff;
    color: #169e7e;
    font-size: 1em;
    letter-spacing: 2px;
}

.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: #169e7e;
    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 #169e7e;
    border-right: 2px solid #169e7e;
    content: '';
}

.button-32:hover::after {
    border-color: #fff;
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Montserrat-VariableFont_wght';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://www.yamatake-sohken.com/wp-content/uploads/2025/09/Montserrat-VariableFont_wght.ttf') format('truetype');
}
@font-face {
	font-family: 'Montserrat-VariableFont_wght';
	font-style: oblique;
	font-weight: normal;
	font-display: auto;
	src: url('https://www.yamatake-sohken.com/wp-content/uploads/2025/09/Montserrat-Italic-VariableFont_wght.ttf') format('truetype');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'IBMPlexSansJP-Bold';
	font-display: auto;
	src: url('https://www.yamatake-sohken.com/wp-content/uploads/2025/09/IBMPlexSansJP-Bold.ttf') format('truetype');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'IBMPlexSansJP-Regular';
	font-display: auto;
	src: url('https://www.yamatake-sohken.com/wp-content/uploads/2025/09/IBMPlexSansJP-Regular.ttf') format('truetype');
}
/* End Custom Fonts CSS */