/*
Theme Name: Enfold Child
Description: A <a href='http://codex.wordpress.org/Child_Themes'>Child Theme</a> for the Enfold Wordpress Theme. If you plan to do a lot of file modifications we recommend to use this Theme instead of the original Theme. Updating will be much easier then.
Version: 1.0
Author: Kriesi
Author URI: http://www.kriesi.at
Template: enfold
*/


/*Add your own styles here:*/


/*Custom Post Grid*/

#top #wrap_all #custom-post-layout .slide-entry .slide-entry-title {
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;
  color: #333 !important;
  margin-top: 15px !important;
  margin-bottom: 15px !important;

}

#custom-post-layout .slide-entry .slide-image {
  aspect-ratio: 1400 / 830;  /* 비율 유지 */
  width: 100%;
  overflow: hidden;
  position: relative;
}

#custom-post-layout .slide-entry .slide-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}



/* 모바일 대응 */
@media screen and (max-width: 767px) {
  #top #wrap_all #custom-post-layout .slide-entry .slide-entry-title {
    font-size: 14px !important;
    line-height: 1.5 !important;
  }
}


@media only screen and (max-width: 479px) {
    .responsive #top #wrap_all .avia-content-slider-odd .slide-entry {
        margin-top: 20px;
    }
}

/*アジェンダテーブル*/

#custom-agenda-table {
  width: 100%;
  margin: 20px 0;
}

#custom-agenda-table .table-wrapper {
  overflow-x: auto;
  width: 100%;
  display: block;
}


#custom-agenda-table .agenda-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 16px;
  table-layout: auto;
  word-break: break-word;
  white-space: normal;
}


#custom-agenda-table .agenda-table td:first-child,
#custom-agenda-table .agenda-table th:first-child {
  width: 110px;
  white-space: nowrap;
}


#custom-agenda-table th,
#custom-agenda-table td {
  border: 1px solid #ccc;
  padding: 12px;
  vertical-align: top;
  text-align: left;
}


#custom-agenda-table th {
  background-color: #e9f5f9;
  font-weight: bold;
  text-align: center !important;
}


#custom-agenda-table td small {
  display: block;
  color: #666;
  margin-top: 4px;
  font-size: 12px;
}


#custom-agenda-table .highlight-row td {
  background-color: #e9f5f9;
}
#custom-agenda-table .center-bold {
  text-align: center !important;
  font-weight: bold;
}


@media (max-width: 768px) {
  #custom-agenda-table .agenda-table {
    font-size: 14px;
  }
  #custom-agenda-table th,
  #custom-agenda-table td {
    padding: 10px;
  }
}
@media (max-width: 480px) {
  #custom-agenda-table .agenda-table {
    font-size: 13px;
  }
  #custom-agenda-table th,
  #custom-agenda-table td {
    padding: 8px;
  }
}

#top #wrap_all #more-recent .av-magazine-title {
  font-size: 16px;
  font-weight: 500;
  color: #333;
}





/* ===== メインスライド ===== */
#ai-hero-section {
  background-color: #013476; /* fallback color */

  background-position: right center;
  background-size: contain;
  background-repeat: no-repeat;
  min-height: 600px;
  position: relative;
}

#ai-hero-text h1,
#ai-hero-text p {
  text-shadow: 0 2px 6px rgba(0, 0, 0, 0.6);
}

.ai-caption-text {
  position: absolute;
  bottom: -50px;
  left: 75%;
  font-size: 10px;
  white-space: nowrap;
  opacity: 0.8;
  color: #fff;
  font-weight: 400;
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.5);
}


/* 4K */
@media screen and (min-width: 1480px) {
  .ai-caption-text {
    bottom: -140px !important;
    left: 80% !important;
  }
}

/* desktop */
@media screen and (max-width: 1460px) {
  #ai-hero-section {
    background-size: cover;
    background-position: center center;
    min-height: 500px;
  }
}

/* laptop */
@media screen and (max-width: 1279px) {
  .ai-caption-text {
    left: 70%;
    bottom: -50px;
  }
}

/* ipad pro */
@media screen and (min-width: 1024px) and (max-width: 1366px) {
  .ai-caption-text {
    left: 76%;
    bottom: -50px;
  }
}

/* tablet */
@media screen and (max-width: 768px) {
  #ai-hero-section {
    background-position: center top !important;
    background-size: cover !important;
    padding: 60px 20px !important;
  }

  .ai-caption-text {
    left: 67%;
    bottom: -50px;
    font-size: 9px;
    white-space: nowrap;
  }
}

/* mobile */
@media screen and (max-width: 480px) {
  #ai-hero-text h1 {
    font-size: 28px !important;
  }

  #ai-hero-section {
    background-position: 68% center !important;
    background-size: cover !important;
  }

  .ai-caption-text {
    left: auto;
    right: -30px;
    bottom: -50px;
    font-size: 8px;
    white-space: normal;
    text-align: right;
    opacity: 0.7;
    transform: none;
  }
}


