.elementor-4233 .elementor-element.elementor-element-295486c{--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:8px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4233 .elementor-element.elementor-element-55b3121{--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:8px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.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-4233 .elementor-element.elementor-element-e6068bd > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-4233 .elementor-element.elementor-element-060c86f{--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:50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-4233 .elementor-element.elementor-element-06fd618 .elementor-button{background-color:#FFFFFF;font-family:"Roboto", Sans-serif;font-size:30px;font-weight:600;text-shadow:0px 0px 10px rgba(0,0,0,0.3);fill:#333333;color:#333333;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);border-style:solid;border-color:#024697;border-radius:20px 20px 20px 20px;}.elementor-4233 .elementor-element.elementor-element-5ea492e{--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:20px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-4233 .elementor-element.elementor-element-55b3121{--width:100%;}}@media(max-width:1024px) and (min-width:768px){.elementor-4233 .elementor-element.elementor-element-55b3121{--width:100%;}}@media(max-width:1024px){.elementor-4233 .elementor-element.elementor-element-55b3121{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}@media(max-width:767px){.elementor-4233 .elementor-element.elementor-element-55b3121{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-4233 .elementor-element.elementor-element-06fd618 .elementor-button{font-size:20px;}}/* Start custom CSS for text-editor, class: .elementor-element-e6068bd *//* ベース：このウィジェット内のボタンリスト共通 */
.elementor-4233 .elementor-element.elementor-element-e6068bd .button-list{
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

/* 上段：PCは3列 */
.elementor-4233 .elementor-element.elementor-element-e6068bd .button-list.top li{
  flex: 1 1 calc(33.333% - 8px);
}

/* 下段：必ず2分割（左右固定） */
.elementor-4233 .elementor-element.elementor-element-e6068bd .button-list.bottom{
  display: flex;
  flex-direction: row !important;    /* row-reverse を強制無効化 */
}
.elementor-4233 .elementor-element.elementor-element-e6068bd .button-list.bottom li{
  flex: 1 1 calc(50% - 8px) !important;
  order: initial !important;         /* 既存の order を打ち消し */
}
/* 念のため、左→右の順を明示固定 */
.elementor-4233 .elementor-element.elementor-element-e6068bd .button-list.bottom li:first-child{ order: 1 !important; }
.elementor-4233 .elementor-element.elementor-element-e6068bd .button-list.bottom li:last-child { order: 2 !important; }

/* 2段の間の余白 */
.elementor-4233 .elementor-element.elementor-element-e6068bd .button-list.top + .button-list.bottom{ margin-top: 8px; }

/* ボタンの見た目 */
.elementor-4233 .elementor-element.elementor-element-e6068bd .button-list li a{
  display: block;
  text-decoration: none;
  text-align: center;
  background: #0e3f73;       /* 濃紺 */
  color: #fff;
  border-radius: 10px;
  padding: 14px 12px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  transition: background .2s ease, transform .02s ease;
  box-shadow: inset 0 0 0 2px rgba(255,255,255,.06);
}
.elementor-4233 .elementor-element.elementor-element-e6068bd .button-list li a:hover{ background: #145b9e; }

/* 強調（青）したいボタンに .highlight を付ける */
.elementor-4233 .elementor-element.elementor-element-e6068bd .button-list li a.highlight{ background: #2589d0; }
.elementor-4233 .elementor-element.elementor-element-e6068bd .button-list li a.highlight:hover{ background: #0e63aa; }

/* レスポンシブ：タブレット/スマホは2列 */
@media (max-width: 1024px){
  .elementor-4233 .elementor-element.elementor-element-e6068bd .button-list.top li{ flex: 1 1 calc(50% - 8px); }
}
@media (max-width: 600px){
  .elementor-4233 .elementor-element.elementor-element-e6068bd .button-list.top li{ flex: 1 1 calc(50% - 8px); }
  .elementor-4233 .elementor-element.elementor-element-e6068bd .button-list.bottom li{ flex: 1 1 calc(50% - 8px) !important; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-55b3121 *//* メニュー全体のUL */
.line-banner-area ul {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  max-width: 960px; /* バナーに合わせる */
  margin: 0 auto;    /* 中央揃え */
  padding: 0;
  list-style: none;
}

/* 各LI要素の幅設定：3列 */
.line-banner-area ul li {
  flex: 1 1 calc(33.333% - 8px);
  height: 100%;
}

/* ボタンとして見せるAタグ */
.line-banner-area ul li a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 12px;
  height: 100%;
  width: 100%;
  text-align: center;
  text-decoration: none;
  background-color: #004080;
  color: #fff;
  border-radius: 6px;
}
@media (max-width: 1024px) {
  .line-banner-area ul {
    flex-direction: column;
    max-width: 100%; /* スマホでは全幅 */
  }

  .line-banner-area ul li {
    flex: 1 1 auto;
  }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-4041c26 */.news-card {
  border: 1px solid #ddd;
  padding: 20px;
  margin-bottom: 20px;
  border-radius: 8px;
  background-color: #fff;
  transition: box-shadow 0.3s;
}
.news-card:hover {
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}
.news-date {
  font-size: 14px;
  color: #666;
}
.news-tag {
  background-color: #005bac;
  color: #fff;
  padding: 2px 8px;
  font-size: 12px;
  border-radius: 4px;
  margin-left: 10px;
}
.news-title {
  font-size: 18px;
  margin: 10px 0;
}
.news-link {
  text-decoration: underline;
  color: #005bac;
  font-weight: bold;
}/* End custom CSS */