/* ===== K.UNO News CMS Builder - 追加CSS（レイアウト専用） ===== */
.cmsDetail .cms-builder-content .cms-builder-main-image,
.cmsDetail .cms-builder-content .cms-builder-single-image,
.cmsDetail .cms-builder-content .cms-builder-grid,
.cmsDetail .cms-builder-content .cms-builder-img-text,
.cmsDetail .cms-builder-content .cms-builder-btn-row{max-width:100%;min-width:0}

.cmsDetail .cms-builder-content a{color:#003447}

.cmsDetail .cms-builder-content > * + *{margin-top:16px}
.cmsDetail .cms-builder-content > .cms-builder-spacer,
.cmsDetail .cms-builder-content > .cms-builder-spacer + *{margin-top:0}
.cmsDetail .cms-builder-content .cms-builder-spacer{display:block;width:100%;min-height:0;margin:0!important;padding:0!important;font-size:0;line-height:0}
.cmsDetail .cms-builder-content .cms-builder-spacer[data-space="40"]{height:60px!important}
.cmsDetail .cms-builder-content .cms-builder-spacer[data-space="60"]{height:90px!important}
.cmsDetail .cms-builder-content .cms-builder-spacer[data-space="80"]{height:120px!important}

.cmsDetail .cms-builder-content .cms-builder-cv{padding:56px 40px;max-width:100%;box-sizing:border-box}
.cmsDetail .cms-builder-content .cms-builder-cv-inner{max-width:900px;margin:0 auto}
.cmsDetail .cms-builder-content .cms-builder-cv-heading{margin:0 0 24px;line-height:1.6}
.cmsDetail .cms-builder-content .cms-builder-cv-body{margin:0 auto 30px;line-height:1.9}
.cmsDetail .cms-builder-content .cms-builder-cv-button-wrap{max-width:420px;margin:0 auto}
.cmsDetail .cms-builder-content .cms-builder-cv-button-wrap .button{margin:0}
.cmsDetail .cms-builder-content .cms-builder-cv-button-wrap .button a{background:#fff!important;color:#333!important}
.cmsDetail .cms-builder-content .cms-builder-cv-button-wrap .button a{position:relative}
.cmsDetail .cms-builder-content .cms-builder-cv-button-wrap .button a::after{content:"＞";position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:1em;line-height:1}
@media(max-width:640px){.cmsDetail .cms-builder-content .cms-builder-cv{padding:36px 18px}.cmsDetail .cms-builder-content .cms-builder-cv-body{line-height:1.8}.cmsDetail .cms-builder-content .cms-builder-cv-button-wrap{max-width:100%}}

.cmsDetail .cms-builder-content .cms-builder-main-image{width:100%!important;max-width:100%!important;min-width:0!important;margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important;overflow:hidden!important}
.cmsDetail .cms-builder-content .cms-builder-main-image img{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;height:auto!important;margin:0!important;padding:0!important;position:static!important;left:auto!important;right:auto!important;transform:none!important;object-fit:contain}
.cmsDetail .cms-builder-content .cms-builder-main-image picture,.cmsDetail .cms-builder-content .cms-builder-main-image a{display:block;width:100%}
.cmsDetail .cms-builder-content .cms-builder-single-image img{width:100%;max-width:100%;height:auto;display:block}

.cmsDetail .cms-builder-content .cms-builder-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.cmsDetail .cms-builder-content .cms-builder-grid img{width:100%;max-width:100%;height:auto;display:block}

.cmsDetail .cms-builder-content .cms-builder-img-text{display:flex;gap:32px;align-items:center}
.cmsDetail .cms-builder-content .cms-builder-img-text.reverse{flex-direction:row-reverse}
.cmsDetail .cms-builder-content .cms-builder-media{width:46%;max-width:46%;min-width:0}
.cmsDetail .cms-builder-content .cms-builder-media img{width:100%;max-width:100%;height:auto;display:block}
.cmsDetail .cms-builder-content .cms-builder-img-text .text-area{flex:1;min-width:0}
.cmsDetail .cms-builder-content .cms-builder-slide{max-width:100%;min-width:0}
.cmsDetail .cms-builder-content .cms-builder-slide img{width:100%;max-width:100%;height:auto;display:block}

/* News Builder専用スライダー。
   SP1/PC2 は既存 .slide2 を利用。SP2/PC2 は追加 .cms-slide2-sp2 を利用。
   page.css と競合する見た目だけ専用クラスで上書きする。 */
.newsLayout .newsInner .cmsDetail .cms-builder-content .cms-news-slider{box-sizing:border-box;max-width:100%;min-width:0;margin-left:auto!important;margin-right:auto!important}
.newsLayout .newsInner .cmsDetail .cms-builder-content .cms-news-slider>li{box-sizing:border-box;min-width:0}
.newsLayout .newsInner .cmsDetail .cms-builder-content .cms-news-slider .cms-slider-caption{margin-top:12px!important;line-height:1.8}
.newsLayout .newsInner .cmsDetail .cms-builder-content .cms-news-slider.slick-slider{padding-left:42px!important;padding-right:42px!important;padding-bottom:34px!important}
.newsLayout .newsInner .cmsDetail .cms-builder-content .cms-news-slider .slick-list{margin-left:0!important;margin-right:0!important;overflow:hidden}
.newsLayout .newsInner .cmsDetail .cms-builder-content .cms-news-slider .slick-slide{box-sizing:border-box;padding-left:8px!important;padding-right:8px!important;height:auto}
.newsLayout .newsInner .cmsDetail .cms-builder-content .cms-news-slider .slick-slide img{width:100%;height:auto;display:block;margin-bottom:0!important}
/* page.css の汎用 .slick-slider 矢印位置を今回のスライダーだけ打ち消す */
.newsLayout .newsInner .cmsDetail .cms-builder-content .cms-news-slider.slick-slider .slick-prev{left:4px!important;right:auto!important;top:50%!important;bottom:auto!important;transform:translateY(-50%)!important}
.newsLayout .newsInner .cmsDetail .cms-builder-content .cms-news-slider.slick-slider .slick-next{right:4px!important;left:auto!important;top:50%!important;bottom:auto!important;transform:translateY(-50%)!important}
.newsLayout .newsInner .cmsDetail .cms-builder-content .cms-news-slider.slick-slider .slick-dots{bottom:0!important}

/* 今回形式のニュース内だけで使う見出し。基本書体・色・行間は既存CSSを継承 */
.cmsDetail .cms-builder-content .cms-builder-heading{font-weight:600}
.cmsDetail .cms-builder-content .cms-builder-heading-lg{font-size:1.3em}
.cmsDetail .cms-builder-content .cms-builder-heading-md{font-size:1.18em}
.cmsDetail .cms-builder-content .cms-builder-heading-sm{font-size:1.08em}

/* ボタンの見た目は既存 page.css の .button を使用。2個並びの配置だけ追加CSSで制御 */
.cmsDetail .cms-builder-content .cms-builder-btn-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.cmsDetail .cms-builder-content .cms-builder-btn-row>.button{margin-top:0;min-width:0}
.cmsDetail .cms-builder-content .cms-news-slider{margin-top:28px!important}
.cmsDetail .cms-builder-content .cms-builder-btn-row{margin-top:28px!important}
.cmsDetail .cms-builder-content > .button{margin-top:28px!important}

@media(max-width:640px){
  .cmsDetail .cms-builder-content > * + *{margin-top:12px}
  .cmsDetail .cms-builder-content > .cms-builder-spacer,
  .cmsDetail .cms-builder-content > .cms-builder-spacer + *{margin-top:0}
  .cmsDetail .cms-builder-content .cms-builder-spacer[data-space="40"]{height:40px!important}
  .cmsDetail .cms-builder-content .cms-builder-spacer[data-space="60"]{height:60px!important}
  .cmsDetail .cms-builder-content .cms-builder-spacer[data-space="80"]{height:80px!important}
  .cmsDetail .cms-builder-content .cms-builder-grid-pc2-sp1{grid-template-columns:1fr}
  .cmsDetail .cms-builder-content .cms-builder-img-text,.cmsDetail .cms-builder-content .cms-builder-img-text.reverse{flex-direction:column;align-items:stretch;gap:16px}
  .cmsDetail .cms-builder-content .cms-builder-media{width:100%;max-width:100%}
  .cmsDetail .cms-builder-content .cms-builder-btn-row{grid-template-columns:1fr;gap:12px}
  .cmsDetail .cms-builder-content .cms-news-slider{margin-top:20px!important}
  .cmsDetail .cms-builder-content .cms-builder-btn-row{margin-top:20px!important}
  .cmsDetail .cms-builder-content > .button{margin-top:20px!important}
  .newsLayout .newsInner .cmsDetail .cms-builder-content .cms-news-slider.slick-slider{padding-left:24px!important;padding-right:24px!important;padding-bottom:28px!important}
  .newsLayout .newsInner .cmsDetail .cms-builder-content .cms-news-slider .slick-slide{padding-left:6px!important;padding-right:6px!important}
  .newsLayout .newsInner .cmsDetail .cms-builder-content .cms-news-slider.slick-slider .slick-prev{left:-2px!important;right:auto!important}
  .newsLayout .newsInner .cmsDetail .cms-builder-content .cms-news-slider.slick-slider .slick-next{right:-2px!important;left:auto!important}
}
