@charset "UTF-8";
/*
NIKKEI
グローバル GX/AI金融会議札幌 2026
WE WORKS 2026.10
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: 12px;
font-weight: 400;
font-family: 'Arial', 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 10px;
width: 160px;
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: 95vh; }

/* タイトル画像 */
#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;  }
#hero #top-item { width: 90%; }
#hero #top-item img { margin-top: 25%; width: 100%; }
}


/* 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 */
h2.h2title { display: inline-block; margin-bottom: 40px; padding: 0.5em 6em 0.4em; border-radius: 1em; text-align: center; font-size: 16px; font-family: 'Figtree', sans-serif!important; font-style: normal; font-weight: 500; line-height: 1.2; letter-spacing: 0.05em; color: #fff; background: linear-gradient(90deg, #39b44a, #29aae1); }
h2.h2title.jp { font-family: 'Noto Sans JP', sans-serif; font-size: 16px; letter-spacing: 0; }
@media(max-width:768px) {
h2.h2title { display: block; margin: 0 auto 40px; padding: 0.5em 2em 0.4em; width: 100%!important; }
}




/* Overview - TopPage ============================================== */
section#overview { position: relative; width: 100%; margin: 0 auto; padding: 80px 0; border-top: 1px solid #666; overflow: hidden; background: #000; }
section#overview .container { width: 75%; }
section#overview h3 { margin: 0 auto 1em; font-family: 'Figtree', '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: 'Figtree', '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 img.theme { width: 100%; }
@media(max-width:768px) {
section#overview .container { width: 90%; }
section#overview h3 { font-size: 20px; }
section#overview p { margin: 0; font-size: 14px; }
section#overview img.theme { width: 100%; }

}




/*------------------------------------------------------------
	SPEAKERS
------------------------------------------------------------ */
section#speakers { background: #e5e5e5; }
/* speakers box */
.speakersbox { margin: 0 auto 0; padding: 0; border: 0; width: 100%; }
@media(max-width:768px) {
.speakersbox { width: 100%; }
}
/* agenda flex */
.agenda-flex { display: flex; flex-direction: row; flex-wrap: wrap; align-items: flex-start; margin: 0 auto 20px; text-align: left; width: 100%; }
/* bio flex 4カラム*/
.agenda-flex article { margin: 0 0.5%; width: 24%; }
.agenda-flex article a { display: flex; flex-direction: column; align-items: center; }
.agenda-flex article a:hover { text-decoration: none!important; }
.agenda-flex article a div { margin: 0; }
.agenda-flex article a div.imgbox { margin: 0; width: 100%; }
.agenda-flex article a div.txtbox { margin-bottom: 20px; width: 100%; }
.agenda-flex article a.noclick { pointer-events: none!important; text-decoration: none; }
/* 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: 100%; }
.agenda-flex article.only a.noclick { pointer-events: none!important; }
/* photo */
.agenda-flex article a div.imgbox img { margin: 0 auto 15px; border: 1px solid #ccc; border-radius: 50%; width: 80%; }
.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: 'Roboto', 'Noto Sans JP', sans-serif; font-weight: 500; line-height: 1.25; text-decoration: none!important; text-align: center; }
.agenda-flex article a div.txtbox h4 { margin-bottom: 0.5em; font-size: 16px; font-weight: 500; color: #000; line-height: 1.1; text-transform: uppercase!important; }
.agenda-flex article a div.txtbox h4.en { margin-bottom: 0.25em; font-family: 'Figtree', sans-serif; font-size: 16px; font-weight: 600; }
.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-family: 'Figtree', sans-serif; font-size: 12px; line-height: 1.25; }
.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; }
/* hover */
.agenda-flex article a div.txtbox h4:hover,
.agenda-flex article a div.txtbox h5:hover,
.agenda-flex article a div.txtbox h6:hover { text-decoration-color: #ccc!important; text-decoration: underline; }
/* 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; text-decoration-color: #aaa!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%; }
.agenda-flex article a { display: flex; flex-direction: row; align-items: center; }
.agenda-flex article a div.imgbox { margin-right: 2%; width: 33%; }
.agenda-flex article a div.txtbox { width: 65%; }
.agenda-flex article a div.imgbox img { width: 100%; }
.agenda-flex article a div.txtbox h4 { font-size: 18px; text-align: left!important; }
.agenda-flex article a div.txtbox h5 { text-align: left!important; }
.agenda-flex article a div.txtbox h6 { text-align: left!important; }
/* 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; }
}




/* 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', 'Noto Sans JP', sans-serif; font-weight: 400; text-align: left; line-height: 1.5; letter-spacing: 0!important; 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!important; font-family: 'Roboto', 'Noto Sans JP', 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: 'Roboto', 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-family: 'Roboto', 'Noto Sans JP', sans-serif; font-size: 24px; font-weight: 500!important; text-transform: capitalize!important; letter-spacing: 0!important; text-transform: uppercase!important; }
.speakers-page .box-txt h5 { margin-bottom: 1.5em!important; font-size: 13px!important; font-weight: 400; line-height: 1.25; color: #999; }

.speakers-page .box-txt h4.en,
.speakers-page .box-txt h5.en { font-family: 'Figtree', sans-serif!important; }
.speakers-page .box-txt h4.en { font-weight: 600!important; }
.speakers-page .box-txt h5.en { font-size: 14px!important; }

.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 { display: block; margin-bottom: 10px; }
.box-txt th, 
.box-txt td { margin: 0; padding: 4px 10px; font-size: 14px; font-weight: 400; text-align: left; line-height: 1.25; color: #000; vertical-align: middle; letter-spacing: 0; }
.box-txt th { border-left: 1px solid #ccc; border-right: 1px solid #ccc; color: #333; width: auto; }
.box-txt td { padding-left: 20px; width: auto; }
.box-txt table.th20 tr { display: table-row; border-bottom: 1px solid #ccc; }
.box-txt table.th20 tr:first-child { border-top: 1px solid #ccc; }
.box-txt table.th20 th { padding: 10px 0 10px 10px; border: 0; width: 20%; }
.box-txt table.th20 td { padding: 10px 10px 10px 0; width: auto; }
.box-txt table.th30 tr { display: table-row; border-bottom: 1px solid #ccc; }
.box-txt table.th30 tr:first-child { border-top: 1px solid #ccc; }
.box-txt table.th30 th { padding: 10px 0 10px 10px; border: 0; width: 30%; }
.box-txt table.th30 td { padding: 10px 10px 10px 0; width: auto; }
@media(max-width:768px) {
.box-txt table { margin: 0; padding: 0; border: 0; width: 100%; }
.box-txt th, 
.box-txt td { font-size: 14px; }
.box-txt table tr { border-bottom: 1px solid #ccc; }
.box-txt table tr:first-child { border-top: 1px solid #ccc; }
.box-txt th { display: block; padding: 10px 0 0 0; border: 0; width: 100%; margin-right: 0; }
.box-txt td { display: block; padding: 10px 0; width: 100%; }
.box-txt table.th20 th { display: block; padding: 10px 0 0 0; width: 100%; }
.box-txt table.th20 td { display: block; padding: 10px 0; width: 100%; }
.box-txt table.th30 th { display: block; padding: 10px 0 0 0; width: 100%; }
.box-txt table.th30 td { display: block; padding: 10px 0; width: 100%; }
}







/*------------------------------------------------------------
	AGENDA
------------------------------------------------------------ */
/* ===== section#agenda ===== */
section#agenda { position: relative; width: 100%; margin: 0; padding: 80px 0; background: linear-gradient(45deg, #002800, #00143c); overflow: hidden; }
section#agenda p.note { margin: 1em auto; font-family: 'Roboto', 'Noto Sans JP', sans-serif; font-size: 12px; font-weight: 400; text-align: left; line-height: 1.5; color: #fff; width: 92%; }

/* ===== time + session ===== */
article.session { display: flex; align-items: center; margin: 0 0 10px; }
article.session h3,
article.session h4 { margin: 0; font-family: 'Roboto', 'Noto Sans JP', sans-serif; font-weight: 400; color: #000; }
/* time */
article.session h3 { margin: 0 1em 0.2em 0; padding: 0.2em 2em 0.1em; border-radius: 1em; font-family: 'Jost', sans-serif; font-size: 14px; letter-spacing: 0.01em; color: #fff; background: #1a315c; }
article.session h3.green { background: #006837; }
article.session h3.rev { border: 1px solid #999; background: #fff; color: #999; }
/* session */
article.session h4 { font-size: 15px; font-weight: 500; color: #000; line-height: 1; text-transform: uppercase; }
article.session h4.gray { font-size: 13px; color: #999; }
/* ===== div.agendabox ===== */
div.agendabox { margin: auto; padding: 60px 100px; border: 0; background: #fff; width: 92%; }
div.agendabox h5,
div.agendabox h6,
div.agendabox p { margin: 0; font-family: 'Roboto', 'Noto Sans JP', sans-serif; color: #000; text-align: left; line-height: 1.1; }
/* セッションタイトル */
div.agendabox h5 { margin-bottom: 0.5em; font-size: 18px; font-weight: 500; color: #28afff; }
div.agendabox h5.green { color: #39b44a; }
/* 登壇者氏名肩書 */
div.agendabox h6 { margin-bottom: 0.5em; font-size: 18px; font-weight: 500; text-transform: uppercase; }
div.agendabox h6 span { margin-bottom: 0.1em; padding-left: 1em; font-size: 14px; font-weight: 400; color: #888; text-transform: none; }
div.agendabox h6 i { display: inline-block; margin-left: 1.5em; padding: 0.2em 0.5em 0.1em; border: 1px solid #369; font-size: 11px; font-weight: 400; font-style: normal; color: #369; text-transform: none; }
/* P */
div.agendabox p { margin-bottom: 1.5em; font-size: 14px; font-weight: 400; line-height: 1.25; color: #333; }
div.agendabox p.day { margin-bottom: 0.1em; font-size: 16px; font-weight: 500; text-align: center; color: #28afff; }
div.agendabox p.day span { padding-left: 0; font-size: 14px; font-weight: 500; color: #28afff; }
div.agendabox p.day.green { color: #39b44a; }
div.agendabox p.day.green span { color: #39b44a!important; }
/* hr */
div.agendabox hr{ margin: 20px 0; border: 0; border-bottom: 1px solid #ccc; width: 100%; }
@media(max-width:768px) {
article.session { margin: 0 0 10px; }
div.agendabox { padding: 40px 20px; }
div.agendabox h6 { margin-top: 0.5em; line-height: 1.5; }
div.agendabox h6 span { padding-left: 0; display: block; }
div.agendabox h6 i { margin-left: 0; display: inline-block; }
}















/* Outline - TopPage ============================================== */
section#outline { position: relative; width: 100%; margin: 0; overflow: hidden; }
section#outline .container { width: 60%; }
.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; }
.outline dl dd span i { font-style: normal!important; color: #f00; }
/* eng */
.outline dl.en dt,
.outline dl.en dd { font-family: 'Roboto', 'Noto Sans JP', 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: 10%; margin-top: 10px; margin-bottom: 10px; 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: 28%; }
.outline dl dd ul li img { width: 100%; }
@media(max-width:768px) {
section#outline .container { width: 90%; }
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: 40px auto; width: 50%; }
.outline dl dd ul li.mini { width: 40%; }
.outline dl dd ul li.middle { width: 60%; }
.outline dl dd ul li.big { width: 90%; }
.outline dl dd ul li img { width: 100%; }
}













/* Registration - TopPage ============================================== */
section#register { position: relative; width: 100%; margin: 0 0 20px; padding: 80px 0; overflow: hidden; background: #000; }
section#register p { margin: 0 auto 1em; font-family: 'Figtree', '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: 1700px; border: 1px solid #ccc; }
.pardot-iframe2 { width: 100%; height: 1450px; border: 1px solid #ccc; }
@media(max-width:768px) {
.register-box .container { width: 90%; }
.pardot-iframe { width: 100%; height: 1750px; }
.pardot-iframe2 { width: 100%; height: 1550px; }
}

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





/* 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: 'Figtree', '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; }
.button-border.contact { width: 75%; }
@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: 'Figtree', '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; }
}







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







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







/* --------------------------------------------
サンクスページ
----------------------------------------------*/
/* header */
header#form { margin: 0; padding: 0; border: 0; background: url("../images/top/gxai26-header.jpg") 50% 50% no-repeat; background-size: cover; width: 100%; height: 100px; }
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: 'Noto Sans JP', 'Roboto', sans-serif; font-size: 24px; font-weight: 600; color: #003c8c; text-align: center; }
section#thanks p { margin: 0; font-family: 'Noto Sans JP', 'Roboto', sans-serif; font-size: 14px; font-weight: 400; color: #000; text-align: left; line-height: 1.5; }
section#thanks p b { font-weight: 600; }
section#thanks p a { color: #2ea7e0; }
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%; }
}
/* font awesome 5 icon */
.svg-inline--fa.fa-w-16.check { padding-left: 0.2em!important; font-size: 24px!important; color: #2ea7e0!important; }
.svg-inline--fa.fa-w-16.back { padding-right: 0.2em!important; font-size: 14px!important; color: #2ea7e0!important; }
.svg-inline--fa.fa-w-16.mail { padding-right: 0.2em!important; font-size: 14px!important; color: #2ea7e0!important; }














