@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&family=Open+Sans:wght@300;400;600&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Abel&display=swap");

:root {
  --color-blue: #06084F;
  --color-lightBlue: #4FDAFF;
  --color-accent-purple: #47278F;
  --color-accent-deepPurple: #6e44b2;
  --color-black: #000;
  --color-white: #fff;
  --color-whitesmoke: #f5f5f5;
  --color-lightgray: #fff;

}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

ul[role="list"],
ol[role="list"] {
  list-style: none;
}

html:focus-within {
  scroll-behavior: smooth;
}

body {
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

a:not([class]) {
  -webkit-text-decoration-skip: ink;
  text-decoration-skip-ink: auto;
}

img,
picture {
  max-width: 100%;
  display: block;
}

input,
button,
textarea,
select {
  font: inherit;
}

@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    -webkit-animation-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    -webkit-animation-iteration-count: 1 !important;
    animation-iteration-count: 1 !important;
    -webkit-transition-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

table {
  border-collapse: collapse;
}

.cf::after {
  content: "";
  display: block;
  clear: both;
}

.clr {
  clear: both;
}

.wbr {
  overflow-wrap: anywhere;
  word-break: keep-all;
}

ul {
  list-style: none;
}

ul li::before {
  content: "・";
  display: inline-block;
}

ul>a,
ul>span {
  text-indent: 0;
}

ol {
  list-style: decimal;
}

ol li {
  margin-left: 1.5em;
}

.ul_reset {
  list-style: none;
  padding: 0;
  margin: 0;
}

.ul_reset li {
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}

.ul_reset li::before {
  content: none;
}

table:not(.acf-table) tr th,
table:not(.acf-table) tr td {
  padding: 0.75em 1em;
  border: 1px solid #fff;
}

table:not(.acf-table) tr th {
  background: #fff7ec;
}

table:not(.acf-table) tr td {
  background: rgba(0, 0, 0, 0);
}

img {
  -webkit-tap-highlight-color: transparent;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  height: auto;
  display: inline-block;
  max-width: 100%;
  width: auto;
  height: auto;
  vertical-align: top;
}

strong,
em {
  font-weight: bold;
}

p,
th,
td,
li,
address,
small {
  line-height: 2;
}

a:focus,
*:focus {
  outline: none;
}

a {
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
  outline: none;
  color: #333;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

a.hover:hover {
  opacity: 0.6;
  color: #666;
}

a img,
a:before,
a:after,
a.hover:hover,
a span,
button {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.btn,
.btn-ol,
form input[type="button"],
form input[type="submit"],
form button {
  display: inline-block;
  max-width: 100%;
  background: #444;
  border: 2px solid #444;
  border-radius: 0;
  padding: 0.4em 0.75em;
  text-align: center;
  color: #fff;
  cursor: pointer;
}

.btn.hover:hover,
.hover.btn-ol:hover,
form input.hover:hover[type="button"],
form input.hover:hover[type="submit"],
form button.hover:hover {
  background: #fff;
  color: #444;
}

.btn-ol {
  background: #fff;
  color: #444;
}

.btn-ol.hover:hover {
  background: #444;
  color: #fff;
}

form {
  display: inline-block;
  margin-left: 0.5em;
  margin-right: 0.5em;
}

form [type="reset"] {
  display: inline-block;
  max-width: 100%;
  background: #444;
  border: 2px solid #444;
  padding: 0.4em 0.75em;
  text-align: center;
  color: #fff;
  cursor: pointer;
}

form [type="reset"].hover:hover {
  background: #fff;
  color: #444;
}

@media all and (-ms-high-contrast: none) {

  form [type="button"],
  form [type="submit"],
  form [type="reset"],
  form button,
  form .btn,
  form .btn-ol,
  form input[type="button"],
  form input[type="submit"],
  form button,
  form .wp-block-button__link {
    padding: 0.8em 1.5em 0.5em;
  }
}

form textarea,
form input,
form select {
  line-height: 1.5;
  font-family: "Noto Sans JP", "YuGothic", "游ゴシック", "roboto", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", sans-serif;
  font-size: 16px;
  font-size: 1rem;
  outline: none;
  border: none;
  padding: 5px 1em;
  border-radius: 0;
  border: 1px solid #fff;
}

@media only screen and (max-width: 768px) {

  form textarea,
  form input,
  form select {
    font-size: 13px;
    font-size: 0.8125rem;
  }
}

@media only screen and (max-width: 560px) {

  form textarea,
  form input,
  form select {
    font-size: 12px;
    font-size: 0.75rem;
  }
}

form ::-webkit-input-placeholder {
  font-family: "Noto Sans JP", "YuGothic", "游ゴシック", "roboto", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", sans-serif;
}

form :-moz-placeholder {
  font-family: "Noto Sans JP", "YuGothic", "游ゴシック", "roboto", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", sans-serif;
}

@-moz-document url-prefix() {

  form input[type="text"],
  form input[type="email"],
  form input[type="number"],
  form input[type="tel"] {
    padding: 5px 1em;
  }
}

form input[type="radio"],
form input[type="checkbox"] {
  border: none;
}

form input[type="radio"] {
  border-radius: 100%;
  -webkit-appearance: radio;
  -moz-appearance: radio;
  appearance: radio;
}

form input[type="text"],
form input[type="email"],
form input[type="url"] {
  width: 100%;
}

form input[type="tel"] {
  width: 100%;
}

form input[type="date"] {
  width: 50%;
}

form input[type="number"] {
  width: 8em;
}

form textarea {
  width: 100%;
  height: 200px;
}

form select {
  position: relative;
  width: 100%;
  padding: 5px 2.5em 5px 1em;
  cursor: pointer;
  -webkit-appearance: button;
  -moz-appearance: none;
  appearance: button;
  text-indent: 0.01px;
  text-overflow: "";
  border-radius: 0;
}

form select:focus {
  color: #000;
}

form selectafter {
  content: "";
}

form .select-wrap {
  position: relative;
}

form .select-wrap::after {
  content: "";
  position: absolute;
  right: 0.5em;
  top: 50%;
  margin-top: -3px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 4px 0 4px;
  border-color: #fff transparent transparent transparent;
  pointer-events: none;
}

@media all and (-ms-high-contrast: none) {
  form select {
    padding: 8px 2.5em 2px 1em;
  }
}

form select::-ms-expand {
  display: none;
}

form .non-select {
  color: #666666;
}

form label {
  display: inline-block;
  margin-right: 1em;
}

form .btn_area {
  text-align: center;
  margin-top: 1.5em;
}

form button {
  display: inline-block;
  width: 180px;
  max-width: calc(100% - 1em);
  margin: 0 0.5em;
  border-color: #444;
  background: #444;
  color: #fff;
}

form button.hover:hover {
  background: #fff;
  color: #444;
}

form button.rtn-btn {
  width: 120px;
  border-color: #ddd;
  background: #ddd;
  color: #666;
}

form button.rtn-btn.hover:hover {
  background: #fff;
  color: #666;
}

.error {
  margin-top: 0.5em !important;
  color: #666;
  font-size: 13px;
  font-size: 0.8125rem;
}

@media print {
  body {
    -webkit-print-color-adjust: exact;
    min-width: 980px;
    zoom: 1.02;
  }

  #go-top {
    display: none;
  }
}

.br {
  display: inline-block;
}

html {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  word-wrap: break-word;
  line-height: 1;
  scroll-behavior: auto !important;
}

body {
  font-family: "Noto Sans JP", "YuGothic", "游ゴシック", "roboto", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", sans-serif;
  font-size: 16px;
  color: #333;
  width: 100%;
  position: relative;
  line-height: 1;
  word-wrap: break-word;
  -webkit-text-size-adjust: 100%;
  overflow-x: hidden;
}

.phantom {
  -webkit-transform: translateY(50px);
  transform: translateY(50px);
  -webkit-transition: opacity 1s, -webkit-transform 1s;
  transition: opacity 1s, -webkit-transform 1s;
  transition: opacity 1s, transform 1s;
  transition: opacity 1s, transform 1s, -webkit-transform 1s;
  opacity: 0;
}

.phantom.phantom-animation {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
}

header,
header div,
header span,
header applet,
header object,
header iframe,
header h1,
header h2,
header h3,
header h4,
header h5,
header h6,
header p,
header blockquote,
header pre,
header a,
header abbr,
header acronym,
header address,
header big,
header cite,
header code,
header del,
header dfn,
header em,
header img,
header ins,
header kbd,
header q,
header s,
header samp,
header small,
header strike,
header strong,
header sub,
header sup,
header tt,
header var,
header b,
header u,
header i,
header center,
header dl,
header dt,
header dd,
header ol,
header ul,
header li,
header fieldset,
header form,
header label,
header legend,
header table,
header caption,
header tbody,
header tfoot,
header thead,
header tr,
header th,
header td,
header article,
header aside,
header canvas,
header details,
header embed,
header figure,
header figcaption,
header footer,
header header,
header hgroup,
header menu,
header nav,
header output,
header ruby,
header section,
header summary,
header time,
header mark,
header audio,
header video,
footer,
footer div,
footer span,
footer applet,
footer object,
footer iframe,
footer h1,
footer h2,
footer h3,
footer h4,
footer h5,
footer h6,
footer p,
footer blockquote,
footer pre,
footer a,
footer abbr,
footer acronym,
footer address,
footer big,
footer cite,
footer code,
footer del,
footer dfn,
footer em,
footer img,
footer ins,
footer kbd,
footer q,
footer s,
footer samp,
footer small,
footer strike,
footer strong,
footer sub,
footer sup,
footer tt,
footer var,
footer b,
footer u,
footer i,
footer center,
footer dl,
footer dt,
footer dd,
footer ol,
footer ul,
footer li,
footer fieldset,
footer form,
footer label,
footer legend,
footer table,
footer caption,
footer tbody,
footer tfoot,
footer thead,
footer tr,
footer th,
footer td,
footer article,
footer aside,
footer canvas,
footer details,
footer embed,
footer figure,
footer figcaption,
footer footer,
footer header,
footer hgroup,
footer menu,
footer nav,
footer output,
footer ruby,
footer section,
footer summary,
footer time,
footer mark,
footer audio,
footer video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  word-wrap: break-word;
}

header ol,
header ul,
footer ol,
footer ul {
  list-style: none;
}

header table,
footer table {
  border-collapse: collapse;
  border-spacing: 0;
}

header caption,
header th,
header td,
footer caption,
footer th,
footer td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

header q,
header blockquote,
footer q,
footer blockquote {
  quotes: none;
}

header q:before,
header q:after,
header blockquote:before,
header blockquote:after,
footer q:before,
footer q:after,
footer blockquote:before,
footer blockquote:after {
  content: "";
  content: none;
}

header a img,
footer a img {
  border: none;
}

header article,
header aside,
header details,
header figcaption,
header figure,
header footer,
header header,
header hgroup,
header menu,
header nav,
header section,
header summary,
footer article,
footer aside,
footer details,
footer figcaption,
footer figure,
footer footer,
footer header,
footer hgroup,
footer menu,
footer nav,
footer section,
footer summary {
  display: block;
}

header,
header *,
footer,
footer * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  word-wrap: break-word;
}

