@charset "UTF-8";
/* CSS Document　digitaldays2025 トップページ*/

.main_bg{
     background: url( "../img/main_bk_img.jpg") no-repeat center top,var(--back-color);
    /*background-attachment: fixed;*/
    background-size: cover;
    background-position: bottom;
    position: relative;

@media only screen and (max-width: 780px) {
    background-size: 1670px;
    background-position: right -630px top, center;
    height: auto;
  }
}
/* メインビジュアル*/
#top_main{
@media only screen and (max-width: 780px) {
margin-top:50px;
.free_img img{width: 35%}
}
    .contents {
    position: relative;
    width: clamp(320px, 90%, 1024px);
    }
    .contents_inner{padding: 35px 0;}
    h2 { margin-bottom: 15px;}
    h4 { max-width: 700px;}
    
    .main_day{ 
    margin: 30px auto;
    text-align: center;
    }
    
        .main_text{ 
    margin: 0px auto;
    text-align: center;
    }
    
    .head_rogo{
    position: absolute;
    top: 20px;
    right: 0;
    }
    
    .flex-container{flex-wrap: nowrap;}

    .top_leftbox{
    width: 55%;

    h4{
        margin-left: 70px;
        margin-bottom: 25px;
    }
  }
@media only screen and (max-width: 780px) {
  .flex-container{flex-direction: column;}
  .top_leftbox{
    width: 100%;
    img{ width: 95%;}
    h2{
      text-align: center;
      margin-bottom: 0.5em;
    }
    h4{
      display: none;
    }
  }
}
    
    .top_rightbox{
      display: flex;
      flex-direction: column;
      margin-bottom: 2em;
      img{width: 100%;}
    @media only screen and (max-width: 780px) {
    width: 88%;
    margin:0px auto;
    text-align: center;
    img{margin-bottom: 5px;}
    }
    h5{
      margin-top: 40px;
      color: rgba(91, 0, 208, 0.9);
      font-weight: bold;
      text-shadow: -3px -3px  rgba(129, 232, 253, 0.5);
      font-size: 1.8em;
      margin-bottom: 25px;
      text-align: center;
       @media only screen and (max-width: 780px) {
           margin: 10px auto 0 auto;
       }
    }
    figure{
    @media only screen and (max-width: 780px) {
    display:none;
    }
    img{
        opacity: 0.9;
    }
    }
  }

@media only screen and (max-width: 780px) {
     .bg_main{background: url( "../img/main_bk_img_sp.jpg") no-repeat center center;}
    
    .contents_inner{padding: 50px 0;}
    
    .head_rogo{max-width: 100px;}

    .btn_order{margin: 0;}
    .btn_order a {
      width:95% ;
      font-size: 1.5em;
      padding: 0.6em 0;
    }

}

