@charset "UTF-8";

body {
  font-family: 'Roboto', 'kozuka-gothic-pr6n', 'Noto Sans JP', 'ヒラギノ角ゴ Pro W3', 'Yu Gothic Medium', '游ゴシック Medium', 'YuGothic', '游ゴシック体', 'メイリオ', sans-serif;
  color: #000;
}

img {
  width: 100%;
}

/* ヘッダー */
.l-header {
  background-color: #4B2479;
  height: 65px;
}

.l-header__inner {
  max-width: 1100px;
  margin: 0 auto;
}

.headerLogo {
  text-align: center;
  height: 100%;
  display: grid;
  place-items: center;
  padding: 0;
  margin-left: 0;
}

.headerLogo a {
  width: 100px;
}

.headerLogo img {
  width: 45px;
  margin: 5px;
  vertical-align: middle;
}

.l-drawerContent .headerNav__item:first-child {
  margin-bottom: 0;
}

.headerNav {
  text-align: center;
}

.headerNav li {
  display: inline-block;
}

.headerNav__link {
  display: grid;
  place-items: center;
  border: 0;
  padding: 20px 10px;
}

.l-headerNavBlock__btn {
  width: 440px;
}

.registerTxt:first-child {
  margin-right: 0;
}

.l-headerNavBlock__btn a {
  text-align: center;
  display: inline-block;
  place-items: center;
  width: 180px;
  padding: 7px 0 0;
}

.agenda-btn {
  background-color: #FDB71A;
  border-radius: 0;
  display: grid;
  place-items: center;
}

@media screen and (min-width: 64em) {
  .headerNav {
    width: calc(100% - 400px);
  }

  .headerNav__link {
    padding: 0 10px;
  }

  .headerNav__link .ja {
    font-size: 1.6rem;
  }

  .l-headerNavBlock__btn a {
    height: 40px;
  }
}

.drawerBtn {
  height: 45px;
}

.drawerBtn__txt {
  font-family: 'Roboto';
  font-size: 2.4rem;
}

/* メイン */

main {
  width: 100%;
  padding: 0 20px;
}

/* Hero */
.hero {
  margin-top: 45px;
}

/* Read */
.read {
  text-align: center;
  font-weight: bold;
  padding: 20px;
  place-items: center;
}

.btn-send {
  background-color: #FDB71A;
  border-radius: 10px;
  display: inline-block;
  color: #000;
  font-size: 16px;
  font-weight: bold;
  padding: 10px 20px 12px;
  place-items: center;
  margin: 0 10px;
}

.top-read .btn-send,
.l-main .btn-send {
  font-size: 22px;
  padding: 10px 40px;
}

.btn-mypage {
  background-color: #fff;
  border-radius: 10px;
  display: inline-block;
  color: #000;
  font-size: 16px;
  font-weight: bold;
  padding: 10px 20px 12px;
  place-items: center;
  margin: 0 10px;
}

/* keyword */
.l-timeTable__header {
  padding-top: 1rem;
}

.l-timeTable__header.is_fixed {
  top: 55px;
  background-color: #fff;
}

.l-timeTable__headerInner {
  padding-left: 0;
}

.keyword__block {
  background-color: #fff;
}

.keyword__block::before,
.keyword__block::after,
.keyword__blockInner::before,
.keyword__blockInner::after {
  display: none;
}

.keyword__label {
  border-radius: 0;
  margin-right: 8px;
  margin-bottom: 8px;
}

@media screen and (min-width: 64em) {
  .keyword__ttl {
    margin-bottom: 0;
    font-size: 1.6rem;
  }

  .keyword__list {
    padding: 10px;
  }
}

.l-sessionList__note {
  text-align: right;
  font-size: 1.6rem;
  line-height: 1;
  padding-right: 15px;
  padding-bottom: 8px;
}

.l-sessionList__note img {
  width: 2.4rem;
  height: 2.4rem;
  margin-right: 3px;
}

.l-sessionList__note span {
  display: inline-block;
  padding-bottom: 4px;
}

/* TimeTable */
.l-timeTable {
  padding-top: 2px;
}

.l-timeTable__header.is_fixed {
  padding: 34px 20px 21px;
  width: 100%;
}

.tt-header {
  width: 100%;
  text-align: center;
  border-collapse: separate;
  border-spacing: 8px;
}

.tt-header th,
.ttmain th {
  width: 7%;
}

