/* ----------------
reset
---------------- */
a, abbr, acronym, address, applet, article, aside, audio, b, blockquote, big, body, center, canvas, caption, cite, code, command, datalist, dd, del, details, dfn, dl, div, dt, em, embed, fieldset, figcaption, figure, font, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, keygen, label, legend, li, meter, nav, object, ol, output, p, pre, progress, q, s, samp, section, small, span, source, strike, strong, sub, sup, table, tbody, tfoot, thead, th, tr, tdvideo, tt, u, ul, var {
    background: transparent;
    border: 0 none;
    font-size: 100%;
    margin: 0;
    padding: 0;
    outline: 0;
    vertical-align: top;
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
table, table td {
    padding: 0;
    border: none;
    border-collapse: collapse;
}
img {
    vertical-align: top;
}
embed {
    vertical-align: top;
}
article, aside, audio, canvas, command, datalist, details, embed, figcaption, figure, footer, header, hgroup, keygen, meter, nav, output, progress, section, source, video {
    display: block;
}
mark, rp, rt, ruby, summary, time {
    display: inline;
}
input, textarea {
    border: 0;
    padding: 0;
    margin: 0;
    outline: 0;
}
iframe {
    border: 0;
    margin: 0;
    padding: 0;
}
input, textarea, select {
    margin: 0;
    padding: 0px;
}
/*-------------
 	general
-------------*/
html {
    -webkit-text-size-adjust: none;
}
@media screen and (min-width: 360px) {
    * {
        -webkit-text-size-adjust: none;
    }
}
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
html {
    overflow-x: hidden;
}
html, body {
    width: 100%;
    padding: 0;
    margin: 0;
    overflow-x: hidden;
}
body {
    background-color: #f4f5f7;
    color: #000000;
    font-family: 'Noto Sans JP', sans-serif;
    *font-size: small;
    *font: x-small;
    font-size: 15px;
    line-height: 2.2;
    letter-spacing: 0.03em;
    position: relative;
    overflow-x: hidden;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    padding: 0px 0px 0px 0px;
}
body#form-page {
    font-size: 16px !important;
}
body#thanks-page {
    font-size: 16px !important;
}
a {
    color: #000000;
    text-decoration: none;
    transition: opacity 0.6s ease-out;
    -webkit-transition: opacity 0.6s ease-out;
    -moz-transition: opacity 0.6s ease-out;
    -o-transition: opacity 0.6s ease-out;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
a:hover {
    text-decoration: none;
    opacity: 0.6;
}
img {
    max-width: 100%;
    height: auto;
}
video {
    max-width: 100%;
    height: auto;
}
.sp-use {
    display: none;
}
.pc-use {
    display: inline;
}
img.sp-type {
    display: none;
}
img.pc-type {
    display: block;
}
.sp-style {
    display: none !important;
}
.pc-style {
    display: flex !important;
}
.noto-sans-jp-<uniquifier > {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: <weight>;
    font-style: normal;
}
.montserrat-<uniquifier > {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: <weight>;
    font-style: normal;
}
/* ----------------
header
---------------- */
header {
    position: relative;
    width: 100%;
    background-color: #c4c9d2;
}
header .header-content {
    position: relative;
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
    padding: 12px 20px 12px 20px;
}
header .header-content .header-title-wrap {
    width: 20.703125%;
    max-width: 397.5px;
}
header .header-content .global-menu-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
}
header .header-content .global-menu-wrap .global-menu {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
}
header .header-content .global-menu-wrap .global-menu > div {
    position: relative;
}
header .header-content .global-menu-wrap .global-menu > div:not(:last-child) {
    padding: 0px 80px 0px 0px;
}
header .header-content .global-menu-wrap .global-menu > div:not(:last-child)::after {
    content: "";
    position: absolute;
    top: calc(50% - 4px);
    right: 36px;
    width: 8px;
    height: 8px;
    border-radius: 4px;
    background-color: #000000;
}
header .header-content .global-menu-wrap .global-menu > div a {
    display: block;
    line-height: 1.0;
    text-align: center;
}
header .header-content .global-menu-wrap .global-menu > div a .en {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 650;
    font-style: normal;
    font-size: 175%;
    letter-spacing: 0.05em;
}
header .header-content .global-menu-wrap .global-menu > div a .ja {
    padding: 2px 0px 0px 0px;
    font-weight: 500;
}
header .header-content .global-menu-wrap .header-contact {
    padding: 0px 0px 0px 70px;
}
header .header-content .global-menu-wrap .header-contact a {
    display: block;
    background-color: #ff2a00;
    color: #ffffff;
    padding: 18px 80px 18px 80px;
    border-radius: 50px;
    font-size: 118.75%;
    font-weight: 500;
    letter-spacing: 0.05em;
}
/* ----------------
main visual
---------------- */
.main-visual {
    position: relative;
    width: 100%;
    background-color: #1b002d;
}
.main-visual .visual-content {
    position: relative;
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    padding: 0px 0px 0px 0px;
}
.main-visual .visual-content .visual-img-wrap {}
.main-visual .visual-content .visual-date-wrap {
    display: block;
    position: absolute;
    bottom: 22%;
    left: 50%;
    width: 31.197917%;
    max-width: 599px;
    transform: translateY(0%) translateX(-50%);
}
/* ----------------
sp entry btn
---------------- */
.sp-entry-btn {
    display: none;
}
/* ----------------
concept
---------------- */
.concept-wrap {
    position: relative;
    width: 100%;
    background-color: #1b002d;
    color: #f4f5f7;
    z-index: 5;
}
.concept-wrap .concept-title {
    position: relative;
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    text-align: center;
    padding: 140px 0px 40px 0px;
    line-height: 1.0;
}
.concept-wrap .concept-title .en {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 650;
    font-style: normal;
    font-size: 362.5%;
    letter-spacing: 0.5em;
}
.concept-wrap .concept-title .ja {
    padding: 10px 0px 0px 0px;
    font-size: 175%;
    letter-spacing: 0.3em;
}
.concept-wrap .concept-content-wrap {
    position: relative;
    width: 100%;
    background-image: url("../img/concept-bg.png");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center top;
}
.concept-wrap .concept-content-wrap .concept-content {
    position: relative;
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    text-align: center;
    padding: 80px 0px 250px 0px;
}
.concept-wrap .concept-content-wrap .concept-content .concept-message {
    margin: 0 auto;
    width: 48.255208%;
    max-width: 926.5px;
}
.concept-wrap .concept-content-wrap .concept-content .concept-desc {
    letter-spacing: 0.1em;
    line-height: 2.3;
    font-size: 175%;
    padding: 50px 0px 0px 0px;
}
.concept-wrap .concept-content-wrap .concept-content .concept-desc p:not(:last-child) {
    padding-bottom: 2.0em;
}
/* ----------------
pickup speaker
---------------- */
.pickup-speaker-wrap {
    position: relative;
    width: 100%;
    z-index: 4;
}
.pickup-speaker-wrap .decoration01 {
    position: absolute;
    top: -14%;
    right: -7.3%;
    width: 50%;
}
.pickup-speaker-wrap .pickup-speaker-content {
    position: relative;
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    padding: 200px 0px 50px 0px;
}
.pickup-speaker-wrap .pickup-speaker-content .content-title {
    line-height: 1.0;
    padding: 0px 0px 80px 0px;
}
.pickup-speaker-wrap .pickup-speaker-content .content-title .en {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 650;
    font-style: normal;
    font-size: 625%;
    letter-spacing: 0.35em;
    color: #fd2b00;
}
.pickup-speaker-wrap .pickup-speaker-content .content-title .ja {
    display: inline-block;
    padding: 3px 20px 5px 40px;
    margin: -15px 0px 0px 0px;
    border-top-right-radius: 40px;
    border-bottom-right-radius: 40px;
    font-size: 187.5%;
    font-style: italic;
    letter-spacing: 0.3em;
    background-color: #fd2b00;
    color: #f4f5f7;
}
.pickup-speaker-wrap .pickup-speaker-content .content-main {
    padding: 0px 0px 0px 0px;
}
.pickup-speaker-wrap .pickup-speaker-content .content-main .speaker-wrap {
    position: relative;
    width: 85%;
    max-width: 1635px;
    display: flex;
    justify-content: center;
    gap: 40px;
    flex-wrap: nowrap;
    padding: 0px 0px 64px 5%;
    box-sizing: border-box;
}
.pickup-speaker-wrap .pickup-speaker-content .content-main .speaker-wrap::before {
    content: "";
    position: absolute;
    width: 112%;
    height: calc(100% - 40px);
    left: 0px;
    top: 20px;
    background-color: #fd2b00;
    border-top-right-radius: 9999px;
    border-bottom-right-radius: 9999px;
    z-index: 1;
}
.pickup-speaker-wrap .pickup-speaker-content .content-main .speaker-wrap .speaker-box {
    flex-basis: calc((100% - 40px)/2);
    max-width: calc((100% - 40px)/2);
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    flex-wrap: nowrap;
    z-index: 2;
}
.pickup-speaker-wrap .pickup-speaker-content .content-main .speaker-wrap .speaker-box .speaker-img {
    flex-basis: 320px;
    max-width: 320px;
    width: 320px;
}
.pickup-speaker-wrap .pickup-speaker-content .content-main .speaker-wrap .speaker-box .speaker-img img {
    width: 100%;
    height: auto;
    border: 2px solid #fd2b00;
    border-radius: 9999px;
}
.pickup-speaker-wrap .pickup-speaker-content .content-main .speaker-wrap .speaker-box .speaker-detail {
    flex-basis: calc(100% - 320px);
    max-width: calc(100% - 320px);
    padding: 5px 0px 12px 5%;
    box-sizing: border-box;
    color: #ffffff;
}
.pickup-speaker-wrap .pickup-speaker-content .content-main .speaker-wrap .speaker-box .speaker-detail .company-logo {
    width: auto;
    height: 40px;
    padding: 0px 0px 5px 0px;
}
.pickup-speaker-wrap .pickup-speaker-content .content-main .speaker-wrap .speaker-box .speaker-detail .speaker-name {
    font-size: 220%;
    font-weight: 600;
    letter-spacing: 0.2em;
}
.pickup-speaker-wrap .pickup-speaker-content .content-main .speaker-wrap .speaker-box .speaker-detail .speaker-name span {
    display: inline-block;
    font-size: 55.55%;
    font-weight: 400;
    vertical-align: bottom;
    margin: 0px 0px 8px 0px;
}
.pickup-speaker-wrap .pickup-speaker-content .content-main .speaker-wrap .speaker-box .speaker-detail .speaker-post {
    font-size: 88%;
    line-height: 1.5;
}
.pickup-speaker-wrap .pickup-speaker-content .content-main .speaker-wrap .speaker-box .speaker-detail .todetail-btn01 {
    padding: 40px 0px 0px 0px;
}
.pickup-speaker-wrap .pickup-speaker-content .content-main .speaker-wrap .speaker-box .speaker-detail .todetail-btn01 a {
    display: block;
    background-color: #51296d;
    color: #ffffff;
    font-weight: 500;
    font-size: 118.75%;
    padding: 13px 0px 15px 0px;
    border-radius: 9999px;
    text-align: center;
    max-width: 380px;
}

