@charset "UTF-8";
/*
NIKKEI FORUM
PERTH 2026
WORLDSEND WORKS 2026.01
CUSTOM.CSS
*/




/* ======================================== ページローディング ======================================== */
/* ページが完全に読み込まれた後はローディングアイコンを非表示に */
body.loaded .loading-container { display: none; }
/* DIV設定 */
.loading-container {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: white;
z-index: 9999;
}
/* フォント */
.loading-container p {
display: block;
margin: 0 auto 10px;
text-align: center;
font-size: 14px;
font-weight: 400;
font-family: 'Jost', sans-serif; 
color: #999;
}
/* ローディング回転 */
.spinner {
width: 40px;
height: 40px;
border: 5px solid rgba(0,0,0,0.2);
border-top: 5px solid #333;
border-radius: 50%;
animation: spin 1s linear infinite;
}
/* ロゴ画像 */
.loading-container img {
display: block;
margin: 0 auto 20px;
width: 180px;
height: auto;
}
@keyframes spin {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}
@media(max-width:768px) {
.loading-container img { width: 40%; }
}





/* Hero ============================================== */
#hero { position: relative; margin: 0; padding: 0; width: 100%; height: 85vh; background: url("../images/top/perth26-hero-ttl.jpg") 0% 100% no-repeat #000; background-size: cover; display: grid; place-items: center; }
/* タイトル画像 */
#hero #top-item { position: absolute; left: 4%; bottom: 2%; width: 50%; z-index: 2; }
#hero #top-item img { width: 100%; }
#hero #top-item { display: none!important; }
/* イベント後アーカイブボタン */
#hero a.btn { display: block; position: absolute; left: 0; right: 0; bottom: 8%; width: 30%; margin: 0 auto; z-index: 3; }
#hero a.btn img { width: 100%; }
#hero a.btn:hover img { opacity: 0.8; }
@media(max-width:1200px) {
#hero #top-item { width: 70%; }
}
@media(max-width:768px) {
#hero { position: relative; margin: 0; height: 80vh; background: url("../images/top/perth26-hero-sp.jpg?0119d") 0% 100% no-repeat #000; background-size: contain; }
#hero #top-item { position: absolute;  right: 0; left: 0; bottom: 2%; margin: 0 auto; width: 80%; }
#hero #top-item { display: none!important; }
}




/* Hero 画像のみ（背景とタイトルが1つの画像） ============================================== */
#hero-ttl { position: relative; margin: 0; padding: 0; width: 100%; height: auto }
#hero-ttl img { margin: 0; padding: 0; width: 100%; }
@media(max-width:768px) {
#hero-ttl { position: relative; margin: 0;  }
}




