/* DOKODEMO_ABISU-757【株式会社A&C】③「イベント情報」カスタムコンテンツの作成（A&Cテクノハウス）詳細ページ用*/

/* ちらつき防止 */
body {
  opacity: 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-animation: upd-fadein-fallback 0.3s ease 3s forwards;
  animation: upd-fadein-fallback 0.3s ease 3s forwards;
}

body.is-loaded,
body[data-element-id] {
  opacity: 1 !important;
}

@-webkit-keyframes upd-fadein-fallback {
  to {
    opacity: 1;
  }
}
@keyframes upd-fadein-fallback {
  to {
    opacity: 1;
  }
}

/* 本文内のfloat画像による高さ崩れを防ぐ */
.upd-blog-001 .upd-blog-detail-text::after {
  content: "";
  display: block;
  clear: both;
}

/* カラー設定 */
:root {
  --main-color: #020380;
  --title-color: #444;
  --line-color: #333;
  --bg-color: #f2f2f8;
}

/* 共通 */
* {
  box-sizing: border-box;
}

.upd-inner {
  width: 96%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 60px 0;
}

/* ブログ詳細（upd-blog-001） */
.upd-blog-001 {
  width: 100%;
}
.upd-blog-001 .upd-inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.upd-blog-001 .upd-blog-detail {
  width: 100%;
  min-width: 0;
}
.upd-blog-001 .upd-blog-detail-area {
  display: flex;
  flex-wrap: wrap;
  min-width: 0;
}
.upd-blog-001 .upd-blog-detail-item {
  min-width: 0;
  text-align: left;
}

/* 日付 */
.upd-blog-001 .upd-blog-detail-date {
  width: 100%;
  font-weight: 600;
  color: var(--main-color);
}

/* タイトル */
.upd-blog-001 .upd-blog-detail-title {
  width: 100%;
  margin: 10px 0 30px 0;
  padding-bottom: 10px;
  border-bottom: 2px solid var(--line-color);
}
.upd-blog-001 .upd-blog-detail-title-text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
  font-weight: 700;
  font-size: 24px;
  line-height: 1.5;
  color: var(--title-color);
  overflow-wrap: anywhere;
  word-break: normal;
}
@media (max-width: 599px) {
  .upd-blog-001 .upd-blog-detail-title-text {
    font-size: 20px;
  }
}

/* サムネイル */
.upd-blog-001 .upd-blog-detail-thumb {
  width: 100%;
  aspect-ratio: 16 / 9;
  margin-bottom: 30px;
  overflow: hidden;
  border-radius: 3px;
  background-color: var(--bg-color);
}
.upd-blog-001 .upd-blog-detail-thumb img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
}

/* 本文 */
.upd-blog-001 .upd-blog-detail-text {
  width: 100%;
  display: block;
  line-height: 1.8;
  overflow-wrap: anywhere;
  word-break: normal;
}
.upd-blog-001 .upd-blog-detail-text img {
  max-width: 100%;
  height: auto;
}
.upd-blog-001 .upd-blog-detail-text iframe {
  display: block;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}
/* 一覧に戻る */
.upd-blog-001 .upd-blog-back {
  width: 100%;
  margin-top: 50px;
}
@media (max-width: 1024px) {
  .upd-blog-001 .upd-blog-back {
    margin-top: 30px;
  }
}
.upd-blog-001 .upd-blog-back-arrow {
  width: 100%;
  text-align: center;
}
.upd-blog-001 .upd-blog-back-arrow a {
  display: inline-block;
  padding: 8px 20px;
  color: var(--main-color);
  line-height: 1em;
  text-decoration: none;
  border: 1px solid var(--main-color);
  border-radius: 3px;
  transition: 0.4s;
}
.upd-blog-001 .upd-blog-back-arrow a:hover {
  color: #fff;
  background-color: var(--main-color);
}
/* ページネーション */
.upd-blog-001 .up-d-post-nav {
  width: 100%;
}
/* 前後の記事リンク：矢印はリンクと一緒に表示 */
.up-d-post-nav a[rel="prev"]::before {
  content: "« ";
}
.up-d-post-nav a[rel="next"]::after {
  content: " »";
}

/* リンク先が空の場合は非表示 */
.up-d-post-nav a:not([href]),
.up-d-post-nav a[href=""] {
  display: none;
}