header::before,
header::after,
header *::before,
header *::after,
footer::before,
footer::after,
footer *::before,
footer *::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

#noscript {
  width: 100%;
  padding: 10px 20px;
  background: #c00;
  color: #fff;
  text-align: center;
  z-index: 100;
  line-height: 1.2;
}

.common-inner {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
}

@media only screen and (max-width: 768px) {
  .common-inner {
    max-width: 640px;
  }
}

section {
  padding-top: 80px;
  padding-bottom: 80px;
  padding-right: 6.22%;
  padding-left: 6.22%;
}

@media only screen and (max-width: 768px) {
  section {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}

@media only screen and (max-width: 560px) {
  section {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}

section:first-child {
  padding-top: 0;
}

@media only screen and (max-width: 560px) {
  section {
    padding-right: 12.53%;
    padding-left: 12.53%;
  }
}

header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 111px;
  padding: 0 30px 0 47px;
  z-index: 20;
  color: #b1b1b1;
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
}

@media only screen and (max-width: 768px) {
  header {
    padding: 0 20px;
  }
}

@media only screen and (max-width: 560px) {
  header {
    height: 60px;
  }
}

header .logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

@media only screen and (max-width: 560px) {
  header .logo {
    width: 70px;
  }
}

header h1 {
  font-size: 1.25vw;
  font-weight: 700;
  margin-left: 42px;
}

@media screen and (max-width: 1360px) {
  header h1 {
    font-size: 17px;
  }
}

@media screen and (min-width: 1601px) {
  header h1 {
    font-size: 20px;
  }
}

@media screen and (max-width: 700px) {
  header h1 {
    margin-left: 30px;
  }
}

@media only screen and (max-width: 560px) {
  header h1 {
    display: none;
  }
}

header.on {
  background: rgba(255, 255, 255, 0.9);
}

.header-right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.header-right .header-sns {
  list-style: none;
  padding: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-right: 50px;
}

.header-right .header-sns li {
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}

.header-right .header-sns li::before {
  content: none;
}

@media screen and (max-width: 700px) {
  .header-right .header-sns {
    margin-right: 30px;
  }
}

@media screen and (max-width: 640px) {
  .header-right .header-sns {
    display: none;
  }
}

.header-right .header-sns a {
  opacity: 0.6;
}

.header-right .header-sns a.hover:hover {
  opacity: 1;
}

.header-right .header-sns a.hover:hover img {
  opacity: 1;
}

.header-right .header-sns li+li {
  margin-left: 20px;
}

.header-right .hamburger .menu-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  width: 24px;
  height: 18px;
  border: none;
  border-radius: 0;
  background: transparent;
  padding: 0;
  cursor: pointer;
  z-index: 10;
  opacity: 0.6;
}

.header-right .hamburger .menu-button i {
  display: inline-block;
  position: relative;
  width: 100%;
  height: 2px;
  background: #b1b1b1;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.header-right .hamburger .menu-button i::before,
.header-right .hamburger .menu-button i::after {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  background: #b1b1b1;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.header-right .hamburger .menu-button i::before {
  top: -0.5em;
}

.header-right .hamburger .menu-button i::after {
  bottom: -0.5em;
}

.header-right .hamburger .menu-button.active {
  opacity: 1;
}

.header-right .hamburger .menu-button.active i {
  background: transparent;
}

.header-right .hamburger .menu-button.active i::before {
  top: 0;
  background-color: #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.header-right .hamburger .menu-button.active i::after {
  bottom: 0;
  background-color: #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.header-right .hamburger .menu-button.hover:hover {
  opacity: 1;
}

.header-right .hamburger .gnav-inner {
  list-style: none;
  padding: 0;
  margin: 0;
  position: fixed;
  display: none;
  width: 320px;
  height: 100%;
  padding: 111px 0 0 26px;
  top: 0;
  right: 0;
  background: var(--color-accent-purple);
  opacity: 0;
}

.header-right .hamburger .gnav-inner li {
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}

.header-right .hamburger .gnav-inner li::before {
  content: none;
}

@media only screen and (max-width: 560px) {
  .header-right .hamburger .gnav-inner {
    padding: 60px 0 0 26px;
  }
}

.header-right .hamburger .gnav-inner.active {
  display: block;
  -webkit-animation-name: fade;
  animation-name: fade;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-duration: 0.6s;
  animation-duration: 0.6s;
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
}

.header-right .hamburger .gnav-inner.close {
  display: block;
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
  -webkit-animation-duration: 0.6s;
  animation-duration: 0.6s;
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
}

.header-right .hamburger .gnav-inner li {
  width: 100%;
  position: relative;
  margin: 0 0 20px;
}

.header-right .hamburger .gnav-inner li::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  margin-right: 10px;
}

