

@import url('https://fonts.googleapis.com/css2?family=Inter&display=swap');


/* フレーム設定-------------------------------------------------------------------------------- */




body {
width: 100%;
position:relative;
}


#adspecial_itsec-forum_202307{
padding: 0;
line-height:1.8;
}


#adspecial_itsec-forum_202307.adspecial_type1{
width:100% !important;
max-width:100% !important;
position:relative;
font-family:"ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Meiryo UI",メイリオ, Meiryo, sans-serif;
background:url(/info/event/itsec-forum/202307/media/page_background.jpg) center top no-repeat;
background-attachment:fixed;
line-height:1.5;
/*position:relative;
z-index:-1;*/
}




footer{
margin-top:0;
}


.block_sponsored {
background:#fff;
padding: 30px 20px;
text-align: center;
color:#333;
}

.block_sponsored a{
color:#cc0000;
}




@keyframes fade{
  0% {
    opacity: 0;}

  100% {
    opacity: 1;}
}


.container-fluid {
max-width: 1050px;
margin: 0 auto;
}


.hero{
margin: 0 auto;
height: 400px;
background:url(/info/event/itsec-forum/202307/media/hero_img.jpg) left top no-repeat;
background-size:cover;
position: relative;
}


.head_title {
float:none !important;
position: absolute;
right:10%;
top:10%;
max-width:800px;
z-index:100;
}

.head_title p{
color:#fff;
font-size:1.25rem;
margin:30px 0 0;
padding:10px 15px; 
border-top:1px solid #fff;
border-bottom:1px solid #fff;
width:fit-content;
position:relative;
opacity:0;
animation: fade .8s linear 1.0s 1 forwards;
}

/*.head_title p:before{
content:"";
position:absolute;
top:-10px;
left:0;
width:100%;
height:1px;
background-color:#fff;
}

.head_title p:after{
content:"";
position:absolute;
bottom:-10px;
left:0;
width:100%;
height:1px;
background-color:#fff;
}*/


.head_title h1 {
color: #151515;
line-height: 1.3;
font-feature-settings: "palt" 1;
width:fit-content;
position:relative;
z-index:100;
}

.head_title h1 .ttl-main {
display:block;
font-size:2.4rem;
padding:0 15px;
position:relative;
display:block;
font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif !important;
}


.head_title h1 .ttl-sub{
display:block;
font-size:1.4rem;
padding:0 15px;
position:relative;
display:block;
font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif !important;
}


.head_title h1 .ttl-main:before,
.head_title h1 .ttl-sub:before{
content:"";
position:absolute;
top:0;
left:0;
background-color:#52ffc4;
width:100%;
height:100%;
z-index:-1;
}


.head_title .ttl-label {
font-size:1.75rem;
font-weight:bold;
text-shadow: none;
/*color:#52ffc4;*/
color:#fff;
margin:20px 0;
padding:5px 0;
font-family:'Inter', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif !important;
}

.head_title .ttl-label small{
font-size:85%;
margin:0 0 0 15px;
}






/*** summary ***/


.lead {
width:100%;
padding: 24px 24px 64px;
background:rgba(255,255,255,0.95);
background-color:#fff;
position:relative;
}


.lead p {
font-size: 16px;
line-height: 1.8;
color:#151515;
margin:0 auto;
padding: 10px;
max-width:1200px;
}

.lead-more{
display:none;
}


.lead-continuation {/*続きを読むアクションstyle*/
position: absolute;
left:calc(50% - 35px);
bottom:10px;
width: 70px;
height:50px;
margin: 0 auto;
text-align:center;
background-color:#fff;
color:#fff;
border: none;
outline: 0;
transition: .3s;
cursor: pointer;
box-sizing: border-box;
/*box-shadow:0 0 15px #b5b5b5;*/
}


.lead-continuation:after{
    content: " ";
    position: absolute;
    top: 40%;
    left: 50%;
    width: 18px;
    height: 18px;
    margin: -9px 0 0 -9px;
    border-top: 3px solid #0080bc;
    border-right: 3px solid #0080bc;
    transform: rotate(135deg);
    box-sizing: border-box;
    transition: .2s;
}



.lead-continuation:hover{
background-color:#0080bc;
color:#0080bc;
}
 
.lead-continuation:hover:after {
border-top: solid 3px #fff;
border-right: solid 3px #fff;
}
 