/* 前後どちらの記事もない場合は、余白ごと非表示 */
.up-d-post-nav:not(:has(a[href]:not([href=""]))) {
  display: none;
}
  /* 予約フォーム */
  #mailformpro .mfp_buttons button + button {
    margin-left: 10px;
  }
  #mailformpro dd.mfp select + select {
    margin-left: 10px;
  }

/* ヘッダー（取り込み時に消えた元サイトのスタイルを補完） */
#header {
  height: 110px;
  background-color: #ffffff;
}
#header h2.page {
  position: relative;
  top: 64px;
  left: 30px;
  right: 0px;
  width: 230px;
  text-align: left;
  float: left;
  display: inline-block;
}
#header h2.page img {
  height: auto;
  width: 100%;
}
#header p.page {
  position: relative;
  top: 70px;
  left: 50px;
  right: 0px;
  width: 280px;
  text-align: left;
  font-weight: bold;
  line-height: 1.4;
  letter-spacing: 1px;
  float: left;
  display: inline-block;
}
@media screen and (max-width: 560px) {
  #header h2.page {
    width: 200px;
    left: 7px;
  }
  #header p.page {
    width: 150px;
    left: 10px;
    font-size: 0.67em;
  }
  #mailformpro dd.mfp select + select {
    margin-left: 0;
    margin-top: 5px;
  }
}


/* WordPress移行記事用スタイル（本文内のみに適用）
   元：WordPressのブロック用インラインスタイルから必要分を抜粋 */

/* 画像 */
.upd-blog-001 .upd-blog-detail-text figure {
  margin: 0 0 1em;
}
.upd-blog-001 .upd-blog-detail-text .wp-block-image > a {
  display: inline-block;
}
.upd-blog-001 .upd-blog-detail-text .wp-block-image img {
  box-sizing: border-box;
  height: auto;
  max-width: 100%;
  vertical-align: bottom;
}
.upd-blog-001 .upd-blog-detail-text .wp-block-image figure {
  margin: 0;
}
.upd-blog-001 .upd-blog-detail-text .wp-block-image.aligncenter {
  text-align: center;
}
.upd-blog-001 .upd-blog-detail-text .wp-block-image.aligncenter,
.upd-blog-001 .upd-blog-detail-text .wp-block-image.alignleft,
.upd-blog-001 .upd-blog-detail-text .wp-block-image.alignright,
.upd-blog-001 .upd-blog-detail-text .wp-block-image .aligncenter,
.upd-blog-001 .upd-blog-detail-text .wp-block-image .alignleft,
.upd-blog-001 .upd-blog-detail-text .wp-block-image .alignright {
  display: table;
}
.upd-blog-001 .upd-blog-detail-text .wp-block-image .aligncenter {
  margin-left: auto;
  margin-right: auto;
}
.upd-blog-001 .upd-blog-detail-text .wp-block-image .alignleft {
  float: left;
  margin: .5em 1em .5em 0;
}
.upd-blog-001 .upd-blog-detail-text .wp-block-image .alignright {
  float: right;
  margin: .5em 0 .5em 1em;
}
.upd-blog-001 .upd-blog-detail-text .wp-block-image figcaption {
  margin-top: .5em;
  margin-bottom: 1em;
}

/* 段落（背景付きの余白・リンク色） */
.upd-blog-001 .upd-blog-detail-text p.has-background {
  padding: 1.25em 2.375em;
}
.upd-blog-001 .upd-blog-detail-text p.has-text-color a {
  color: inherit;
}

/* 文字寄せ */
.upd-blog-001 .upd-blog-detail-text .has-text-align-left { text-align: left; }
.upd-blog-001 .upd-blog-detail-text .has-text-align-center { text-align: center; }
.upd-blog-001 .upd-blog-detail-text .has-text-align-right { text-align: right; }

/* 区切り線 */
.upd-blog-001 .upd-blog-detail-text .wp-block-separator {
  border: none;
  border-top: 2px solid;
}