/*メイン リリース 配列 */

#top #wrap_all #custom-post-grid .avia-content-slider-inner { margin: 0 -12px;}
#top #wrap_all #custom-post-grid .slide-entry { width: calc(25% - 24px);  margin: 0 12px 36px;}
#top #wrap_all #custom-post-grid .slide-entry { display: flex; flex-direction: column; justify-content: flex-start; height: 100%; padding: 0;  box-sizing: border-box; transition: transform 0.3s ease, background-color 0.3s ease, box-shadow 0.3s ease; overflow: hidden;}

#top #wrap_all #custom-post-grid .slide-entry:hover { background-color: #fff; box-shadow: 0 8px 20px rgba(0,0,0,0.1); transform: translateY(-5px);}
#top #wrap_all #custom-post-grid .slide-entry .slide-image {
  position: relative;
  width: 100%;
  padding-top: 59.29%;
  overflow: hidden;
  background: #eee;
}

/* 이미지 비율 유지하며 꽉 채우기 */
#top #wrap_all #custom-post-grid .slide-entry .slide-image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* テキスト領域のみパディング適用 */
#top #wrap_all #custom-post-grid .slide-entry .slide-content,
#top #wrap_all #custom-post-grid .slide-entry .entry-footer {padding: 10px;}

/* タイトル制限 */
#top #wrap_all #custom-post-grid .slide-entry-title.entry-title { font-size: 0.9rem !important; font-weight:normal; line-height: 1.4; margin: 0 0 10px; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;}

/* テキスト制限 */
#top #wrap_all #custom-post-grid .slide-entry-excerpt { font-size: 0.95rem; color: #555; line-height: 1.5; margin-bottom: 20px; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical;}

/* 続きを読むボタン */
#top #wrap_all #custom-post-grid .entry-footer .read-more-link {color: #0276b2;font-weight: bold;font-size: 0.9rem; display: inline-block;}

@media only screen and (max-width: 768px) {
  #top #wrap_all #custom-post-grid .slide-entry { width: calc(50% - 24px); margin: 0 12px 24px;}
}

@media only screen and (max-width: 480px) {
  #top #wrap_all #custom-post-grid .slide-entry { width: 100%; margin: 0 0 24px;}
  #top #wrap_all #custom-post-grid .avia-content-slider-inner { margin: 0 !important; flex-direction: column;
  }
}