.header-right .hamburger .gnav-inner li a {
  color: #fff;
}

.header-right .hamburger .gnav-inner li a.on,
.header-right .hamburger .gnav-inner li a.hover:hover {
  opacity: 1;
  text-decoration: underline;
}

.header-right .hamburger .gnav-inner li li {
  width: auto;
}

@-webkit-keyframes nav-fixed {
  0% {
    top: -100%;
  }

  100% {
    top: 0;
  }
}

@keyframes nav-fixed {
  0% {
    top: -100%;
  }

  100% {
    top: 0;
  }
}

main {
  display: block;
}

.mainVisual {
  background-color: #000;
  background-image: url(../img/mainVisual_sp.webp);
  background-size: 100% auto;
  background-repeat: no-repeat;
  line-height: 1.5;
}

@media screen and (min-width: 1024px) {
  .mainVisual {
    background-image: url(../img/mainVisual_pc.webp);
    background-size: cover;
    background-position: center;
    padding-left: 6.22%;
    padding-right: 6.22%;
  }
}

.mainVisual_inner {
  display: flex;
  flex-direction: column;
  gap: 58px;
  padding-top: 92px;
  padding-bottom: 100px;
}

@media screen and (min-width: 561px) {
  .mainVisual_inner {
    gap: 86px;
    padding-top: 144px;
    padding-bottom: 60px;
  }
}

@media screen and (min-width: 1024px) {
  .mainVisual_inner {
    justify-content: space-between;
    gap: 40px;
    max-width: 1140px;
    margin: 0 auto;
    padding-top: 106px;
    padding-bottom: 40px;
  }
}

.mainVisual_ttl {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 85%;
  margin: 0 auto;
}

@media screen and (min-width: 561px) {
  .mainVisual_ttl {
    width: 78%;
    max-width: 802px;
  }
}

.talkSession {
  display: flex;
  flex-direction: column;
  align-items: center;
}

@media screen and (min-width: 561px) {
  .talkSession {
    padding-left: 6.22%;
    padding-right: 6.22%;
  }
}

@media screen and (min-width: 1024px) {
  .talkSession {
    padding: 0;
  }
}

.talkSession_ttlArea {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.5em;
  width: 100%;
  padding-inline: calc(40 / 375 * 100%);
}

@media screen and (min-width: 561px) {
  .talkSession_ttlArea {
    max-width: 568px;
    padding-inline: 0;
  }
}

@media screen and (min-width: 1024px) {
  .talkSession_ttlArea {
    max-width: 754px;
  }
}

.talkSession_ttlArea::before {
  height: 1px;
  background: #fff;
  /*linear-gradient(to right, #ff7bac, #0000ff);*/
  width: 100%;
  content: "";
}

.talkSession_ttlArea::after {
  height: 1px;
  background: #fff;
  /*linear-gradient(to right, #662d91, #ed1c24);*/
  width: 100%;
  content: "";
}

.talkSession_ttl {
  flex-shrink: 0;
  font-family: "Obvia", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 1;
  color: #fff;
}

@media screen and (min-width: 561px) {
  .talkSession_ttl {
    font-size: 20px;
  }
}

@media screen and (min-width: 769px) {
  .talkSession_ttl {
    font-size: 26px;
  }
}

.mainVisual_ttlImg.-date {
  width: 93%;
}

@media screen and (min-width: 561px) {
  .mainVisual_ttlImg.-date {
    width: 95%;
    max-width: 605px;
  }
}

@media screen and (min-width: 1024px) {
  .mainVisual_ttlImg.-date {
    margin-top: -10px;
  }
}

.talkSession_guest {
  display: flex;
  flex-direction: column;
  gap: 5px;
  margin-top: 12px;
}

@media screen and (min-width: 561px) {
  .talkSession_guest {
    gap: 20px;
    margin-top: 28px;
  }
}

@media screen and (min-width: 1024px) {
  .talkSession_guest {
    flex-direction: row;
    justify-content: space-between;
    gap: 0;
    width: 100%;
    max-width: 764px;
    margin-top: 20px;
  }
}

.profile {
  display: flex;
  flex-direction: row;
  gap: 20px;
}

@media screen and (min-width: 1024px) {
  .profile {
    flex-direction: column;
    align-items: center;
    width: calc((100% - 10px * 2) / 3);
  }
}

.profile_portrait {
  flex-shrink: 0;
  width: 80px;
  height: 80px;
}

@media screen and (min-width: 561px) {
  .profile_portrait {
    width: 120px;
    height: 120px;
  }
}

.profile_portrait>img {
  border-radius: 5%;
}

.profile_txt {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
}

@media screen and (min-width: 1024px) {
  .profile_txt {
    text-align: center;
    gap: 10px;
  }
}

.profile_name {
  font-size: 18px;
}

@media screen and (min-width: 561px) {
  .profile_name {
    font-size: 24px;
  }
}

.profile_occupation {
  font-size: 10px;
}

@media screen and (min-width: 561px) {
  .profile_occupation {
    font-size: 14px;
  }
}

main .contents-nav ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0 30px;
}

@media screen and (min-width: 561px) {
  main .contents-nav ul {
    padding-top: 25px;
  }
}

main .contents-nav ul li {
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}

main .contents-nav ul li::before {
  content: none;
}

@media only screen and (max-width: 768px) {
  main .contents-nav ul {
    padding: 0 20px;
  }
}

@media screen and (max-width: 640px) {
  main .contents-nav ul {
    display: block;
    margin-top: 0;
    padding: 0;
  }
}

main .contents-nav ul li {
  padding: 0 26px;
  border-right: 1px solid #fff;
  text-align: center;
  line-height: 1.65;
}

@media screen and (max-width: 720px) {
  main .contents-nav ul li {
    padding: 0 16px;
  }
}

@media screen and (max-width: 640px) {
  main .contents-nav ul li {
    height: 54px;
    padding: 0;
    border-right: none;
    border-bottom: 1px solid #fff;
  }
}

main .contents-nav ul li:first-child {
  padding-left: 0;
}

main .contents-nav ul li:last-child {
  border-right: none;
  padding-right: 0;
}

main .contents-nav ul li a {
  color: var(--color-lightgray);
}

main .contents-nav ul li a:hover {
  color: var(--color-whitesmoke);
}

@media screen and (max-width: 640px) {
  main .contents-nav ul li a {
    display: block;
    padding: 0.88em 0;
  }
}

.fixedButton {
  width: 100%;
  height: 60px;
  position: fixed;
  z-index: 10;
  right: 0;
  bottom: 0;
  filter: drop-shadow(0px 0px 6px rgba(0, 0, 0, 0.2));
}

@media screen and (min-width: 561px) {
  .fixedButton {
    width: 60px;
    height: 198px;
    top: 150px;
    bottom: auto;
  }
}

.fixedButton ul {
  display: flex;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
}

.fixedButton ul li::before {
  content: none;
}

