@charset "UTF-8";
/*
NIKKEI
CIT25
WE WORKS 2025.10
CUSTOM.CSS
*/




/* HERO ============================================== */
#hero { position: relative; margin: 0; padding: 0; width: 100%; height: 95vh; background: url("../images/top/cit25-hero.jpg") 50% 50% no-repeat #000; background-size: cover; display: grid; place-items: center; }
/* タイトル画像 */
#hero #top-item { margin: 0 auto 20px; text-align: center; width: 100%; z-index: 2; }
#hero #top-item img { margin-top: 2%; width: 48%; }
#hero #top-item p { margin: 0 auto 1em; font-size: 14px; font-weight: 600; text-align: center; color: #ff0; }
#hero #top-item a img { width: 30%; cursor: pointer; }
#hero #top-item a:hover img { opacity: 0.8; }
@media(max-width:768px) {
#hero { position: relative; margin: 0; height: 85vh; background: url("../images/top/cit25-hero.jpg") 50% 50% no-repeat; background-size: cover; }
#hero #top-item { width: 90%; }
#hero #top-item img { margin-top: 25%; width: 100%; }
}

/* 背景動画の上に黒  */
#hero div.blk { 
position: absolute;
min-width: 100%;
min-height: 100%; 
/*background-color: #000;*/
background-color: rgba(255,255,255,0);
background-image: radial-gradient(circle, rgba(0,0,0,100) 3px, transparent 3px);
background-position: 0 0;
background-size: 6px 6px;
z-index: 1;
opacity: 0.25;
}

/* 背景動画  */
#hero > video {
position: absolute;
top: 50%;
left: 50%;
transform: translateX(-50%) translateY(-50%);
min-width: 100%;
min-height: 100%; 
}
@media(max-width:768px) {
}





/*==================================================
slick slider スライダー
===================================*/
section#topslider { margin: 0; padding: 40px 0; width: 100%; background-color: #000; }
.top-slick-item { margin-right: 0px; margin-left: 0px; }