/* ----------------
normal speaker
---------------- */
.normal-speaker-wrap {
    position: relative;
    width: 100%;
    z-index: 3;
}
.normal-speaker-wrap .decoration01 {
    position: absolute;
    top: -54%;
    right: -7.3%;
    width: 50%;
}
@media screen and (max-width: 768px) {
  .normal-speaker-wrap .decoration01 {
      display: none;
  }
}
.normal-speaker-wrap .decoration02 {
    position: absolute;
    top: -15.6%;
    left: -30%;
    width: 74%;
}
.normal-speaker-wrap .decoration03 {
    position: absolute;
    bottom: -13%;
    right: -16%;
    width: 53%;
}
.normal-speaker-wrap .speaker-content {
    position: relative;
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    padding: 200px 0px 120px 0px;
    text-align: right;
}
.normal-speaker-wrap .speaker-content .content-title {
    line-height: 1.0;
    padding: 0px 0px 60px 0px;
}
.normal-speaker-wrap .speaker-content .content-title .en {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 650;
    font-style: normal;
    font-size: 625%;
    letter-spacing: 0.35em;
    color: #fd2b00;
    padding: 0px 8% 0px 0px;
}
.normal-speaker-wrap .speaker-content .content-title .ja {
    display: inline-block;
    padding: 3px 10% 5px 40px;
    margin: -15px 0px 0px 0px;
    border-top-left-radius: 40px;
    border-bottom-left-radius: 40px;
    font-size: 187.5%;
    font-style: italic;
    letter-spacing: 0.3em;
    background-color: #fd2b00;
    color: #f4f5f7;
}
.normal-speaker-wrap .speaker-content .content-main {
    text-align: center;
    padding: 0px 0px 0px 0px;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap {
    position: relative;
    width: 85%;
    margin-left: 15%;
    max-width: 1635px;
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    padding: 0px 7% 0px 0px;
    box-sizing: border-box;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap.four-type {
    width: calc(84% - 260px);
    margin-left: calc(16% + 260px);
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap::before {
    content: "";
    position: absolute;
    width: 112%;
    height: 105%;
    left: -12%;
    top: 30px;
    background-color: #ffffff;
    border-top: 2px solid #fd2b00;
    border-left: 2px solid #fd2b00;
    border-bottom: 2px solid #fd2b00;
    border-top-left-radius: 9999px;
    border-bottom-left-radius: 9999px;
    z-index: 1;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap .speaker-box {
    flex-basis: 260px;
    max-width: 260px;
    z-index: 2;
    display: flex;
    flex-direction: column;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap .speaker-box .speaker-img {
    position: relative;
    width: 100%;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap .speaker-box .speaker-img .person-img {
    width: 100%;
    max-width: 210px;
    margin: 0 auto;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap .speaker-box .speaker-img .person-img img {
    border: 2px solid #fd2b00;
    border-radius: 9999px;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap .speaker-box .speaker-img .company-logo {
    position: absolute;
    bottom: 0px;
    left: 0px;
    width: 33%;
    vertical-align: bottom;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap .speaker-box .speaker-img .company-logo.saison {
    width: 34%;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap .speaker-box .speaker-img .company-logo.albion {
    width: 43%;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap .speaker-box .speaker-img .company-logo.jera {
    width: 33%;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap .speaker-box .speaker-img .company-logo.chubu {
    width: 35%;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap .speaker-box .speaker-img .company-logo.vip {
    width: 73%;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap .speaker-box .speaker-img .company-logo.mtg {
    width: 36%;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap .speaker-box .speaker-img .company-logo.unicharm {
    width: 45%;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap .speaker-box .speaker-img .company-logo.santen {
    width: 39%;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap .speaker-box .speaker-img .company-logo.kirin {
    width: 47%;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap .speaker-box .speaker-img .company-logo.legalon {
    width: 50%;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap .speaker-box .speaker-img .company-logo.panasonic {
    width: 50%;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap .speaker-box .speaker-img .company-logo img {
    border: 2px solid #ffffff;
    vertical-align: bottom;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap .speaker-box .speaker-detail {
    position: relative;
    width: 100%;
    padding: 10px 0px 0px 0px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap .speaker-box .speaker-detail .speaker-name {
    font-size: 175%;
    font-weight: 600;
    letter-spacing: 0.1em;
    line-height: 1.5;
    padding: 0px 0px 0px 10px;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap .speaker-box .speaker-detail .speaker-name span {
    display: inline-block;
    font-size: 55.55%;
    font-weight: 400;
    vertical-align: bottom;
    margin: 0px 0px 5px 0px;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap .speaker-box .speaker-detail .speaker-post {
    font-size: 87.5%;
    line-height: 1.8;
    flex-grow: 1;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap .speaker-box .speaker-detail .todetail-btn02 {
    padding: 15px 0px 0px 0px;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap .speaker-box .speaker-detail .todetail-btn02 a {
    display: block;
    background-color: #51296d;
    color: #ffffff;
    font-weight: 500;
    font-size: 100%;
    padding: 10px 0px 12px 0px;
    border-radius: 9999px;
    text-align: center;
    max-width: 240px;
    margin: 0 auto;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap.even {
    margin-top: 120px;
    margin-left: 0%;
    padding: 0px 0px 0px 7%;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap.even::before {
    right: -12%;
    left: 0%;
    border-left: none;
    border-right: 2px solid #fd2b00;
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
    border-top-right-radius: 9999px;
    border-bottom-right-radius: 9999px;
}
.normal-speaker-wrap .speaker-content .content-main .speaker-wrap.odd {
    margin-top: 120px;
}
/* ----------------
time table
---------------- */
.time-table-wrap {
    position: relative;
    width: 100%;
    background-color: #f4f5f7;
    z-index: 2;
}
.time-table-wrap .decoration04 {
    position: absolute;
    top: 9%;
    left: -22%;
    width: 81%;
}
.time-table-wrap .decoration05 {
    position: absolute;
    top: 44%;
    right: 3%;
    width: 51%;
}
.time-table-wrap .decoration06 {
    position: absolute;
    bottom: 26%;
    left: 7%;
    width: 31%;
}
.time-table-wrap .decoration07 {
    position: absolute;
    bottom: 3%;
    right: -12%;
    width: 62%;
}
.time-table-wrap .time-table-content {
    position: relative;
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    padding: 200px 0px 50px 0px;
}
.time-table-wrap .time-table-content .content-title {
    line-height: 1.0;
    padding: 0px 0px 50px 0px;
}
.time-table-wrap .time-table-content .content-title .en {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 650;
    font-style: normal;
    font-size: 625%;
    letter-spacing: 0.35em;
    color: #fd2b00;
    padding: 0px 0px 0px 8%;
}
.time-table-wrap .time-table-content .content-title .ja {
    display: inline-block;
    padding: 3px 60px 5px 100px;
    margin: -15px 0px 0px 0px;
    border-top-right-radius: 40px;
    border-bottom-right-radius: 40px;
    font-size: 187.5%;
    font-style: italic;
    letter-spacing: 0.3em;
    background-color: #fd2b00;
    color: #f4f5f7;
}
.time-table-wrap .time-table-content .content-main {
    position: relative;
    width: 100%;
    max-width: 1270px;
    padding: 0px 0px 0px 0px;
    margin: 0 auto;
}
.time-table-wrap .time-table-content .content-main .time-table-block {
    width: 100%;
    padding: 0px 0px 45px 0px;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-display {
    position: relative;
    font-size: 250%;
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 650;
    font-style: normal;
    letter-spacing: 0.2em;
    padding: 0px 0px 0px 50px;
    color: #51296d;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-display::before {
    content: "";
    position: absolute;
    top: calc(50% - 10px);
    left: 0px;
    width: 20px;
    height: 20px;
    border-radius: 10px;
    background-color: #51296d;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-display.red {
    color: #fd2b00;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-display.red::before {
    background-color: #fd2b00;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body01 {
    position: relative;
    width: 100%;
    background-color: #ffffff;
    border: 2px solid #fd2b00;
    text-align: center;
    font-size: 225%;
    font-weight: 450;
    letter-spacing: 0.1em;
    color: #fd2b00;
    padding: 75px 0px 75px 0px;
    border-radius: 9999px;
    box-shadow: 8px 8px 0px 0px #fd2b00;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body02 {
    position: relative;
    width: 100%;
    background-color: #51296d;
    border: 2px solid #e4d2ff;
    padding: 95px 85px 128px 85px;
    box-shadow: 8px 8px 0px 0px #e4d2ff;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body02 .session-category {
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    background-color: #e4d2ff;
    color: #51296d;
    font-size: 150%;
    font-weight: 550;
    padding: 5px 75px 5px 75px;
    letter-spacing: 0.3em;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body02 .flex-box {
    display: flex;
    gap: 40px;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body02 .speaker-box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
    color: #ffffff;
    width: calc((100% - 40px)/2)
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body02 .speaker-box .speaker-img {
    position: relative;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body02 .speaker-box .company-logo {
    position: absolute;
    left: 0;
    bottom: 0;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body02 .speaker-box .company-logo img {
    border-radius: 0!important;
    border: 0!important;
    width: auto;
    height: 40px;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body02 .speaker-box .speaker-img {
    flex-basis: 240px;
    max-width: 240px;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body02 .speaker-box .speaker-img img {
    border: 2px solid #ffffff;
    border-radius: 9999px;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body02 .speaker-box .speaker-desc {
    flex-basis: calc(100% - 240px);
    max-width: calc(100% - 240px);
    padding: 0px 0px 0px 40px;
    box-sizing: border-box;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body02 .session-title {
    color: #fff;
    font-size: 250%;
    font-weight: 700;
    letter-spacing: 0.07em;
    line-height: 1.5;
    padding: 0px 0px 30px 0px;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body02 .speaker-box .speaker-desc .online-stage {
    font-size: 106.25%;
    letter-spacing: 0.1em;
    line-height: 1.8;
    padding: 5px 15px 5px 15px;
    border: 1px solid rgba(255, 255, 255, 0.50);
    display: inline-block;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body02 .speaker-box .speaker-desc .speaker-name {
    font-size: 220%;
    font-weight: 600;
    letter-spacing: 0.15em;
    line-height: 1.5;
    padding: 5px 0px 0px 0px;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body02 .speaker-box .speaker-desc .speaker-name span {
    display: inline-block;
    font-size: 55.55%;
    font-weight: 400;
    vertical-align: bottom;
    margin: 0px 0px 5px 0px;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body02 .speaker-box .speaker-desc .speaker-post {
    font-size: 88%;
    letter-spacing: 0.1em;
    line-height: 1.8;
    padding: 10px 0px 0px 0px;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body02 .todetail-btn03 {
    display: block;
    position: absolute;
    right: 30px;
    bottom: 30px;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body02 .todetail-btn03 a {
    display: block;
    background-color: #fd2b00;
    color: #ffffff;
    padding: 18px 80px 18px 80px;
    border-radius: 50px;
    font-size: 118.75%;
    font-weight: 600;
    letter-spacing: 0.05em;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 {
    position: relative;
    width: 100%;
    background-color: #fff0ed;
    border: 2px solid #fd2b00;
    padding: 45px 85px 155px 55px;
    box-shadow: 8px 8px 0px 0px #fd2b00;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03.multiple-columns {
    padding: 45px 85px 85px 55px;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .session-title {
    font-size: 250%;
    font-weight: 700;
    letter-spacing: 0.07em;
    line-height: 1.5;
    padding: 0px 0px 30px 0px;
    color: #fd2b00;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .speaker-box-wrap {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: nowrap;
    padding: 20px 0px 0px 0px;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03.multiple-columns .speaker-box-wrap {
    flex-wrap: wrap;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .speaker-box-wrap .speaker-box {
    flex-basis: 49%;
    max-width: 49%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03.multiple-columns .speaker-box-wrap .speaker-box {
    padding: 0px 0px 40px 0px;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .speaker-box-wrap .speaker-box .speaker-img {
    flex-basis: 37%;
    max-width: 37%;
    position: relative;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .speaker-box-wrap .speaker-box .speaker-img .person-img {
    width: 100%;
    margin: 0 auto;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .speaker-box-wrap .speaker-box .speaker-img .person-img img {
    border: 2px solid #fd2b00;
    border-radius: 9999px;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .speaker-box-wrap .speaker-box .speaker-img .company-logo {
    position: absolute;
    bottom: -5px;
    left: 0px;
    width: 50%;
    vertical-align: bottom;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .speaker-box-wrap .speaker-box .speaker-img .company-logo img {
    vertical-align: bottom;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .speaker-box-wrap .speaker-box .speaker-img .company-logo.saison {
    width: 34%;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .speaker-box-wrap .speaker-box .speaker-img .company-logo.albion {
    width: 43%;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .speaker-box-wrap .speaker-box .speaker-img .company-logo.jera {
    width: 33%;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .speaker-box-wrap .speaker-box .speaker-img .company-logo.chubu {
    width: 35%;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .speaker-box-wrap .speaker-box .speaker-img .company-logo.vip {
    width: 73%;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .speaker-box-wrap .speaker-box .speaker-img .company-logo.mtg {
    width: 36%;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .speaker-box-wrap .speaker-box .speaker-img .company-logo.unicharm {
    width: 45%;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .speaker-box-wrap .speaker-box .speaker-img .company-logo.santen {
    width: 39%;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .speaker-box-wrap .speaker-box .speaker-img .company-logo.kirin {
    width: 47%;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .speaker-box-wrap .speaker-box .speaker-img .company-logo.legalon {
    width: 50%;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .speaker-box-wrap .speaker-box .speaker-desc {
    flex-basis: 58%;
    max-width: 58%;
    padding: 0px 0px 0px 0px;
    box-sizing: border-box;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .speaker-box-wrap .speaker-box .speaker-desc .speaker-name {
    font-size: 237.5%;
    font-weight: 600;
    letter-spacing: 0.1em;
    line-height: 1.5;
    padding: 0px 0px 0px 0px;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .speaker-box-wrap .speaker-box .speaker-desc .speaker-name span {
    display: inline-block;
    font-size: 55.55%;
    font-weight: 400;
    vertical-align: bottom;
    margin: 0px 0px 5px 0px;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .speaker-box-wrap .speaker-box .speaker-desc .speaker-name span.moderator {
    display: block;
    font-size: 30%;
    letter-spacing: 0.1em;
    margin: 0px 0px 0px 0px;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .speaker-box-wrap .speaker-box .speaker-desc .speaker-post {
    font-size: 106.25%;
    letter-spacing: 0.1em;
    line-height: 1.8;
    padding: 10px 0px 0px 0px;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .todetail-btn04 {
    display: block;
    position: absolute;
    right: 30px;
    bottom: 30px;
}
.time-table-wrap .time-table-content .content-main .time-table-block .time-table-body03 .todetail-btn04 a {
    display: block;
    background-color: #51296d;
    color: #ffffff;
    padding: 18px 80px 18px 80px;
    border-radius: 50px;
    font-size: 118.75%;
    font-weight: 600;
    letter-spacing: 0.05em;
}
/* ----------------
social gathering
---------------- */
.social-gathering-wrap {
    position: relative;
    width: 100%;
    background-color: #f4f5f7;
    z-index: 1;
}
.social-gathering-wrap .decoration08 {
    position: absolute;
    top: 4%;
    left: 8%;
    width: 33.3%;
}
.social-gathering-wrap .decoration09 {
    position: absolute;
    bottom: -2%;
    right: 6%;
    width: 20%;
}
.social-gathering-wrap .decoration13 {
    position: absolute;
    bottom: 10%;
    right: -3%;
    width: 9%;
}
.social-gathering-wrap .social-gathering-content {
    position: relative;
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    padding: 280px 0px 175px 0px;
    text-align: right;
}
.social-gathering-wrap .social-gathering-content .social-gathering-title {
    line-height: 1.0;
    padding: 0px 0px 0px 0px;
}
.social-gathering-wrap .social-gathering-content .social-gathering-title .en {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 650;
    font-style: normal;
    font-size: 625%;
    letter-spacing: 0.35em;
    color: #fd2b00;
    padding: 0px 8% 0px 0px;
}
.social-gathering-wrap .social-gathering-content .social-gathering-title .ja {
    display: inline-block;
    padding: 3px 10% 5px 40px;
    margin: -15px 0px 0px 0px;
    border-top-left-radius: 40px;
    border-bottom-left-radius: 40px;
    font-size: 187.5%;
    font-style: italic;
    letter-spacing: 0.3em;
    background-color: #fd2b00;
    color: #f4f5f7;
}
.social-gathering-wrap .social-gathering-content .content-main {
    text-align: left;
    width: 100%;
    margin: 0 auto;
    padding: 0px 70px 0px 70px;
}
.social-gathering-wrap .social-gathering-content .content-main .time-display {
    position: relative;
    font-size: 418.75%;
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 650;
    font-style: normal;
    letter-spacing: 0.2em;
    padding: 0px 0px 0px 70px;
    color: #fd2b00;
    line-height: 1.0;
    margin: 0px 0px 0px 5.5%;
}
.social-gathering-wrap .social-gathering-content .content-main .time-display::before {
    content: "";
    position: absolute;
    top: calc(50% - 15px);
    left: 0px;
    width: 30px;
    height: 30px;
    border-radius: 15px;
    background-color: #fd2b00;
}
.social-gathering-wrap .social-gathering-content .content-main .gathering-body {
    padding: 30px 30px 0px 0px;
    text-align: right;
}
.social-gathering-wrap .social-gathering-content .content-main .gathering-body .gathering-img-wrap {
    position: relative;
    display: inline-block;
    background-color: #ffffff;
    border: 2px solid #51296d;
    border-radius: 9999px;
    padding: 50px;
    width: 100%;
    max-width: 1264px;
}
.social-gathering-wrap .social-gathering-content .content-main .gathering-body .gathering-img-wrap .gathering-img {}
.social-gathering-wrap .social-gathering-content .content-main .gathering-body .gathering-img-wrap .gathering-img img {}
.social-gathering-wrap .social-gathering-content .content-main .gathering-body .gathering-img-wrap .gathering-desc {
    display: block;
    position: absolute;
    bottom: -120px;
    left: -30%;
    width: 1125px;
}
.social-gathering-wrap .social-gathering-content .content-main .gathering-body .gathering-img-wrap .gathering-desc .gathering-desc-content {
    display: block;
    position: relative;
    background-color: #ffffff;
    border-radius: 9999px;
    text-align: left;
    border: 2px solid #fd2b00;
    font-size: 150%;
    width: 100%;
    padding: 90px 0px 90px 0px;
    box-sizing: border-box;
    line-height: 2.5;
    letter-spacing: 0.04em;
    z-index: 2;
}
.social-gathering-wrap .social-gathering-content .content-main .gathering-body .gathering-img-wrap .gathering-desc .gathering-desc-content p {
    width: 90%;
    max-width: 765px;
    margin: 0 auto;
}
.social-gathering-wrap .decoration10 {
    position: absolute;
    top: -5%;
    left: 22%;
    width: 11%;
    z-index: 2;
}
.social-gathering-wrap .decoration11 {
    position: absolute;
    top: 32%;
    left: -7%;
    width: 14%;
    z-index: 3;
}
.social-gathering-wrap .decoration12 {
    position: absolute;
    bottom: -20%;
    right: 13%;
    width: 14%;
    z-index: 1;
}
/* ----------------
hall map
---------------- */
.hall-map-wrap {
    position: relative;
    width: 100%;
    background-color: #f4f5f7;
}
.hall-map-wrap .hall-map-content {
    position: relative;
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    padding: 200px 0px 0px 0px;
}
.hall-map-wrap .hall-map-content .content-title {
    line-height: 1.0;
    padding: 0px 0px 80px 0px;
}
.hall-map-wrap .hall-map-content .content-title .en {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 650;
    font-style: normal;
    font-size: 625%;
    letter-spacing: 0.35em;
    color: #fd2b00;
    margin: 0px 0px 0px 46%;
}
.hall-map-wrap .hall-map-content .content-title .ja {
    display: inline-block;
    padding: 3px 30px 5px 70%;
    margin: -15px 0px 0px 0px;
    border-top-right-radius: 40px;
    border-bottom-right-radius: 40px;
    font-size: 187.5%;
    font-style: italic;
    letter-spacing: 0.3em;
    background-color: #fd2b00;
    color: #f4f5f7;
}
.hall-map-wrap .hall-map-content .content-main {
    width: 100%;
    max-width: 1483px;
    padding: 0px 0px 0px 0px;
    margin: 0 auto;
}
/* ----------------
outline
---------------- */
.outline-wrap {
    position: relative;
    width: 100%;
    background-color: #f4f5f7;
}
.outline-wrap .outline-content {
    position: relative;
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    padding: 200px 0px 50px 0px;
    text-align: right;
}
.outline-wrap-bottom .outline-content {
    padding: 0 0px 80px 0px;
}
.outline-wrap .outline-content .content-title {
    line-height: 1.0;
    padding: 0px 0px 60px 0px;
}
.outline-wrap .outline-content .content-title .en {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 650;
    font-style: normal;
    font-size: 625%;
    letter-spacing: 0.35em;
    color: #fd2b00;
    padding: 0px 29% 0px 0px;
}
.outline-wrap .outline-content .content-title .ja {
    display: inline-block;
    padding: 3px 28% 5px 40px;
    margin: -15px 0px 0px 0px;
    border-top-left-radius: 40px;
    border-bottom-left-radius: 40px;
    font-size: 187.5%;
    font-style: italic;
    letter-spacing: 0.3em;
    background-color: #fd2b00;
    color: #f4f5f7;
}
.outline-wrap .outline-content .content-main {
    position: relative;
    width: 100%;
    max-width: 1632px;
    padding: 50px 0px 0px 0px;
    margin: 0 auto;
}
.outline-wrap .outline-content .content-main .outline-block {
    width: 100%;
    background-color: #ffffff;
    border: 2px solid #c2ced5;
    padding: 22.5px 80px 22.5px 120px;
    margin: 0px 0px 20px 0px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
    border-radius: 30px;
    text-align: left;
    box-sizing: border-box;
}
.outline-wrap .outline-content .content-main .outline-block .outline-title {
    font-size: 175%;
    font-weight: 750;
    color: #fd2b00;
    flex-basis: 330px;
    max-width: 330px;
    text-align: center;
    padding: 0px 140px 0px 0px;
    box-sizing: border-box;
    letter-spacing: 0.1em;
}
.outline-wrap .outline-content .content-main .outline-block .outline-body {
    font-size: 175%;
    font-weight: 400;
    color: #223b4a;
    flex-basis: calc(100% - 330px);
    max-width: calc(100% - 330px);
    line-height: 2.0;
    padding: 33px 0px 33px 120px;
    box-sizing: border-box;
    letter-spacing: 0.1em;
    background-image: url("../img/outline-border.png");
    background-repeat: repeat-y;
    background-position: left top;
    background-size: 6px 108px;
}
.outline-wrap .outline-content .content-main .outline-block .outline-body > p:not(:last-child) {
    margin-bottom: 2.0em;
}
.outline-wrap .outline-content .content-main .access-block {
    width: 100%;
    background-color: #ffffff;
    border: 2px solid #c2ced5;
    padding: 90px 125px 80px 125px;
    margin: 80px 0px 0px 0px;
    border-radius: 30px;
    text-align: left;
    box-sizing: border-box;
}
.outline-wrap .outline-content .content-main .access-block .access-map-wrap {
    position: relative;
    width: 100%;
    height: 555.5px;
}
.outline-wrap .outline-content .content-main .access-block .access-map-wrap iframe {
    position: relative;
    width: 100%;
    height: 100%;
}
.outline-wrap .outline-content .content-main .access-block .address-wrap {
    position: relative;
    width: 100%;
    padding: 35px 0px 0px 0px;
    color: #223b4a;
}
.outline-wrap .outline-content .content-main .access-block .address-wrap .building-name {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 650;
    font-style: normal;
    position: relative;
    width: 100%;
    font-size: 375%;
    line-height: 1.5;
    letter-spacing: 0.05em;
}
.outline-wrap .outline-content .content-main .access-block .address-wrap .address-info {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: nowrap;
}
.outline-wrap .outline-content .content-main .access-block .address-wrap .address-info .address-desc {
    font-size: 150%;
    letter-spacing: 0.1em;
    padding: 0px 30px 0px 0px;
}
.outline-wrap .outline-content .content-main .access-block .address-wrap .address-info a {
    display: block;
    color: #ffffff;
    background-color: #fd2b00;
    padding: 9px 45px 11px 45px;
    border-radius: 9999px;
}
.outline-wrap .outline-content .content-main .access-block .address-wrap .address-info a p {
    font-size: 93.75%;
    font-weight: 500;
    background-image: url("../img/to-gmap-arrow.png");
    background-repeat: no-repeat;
    background-size: 17px 17px;
    background-position: right center;
    padding: 0px 30px 0px 0px;
}
.outline-wrap .outline-content .content-main .access-block .address-wrap .train-info {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: nowrap;
    padding: 15px 0px 0px 0px;
}
.outline-wrap .outline-content .content-main .access-block .address-wrap .train-info .train-info-title {
    position: relative;
    font-size: 150%;
    letter-spacing: 0.1em;
    padding: 0px 70px 0px 0px;
}
.outline-wrap .outline-content .content-main .access-block .address-wrap .train-info .train-info-title::after {
    content: '';
    position: absolute;
    top: 22px;
    right: 31px;
    background-color: #fd2b00;
    width: 12px;
    height: 12px;
    border-radius: 6px;
}
.outline-wrap .outline-content .content-main .access-block .address-wrap .train-info .train-info-detail {
    font-size: 137.5%;
    letter-spacing: 0.05em;
    padding: 5px 0px 0px 0px;
}
.outline-wrap .outline-content .content-main .banner-block {
    width: 100%;
    padding: 10px 0 0px;
    margin: 100px 0px 0px 0px;
    text-align: center;
    box-sizing: border-box;
}
.banner-block .pc-banner {
    display: block;
    position: relative;
    margin: 0 auto;
}
.banner-block .pc-banner a {
    position: absolute;
    display: block;
    width: 636px;
    height: 38px;
    left: 42px;
    bottom: 80px;
    z-index: 2;
}
.banner-block .sp-banner {
    display: none;
}
.banner-block a:hover {
    opacity: 0.7;
}
/* ----------------
foot visual
---------------- */
.foot-visual {
    position: relative;
    width: 100%;
    background-color: #1b002d;
}
.foot-visual .visual-content {
    position: relative;
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    padding: 0px 0px 0px 0px;
}
.foot-visual .visual-content .visual-img-wrap {}
.foot-visual .visual-content .visual-message-wrap {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 42.291667%;
    max-width: 812px;
    transform: translateY(-40%) translateX(-50%);
}
/* ----------------
footer
---------------- */
footer {
    width: 100%;
    background-color: #000000;
    padding: 0px 0px 125px 0px;
}
footer .footer-content {
    color: #ffffff;
    text-align: center;
    padding: 25px 0px 30px 0px;
}
footer .footer-content .footer-menu {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
}
footer .footer-content .footer-menu a {
    color: #ffffff;
}
footer .footer-content .footer-menu > div {
    position: relative;
    padding: 0px 30px 0px 30px;
}
footer .footer-content .footer-menu > div:not(:last-child)::after {
    content: "";
    position: absolute;
    right: 0px;
    top: calc(50% - 7px);
    width: 1px;
    height: 14px;
    background-color: #ffffff;
}
footer .footer-content .footer-logo {
    padding: 40px 0px 0px 0px;
    width: 11.953125%;
    max-width: 229.5px;
    margin: 0 auto;
}
footer .footer-content .footer-copyright {
    padding: 15px 0px 0px 0px;
    text-align: center;
    font-size: 87.5%;
}
/* ----------------
modal
---------------- */
.modal-window-wrap {
    position: relative;
    width: 96%;
    max-width: 1640px;
    margin: 0 auto;
    background-color: #ffffff;
    border: 2px solid #fd2b00;
    box-shadow: 8px 8px 0px 0px #fd2b00;
}
.modal-window-wrap .session-category {
    display: block;
    position: absolute;
    top: -2px;
    left: -2px;
    background-color: #51296c;
    color: #ffffff;
    font-size: 150%;
    font-weight: 550;
    padding: 5px 75px 5px 75px;
    letter-spacing: 0.3em;
    z-index: 10;
}
.modal-window-wrap .modal-content-wrap {
    display: flex;
    justify-content: space-between;
    /*align-items: center;*/
    flex-wrap: nowrap;
    padding: 0px 0px 0px 0px;
}
.modal-window-wrap .modal-content-wrap .speaker-info-wrap {
    flex-basis: 750px;
    max-width: 750px;
    background-color: #fff0ed;
    padding: 60px 30px 30px 50px;
    box-sizing: border-box;
    position: relative;
}
.modal-window-wrap .modal-content-wrap .speaker-info-wrap::before {
    content: "";
    position: absolute;
    left: 0px;
    top: 25px;
    width: 6px;
    height: calc(100% - 50px);
    background-image: url("../img/outline-border.png");
    background-repeat: repeat-y;
    background-size: 6px 108px;
    background-position: left top;
    z-index: 2;
}
.modal-window-wrap .modal-content-wrap .speaker-info-wrap .slide-content {
    display: block;
    max-height: 550px;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 0px 10px 0px 0px;
}
.modal-window-wrap .modal-content-wrap .speaker-info-wrap .speaker-box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
    padding: 0px 0px 40px 0px;
}
.modal-window-wrap .modal-content-wrap .speaker-info-wrap .speaker-box .speaker-img {
    flex-basis: 37%;
    max-width: 37%;
}
.modal-window-wrap .modal-content-wrap .speaker-info-wrap .speaker-box .speaker-img img {
    border: 2px solid #fd2b00;
    border-radius: 9999px;
}
.modal-window-wrap .modal-content-wrap .speaker-info-wrap .speaker-box .speaker-desc {
    flex-basis: 58%;
    max-width: 58%;
    padding: 0px 0px 0px 0px;
    box-sizing: border-box;
}
.modal-window-wrap .modal-content-wrap .speaker-info-wrap .speaker-box .speaker-desc .speaker-moderator {
    font-size: 106.25%;
    letter-spacing: 0.1em;
    line-height: 1.8;
    padding: 0px 0px 0px 0px;
}
.modal-window-wrap .modal-content-wrap .speaker-info-wrap .speaker-box .speaker-desc .speaker-name {
    font-size: 250%;
    font-weight: 600;
    letter-spacing: 0.15em;
    line-height: 1.5;
    padding: 0px 0px 0px 0px;
}
.modal-window-wrap .modal-content-wrap .speaker-info-wrap .speaker-box .speaker-desc .speaker-name span {
    display: inline-block;
    font-size: 55.55%;
    font-weight: 400;
    vertical-align: bottom;
    margin: 0px 0px 5px 0px;
}
.modal-window-wrap .modal-content-wrap .speaker-info-wrap .speaker-box .speaker-desc .speaker-post {
    font-size: 112.5%;
    letter-spacing: 0.1em;
    line-height: 1.8;
    padding: 10px 0px 0px 0px;
}
.modal-window-wrap .modal-content-wrap .speaker-info-wrap .speaker-prof {
    font-size: 112.5%;
    padding: 0px 0px 40px 0px;
}
.modal-window-wrap .modal-content-wrap .speaker-info-wrap .speaker-btn-block {
    display: none;
    width: 100%;
    padding: 20px 0px 0px 0px;
    text-align: center;
}
.modal-window-wrap .modal-content-wrap .speaker-info-wrap .speaker-btn-block .entry-btn {
    display: inline-block;
}
.modal-window-wrap .modal-content-wrap .speaker-info-wrap .speaker-btn-block .entry-btn a {
    display: inline-block;
    background-color: #fd2b00;
    color: #ffffff;
    padding: 18px 80px 18px 80px;
    border-radius: 50px;
    font-size: 118.75%;
    font-weight: 600;
    letter-spacing: 0.05em;
}
.modal-window-wrap .modal-content-wrap .session-info-wrap {
    flex-basis: calc(100% - 750px);
    max-width: calc(100% - 750px);
    padding: 90px 55px 90px 55px;
    box-sizing: border-box;
}
.modal-window-wrap .modal-content-wrap .session-info-wrap .time-display-block {
    width: 100%;
    padding: 0px 0px 5px 0px;
}
.modal-window-wrap .modal-content-wrap .session-info-wrap .time-display-block .time-display {
    position: relative;
    font-size: 250%;
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 650;
    font-style: normal;
    letter-spacing: 0.2em;
    padding: 0px 0px 0px 50px;
    color: #fd2b00;
}
.modal-window-wrap .modal-content-wrap .session-info-wrap .time-display-block .time-display::before {
    content: "";
    position: absolute;
    top: calc(50% - 10px);
    left: 0px;
    width: 20px;
    height: 20px;
    border-radius: 10px;
    background-color: #fd2b00;
}
.modal-window-wrap .modal-content-wrap .session-info-wrap .session-theme-block {
    width: 100%;
    padding: 0px 0px 100px 0px;
}
.modal-window-wrap .modal-content-wrap .session-info-wrap .session-theme-block .session-theme-title {
    color: #fd2b00;
    font-size: 150%;
}
.modal-window-wrap .modal-content-wrap .session-info-wrap .session-theme-block .session-theme {
    color: #fd2b00;
    font-size: 250%;
    font-weight: 700;
    letter-spacing: 0.07em;
    line-height: 1.5;
}
.modal-window-wrap .modal-content-wrap .session-info-wrap .session-btn-block {
    width: 100%;
    padding: 0px 0px 0px 0px;
    text-align: center;
}
.modal-window-wrap .modal-content-wrap .session-info-wrap .session-btn-block .entry-btn {
    display: inline-block;
}
.modal-window-wrap .modal-content-wrap .session-info-wrap .session-btn-block .entry-btn a {
    display: inline-block;
    background-color: #fd2b00;
    color: #ffffff;
    padding: 18px 80px 18px 80px;
    border-radius: 50px;
    font-size: 118.75%;
    font-weight: 600;
    letter-spacing: 0.05em;
}
/* ----------------
fixed entry btn
---------------- */
.fixed-entry-btn {
    display: block;
    position: fixed;
    bottom: -200px;
    left: 0px;
    width: 100%;
    z-index: 999;
    background-color: #ff2a00;
    opacity: 0;
    transition: all 0.6s ease-out;
    -webkit-transition: all 0.6s ease-out;
    -moz-transition: all 0.6s ease-out;
    -o-transition: all 0.6s ease-out;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.fixed-entry-btn.is-active {
    bottom: 0px;
    opacity: 1;
}
.fixed-entry-btn a {
    display: block;
    width: 100%;
    /*max-height: 125px;*/
    background-color: #ff2a00;
    color: #ffffff;
    text-align: center;
    line-height: 1.0;
    padding: 20px 0px 20px 0px;
}
.fixed-entry-btn a p.upper {
    font-size: 130%;
    font-weight: 500;
    padding: 0px 0px 10px 0px;
    display: block;
}
.fixed-entry-btn a p.lower {
    font-size: 250%;
    font-weight: 500;
    position: relative;
    display: inline-block;
}
.fixed-entry-btn a p.lower span.text {
    position: relative;
    z-index: 2;
}
.fixed-entry-btn a p.lower span.border {
    width: 100%;
    display: block;
    position: absolute;
    left: 50%;
    bottom: -10px;
    border-bottom: solid 30px #51296d;
    transform: translateX(-50%);
    animation: border_anim 10s linear infinite forwards;
    z-index: 1;
}
.fixed-entry-btn a p.lower span.border:before {
    content: "";
    position: absolute;
    top: 15px;
    right: -27px;
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 22px solid transparent;
    border-left: 22px solid transparent;
    border-bottom: 22px solid #51296d;
    border-top: 0;
    transform: rotate(315deg);
    transform-origin: top left;
}
.fixed-entry-btn a p.lower span.border:after {
    content: "";
    position: absolute;
    top: 15px;
    left: 17px;
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 22px solid transparent;
    border-left: 22px solid transparent;
    border-bottom: 22px solid #51296d;
    border-top: 0;
    transform: rotate(135deg);
    transform-origin: top left;
}
@keyframes border_anim {
    0% {
        opacity: 1;
        width: 0%;
    }
    10% {
        opacity: 1;
        width: 107%;
    }
    70% {
        opacity: 1;
        width: 107%;
    }
    75% {
        opacity: 0;
        width: 107%;
    }
    100% {
        opacity: 0;
        width: 107%;
    }
}
@keyframes border_anim_sp {
    0% {
        opacity: 1;
        width: 0%;
    }
    10% {
        opacity: 1;
        width: 104%;
    }
    70% {
        opacity: 1;
        width: 104%;
    }
    75% {
        opacity: 0;
        width: 104%;
    }
    100% {
        opacity: 0;
        width: 104%;
    }
}
/* ----------------
thanks
---------------- */
.thanks-wrap .thanks-sp-br {
    display: none;
}
.thanks-wrap {
    position: relative;
    width: 100%;
    min-height: 100vh;
    background-color: #ffffff;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
}
.thanks-wrap .thanks-content {
    position: relative;
    width: 100%;
    flex-basis: 1024px;
    max-width: 1024px;
    margin: 0 auto;
    padding: 100px 0px 0px 0px;
    text-align: center;
}
.thanks-wrap .thanks-content .thanks-message {
    font-size: 250%;
    font-weight: 700;
    line-height: 1.7;
    letter-spacing: 0.05em;
}
.thanks-wrap .thanks-content .thanks-desc {
    font-size: 125%;
    font-weight: 400;
    line-height: 1.7;
    letter-spacing: 0.05em;
    padding: 40px 0px 30px 0px;
}
.thanks-wrap .thanks-content .thanks-caution-wrap {
    background-color: #f6f6f6;
    padding: 30px 50px 40px 50px;
    text-align: left;
}
.thanks-wrap .thanks-content .thanks-caution-wrap .thanks-caution-title {
    font-size: 150%;
    font-weight: 700;
    letter-spacing: 0.05em;
}
.thanks-wrap .thanks-content .thanks-caution-wrap .thanks-caution-body {
    font-size: 106.25%;
    font-weight: 400;
    line-height: 1.9;
    letter-spacing: 0.05em;
}
.thanks-wrap .thanks-content .thanks-caution-wrap .thanks-caution-body ul li {
    padding: 30px 0px 0px 1.2em;
    text-indent: -1.2em;
}
.thanks-wrap .thanks-content .thanks-caution-wrap .thanks-caution-body ul li a {
    text-decoration: underline;
}
.thanks-wrap .thanks-content .thanks-caution-wrap .thanks-caution-body ul li a:hover {
    text-decoration: none;
}
.thanks-wrap .thanks-logo-wrap {
    position: absolute;
    width: 100%;
    top: 0px;
    left: 0px;
}
.thanks-wrap .thanks-logo-wrap .thanks-logo {
    position: relative;
    width: 100%;
    max-width: 1024px;
    margin: 0 auto;
    padding: 0px 0px 0px 0px;
    text-align: left;
}
.thanks-wrap .thanks-logo-wrap .thanks-logo .logo-img {
    width: 100%;
    max-width: 240px;
}
/* ----------------
form
---------------- */
.form-wrap .form-sp-br {
    display: none;
}
.form-wrap {
    position: relative;
    width: 100%;
    background-color: #f6f6f6;
    padding: 60px 0px 0px 0px;
}
.form-wrap .form-content {
    position: relative;
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    padding: 80px 0px 0px 0px;
    text-align: center;
    background: #E6E6E6;
}
.form-wrap .form-content .form-title {
    font-size: 250%;
    font-weight: 700;
    line-height: 1.7;
    letter-spacing: 0.05em;
    padding: 0px 0px 80px 0px;
}
.form-wrap .form-content .form-message {
    font-size: 125%;
    font-weight: 400;
    line-height: 1.7;
    letter-spacing: 0.05em;
    padding: 0px 0px 80px 0px;
}
.form-wrap .form-logo-wrap {
    position: absolute;
    width: 100%;
    top: 0px;
    left: 0px;
}
.form-wrap .form-logo-wrap .form-logo {
    position: relative;
    width: 100%;
    max-width: 1024px;
    margin: 0 auto;
    padding: 0px 0px 0px 0px;
    text-align: left;
}
.form-wrap .form-logo-wrap .form-logo .logo-img {
    width: 100%;
    max-width: 240px;
}
.form-wrap .form-content .mktoForm {
    text-align: left;
    width: 100% !important;
    color: #000000 !important;
    font-family: 'Noto Sans JP', sans-serif !important;
    *font-size: small;
    *font: x-small;
    font-size: 16px !important;
    line-height: 2.2;
    letter-spacing: 0.03em;
    position: relative;
    overflow-x: hidden;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    padding: 0px 20px;
}
.mktoForm .mktoOffset {
    float: left;
    height: 0px !important;
    width: 0px !important;
}
.mktoForm .mktoFormCol {
    float: left;
    position: relative;
    min-height: 2em;
    margin-bottom: 20px !important;
}
.mktoFormRow:nth-child(2) .mktoFieldDescriptor:nth-child(1) {
    width: 100%;
}
.mktoFormRow:nth-child(2) .mktoFieldDescriptor:nth-child(1) .mktoFieldWrap {
    width: 100%;
}
.mktoFormRow:nth-child(3) .mktoFieldDescriptor:nth-child(1) {
    width: 50%;
    padding-right: 20px;
    box-sizing: border-box;
}
.mktoFormRow:nth-child(3) .mktoFieldDescriptor:nth-child(2) {
    width: 50%;
    padding-left: 20px;
    box-sizing: border-box;
}
.mktoFormRow:nth-child(3) .mktoFieldDescriptor:nth-child(1) .mktoFieldWrap {
    width: 100%;
}
.mktoFormRow:nth-child(3) .mktoFieldDescriptor:nth-child(2) .mktoFieldWrap {
    width: 100%;
}
.mktoFormRow:nth-child(4) .mktoFieldDescriptor:nth-child(1) {
    width: 100%;
}
.mktoFormRow:nth-child(4) .mktoFieldDescriptor:nth-child(1) .mktoFieldWrap {
    width: 100%;
}
.mktoFormRow:nth-child(5) .mktoFieldDescriptor:nth-child(1) {
    width: 50%;
    padding-right: 20px;
    box-sizing: border-box;
}
.mktoFormRow:nth-child(5) .mktoFieldDescriptor:nth-child(1) .mktoFieldWrap {
    width: 100%;
}
.mktoFormRow:nth-child(6) .mktoFieldDescriptor:nth-child(1) {
    width: 50%;
    padding-right: 20px;
    box-sizing: border-box;
}
.mktoFormRow:nth-child(6) .mktoFieldDescriptor:nth-child(1) .mktoFieldWrap {
    width: 100%;
}
.mktoFormRow:nth-child(7) .mktoFieldDescriptor:nth-child(1) {
    width: 50%;
    padding-right: 20px;
    box-sizing: border-box;
}
.mktoFormRow:nth-child(7) .mktoFieldDescriptor:nth-child(1) .mktoFieldWrap {
    width: 100%;
}
.mktoFormRow:nth-child(8) .mktoFieldDescriptor:nth-child(1) {
    width: 50%;
    padding-right: 20px;
    box-sizing: border-box;
}
.mktoFormRow:nth-child(8) .mktoFieldDescriptor:nth-child(1) .mktoFieldWrap {
    width: 100%;
}
.mktoFormRow:nth-child(9) .mktoFieldDescriptor:nth-child(1) {
    width: 100%;
    margin-bottom: 20px !important;
}
.mktoFormRow:nth-child(9) .mktoFieldDescriptor:nth-child(1) .mktoFieldWrap {
    width: 100%;
}
.mktoFormRow:nth-child(9) .mktoFieldDescriptor:nth-child(1) .mktoFieldWrap .mktoRadioList {
    width: 100% !important;
    font-size: 125%;
}
.mktoFormRow:nth-child(9) .mktoFieldDescriptor:nth-child(1) .mktoFieldWrap .mktoRadioList > label {
    color: #666;
    padding: 4px 0px 4px 0px !important;
}
.mktoFormRow:nth-child(10) .mktoFieldDescriptor:nth-child(1) {
    width: 100%;
}
.mktoFormRow:nth-child(10) .mktoFormCol {
    width: 100%;
}
.mktoFormRow:nth-child(10) .mktoFormCol .mktoFieldWrap {
    width: 100%;
}
.mktoFormRow:nth-child(10) .mktoFormCol .mktoFieldWrap .mktoHtmlText {
    width: 100% !important;
    color: #666;
    font-size: 80%;
}
.mktoFormRow:nth-child(10) .mktoFormCol .mktoFieldWrap .mktoHtmlText br:nth-child(1), .mktoFormRow:nth-child(10) .mktoFormCol .mktoFieldWrap .mktoHtmlText br:nth-child(3) {
    display: none;
}
.mktoFormRow:nth-child(11) .mktoFieldDescriptor:nth-child(1) {
    width: 100%;
    margin-bottom: 20px !important;
}
.mktoFormRow:nth-child(11) .mktoFieldDescriptor:nth-child(1) .mktoFieldWrap {
    width: 100%;
}
.mktoFormRow:nth-child(12) .mktoFieldDescriptor:nth-child(1) {
    width: 100%;
}
.mktoFormRow:nth-child(12) .mktoFormCol {
    width: 100%;
}
.mktoFormRow:nth-child(12) .mktoFormCol .mktoFieldWrap {
    width: 100%;
}
.mktoFormRow:nth-child(12) .mktoFormCol .mktoFieldWrap .mktoHtmlText {
    width: 100% !important;
    font-size: 80%;
    color: #666;
}
.mktoFormRow:nth-child(12) .mktoFormCol .mktoFieldWrap .mktoHtmlText br:nth-child(1), .mktoFormRow:nth-child(12) .mktoFormCol .mktoFieldWrap .mktoHtmlText br:nth-child(3) {
    display: none;
}
.mktoFormRow:nth-child(13) .mktoFieldDescriptor:nth-child(1) {
    width: 100%;
}
.mktoFormRow:nth-child(13) .mktoFieldDescriptor:nth-child(1) .mktoFieldWrap {
    width: 100%;
}
.mktoFormRow:nth-child(13) .mktoFieldDescriptor:nth-child(1) .mktoFieldWrap .mktoRadioList {
    width: 100% !important;
    font-size: 125%;
}
.mktoFormRow:nth-child(13) .mktoFieldDescriptor:nth-child(1) .mktoFieldWrap .mktoRadioList > label {
    padding: 4px 0px 4px 0px !important;
    color: #666;
    font-size: 80%;
}
.mktoForm .mktoRadioList > label {
    font-size: 80%;
    padding: 0 !important;
}
.mktoFormRow:nth-child(14) .mktoFieldDescriptor:nth-child(1) {
    width: 100%;
}
.mktoFormRow:nth-child(14) .mktoFieldDescriptor:nth-child(1) .mktoFieldWrap {
    width: 100%;
}
.mktoFormRow:nth-child(14) .mktoFieldDescriptor:nth-child(1) .mktoFieldWrap .mktoRadioList {
    width: 100% !important;
    font-size: 125%;
}
.mktoFormRow:nth-child(14) .mktoFieldDescriptor:nth-child(1) .mktoFieldWrap .mktoRadioList > label {
    color: #666;
    padding: 4px 0px 4px 0px !important;
}
.mktoFormRow:nth-child(15) {
    text-align: center;
}
.mktoFormRow:nth-child(15) .mktoFormCol {
    float: none;
    text-align: center;
}
.mktoFormRow:nth-child(15) .mktoFieldDescriptor:nth-child(1) {
    width: 100%;
    text-align: left;
}
.mktoFormRow:nth-child(15) .mktoFieldDescriptor:nth-child(1) .mktoFieldWrap {
    width: auto !important;
    display: inline-block !important;
    margin: 0 auto;
    text-align: center;
    float: none;
}
.mktoForm .mktoRequiredField label.mktoLabel {
    color: #666;
    font-size: 100% !important;
    font-weight: 700 !important;
    width: auto !important;
    padding-top: 10px;
    padding-bottom: 20px;
}
.mktoForm.mktoLayoutAbove .mktoRequiredField .mktoAsterix {
    position: relative;
    float: right !important;
    padding-left: 5px !important;
    color: orange!important;
}
/*.mktoForm.mktoLayoutAbove .mktoRequiredField .mktoAsterix::after {
    content: "必須";
    position: absolute;
    top: 0px;
    left: 0px;
    color: #ffffff;
    font-size: 87.5%;
    font-weight: 700;
    line-height: 40px;
    text-align: center;
    width: 60px;
    height: 40px;
    z-index: 10;
    text-indent: 0px;
}*/
.mktoForm input[type=text], .mktoForm input[type=email], .mktoForm input[type=tel] {
    background-color: #fff;
    width: 100% !important;
    padding: 12px 14px 12px 14px !important;
    font-family: 'Noto Sans JP', sans-serif !important;
    font-size: 100%;
    border: 1px solid #cdcdcd;
}
.mktoForm input[type=radio] {
    margin-top: 8px !important;
}
.mktoForm select {
    -webkit-appearance: none;
    appearance: none;
    width: 100% !important;
    padding: 12px 14px 12px 14px !important;
    font-family: 'Noto Sans JP', sans-serif !important;
    font-size: 100%;
    border: 1px solid #cdcdcd;
    outline: none;
    background: #fff url("../img/arrow.svg") no-repeat right 12px center / 12px auto;
}
.mktoForm ::placeholder {
    color: #CCCCCC !important;
}
.mktoFormRow:nth-child(11) label.mktoLabel {
    display: inline-block !important;
    width: 185px !important;
}
.mktoFormRow:nth-child(11) .mktoCheckboxList {
    float: left !important;
    padding: 15px 0px 0px 0px;
    clear: none !important;
    width: auto;
}
.mktoFormRow:nth-child(15) label.mktoLabel {
    text-align: center !important;
    float: none !important;
    display: inline-block !important;
    width: auto !important;
    color: #666;
    font-size: 100% !important;
    font-weight: 700 !important;
}
.mktoFormRow:nth-child(15) .mktoCheckboxList {
    float: right !important;
    padding: 15px 0px 0px 15px;
}
.mktoButtonRow {
    width: 100% !important;
}
.mktoButtonRow .mktoButtonWrap {
    display: inline-block;
    margin-left: 0px !important;
    width: 100% !important;
    text-align: center;
}
.mktoForm .mktoButtonWrap.mktoSimple .mktoButton {
    color: #fff;
    padding: 18px 120px 18px 120px !important;
    border-radius: 9999px;
    font-size: 150% !important;
    font-weight: 700 !important;
    background-color: #ff2a00 !important;
    border: 1px solid #ff2a00 !important;
    background-image: none !important;
    transition: all 0.3s ease-out;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.mktoForm .mktoButtonWrap.mktoSimple .mktoButton:hover {
    color: #ff2a00;
    background-color: #ffffff !important;
}
.form-wrap .form-content .form-privacy {
    position: relative;
    width: 100%;
    margin: 0 auto;
    padding: 100px 20px 60px 20px;
    text-align: left;
    font-size: 87.5%;
    color: #82878d;
}
.form-wrap .form-content .form-privacy a {
    color: #82878d;
    text-decoration: underline;
}
.form-wrap .form-content .form-privacy a:hover {
    text-decoration: none;
}
.form-wrap .form-content .form-copyright {
    position: relative;
    width: 100%;
    margin: 0 auto;
    padding: 100px 0px 60px 0px;
    text-align: center;
    font-size: 75%;
}
/* ******************************************************************** */
/* Clearfix: http://csscreator.com/attributes/containedfloat.php        */
/* ******************************************************************** */
.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
.clearfix {
    display: inline-block;
    overflow: hidden;
}
* html .clearfix {
    height: 1%;
}
.clearfix {
    display: block;
}
@media (min-width: 801px) {
    a[href*="tel:"] {
        pointer-events: none;
        cursor: default;
        text-decoration: none;
    }
}