.fixedButton ul a {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media screen and (min-width: 561px) {
  .fixedButton ul a {
    flex-direction: column;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
  }
}

.fixedButton ul a.hover:hover {
  opacity: 1;
}

.fixedButton ul .fixedButton_apply {
  width: 100%;
  border-top: 2px solid var(--color-accent-purple);
  background: #fff;
  font-size: 16px;
  font-weight: 900;
  transition-duration: 0.2s;
}

@media screen and (min-width: 561px) {
  .fixedButton ul .fixedButton_apply {
    width: 100%;
    height: 100%;
    background: #fff;
    border-bottom: 2px solid var(--color-accent-purple);
    border-left: 2px solid var(--color-accent-purple);
    font-size: 14px;
    letter-spacing: 0.14em;
  }
}

.fixedButton ul .fixedButton_apply::before {
  content: none;
}

.fixedButton ul .fixedButton_apply p {
  color: var(--color-accent-purple);
}

@media screen and (min-width: 561px) {
  .fixedButton ul .fixedButton_apply a {
    padding: 12px 10px;
    justify-content: center;
  }
}

@media screen and (min-width: 561px) {
  .fixedButton ul .fixedButton_apply p {
    writing-mode: vertical-rl;
  }
}

@media screen and (min-width: 561px) {
  .fixedButton ul .fixedButton_apply.hover {
    border-top: 2px solid var(--color-accent-purple);
    border-bottom: 2px solid var(--color-accent-purple);
    border-left: 2px solid var(--color-accent-purple);
    background: var(--color-accent-purple);
  }
}

@media screen and (min-width: 561px) {
  .fixedButton ul .fixedButton_apply.hover p {
    color: #fff;
  }
}

.fixedButton ul .fixedButton_separator {
  display: inline-block;
  width: 2px;
  background-color: #fff;
}

@media screen and (min-width: 561px) {
  .fixedButton ul .fixedButton_separator {
    display: none;
  }
}

.fixedButton ul .fixedButton_scrollTop {
  width: 60px;
  background: var(--color-accent-purple);
}

@media screen and (min-width: 561px) {
  .fixedButton ul .fixedButton_scrollTop {
    display: none;
  }
}

.fixedButton ul .fixedButton_scrollTop div:after {
  content: "";
  display: block;
  width: 18px;
  height: 18px;
  border-top: solid 2px;
  border-right: solid 2px;
  transform: rotate(-45deg) translateX(-25%) translateY(25%);
  color: #fff;
}

main #intro {
  padding-top: 60px;
}

@media only screen and (min-width: 561px) {
  main #intro {
    padding-top: 100px;
  }
}

@media only screen and (min-width: 769px) {
  main #intro {
    padding-top: 160px;
  }
}

main #intro .intro-img {
  width: 100%;
  max-width: 300px;
  text-align: center;
  margin: 0 auto;
}

@media only screen and (min-width: 769px) {
  main #intro .intro-img {
    max-width: 376px;
  }
}

main #intro .intro-img+p {
  margin-top: 30px;
}

.intro_lead {
  font-weight: bold;
  font-size: 16px;
  line-height: 1.5 !important;
  color: var(--color-lightBlue);
  text-align: center;
}

@media only screen and (min-width: 561px) {
  .intro_lead {
    font-size: 24px;
  }
}

main #intro h2 {
  font-size: 20px;
  color: #7f9eb9;
  font-weight: normal;
  text-align: center;
  margin-top: 1em;
  margin-bottom: 3.25em;
  line-height: 1.5;
}

@media only screen and (max-width: 560px) {
  main #intro h2 {
    font-size: 18px;
    margin-top: 1.5em;
    margin-bottom: 2em;
  }
}

main #intro h2 br {
  display: none;
}

@media only screen and (max-width: 560px) {
  main #intro h2 br {
    display: initial;
    display: auto;
  }
}

@media screen and (max-width: 374px) {
  main #intro h2 br {
    display: none;
  }
}

main #intro h2 span {
  display: inline-block;
}

main #message {
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  background: #000;
}

main #message .message-inner {
  max-width: 1600px;
  padding-right: 0;
  padding-left: 0;
}

main #message .contents-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

@media screen and (max-width: 880px) {
  main #message .contents-body {
    display: block;
  }
}

main #message .message-picture {
  width: 50%;
}

@media screen and (max-width: 880px) {
  main #message .message-picture {
    width: 75%;
  }
}

@media only screen and (max-width: 560px) {
  main #message .message-picture {
    width: 100%;
  }
}

main #message .message-picture .message-picture {
  width: 100%;
  min-height: 560px;
  background-image: url(../img/message.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}

@media screen and (max-width: 880px) {
  main #message .message-picture .message-picture {
    min-height: 0;
    padding-top: 70%;
  }
}

main #message .message-content {
  width: 50%;
  padding-right: 6.22%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

@media screen and (max-width: 880px) {
  main #message .message-content {
    width: 100%;
    padding-right: 6.22%;
    padding-left: 6.22%;
  }
}

@media only screen and (max-width: 880px) and (max-width: 560px) {
  main #message .message-content {
    padding-right: 12.53%;
    padding-left: 12.53%;
  }
}

main #message .message-content .message-content-inner {
  width: 100%;
  max-width: 480px;
  padding-top: 2em;
  padding-left: 10px;
  padding-bottom: 2em;
}

@media screen and (max-width: 880px) {
  main #message .message-content .message-content-inner {
    max-width: 640px;
    padding-left: 0;
    margin: 0 auto;
  }
}

@media only screen and (max-width: 560px) {
  main #message .message-content .message-content-inner {
    padding-bottom: 0;
  }
}

main #message .message-content h3 {
  font-size: 40px;
  font-size: 2.5rem;
  font-weight: normal;
  color: #fff;
  margin-bottom: 1em;
}

@media screen and (max-width: 880px) {
  main #message .message-content h3 {
    margin-bottom: 0.75em;
  }
}

@media only screen and (max-width: 560px) {
  main #message .message-content h3 {
    font-size: 36px;
    font-size: 2.25rem;
  }
}

main #message .message-content p {
  color: #fff;
}

main #message .message-content .speaker {
  text-align: right;
  margin-top: 1.75em;
}

main #message .message-content .name {
  font-size: 24px;
  font-size: 1.5rem;
  margin-top: 0;
}

main #overview {
  padding-bottom: 60px;
}

@media only screen and (min-width: 561px) {
  main #overview {
    padding-bottom: 100px;
  }
}

@media only screen and (min-width: 769px) {
  main #overview {
    padding-bottom: 160px;
  }
}

main #overview .common-inner dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  border-top: 1px solid #fff;
}

@media only screen and (max-width: 560px) {
  main #overview .common-inner dl {
    display: block;
  }
}

main #overview .common-inner dl dt {
  position: relative;
  width: 11em;
  line-height: 2;
  padding: 0.75em 1em 0.75em 1.25em;
  border-bottom: 1px solid #fff;
}

@media only screen and (max-width: 560px) {
  main #overview .common-inner dl dt {
    width: 100%;
    padding: 1.25em 1em 0;
    border-bottom: 0;
    line-height: 1;
  }
}

main #overview .common-inner dl dt::after {
  position: absolute;
  content: "：";
  right: 0;
}

@media only screen and (max-width: 560px) {
  main #overview .common-inner dl dt::after {
    position: static;
  }
}

main #overview .common-inner dl dd {
  position: relative;
  width: calc(100% - 11em);
  line-height: 1.5;
  padding: 16px 1.25em 16px 0;
  border-bottom: 1px solid #fff;
}

@media only screen and (max-width: 560px) {
  main #overview .common-inner dl dd {
    width: 100%;
    margin: 0.85em 0 0;
    padding: 0 1em 1.25em;
    line-height: 1.5;
  }
}

main #overview .common-inner a {
  text-decoration: underline;
}

main #overview .common-inner a:hover {
  color: #666;
}

main section:has(.participation) {
  width: 100%;
  max-width: 100%;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
}

main .method-notes {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.5 !important;
  margin-top: 30px;
}

main .method-notes.txt-red {
  color: #c11920;
}

main .method-notes .wordWrap_sp {
  display: none;
}

@media screen and (max-width: 860px) {
  main .method-notes {
    text-align: center;
  }

  main .method-notes .wordWrap_sp {
    display: block;
  }
}

.watch-content .method-notes {
  color: #fff;
}

main .participation {
  padding-top: 85px;
  padding-bottom: 85px;
  padding-right: 6.22%;
  padding-left: 6.22%;
  background: #D8DBE2;
}