/* カラム（2列画像など） */
.upd-blog-001 .upd-blog-detail-text .wp-block-columns {
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap !important;
  align-items: normal !important;
  gap: 2em;
  margin-bottom: 1.75em;
}
.upd-blog-001 .upd-blog-detail-text .wp-block-column {
  flex-grow: 1;
  min-width: 0;
  overflow-wrap: break-word;
  word-break: break-word;
}
.upd-blog-001 .upd-blog-detail-text .is-layout-flex > * {
  margin: 0;
}
@media (min-width: 782px) {
  .upd-blog-001 .upd-blog-detail-text .wp-block-columns {
    flex-wrap: nowrap !important;
  }
  .upd-blog-001 .upd-blog-detail-text .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
    flex-basis: 0;
    flex-grow: 1;
  }
  .upd-blog-001 .upd-blog-detail-text .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*=flex-basis] {
    flex-grow: 0;
  }
}
@media (max-width: 781px) {
  .upd-blog-001 .upd-blog-detail-text .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
    flex-basis: 100% !important;
  }
}

/* 表 */
.upd-blog-001 .upd-blog-detail-text .wp-block-table {
  overflow-x: auto;
}
.upd-blog-001 .upd-blog-detail-text .wp-block-table table {
  border-collapse: collapse;
  width: 100%;
}
.upd-blog-001 .upd-blog-detail-text .wp-block-table thead {
  border-bottom: 3px solid;
}
.upd-blog-001 .upd-blog-detail-text .wp-block-table tfoot {
  border-top: 3px solid;
}
.upd-blog-001 .upd-blog-detail-text .wp-block-table td,
.upd-blog-001 .upd-blog-detail-text .wp-block-table th {
  border: 1px solid;
  padding: .5em;
}
.upd-blog-001 .upd-blog-detail-text .wp-block-table .has-fixed-layout {
  table-layout: fixed;
  width: 100%;
}
.upd-blog-001 .upd-blog-detail-text .wp-block-table .has-fixed-layout td,
.upd-blog-001 .upd-blog-detail-text .wp-block-table .has-fixed-layout th {
  word-break: break-word;
}