/* H2 title */
h2.h2title { display: inline-block; margin-bottom: 30px; padding-bottom: 0em; border-bottom: 2px solid #000; text-align: center; font-size: 28px; font-family: "Roboto", sans-serif!important; font-style: italic; font-weight: 500; line-height: 1.2; width: 160px!important; color: #0071bb; }
h2.h2title.wht { border-bottom-color: #fff; color: #fff; }
h2.h2title.jp { margin-bottom: 0.1em!important; }
h2.h2title.long { width: 50%!important;}
i.ititle { display: block; margin-bottom: 30px; font-size: 12px; font-weight: 400; font-style: normal; font-family: 'Noto Sans JP', sans-serif; color: #204866; text-align: center; letter-spacing: 0; }
i.ititle.wht { color: #fff; }
@media(max-width:768px) {
h2.h2title { font-size: 24px; width: 40%!important; }
h2.h2title.long { width: 100%!important;}

}

/* H2 title icons */
img.titleicon { margin: 0 auto 5px; width: 40px; height: auto; }
@media(max-width:768px) {
img.titleicon { width: 15%; }
}




/* Overview - TopPage ============================================== */
section#overview { position: relative; width: 100%; margin: 0 auto; padding: 80px 0; overflow: hidden; background: url("../images/top/cit25-overview.jpg") 50% 50% no-repeat; background-size: cover; }
section#overview .container { width: 75%; }
section#overview h3 { margin: 0 auto 1em; font-family: 'Jost', 'Roboto', 'Noto Sans JP',sans-serif; font-size: 26px; font-weight: 600; line-height: 1.25; text-align: center; color: #fff; }
section#overview p { margin: 0; font-family: 'Roboto', 'Noto Sans JP',sans-serif; font-size: 16px; line-height: 1.75; text-align: left; color: #ccc; }
section#overview p.en { font-size: 18px; line-height: 1.5; }
section#overview ol　{ margin-bottom: 20px!important; }
section#overview ol li { list-style: decimal outside!important; margin-left: 0em; font-size: 16px; font-weight: 400; font-family: 'Roboto', sans-serif!important; line-height: 1.5; color: #ccc;  text-align: left!important; letter-spacing: 0; }
@media(max-width:768px) {
section#overview .container { width: 90%; }
section#overview h3 { font-size: 20px; }
section#overview p { margin: 0; font-size: 14px; }
}


/* About - TopPage ============================================== */
section#about { position: relative; width: 100%; margin: 0 auto; padding: 80px 0; overflow: hidden; background: url("../images/top/cit25-about.jpg") 50% 50% no-repeat; background-size: cover; }
section#about .container { width: 75%; }
section#about h3 { margin: 0 auto 1em; font-family: 'Jost', 'Roboto', 'Noto Sans JP',sans-serif; font-size: 26px; font-weight: 600; line-height: 1.25; text-align: center; color: #fff; }
section#about p { margin: 0; font-family: 'Roboto', 'Noto Sans JP',sans-serif; font-size: 16px; line-height: 1.75; text-align: left; color: #ccc; }
section#about p.en { margin: 0; font-size: 18px; font-weight: 400; line-height: 1.5; text-align: left; color: #ccc; }
@media(max-width:768px) {
section#about .container { width: 90%; }
section#about h3 { font-size: 20px; }
section#about p { margin: 0; font-size: 14px; }
}







/* Outline - TopPage ============================================== */
section#outline { position: relative; width: 100%; margin: 0; overflow: hidden; }
.outline { margin-top: 40px; }
.outline dl { display: flex; margin: 0 auto 0; padding: 1.2em 2em; border-top: 1px solid #ddd; width: 100%; }
.outline dl:last-of-type { border-bottom: 1px solid #ddd; }
.outline dl.wht { background-color: #fff; }
.outline dl dt,
.outline dl dd { font-family: 'Roboto', 'Noto Sans JP', sans-serif; text-align: left; font-weight: 400; letter-spacing: 0; }
.outline dl dt { margin-right: 1%; width: 24%; font-size: 14px; font-weight: 400; color: #666; }
.outline dl dd { width: 75%; font-size: 14px; font-weight: 400; color: #000; }
.outline dl dd span { color: #666; font-size: 12px; font-weight: 400; line-height: 1.25!important; }
/* eng */
.outline dl.en dt,
.outline dl.en dd { font-family: 'Roboto', sans-serif; font-weight: 300!important; letter-spacing: 0.1!important; }
.outline dl.en dt { font-size: 18px!important; font-weight: 300!important; }
.outline dl.en dd { font-size: 18px!important; font-weight: 300!important; }
.outline dl.en dd span { padding-left: 0.5em!important; font-size: 14px!important; font-weight: 300!important; }
.outline dl dd p { margin: 5px 0 0; font-size: 14px; font-weight: 400; color: #666; line-height: 1.25; }
.outline dl dd a { margin: 0; color: #204866; }
.outline dl dd b { font-weight: 500; }
.outline p.amazon { margin: 2em auto; width: 400px; }
.outline p.amazon img { width: 100%; }
/* logo img */
.outline dl dd ul { display: flex; flex-direction: row; align-items: center; flex-wrap: wrap; width: 100%; }
.outline dl dd ul li { margin-right: 5.3%; margin-top: 7px; margin-bottom: 7px; width: 15%; }
.outline dl dd ul li.mini { width: 12%; }
.outline dl dd ul li.middle { width: 18%; }
.outline dl dd ul li.big { width: 20%; }
.outline dl dd ul li img { width: 100%; }
@media(max-width:768px) {
section#outline h2 { width: 50%; }
section.outline { margin: 0 auto; padding: 40px 0px; border: 0; }
.outline dl { padding: 1.2em 1em; flex-wrap: wrap; width: 100%; }
.outline dl dt { width: 100%; min-width: 100%; margin: 0 0 .4em 0;}
.outline dl dd { width: 100%; }
/* logo img */
.outline dl dd ul { display: flex; flex-direction: column; }
.outline dl dd ul li { margin: 15px auto 15px; width: 50%; }
.outline dl dd ul li.middle { width: 55%; }
.outline dl dd ul li.big { width: 60%; }
.outline dl dd ul li img { width: 100%; }
}






/* h3 title + border ============================================== */
article { display: block; }
.head-border { display: flex; align-items: center; margin: 0 auto 20px; }
/*.head-border:before, */
.head-border:after { content: ""; height: 1px; flex-grow: 1; background-color: #204866; }
.head-border h3 { margin: 0 auto!important; padding: 0.1em 3em 0.05em!important; border: 1px solid #204866!important; border-radius: 1.5em!important; background-color: #204866!important; font-size: 14px!important; font-weight: 400!important; font-family: 'Roboto', 'Noto Sans JP', sans-serif!important; letter-spacing: 0.75!important; color: #fff!important; font-style: italic!important; text-align: center!important; }
@media(max-width:768px) {
.head-border h3 { font-size: 12px!important; }
}
 



/* Agenda - TopPage ============================================== */
section#agenda { position: relative; width: 100%; margin: 0; padding: 80px 0; background-color: #000; overflow: hidden; }
section#agenda p { margin: 0 auto; font-size: 12px; line-height: 1.5; color: #666; text-align: center; }
section#agenda p.note { margin-bottom: 40px; width: 50%; }
section#agenda hr { border: 0; border-bottom: 1px solid #204866; }
section#agenda .container { position: relative; width: 80%; margin: 0 auto; padding: 60px; background-color: #fff; }
section#agenda .container h2.agendatitle { display: inline-block; position: absolute; top: -1em; left: 0%; right: 0%; margin: 0 auto; padding: 0.5em 2em; border-radius: 1em; font-size: 16px; font-family: 'Jost', 'Noto Sans JP', sans-serif; font-weight: 500; line-height: 1.25; text-align: center; letter-spacing: 0.1em!important; color: #fff; max-width: 50%; background-color: #204866; }
section#agenda .container h2.agendatitle span { font-size: 14px; }
@media(max-width:768px) {
section#agenda .container { padding: 80px 20px 20px; width: 94%; }
section#agenda .container h2.agendatitle { font-size: 15px; max-width: 80%; }
section#agenda p.note { margin-bottom: 40px; width: 80%; }
}


/* agenda box */
.abendabox { margin: 0 auto 40px; border: 0; width: 100%; }
.abendabox.btm { margin: 0 auto 30px; }
.abendabox h3.sectiontitle,
.abendabox h4,
.abendabox h5,
.abendabox p { margin: 0 auto; font-family: 'Jost', 'Noto Sans JP', sans-serif; font-weight: 500; text-align: left; line-height: 1.25; text-decoration: none!important; }
.abendabox h3.sectiontitle { margin-bottom: 0.25em; font-size: 18px!important; font-weight: 500; text-align: left; color: #000; line-height: 1.25; }
.abendabox h3.sectiontitle span { display: block; margin-bottom: 0.25em; font-size: 14px; color: #29aae1; }
.abendabox h3.sectiontitle span.blue { padding-left: 4px; border-left: 3px solid #369; color: #369; }
.abendabox h3.sectiontitle span img { margin: 0; width: 80px; }/* SLOT画像 */
/*角欠け
.abendabox h3.sectiontitle span i {
margin: 0 0.5em 0 0;
padding: 0.1em 1em;
font-size: 12px; font-weight: 400; font-style: normal; line-height: 1.1; color: #fff;
background-color: #29aae1; 
background: 
linear-gradient(135deg, transparent 2px, #29aae1 0) top left,
linear-gradient(-135deg, transparent 0px, #29aae1 0) top right,
linear-gradient(-45deg, transparent 2px, #29aae1 0) bottom right,
linear-gradient(45deg, transparent 0px, #29aae1 0) bottom left;
background-size: 50% 50%;
background-repeat: no-repeat;
}*/
.abendabox h4 { margin-bottom: 0.25em; font-size: 18px; font-weight: 500; color: #000; }
.abendabox h5 { margin-bottom: 0; font-size: 12px; font-weight: 400; color: #666; }
.abendabox p { margin-bottom: 2em!important; font-size: 12px!important; font-weight: 400; text-align: left!important; color: #333!important; }
.abendabox p.en { font-size: 14px!important; line-height: 1.25!important; }
.abendabox hr { margin: 20px 0 30px!important; border: 0!important; border-bottom: 1px dashed #ccc!important; width: 100%!important; }
@media(max-width:768px) {
.abendabox { width: 100%; }
.abendabox p { max-width: 100%; }
}
/* agenda flex */
.agenda-flex { display: flex; flex-direction: row; flex-wrap: wrap; align-items: flex-start; justify-content: flex-start; margin: 0 auto 10px; text-align: left; width: 100%; }
.agenda-flex.center { justify-content: center!important; }
/* bio flex article aタグ */
.agenda-flex article { margin: 0 1%; width: 48%; }
.agenda-flex article a { display: flex; flex-direction: row; align-items: center; }
.agenda-flex article a div { margin: 0; }
.agenda-flex article a div.imgbox { margin-right: 2%; width: 33%; }
.agenda-flex article a div.txtbox { width: 65%; }
.agenda-flex article a.noclick { pointer-events: none!important; }
/* photo */
.agenda-flex article a div.imgbox img { margin: 0 auto 10px; border: 1px solid #ccc; border-radius: 50%; width: 100%; }
.agenda-flex article a:hover div.imgbox img { opacity: 0.8; }
/* bio text */
.agenda-flex article a div.txtbox h4,
.agenda-flex article a div.txtbox h5,
.agenda-flex article a div.txtbox h6 { margin: 0 auto; font-family: 'Jost', 'Noto Sans JP', sans-serif; font-weight: 500; text-align: left; line-height: 1.25; text-decoration: none!important; }
.agenda-flex article a div.txtbox h4 { margin-bottom: 0.25em; font-size: 16px; font-weight: 500; color: #000; line-height: 1.1; }
.agenda-flex article a div.txtbox h4.en { font-size: 18px; text-transform: uppercase; }
.agenda-flex article a div.txtbox h5 { margin-bottom: 0; font-size: 12px; font-weight: 400; color: #666; }
.agenda-flex article a div.txtbox h5.en { font-size: 14px; }
.agenda-flex article a div.txtbox h6 { display: inline-block; margin-bottom: 0.75em; padding: 0.2em 2em 0.1em; border: 1px solid #29aae1; border-radius: 1em; font-size: 10px; font-weight: 500; color: #29aae1; }
.agenda-flex article a div.txtbox h5 span { color: #172a88; }
.agenda-flex article a div.txtbox hr { margin: 5px 0; border-color: #ddd!important; }
.agenda-flex a { text-decoration: none!important; }
.agenda-flex article a:hover div.txtbox h4,
.agenda-flex article a:hover div.txtbox h5,
.agenda-flex article a:hover div.txtbox h6 { text-decoration: underline!important; }
@media(max-width:768px) {
.agenda-flex { width: 100%; }
.agenda-flex article { margin: 0 0% 20px; width: 100%; }
}




/* bio flex sectionタグ */
.agenda-flex section { margin: 0 1%; padding: 0; width: 48%; display: flex; flex-direction: row; align-items: center; flex-wrap: wrap; }
.agenda-flex section div { margin: 0; }
.agenda-flex section div.imgbox { margin-right: 2%; width: 33%; }
.agenda-flex section div.txtbox { width: 65%; }
/* photo */
.agenda-flex section div.imgbox img { margin: 0 auto 10px; border: 1px solid #ccc; border-radius: 50%; width: 100%; }
.agenda-flex section a:hover div.imgbox img { opacity: 0.8; }
/* slot */
.agenda-flex article.slot { padding-right: 1px; border-right: 1px dotted #ccc; }
.agenda-flex article.slot.nobdr { padding-right: 1px; border-right: 0; }
.agenda-flex article.slot h3.sectiontitle { margin-bottom: 0.25em; font-size: 16px!important; font-weight: 500; text-align: left; color: #000; line-height: 1.25; width: 100%; }
.agenda-flex article.slot h3.sectiontitle span { display: block; margin-bottom: 0.5em; font-size: 14px; color: #29aae1; }
.agenda-flex article.slot h3.sectiontitle span img { margin: 0; width: 80px; border-radius: 0; }/* SLOT画像 */
/* bio text */
.agenda-flex section div.txtbox h4,
.agenda-flex section div.txtbox h5,
.agenda-flex section div.txtbox h6 { margin: 0 auto; font-family: 'Jost', 'Noto Sans JP', sans-serif; font-weight: 500; text-align: left; line-height: 1.25; text-decoration: none!important; }
.agenda-flex section div.txtbox h4 { margin-bottom: 0.25em; font-size: 16px; font-weight: 500; color: #000; line-height: 1.1; }
.agenda-flex section div.txtbox h4.en { font-size: 18px; text-transform: uppercase; }
.agenda-flex section div.txtbox h5 { margin-bottom: 0; font-size: 12px; font-weight: 400; color: #666; }
.agenda-flex section div.txtbox h6 { display: inline-block; margin-bottom: 0.75em; padding: 0.2em 2em 0.1em; border: 1px solid #29aae1; border-radius: 1em; font-size: 10px; font-weight: 500; color: #29aae1; }
.agenda-flex section div.txtbox h5 span { color: #172a88; }
.agenda-flex section div.txtbox hr { margin: 5px 0; border-color: #ddd!important; }
.agenda-flex section div.txtbox a { text-decoration: none!important; }
/* download btn */
.agenda-flex section div.txtbox a.download { display: inline-block; margin: 0.75em 0; padding: 0.2em 2em 0.1em; border: 1px solid #29aae1; border-radius: 1em; background-color: #29aae1; font-size: 10px; font-weight: 500; color: #fff; letter-spacing: 0; }
.agenda-flex section div.txtbox a.download:hover { background-color: #fff; color: #29aae1; }
/*  */
.agenda-flex section a:hover div.txtbox h4,
.agenda-flex section a:hover div.txtbox h5,
.agenda-flex section a:hover div.txtbox h6 { text-decoration: underline!important; }
@media(max-width:768px) {
.agenda-flex section { margin: 0 0% 20px; width: 100%; }

.agenda-flex section.slot { padding-right: 0; border-right: 0; border-bottom: 1px dotted #ccc; }
}
























/* Sponsored by - TopPage ============================================== */
section#sponsored { position: relative; width: 100%; margin: 0; padding: 80px 0; border-top: 1px solid #204866; overflow: hidden; }
section#sponsored h2 { margin: 0 auto 0.5em; font-family: 'Jost', 'Roboto', serif; font-size: 24px; font-weight: 200; line-height: 1.1; font-style: italic; text-align: center; }
section#sponsored img { margin: 40px auto 0; width: 300px; }
@media(max-width:768px) {
section#sponsored img { width: 75%; }
}







/* Registration - TopPage ============================================== */
section#register { position: relative; width: 100%; margin: 0 0 20px; padding: 80px 0; overflow: hidden; background: #f9f7f4; }
section#register p { margin: 0 auto 1em; font-family: 'Roboto', 'Noto Sans JP', sans-serif; font-size: 12px; font-weight: 400; text-align: center; color: #333; }
section#register p.attention { margin: 20px 0 0; text-align: center; color: #666; }
section#register p.attention a { color: #08c; }
.register-box { margin: 0 auto; padding: 0; width: 100%; }
.register-box .container { width: 80%; }
.register-box p.description { margin: 10px auto 40px; text-align: center; }
.registe-boxr p.description a { color: #369; text-decoration: underline; }
/* Pardot Formm iframe ============================================== */
.pardot-iframe { width: 100%; height: 1750px; border: 1px solid #ccc; }
.pardot-iframe2 { width: 100%; height: 1200px; border: 1px solid #ccc; }
@media(max-width:768px) {
section#register h2 { width: 50%; }
.register-box .container { width: 90%; }
.pardot-iframe { width: 100%; height: 1800px; }
.pardot-iframe2 { width: 100%; height: 1200px; }
}

/* form ============================================== */
.form-box { width: 75%; margin: 0 auto 20px; padding: 30px; border: 1px solid #ccc; background-color: #fff; }
@media(max-width:768px) {
.form-box { width: 100%; padding: 5px; }
}


/* Registration 注釈テキスト部- TopPage ============================================== */
.register-plus { margin: 40px auto 0; width: 75%; }
.register-plus h6,
.register-plus p { margin: 0 0 1em!important; font-family: "Helvetica Neue", "Arial", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Meiryo", sans-serif!important; font-weight: 400!important; text-align: left!important; color: #000!important; }
.register-plus h6 { margin-bottom: 1em!important; font-size: 14px!important; font-weight: 600!important; }
.register-plus p　{ margin-bottom: 1.75em!important; font-size: 12px; }
.register-plus ul,
.register-plus ol　{ margin-bottom: 20px!important; }
.register-plus ul li { list-style: circle outside!important; margin-left: 2em; margin-bottom: 0.75em; font-size: 12px; font-weight: 400; font-family: 'Roboto', sans-serif!important; line-height: 1.25; color: #333;  text-align: left!important; letter-spacing: 0; }
.register-plus ul li a { text-decoration: none; }
.register-plus ul.disc li { list-style-type: disc; }
.register-plus ol li { list-style: decimal outside!important; margin-left: 0em; margin-bottom: 0.75em; font-size: 12px; font-weight: 400; font-family: 'Roboto', sans-serif!important; line-height: 1.25; color: #333;  text-align: left!important; letter-spacing: 0; }
.register-plus dl { margin: 0 0 40px; }
.register-plus dl dt,
.register-plus dl dd { font-family: 'Roboto', sans-serif!important; letter-spacing: 0; }
.register-plus dl dd { text-indent: -1.0em; margin-left: 1.0em; margin-bottom: 0; padding-left: 1em; font-size: 14px; font-weight: 400; line-height: 1.5; color: #333; text-align: left; }
.register-plus dl dd:before { content: '-'; display: inline-block; width: 1.0em; text-indent: 0; }

/* download btn */
a.formlink { display: inline-block; margin: 0.75em 0; width: 600px; }
a.formlink img { width: 100%; }
a.formlink:hover img { opacity: 0.8;}
@media(max-width:768px) {
a.formlink { width: 100%; }
}






/* Contact  ============================================== */
section#contact { margin: 0 auto; padding: 80px 0; border: 0; }
@media(max-width:768px) {
section#contact h2 { width: 50%; }
}




/* Contact Button ============================================== */
.button-border { display: flex; align-items: center; margin: 40px auto 5px; }
.button-border:before, 
.button-border:after { content: ""; height: 1px; flex-grow: 1; background-color: #ccc; }
.button-border a { margin: 0 auto; padding: 0.5em 5em 0.5em; border: 1px solid #ccc; border-radius: 1.5em; background-color: #ccc; font-size: 12px; font-weight: 400; font-family: 'Roboto', 'Noto Sans JP', sans-serif; letter-spacing: 0; color: #000; text-align: center; text-decoration: none; }
.button-border a i { color: #000!important; }
.button-border a:hover { color: #fff; background-color: #000; }
@media(max-width:768px) {
.button-border a { font-size: 12px; }
}
 








/* Footer ============================================== */
footer#footer { margin: 0; padding: 40px 0; background: #000; width: 100%; }
footer#footer .container { display: flex; flex-direction: row-reverse; text-align: left; }
footer#footer .container .logo { width: 8%; margin-left: 2%; }
footer#footer .container .logo img { width: 100%; }
footer#footer .container .text { width: 90%; margin: 0; padding: 0; }
footer#footer .container .text p,
footer#footer .container .text a { margin: 0; font-size: 12px; font-weight: 400; font-family: 'Roboto', sans-serif; line-height: 1.25; text-align: left; color: #fff; text-decoration: none; letter-spacing: 0; }
footer#footer .container .text a { margin-right: 1em; padding-right: 1em; border-right: 1px solid #fff; }
footer#footer .container .text a:last-of-type { border-right: none; }
footer#footer .container .text a:hover { text-decoration: underline; }
@media(max-width:768px) {
footer#footer .container { display: flex; flex-direction: column; text-align: left; }
footer#footer .container .logo { width: 30%; margin-left: 0%; margin-bottom: 20px; }
footer#footer .container .logo img { width: 100%; }
footer#footer .container .text { width: 100%; margin: 0; padding: 0; }
footer#footer .container .text p { margin-top: 1em; line-height: 1.5; }
footer#footer .container .text a { display: block; margin-right: 0; padding-right: 0; border: 0; }
}








/* SPEAKERS - SpeakersPage ============================================== */
body#speaker { display:flex; justify-content: center; align-items: center; width: 100%; height: 100vh; }
body#speaker-top { display:flex; justify-content: center; align-items: flex-start; width: 100%; height: 100vh; }
@media(max-width:768px) {
body#speaker { align-items: flex-start; }
}
#speakers-page { margin: 0 auto; padding: 20px; width: 90%; }
#speakers-page h4,
#speakers-page h5 { margin: 0; font-family: 'Roboto', sans-serif; font-weight: 400; text-align: left; line-height: 1.5; letter-spacing: 0; color: #000; }
#speakers-page h4 { margin-bottom: 0.1em; font-size: 22px; font-weight: 500; }
#speakers-page h5 { margin-bottom: 2em; font-size: 12px; font-weight: 400; line-height: 1.25; color: #666; }
#speakers-page p { margin: 0;  font-family: sans-serif; font-weight: 400; text-align: left; line-height: 1.5; letter-spacing: 0; color: #000; }
/* eng */
#speakers-page h4.en { margin-bottom: 0em; font-family: 'Roboto', serif; font-size: 24px; font-weight: 400;  text-transform: uppercase; }
#speakers-page h5.en { margin-bottom: 1em; font-family: 'Roboto', serif; font-size: 14px; font-weight: 300; }
#speakers-page p.en { font-family: 'Roboto', serif; font-size: 18px; font-weight: 300; line-height: 1.25; }
.speakers-page { display: flex; flex-direction: row; align-items: flex-start; margin: 20px auto; width: 100%; }
.speakers-page.top { align-items: flex-start; }
/* flex box */
.speakers-page .box-ph { width: 20%; margin-right: 2%; }
.speakers-page .box-txt { width: 78%; }
/* photo */
.speakers-page .box-ph img { width: 100%; border: 1px solid #e5e5e5; border-radius: 50%; }
.speakers-page .box-ph img.long { margin-bottom: 200px; }
/* text */
.speakers-page .box-txt p { margin: 0;  font-family: sans-serif; font-weight: 400; text-align: left; line-height: 1.5; letter-spacing: 0; color: #000; }
.speakers-page .box-txt p span.indent1 { padding-left: 1em; color: #666; }
.speakers-page .box-txt h4 { margin-bottom: 0; font-size: 24px; font-weight: 500; }
.speakers-page .box-txt h4.en { font-size: 30px; font-family: 'Jost', sans-serif!important; font-weight: 500!important; }
.speakers-page .box-txt h5 { margin-bottom: 1em; font-size: 14px; font-weight: 400; line-height: 1.25; color: #999; }
.speakers-page .box-txt p { font-size: 14px; color: #333; line-height: 1.5; }
.speakers-page .box-txt p b { color: #000; font-weight: 600; }
.speakers-page .box-txt p i { padding-left: 1em; font-style: normal; color: #777; }
.speakers-page .box-txt p a { color: #08c; text-decoration: none; }
.speakers-page .box-txt p a:hover { text-decoration: underline; }
.speakers-page .box-txt ul.bio {  }
.speakers-page .box-txt ul.bio li { margin-left: 1em; list-style-type: none; color: #666; }
.speakers-page .box-txt ul.bio li.ttl { margin-left: 0; color: #000; }
/* dl flex */
.speakers-page .box-txt dl { margin: 0 0 20px; padding: 0; display: flex; flex-wrap: wrap; width: 100%; }
.speakers-page .box-txt dl dt,
.speakers-page .box-txt dl dd { margin: 0 0 0.25em; padding-bottom: 0.25em; border-bottom: 1px solid #ccc; font-family: 'Roboto', sans-serif; font-size: 14px; font-weight: 400; text-align: left; line-height: 1.5; letter-spacing: 0; color: #000; }
.speakers-page .box-txt dl dt { width: 20%; padding-right: 1%; color: #666; }
.speakers-page .box-txt dl dd { width: 80%; }
.speakers-page .box-txt ul li { padding-left: 0em; list-style: circle inside; font-size: 14px; color: #666; letter-spacing: 0; }
@media(max-width:768px) {
#speakers-page { margin: 0 auto; padding: 20px; width: 100%; }
.speakers-page { flex-direction: column; align-items: flex-start; margin: 0 auto 40px; width: 100%; }
/* flex box */
#speakers-page h4 { font-size: 24px; }
#speakers-page h5 { font-size: 14px; }
.speakers-page .box-ph { width: 70%; margin-right: auto; margin-left: auto; margin-bottom: 20px; }
.speakers-page .box-ph img.long { margin-bottom: 0px; }
.speakers-page .box-txt { width: 100%; }
.speakers-page .box-txt p { font-size: 14px; }
.speakers-page .box-txt dl { margin: 0 0 20px; flex-direction: column; }
.speakers-page .box-txt dl dt { width: 100%; padding-right: 0; padding-bottom: 0; margin-bottom: 0; border: 0; }
.speakers-page .box-txt dl dd { width: 100%; margin-bottom: 0.5em; }
}
/* table */
.box-txt table { margin: 0; padding: 0; border: 0; width: 100%; box-sizing: border-box; }
.box-txt tr { }
.box-txt th, 
.box-txt td { margin: 0; padding: 8px 4px 8px 10px; border: 2px solid #fff; font-size: 14px; font-weight: 400; text-align: left; line-height: 1.25; color: #000; vertical-align: middle; letter-spacing: 0; }
.box-txt th { width: 20%; margin-right: 1%; color: #333; background-color: #ddd; }
.box-txt th.wht { background-color: #fff; color: #000; }
.box-txt td { width: 79%; }
.box-txt tr.long th { width: 35%; margin-right: 1%; }
.box-txt tr.long td { width: 64%; }
.box-txt table.en-year th { text-align: right; width: 20%; }
@media(max-width:768px) {
.box-txt table { margin: 0; padding: 0; border: 0; width: 100%; }
.box-txt th, 
.box-txt td { font-size: 12px; }
.box-txt th { display: block; width: 100%; margin-right: 0; }
.box-txt td { display: block; width: 100%; }
.box-txt tr.long th { width: 100%; margin-right: 0; }
.box-txt tr.long td { width: 100%; }
.box-txt table.en-year th { text-align: left; width: 100%; }
}



/*  */
#company-box { display: flex; justify-content: center; align-items: center; margin: 0; padding: 0; }
#company { display: block; margin: auto; padding: 60px 80px; }
#company h5 { margin: 0 0 0.5em; font-size: 16px; font-weight: 600; text-align: left; line-height: 1.25; color: #000; }
#company h6 { margin: 0 0 1em; font-size: 20px; font-weight: 400; text-align: left; line-height: 1.25; color: #204866; }
#company p { margin: 0; font-family: sans-serif; font-weight: 400; text-align: left; line-height: 1.5; letter-spacing: 0; color: #000; }











/* page-contents */
h2.page-title { margin: 0 0 40px; padding-bottom: 40px; border-bottom: 1px solid #333; font-size: 20px; font-weight: 500; line-height: 1.25; text-align: left; color: #000; font-family: 'Roboto', sans-serif; letter-spacing: 0; }
h2.page-title span { font-family: 'Roboto', sans-serif!important; font-weight: 600; font-size: 32px; }
.page-contents { margin: 80px auto; width: 70%; }
.page-contents hr { margin: 40px 0 40px; border: 0; border-bottom: 1px solid #000; }
.page-contents hr.dashed { margin: 40px 0 40px; border: 0; border-bottom: 1px dashed #ccc; }
.page-contents a { color: #0c5a92; text-decoration: underline; }
.page-contents .btm-0 { margin-bottom: 0!important; }
.page-contents .btm-20 { margin-bottom: 20px!important; }
.page-contents .btm-40 { margin-bottom: 40px!important; }
.page-contents .btm-80 { margin-bottom: 80px!important; }
.page-contents .black { color: #000; }
.page-contents .gray { color: #666; }
.page-contents .center { text-align: center; }
.page-contents h2,
.page-contents h3,
.page-contents h4,
.page-contents h5,
.page-contents h6,
.page-contents p { font-family: 'Roboto', sans-serif!important; line-height: 1.5; text-align: left; letter-spacing: 0; }
.page-contents h2 { margin: 0 0 40px; font-size: 24px; font-weight: 500; color: #000; }
.page-contents h3 { margin: 0 0 20px; font-size: 20px; font-weight: 500; color: #000; }
.page-contents h4 { margin: 0 0 40px; font-size: 18px; font-weight: 600; color: #000; }
.page-contents h5 { margin: 0 0 10px; font-size: 18px; font-weight: 600; color: #000; }
.page-contents h6 { margin: 0 0 0px; font-size: 14px; font-weight: 600; color: #000; }
.page-contents p { margin: 0 0 40px; font-size: 14px; font-weight: 400; color: #333; }
.page-contents ul,
.page-contents ol　{ margin-bottom: 20px; }
.page-contents ul li { list-style: circle outside!important; margin-left: 2em; font-size: 14px; font-weight: 400; font-family: 'Roboto', sans-serif!important; line-height: 1.5; color: #333;  text-align: left!important; letter-spacing: 0; }
.page-contents ul.disc li { list-style-type: disc; }
.page-contents ol li { list-style: decimal outside!important; margin-left: 0em; font-size: 14px; font-weight: 400; font-family: 'Roboto', sans-serif!important; line-height: 1.5; color: #333;  text-align: left!important; letter-spacing: 0; }
.page-contents dl { margin: 0 0 40px; }
.page-contents dl dt,
.page-contents dl dd { font-family: 'Roboto', sans-serif!important; letter-spacing: 0; }
.page-contents dl dd { text-indent: -1.0em; margin-left: 1.0em; margin-bottom: 0; padding-left: 1em; font-size: 14px; font-weight: 400; line-height: 1.5; color: #333; text-align: left; }
.page-contents dl dd:before { content: '-'; display: inline-block; width: 1.0em; text-indent: 0; }
@media(max-width:768px) {
h1.page-title { font-size: 20px; }
.page-contents { margin: 80px auto; width: 90%; }
}



/* cookie同意バナー */
.cookie-consent {
display: flex;
justify-content: center;
align-items: center;
position: fixed;
bottom: 0;
width: 100%;
font-size: 12px;
color: #fff;
background: rgba(0,0,0,0.7);
padding: 1em 2em;
box-sizing: border-box;
visibility: hidden;
z-index: 9999;
}
.cookie-consent.is-show {
visibility: visible;
}
/*.policy-link, :link, :visited, :hover, :active {
color: rgb(0, 136, 255);
font-size: 15px;
text-decoration: none;
}*/
.cookie-agree, 
.cookie-reject {
color: #fff;
background: dodgerblue;
padding: 0.5em 1em;
margin-left: 15px;
}
.cookie-agree:hover, .cookie-reject:hover {
cursor: pointer;
}
/* パッと消える */
.cc-hide1 {
display: none;
}
/* ゆっくり消える */
.cc-hide2 {
animation: hide 1s linear 0s;
animation-fill-mode: forwards;
}
@keyframes hide {
from {
opacity: 1;
}
to {
opacity: 0;
visibility: hidden;
}
}
/* メディアクエリ */
@media screen and (max-width: 600px) {
.cookie-consent {
flex-direction: column;
}
.cookie-text {
margin-bottom: 1em;
}
}
/* cookie同意カスタム */
.cookie-text { width: 85%; }
.cookie-agree,
.cookie-reject { width: 10%; font-family: 'Roboto', sans-serif; font-size: 12px; font-weight: 500; }
.cookie-agree { background: #003E70; }
.cookie-reject { background: #999; }
.cookie-agree a,
.cookie-reject a { color: #fff; text-decoration: none; }
.cookie-agree a:hover,
.cookie-reject a:hover { cursor: pointer!important; }
.cookie-consent h6,
.cookie-consent p { margin: 0; font-family: 'Roboto', sans-serif; letter-spacing: 0.2; text-align: left; color: #fff; }
.cookie-consent h6 { font-size: 16px; font-weight: 500; }
.cookie-consent p { font-size: 12px; }
.cookie-consent p a { color: rgb(0, 136, 255); text-decoration: none; }
@media(max-width:768px) {
.cookie-consent {
display: flex;
justify-content: flex-start;
align-items: flex-start;
flex-direction: column;
background: rgba(0,0,0,0.7);
padding: 2em;
}
.cookie-text { width: 100%; }
.cookie-agree { width: 100%; margin-left: 0; margin-bottom: 0.5em; }
.cookie-reject { width: 100%; margin-left: 0; }
}




/* 視聴ページ hero ============================================== */
#hero2 { position: relative; margin: 0; padding: 0; width: 100%; height: auto; min-height: 80vh; background: url("../../assets/images/top/cit24-hero-bg.jpg") 50% 50% no-repeat; background-size: cover; }
#hero2 h2.logo { margin: 20px auto; width: 20%; }
#hero2 h2.logo img { width: 100%; }
@media(max-width:768px) {
#hero2 { position: relative; margin: 0; min-height: 40vh!important; }
#hero2 h2.logo { margin: 20px auto; width: 30%; }
}

/* 視聴ページ ロゴ+カウントダウン FLEXボックス */
section#hero-item { display: flex; flex-direction: row; align-items: center; justify-content: space-between; margin: 40px auto 10px; padding: 0; width: 60%; background-color: inherit; }
section#hero-item #logo-box { margin: 0; width: 65%; }
section#hero-item #logo-box h1 { margin: 0; width: 50%; }
section#hero-item #logo-box h1.en { margin: 0; width: 60%; }
section#hero-item #logo-box h1 img { margin: 0; width: 100%; }
section#hero-item #time-box { margin: 0; width: 34.8%; }
@media(max-width:768px) {
section#hero-item { display: flex; flex-direction: column; justify-content: center; width: 94%; }
section#hero-item #logo-box { margin-bottom: 10px; width: 100%; }
section#hero-item #logo-box h1,
section#hero-item #logo-box h1.en { margin: 0 auto 20px; width: 100%; }
section#hero-item #time-box { margin-bottom: 20px; width: 100%; display: none; }
}

/* カウントダウンタイマー */
#countdownArea { display: flex; flex-direction: row; margin: 0 auto; width: 100%; }
#countdownArea div { display: inline-block; margin: 0 0.5%; padding: 10px; border: 0; border-radius: 10px; background-color: rgba(0,0,0,0.5); width: 24%; font-family: 'Jost', sans-serif; font-weight: 400; }
#countdownArea div p { display: block; font-family: 'Jost', sans-serif; font-size: 10px; color: #fff; text-align: center; }
#countdownArea span { display: block; margin: 10px 0 0; padding: 0; font-size: 32px; line-height: 1; color: #fff; }
#countdownArea hr { display: block; margin: 5px auto; border: 0; border-bottom: 1px solid rgba(255,255,255,0.5); }


/* STREAMING FLEXボックス */
section#streaming { display: flex; flex-direction: row; align-items: flex-start; justify-content: space-between; margin: 0 auto 40px; padding: 0; width: 60%; background-color: inherit; }
section#streaming #movie { margin: 0; width: 75%; }
section#streaming #slido { margin: 0; width: 24.8%; }
section#streaming #movie-only { margin: 0; width: 100%; }

@media(max-width:768px) {
section#streaming { display: flex; flex-direction: column; justify-content: center; width: 94%; }
section#streaming #movie { margin-bottom: 10px; width: 100%; }
section#streaming #slido { margin-bottom: 10px; width: 100%; }
}


/* Movie Box */
div.movie-box { position:relative; margin: 0 auto; width: 100%; height: 0; padding-top: 56.25%; }
iframe.movie-iframe { position: absolute; margin: 0; border: 1px solid #ccc; top: 0; left: 0; width: 100%; height: 100%; }
/* Slido Box */
div.slido-box { position:relative; margin: 0 auto; width: 100%; height: 0; padding-top: 170%; }
iframe.slido-iframe { position: absolute; margin: 0; border: 1px solid #ccc; top: 0; left: 0; width: 100%; height: 100%; }




/* Streaming Movie iframe */
.iframe-container { margin: 0 auto; width: 70%; }/* iframeサイズを変更するときはこのwidthを変更 */
.iframe-wrapper { position: relative; margin: 20px auto; padding-bottom: 56.25%; width: 100%; height: 0; overflow: hidden; }
.iframe-wrapper iframe { position: absolute; top: 0; left: 0; border: 0; width: 100%; height: 100%; }
@media(max-width:768px) {
.iframe-container { margin: 0 auto; width: 90%; }/* iframeサイズを変更するときはこのwidthを変更 */
}


/* Streaming Text */
.info_area { margin: 20px auto; width: 80%; }
.info_area.info { margin: 120px auto; }
.info_area h3 { margin: 20px auto 0; padding: 5px 0; border-top: 2px solid #fff; border-bottom: 2px solid #fff; font-size: 18px; font-weight: 600; line-height: 1.5; color: #fff; text-align: center; text-shadow: 0 0 10px #000;  max-width: 100%; }
.info_area h3 i { font-family: "Font Awesome 5 Free"; font-style: normal; padding-right: 4px; }
.info_area p { margin: 0 auto; font-size: 14px; font-weight: 400; line-height: 1.5; color: #fff; text-align: left; text-shadow: 0 0 10px #000; max-width: 50%; }
.info_area p span { display: block; margin-top: 0.5em; font-size: 12px; }
.info_area p a { color: #fff; text-decoration: underline; }
.info_area div.slot { margin: 0 auto 20px; display: flex; flex-direction: row; justify-content: center; align-items: center; }
.info_area div.slot a { margin: 0 1%; padding: 5px; width: 25%; background-color: #e61673; font-size: 12px; font-weight: 500; color: #fff; text-align: center; text-decoration: none; letter-spacing: 0; }
.info_area div.slot a:hover { background-color: #242f39; color: #fcee21; }
.info_area div.slot button { margin: 0 1%; padding: 8px 5px; border: 0; border-radius: 1.25em; width: 20%; background-color: #e61673; font-size: 13px; font-weight: 500; color: #fff; text-align: center; text-decoration: none; letter-spacing: 0; }
.info_area div.slot button:hover { background-color: #242f39; color: #fcee21; }
@media(max-width:768px) {
.info_area { margin: 20px auto; width: 90%; }
.info_area div.slot { flex-direction: column; }
.info_area div.slot a { margin: 0 1% 10px; padding: 5px; width: 75%; }
.info_area div.slot button { margin: 0 1% 10px; width: 100%; }
.info_area h3 { font-size: 16px; }
.info_area p { font-size: 12px; max-width: 100%; }
}








/* Achive Page */
div.archive-hero { margin: 40px auto 0px; padding: 0; width: 60%; background-color: inherit; }
div.archive-hero h1 { margin: 0 auto 20px; width: 50%; }
div.archive-hero h1 img { margin: 0; width: 100%; }
div.archive-box { position:relative; margin: 0 auto 60px; width: 100%; height: 0; padding-top: 56.25%; }
iframe.movie-iframe { position: absolute; margin: 0; border: 1px solid #ccc; top: 0; left: 0; width: 100%; height: 100%; }
@media(max-width:768px) {
div.archive-hero { margin: 0 auto; padding: 0; width: 94%; }
div.archive-hero h1 { margin: 0 auto 20px; width: 80%; }
div.archive-box { margin-bottom: 40px; }
}



/* --------------------------------------------
サンクスページ
----------------------------------------------*/
/* header */
header#form { margin: 0; padding: 30px 0; border: 0; background: url("../../../assets/images/top/di24-hero.jpg") 50% 50% no-repeat; background-size: cover; width: 100%; }
header#form h1 { margin: 0 auto; width: 300px; }
header#form h1 img { margin: 0; width: 100%; }
header#form h2 { margin: 10px auto 0; width: 300px; }
header#form h2 img { margin: 0; width: 100%; }
@media(max-width:768px) {
header#form h1 { width: 80%; }
header#form h2 { width: 45%; }
}
/* thanks */
section#thanks { margin: 0 auto 80px; width: 80%; }
section#thanks div.txtbox { margin: 0 auto; width: 700px; }
section#thanks h2 { margin: 0 0 2em; font-size: 24px; font-weight: 500; color: #FF4500; text-align: center; }
section#thanks h3 { margin: 0 0 0.5em; font-size: 14px; font-weight: 600; color: #000; text-align: center; text-decoration: underline; }
section#thanks p { margin: 0 0 2em; font-size: 14px; font-weight: 400; color: #333; text-align: center; line-height: 2.0; }
section#thanks p a { color: #08c; }
@media(max-width:768px) {
section#thanks { width: 94%; }
section#thanks div.txtbox { width: 100%; }
section#thanks h2 { font-size: 20px; }
section#thanks h2, section#thanks h3, section#thanks p { text-align: left; }
}









/* Banner ============================================== */
#banner { margin: 0px auto 20px; padding: 20px 0; border-bottom: 1px solid #ccc; background-color: #fff; width: 100%; }
#banner p { margin: 0 auto 1em; font-size: 14px; color: #000; text-align: center; width: 100%; }
#banner a { text-decoration: none; }
#banner p.btn { margin: 0 auto 1em; font-size: 10px!important; color: #999!important; text-align: center; }
#banner p.btn a { display: block!important; margin: 0.5em auto 0; padding: 0.25em; background-color: #ddd; font-size: 10px; font-weight: 500; color: #000; text-align: center; width: 100%!important; text-decoration: none!important; }
#banner p.btn a:hover { color: #ff0; text-decoration: none!important; background-color: #08c; }
#banner p.btn a i { padding-right: 0.5em; }
#banner p.btn-none a { display: block!important; margin: 0.5em auto 0; padding: 0.25em; background-color: #fff; font-size: 10px; font-weight: 500; color: #fff; text-align: center; width: 100%!important; text-decoration: none!important; pointer-events: none; }
/* バナー2 */
div.banner-box2 { display: flex; justify-content: center; align-items: flex-end; flex-shrink: 0; flex-wrap: wrap; margin: 0 auto 40px; padding: 0; border: 0; width: 100%; }
div.banner-box2 div { margin: 0; padding: 0; border: 0; width: 15%; height: auto; flex-shrink: 0;}
div.banner-box2 div:first-child { margin-right: 2%; }
div.banner-box2 div:last-child { }
div.banner-box2 div img { margin: 10px auto; width: 80%; }
div.banner-box2 div img.deloitte { margin: 20px auto; width: 100%; }
/* バナー6 */
div.banner-box6 { display: flex; justify-content: center; align-items: flex-end; flex-shrink: 0; flex-wrap: wrap; margin: 0 auto; padding: 0; border: 0; width: 100%; }
div.banner-box6 div { margin: 0 3% 10px; padding: 0; border: 0; width: 15%!important; height: auto; flex-shrink: 0; display: flex; flex-direction: column; justify-content: space-between; }
div.banner-box6 div img { margin: 10px auto; width: 90%; }
div.banner-box6 div img.bottom { margin-bottom: 20px; }
div.banner-box6 div img.middle { margin: 10px auto; width: 80%; }

@media(max-width:768px) {
/* バナー2 */
div.banner-box2 { width: 100%; justify-content: flex-start; }
div.banner-box2 div { margin: 0 auto 10px; width: 100%; }
div.banner-box2 div img { margin: 0 auto; width: 50%; }
div.banner-box2 div img.deloitte { margin: 0 auto 10px; width: 50%; }
/* バナー6 */
div.banner-box6 { width: 100%; justify-content: flex-start; }
div.banner-box6 div { margin: 0 1% 10px; width: 48%!important; min-height: 100px; }
}



/* アンケートボタン */
img.btn-questionnaire { margin: 20px auto 40px; width: 40%; cursor: pointer!important; }
@media(max-width:768px) {
img.btn-questionnaire { width: 100%; }
}

/* アンケートボタン（光る） */
.shiny-btn5 {
display: block;
position: relative;
width: 60%;/*ボタンの幅*/
padding: 10px 0;
margin: 20px auto 40px;
background-color: #ed1e79;/*ボタンの色*/
box-shadow: 0 3px 0 0 rgba(198, 39, 39, 1);/*影の色(rgbaの値を変更)*/
border-radius: 5px;
font-weight: bold;
font-size: 18px;
color: #fff;
text-align: center;
text-decoration: none;
overflow: hidden;
transition: 0.2s;
}
@media(max-width:768px) {
.shiny-btn5 { width: 94%; }
}
.shiny-btn5:hover {
text-decoration: none;
color: #fff;
box-shadow: 0 3px 0 0 rgba(198, 39, 39, 1),   0 8px 15px 0px rgba(0, 0, 0, 0.4);
}
.shiny-btn5::before {
position: absolute;
content: '';
display: inline-block;
top: -180px;
left: 0;
width: 30px;
height: 100%;
background-color: #fff;
animation: shiny-btn5 3s ease-in-out infinite;
}
@-webkit-keyframes shiny-btn5 {
0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}




/* page-contents */
.page-contents { margin: 80px auto; width: 70%; }
@media(max-width:768px) {
.page-contents { margin: 80px auto; width: 90%; }
}




/* buttonタグ（画像）でリンク */
form input { margin: 0; padding: 0; border: 0; background-color: inherit;  }
form button { margin: 0; padding: 0; border: 0; background-color: inherit; width: 100%; }
form button img { 
margin: 0; 
width: 100%; 
height: 100%; 
-webkit-transition: opacity .3s ease-in, -webkit-transform .3s ease-in;
transition: opacity .3s ease-in, -webkit-transform .3s ease-in;
transition: opacity .3s ease-in, transform .3s ease-in;
transition: opacity .3s ease-in, transform .3s ease-in, -webkit-transform .3s ease-in
}
form button img:hover{ transform: translate(0px,-3px); }
/* ページトップ固定 */
form.register_top { 
position: fixed;
top: 3%;
right: 2%;
display: grid;
place-content: center;
width: 160px;
height: 160px;
background: none;
z-index: 999;
opacity: 1;
}
/* ページ中間部 */
form.register_middle { position: relative; margin: 40px auto; padding: 0; border: 0; width: 500px; }
@media(max-width:768px) {
/* ページトップ固定 スマホ */
form.register_top { top: 6%; right: 2%; width: 30%; height: 30%; }
/* ページ中間部 スマホ */
form.register_middle { width: 100%; }
}




/* Firefox用ハック */
@-moz-document url-prefix() {
form.register_top button { width: 160px; height: 160px; }
form.register_top button img { width: 100%; }
form.register_middle button { width: 500px; }
form.register_middle button img { width: 100%; }
@media(max-width:768px) {
form.register_top button { width: 120px; height: 120px; }
form.register_middle button { width: 100%; }
}
}
