@media only screen and (max-width: 768px) {
  main .participation {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

@media only screen and (max-width: 560px) {
  main .participation {
    padding-top: 40px;
    padding-bottom: 40px;
    padding-right: 12.53%;
    padding-left: 12.53%;
  }
}

main .participation .contents-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  align-items: center;
  gap: 40px;
}

@media screen and (max-width: 860px) {
  main .participation .contents-body {
    display: block;
  }
}

main .participation .contents-body .participation-img {
  max-width: 600px;
}

@media screen and (max-width: 860px) {
  main .participation .contents-body .participation-img {
    width: 100%;
    max-width: 332px;
    margin-right: auto;
    margin-left: auto;
  }
}

main .participation .contents-body .participation-content {
  flex-shrink: 0;
  width: 320px;
}

@media screen and (max-width: 860px) {
  main .participation .contents-body .participation-content {
    width: 100%;
    margin: 28px 0 0;
  }
}

.easeBgBtn {
  display: block;
  position: relative;
  margin: 0 auto;
  padding: 1em 2em;
  width: 100%;
  height: 63px;
  max-width: 320px;
  background-color: var(--color-white);
  border: solid 2px #47278F;
  /* color: #000; */
  color: #47278F;
  transition: 0.3s;
  cursor: pointer;
}

.easeBgBtn.-close {
  background-color: #838383;
  color: #fff;
  border: solid 2px #838383;
  cursor: default;
}

.easeBgBtn.-yt {
  background-color: #fff;
}

.easeBgBtn.hover:hover {
  opacity: 1;
  color: #fff;
}

.easeBgBtn::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  background-color: #47278F;
  /* var(--color-accent-deepPurple);*/
  transform-origin: left top;
  transform: scale(0, 1);
  transition: transform 0.3s;
}

.easeBgBtn.-yt::before {
  background-color: #ff0000;
}

.easeBgBtn:hover::before {
  transform: scale(1, 1);
}

.easeBgBtn.-close:hover::before {
  transform: scale(0, 1);
}

.easeBgBtn_inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  text-align: center;
  font-size: inherit;
}

.easeBgBtn_content {
  display: flex;
  align-items: center;
  position: relative;
  color: inherit;
  box-sizing: border-box;
  font-weight: bold;
  font-size: 20px;
  line-height: 1.5 !important;
  padding-right: 30px;
  width: fit-content;
  height: 100%;
}

.easeBgBtn.-close .easeBgBtn_content {
  padding-right: 0;
}

.easeBgBtn_content::after {
  position: absolute;
  top: 0.5em;
  right: 0;
  width: 12px;
  height: 12px;
  border-top: solid 1.5px #47278F;
  border-right: solid 1.5px #47278F;
  transform: rotate(45deg);
  content: "";
}

.easeBgBtn:hover .easeBgBtn_content::after {
  border-top: solid 1.5px #fff;
  border-right: solid 1.5px #fff;
}

.easeBgBtn.-close .easeBgBtn_content::after {
  content: none;
}

.easeBgBtn.-yt .easeBgBtn_content::after {
  border-color: #c11920;
}

.easeBgBtn.-yt:hover .easeBgBtn_content::after {
  border-color: #fff;
}

.easeBgBtn.-yt:hover path {
  fill: #fff;
}

main .watch {
  padding-right: 6.22%;
  padding-left: 6.22%;
  padding-top: 13px;
  padding-bottom: 10px;
  background: linear-gradient(to right, #021766 0%, #06084F 50%, #2B067B 100%);
}

@media only screen and (max-width: 768px) {
  main .watch {
    padding-top: 28px;
    padding-bottom: 60px;
  }
}

@media only screen and (max-width: 560px) {
  main .watch {
    padding-right: 12.53%;
    padding-left: 12.53%;
  }
}

main .watch .contents-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  gap: 40px;
}

@media screen and (max-width: 768px) {
  main .watch .contents-body {
    display: block;
  }
}

main .watch .watch-content {
  flex-shrink: 0;
  width: 320px;
}

@media screen and (max-width: 860px) {
  main .watch .watch-content {
    width: 100%;
  }
}

main .watch .watch-img {
  width: 488px;
}

@media screen and (max-width: 860px) {
  main .watch .watch-img {
    width: 100%;
    max-width: 320px;
    margin-right: auto;
    margin-left: auto;
  }
}

main #program {
  padding-top: 60px;
  padding-bottom: 60px;
}

@media screen and (min-width: 561px) {
  main #program {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}

@media screen and (min-width: 769px) {
  main #program {
    padding-top: 160px;
    padding-bottom: 160px;
  }
}

main #program .program-date-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

@media only screen and (max-width: 560px) {
  main #program .program-date-header {
    display: block;
  }
}

main #program .program-date-header>h4 {
  font-size: 32px;
  font-size: 2rem;
  font-weight: normal;
  color: #333;
}

@media screen and (max-width: 640px) {
  main #program .program-date-header>h4 {
    font-size: 30px;
    font-size: 1.875rem;
  }
}

@media only screen and (max-width: 560px) {
  main #program .program-date-header>h4 {
    font-size: 24px;
    font-size: 1.5rem;
  }
}

main #program .program-date-header>h4 span {
  color: #999;
}

main #program .program-date-header>div {
  font-size: 20px;
  font-size: 1.25rem;
  color: #333;
}

main #program .program-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 45px;
}

@media only screen and (min-width: 769px) {
  main #program .program-list {
    margin-top: 80px;
  }
}

main #program .program-list:first-of-type {
  margin-top: 0;
}

@media only screen and (max-width: 768px) {
  main #program .program-list {
    display: block;
  }
}

@media only screen and (max-width: 560px) {
  main #program .program-list {
    margin-top: 2.5em;
  }
}

main #program .program-list .program-list-numb {
  width: 84px;
}

@media only screen and (max-width: 768px) {
  main #program .program-list .program-list-numb {
    margin-right: auto;
    margin-left: auto;
  }
}

main #program .program-list .program-list-numb>div {
  position: relative;
  display: block;
  width: 100%;
  padding: 100% 0 0;
}

main #program .program-list .program-list-numb span {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  border: 2px solid var(--color-blue);
  border-radius: 50%;
  font-family: "Obvia", sans-serif;
  font-size: 32px;
  font-size: 2rem;
  color: var(--color-blue);
  line-height: 1;
}

main #program .program-list .program-list-content {
  width: calc(100% - 160px);
}

@media only screen and (max-width: 768px) {
  main #program .program-list .program-list-content {
    width: 100%;
    margin-top: 1.88em;
  }
}

main #program .program-list .program-list-content .before-title {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.5;
  margin: 0 0 0.5em;
}

@media only screen and (max-width: 560px) {
  main #program .program-list .program-list-content .before-title {
    font-size: 16px;
    font-size: 1rem;
  }
}

main #program .program-list .program-list-content .program-list-header .program-list-header-title .program-list-header-title-inner {
  display: block;
}

main #program .program-list .program-list-content .program-list-header .program-list-header-title .program-list-header-title-inner h5 {
  width: 100%;
  font-size: 24px;
  font-size: 1.5rem;
  margin: 0;
  color: #333;
  line-height: 1.5;
}

@media only screen and (max-width: 560px) {
  main #program .program-list .program-list-content .program-list-header .program-list-header-title .program-list-header-title-inner h5 {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

.program-list_heading {
  font-size: 18px !important;
}

@media screen and (min-width: 561px) {
  .program-list_heading {
    font-size: 18px !important;
  }
}

main #program .program-list .program-list-content>p+.program-list_heading {
  margin-top: 40px;
}

@media screen and (min-width: 769px) {
  main #program .program-list .program-list-content>p+.program-list_heading {
    margin-top: 60px;
  }
}

main #program .program-list .program-list-content>.speaker+.program-list_heading {
  margin-top: 60px;
}

main #program .program-list .program-list-content>.program-list_heading+.speaker {
  margin-top: 20px;
}

main #program .program-list .program-list-content .program-list-header+.speaker {
  margin-top: 1em;
}

main #program .program-list .program-list-content .program-list-header+.speaker.speakers {
  margin-top: 2em;
}

main #program .program-list .program-list-content .program-list-header+.speaker.speakers.bannar {
  margin-top: 2.5em;
  margin-bottom: 0;
}

main #program .program-list .program-list-content .program-list-header+.speaker.speaker-flex {
  margin-bottom: 0;
}