/*ヴィジュアルの基調講演*/
 #top_k{
  margin-top: 35px;
  padding: 1.1em 1.5em;
  background: rgba(255, 255, 255, 0.8);
  border: 2px solid var(--primary-color);
  .MV_kichobox{
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
     row-gap: 2.5em;
  }
  
  .MV_kichobox .flex-container{
    flex-direction: column;
    /*max-width: 320px;*/
    margin: 0 0.5em 0 0;
    flex: 0 0 calc((100% - 1em) / 3);
  }
  .MV_kichobox .flex-container:last-child{margin-right: 0;}

  .MV_kichobox .flex-container .photo {
    width: 36%;
    margin: 0 0.2em 0.1em 0;
  }
  .flex-container .MVbox_3com {height: 120px;}

  .kicho_title{
    font-size: 18px;
    line-height: 1em;
    font-weight: bold;
  }
  .kicho_title::after {
    height: 1.5px;
    bottom: -5px;
  }


  .MVbtn{
    margin: 0.5em 0 0;
   a{
    display: inline-block;
    width: 250px;
    padding: 0.3em 2em 0.3em;
    font-size: 0.75em;
    text-align: center;
    color: #000;
    font-weight: bold;
    border: 1.2px solid #525252;
  }
  a:after{
    content: '\f078';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    width: 0.8em;
    margin-left: 0.3em;
    color: rgb(72, 72, 72);
  }
  a:hover::after{color: #fff;}
  a:hover{
    background-color: var(--primary-color);
    color: #fff;
    text-decoration:none;
  }
}

  .caption{
  h5{
    line-height: 1.4em;
    margin-bottom: 0.1em;
    color: var(--primary-color);
    font-size: 0.85em;
    font-weight: bold;
  }
  p{line-height: 0.77em;}
  .company_name{
    font-weight: bold;
    font-size: 0.7em;
  }
  .cap_s {
    font-size: 0.65em;
    margin-bottom: 0.5em;}
  .cap_name {
    font-weight: bold;
    font-size: 0.75em;
  }
}
  
  @media only screen and (min-width: 801px) and (max-width: 1104px){
    padding: 1.5em;
    .m30-b {margin-bottom: 0.5em !important;}
    .MV_kichobox .flex-container {
      justify-content:unset;
      flex: 0 0 calc(78%  / 2);
      margin-top: 1.8em;
    }
    .MV_kichobox .flex-container .photo{width:  40%;}
  }
  @media only screen and  (max-width: 800px){
    padding: 2.5em 2em;
    .m30-b {margin-bottom: 1em !important;}
    .MV_kichobox{margin: 1.5em auto 0;}
    .MV_kichobox .flex-container {
      gap: 0.5em;
      margin-right: 0;
      flex: 0 0 calc(78%  / 2);
    }
    .MV_kichobox .flex-container .photo {width: 37%;}
    .flex-container .MVbox_3com {height: auto;}
    .MVbtn{margin: 0;}
  }
  @media only screen and  (max-width: 711px){
    padding: 2em 1.8em;
    .MV_kichobox{justify-content: center;}
    .MV_kichobox .flex-container {flex: 0 0 calc(100%  / 1);}
    .MV_kichobox .flex-container  .photo { width: 104px;}
  }

@media only screen and (max-width: 380px) {
  #top_k{
  .MV_kichobox{
    flex-direction: column;
    gap: 1em;
  }
  .MV_kichobox .flex-container .photo {width: 30%;}
  .caption{
    width: 75%!important;
    p{line-height: 1em;}
    .company_name {font-size: 0.88em;}
    .cap_s {font-size: 0.8em;}
    .cap_name {font-size: 0.88em;}
  }
  .MVbtn a{
    /*width: 20em;*/
    font-size: 0.9em;
  }
}
}
}
}

/*topページのスライド*/
.slide-items {
  width: 100%;
  height: 100%;
}

.slide-items img {
  width: 100%;
  object-fit: cover;
}

.slide-items.slick-slide a img:hover {
  filter: alpha(opacity=90);
  -moz-opacity: 0.9;
  opacity: 0.9;
}

.slide-items .slick-next::before {
  content: url("../img/arrow_slide_right.svg");
  width: 1.5rem;
}

.slide-items .slick-prev:before {
  content: url("../img/arrow_slide_left.svg");
  width: 1.5rem;
}
@media only screen and (max-width: 780px) {
.slick-dotted.slick-slider {
    max-width: 260px;
    margin: 0 auto;
    margin-bottom: 0!important;
}
}


/*----お知らせ---*/
#info{ background: #F1F1F1;}


#info .info_box{
display: flex;
justify-content: space-between;
}

#info .info_box .info_box__left{
display: flex;
align-items: center;
text-align: center;
width: 200px;
color: #fff;
background: #676565;
justify-content: center;
}

#info .info_box .info_box__right{
background: #fff;
width: 700px;
}

#info .info_box .info_box__right dl{
margin: 20px;
width: auto;
display: block;
border-top: 1px solid rgba(173,171,172,1.00);
}

#info .info_box .info_box__right dl dt{ 
width: 7em;
font-size: 0.8em;
font-weight: bold;
float: left;
line-height: 1.5em;
padding: 0.3em 0;
}

#info .info_box .info_box__right dl dd{
font-size: 0.8em;
line-height: 1.5em;
border-bottom: 1px solid rgba(173,171,172,1.00);
/* padding: 0.3em 0 0.3em 7em; 日付あり*/
padding: 0.3em 0 0.3em 0em;/*日付なし*/
}

@media only screen and (max-width : 780px){
#info .info_box{
display: block;
}
#info .info_box .info_box__left{
display: block;
width: 100%;
text-align: center;
}
#info .info_box .info_box__right{
background: #fff;
width: 100%;
padding-top:10px;
padding-bottom: 10px;
}
}

/*領域タイトルの背景*/
.bgc_DD{ 
    background: var(--sab-color);
    background: url(../img/DXtop_programbk.png) no-repeat left  top, #af176e ;
    background-size: cover;
    color: #fff;
    flex:4;
    padding: 0 2.1em;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-self: stretch;
    margin-bottom: 0;
}

.bgc_AI{ 
    background: var(--sab-color);
    background: url(../img/AItop_programbk.png) no-repeat left  top, #0a8864 ;
    background-size: cover;
    color: #fff;
    flex: 4;
    padding: 0 2.1em;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-self: stretch;
    margin-bottom: 0;
}