.tt-header td,
.ttmain td {
  width: 13.3%;
}

.tt-header td {
  vertical-align: middle;
  color: #fff;
  font-weight: bold;
  padding: 8px 0;
}

.tt-header .k1 {
  background-color: #7030A0;
}

.tt-header .k2 {
  background-color: #3980F5;
}

.tt-header .k3 {
  background-color: #AEAAAA;
}

.tt-header .k4 {
  background-color: #00A5A8;
}

.tt-header .k5 {
  background-color: #646E81;
}

.tt-header .k6 {
  background-color: #52AC5B;
}

.tt-header .k7 {
  background-color: #0D2160;
}

.tt-header .k8 {
  background-color: #FDB71A;
}

.l-timeTable__inner {
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

.ttRow {
  border: 0;
}

.ttmain {
  border-collapse: separate;
  border-spacing: 8px;
}

.ttmain th {
  background-color: #F2F2F2;
  vertical-align: middle;
  padding: 8px;
}

.ttmain td {
  position: relative;
}

.ttmain h3 {
  text-align: left;
  font-weight: bold;
  font-size: 2rem;
}

.cat-dd {
  border: 2px solid #7030A0;
}

.cat-dd .tt-head {
  background-color: #7030A0;
}

.cat-so {
  border: 2px solid #3980F5;
}

.cat-so .tt-head {
  background-color: #3980F5;
}

.cat-ip {
  border: 2px solid #00A5A8;
}

.cat-ip .tt-head {
  background-color: #00A5A8;
}

.cat-v {
  border: 2px solid #52AC5B;
}

.cat-v .tt-head {
  background-color: #52AC5B;
}

.cat-s {
  border: 2px solid #0D2160;
}

.cat-s .tt-head {
  background-color: #0D2160;
}

.cat-cd {
  border: 2px solid #FDB71A;
}

.cat-cd .tt-head {
  background-color: #FDB71A;
}

.cat-test {
  border: 2px solid #AEAAAA;
}

.cat-test .tt-head {
  background-color: #AEAAAA;
}

.cat-od {
  border: 2px solid #646E81;
}

.cat-od .tt-head {
  background-color: #646E81;
}

.cat-spd {
  border: 2px solid #9063F6;
}

.cat-spd .tt-head {
  background-color: #9063F6;
}

.ttBox {
  outline: none;
}

.tt-head {
  display: flex;
}

.tt-no {
  width: 49%;
  display: flex;
}

.tt-no p {
  display: inline-block;
  color: #fff;
  font-weight: bold;
  border-bottom-right-radius: 10px;
  padding: 0 8px 2px;
  vertical-align: top;
  font-size: 1.2rem;
}

.tt-icon {
  width: 50%;
  text-align: right;
}

.tt-icon img,
.lunch-table .tt-icon img {
  width: 16px;
  height: auto;
  vertical-align: top;
  margin-top: 2px;
}

.tt-title {
  padding: 8px;
  font-weight: bold;
}

.tt-corp {
  padding: 0 8px 35px;
  font-size: 1.4rem;
}

.tt-bottom {
  display: flex;
  text-align: center;
  font-size: 13px;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 100;
}

.tt-reg {
  width: 50%;
  padding: 1px;
  font-weight: bold;
  background-color: #e5e5e5;
  margin-right: 1px;
}

.tt-detail {
  width: 50%;
  padding: 1px;
  font-weight: bold;
  background-color: #e5e5e5;
  margin-left: 1px;
}

.tt-detail a {
  display: inline-block;
  width: 100%;
  padding-top: 2px;
}

.reception {
  padding: 16px 8px;
}

.reception p {
  font-weight: bold;
}

.reception img {
  height: 45px;
  width: inherit;
  bottom: 0;
  vertical-align: middle;
}
.networking+.reception {
  padding-left: 15%;
}
.welcome {
  position: relative;
}

.welcome hr {
  border: 0;
  background-color: #808080;
  /* height: 1px; */
  position: absolute;
  top: -4px;
  width: 100%;
}

.welcome div {
  display: inline-block;
  vertical-align: middle;
}

.welcome-photo {
  width: 10%;
}

.welcome-title {
  width: 39%;
}

strong {
  font-weight: bold;
}

.keynote {
  color: #fff;
}

.keynote div {
  display: inline-block;
}

.keynote .ttBox {
  width: 100%;
  background-color: #bea2d7;
  padding: 10px;
  display: flex;
}
.tt-meet .ttBox {
  width: 100%;
  background-color: #B28FCF;
}

.key-photo {
  width: 10%;
  vertical-align: middle;
}

.key-title {
  width: 73%;
  padding: 0 10px;
}

.key-reg {
  width: 17%;
  font-size: 1.2rem;
  vertical-align: bottom;
  position: relative;
}

.networking .key-reg {
  width: 180px;
}

.key-icon {
  width: 100%;
  text-align: right;
}

.key-icon img {
  width: 2.2rem;
  margin-bottom: 4px;
}

.key-reg p {
  position: absolute;
  bottom: 0px;
  display: flex;
  width: 100%;
}

.key-reg span {
  width: 50%;
  background-color: #d9d9d9;
  color: #000;
  text-align: center;
  font-size: 13px;
  font-weight: bold;
}

.key-reg a {
  display: inline-block;
  width: 100%;
  padding: 2px;
}

.key-reg-chk {
  margin-right: 5px;
  font-weight: bold;
}
label {
  font-weight: bold;
  vertical-align: top;
  display: inline-block;
  padding-top: 1px;
}

label:hover {
  cursor: pointer;
}

input[type="checkbox"] {
  position: relative;
  top: 2px;
}
.tt-break {
  vertical-align: middle;
}

.break-lunch,
.break-coffee,
.networking {
  display: flex;
  width: 100%;
  padding: 10px;
  background-color: #e7a263;
  color: #fff;
  border-radius: 10px;
  vertical-align: middle;
}

.break-lunch+.reception,
.break-coffee+.reception {
  background-color: #FDEFE7;
  margin-top: 5px;
}
.networking {
  background-color: #9e73c3;
}

.networking h3,
.networking p {
  padding-left: 13%;
}
.networking-img {
  width: 13%;
  position: relative;
}
.networking-img img {
  position: absolute;
}
.networking-title {
  width: calc(100% - 310px);
  padding-left: 10px;
}

.break-title {
  width: 83%;
}

.tt-break h3 {
  width: 100%;
  padding: 0;
}

.tt-break h3 span {
  font-size: 1.6rem;
}

.break-lunch .key-reg {
  margin-top: 10px;
}

.break-coffee img {
  position: absolute;
  width: 40px;
  top: 20px;
}

.tt-meet {
  background-color: #B28FCF;
  color: #fff;
}

.tt-meet div {
  display: inline-block;
  vertical-align: middle;
}

.meet-ttl {
  width: 21%;
  padding: 8px;
}

.meet-dtl {
  width: 43%;
}

.meet-dtl p {
  display: inline-block;
  border-left: 1px solid #fff;
  padding: 8px;
  font-size: 1.3rem;
}

.meet-photo {
  width: 20%;
}

.timeTableNote {
  margin-top: 20px;
}

.l-timeTable {
  padding-bottom: 0;
}

.registerBtn {
  width: 100%;
  text-align: center;
  padding: 60px 0;
}

/* modal */
div.modal {
  display: none;
  color: #000;
}

.mdl-head p {
  display: inline-block;
}

.mdl-time {
  font-size: 80%;
}

.mdl-no {
  color: #fff;
  padding: 4px 18px;
  border-radius: 24px;
  font-size: 80%;
  margin: 0 10px;
}

.mdl-no.cat-kn {
  background-color: #7E45AF;
}

.mdl-no.cat-dd {
  background-color: #5A2A82;
}

.mdl-no.cat-so {
  background-color: #3980F5;
}

.mdl-no.cat-ip {
  background-color: #00A5A8;
}

.mdl-no.cat-v {
  background-color: #52AC5B;
}

.mdl-no.cat-s {
  background-color: #DF842F;
}

.mdl-no.cat-cd {
  background-color: #FDB71A;
}

.mdl-no.cat-test {
  background-color: #666E7F;
}

.mdl-no.cat-cd {
  background-color: #F0A897;
}

.mdl-no.cat-spd {
  background-color: #9063F6;
}

.mdl-no.cat-lunch {
  background-color: #F4D4B6;
}

.mdl-icon img {
  width: 20px;
}

.mdl-title h3 {
  font-size: 120%;
  /* font-weight: bold; */
  padding: 20px 0 8px;
}

.mdl-speaker {
  display: inline-block;
  width: 395px;
  padding-top: 15px;
}

.mdl-corp span {
  font-size: 90%;
}

.mdl-photo {
  display: inline-block;
  width: 30%;
  vertical-align: middle;
  padding-right: 15px;
}

@media screen and (max-width: 1024px) {
  .mdl-photo {
    width: 60%;
  }
}

.mdl-profile {
  display: inline-block;
  width: 69%;
  vertical-align: middle;
  line-height: 1.2;
}

.mdl-corp span {
  font-size: 80%;
}

.mdl-name {
  padding-top: 6px;
  font-size: 120%;
}

.mdl-topic {
  margin-top: 30px;
  border-top: 1px solid #7E45AF;
  text-align: center;
  line-height: 1;
}

.mdl-topic p {
  display: inline-block;
  background-color: #fff;
  padding: 0 8px;
  position: relative;
  top: -11px;
  font-size: 90%;
}

.mdl-solution {
  font-size: 90%;
  text-align: center;
}

.mdl-solution p {
  text-align: center;
}

.mdl-solution ul {
  padding-top: 10px;
}

.mdl-solution li {
  display: inline-block;
  border: 1px solid #878787;
  line-height: 1;
  padding: 4px 10px;
  font-size: 80%;
}

/* footer */
footer {
  background-color: #E6E6E6;
  padding: 40px 0;
  font-size: 1.2rem;
}

footer p {
  text-align: center;
  line-height: 2;
}

footer a {
  text-decoration: none;
}

footer .copyright {
  padding-top: 20px;
  font-size: 1rem;
}

/* Top */
.top-read {
  background-color: #5A2A82;
  background-image: url(../images/lead-bg.png);
  background-size: cover;
  background-position: top center;
  color: #fff;
  font-weight: bold;
  text-align: center;
  line-height: 1.4;
  font-size: 20px;
  padding: 20px;
  padding-bottom: 40px;
}

.top-read p {
  text-align: center;
  padding-top: 15px;
}

.top-read p+p {
  font-size: 16px;
  padding-bottom: 25px;
}

.top-content {
  padding: 40px 50px 0;
}

.top-reg {
  text-align: center;
  padding: 40px;
  font-size: 24px;
}

.top-read .top-reg {
  padding: 30px 0 20px;
}

.read {
  font-size: 24px;
  font-weight: bold;
  padding: 60px 20px 30px;
}

.top-content h2 {
  border-bottom: 1px solid #B4B4B4;
  font-size: 2.4rem;
  font-weight: bold;
  padding-bottom: 4px;
}

.top-content h2 img {
  width: 20px;
}

/* session */

.session {
  margin-bottom: 40px;
}

.session h3 {
  font-size: 24px;
  font-weight: bold;
  padding: 8px 30px 10px;
}

.session-body {
  padding: 30px;
}

.session-profile * {
  text-align: center;
}

.session-title {
  font-size: 24px;
  font-weight: bold;
}

.session-corp {
  font-size: 1.4rem;
}

.session-corp strong {
  font-size: 1.6rem;
}

.session-name {
  font-weight: bold;
}

.session-photo {
  margin: 20px 0;
}
.session-photo img {
  width: 200px;
}

.session-keynote h3 {
  background-color: #e5e5e5;
  color: #000;
  text-align: center;
  border-bottom: 5px solid #5A2A82;
}

.session-panel {
  box-shadow: 4px 4px 5px 0px rgba(0, 0, 0, 0.2);
}
.session-panel h3 {
  background-color: #5A2A82;
  color: #fff;
  text-align: center;
}

.session-panel .session-body {
  background: #DF842F;
  background: linear-gradient(15deg, rgba(223, 132, 47, 1) 0%, rgba(253, 201, 83, 1) 50%, rgba(223, 132, 47, 1) 100%);
}

.session-panel .session-title {
  text-align: center;
}

.session-panel-row {
  text-align: center;
}
.session-panel-row .session-profile {
  display: inline-block;
  width: 200px;
  margin: 20px 20px 0;
  vertical-align: top;
}
.session-academic {
  box-shadow: 4px 4px 5px 0px rgba(0, 0, 0, 0.2);
}
.session-academic h3 {
  background-color: #fdb71a;
  text-align: center;
}
.session-academic .session-title {
  background-color: #df842f;
  text-align: center;
  color: #fff;
  padding: 10px;
}
.session-academic .session-body {
  padding: 0;
}
.session-academic-row {
  padding: 20px;
  text-align: center;
  background: linear-gradient(0deg, rgba(229, 229, 229, 1) 0%, rgba(229, 229, 229, 0) 30%, rgba(229, 229, 229, 0) 100%);
}
.session-academic-title {
  color: #df842f;
  font-size: 24px;
  font-weight: bold;
  padding-bottom: 10px;
}

/* Outline */

.grad {
  background: linear-gradient(0deg, rgba(229, 229, 229, 0) 0%, rgba(229, 229, 229, .4) 100%);
  padding: 30px;
}
.outline-table {
  max-width: 8500px;
  margin: 0 auto 40px;
  font-size: 1.6rem;
}

.outline-table th {
  padding: 8px 10px;
  width: 100px;
  text-align-last: justify;
}

.outline-table td {
  padding: 8px 10px;
}

/* Access */
.access-row {
  padding: 40px 50px 0;
}

.access-text,
.access-map {
  display: inline-block;
  width: 49.5%;
  vertical-align: middle;
  padding: 10px;
  font-size: 1.6rem;
}

.access-text h3 {
  font-size: 2rem;
}

.access-walk {
  padding-top: 20px;
}

@media screen and (max-width: 1024px) {
  .access-text,
  .access-map {
    width: 100%;
  }
}

/* Advisory Committee */
.ac-cap {
  font-size: 1.6rem;
  text-align: center;
  padding: 10px 40px 20px;
}

.ac-row {
  font-size: 1.6rem;
  padding: 0 40px;
}

.ac-profile {
  display: inline-block;
  width: 49.5%;
  vertical-align: middle;
  padding: 6px;
}

.ac-corp {
  display: inline-block;
  width: 64.5%;
  vertical-align: middle;
  font-size: 85%;
}

.ac-name {
  display: inline-block;
  width: 34.5%;
  vertical-align: middle;
  font-size: 2rem;
  font-weight: bold;
  padding-left: 15px;
}

.ac-name span {
  font-size: 1.6rem;
  font-weight: bold;
}

.ac-notice {
  font-size: 1.2rem;
  text-align: right;
}

@media screen and (max-width: 1024px) {
  .ac-profile {
    width: 100%;
  }

  .ac-row {
    max-width: 640px;
    margin: 0 auto;
  }

  .ac-corp {
    width: calc(99% - 160px);
  }

  .ac-name {
    width: 160px;
  }
}
@media screen and (max-width: 610px) {
  .ac-corp,
  .ac-name {
    width: 100%;
    text-align: center;
  }
}

/* Sponsors */
#sponsors h3 {
  font-size: 2.4rem;
  font-weight: bold;
  text-align: center;
  padding: 40px 0 0;
}