main #program .program-list .program-list-content .speaker {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 0 0 1.88em;
}

@media only screen and (max-width: 560px) {
  main #program .program-list .program-list-content .speaker {
    display: block;
    margin: 0 0 1.5em;
  }
}

main #program .program-list .program-list-content .speaker .speaker-pics {
  width: 36.58%;
}

@media only screen and (max-width: 768px) {
  main #program .program-list .program-list-content .speaker .speaker-pics {
    width: 38.44%;
  }
}

@media only screen and (max-width: 560px) {
  main #program .program-list .program-list-content .speaker .speaker-pics {
    width: 100%;
  }
}

main #program .program-list .program-list-content .speaker .speaker-data {
  width: 58.54%;
}

@media only screen and (max-width: 768px) {
  main #program .program-list .program-list-content .speaker .speaker-data {
    width: 55.31%;
  }
}

@media only screen and (max-width: 560px) {
  main #program .program-list .program-list-content .speaker .speaker-data {
    width: 100%;
    margin-top: 1.5em;
  }
}

main #program .program-list .program-list-content .speaker .speaker-data-position {
  line-height: 1.5;
  margin-bottom: 0.25em;
}

main #program .program-list .program-list-content .speaker .speaker-data-name {
  font-size: 24px;
  font-size: 1.5rem;
}

main #program .program-list .program-list-content .speaker .speaker-url {
  list-style: none;
  padding: 0;
  margin: 0;
  margin: 1em 0 0;
}

main #program .program-list .program-list-content .speaker .speaker-url li {
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}

main #program .program-list .program-list-content .speaker .speaker-url li::before {
  content: none;
}

main #program .program-list .program-list-content .speaker .speaker-url li {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.75;
}

main #program .program-list .program-list-content .speaker .speaker-url li+li {
  margin: 0.25em 0 0;
}

main #program .program-list .program-list-content .speaker .speaker-url a {
  text-decoration: underline;
}

main #program .program-list .program-list-content .speaker.speaker-few-data {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 10px 0 0 0;
  line-height: 1.5;
}

@media only screen and (max-width: 560px) {
  main #program .program-list .program-list-content .speaker.speaker-few-data {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-top: 20px;
  }
}

main #program .program-list .program-list-content .speaker.speaker-few-data .speaker-data-position {
  margin: 0;
  margin-right: 1em;
}

main #program .program-list .program-list-content .speaker.speaker-few-data .speaker-data-name {
  margin: 0;
}

main #program .program-list .program-list-content .speaker .speaker-block {
  width: 30%;
}

main #program .program-list .program-list-content .speaker .speaker-block .speaker-pics {
  width: 100%;
}

main #program .program-list .program-list-content .speaker .speaker-block .speaker-data {
  width: 100%;
  margin-top: 2.5em;
}

main #program .program-list .program-list-content .speaker.bannar {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media only screen and (max-width: 768px) {
  main #program .program-list .program-list-content .speaker.bannar {
    max-width: 532px;
    margin-right: auto;
    margin-left: auto;
  }
}

@media only screen and (max-width: 560px) {
  main #program .program-list .program-list-content .speaker.bannar {
    max-width: 246px;
  }
}

main #program .program-list .program-list-content .speaker.bannar::after {
  display: block;
  content: "";
  width: 30%;
}

@media only screen and (max-width: 768px) {
  main #program .program-list .program-list-content .speaker.bannar::after {
    width: 48%;
  }
}

main #program .program-list .program-list-content .speaker.bannar .speaker-block {
  padding: 5% 0 0;
}

@media only screen and (max-width: 768px) {
  main #program .program-list .program-list-content .speaker.bannar .speaker-block {
    width: 48%;
  }
}

@media only screen and (max-width: 560px) {
  main #program .program-list .program-list-content .speaker.bannar .speaker-block {
    width: 100%;
    padding: 1.25em 0 0;
  }
}

main #program .program-list .program-list-content .speaker.bannar .speaker-block a {
  display: block;
  border: 1px solid #b0b0b0;
}

main #program .program-list .program-list-content .speaker.bannar .speaker-block:first-child,
main #program .program-list .program-list-content .speaker.bannar .speaker-block:nth-child(2),
main #program .program-list .program-list-content .speaker.bannar .speaker-block:nth-child(3) {
  padding-top: 0;
}

@media only screen and (max-width: 560px) {
  main #program .program-list .program-list-content .speaker.bannar .speaker-block:nth-child(2) {
    padding: 1.25em 0 0;
  }
}

@media only screen and (max-width: 768px) {
  main #program .program-list .program-list-content .speaker.bannar .speaker-block:nth-child(3) {
    padding: 5% 0 0;
  }
}

@media only screen and (max-width: 560px) {
  main #program .program-list .program-list-content .speaker.bannar .speaker-block:nth-child(3) {
    padding: 1.25em 0 0;
  }
}

@media only screen and (max-width: 768px) {
  main #program .program-list .program-list-content .speaker.speaker-flex {
    display: block;
  }
}

@media only screen and (max-width: 768px) {
  main #program .program-list .program-list-content .speaker.speaker-flex .speaker-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
  }
}

@media only screen and (max-width: 560px) {
  main #program .program-list .program-list-content .speaker.speaker-flex .speaker-block {
    display: block;
  }
}

@media only screen and (max-width: 768px) {
  main #program .program-list .program-list-content .speaker.speaker-flex .speaker-block .speaker-pics {
    width: 38.44%;
  }
}

@media only screen and (max-width: 560px) {
  main #program .program-list .program-list-content .speaker.speaker-flex .speaker-block .speaker-pics {
    width: 100%;
  }
}

@media only screen and (max-width: 768px) {
  main #program .program-list .program-list-content .speaker.speaker-flex .speaker-block .speaker-data {
    width: 55.31%;
    margin: 0;
  }
}

@media only screen and (max-width: 560px) {
  main #program .program-list .program-list-content .speaker.speaker-flex .speaker-block .speaker-data {
    width: 100%;
    margin: 1.25em 0 0;
  }
}

@media only screen and (max-width: 768px) {
  main #program .program-list .program-list-content .speaker.speaker-flex .speaker-block+.speaker-block {
    margin-top: 2.5em;
  }
}

main #program .program-list .program-list-content>p {
  font-size: 14px;
  font-size: 0.875rem;
}

@media only screen and (max-width: 560px) {
  main #program .program-list .program-list-content>p {
    font-size: 12px;
    font-size: 0.75rem;
  }
}

main #program .program-list .program-list-content>p+.speaker {
  margin-top: 3.75em;
}

main #program .program-list+.program-date-header {
  margin-top: 7.5em;
}

main #program .program-list.align-center {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

main #program .program-note {
  font-size: 14px;
  font-size: 0.875rem;
  text-align: right;
  margin: 5em 0 0;
}

@media only screen and (max-width: 768px) {
  main #program .program-note {
    text-align: left;
  }
}

@media only screen and (max-width: 560px) {
  main #program .program-note {
    margin: 2.5em 0 0;
  }
}

main #contact {
  padding-top: 60px;
  padding-bottom: 60px;
}

@media only screen and (min-width: 561px) {
  main #contact {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}

@media only screen and (min-width: 769px) {
  main #contact {
    padding-top: 160px;
    padding-bottom: 160px;
  }
}

main #contact .inquiry-block {
  border: 1px solid #fff;
  margin-top: 60px;
  padding: 10px;
}

@media only screen and (min-width: 561px) {
  main #contact .inquiry-block {
    padding: 30px;
  }
}

@media only screen and (min-width: 769px) {
  main #contact .inquiry-block {
    margin-top: 80px;
  }
}

main #contact .inquiry-block>h3 {
  font-size: 16px;
  font-size: 1rem;
  font-weight: bold;
  color: #000;
  line-height: 1;
  margin: 0 0 1.25em;
}

@media only screen and (max-width: 768px) {
  main #contact .inquiry-block>h3 {
    margin: 0 0 1.75em;
    text-align: center;
  }
}

