@import url('https://fonts.googleapis.com/css2?family=Outfit&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');


/* base ******************************************************************************/

body {
  position: relative;
    word-wrap: break-word;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    color: #666;
    font-family: 'Outfit', Arial, "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", YuGothicM, 游ゴシック体, YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
    font-size: 16px;
    line-height: 1.8;
    overflow-wrap: break-word;

}


header,
footer{
font-family: Arial, "游ゴシック Medium", "Yu Gothic Medium", YuGothicM, 游ゴシック体, YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
}

.container{
position:relative;
width:100%;
background-color:#4eafff;
/*color:#292b2e;*/
color:#0a1a2a;
}

.container::before{
content:"";
position:fixed;
top:0;
left:0;
background:url(/info/event/dell/202604/media/img_bg.png) center 0 no-repeat;
background-size:cover;
width:100%;
height:100%;
}

.container-fluid {
max-width: 1250px;
margin: 0 auto;
padding:0;
background:none;
}

footer{
margin-top:0;
position:relative;
z-index:10;
}


.notice{
text-align:center;
font-size:1rem;
margin:0 auto 40px;
position:relative;
z-index:1000;
}




/* header ******************************************************************************/

.event-header {
display:flex;
flex-direction:column;
justify-content:center;
width:100%;
height:600px;
padding:0 8%;
color: #0a1a2a;
position: relative;
}

.event-header::before{
content:"";
position:absolute;
top:0;
right:0;
background:url(/info/event/dell/202604/media/img_kv.png) right top no-repeat;
width:100%;
height:100%;
background-size:cover;
}


.event-header h1{
font-size:clamp(2rem, 0.667rem + 3.33vw, 4rem);
font-family: 'Outfit', Arial, "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", YuGothicM, 游ゴシック体, YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
margin:0 0 20px 0;
padding:0;
max-width:1300px;
line-height: 1.3;
font-feature-settings: "palt" 1;
color:#fff;
position: relative;
}

.event-header h1 span{
width:fit-content;
margin:15px 0;
padding:5px 10px;
position:relative;
z-index:1;
}