/* 文字色（WordPressのカラーパレット） */
.upd-blog-001 .upd-blog-detail-text .has-black-color { color: #000000 !important; }
.upd-blog-001 .upd-blog-detail-text .has-cyan-bluish-gray-color { color: #abb8c3 !important; }
.upd-blog-001 .upd-blog-detail-text .has-white-color { color: #ffffff !important; }
.upd-blog-001 .upd-blog-detail-text .has-pale-pink-color { color: #f78da7 !important; }
.upd-blog-001 .upd-blog-detail-text .has-vivid-red-color { color: #cf2e2e !important; }
.upd-blog-001 .upd-blog-detail-text .has-luminous-vivid-orange-color { color: #ff6900 !important; }
.upd-blog-001 .upd-blog-detail-text .has-luminous-vivid-amber-color { color: #fcb900 !important; }
.upd-blog-001 .upd-blog-detail-text .has-light-green-cyan-color { color: #7bdcb5 !important; }
.upd-blog-001 .upd-blog-detail-text .has-vivid-green-cyan-color { color: #00d084 !important; }
.upd-blog-001 .upd-blog-detail-text .has-pale-cyan-blue-color { color: #8ed1fc !important; }
.upd-blog-001 .upd-blog-detail-text .has-vivid-cyan-blue-color { color: #0693e3 !important; }
.upd-blog-001 .upd-blog-detail-text .has-vivid-purple-color { color: #9b51e0 !important; }

/* 背景色（WordPressのカラーパレット） */
.upd-blog-001 .upd-blog-detail-text .has-black-background-color { background-color: #000000 !important; }
.upd-blog-001 .upd-blog-detail-text .has-cyan-bluish-gray-background-color { background-color: #abb8c3 !important; }
.upd-blog-001 .upd-blog-detail-text .has-white-background-color { background-color: #ffffff !important; }
.upd-blog-001 .upd-blog-detail-text .has-pale-pink-background-color { background-color: #f78da7 !important; }
.upd-blog-001 .upd-blog-detail-text .has-vivid-red-background-color { background-color: #cf2e2e !important; }
.upd-blog-001 .upd-blog-detail-text .has-luminous-vivid-orange-background-color { background-color: #ff6900 !important; }
.upd-blog-001 .upd-blog-detail-text .has-luminous-vivid-amber-background-color { background-color: #fcb900 !important; }
.upd-blog-001 .upd-blog-detail-text .has-light-green-cyan-background-color { background-color: #7bdcb5 !important; }
.upd-blog-001 .upd-blog-detail-text .has-vivid-green-cyan-background-color { background-color: #00d084 !important; }
.upd-blog-001 .upd-blog-detail-text .has-pale-cyan-blue-background-color { background-color: #8ed1fc !important; }
.upd-blog-001 .upd-blog-detail-text .has-vivid-cyan-blue-background-color { background-color: #0693e3 !important; }
.upd-blog-001 .upd-blog-detail-text .has-vivid-purple-background-color { background-color: #9b51e0 !important; }

/* グラデーション背景（WordPressのプリセット） */
.upd-blog-001 .upd-blog-detail-text .has-vivid-cyan-blue-to-vivid-purple-gradient-background { background: linear-gradient(135deg, rgb(6,147,227) 0%, rgb(155,81,224) 100%) !important; }
.upd-blog-001 .upd-blog-detail-text .has-light-green-cyan-to-vivid-green-cyan-gradient-background { background: linear-gradient(135deg, rgb(122,220,180) 0%, rgb(0,208,130) 100%) !important; }
.upd-blog-001 .upd-blog-detail-text .has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background { background: linear-gradient(135deg, rgb(252,185,0) 0%, rgb(255,105,0) 100%) !important; }
.upd-blog-001 .upd-blog-detail-text .has-luminous-vivid-orange-to-vivid-red-gradient-background { background: linear-gradient(135deg, rgb(255,105,0) 0%, rgb(207,46,46) 100%) !important; }
.upd-blog-001 .upd-blog-detail-text .has-very-light-gray-to-cyan-bluish-gray-gradient-background { background: linear-gradient(135deg, rgb(238,238,238) 0%, rgb(169,184,195) 100%) !important; }
.upd-blog-001 .upd-blog-detail-text .has-cool-to-warm-spectrum-gradient-background { background: linear-gradient(135deg, rgb(74,234,220) 0%, rgb(151,120,209) 20%, rgb(207,42,186) 40%, rgb(238,44,130) 60%, rgb(251,105,98) 80%, rgb(254,248,76) 100%) !important; }
.upd-blog-001 .upd-blog-detail-text .has-blush-light-purple-gradient-background { background: linear-gradient(135deg, rgb(255,206,236) 0%, rgb(152,150,240) 100%) !important; }
.upd-blog-001 .upd-blog-detail-text .has-blush-bordeaux-gradient-background { background: linear-gradient(135deg, rgb(254,205,165) 0%, rgb(254,45,45) 50%, rgb(107,0,62) 100%) !important; }
.upd-blog-001 .upd-blog-detail-text .has-luminous-dusk-gradient-background { background: linear-gradient(135deg, rgb(255,203,112) 0%, rgb(199,81,192) 50%, rgb(65,88,208) 100%) !important; }
.upd-blog-001 .upd-blog-detail-text .has-pale-ocean-gradient-background { background: linear-gradient(135deg, rgb(255,245,203) 0%, rgb(182,227,212) 50%, rgb(51,167,181) 100%) !important; }
.upd-blog-001 .upd-blog-detail-text .has-electric-grass-gradient-background { background: linear-gradient(135deg, rgb(202,248,128) 0%, rgb(113,206,126) 100%) !important; }
.upd-blog-001 .upd-blog-detail-text .has-midnight-gradient-background { background: linear-gradient(135deg, rgb(2,3,129) 0%, rgb(40,116,252) 100%) !important; }

/* 文字サイズ（WordPressのプリセット） */
.upd-blog-001 .upd-blog-detail-text .has-small-font-size { font-size: 13px !important; }
.upd-blog-001 .upd-blog-detail-text .has-medium-font-size { font-size: 20px !important; }
.upd-blog-001 .upd-blog-detail-text .has-large-font-size { font-size: 36px !important; }
.upd-blog-001 .upd-blog-detail-text .has-x-large-font-size { font-size: 42px !important; }

/* タッチ端末では電話・メールボタンのhover変化を止める（スマホで2回タップになるのを防ぐ） */
@media (hover: none) {
  .tel_box ul li a {
    transition: none;
  }
  .tel_box ul li a:hover {
    opacity: 0;
  }
}