/* H2 title */
.container h2 { margin-bottom: 30px; padding-bottom: 10px; text-align: center; font-size: 28px; font-family: "Jost", serif!important; font-weight: 500; spacing: 0.02em; background: url("../images/top/h2-underline.svg") 50% 100% no-repeat; background-size: 200px; }
.container h2 span { color: #204866; }
.container h2.long { background-image: url("../images/top/h2-underline-lomg.svg"); background-size: 500px; }
@media(max-width:768px) {
.container h2 { background-size: 50%; }
.container h2.long { background-size: 90%; }
}



section#Previous { margin: 0; padding: 40px 0 10px; border: 0; width: 100%; background: #fff; }
section#Previous p { margin: 0 auto; font-family: 'Jost', sans-serif; font-size: 14px; font-weight: 500; line-height: 1.1; color: #000; }



/* OVERVIEW - TopPage ============================================== */
section#overview { position: relative; width: 100%; margin: 0 auto; overflow: hidden; }
section#overview h1 { margin: 0.5em auto 0.5em; margin-bottom: 20px; padding-bottom: 15px; font-family: 'Jost', sans-serif; font-size: 28px; font-weight: 500; line-height: 1.25; text-align: center; color: #000; spacing: 0.2em; background: url("../../assets/images/top/h2-underline-lomg.svg") 50% 100% no-repeat; background-size: 500px; }
section#overview h1 span { color: #204866; }
section#overview p { margin: 1em auto 1em; font-family: 'Jost', sans-serif; font-size: 18px; line-height: 1.25; text-align: left; color: #000; letter-spacing: 0em; }
section#overview p.themes { margin-bottom: 1.5em; font-size: 20px!important; font-weight: 500!important; line-height: 1.25!important; text-align: center; }
section#overview img.aj50 { display: block; margin: 60px auto 20px; width: 200px; height: auto; }
@media(max-width:768px) {
section#overview h1 { background-size: 90%; }
section#overview p { font-size: 14px; }
section#overview img.aj50 { width: 40%; }
}




/* OVERVIEW - KEY THEMES & DISCUSSIONS ============================================== */
div.themes { margin: 0 auto 40px; padding: 30px 30px 30px; display: flex; flex-direction: row; justify-content: center; flex-wrap: wrap; width: 100%; background-color: #f4f6f7; }
div.themes div { margin: 0 2% 10px!important; width: 26%; }
div.themes div h3, 
div.themes div p { margin: 0 auto 1em!important; font-family: 'Jost', sans-serif; text-align: center!important; color: #204866; }
div.themes div h3 { margin-bottom: 0.25em!important; font-size: 16px; font-weight: 600; line-height: 1.25; }
div.themes div p { font-size: 16px!important; font-weight: 400!important; line-height: 1.25!important; }
div.themes div img { margin: 0 auto 10px; width: 30%; }
@media(max-width:768px) {
div.themes { margin: 0 auto 40px; padding: 20px 20px 20px; width: 100%; }
div.themes div { margin: 0 1.5% 20px; width: 46%; }
div.themes div img { width: 40%; }
}



/* OVERVIEW - KEY THEMES & DISCUSSIONS タイトル部分 ============================================== */
.themes-title { margin: 0 auto; padding: 30px 30px 10px; width: 100%; background-color: #f4f6f7; }
.themes-title h3 { margin: 0 auto 0; font-size: 22px; font-weight: 500; font-family: 'Jost', sans-serif; text-align: center!important; color: #204866; text-decoration: underline; }
.themes-title p { margin: 1em auto 0!important; font-size: 18px!important; font-weight: 400!important; line-height: 1.25!important; font-family: 'Jost', sans-serif; text-align: center!important; color: #204866; }
@media(max-width:768px) {
.themes-title h3 { font-size: 18px!important; }
.themes-title p { font-size: 16px!important; }
}




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




/* Outline - TopPage ============================================== */
section#outline { position: relative; width: 100%; margin: 0; padding-bottom: 10px; background-color: #f9f7f4; overflow: hidden; }
section#outline p.att { margin: 30px auto 0; text-align: center; color: #999; }
.outline { margin-top: 0px; width: 60%; }
.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.first { border-top: 0; }
.outline dl.last { border-bottom: 0; }
.outline dl.wht { background-color: #fff; }
.outline dl dt,
.outline dl dd { font-family: 'Jost', sans-serif; text-align: left; font-weight: 400; letter-spacing: 0; }
.outline dl dt { margin-right: 1%; width: 24%; font-size: 16px; font-weight: 400; color: #666; }
.outline dl dt span { font-size: 12px; }
.outline dl dd { width: 75%; font-size: 18px; font-weight: 400; color: #000; }
.outline dl dd span { color: #666; font-size: 14px; font-weight: 400; line-height: 1.25!important; }
.outline dl dd p { margin: 5px 0 0; font-size: 14px; font-weight: 400; color: #666; line-height: 1.25; }
.outline dl dd p.title { font-size: 14px; line-height: 1.25; color: #000; }
.outline dl dd p.title span { display: inline-block; font-size: 14px; color: #000; width: 5.5em!important; }
.outline dl dd a { margin: 0; color: #204866; }
.outline dl dd b { font-weight: 500; }
/* fee */
.outline dl dd.fee { display: flex; flex-direction: row; }
.outline dl dd.fee p { width: 20%; margin-right: 1%; font-size: 16px; font-family: 'Jost', sans-serif; text-align: left; font-weight: 400; letter-spacing: 0; color: #000; }
.outline dl dd.fee ul { display: block; width: 80%; }
.outline dl dd.fee ul li { margin: 0; padding: 0; list-style: none; font-size: 16px; font-family: 'Jost', sans-serif; text-align: left; font-weight: 400; letter-spacing: 0; line-height: 1.25; color: #333; width: 100%; }
.outline dl dd.fee ul li span { display: inline-block; color: #333; width: 5.5em!important; }
/* logo img */
.outline dl dd ul { display: flex; flex-direction: row; align-items: center; width: 100%; }
.outline dl dd ul li { margin-right: 5.3%; width: 28%; }
.outline dl dd ul li.mini { width: 20%; }
.outline dl dd ul li.mini2 { width: 15%; }
.outline dl dd ul li.mini3 { width: 10%; }
.outline dl dd ul li img { width: 100%; height: auto; object-fit: cover; }
@media(max-width:1300px) {
.outline dl dd.fee { display: flex; flex-direction: column; }
}
@media(max-width:768px) {
section#outline h2 {  }
section#outline p.att { text-align: left; }
.outline { margin: 0 auto; padding: 40px 0px; border: 0; width: 90%; }
.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%; }
/* fee */
.outline dl dd.fee { display: flex; flex-direction: column; }
.outline dl dd.fee p, .outline dl dd.fee ul { width: 100%; }
/* logo img */
.outline dl dd ul { display: flex; flex-direction: column; }
.outline dl dd ul li { margin: 0 auto 30px; width: 80%; }
.outline dl dd ul li.mini { width: 50%; }
.outline dl dd ul li.mini2 { width: 40%; }
.outline dl dd ul li.mini3 { width: 35%; }
.outline dl dd ul li img { width: 100%; }
}






/* HERO下のスポンサーロゴ - TopPage ============================================== */
#sponsorsbox { margin: 0; padding: 20px 0; border-bottom: 10px solid #d2dae0; background-color: #fff; width: 100%; }
#sponsorsbox ul { display: flex; flex-direction: row; align-items: center; justify-content: center; margin: 0 auto; width: 100%; }
#sponsorsbox ul li { margin: 0 1%; width: 10%; }
#sponsorsbox ul li.middle { width: 12%; margin-top: 5px; }
#sponsorsbox ul li.big { width: 15%; margin-top: 5px; }
#sponsorsbox ul li img { display: block; margin: 0 auto; width: 90%; }
@media(max-width:768px) {
#sponsorsbox { display: none!important; }
}



/* Sponsors - TopPage ============================================== */
.sponsors { margin-bottom: 40px; border-bottom: 1px solid #ccc; }
.sponsors dl { display: flex; flex-direction: column; flex-wrap: wrap; margin-bottom: 30px; }
.sponsors dl dt { margin: 0 0 30px; font-family: 'Jost', 'Noto Sans JP', sans-serif; font-size: 14px; color: #666; text-align: center; }
.sponsors dl dd { margin: 0 auto 30px; display: flex; flex-direction: row; justify-content: center; align-items: center; flex-wrap: wrap; text-align: center; width: 100%; }
.sponsors dl dd div { margin: 0 2% 10px; width: 20%; height: auto; }
.sponsors dl dd div.nikkei { margin: 0 auto 10px; width: 15%; }
.sponsors dl dd div.ashurst { margin: 0 auto 0px; width: 15%; }
.sponsors dl dd div.ntt { width: 12%; }
.sponsors dl dd div img { width: 100%; height: auto; object-fit: cover; }
@media(max-width:768px) {
.sponsors dl dd { flex-direction: column; align-items: center; }
.sponsors dl dd div { margin-bottom: 80px; width: 75%; }
.sponsors dl dd div.nikkei { margin-bottom: 80px; width: 50%; }
.sponsors dl dd div.ashurst { margin-bottom: 80px; width: 50%; }
.sponsors dl dd div.ntt { margin-bottom: 80px; width: 50%; width: 45%; }
.sponsors dl dt { display: block; margin-bottom: 60px!important; }
}

/* Sponsors - TopPage - INPEX ============================================== */
.sponsors dl dd div.inpex { margin: 0 auto 10px; width: 20%; transition:1s all; }
.sponsors dl dd div.inpex:hover { width: 22%; }
@media(max-width:768px) {
.sponsors dl dd div.inpex { width: 70%; }
.sponsors dl dd div.inpex:hover { width: 75%; }
}



/* Sponsors Page - INPEX ============================================== */
body#sponsors { display: flex; flex-direction: column; justify-content: center; align-items: center; margin: 0; padding: 80px;width: 100%; height: 100vh; background-color: #fff; }
body#sponsors p { margin: 0 auto; font-size: 14px; line-height: 1.5; text-align: left; color: #000; }
body#sponsors img.inpex { margin: 0 auto 20px; width: 180px; }
body#sponsors a.btn { display: block; margin: 60px auto 0!important; padding: 0.5em 5em 0.5em; border: 1px solid #369; border-radius: 1.5em; background-color: #369; font-size: 12px; font-weight: 400; font-family: 'Jost', sans-serif; letter-spacing: 0; color: #fff; text-align: center; text-decoration: none; }
body#sponsors a.btn:hover { opacity: 0.8; }
@media(max-width:768px) {
body#sponsors { padding: 10% 7%; }
body#sponsors img.inpex { width: 50%; }
}





/* h3 title + border ============================================== */
article { display: block; }
article.head-border { display: flex; align-items: center; margin: 0 auto 20px; }
article.head-border:after { content: ""; height: 1px; flex-grow: 1; background-color: #666; }
article.head-border h3 { margin: 0 auto!important; padding: 0.3em 3em 0.35em!important; border: 1px solid #666!important; border-radius: 1.5em!important; background-color: #204866!important; font-size: 14px!important; font-weight: 400!important; font-family: 'Jost', 'Noto Sans JP', sans-serif!important; letter-spacing: 0.0em!important; color: #fff!important; text-align: center!important; }
article.head-border h3 span { display: inline; font-size: 11px!important; font-weight: 400!important; padding: 0 0.75em; vertical-align: 10%; }
article.head-border h3 span.ampm { font-size: 12px!important; padding: 0 0 0 0.25em; vertical-align: 0%; }
article.head-border h3.wht { background-color: #fff!important; color: #204866!important; }
@media(max-width:768px) {
article.head-border h3 { font-size: 12px!important; }
}




/* Agenda - TopPage ============================================== */
section#agenda { position: relative; width: 100%; margin: 0; padding: 80px 0; background-color: #fff; overflow: hidden; }
section#agenda h3 { margin-bottom: 1.0em; font-family: 'Jost', sans-serif; font-size: 22px; font-weight: 500; text-align: left; color: #204866; letter-spacing: 0em; line-height: 1.2; text-transform: uppercase; }
section#agenda h3 span { font-size: 18px; }
section#agenda p { margin: 0 auto; font-size: 14px; line-height: 1.25; color: #444; text-align: left; }
section#agenda p span.material-symbols-outlined 
{ vertical-align: -7px; color: #08c; font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24 }
section#agenda p.note { margin: 0 auto 1.5em; font-family: 'Jost', sans-serif; font-size: 16px; font-weight: 400; font-style: italic!important; text-align: center!important; line-height: 1.25; text-decoration: none!important; color: #114782!important; }
section#agenda hr { border: 0; border-bottom: 1px solid #204866; }
section#agenda .container { position: relative; width: 80%; margin: 0 auto; }
@media(max-width:768px) {
section#agenda h3 { font-size: 20px; }
section#agenda h3 span { font-size: 16px; }
section#agenda .container { width: 94%; }
}

/* agenda box */
.abendabox { margin: 0 auto 80px; border: 0; width: 100%; }
.abendabox.btm { margin: 0 auto 30px; }
.abendabox h4,
.abendabox h5,
.abendabox p { margin: 0 auto; font-family: 'Jost', sans-serif; font-weight: 500; text-align: left!important; line-height: 1.25; text-decoration: none!important; }
.abendabox h4 { margin-bottom: 0.25em; font-size: 18px; font-weight: 500; color: #000; }
.abendabox h5 { margin-bottom: 0; font-size: 18px; font-weight: 400; color: #666; }
.abendabox p { margin-bottom: 0; font-size: 16px!important; font-weight: 400; font-style: italic; color: #204866!important; }
.abendabox hr { margin: 0 0 30px!important; border: 0; border-bottom: 1px solid #ccc!important; }
.abendabox hr.dot { border-bottom: 1px dotted #ccc!important; }
@media(max-width:768px) {
.abendabox { width: 100%; }
}

/* agenda flex */
.agenda-flex { display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; margin: 0 auto 20px; text-align: left; width: 96%; }
/* bio flex 2カラム*/
.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; }
/* bio flex 1カラム */
.agenda-flex article.only { margin: 0 1%; width: 100%; }
.agenda-flex article.only a { display: flex; flex-direction: row; align-items: center; }
.agenda-flex article.only a div { margin: 0; }
.agenda-flex article.only a div.imgbox { margin-right: 1%; width: 16.2%; }
.agenda-flex article.only a div.txtbox { width: 80%; }
.agenda-flex article.only 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', 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.15em; font-size: 18px; font-weight: 500; color: #000; line-height: 1.1; text-transform: uppercase; }
.agenda-flex article a div.txtbox h5 { margin-bottom: 0; font-size: 13px; font-weight: 400; color: #999; }
.agenda-flex article a div.txtbox h6 { display: inline-block; margin-bottom: 0.5em; padding: 0.3em 2em 0.2em; font-size: 10px; font-weight: 400; color: #fff; background-color: #204866; }
/* google icon */
.agenda-flex article a div.txtbox span.material-symbols-outlined 
{ margin-bottom: 0; color: #08c; font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24 }
.agenda-flex a { text-decoration: none!important; }
.agenda-flex article a:hover div.txtbox h4,
.agenda-flex article a:hover div.txtbox h5 { text-decoration: underline!important; }
.agenda-flex article a:hover div.txtbox h6 { text-decoration: none!important; }
/* Keynote speaker */
.agenda-flex article a div.txtbox h6.keynote { display: inline-block; margin-bottom: 0.5em; padding: 0.3em 2em 0.2em; border-radius: 1em; font-size: 14px; font-weight: 400; color: #fff; background-color: #8bc53f; }
.agenda-flex article a div.txtbox h6.keynote-title { display: block; margin-bottom: 0.25em; padding: 0; font-size: 20px; font-weight: 500; text-transform: uppercase; line-height: 1.2; color: #204866; background: none!important; }
.agenda-flex article a:hover div.txtbox h6.keynote,
.agenda-flex article a:hover div.txtbox h6.keynote-title { text-decoration: none!important; }
@media(max-width:768px) {
.agenda-flex { width: 100%; }
.agenda-flex article { margin: 0 0% 20px; width: 100%; }
/* bio flex 1カラム */
.agenda-flex article.only { margin: 0 0% 20px; width: 100%; }
.agenda-flex article.only a { display: flex; flex-direction: row; align-items: center; }
.agenda-flex article.only a div { margin: 0; }
.agenda-flex article.only a div.imgbox { margin-right: 2%; width: 33%; }
.agenda-flex article.only a div.txtbox { width: 65%; }
}


/* flex 並び順変更 */
.order1 { order: 1; }
.order2 { order: 2; }
.order3 { order: 3; }
.order4 { order: 4; }
@media(max-width:768px) {
.order1 { order: 1; }
.order2 { order: 3; }
.order3 { order: 2; }
.order4 { order: 4; }
}




/* for lucnh time table */
div.lunchbox { display: flex; flex-direction: row; align-items: center; justify-content: center; width: 100%; }
div.lunchbox div.img { width: 20%; }
div.lunchbox div.txt { width: 80%; }
div.lunchbox div.img img { margin: 0 auto; width: 10%; }
div.lunchbox div.txt p { margin: 0 auto; font-family: 'Jost', sans-serif; font-size: 14px; font-weight: 400; text-align: left!important; line-height: 1.25; text-decoration: none!important; }
@media(max-width:768px) {
div.lunchbox div.img { width: 30%; }
div.lunchbox div.txt { width: 70%; }
div.lunchbox div.img img { width: 30%; }
div.lunchbox div.txt p { font-size: 14px; }
}




/* Registration - TopPage ============================================== */
section#register { position: relative; width: 100%; margin: 0; padding: 80px 0; overflow: hidden; background: #f4f6f7; }
section#register p { margin: 0 auto 1em; font-family: 'Jost', 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; }
section#register p.note { margin: 0 auto 1.5em; font-family: 'Jost', sans-serif; font-size: 16px; font-weight: 400; font-style: italic!important; text-align: center!important; line-height: 1.25; text-decoration: none!important; color: #114782!important; }
.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: 1360px; border: 1px solid #ccc; }
@media(max-width:768px) {
section#register p.note { text-align: center; }
.register-box .container { width: 90%; }
.pardot-iframe { width: 100%; height: 1400px; }
}

/* 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; }
}



/* for registration page */
section#registration { position: relative; width: 100%; margin: 0 0 20px; padding: 80px 0; overflow: hidden; background: #fff; }
section#registration h1 { margin: 0 auto 0.5em; font-family: 'Jost', sans-serif; font-size: 28px; font-weight: 600; text-align: center; color: #000; }
section#registration p { margin: 0 auto 2em; font-family: 'Jost', sans-serif; font-size: 16px; font-weight: 400; text-align: center; color: #333; }
section#registration .form-box { width: 80%; margin: 0 auto 20px; padding: 0; border: 0; background-color: #fff; }
section#registration .form-box iframe { width: 100%; height: 1000px; }
@media(max-width:768px) {
section#registration .form-box { width: 100%; padding: 5px; }
}






/* Contact  ============================================== */
section#contact { margin: 0 auto; padding: 80px 0; border: 0; background-color: #f9f7f4; }
.mailbox { margin: 0 auto; display: flex; flex-direction: row; justify-content: space-between; flex-wrap: wrap; width: 80%; }
.mailbox div { margin: 0 2%; width: auto; }
.mailbox div h6, 
.mailbox div p { font-family: 'Jost', sans-serif; text-align: left; line-height: 1.25; color: #000; }
.mailbox div h6 { margin-bottom: 0.75em; padding: 0.25em 1.5em; border-radius: 6px; font-size: 14px; font-weight: 500; text-align: center; color: #fff; background-color: #000; }
.mailbox div p { margin-bottom: 1em; font-size: 15px; font-weight: 500; text-align: center; }
@media(max-width:768px) {
.mailbox { flex-direction: column; width: 94%; }
.mailbox div { margin: 10px auto 20px; width: 100%; }
.mailbox div h6, 
.mailbox div p { text-align: center; }
.mailbox div h6 { margin-bottom: 0.5em; }
}




/* 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: 'Jost', 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; }
}
 


/* Contact Button 2 ============================================== */
.button-border2 { display: flex; align-items: center; margin: 40px auto; width: 90%; }
.button-border2:after { content: ""; height: 1px; flex-grow: 1; background-color: #aaa; }
.button-border2 p { margin: 0 auto; padding: 0.25em 2em 0.25em; border: 1px solid #aaa; border-radius: 1.5em; background-color: #aaa; font-size: 14px!important; font-weight: 500; font-style: normal; font-family: 'Jost', sans-serif; letter-spacing: 0; color: #fff!important; text-align: center; text-decoration: none; }
@media(max-width:768px) {
.button-border2 p { 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: 'Open Sans', 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: 'Jost', 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: 24px; font-weight: 500; text-transform: uppercase; }
#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; }
.speakers-page { display: flex; flex-direction: row; align-items: flex-start; margin: 40px auto; width: 100%; }
/* 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!important; font-size: 24px; font-weight: 500; }
.speakers-page .box-txt h5 { margin-bottom: 1.5em!important; font-size: 14px!important; font-weight: 400; line-height: 1.25; color: #999; }
.speakers-page .box-txt p { font-size: 14px!important; color: #333!important; line-height: 1.4!important; }
.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 { margin-left: 1.5em; }
.speakers-page .box-txt ul li { list-style: outside disc!important; padding-left: 0em; font-size: 14px; color: #666; letter-spacing: 0; }
.speakers-page .box-txt ul.blk { margin-top: 10px; margin-bottom: 10px; }
.speakers-page .box-txt ul.blk li { color: #333!important; line-height: 1.5; }

/* 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: 'Open Sans', 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%; }
@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: 55%; 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: #efefef; }
.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 tr.middle th { width: 29%; margin-right: 1%; }
.box-txt tr.middle td { width: 70%; }
.box-txt tr.nobdr { }
.box-txt tr.nobdr th, 
.box-txt tr.nobdr td { padding: 2px 4px 2px 0px; border: 0!important; background: #fff!important; width: auto; vertical-align: top; }


@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%; }
}



/*  */
#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: 'Open Sans', sans-serif; letter-spacing: 0; }
h2.page-title span { font-family: 'Open Sans', 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: 'Open Sans', 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: 'Open Sans', 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: 'Open Sans', 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: 'Open Sans', 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: 'Open Sans', sans-serif; font-size: 12px; font-weight: 500; }
.cookie-agree { background: #003E70; }
.cookie-reject { background: #999; }
.cookie-consent h6,
.cookie-consent p { margin: 0; font-family: 'Open Sans', 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: 50vh; background: url("../../../25/assets/images/top/cit-mv-516432363.png") 50% 50% no-repeat; background-size: cover; }
#hero2 h2.logo { margin: 20px; width: 160px; }
#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: 0 auto 20px; padding: 0; width: 70%; background-color: inherit; }
section#hero-item #logo-box { margin: 0; width: 70%; }
section#hero-item #logo-box h1 { margin: 0; width: 50%; }
section#hero-item #logo-box h1 img { margin: 0; width: 100%; }
section#hero-item #time-box { margin: 0; width: 29.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 { margin: 0 auto 20px; width: 100%; }
section#hero-item #time-box { margin-bottom: 20px; width: 100%; }
}

/* カウントダウンタイマー */
#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: 'Open Sans', sans-serif; font-weight: 200; }
#countdownArea div p { display: block;font-family: 'PT Sans Narrow', sans-serif; font-size: 11px; color: #fff; }
#countdownArea span { display: block; margin: 10px 0 0; padding: 0; font-size: 36px; 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: 70%; 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: center; text-shadow: 0 0 10px #000; }
.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: 5px; border: 0; 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 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 h3 { font-size: 16px; }
.info_area p { font-size: 12px; }
}




/* 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("../images/top/perth26-hero-min.jpg") 100% 50% no-repeat; background-size: cover; width: 100%; }
header#form h1 { margin: 0 auto; width: 400px; }
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 1em; font-family: 'Jost', sans-serif; font-size: 24px; font-weight: 600; color: #204866; text-align: center; }
section#thanks h6 { margin: 0 0 1.5em; font-family: 'Jost', sans-serif; font-size: 18px; font-weight: 400; color: #333; text-align: center; }
section#thanks p { margin: 0; font-family: 'Jost', sans-serif; font-size: 16px; font-weight: 400; color: #333; text-align: center; line-height: 2.0; }
section#thanks p a { color: #08c; }
section#thanks a.btn { display: block; margin: 10px auto 0; width: 200px; }
section#thanks a.btn img { width: 100%; }
section#thanks a.btn:hover img { opacity: 0.6; }
@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; }
section#thanks a.btn { margin: 20px 0 0 0; width: 70%; }

}








/* 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%; }
/* バナー5 */
div.banner-box5 { 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-box5 div { margin: 0 2% 10px; padding: 0; border: 0; width: 16%!important; height: auto; flex-shrink: 0; display: flex; flex-direction: column; justify-content: space-between; }
div.banner-box5 div img { margin: 10px auto; width: 90%; }
@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%; }
/* バナー5 */
div.banner-box5 { width: 100%; justify-content: flex-start; }
div.banner-box5 div { margin: 0 1% 10px; width: 48%!important; min-height: 100px; }
}



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

/* アンケートボタン（光る） */
.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%; }
}








/* イベント後プログラムにアーカイブボタン設置 */
div.arhive-btn { margin: 0 0 20px; text-align: left; }
div.arhive-btn.top { margin-top: -15px; }
div.arhive-btn a { display: inline-block; width: 240px; }
div.arhive-btn a img { width: 100%; }
div.arhive-btn a:hover img { opacity: 0.8; }
@media(max-width:768px) {
div.arhive-btn a { display: inline-block; width: 50%; }
}





/* イベント終了後トップページ イベントレポート */
section#report { position: relative; width: 100%; margin: 0 auto; padding: 30px 0; background-color: #0275c2;}
section#report .container { display:flex; justify-content: center; align-items: flex-start; margin: 0 auto; padding: 0; width: 80%; }
section#report .container div { margin: 0 1%; width: 23%; font-family: "Jost", sans-serif; font-size: 18px; color: #fff; text-align: center; line-height: 1.05; letter-spacing: 0; }
section#report .container div span { font-size: 13px; }
section#report .container div h5 { margin-bottom: 0.2em; font-size: 42px; font-family: "Oswald", sans-serif; font-style: italic; color: #fff; text-align: center; line-height: 1.1; }
section#report .container div h5 span { padding-left: 0.2em; font-size: 32px; }
@media(max-width:768px) {
section#report .container { width: 90%; flex-wrap: wrap; }
section#report .container div { margin: 0 1%; width: 48%; }
section#report .container div:nth-child(1),
section#report .container div:nth-child(2) { margin-bottom: 20px; }
section#report .container div h5 { font-size: 32px; }
}

/* トップページ イベント写真 */
section#photo { position: relative; width: 100%; margin: 0 auto; padding: 80px 0 80px; border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; background-color: #f9f7f4; }
section#photo .container { display:flex; justify-content: center; align-items: flex-start; margin: 0 auto; padding: 0; width: 80%; flex-wrap: wrap; }
section#photo .container img { margin: 0 0.5%; border: 1px solid #ccc; width: 19%; }
section#photo .container img:nth-child(1) { margin-bottom: 10px; }
section#photo p { margin: 1em auto 0; font-family: 'Jost', sans-serif; font-size: 12px; text-align: center; color: #666; }
@media(max-width:768px) {
section#photo .container { width: 90%; }
section#photo .container img { margin: 0 0.5% 10px; width: 49%; }
section#photo p { text-align: center; }
}

/* トップページ イベント写真 flickrリンク */
section#flickr { position: relative; width: 100%; margin: 0 auto; padding: 60px 0; background-color: #fff; overflow: hidden; }
section#flickr .photobox { display:flex; justify-content: center; align-items: flex-start; margin: 0 auto; padding: 0; width: 100%; flex-wrap: wrap; }
section#flickr .photobox img { margin: 0 0.5%; border: 1px solid #ccc; width: 19%; }
section#flickr .photobox img:nth-child(1) { margin-bottom: 10px; }
section#flickr p { margin: 1em auto; font-family: 'Jost', sans-serif; font-size: 12px; text-align: center; color: #666; }
section#flickr a.btn { display: inline-block; margin: 20px auto 0; padding: 0.75em 3em 0.75em; border-radius: 0em; font-family: 'Jost', sans-serif; font-size: 18px; font-weight: 500; text-decoration: none; letter-spacing: 0; line-height: 1.0; color: #fff; background-color: #0275c2; max-width: 400px; }
section#flickr a.btn span { padding-right: 0.5em; }
section#flickr a.btn:hover { background-color: #08c; }
@media(max-width:768px) {
section#flickr .photobox { width: 100%; }
section#flickr .photobox img { margin: 0 0.5% 10px; width: 49%; }
section#flickr p { text-align: center; }
section#flickr a.btn { font-size: 16px; width: 100%; max-width: 100%; }
}



/* past forums */
section#pastforums { position: relative; width: 100%; margin: 0 auto; overflow: hidden; }
section#pastforums p { margin: 0 auto 0; font-family: 'Jost', sans-serif; font-size: 12px; font-weight: 400; text-align: center; color: #666; }
section#pastforums div.past { display: flex; flex-direction: row; align-items: flex-start; justify-content: center; margin: 0 auto 40px; width: 100%; }
section#pastforums div.past div { margin: 0 1%; width: 400px; }
section#pastforums div.past div img { width: 100%; }
section#pastforums div.past div img:hover { opacity: 0.5; transition: 0.5s; }
section#pastforums div.past p { margin: 5px auto 0; font-family: 'Jost', sans-serif; font-size: 12px; font-weight: 400; text-align: center; color: #000; }
section#pastforums div.past p a { color: #000; text-decoration: none; }
section#pastforums div.past p a:hover { color: #999; transition: 0.5s; }
@media(max-width:768px) {
section#pastforums div.past { flex-direction: column; }
section#pastforums div.past div { margin: 0 0 20px; width: 100%; }
}








/* SNS */
section#sns { position: relative; width: 100%; margin: 0 auto; overflow: hidden; }
section#sns div.container div { margin: 0 auto; width: 60px; }
section#sns div.container div img { width: 100%; }
section#sns div.container div img:hover { opacity: 0.5; }
section#sns div.container h6 { margin: 0 auto 10px; font-family: 'Jost', sans-serif; font-size: 14px; font-weight: 400; text-align: center; }
section#sns div.container p { margin: 5px auto 0; font-family: 'Jost', sans-serif; font-size: 16px; font-weight: 500; text-align: center; color: #000; }
section#sns div.container p a { color: #000; text-decoration: none; }
section#sns div.container p a:hover { color: #999; }
@media(max-width:768px) {
section#sns div.container div { margin: 0 auto; width: 20%; }
}






