.event-header h1 span::before{
content:"";
position:absolute;
top:0;
left:0;
/*background:rgba(255,255,255,0.4);*/
/*background-color:#0a1a2a;*/
background-image: linear-gradient(90deg, #0a1a2a 55%, #240868);
width:0;
height:100%;
z-index:-1;
animation: line 0.5s ease-out 0.3s forwards;
}

.event-header h1 span.sub-title{
font-weight:normal;
font-size:clamp(1rem, 0.667rem + 0.83vw, 1.5rem);
display:block;
}


.event-header .event-date{
position: relative;
font-size:clamp(1.5rem, 1.167rem + 0.83vw, 2rem);
margin:0;
padding:10px 0 0 0;
line-height: 1.3;
width:fit-content;
}

.event-header .event-date::before{
content:"";
position:absolute;
top:0;
left:0;
width:0;
height:3px;
background-color:#0a1a2a;
animation: line 0.5s ease-out 0.6s forwards;
}

@keyframes line{
0%{
width:0;
}
100%{
width:100%;
}
}



.event-header .event-date span{
margin:0;
text-align:left;
display:block;
position: relative;
z-index:10;
}

.event-header .event-date strong{
font-size:170%;
margin:0 3px;
}




/* summary ******************************************************************************/


.event-summary{
position:relative;
background:rgba(255,255,255,1);
background-image: linear-gradient(90deg, #0a1a2a 15%, #240868 50%, #0a1a2a 85%);
color:#fff;
padding:36px 0;
z-index:10;
}

.event-summary::before{
content:"";
position:absolute;
top:0;
left:0;
background:url(/info/event/dell/202604/media/img_summary.png) center center no-repeat;
width:100%;
height:100%;
opacity:0.7;
}


.event-summary p {
margin:0 auto;
padding-bottom:10px;
font-size: 1rem;
line-height: 1.8;
max-width:800px;
position:relative;
z-index:1001;
}




/* h2 ******************************************************************************/

h2{
margin:40px auto 0;
padding:15px 0 10px 0;
/*background-color:#fff;*/
/*border-top:1px solid #0a1a2a;*/
border-bottom:1px solid #0a1a2a;
/*border:1px solid #0a1a2a;*/
color:#0a1a2a;
font-size:clamp(1.5rem, 0.5rem + 2.5vw, 3rem);
font-weight:bold;
font-feature-settings: "palt";
line-height: 1.3;
text-align:left;
max-width:1250px;
position:relative;
z-index:100;
}

h2 span{
position:absolute;
bottom:0;
right:0;
margin:0 15px;
font-size:70%;
opacity:0.7;
line-height:1;
position:relative;
}



/* 開催概要 ******************************************************************************/


.event-outline{
position:relative;
padding:0;
}

.event-outline::before{
content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
z-index:-1;
}

.information {
max-width:1250px;
margin:0 auto;
padding:40px 0 0;
position:relative;
z-index:100;
}

.information dl{
font-size:1rem;
display:flex;
flex-wrap:wrap;
justify-content:space-between;
background-color:#fff;
border:1px solid #f0f0f0;
}

.information dt,
.information dd{
text-align:left;
margin:0;
padding:20px;
color:#151515;
}


.information dt{
width:20%;
border-right:1px solid #d0d0d0;
border-bottom:1px solid #d0d0d0;
font-weight:normal;
float:none !important;
position:relative;
}
.information dd{
border-bottom:1px solid #d0d0d0;
width:80%;
}
.information dt:last-of-type,
.information dd:last-of-type{
border-bottom:none;
}
.information dt:nth-of-type(even),
.information dd:nth-of-type(even){
background-color:#f8f8f8;
}







/* 講演内容 ******************************************************************************/


.event-session{
padding:0;
position:relative;
}

.session-program{
margin:0 auto;
position:relative;
z-index:10;
}


.session-program .session-frame{
background-color:#fff;
margin:0 auto;
padding:36px;
}


.session-program .session-time{
margin:40px 0 0;
text-align:left;
font-size:clamp(1.75rem, 1.083rem + 1.67vw, 2.75rem);
font-weight:bold;
padding:0;
width:fit-content;
position:relative;
}


.session-program .session-label{
/*background-color:#e4eef8;*/
border:1px solid #1a4d80;
color:#1a4d80;
margin:10px 0 5px 0;
padding:0 25px;
font-size:0.85rem;
text-align:center;
width:fit-content;
}



.session-program .session-speaker{
text-align:center;
font-size:1.5rem;
border-top:1px solid #444;
border-bottom:1px solid #444;
padding:5px 0;
}


.session-program .session-title {
margin: 0;
padding:0;
font-size:clamp(1.5rem, 0.833rem + 1.67vw, 2.5rem);
font-weight:bold;
line-height:1.5;
font-feature-settings: "palt" 1;
position:relative;
}



.session-program .session-title span {
display: block;
color:#0c3c6b;
font-size: 70%;
}


.session-program .session-summary {
letter-spacing: 0;
font-size:1rem;
padding:20px 0 45px;
color:#444;
line-height:1.6;
}


.session-program .session_profile_group{
display:flex;
justify-content:space-between;
}
.session-program .session_profile {
margin:0 0 30px 5px;
padding: 0;
clear: both;
font-size:1.25rem;
display:flex;
overflow: hidden;
}

.session-program .session_profile_group .session_profile{
width:48%;
}



.session-program .profile_thumb {
margin: 0 25px 20px 10px;
flex-shrink: 0;
width:150px;
position:relative;
z-index:1;
}


.session-program .profile_thumb img{
width:150px;
object-fit: cover;
box-shadow:0 0 10px #d5d5d5;
display:block;
}

.session-program .profile_name {
margin:0;
line-height:1.5;
font-size:1rem;
}

.session-program .profile_name strong{
font-size:130%;
padding-top:4px;
display:block;
}

.session-program .profile_name .profile_accordion {
margin: 0;
line-height: 1.6;
}

.session-program .profile_name .js-profile-trigger{
position: relative;
display: inline-block;
font-size:0.9rem;
font-weight:normal;
margin:10px 0 0 0;
padding:0 30px;
background-color:#3ea8ff;
cursor: pointer;
width:fit-content;
font-feature-settings:"palt";
}
.session-program .profile_name .js-profile-trigger:hover{
background-color:#f0f0f0;
transition:0.3s;
}

.session-program .profile_name .js-profile-detail{
padding-top: 10px;
padding-bottom:20px;
font-size:0.9rem;
font-weight:normal;
line-height:1.6;
color:#888;
display:block;
position:relative;
}


.event-session .notice{
margin:20px 0 0;
text-align:center;
font-size:1rem;
position:relative;
z-index:1000;
}



.event-session .moderator{
border:1px solid #050505;
margin:10px 10px 20px;
padding:0 5px;
text-align:ceneter;
width:fit-content;
}


/* 参加特典 ******************************************************************************/


.benefits-area{
color:#151515;
margin:8% auto 20px;
padding:45px 30px 20px;
max-width:800px;
background-color:#fff;
box-sizing:border-box;
border-radius:20px;
border:1px solid #e5e5e5;
line-height:1.5;
position:relative;
z-index:1000;
}

.benefits-area::before{
content:"参加特典";
position:absolute;
top:-60px;
left:-40px;
width:120px;
height:120px;
line-height:120px;
padding:0;
/*background-color:#db4800;*/
background-color:#7855fa;
color:#fff;
text-align:center;
border-radius:50%;
font-size:1.25rem;
font-weight:bold;
}


.benefits-area p{
margin:10px 0;
font-size:0.9rem;
text-indent: -15px; 
padding-left: 15px;
}

.benefits-area p strong{
margin:0 auto;
font-size:130%;
text-align:center;
line-height:1.4;
display:block;
}
.benefits-area p strong span{
/*color:#db4800;*/
color:#7855fa;
}

.benefits-area p a{
color:#2e69ff;
font-weight:bold;
}




/* 参加申し込み ******************************************************************************/

.event-entry{
position:relative;
padding:30px 0;
}

.privacy-note {
max-width:800px;
margin:60px auto;
padding: 30px;
background-color:#fff;
color:#151515;
font-size: 12px;
text-align:left;
/*border:1px solid #ccc;*/
/*border-radius:15px;*/
position:relative;
z-index:10;
}

.privacy-note dt{
width:100%;
}
.privacy-note dd{
width:100%;
margin:10px 0 !important;
}


.privacy-note dl dd a{
color:#2e69ff;
font-weight:bold;
}



/*btn default setting*/


.btn-register {
width: 100%;
margin: 40px auto;
padding:0 10px;
text-align:center;
position:relative;
z-index:10;
}

.btn-register-head{
width:100%;
margin:20px 0 0;
z-index:100;
}



.btn {
  display: inline-block;
  box-sizing: border-box;
  margin: 60px auto;
  padding: 15px;
  font-weight: bold;
  line-height: 20px;
  background-color: #a2df1f;
  text-align: center;
  color: #050505 !important;
  border-radius: 50px;
  transition: 0.3s;
  display: block;
  position: relative;
  z-index: 100;
}


.btn:hover,
.btn-register-head .btn:hover{
background:#d6f690;
color: #050505 !important;
transform:scale(1.03);
transition:0.5s;
}

.btn span{
display: flex;
align-items: center;
justify-content: center;
height: 100%;
font-size:1.5rem;
margin:0 auto;
width:fit-content;
position:relative;
}

.btn-style{
max-width:800px;
height: 80px;
display:block;
}
.btn-register-head .btn-style{
max-width:400px;
height: 50px;
margin:10px 0;
padding:5px 25px;
}
.btn-register-head .btn span{
font-size:1.25rem;
}




/* sponsor ******************************************************************************/


.event-sponsor {
padding: 60px 0;
background: #fff;
position:relative;
z-index:100;
}


.event-sponsor h3 {
margin: 0 auto;
text-align: center; 
border: none;
font-size: 1.5rem;
font-weight:normal;
color: #333;
border-bottom:1px solid #ccc;
width:fit-content;
}

.event-sponsor ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
margin:0;
}
.event-sponsor ul li {
  width: 30%;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}







/* inquiry ******************************************************************************/

.event-inquiry{
/*padding-bottom:30px;*/
text-align:center;
position:relative;
}


.event-inquiry p{
position:relative;
z-index:10 !important;
padding:50px 0;
text-align:left;
font-weight:bold;
}

.event-inquiry p a{
color:#003366;
}

footer{margin-top:0;}



/* fadein ******************************************************************************/



/* フェードイン用のスタイル */
.fade-in-element {
  opacity: 0;
  transform: translateY(0);
  transition: opacity 0.5s ease-out, transform 0.5s ease-out;
}

.fade-in-element.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* 遅延アニメーション用 */
.fade-in-element.delay-1 {
  transition-delay: 0.1s;
}

.fade-in-element.delay-2 {
  transition-delay: 0.2s;
}

.fade-in-element.delay-3 {
  transition-delay: 0.3s;
}

/* 下から上へのフェードイン */
.fade-up {
  transform: translateY(10px);
}




/* スムーズスクロール用 */
a[href^="#"] {
  scroll-behavior: smooth;
}






/* 視聴 & 動画再生 ***************************************************************************/


.event-header.webinar-header,
.event-header.webinar-header h1,
.event-header.webinar-header .header-main-frame{
  height:280px;
}


.event-header.webinar-header .header-main-frame>div{
background-position:center top;
}



.event-header.webinar-header h1 .ttl-headline {
font-size: 2.5rem;
}

.event-header.webinar-header h1 .ttl-main {
font-size:1.5rem;
}



.video_block{
position:relative;
background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(228,239,247,1) 100%);
}