main #contact .inquiry-block>ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

main #contact .inquiry-block>ul li {
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}

main #contact .inquiry-block>ul li::before {
  content: none;
}

main #contact .inquiry-block>ul li dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 14px;
  font-size: 0.875rem;
}

@media screen and (max-width: 960px) {
  main #contact .inquiry-block>ul li dl {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}

main #contact .inquiry-block>ul li dl dt {
  position: relative;
  width: 12em;
  padding-right: 1em;
}

@media only screen and (max-width: 560px) {
  main #contact .inquiry-block>ul li dl dt {
    width: 100%;
  }
}

main #contact .inquiry-block>ul li dl dt::after {
  position: absolute;
  content: "：";
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}

@media only screen and (max-width: 560px) {
  main #contact .inquiry-block>ul li dl dt::after {
    position: static;
  }
}

main #contact .inquiry-block>ul li dl dd a {
  font-weight: bold;
}

main #contact .inquiry-block>ul li dl dd+dd {
  margin-left: 1.43em;
}

@media screen and (max-width: 680px) {
  main #contact .inquiry-block>ul li dl .inquiry-tell {
    margin-left: 0;
  }
}

@media screen and (max-width: 960px) {
  main #contact .inquiry-block>ul li dl .inquiry-link {
    width: 100%;
    margin-left: 0;
  }
}

main #contact .inquiry-block>ul li dl .inquiry-link a.hover:hover {
  opacity: 1;
  color: #666;
}

main #contact .inquiry-block>ul li+li {
  margin-top: 0.25em;
}

@media screen and (max-width: 960px) {
  main #contact .inquiry-block>ul li+li {
    margin-top: 1.5em;
  }
}