.bgc_SEC{
    background: var(--sab-color);
    background: url(../img/SStop_programbk.png) no-repeat left top, #c94d1f;
    background-size: cover;
    color: #fff;
    flex: 4;
    padding: 0 2.1em;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-self: stretch;
    margin-bottom: 0;

    .top_small{font-size: 20px;} 

    @media only screen and (max-width: 786px) {
      .top_small{font-size: 16px;}
      }
}
.bgc_SP{
    background: var(--sab-color);
    background: url(../img/sptop_programbk.png) no-repeat left top, #1d4d9b;
    background-size: cover;
    width: calc((100% - 12em) /2);
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-self: stretch;
    padding: 0 2.1em;
    z-index: 10;
}
@media only screen and (max-width: 1125px) {.bgc_SP{width: calc((100% - 6em) /2);}}
@media only screen and (max-width: 940px) {
  .bgc_DD,.bgc_AI,.bgc_SEC,.bgc_SP{padding: 0 1em;}
}
@media only screen and (max-width: 786px) {
  .bgc_DD,.bgc_AI,.bgc_SEC{padding: 0 1.5em;}
  .bgc_SP{padding: 1.5em;}
}
@media only screen and (max-width: 780px) {.bgc_SP{width: auto;}}
/*領域タイトルの背景*/

/* プログラム */
#program{
  h2{
    margin-bottom: 0.8em;
    line-height: 1em;
  }
  .contents_inner{padding-top: 0;}
    .program_box02 {
        display: flex;
        flex-direction: column;
        @media only screen and (max-width: 786px) {
         display: block;
        }
            .inner {
            width: 100%;
            display: flex;
            flex-direction: row;
            background: #ffffff;
            border: 2px solid var(--primary-color);
            margin-bottom: 75px;
            position: relative;;
            @media only screen and (max-width: 786px) {
            width: 100%;
            margin-bottom: 25px;
            flex-direction: column;
            }
            .innar{
              flex: 6;
            }
            h2 {
              font-size: clamp(2.5rem, 2.3864rem + 0.5682vw, 2.75rem);
              line-height: 1.4em;
                text-align: left;
                /*width: calc(100% - 3rem);*/
                margin: 0;
                @media only screen and (max-width: 780px) {
                  margin: 0.6em 0 0.5em;
                  width: 100%;
                }
            }
        }
    }

.program_box02 .innar .kouen_list{
  column-count: 2;
  column-fill: auto;
  height: 200px;
}
.program_box02 .innar .kouen_list02{
  column-count: 2;
  column-fill: auto;
  height: 300px;
}
.program_box02 .innar .kouen_list li,.program_box02 .innar .kouen_list02 li{
  margin-bottom: 0.2em;
  line-height: 1.3em;
  break-inside: avoid;
}
.program_box02 .innar .kouen_list .no_countli,.program_box02 .innar .kouen_list02 .no_countli{
  break-inside: avoid;
  page-break-inside: avoid;
}

@media only screen and (max-width: 1119px) {
.program_box02 .innar .kouen_list02{height: 300px;}
}

@media only screen and (max-width: 786px) {
  .program_box02 .innar .kouen_list,.program_box02 .innar .kouen_list02{
    column-count: 1;
    height: auto;
  }
  .program_box02 .innar .kouen_list li,.program_box02 .innar .kouen_list02 li{
    line-height: 1.7em;
    margin-bottom: 0.8em;
  }
  .program_box02 .innar .kouen_list li .small,.program_box02 .innar .kouen_list02 li .small{font-size: 1.1em!important;}
}
}



.program_com .innar {padding: 1.5em 2.1em;}
.program_com .photo_box img {
    width: 180px;
    min-width: 90px;
    }
.photo,.photo02 {
    float:left!important;
    width: 210px;
    box-sizing: border-box;
    margin: 2px 0.8em 0.2em 0 !important;
}
#SP .photo,#SP .photo02 {
    float:left!important;
    width: 180px;
    box-sizing: border-box;
    margin:2px 0.8em 0 0 ;
}
#SN1_photo {
  width: 210px!important;
  margin:2px 0.8em 0.2em 0!important;
}

.flex-box_spbt_end{
margin: auto auto 20px auto;
padding: 0 20px;
width:calc(100% - 40px);
}

 @media only screen and (max-width : 945px){
 .program_com .innar {padding: 1.5em !important;}
.photo,.photo02,#SN1_photo {
  width: 120px!important;
  margin: 0 1em 0 0;
}
}

.program_box02 h3{
                font-size: 28px;
                line-height: 1.5em;
                margin-bottom: 0.8em;
 @media only screen and (max-width : 780px){
  font-size: 20px;
 }
            }