.video {
  width:100%; 
  margin: 40px auto;
}
.video-wrapper {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 56.25%;
z-index:100;
}
.video-wrapper iframe,
.video-wrapper video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.video_block p{
position:relative;
z-index:100;
}


.video_block p a{
color:#0672cb;
font-weight:bold;
}


.video_block .enq-text{
margin:20px auto;
font-size:18px;
font-weight:bold;
}





/* responsive 
------------------------------------------------------------------------------- */



@media (max-width: 960px) {


.container-fluid {
padding:0 10px;
}


.event-header{
padding:0 3%;
}


.event-header::before{
opacity:0.6;
}


h2{
margin:20px 10px 0;
}


.event-summary{
padding:15px;
}

.event-session{
padding-bottom:25%;
}

.session-program .session_profile_group{
display:block;
}

.session-program .session_profile_group .session_profile{
width:100%;
}

.benefits-area{
padding:45px 15px 15px;
}

.benefits-area::before{
left:0;
}


.sponsor li {
  width: 100%;
  margin-bottom: 24px;
}




.event-header.webinar-header,
.event-header.webinar-header h1{
  height:250px;
}


.event-header.webinar-header h1 .ttl-headline {
  font-size: 1.5rem;
}

.event-header.webinar-header h1 .ttl-main {
font-size:1.25rem;
}


.video {width: 100%;}

}