.links {
  padding: 60px 6.22%;
  background: linear-gradient(to right, #021766 0%, #06084F 50%, #2B067B 100%);
}

@media only screen and (min-width: 769px) {
  .links {
    padding: 80px 6.22%;
  }
}

.links .link-items {
  list-style: none;
  padding: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.links .link-items li {
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}

.links .link-items li::before {
  content: none;
}

@media screen and (max-width: 980px) {
  .links .link-items {
    width: 100%;
    max-width: 600px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: auto;
    margin-left: auto;
  }
}

@media only screen and (max-width: 768px) {
  .links .link-items {
    max-width: 230px;
  }
}

@media screen and (max-width: 980px) {
  .links .link-items .item {
    width: 50%;
  }
}

@media only screen and (max-width: 768px) {
  .links .link-items .item {
    width: 100%;
  }
}

@media only screen and (max-width: 768px) {
  .links .link-items .item:nth-child(2) {
    margin-top: 2em;
  }
}

@media screen and (max-width: 980px) {

  .links .link-items .item:nth-child(3),
  .links .link-items .item:nth-child(4),
  .links .link-items .item:nth-child(5) {
    margin-top: 2em;
  }
}

.links .link-items .item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #fff;
}

.links .link-items .item a .link-item-icon {
  width: 3em;
}

.links .link-items .item a .link-item-title {
  margin-left: 1em;
}

.links .link-items .item a .link-item-title span {
  display: block;
  line-height: 1.5;
}

.links .link-items .item a .link-item-title span:first-child {
  font-size: 14px;
  font-size: 0.875rem;
}

.links .link-items .item a .link-item-title span:last-child {
  font-size: 18px;
  font-size: 1.125rem;
}

footer {
  position: relative;
}

footer .footer-organizer {
  padding: 2.19em 0;
  background: #D8DBE2;
}

footer .footer-organizer .organizer-inner {
  position: relative;
}

footer .footer-organizer .organizer-inner .organizer {
  font-size: 18px;
  font-size: 1.125rem;
  text-align: center;
}

@media only screen and (max-width: 560px) {
  footer .footer-organizer .organizer-inner .organizer {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

@media screen and (max-width: 374px) {
  footer .footer-organizer .organizer-inner .organizer {
    font-size: 12px;
    font-size: 0.75rem;
  }
}

footer .footer-coporate {
  padding: 4.5em 6.22%;
}

@media only screen and (max-width: 768px) {
  footer .footer-coporate {
    padding: 3.75em 5.21% 2.5em;
  }
}

@media only screen and (max-width: 560px) {
  footer .footer-coporate {
    padding: 2.5em 8% 6em;
  }
}

footer .footer-coporate .notes-items {
  list-style: none;
  padding: 0;
  margin: 0;
}

footer .footer-coporate .notes-items li {
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}

footer .footer-coporate .notes-items li::before {
  content: none;
}

footer .footer-coporate .notes-items li {
  font-size: 11px;
  font-size: 0.6875rem;
  line-height: 1.5;
}

footer .footer-coporate .notes-items li+li {
  margin: 0.64em 0 0;
}

footer .footer-coporate .corporate-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media only screen and (max-width: 768px) {
  footer .footer-coporate .corporate-links .corporate-logo {
    width: 4em;
  }
}

footer .footer-coporate .corporate-links .footer-sns {
  list-style: none;
  padding: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 0 0 1.25em;
}

footer .footer-coporate .corporate-links .footer-sns li {
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}

footer .footer-coporate .corporate-links .footer-sns li::before {
  content: none;
}

@media only screen and (max-width: 560px) {
  footer .footer-coporate .corporate-links .footer-sns {
    margin: 0 0 0 1em;
  }
}

footer .footer-coporate .corporate-links .footer-sns li {
  width: 1.69em;
}

@media only screen and (max-width: 560px) {
  footer .footer-coporate .corporate-links .footer-sns li {
    width: 1.5em;
  }
}

footer .footer-coporate .corporate-links .footer-sns li+li {
  margin: 0 0 0 0.94em;
}

@media only screen and (max-width: 560px) {
  footer .footer-coporate .corporate-links .footer-sns li+li {
    margin: 0 0 0 0.63em;
  }
}

footer .footer-coporate .corporate-links .footer-sns li a {
  display: block;
}

footer .footer-coporate .corporate-links .footer-sns li a img {
  width: 100%;
}

footer .footer-bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 2.75em 0 0;
}

@media screen and (max-width: 980px) {
  footer .footer-bottom {
    display: block;
  }
}

footer .footer-bottom .footer-nav {
  list-style: none;
  padding: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

footer .footer-bottom .footer-nav li {
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}

footer .footer-bottom .footer-nav li::before {
  content: none;
}

@media only screen and (max-width: 560px) {
  footer .footer-bottom .footer-nav {
    display: block;
  }
}

footer .footer-bottom .footer-nav li {
  font-size: 12px;
  font-size: 0.75rem;
}

@media only screen and (max-width: 560px) {
  footer .footer-bottom .footer-nav li {
    font-size: 10px;
    font-size: 0.625rem;
    border-bottom: 1px solid #d0d0d0;
  }
}

footer .footer-bottom .footer-nav li a {
  font-weight: bold;
}

@media only screen and (max-width: 560px) {
  footer .footer-bottom .footer-nav li a {
    display: block;
    padding: 1.6em 0;
  }
}

footer .footer-bottom .footer-nav li+li {
  margin: 0 0 0 1em;
}

@media only screen and (max-width: 560px) {
  footer .footer-bottom .footer-nav li+li {
    margin: 0;
  }
}

@media screen and (max-width: 980px) {
  footer .footer-bottom .footer_copy {
    margin-top: 2em;
    text-align: right;
  }
}

@media only screen and (max-width: 560px) {
  footer .footer-bottom .footer_copy {
    text-align: left;
    margin-top: 3em;
  }
}

footer .footer-bottom .footer_copy p {
  font-size: 13px;
}

.pagetop-auto {
  display: none;
  position: fixed;
  bottom: 0;
  right: 0px;
  z-index: 9999;
}

.pagetop-auto a {
  display: block;
}

.pagetop-auto a:hover {
  filter: alpha(opacity=80);
  opacity: 0.8;
  -moz-opacity: 0.8;
}

.info {}

.info+.info {
  margin-top: 60px;
}

@media only screen and (min-width: 769px) {
  .info+.info {
    margin-top: 80px;
  }
}

.info_heading {
  font-weight: bold;
}

.info_txtBlock {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.info_heading+.info_txtBlock {
  margin-top: 10px;
}

.info_txtBlock+.info_txtBlock {
  margin-top: 20px;
}

.info_txt {}

.info_txt a {
  text-decoration: underline;
}

.info_txt a:hover {
  color: #666;
}

.list {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
}

.list.-asterisk {
  list-style-type: none;
}

.list_item {}

.list.-asterisk .list_item {
  margin-left: 1em;
  text-indent: -0.5em;
  font-size: 14px;
}

.list.-asterisk .list_item::before {
  content: "※";
}

.contents-body>*:first-child {
  margin-top: 0 !important;
}

.contents-body>*.alignleft:first-child+h1,
.contents-body>*.alignleft:first-child+h2,
.contents-body>*.alignleft:first-child+h3,
.contents-body>*.alignleft:first-child+h4,
.contents-body>*.alignleft:first-child+h5,
.contents-body>*.alignleft:first-child+h6,
.contents-body>*.alignleft:first-child+div,
.contents-body>*.alignleft:first-child+p {
  margin-top: 0;
}

.contents-body>*.alignlight:first-child+h1,
.contents-body>*.alignlight:first-child+h2,
.contents-body>*.alignlight:first-child+h3,
.contents-body>*.alignlight:first-child+h4,
.contents-body>*.alignlight:first-child+h5,
.contents-body>*.alignlight:first-child+h6,
.contents-body>*.alignlight:first-child+div,
.contents-body>*.alignlight:first-child+p {
  margin-top: 0;
}

.contents-body div>*.alignleft:first-child+h1,
.contents-body div>*.alignleft:first-child+h2,
.contents-body div>*.alignleft:first-child+h3,
.contents-body div>*.alignleft:first-child+h4,
.contents-body div>*.alignleft:first-child+h5,
.contents-body div>*.alignleft:first-child+h6,
.contents-body div>*.alignleft:first-child+div,
.contents-body div>*.alignleft:first-child+p,
.contents-body section>*.alignleft:first-child+h1,
.contents-body section>*.alignleft:first-child+h2,
.contents-body section>*.alignleft:first-child+h3,
.contents-body section>*.alignleft:first-child+h4,
.contents-body section>*.alignleft:first-child+h5,
.contents-body section>*.alignleft:first-child+h6,
.contents-body section>*.alignleft:first-child+div,
.contents-body section>*.alignleft:first-child+p,
.contents-body article>*.alignleft:first-child+h1,
.contents-body article>*.alignleft:first-child+h2,
.contents-body article>*.alignleft:first-child+h3,
.contents-body article>*.alignleft:first-child+h4,
.contents-body article>*.alignleft:first-child+h5,
.contents-body article>*.alignleft:first-child+h6,
.contents-body article>*.alignleft:first-child+div,
.contents-body article>*.alignleft:first-child+p {
  margin-top: 0;
}

.contents-body div>*.alignlight:first-child+h1,
.contents-body div>*.alignlight:first-child+h2,
.contents-body div>*.alignlight:first-child+h3,
.contents-body div>*.alignlight:first-child+h4,
.contents-body div>*.alignlight:first-child+h5,
.contents-body div>*.alignlight:first-child+h6,
.contents-body div>*.alignlight:first-child+div,
.contents-body div>*.alignlight:first-child+p,
.contents-body section>*.alignlight:first-child+h1,
.contents-body section>*.alignlight:first-child+h2,
.contents-body section>*.alignlight:first-child+h3,
.contents-body section>*.alignlight:first-child+h4,
.contents-body section>*.alignlight:first-child+h5,
.contents-body section>*.alignlight:first-child+h6,
.contents-body section>*.alignlight:first-child+div,
.contents-body section>*.alignlight:first-child+p,
.contents-body article>*.alignlight:first-child+h1,
.contents-body article>*.alignlight:first-child+h2,
.contents-body article>*.alignlight:first-child+h3,
.contents-body article>*.alignlight:first-child+h4,
.contents-body article>*.alignlight:first-child+h5,
.contents-body article>*.alignlight:first-child+h6,
.contents-body article>*.alignlight:first-child+div,
.contents-body article>*.alignlight:first-child+p {
  margin-top: 0;
}

.contents-body h2 {
  font-size: 32px;
  font-size: 2rem;
}

.contents-body h3 {
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: normal;
}

.contents-body h4 {
  font-size: 20px;
  font-size: 1.25rem;
}

.contents-body div,
.contents-body p,
.contents-body table,
.contents-body ul,
.contents-body ol {
  line-height: 2;
}

.contents-body figure {
  position: relative;
}

.contents-body .red-title-header {
  width: 100%;
  border-bottom: 2px solid var(--color-blue);
  text-align: center;
  margin-bottom: 80px;
  padding-bottom: 1.63em;
}

.contents-body.-font_lightgray .red-title-header {
  border-bottom: 2px solid var(--color-lightgray);
}

@media only screen and (max-width: 768px) {
  .contents-body .red-title-header {
    margin-bottom: 60px;
  }
}

@media only screen and (max-width: 560px) {
  .contents-body .red-title-header {
    margin-bottom: 2.5em;
  }
}

.contents-body .red-title-header>div {
  font-family: "Obvia", sans-serif;
  font-size: 56px;
  line-height: 1;
  color: var(--color-blue);
}

.contents-body.-font_lightgray .red-title-header>div {
  color: var(--color-lightgray);
}

@media only screen and (max-width: 560px) {
  .contents-body .red-title-header>div {
    font-size: 40px;
  }
}

.contents-body .red-title-header h3 {
  font-size: 24px;
  line-height: 1;
  margin-top: 0.75em;
  color: #333;
}

.contents-body.-font_lightgray .red-title-header h3 {
  color: var(--color-lightgray);
}

@media only screen and (max-width: 560px) {
  .contents-body .red-title-header h3 {
    font-size: 18px;
  }
}

@-webkit-keyframes fade {
  0% {
    opacity: 0;
    z-index: -1;
  }

  100% {
    opacity: 1;
    z-index: 1;
  }
}

@keyframes fade {
  0% {
    opacity: 0;
    z-index: -1;
  }

  100% {
    opacity: 1;
    z-index: 1;
  }
}

@-webkit-keyframes fadeOut {
  0% {
    display: block;
    opacity: 1;
  }

  99% {
    display: block;
    opacity: 0;
  }

  100% {
    display: none;
    opacity: 0;
  }
}

@keyframes fadeOut {
  0% {
    display: block;
    opacity: 1;
  }

  99% {
    display: block;
    opacity: 0;
  }

  100% {
    display: none;
    opacity: 0;
  }
}

@-webkit-keyframes slideLtoR {
  0% {
    left: -100%;
  }

  100% {
    left: 0;
  }
}

@keyframes slideLtoR {
  0% {
    left: -100%;
  }

  100% {
    left: 0;
  }
}

@-webkit-keyframes slideRtoL {
  0% {
    right: -100%;
  }

  100% {
    right: 0;
  }
}

@keyframes slideRtoL {
  0% {
    right: -100%;
  }

  100% {
    right: 0;
  }
}

@-webkit-keyframes resizeWidth {
  0% {
    -webkit-transform: scale(0, 1);
    transform: scale(0, 1);
  }

  100% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
}

@keyframes resizeWidth {
  0% {
    -webkit-transform: scale(0, 1);
    transform: scale(0, 1);
  }

  100% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
}


.-bg_black {
  background: #000;
}

.-font_white {
  color: #fff;
}

.-font_lightgray {
  color: #fff;
}

.-font_lightgray a {
  color: var(--color-lightgray);
}

.-font_lightgray a.hover:hover {
  color: var(--color-whitesmoke);
}