.sponsor-row {
  text-align: center;
}

.sponsor-row li {
  display: inline-block;
  width: 250px;
  vertical-align: middle;
}

.sponsor-row img {
  display: block;
  object-fit: contain;
  width: 100%;
}

/* 2025 */
.venue div {
  /* display: inline-block; */
  vertical-align: top;
}
.venue small {
  font-size: 85%;
}
.venue-map {
  /* padding-left: 15px; */
  padding-top: 10px;
}
.timetablePage .read {
  padding-top: 0;
}

.lunch-b .row {
  display: flex;
}
.lunch-new {
  padding: 5px 10px;
  text-align: center;
}
.lunch-new p {
  background-color: #fff;
  border: 1px solid #000;
  padding: 10px;
  font-size: 12px;
  font-weight: normal;
}
.lunch-text {
  padding: 0 10px;
}
.lunch-text h3 {
  padding-bottom: 10px;
}
.lunch-name {
  padding-top: 10px;
}
.lunch-img img {
  width: 80px;
  height: inherit;
}
.lunch-table {
  border-collapse: separate;
  border-spacing: 8px;
}
.lunch-table td {
  background-color: #fff;
}

.lunch-table .tt-no p {
  padding: 4px 0 5px 5px;
}

.cat-lunch {
  border: 2px solid#7030A0;
}

.cat-lunch .tt-head {
  background-color: #7030A0;
}

.cat-lunch .tt-title+p {
  font-size: 12px;
  padding: 0 8px;
}
.cat-lunch .tt-corp {
  font-size: 12px;
  padding-top: 5px;
}