@media (max-width: 640px) {


.event-header{
height:400px;
}

.event-header::before{
opacity:0.4;
}



.event-summary p{
padding:0;
}

.information dt,
.information dd{
width:100%;
border-right:none;
}

.information dt:last-of-type{
border-bottom:1px solid #d0d0d0;
}



.session-program .session-frame{
padding:15px;
}

.session-program .session-summary{
padding:20px 0;
}



.session-program .session_profile {
display:block;
}
.session-program .profile_thumb{
margin:20px auto;
}






.btn span{
font-size:1rem;
}



.event-header.webinar-header,
.event-header.webinar-header h1{
height:250px;
}

.event-header.webinar-header h1{
top:15%;
}



}






/* ヘッダー＆フッター広告表記 2024～
-------------------------------------------------------------------------------------------------------*/

.header_sponsored_area{
    width:100%;
    background-color:#fff;
    color:#000;
    font-size:14px;
    text-align:right;
    padding:15px 20px;
    position:relative;
    z-index:1000;
}

.header_sponsored_area span{
    margin:0;
    line-height:1.3;
    display:block;
}


.block_sponsored_area{
    clear:both;
    background-color:#fff;
    color:#000;
    font-size:14px;
    border:1px solid #000;
    margin:25px auto;
    padding:15px 15px 10px;
    max-width:760px;
    position:relative;
    z-index:1000;
}

.block_sponsored_area span{
    margin:5px 0;
    text-align:left;
    display:block;
}


.block_sponsored_area:before{
    display: block;
    content: "PR";
    position: absolute;
    top: -12px;
    left: 30px;
    width: 40px;
    height: 30px;
    text-align: center;
    background-color: #fff;
}


@media screen and (max-width: 800px) {

.block_sponsored_area{
margin:25px;
}


}