.on-click {
    margin: 0 auto!important;
    color: transparent!important;
position:absolute;
bottom:20px;
}

.on-click:after{
    content: " ";
    position: absolute;
    top: 60%;
    left: 50%;
    width: 18px;
    height: 18px;
    margin: -9px 0 0 -9px;
    border-top: none;
    border-right: none;
    border-bottom: solid 3px #0080bc;
    border-left: solid 3px #0080bc;
    transform: rotate(135deg);
    box-sizing: border-box;
    transition: .3s;
}


.on-click:hover:after {
    border-top: none;
    border-right: none;
    border-bottom: solid 3px #fff;
    border-left: solid 3px #fff;
}




/*** navigation ***/


.page-navigation{/*ページ内リンク*/
width:100%;
margin:0 auto;
position:absolute;
bottom:0;
}

.page-navigation ul{
display:flex;
justify-content:center;
background:rgba(0,128,188,0.75);
/*box-shadow:0 0 20px #444;*/

}

.page-navigation ul li a{
width:200px;
padding:40px 0;
color:#fff;
display:block;
text-align:center;
font-size:18px;
font-weight:bold;
position:relative;
}
.page-navigation ul li a:hover{
color:#00def2 !important;
}


.page-navigation ul li a:hover:after{
content:"";
position:absolute;
bottom:25px;
left:25%;
width:50%;
height:1px;
background-color:#00def2;
opacity:0;
animation: line 0.2s linear 0s forwards;
}


@keyframes line{
0%{
opacity:0;
transform:scaleX(0);
}
100%{
opacity:1;
transform:scaleX(1);
}
}





/*** headline ***/

h2 {
margin:0 auto;
padding:40px 0;
text-align:center;
color: #fff;
font-weight: normal;
font-size: 2.5rem;
border: none;
background: none;
line-height:1.4;
font-feature-settings: "palt" 1;
position: relative;
z-index:1000;
}

h2.black{
color:#252525;
}

h2 span{
text-align:center;
display:block;
color:#00def2;
font-size:50%;
font-family:'Inter', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif !important;
}

h2.black span{
color:#707070;
}



/*** event archive ***/


.archive{
background:rgba(0,128,188,0.6);
}


.product{
background:rgba(0,0,0,0.7);
padding-bottom:40px;
}


.report_block,
.product_block,
.banner_block{
margin:0 auto;
padding:30px;
position:relative;
z-index:1;
}

.block-line{
border-bottom:1px dotted #fff;
}


.report_block ul,
.product_block ul{
margin:20px auto;
display:flex;
justify-content:center;
}
.product_block ul{
margin:20px auto 60px;
}

.report_block ul li,
.product_block ul li{
width:35%;
height:100%;
margin:0 20px;
}


.report_block ul li img,
.product_block ul li img{
width:100%;
height:100%;
background-color:#fff;
/*object-fit:cover;
object-position:center center;*/
}


.report_block ul li a:hover img,
.product_block ul li a:hover img{
transform:scale(1.03,1.03);
transition:0.3s;
box-shadow:0 0 30px #252525;
}

.report_block ul li span,
.product_block ul li span{
font-size:16px;
color:#fff;
margin:10px 0 0 0;
line-height:1.4;
display:block;
}

.report_block ul li a:hover span,
.product_block ul li a:hover span{
color:#52ffc4;
transition:0.5s;
}


.video_block ul{
display:block;
}

.video_block ul li{
width:100% !important;
margin:0 0 20px 0;
}

.video_block ul li a{
background:rgba(0,0,0,0.6);
display:flex;
padding:20px;
}

.video_block ul li a:hover{
background:rgba(0,0,0,0.15);
box-shadow:0 0 15px #050505;
transition:0.3s;
}
.video_block ul li a:hover img{
transform:scale(1,1);
}

.video_block .thumb_video{
width:350px;
height:200px;
flex-shrink:0;
margin:0 20px 0 0;
position:relative;
z-index:1;
}


.video_block .thumb_video:before{
content:"";
position:absolute;
top: calc(50% - 20px);
left: calc(50% - 20px);
display: block;
width: 40px;
height: 40px;
background: rgba(0,0,0,.5);
border-radius: 50%;
z-index:100;
}

.video_block .thumb_video:after{
content:"";
position:absolute;
top: calc(50% - 8px);
left: calc(50% - 4px);
border-style: solid;
border-width: 8px 0 8px 12px;
border-color: transparent transparent transparent #ffffff;
z-index:100;
}