/*Post*/
.big-preview.single-big { display: none;}
.main_color tr:nth-child(odd) {background: #fff;}
#top .all_colors .category-term-description p { font-size: 26px;font-weight: bold;}

/* Partner */
div#aidata-partner {width:100% ;background-color: #fff;border: 1px solid #0763ac;}

#aidata-partner ul {padding: 3%;}
#aidata-partner ul li a {color: #333;}
#aidata-partner ul li a:hover {color: #008bd3;}

/*Download Page */

/*Download Section */
.download-btn {display: inline-flex; align-items: center; justify-content: center; text-align: center;  color: #fff; font-weight: bold; padding: 15px; max-width : 360px; width: 100%; border-radius: 10px; text-decoration: none; font-size: 14px; margin-right: 10px; transition: opacity 0.3s ease;}
.download-btn.primary {color: #fff; background-color: #0078dd;}
.download-btn.second { color: #fff; background-color: #222;}  
.download-btn.primary:hover, .download-btn.second:hover {color: #fff;}
.download-btn:hover { opacity: 0.8;}
.download-note { background: #f6f6f6; border: 1px solid #999; padding: 10px 15px; margin-top: 14px; font-size: 14px; line-height: 1.7;}
.download-note a { color: #0050c8; font-weight: bold; text-decoration: underline; transition: opacity 0.3s ease; }
.download-note a:hover {opacity: 0.8;}

/*Text Section*/
.section-title {font-weight: bold; color: #333; font-size: 20px; border-left: 5px solid #0078dd!important; padding-left: 10px; margin-bottom: 10px;}
.warning-box { border: 1px solid #999; background: #f6f6f6; padding: 15px; margin: 12px 0; font-weight: bold;}
.procedure-title {font-weight: bold; margin-top: 20px; margin-bottom: 8px;font-size: 16px;}
ol.custom-ol {list-style-type: decimal; padding-left: 1.5em; margin-top: 0; margin-bottom: 1em; counter-reset: custom-counter;}
ol.custom-ol li {position: relative; padding-left: 1em; margin-bottom: 6px; }
ol.custom-ol li::marker { color: #333; font-weight: bold;}
.note { font-size: 14px; color: #333; margin-top: 10px;}

@media (max-width: 768px) {
	.download-btn { display: block; width: 100%; max-width: 100%; margin-right: 0;margin-bottom: 10px;} 
}

/* Download With Image */
#download-layout-1 .program-box {padding: 5px;max-width: 1400px;}
#download-layout-1 .program-header {display: flex;flex-wrap: wrap;align-items: flex-start;gap: 20px;}
#download-layout-1 .program-header img {max-width: 180px;height: auto;flex-shrink: 0;}
#download-layout-1 .program-info {flex: 1;min-width: 200px;}
#download-layout-1 .download-button {background: #0078dd;color: white !important;padding: 14px 28px;display: inline-block;font-weight: bold;border-radius: 10px;text-decoration: none;font-size: 14px;margin-bottom: 10px;transition: opacity 0.3s ease;}
#download-layout-1 .download-button:hover {opacity: 0.8;}
#download-layout-1 .version {margin-bottom: 15px;}
#download-layout-1 .version a {font-size: 12px;color: #0078dd;text-decoration: underline !important;transition: opacity 0.3s ease;}
#download-layout-1 .version a:hover {opacity: 0.8;color: #0078dd;}
#download-layout-1 .description {font-size: 14px;color: #333;margin-bottom: 20px;}
#download-layout-1 .warn-box {background: #f6f6f6;border: 1px solid #999;padding: 14px;font-size: 14px;}
#download-layout-1 .warn-box strong {font-weight: bold;}
#download-layout-1 .warn-box a {color: #0078dd;font-weight: bold;text-decoration: underline !important;transition: opacity 0.3s ease;}
#download-layout-1 .warn-box a:hover {opacity: 0.6;color: #0078dd;}

@media (max-width: 768px) {
	#download-layout-1 .download-button {display: block; width: 100%;max-width: 100%;margin-right: 0;margin-bottom: 10px;}
	#download-layout-1 .program-header {flex-direction: column;align-items: center;text-align: center;}
	#download-layout-1 .program-header img {margin: 0 auto;}
	#download-layout-1 .program-info {width: 100%;}
}

#download-layout-2 .notice-box { border: 1px solid #999; padding: 30px; border-radius: 20px; background-color: #f6f6f6; line-height: 1.8; font-size: 14px; max-width: 1380px;}
#download-layout-2 .notice-title { font-weight: bold; font-size: 18px; color: #0044cc; margin-bottom: 12px;}
#download-layout-2 .notice-content ul { margin-top: 10px;margin-bottom: 10px; padding-left: 18px;}
#download-layout-2 .notice-content li { margin-bottom: 6px;}
#download-layout-2 .note { margin-top: 16px;}
#download-layout-2 .custom-link { color: #3363e3; text-decoration: underline;font-weight: bold;transition: opacity 0.3s ease;}
#download-layout-2 .custom-link:hover {opacity: 0.8;}
#download-layout-2 .red-bold {color: #b22626;font-weight: bold;}
#download-layout-2 .video-wrap { margin-top: 30px;text-align: center;}
#download-layout-2 .video-wrap iframe {max-width: 100%;width: 100%;height: 315px;border-radius: 10px;box-shadow: 0 0 10px rgba(0,0,0,0.08);}


#download-layout-3 .btn-wrap {display: flex; flex-wrap: wrap;gap: 20px; justify-content: center;max-width: 100%;}
#download-layout-3 .dl-btn {flex: 1 1 45%;background-color: #0078e5;color: #fff;text-align: center;font-weight: bold;font-size: 16px; padding: 30px 20px;border-radius: 6px;text-decoration: none;transition: opacity 0.3s ease;min-width: 280px;}
#download-layout-3 .dl-btn:hover {opacity: 0.7;}
@media (max-width: 768px) {
	#download-layout-3 .dl-btn {flex: 1 1 100%;}
  }


/*Header
div .logo {top:10px;}
.main_menu {position : relative; left: 200px;}*/


/*POST META LINE*/
span.post-meta-infos {display: none;}

/*POST NEWS*/
#top #wrap_all .all_colors .post-news h3 {text-align:center;}
#top #wrap_all .all_colors .post-news h4 {text-align:center;color: #666;}
#top #wrap_all .all_colors .post-news p {font-size: 16px; color: #555; text-align:justify;}
#top #wrap_all .all_colors .post-news li {line-height: 1.8em;text-align:justify;font-size: 16px;color: #555;}
.post-sub { margin-left: 15px;}
.post-sub:before {position: absolute;top: 8px;left: -5px;content: '';display: block; width: 8px; height: 27px; background-color: #1b4680;}

/*Recent News*/
#top #wrap_all .all_colors #notice-more h3 {font-size: 18px;}

/*Footer Widget*/
a.social-btn {margin-right: 10px; vertical-align:middle;}
#top #wrap_all .footer-widget h6 {color:#fff; margin-bottom: 5px;}
#top #wrap_all .footer-widget.num1 li {text-decoration:underline;}

/*Footer Copyrights Socket*/
#top #wrap_all #socket { font-size: 12px; border: 0;}
#top #wrap_all #socket .container {text-align:center;max-width: 350px; margin: 0 auto;}
@media only screen and (max-width: 767px) {
    .responsive #top #wrap_all #socket .container {width: 100%;max-width: 210px;margin: 0 auto;float: none;font-size: 11px;}
}