.program_box02 p{
font-size: 0.85em;
}

 .program_box02 h5{
  font-weight: 600;
  font-size: 0.9em;
  color: var(--sab-color_black);
}
                
 .program_box02 ul /*.list_right*/ li ul{
 margin-bottom: 8px;
 font-size: 0.8em;
 }
 
  .program_box02 ul /*.list_right*/ li {
 line-height: 1.5em;
 }
 .program_box02 .btn_detail,
 .session_box .btn_detail{
 margin-top: auto;
 font-size: 0.9em;

 }
  @media only screen and (max-width : 780px){
  .program_box02 h5{font-size: 1.1em;}
  .program_box02 ul li {
    line-height: 1.8em;
    a{font-size: 1.3em;}
  }
  .program_box02 .btn_detail,
 .session_box .btn_detail{margin-bottom: 20px;}
}
 
/* 特別セッション */
#session{
  .contents_inner{padding-top: 0;}
  h2{
    margin-bottom: 0.8em;
    line-height: 1em;
  }
    .session_box{
    display: flex;
    justify-content: space-between;
    figure img{
      max-width: 60%;
      margin: 1em 0;
    }
                .inner {
            width: 100%;
            display: flex;
            flex-direction: row;
            background: #ffffff;
            border: 2px solid var(--primary-color);
            margin-bottom: 75px;
            position: relative;
        }
        
          h3{  
            /*flex:5;*/
            font-size: 33px;
            line-height: 1.3em; 
            color: #ffffff;
            margin: 0;
            .sab-title{
              font-size: 27px;
              font-weight: 600;
            }
            }

          .innar{
            flex:5;
            padding: 1.6em 2.1em 1.7em;
          }

    .flex-container{
      flex-direction: column;
      margin-bottom: 1em;
    }
          h5 {
            font-weight: bold;
            line-height: 1.5em;
             color: var(--sab-color_parple);
            }
          .sab-title{
            margin: -0.3em 0 0.3em;
            font-size: 27px;
            font-weight: 600;
          }
          .top_small{margin: 0;}
          figure{ 
            text-align: left; 
          }
          .text{ margin-top: 60px; text-align: center;
            @media only screen and (max-width : 780px){
               margin-top: 30px
               }
             }

@media only screen and (max-width : 780px){
  .innar{padding: 1.5em;}
  .inner{
      flex-direction: column;
      margin-bottom: 25px;
    }
    h3{font-size: 24px;}
      .flex-container{
        flex-direction: column;
      }
       figure{ 
        display: block;
        text-align: center;
        justify-content: center;
        margin-top: 15px;
       }

       .sab-title{font-size: 16px;}

    }
        }
        }
    

/* トップページdd Live */
#ddlive{
  --ddlive-gradation: linear-gradient(113deg, rgba(91, 0, 208, 1) 2%, rgba(91, 0, 208, 1) 70%, rgba(220, 60, 203, 1));

  .dd_inn{
    padding: 70px;
    background-color: rgba(232, 232, 232, 0.8);
  }

      h2{
        margin-bottom: 20px;
      }
      h3{
        color: var(--sab-color_parple);
      }
     p.sab-title{
    display: block;
    line-height: 1.2em;
    font-size: 1.1em;
    font-weight: bold;
    margin-bottom: 50px;
    text-align: center;
    @media only screen and (max-width : 786px){
    margin-bottom: 20px;
    }
     }
    
   dl{
margin: 50px auto;
   }
   
@media only screen and (max-width: 786px) {
   .dd_inn{
    padding: 20px;
   }
    dl{
    margin: 20px auto;
   }
    }
   dl dt{
    background: var(--ddlive-gradation); 
    } 
}

 .event_box {
  display: flex;
  gap: 2%;
  margin-top: 20px;
  /*align-items: center;*/
}

@media only screen and (max-width: 786px) {
  .event_inner {
    flex-direction: column;
    align-items: flex-start;
  }
  .event_box {
  margin-bottom: 15px;
}
}
/* @media only screen and (max-width: 450px) {
  .event_box {
    flex-direction: column;
  }
} */

.event_num {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background: var(--sab-color_parple);
  width: 50px;
  height: 50px;
  line-height: 1;
  min-width: 50px;
  color: #ffffff;
}

.event_num_ttl {
  font-size: 12px;
}

.event_num_num {
  font-size: 20px;
  font-weight: bold;
}

.event_tlt_box {
  margin: 0 20px;
}