.video_block .text_video span{
margin:0 0 10px 0;
font-weight:bold;
font-size:140%;
color:#52ffc4;
}

.video_block .text_video span.summary,
.video_block .text_video span.speaker{
color:#fff;
font-weight:normal;
font-size:16px;
}


.video_block .text_video span.speaker{
margin:15px 0 0 0;
}



.document_block ul li{
width:100% !important;
margin:20px;
display: flex;
flex-direction: column;
align-items:stretch;
}

.document_block ul li a{
width:100% !important;
background:rgba(0,0,0,0.6);
padding:20px;
display: flex;
flex-direction: column;
align-items:center;
}

.document_block ul li a:hover{
background:rgba(0,0,0,0.15);
box-shadow:0 0 15px #050505;
transition:0.3s;
}


.document_block ul li a span{
color:#52ffc4;
}

.document_block ul li a span.box1{
padding-bottom:17%;
display:block;
}




.product_img,
.product_btn{
text-align:center;
margin:25px auto;
display:block;
}

.product_img a:hover img{
transform:scale(1.03,1.03);
transition:0.3s;
box-shadow:0 0 30px #252525;
}


.product_btn a{
background-color:#c6fa10;
color: #151515;
font-weight:bold;
border-radius:50px;
text-align:center;
margin:25px auto;
padding:15px;
width:70%;
display:block;
}

.product_btn a:hover{
background-color: #e6ffaf;
box-shadow:0 0 15px #b5b5b5;
text-decoration:none;
color: #151515 !important;
box-shadow:0 0 15px #b5b5b5;
transition:0.3s ease;
}



.banner_block{
background:rgba(255,255,255,0.6);
padding-bottom:80px;
}

.banner_block .link-banner{
display:flex;
justify-content:space-between;
}

.banner_block a img{
display:block;
margin:40px auto 0;
}

.banner_block a img:hover{
transform:scale(1.02,1.02);
transition:0.5s;
}


.banner_block .link-banner span{
font-size:12px;
color:#666;
max-width:500px;
display:block;
}









/* responsive 
------------------------------------------------------------------------------------------------------------- */


@media (max-width: 960px) {


.container {
background-size:cover;
}

.hero{
height:400px;
background-position:right bottom;
}


.head_title{
top:0;
left:3%
}


.head_title .ttl-label{
font-size:1.5rem;
}


.head_title h1 .ttl-main{
font-size:2rem;
}

.head_title h1 .ttl-sub{
font-size:1.25rem;
}


.report_block ul,
.product_block ul{
display:block;
}

.report_block ul li,
.product_block ul li{
margin:20px auto;
width:50%;
}


.document_block ul li a span.box1{
padding-bottom:0;
}



.video_block ul li a{
display:block;
}

.video_block ul li img{
height:180px;
}


.video_block .thumb_video{
margin:0 auto 20px;
width:300px;
}


.video_block .text_video span{
font-size:110%;
}

.video_block .text_video span.summary{
line-height:1.5;
}


.product_btn a{
width:85%;
}

.banner_block a img{
margin:20px auto 0;
}



}






@media (max-width: 640px) {


.container-fluid {margin: 0;}


.hero{
background-position:right bottom !important;
height:400px;
}



.hero .ttl-label{
width:90%;
padding:0;
font-size:16px;
}



.head_title h1 .ttl-main{
font-size:1.5rem;
padding:5px 10px;
}


.head_title h1 .ttl-sub{
font-size:1rem;
padding:5px 10px;
}

.hero_webinar .head_title h1 .ttl-sub{
font-size:.85rem;
}

.head_title h1 {
font-size: 1.5rem;
}


.hero .ttl-archive{
margin:8% auto 0;
font-size:140%;
}


.head_title .ttl-label small{
margin:0;
display:block;
}


.page-navigation ul{
margin:0 auto;
flex-wrap:wrap;
}

.page-navigation ul li{
width:50%;
}

.page-navigation ul li a{
padding:15px 0;
}


h2 {
font-size:1.75rem;
}


.report_block ul li,
.product_block ul li{
margin:20px auto;
width:100%;
}





.report_block,
.product_block,
.banner_block{
padding:10px;
}

.product_btn a{
width:100%;
}

.banner_block{
padding-bottom:50px;
}


}