/* 概要*/
#gaiyou{
  h2{
  margin-bottom: 0.8em;
  line-height: 1em;
  }
  .contents_inner{padding-top: 0;}
}
dl.gaiyou_box{
  line-height: 1.5em;
}

dl.gaiyou_box dt{
  width: 20%;
  text-align: center;
  color: #fff;
  background: var(--primary-color);
  padding: 0.2em 0;
  margin-bottom: 0.5em;
  font-weight: bold;
  display: flex;
  justify-content: center;
  align-items: center;
  letter-spacing: 0.15em;
}

dl.gaiyou_box dd{
  margin-left: 0.5em;
  /* font-weight: bold; */
  margin-bottom: 0.5em;
  background: #fff;
  width: 75%;
  padding: 15px;
  font-size: 0.9em;
}

@media only screen and (max-width: 640px) {
  dl.gaiyou_box dt{
    margin-bottom: 0;
    width: 100%;
  }
  dl.gaiyou_box dd{
    margin-left: 0;
    width: calc(100% - 30px);
  }
}

/*お問い合わせContact*/
#contact{
  background:var(--back-color);
  h2{line-height: 1em;}
  .contents_inner{
    padding: 70px 0;
  }

    dl{
      width: clamp(320px, 90%, 1024px);
      margin: 0 auto;
    }
     dl dt{
	width:100%;
	margin-bottom:1em;
    /*display: flex;
    align-items: center;*/
    font-size: 1.5em;
        img{
        margin-right: 1em;
        width: 15%;
        }
        p{ line-height:1.3em; font-size:0.9em;}
        @media only screen and (max-width : 780px){
      img{
        flex-basis: 40%;
        width: 95px;
      }
    }
    }
    dd{}
    .contents_inner_box{
/*background-image: linear-gradient(to right, #648ed4, #b352bd);*/
    padding: 40px 0 50px 0;
    background:var(--back-color);
    @media
    only screen and (max-width : 780px){
    padding: 20px;
    }
    }

}

@media
only screen and (max-width : 786px){
#contact .contents_inner{
   padding: 30px 0 ;
}


#contact .flex-container{ display:block;}
#contact dl{
	width: 100%; margin-bottom:10px;}

}

/* --- 協賛 --- */
#sponsor{
h2{
  line-height: 1em;
  margin-bottom: 1.1em;
  }
h5{font-size: 18px;}
}

ul.bnr_box {
  display: flex;
  text-align: center;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 1em;
  gap:4em 6%;
}

ul.bnr_box li {
  vertical-align: middle;
  display: flex;
  justify-content: left;
  align-items: center;
  position: relative;
  flex: 1 1 auto;
  width: calc((100% - 8em) /3);
}

ul.bnr_box li figure {
  padding-bottom: 10px;
  .rogo_cover{
    height: 130px;
    width: 250px;
    object-fit: cover;}
}
ul.bnr_box li figure img .rogo_cover02{
  height: 150px;
    width: 100%;
    object-fit: cover;
}

ul.bnr_box li figcaption {
  position: absolute;
  bottom: 0;
  font-size: 0.75em;
  text-align: left !important;
  font-weight: bold;
  vertical-align: baseline;
  color: #333;
  line-height: 1.3em;
  white-space: nowrap;
}


ul.bnr_box li figcaption:last-child{
bottom: -1.5em;
line-height: 1.3em;
}

ul.bnr_box_02 li{
max-width: 200px;
}

@media only screen and (max-width: 780px) {
  h5{
    font-size: 15px !important;
  }
  ul.m90-b{margin-bottom: 2em !important;}

  ul.bnr_box {
    margin-top: -10px !important;
    margin-bottom: 1.5em !important;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap:20px 5%;
  }

  ul.bnr_box li.w300 {width: 43%;}

  ul.bnr_box li {
    width: calc((100% - 4em) / 2);
    flex-direction: column;
    text-align: left;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  ul.bnr_box li figure {
    padding-bottom: 1em;
    display: flex;
    align-items: center;
    height: 75%;
    width: 95%;
  }
  .rogo_cover {
    width: 88% !important;
    height: 88% !important;
    margin-bottom: -1em;
  }
  .rogo_cover02 {margin-top: 1em;}

  #ABeam_index{margin-top: 2em!important;}

  ul.bnr_box li figcaption {
    position: static;
    text-align: left !important;
    white-space: pre-wrap;
    margin-left: -1.6em;
    width: 85%;
  }
}


/*ご挨拶*/
#objectives{
  margin-bottom: 45px;
@media only screen and (max-width : 780px){
  .read_flex{
    flex-direction: column;
    gap: 0.5em;
  }
  .read{margin-top: 0;}
}
}


