@charset "UTF-8";
/*=============================================
*
* コンテンツ見出し共通
*
=============================================*/
#top-area {
  padding: 20px 0;
}
@media screen and (max-width: 768px) {
  #top-area {
    padding: 14px 0 0;
  }
}
#top-area .heading-area {
  text-align: center;
}
#top-area .heading-area .heading {
  line-height: 1.5;
}
#top-area .heading-area .heading .en {
  color: #7EA2F5;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 5.7rem;
  font-style: italic;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  #top-area .heading-area .heading .en {
    display: inline-block;
    font-size: 2.7rem;
    margin-top: 6px;
  }
}
#top-area .heading-area .heading .jp {
  color: #DBDBDB;
  font-size: 1.7rem;
}
@media screen and (max-width: 768px) {
  #top-area .heading-area .heading .jp {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 768px) {
  #top-area .breadcrumbs {
    margin-bottom: 15px;
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
  }
}
@media screen and (max-width: 900px) {
  body {
    padding-bottom: 0 !important;
  }
}
#top-area .breadcrumbs ol li {
  color: #fff;
  display: inline-block;
  font-size: 1.3rem;
}
@media screen and (max-width: 768px) {
  #top-area .breadcrumbs ol li {
    font-size: 1.2rem;
  }
}
#top-area .breadcrumbs ol li a {
  color: #fff;
  text-decoration: underline;
}
#top-area .breadcrumbs ol li span {
  color: #fff;
}

.tso-menber #top-area .heading-area .heading .en {
  color: #11ef34;
}

/*=============================================
*
* 来場登録ステップナビ
*
=============================================*/
.reg-nav {
  margin: 20px auto 0;
  max-width: 980px;
  padding: 0 10px;
}
.reg-nav ul {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  list-style: none;
  margin: 0;
  padding: 0;
}
.reg-nav ul li {
  background: #fff;
  border: 2px solid #9c9c9c;
  border-radius: 8px;
  color: #444;
  font-size: 1.4rem;
  font-weight: 700;
  min-width: 120px;
  padding: 10px 18px;
  position: relative;
  text-align: center;
  margin-right: 26px;
}
.reg-nav ul li:last-child {
  margin-right: 0;
}
.reg-nav ul li::after {
  background: #9c9c9c;
  content: "";
  height: 4px;
  position: absolute;
  right: -26px;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 26px;
}
.reg-nav ul li:last-child::after {
  display: none;
}
.reg-nav ul li.done {
  background: #45cf78;
  border-color: #45cf78;
  color: #fff;
}
.reg-nav ul li.done::after {
  background: #45cf78;
}
.reg-nav ul li.current {
  background: #ff546e;
  border-color: #ff546e;
  color: #fff;
}
.reg-nav ul li.current::after {
  background: #ff546e;
}
@media screen and (max-width: 768px) {
  .reg-nav ul li {
    margin: 0 10px 10px 0;
    min-width: 100px;
    padding: 8px 12px;
  }
  .reg-nav ul li::after {
    display: none;
  }
}

/*=============================================
*
* カート
*
=============================================*/
#cart-box {
  padding: 20px 0;
  text-align: center;
}
#cart-box .cart-icon {
  margin-right: 5px;
}
#cart-box .quantity {
  font-family: "Roboto", sans-serif;
  font-weight: 700;
}

/*=============================================
*
* 検索ボックス共通
*
=============================================*/
#search-area {
  margin-bottom: 30px;
  overflow-x: auto;
  white-space: nowrap;
}
#search-area form input,
#search-area form select {
  margin-right: 5px;
}
#search-area form #type {
  width: 95px;
}
#search-area form #kaisaibi_st,
#search-area form #kaisaibi_ed {
  width: 115px;
}
#search-area form #kaisaibi_ed {
  margin-left: 5px;
}
#search-area form #shikaku_flg {
  width: 130px;
}
#search-area form #kaijou {
  width: 130px;
}
#search-area form #freeword {
  width: 150px;
}
#search-area form #freeword::before {
  content: "";
  display: block;
}

/*=============================================
*
* ボックス共通
*
=============================================*/
.box-type1 {
  margin: 0 auto 30px;
}
.box-type1 > .inner {
  border: 1px #B5B5B5 solid;
  padding: 30px;
  text-align: center;
}

.box-type2 {
  margin: 0 auto 30px;
  max-width: 750px;
  padding: 15px;
}
.box-type2 > .inner {
  border: 1px #B5B5B5 solid;
  padding: 30px;
}

.free {
  color: #EF487C;
}

.warning {
  color: #FF2727;
  font-size: 2.2rem;
  font-weight: 700;
}

.settled {
  color: #24C850;
}

.unsettled {
  color: #E13333;
}

/*=============================================
*
* VIDEOエリア
*
=============================================*/
.video-area .lead {
  font-size: 1.6rem;
  margin-bottom: 10px;
}
.video-area h3 {
  font-size: 2rem;
  margin-bottom: 15px;
}
.video-area .video {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 75%;
}
.video-area .video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*=============================================
*
* トップページ
*
=============================================*/
#top-banner-area ul {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  justify-content: center;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
#top-banner-area ul > li {
  margin-right: 20px;
  width: calc(33.333% - 13.333px);
}
#top-banner-area ul > li:nth-child(3n) {
  margin-right: 0;
}
@media screen and (max-width: 768px) {
  #top-banner-area ul > li {
    margin: 0 0 15px 0;
    width: 100%;
  }
  #top-banner-area ul > li:last-child {
    margin-bottom: 0;
  }
}
#top-banner-area ul > li .banner {
  margin-bottom: 10px;
}
#top-banner-area ul > li span {
  background: url("../images/common/arrow-bl.svg") no-repeat right center;
  display: inline-block;
  font-size: 1.8rem;
  padding-right: 12px;
}
@media screen and (max-width: 768px) {
  #top-banner-area ul > li span {
    font-size: 1.7rem;
    padding-right: 10px;
  }
}

/*=============================================
*
*トップページ お知らせ
*
=============================================*/
#news-area > .inner h2 {
  background: url("../images/common/new-area-h-icon.svg") no-repeat left center;
  padding-left: 40px;
}
@media screen and (max-width: 768px) {
  #news-area > .inner h2 {
    background-size: 23px;
    padding-left: 35px;
  }
}
#news-area > .inner > ul {
  margin-bottom: 20px;
}
#news-area > .inner > ul > li {
  border-bottom: 1px #E3E3E3 solid;
  line-height: 1.7;
  margin-bottom: 15px;
  padding-bottom: 15px;
  text-align: left;
}
#news-area > .inner > ul > li .date {
  color: #474747;
  font-family: "Roboto", sans-serif;
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  #news-area > .inner > ul > li .date {
    font-size: 1.4rem;
  }
}
#news-area > .inner > ul > li .title {
  color: #707070;
  font-size: 1.6rem;
  line-height: 1.7;
  overflow-wrap: anywhere;
  text-align: left;
}
@media screen and (max-width: 768px) {
  #news-area > .inner > ul > li .title {
    font-size: 1.4rem;
  }
}
#news-area > .inner > ul > li .title a {
  color: inherit;
  display: inline-block;
  text-decoration: underline;
}
.news-detail-back {
  margin-bottom: 15px;
}
.news-detail-back .btn-type3 {
  text-align: center;
}
.news-detail-title {
  padding: 10px 0 0 10px;
}
.news-detail-body,
.news-detail-attachment {
  padding: 20px 10px;
  text-align: left;
}
.news-detail-body {
  line-height: 1.9;
  overflow-wrap: anywhere;
}
@media screen and (max-width: 768px) {
  .news-detail-back {
    margin-bottom: 10px;
    text-align: center;
  }
  .news-detail-back .btn-type3 {
    min-width: 160px;
    padding: 10px 24px;
  }
  .news-detail-title {
    padding-left: 0;
    padding-top: 8px;
  }
  .news-detail-body,
  .news-detail-attachment {
    padding: 16px 0;
  }
}

/*=============================================
*
* トップページ キャンペーン
*
=============================================*/
@media screen and (max-width: 768px) {
  #home #campaign-area .two-content-box {
    -ms-flex-wrap: wrap-reverse;
        flex-wrap: wrap-reverse;
    width: 100%;
  }
}
#home #campaign-area .two-content-box .box:nth-child(1) {
  width: calc(60% - 20px);
}
@media screen and (max-width: 768px) {
  #home #campaign-area .two-content-box .box:nth-child(1) {
    width: 100%;
  }
}
#home #campaign-area .two-content-box .box:nth-child(2) {
  width: calc(40% - 20px);
}
@media screen and (max-width: 768px) {
  #home #campaign-area .two-content-box .box:nth-child(2) {
    margin-bottom: 20px;
    text-align: center;
    width: 100%;
  }
}
#home #campaign-area .two-content-box .box:nth-child(2) img {
  max-width: 362.78px;
}
@media screen and (max-width: 768px) {
  #home #campaign-area .two-content-box .box:nth-child(2) img {
    max-width: 100%;
    width: 100%;
  }
}
#home #campaign-area .two-content-box .btn-area .btn-type1 {
  font-weight: 500;
}
#home #campaign-area .two-content-box .btn-area .btn-type1.tso {
  background-color: #23ac38;
}
#home #campaign-area .two-content-box .btn-area .btn-type1.spo {
  background-color: #223a70;
}

/*=============================================
*
* ログイン
*
=============================================*/
#login #top-area {
  background: url("../images/contents/login-top.jpg") repeat center center/cover;
}
#login #login-form-area > .inner #login-form {
  -webkit-box-shadow: 0px 0px 6px #00000029;
          box-shadow: 0px 0px 6px #00000029;
  margin: 0 auto;
  max-width: 600px;
  padding: 40px;
  text-align: center;
}
#login .top-keyvisual {
  margin-bottom: 30px;
}
#login .top-keyvisual-image {
  max-width: 100%;
  height: auto;
}
#login #login-form-area > .inner #login-form input {
  border: none;
  border-bottom: 1px #ccc solid;
  display: block;
  margin: 0 auto 30px;
  width: 100%;
}
#login #login-form-area > .inner .link-type1 {
  display: inline-block;
  margin-bottom: 20px;
}
#login #login-form-area > .inner .link-type2 {
  display: inline-block;
  margin-bottom: 20px;
}
#login #login-form-area > .inner #login-form .login-register-link {
  margin-top: 24px;
}
#login #login-form-area > .inner #login-form .login-register-link a {
  display: inline-block;
  line-height: 1.7;
  text-align: left;
}
@media screen and (max-width: 768px) {
  #login #login-form-area > .inner #login-form {
    padding: 24px 16px;
  }
  #login #login-form-area > .inner #login-form input {
    font-size: 16px;
    margin-bottom: 20px;
  }
  #login #login-form-area > .inner #login-form .login-register-link {
    margin-top: 16px;
  }
}

/*=============================================
*
* 新規会員登録 / 登録情報変更・確認
*
=============================================*/
#regist #top-area,
#change-regist #top-area {
  background: url("../images/contents/login-top.jpg") repeat center center/cover;
}
#regist .submit-area .btn-area #confirm-btn,
#change-regist .submit-area .btn-area #confirm-btn {
  margin-bottom: 25px;
}
#regist .submit-area .btn-area #reset-btn,
#change-regist .submit-area .btn-area #reset-btn {
  display: block;
  margin: 0 auto;
}
#regist .top-reg-submit-area {
  padding: 0;
}
#regist .top-reg-alert-text {
  color: #d43535;
  display: block;
  margin-top: 10px;
}
#regist .form_li label {
  color: #606060;
  font-size: 16px;
  line-height: 24px;
}
#regist .form_li [type=checkbox],
#regist .form_li [type=radio] {
  -webkit-transform: scale(1.4);
      -ms-transform: scale(1.4);
          transform: scale(1.4);
  width: 30px;
}
#regist input::-webkit-input-placeholder {
  color: #d6d6d6;
}
#regist input::-moz-placeholder {
  color: #d6d6d6;
}
#regist input:-ms-input-placeholder {
  color: #d6d6d6;
}
#regist input::-ms-input-placeholder {
  color: #d6d6d6;
}
#regist input::placeholder {
  color: #d6d6d6;
}
.top-companion-form-area .form_li label {
  color: #606060;
  font-size: 16px;
  line-height: 24px;
}
.top-companion-form-area .form_li [type=checkbox],
.top-companion-form-area .form_li [type=radio] {
  -webkit-transform: scale(1.4);
      -ms-transform: scale(1.4);
          transform: scale(1.4);
  width: 30px;
}
.top-companion-form-area input::-webkit-input-placeholder {
  color: #d6d6d6;
}
.top-companion-form-area input::-moz-placeholder {
  color: #d6d6d6;
}
.top-companion-form-area input:-ms-input-placeholder {
  color: #d6d6d6;
}
.top-companion-form-area input::-ms-input-placeholder {
  color: #d6d6d6;
}
.top-companion-form-area input::placeholder {
  color: #d6d6d6;
}
.top-companion-note-main {
  display: inline-block;
  line-height: 1.7;
}
.top-companion-heading-row {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.top-companion-heading {
  margin: 0;
}
.top-companion-copy-btn.btn-type1 {
  background-color: #2b78e4;
  font-size: 1.6rem;
  line-height: 1.2;
  min-width: 0;
  padding: 7px 12px;
}
.top-companion-about-note {
  line-height: 1.8;
}
.top-companion-about-btn-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 12px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.top-companions-form-area .form_li label {
  color: #606060;
  font-size: 16px;
  line-height: 24px;
}
.top-companions-form-area .form_li [type=checkbox],
.top-companions-form-area .form_li [type=radio] {
  -webkit-transform: scale(1.4);
      -ms-transform: scale(1.4);
          transform: scale(1.4);
  width: 30px;
}
.top-companions-form-area input::-webkit-input-placeholder {
  color: #d6d6d6;
}
.top-companions-form-area input::-moz-placeholder {
  color: #d6d6d6;
}
.top-companions-form-area input:-ms-input-placeholder {
  color: #d6d6d6;
}
.top-companions-form-area input::-ms-input-placeholder {
  color: #d6d6d6;
}
.top-companions-form-area input::placeholder {
  color: #d6d6d6;
}
.top-companions-intro-wrap {
  margin-top: 20px;
  max-width: 1090px;
  width: 90%;
}
.top-companions-account-note {
  margin-bottom: 20px;
}
.top-reg-guide-note,
.top-companions-guide-note,
.top-reg-complete-note {
  line-height: 1.85;
  margin-left: auto;
  margin-right: auto;
  max-width: 900px;
  text-align: left;
}
.top-companions-login-btn.btn-type1 {
  max-width: 520px;
  width: 100%;
}

#regist-form-area .txt-area {
  padding: 40px 15px;
}
#regist-form-area .txt-area .note {
  border: 1px #B5B5B5 solid;
  margin: 0 auto;
  max-width: 750px;
  padding: 30px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  #change-regist #regist-form-area .txt-area {
    padding: 22px 12px;
  }
  #change-regist #regist-form-area .txt-area .note {
    line-height: 1.7;
    padding: 18px 14px;
    text-align: left;
  }
  #change-regist #regist-form-area section {
    padding: 22px 0;
  }
  #change-regist #regist-form-area h2 {
    margin-bottom: 14px;
  }
  #change-regist #regist-form-area .submit-area {
    padding-top: 10px;
  }
}
@media screen and (max-width: 768px) {
  #regist-form-area .tb-type1 tbody tr,
  #regist-form-area .tb-type1 tfoot tr {
    border-bottom: 1px solid #e5e5e5;
    display: block;
    margin-bottom: 10px;
    padding-bottom: 8px;
  }
  #regist-form-area .tb-type1 tbody tr th,
  #regist-form-area .tb-type1 tfoot tr th {
    font-size: 1.35rem;
    line-height: 1.5;
    margin-top: 6px;
    padding: 8px 0 6px;
  }
  #regist-form-area .tb-type1 tbody tr td,
  #regist-form-area .tb-type1 tfoot tr td {
    padding: 0 0 10px;
  }
  #regist-form-area .tb-type1 input[type=text],
  #regist-form-area .tb-type1 input[type=password],
  #regist-form-area .tb-type1 input[type=tel],
  #regist-form-area .tb-type1 input[type=email],
  #regist-form-area .tb-type1 select,
  #regist-form-area .tb-type1 textarea {
    max-width: 100%;
  }
  #regist-form-area #sei,
  #regist-form-area #mei,
  #regist-form-area #sei_kana,
  #regist-form-area #mei_kana {
    display: block;
    margin-bottom: 10px;
    max-width: 100%;
    width: 100%;
  }
  #regist-form-area #mei,
  #regist-form-area #mei_kana {
    margin-bottom: 0;
  }
  #regist-form-area #houjin_type_mae {
    margin-bottom: 15px;
    min-height: 44px;
    padding-bottom: 11px;
    padding-top: 11px;
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  #regist-form-area #kaishamei {
    margin-bottom: 15px;
    max-width: 100%;
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  #regist-form-area #houjin_type_ato {
    min-height: 44px;
    padding-bottom: 11px;
    padding-top: 11px;
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  #regist-form-area #zip_1 {
    min-width: 82px;
    width: 26%;
  }
}
@media screen and (max-width: 768px) {
  #regist-form-area #zip_2 {
    min-width: 92px;
    width: 28%;
  }
  #regist-form-area #zip_2 + .btn-type2 {
    margin-left: 0 !important;
    margin-top: 10px;
    min-height: 44px;
    padding: 10px 18px;
    vertical-align: middle;
  }
  #regist-form-area #todofuken_cd {
    min-height: 44px;
    padding-bottom: 11px;
    padding-top: 11px;
  }
}
@media screen and (max-width: 420px) {
  #regist-form-area #zip_2 + .btn-type2 {
    display: block;
    margin-top: 15px;
  }
}
@media screen and (max-width: 768px) {
  #regist-form-area #tel_1 {
    width: 24%;
  }
}
@media screen and (max-width: 768px) {
  #regist-form-area #tel_2 {
    width: 24%;
  }
}
@media screen and (max-width: 768px) {
  #regist-form-area #tel_3 {
    width: 24%;
  }
}
@media screen and (max-width: 768px) {
  #regist-form-area #ktel_1 {
    width: 24%;
  }
}
@media screen and (max-width: 768px) {
  #regist-form-area #ktel_2 {
    width: 24%;
  }
}
@media screen and (max-width: 768px) {
  #regist-form-area #ktel_3 {
    width: 24%;
  }
}
@media screen and (max-width: 768px) {
  #regist-form-area #tel_1,
  #regist-form-area #tel_2,
  #regist-form-area #tel_3,
  #regist-form-area #ktel_1,
  #regist-form-area #ktel_2,
  #regist-form-area #ktel_3 {
    min-width: 72px;
  }
  #regist-form-area .tb-type1 td .red {
    display: block;
    margin-top: 6px;
  }
  #regist-form-area .tb-type1 td .note,
  #regist-form-area .tb-type1 td .red {
    font-size: 1.15rem;
    line-height: 1.55;
  }
  #regist-form-area .tb-type1 .form_ul {
    margin: 0;
    padding-left: 0;
  }
  #regist-form-area .tb-type1 .form_li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 6px;
    margin-bottom: 6px;
  }
  #regist-form-area .tb-type1 .form_li:last-child {
    margin-bottom: 0;
  }
  #regist-form-area .tb-type1 .form_li label {
    font-size: 1.25rem;
    line-height: 1.45;
  }
  #regist-form-area .tb-type1 .form_li [type=checkbox],
  #regist-form-area .tb-type1 .form_li [type=radio] {
    -webkit-transform: scale(1.2);
        -ms-transform: scale(1.2);
            transform: scale(1.2);
    margin-top: 1px;
    width: 22px;
  }
}
@media screen and (max-width: 768px) {
  #regist-form-area #fax_1 {
    width: 20%;
  }
}
@media screen and (max-width: 768px) {
  #regist-form-area #fax_2 {
    width: 30%;
  }
}
@media screen and (max-width: 768px) {
  #regist-form-area #fax_3 {
    width: 30%;
  }
}

/*=============================================
*
* カート	
*
=============================================*/
#cart #top-area {
  background: url("../images/contents/cart-top.jpg") repeat center center/cover;
}
#cart .cart-total-origin {
  color: #a4a4a4;
  text-decoration: line-through;
}
#cart .cart-total-free {
  color: #f00;
}
#cart .cart-regist-required {
  color: #f00;
  display: inline-block;
  font-size: 1.8rem;
  line-height: 1.5;
}
#cart .cart-ticket-link {
  color: #00f;
  font-size: 1.6rem;
  text-decoration: underline;
}
#cart .cart-empty-text {
  color: #f00;
}
#cart .cart-payment-section-title {
  background-color: #eee;
  padding: 10px;
}
#cart .cart-payment-exh-select {
  background: none;
  border: none;
}
#cart .cart-payment-exh-name {
  margin-bottom: 12px;
  margin-top: 8px;
  overflow-wrap: anywhere;
  white-space: normal;
}
#cart .cart-payment-back-note {
  padding-bottom: 10px;
}
#cart .cart-payment-payment-options {
  padding-top: 20px;
  text-align: center;
}
#cart .cart-payment-method-table {
  margin: 0 auto;
  width: 40%;
}
#cart .cart-payment-warning {
  color: #f00;
  font-size: 1.8rem;
  font-weight: 700;
  padding: 10px;
}
#cart .cart-payment-submit-btn {
  background-color: #f00;
}
#cart .cart-buy-section-title {
  background-color: #eee;
  padding: 10px;
}
#cart .cart-buy-complete-text {
  text-align: left;
}
#cart .cart-buy-payment-lead {
  color: #f00;
  margin-top: 10px;
}
#cart .cart-buy-payment-amount {
  padding: 10px;
}
#cart .cart-buy-status {
  background-color: #ff0;
  padding: 8px 10px;
}
#cart .cart-buy-status.status-receiving {
  color: #008000;
}
#cart .cart-buy-status.status-warn {
  color: #f00;
}
#cart .cart-buy-payment-btn {
  max-width: 100%;
}
#cart table {
  margin-bottom: 30px;
}
#cart table tr td .title {
  text-align: left;
  white-space: normal;
}
@media screen and (max-width: 768px) {
  #cart table tr td .title {
    max-width: 200px;
  }
}
#cart .supp {
  color: #D43535;
}
#cart .btn-area {
  padding-top: 20px;
}
@media screen and (max-width: 768px) {
  #cart #top-area {
    padding: 26px 0 0;
  }
  #cart .tb-wrap .tb-type2 {
    min-width: 760px;
  }
  #cart .tb-wrap .tb-type2 th,
  #cart .tb-wrap .tb-type2 td {
    padding: 12px 10px;
  }
  #cart .btn-area .btn-type1 {
    width: 100%;
  }
  #cart .cart-regist-required {
    font-size: 1.5rem;
    line-height: 1.7;
  }
  #cart .cart-ticket-link {
    font-size: 1.4rem;
  }
  #cart .cart-payment-exh-select {
    max-width: 100%;
    width: 100%;
  }
  #cart .cart-payment-method-table {
    width: 100%;
  }
  #cart .cart-payment-warning {
    font-size: 1.5rem;
    line-height: 1.6;
  }
  #cart .cart-buy-payment-btn {
    width: 100%;
  }
}

/*=============================================
*
* パスワードの変更
*
=============================================*/
#change-password #top-area {
  background: url("../images/contents/config-top.jpg") repeat center center/cover;
}
#change-password #change-passowrd-form-area {
  padding: 40px 0 60px;
}
#change-password #change-passowrd-form {
  margin: 0 auto;
  max-width: 760px;
}
#change-password #change-passowrd-form .tb-type1 td .note {
  display: block;
  line-height: 1.6;
  margin-top: 6px;
  text-align: left;
}
#change-password .payment-wait-note {
  margin-bottom: 28px;
}
#change-password .payment-wait-btn {
  min-width: 260px;
}
@media screen and (max-width: 768px) {
  #change-password #top-area {
    padding: 26px 0 0;
  }
  #change-password #change-passowrd-form-area {
    padding: 24px 0 30px;
  }
  #change-password #change-passowrd-form .tb-type1 {
    margin-bottom: 14px;
  }
  #change-password #change-passowrd-form .tb-type1 td .note {
    font-size: 1.25rem;
    margin-top: 8px;
  }
  #change-password .payment-wait-note {
    margin-bottom: 18px;
  }
  #change-password .payment-wait-btn {
    min-width: 0;
    width: 100%;
  }
}

/*=============================================
*
* 年会費の領収書発行
*
=============================================*/
#receipt-issue #top-area {
  background: url("../images/contents/config-top.jpg") repeat center center/cover;
}
#receipt-issue #receipt-issue-passowrd-form {
  text-align: center;
}
#receipt-issue #receipt-issue-passowrd-form input:first-child {
  margin-bottom: 20px;
}

/*=============================================
*
* ログアウト
*
=============================================*/
#logout #top-area {
  background: url("../images/contents/login-top.jpg") repeat center center/cover;
}
#logout #logout-form-area {
  padding: 60px 0 80px;
}
#logout #logout-form {
  margin: 0 auto;
  max-width: 760px;
}
#logout #logout-form .btn-area {
  margin-bottom: 0;
}
@media screen and (max-width: 768px) {
  #logout #logout-form-area {
    padding: 36px 0 48px;
  }
}

/*=============================================
*
* 登録取り消し
*
=============================================*/
#delete-regist #top-area {
  background: url("../images/contents/config-top.jpg") repeat center center/cover;
}
#delete-regist #delete-regist-form-area {
  padding: 44px 0 70px;
}
#delete-regist #delete-regist-form-area .box-type1 > .inner .note {
  line-height: 1.8;
}
#delete-regist #delete-regist-form-area .warning {
  display: block;
  line-height: 1.7;
  margin-top: 8px;
}
#delete-regist #delete-regist-form .btn-area {
  margin-bottom: 0;
}
@media screen and (max-width: 768px) {
  #delete-regist #delete-regist-form-area {
    padding: 24px 0 38px;
  }
  #delete-regist #delete-regist-form-area .box-type1 {
    margin-bottom: 20px;
  }
  #delete-regist #delete-regist-form-area .box-type1 > .inner {
    padding: 20px 14px;
  }
  #delete-regist #delete-regist-form-area .warning {
    font-size: 1.8rem;
  }
  #delete-regist #delete-regist-form .delete-regist-btn.btn-type1 {
    line-height: 1.35;
    white-space: normal;
  }
}
@media screen and (max-width: 768px) {
  #delete-regist #delete-regist-form .back-btn {
    margin-bottom: 20px;
  }
}

/*=============================================
*
* 展示会来場登録
*
=============================================*/
#exh-visit-regist #top-area {
  background: url("../images/contents/exh-visit-regist-top.jpg") repeat center center/cover;
}

/*=============================================
*
* セミナー共通
*
=============================================*/
.seat-label {
  background: #999;
  color: #fff;
  display: inline-block;
  min-width: 85px;
  padding: 3px 10px;
  text-align: center;
  width: auto;
}
.seat-label.vacant {
  background: #FF8E37;
}
.seat-label.no-vacant {
  background: #6A6A6A;
}
.seat-label.few {
  background: #FF376D;
}

.seminar-type-label {
  background: #999;
  color: #fff;
  display: inline-block;
  min-width: 85px;
  padding: 3px 10px;
  text-align: center;
  width: auto;
}
.seminar-type-label.webinar {
  background: #00A5EA;
}
.seminar-type-label.exhibition-seminar {
  background: #C4954E;
}
.seminar-type-label.meeting {
  background: #75C44E;
}

.place {
  background: url("../images/common/marker-icon.svg") no-repeat left center;
  min-height: 21px;
  padding-left: 25px;
}

.date {
  background: url("../images/common/cal-icon.svg") no-repeat left center;
  padding-left: 25px;
  text-align: left;
}

.price-area {
  color: #707070;
  font-size: 1.7rem;
  font-weight: 400;
  margin-bottom: 20px;
}
.price-area .price {
  font-family: "Roboto", sans-serif;
  font-size: 2.1rem;
}
.price-area .free {
  color: #EE5050;
}

.desc {
  color: #676767;
  font-size: 1.5rem;
  line-height: 1.7;
  margin-bottom: 20px;
}
.desc .red {
  color: #CF2828;
}

.title {
  font-weight: 700;
}

/*=============================================
*
* 展示会セミナー
*
=============================================*/
#exh-seminar #top-area {
  background: url("../images/contents/exh-seminar-top.jpg") repeat center center/cover;
}
#exh-seminar #exh-select-area {
  margin-bottom: 30px;
}
.seminarlist-cart-area {
  padding-bottom: 20px;
  text-align: center;
}
.seminarlist-text-red {
  color: #f00;
}
.seminarlist-search-form .date-range-sep {
  display: inline-block;
}
#exh-seminar #exh-seminar-list.li-type2 > ul > li a .teacher-info-area .teacher-photo {
  height: 67px;
  margin-right: 10px;
  overflow: hidden;
  position: relative;
  width: 50px;
}
#exh-seminar #exh-seminar-list.li-type2 > ul > li a .teacher-info-area .teacher-photo img {
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}
#exh-seminar #exh-seminar-list.li-type2 {
  padding: 30px 0 0 0;
}
#exh-seminar #exh-seminar-list.li-type2 > ul > li {
  border: 1px #00A5EA solid;
  border-radius: 5px;
  margin-bottom: 20px;
}
#exh-seminar #exh-seminar-list.li-type2 > ul > li a {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  padding: 20px;
}
#exh-seminar #exh-seminar-list.li-type2 > ul > li a .seminar-info-area {
  width: calc(100% - 370px);
}
@media screen and (max-width: 768px) {
  #exh-seminar #top-area {
    padding: 26px 0 0;
  }
  #exh-seminar #search-area {
    overflow: visible;
    white-space: normal;
  }
  #exh-seminar #search-area .seminarlist-search-form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 8px;
  }
  #exh-seminar #search-area .seminarlist-search-form input,
  #exh-seminar #search-area .seminarlist-search-form select {
    margin-right: 0;
  }
  #exh-seminar #search-area .seminarlist-search-form #type,
  #exh-seminar #search-area .seminarlist-search-form #shikaku_flg {
    width: 100%;
  }
  #exh-seminar #search-area .seminarlist-search-form #kaisaibi_st,
  #exh-seminar #search-area .seminarlist-search-form #kaisaibi_ed {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 calc(50% - 20px);
            flex: 1 1 calc(50% - 20px);
    width: calc(50% - 20px);
  }
  #exh-seminar #search-area .seminarlist-search-form #kaisaibi_ed {
    margin-left: 0;
  }
  #exh-seminar #search-area .seminarlist-search-form .date-range-sep {
    text-align: center;
    width: 16px;
    line-height: 44px;
  }
  #exh-seminar #search-area .seminarlist-search-form #kaijou,
  #exh-seminar #search-area .seminarlist-search-form #freeword,
  #exh-seminar #search-area .seminarlist-search-form .btn-type2 {
    width: 100%;
  }
  #exh-seminar #search-area .seminarlist-search-form .btn-type2 {
    margin-top: 2px;
  }
  #exh-seminar #exh-seminar-list.li-type2 > ul > li a .seminar-info-area {
    margin-bottom: 15px;
    width: 100%;
  }
}
#exh-seminar #exh-seminar-list.li-type2 > ul > li a .seminar-info-area .seat-label {
  margin: 0 10px 10px 0;
}
#exh-seminar #exh-seminar-list.li-type2 > ul > li a .seminar-info-area .title {
  font-size: 1.8rem;
  font-weight: 700;
  overflow: hidden;
  display: -webkit-box;
  margin-bottom: 10px;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
@media screen and (max-width: 768px) {
  #exh-seminar #exh-seminar-list.li-type2 > ul > li a .seminar-info-area .date {
    display: block;
    margin-bottom: 15px;
  }
}
#exh-seminar #exh-seminar-list.li-type2 > ul > li a .teacher-info-area {
  background: #F2F2F2;
  border-radius: 0 5px 5px 0;
  margin-left: 10px;
  padding: 15px;
  width: 360px;
}
@media screen and (max-width: 768px) {
  #exh-seminar #exh-seminar-list.li-type2 > ul > li a .teacher-info-area {
    margin-left: 0;
    width: 100%;
  }
}
#exh-seminar #exh-seminar-list.li-type2 > ul > li a .teacher-info-area > ul > li {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  align-items: center;
  margin-bottom: 10px;
}
#exh-seminar #exh-seminar-list.li-type2 > ul > li a .teacher-info-area > ul > li:last-child {
  margin-bottom: 0;
}
#exh-seminar #exh-seminar-list.li-type2 > ul > li a .teacher-info-area > ul > li .name {
  text-align: left;
  width: calc(100% - 60px);
}
#exh-seminar #exh-seminar-list.li-type2 > ul > li a .teacher-info-area > ul > li .thumb {
  border-radius: 50%;
  margin-right: 10px;
  max-width: 50px;
}
#exh-seminar #exh-seminar-list.li-type2 > ul > li a .teacher-info-area > ul.number-3over {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
#exh-seminar #exh-seminar-list.li-type2 > ul > li a .teacher-info-area > ul.number-3over > li {
  width: calc(50% - 5px);
  margin-right: 10px;
}
#exh-seminar #exh-seminar-list.li-type2 > ul > li a .teacher-info-area > ul.number-3over > li:nth-child(2n) {
  margin-right: 0;
}

.tso-menber #exh-seminar #exh-seminar-list.li-type2 > ul > li {
  border-color: #23ac38;
}

/*=============================================
*
* 展示会セミナー詳細
*
=============================================*/
#exh-seminar-detail #top-area {
  background: url("../images/contents/exh-seminar-top.jpg") repeat center center/cover;
}
.seminarlist-detail-cart-area {
  padding-bottom: 10px;
  text-align: center;
}
.seminarlist-detail-meta {
  margin-bottom: 10px;
}
.seminarlist-detail-teacher-photo {
  height: 100px;
  margin-right: 10px;
  overflow: hidden;
  position: relative;
  width: 75px;
}
.seminarlist-detail-teacher-photo img {
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}
.seminarlist-detail-popup-photo {
  height: 320px;
  overflow: hidden;
  position: relative;
  width: 240px;
}
.seminarlist-detail-popup-photo img {
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}
.seminarlist-detail-popup-thumb {
  height: 240px;
  width: 240px;
}
#exh-seminar-detail #exh-title-area {
  position: relative;
}
#exh-seminar-detail #exh-title-area h2 {
  display: inline-block;
  margin-right: 15px;
}
#exh-seminar-detail #exh-title-area .exh-title {
  display: inline-block;
  padding-right: 130px;
}
@media screen and (max-width: 768px) {
  #exh-seminar-detail #top-area {
    padding: 26px 0 0;
  }
  #exh-seminar-detail #exh-title-area {
    margin-bottom: 12px;
  }
  #exh-seminar-detail #exh-title-area .exh-title {
    display: block;
    padding-right: 0;
  }
  #exh-seminar-detail #exh-title-area .btn-area {
    position: static;
    text-align: right;
  }
  #exh-seminar-detail #exh-title-area .btn-area .btn-type3 {
    min-width: 120px;
  }
}
#exh-seminar-detail #exh-title-area .btn-area {
  margin-bottom: 0;
  padding-top: 0;
  position: absolute;
  right: 0;
  top: 0;
}
#exh-seminar-detail #exh-seminar-detail {
  padding: 30px 0 0 0;
}
#exh-seminar-detail #exh-seminar-detail .seminar-info-area .seat-label {
  margin-bottom: 15px;
}
#exh-seminar-detail #exh-seminar-detail .seminar-info-area .date {
  display: block;
  margin-bottom: 15px;
}
#exh-seminar-detail #exh-seminar-detail .seminar-info-area .title {
  font-size: 2.2rem;
  margin-bottom: 15px;
}
#exh-seminar-detail #exh-seminar-detail .teacher-info-area {
  padding: 30px 0;
}
#exh-seminar-detail #exh-seminar-detail .teacher-info-area:not(:first-child) {
  margin-top: -10px;
  padding-top: 0;
}
#exh-seminar-detail #exh-seminar-detail .teacher-info-area .teacher-popup-btn {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  align-items: center;
  background: #FCFAF5;
  border-radius: 5px;
  padding: 30px;
  text-align: left;
}
@media screen and (max-width: 768px) {
  #exh-seminar-detail #exh-seminar-detail .teacher-info-area .teacher-popup-btn {
    padding: 15px;
  }
}
#exh-seminar-detail #exh-seminar-detail .teacher-info-area .teacher-popup-btn .profile-area {
  width: calc(100% - 95px);
}
#exh-seminar-detail #exh-seminar-detail .teacher-info-area .teacher-popup-btn .profile-area .name {
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 10px;
  text-align: left;
}
#exh-seminar-detail #exh-seminar-detail .teacher-info-area .teacher-popup-btn .profile-area .profile {
  color: #000;
  text-align: left;
}
#exh-seminar-detail #exh-seminar-detail .teacher-info-area .teacher-popup-btn .thumb {
  border-radius: 50%;
  margin-right: 10px;
  max-width: 75px;
}
#exh-seminar-detail #exh-seminar-detail .about-txt-area {
  border: 1px solid #B5B5B5;
  padding: 45px;
}
@media screen and (max-width: 768px) {
  #exh-seminar-detail #exh-seminar-detail .about-txt-area {
    padding: 20px;
  }
}
#exh-seminar-detail #exh-seminar-detail .about-txt-area h3 {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 20px;
}
#exh-seminar-detail .btn-area {
  padding-top: 30px;
}
@media screen and (max-width: 768px) {
  #exh-seminar-detail .btn-area .apply-btn {
    width: 100%;
  }
}

/*=============================================
*
* オンラインセミナー詳細
*
=============================================*/
#online-seminar-detail #top-area {
  background: url("../images/contents/exh-seminar-top.jpg") repeat center center/cover;
}
#online-seminar-detail #online-title-area {
  position: relative;
}
#online-seminar-detail #online-title-area h2 {
  display: inline-block;
  margin-right: 15px;
}
#online-seminar-detail #online-title-area .exh-title {
  display: inline-block;
  padding-right: 130px;
}
@media screen and (max-width: 768px) {
  #online-seminar-detail #online-title-area .exh-title {
    display: block;
    padding-right: 0;
  }
}
#online-seminar-detail #online-title-area .btn-area {
  margin-bottom: 0;
  padding-top: 0;
  position: absolute;
  right: 0;
  top: -30px;
}
@media screen and (max-width: 768px) {
  #online-seminar-detail #online-title-area .btn-area {
    padding-top: 15px;
  }
}
#online-seminar-detail #online-seminar-detail {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  justify-content: center;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  padding: 30px 0 0 0;
}
#online-seminar-detail #online-seminar-detail .thumb-area {
  margin-right: 20px;
  position: relative;
  width: 350px;
}
@media screen and (max-width: 768px) {
  #online-seminar-detail #online-seminar-detail .thumb-area {
    margin-bottom: 20px;
    margin-right: 0;
    width: 100%;
  }
}
#online-seminar-detail #online-seminar-detail .thumb-area .seat-label {
  left: 0;
  position: absolute;
  top: 0;
}
#online-seminar-detail #online-seminar-detail .seminar-info-area {
  width: calc(100% - 370px);
}
@media screen and (max-width: 768px) {
  #online-seminar-detail #online-seminar-detail .seminar-info-area {
    width: 100%;
  }
}
#online-seminar-detail #online-seminar-detail .seminar-info-area .seat-label {
  margin-bottom: 15px;
}
#online-seminar-detail #online-seminar-detail .seminar-info-area .seminar-type-label {
  margin-bottom: 15px;
}
#online-seminar-detail #online-seminar-detail .seminar-info-area .date {
  display: block;
  margin-bottom: 15px;
}
#online-seminar-detail #online-seminar-detail .seminar-info-area .title {
  font-size: 2.2rem;
  margin-bottom: 15px;
}
#online-seminar-detail #online-seminar-detail .teacher-info-area {
  padding: 30px 0;
}
#online-seminar-detail #online-seminar-detail .teacher-info-area:not(:first-child) {
  margin-top: -10px;
  padding-top: 0;
}
#online-seminar-detail #online-seminar-detail .teacher-info-area .teacher-popup-btn {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  align-items: center;
  background: #FCFAF5;
  border-radius: 5px;
  padding: 30px;
  text-align: left;
}
@media screen and (max-width: 768px) {
  #online-seminar-detail #online-seminar-detail .teacher-info-area .teacher-popup-btn {
    padding: 15px;
  }
}
#online-seminar-detail #online-seminar-detail .teacher-info-area .teacher-popup-btn .profile-area {
  width: calc(100% - 95px);
}
#online-seminar-detail #online-seminar-detail .teacher-info-area .teacher-popup-btn .profile-area .name {
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 10px;
  text-align: left;
}
#online-seminar-detail #online-seminar-detail .teacher-info-area .teacher-popup-btn .profile-area .profile {
  text-align: left;
}
#online-seminar-detail #online-seminar-detail .teacher-info-area .teacher-popup-btn .thumb {
  border-radius: 50%;
  margin-right: 10px;
  max-width: 75px;
}
#online-seminar-detail #online-seminar-detail .about-txt-area {
  border: 1px solid #B5B5B5;
  padding: 45px;
}
@media screen and (max-width: 768px) {
  #online-seminar-detail #online-seminar-detail .about-txt-area {
    padding: 20px;
  }
}
#online-seminar-detail #online-seminar-detail .about-txt-area h3 {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 20px;
}
#online-seminar-detail .btn-area {
  padding-top: 30px;
}

.counter-li {
  counter-reset: item;
  line-height: 1.7;
  list-style: none;
}
.counter-li > li {
  padding-left: 1.3em;
  text-indent: -1.3em;
}
.counter-li > li::before {
  color: #223a70;
  counter-increment: item;
  content: counter(item) ".";
  font-weight: 700;
  padding-right: 0.5em;
}

.tso-menber .counter-li > li::before {
  color: #23ac38;
}

/*=============================================
*
* オンラインセミナー / 一覧
*
=============================================*/
#online-seminar #top-area {
  background: url("../images/contents/online-seminar-top.jpg") repeat center center/cover;
}
#online-seminar .seminar-guide .desc {
  background: #f1f1f1;
  margin-bottom: 40px;
  padding: 30px;
}
@media screen and (max-width: 768px) {
  #online-seminar .seminar-guide .desc {
    margin-bottom: 20px;
    padding: 15px;
  }
}
#online-seminar .seminar-guide .desc .guide-list li {
  background: url("../images/common/li-dot.svg") no-repeat left center;
  margin-bottom: 10px;
  padding-left: 20px;
}

/*=============================================
*
* オンラインセミナーのリスト
*
=============================================*/
#online-seminar-list > ul > li {
  margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
  #online-seminar-list > ul > li {
    margin-bottom: 30px;
  }
}
#online-seminar-list .seminar-info-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
#online-seminar-list .thumb-area {
  margin-bottom: 10px;
  position: relative;
  width: 32%;
}
@media screen and (max-width: 768px) {
  #online-seminar-list .thumb-area {
    width: 100%;
  }
}
#online-seminar-list .thumb-area .seat-label {
  left: 0;
  position: absolute;
  top: 0;
}
#online-seminar-list .seminar-data {
  padding-left: 30px;
  width: calc(68% - 30px);
}
@media screen and (max-width: 768px) {
  #online-seminar-list .seminar-data {
    padding-left: 0;
    width: 100%;
  }
}
#online-seminar-list .title {
  font-size: 2.2rem;
  display: -webkit-box;
  margin-bottom: 10px;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
#online-seminar-list .heading {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 20px;
}
#online-seminar-list .place {
  display: block;
  margin-bottom: 20px;
}
#online-seminar-list .seminar-type-label {
  margin-bottom: 10px;
}
#online-seminar-list .txt {
  margin-bottom: 20px;
}
#online-seminar-list .date {
  display: block;
  font-size: 1.6rem;
  margin-bottom: 10px;
  text-align: left;
}
#online-seminar-list select,
#online-seminar-list input {
  margin-bottom: 10px;
}
#online-seminar-list .btn-area {
  padding-top: 20px;
}
@media screen and (max-width: 768px) {
  #online-seminar-list .btn-area {
    margin-bottom: 0;
  }
}
#online-seminar-list .badge-issuance-btn.btn-type1 {
  background: #EF487C;
}
#online-seminar-list .teacher-info-area {
  padding: 20px 0 0 0;
}
@media screen and (max-width: 768px) {
  #online-seminar-list .teacher-info-area {
    margin-left: 0;
    padding: 10px 0 0 0;
    width: 100%;
  }
}
#online-seminar-list .teacher-info-area > ul > li {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  align-items: center;
  margin-bottom: 5px;
}
#online-seminar-list .teacher-info-area > ul > li:last-child {
  margin-bottom: 0;
}
#online-seminar-list .teacher-info-area > ul > li .name {
  text-align: left;
  width: calc(100% - 35px);
}
#online-seminar-list .teacher-info-area > ul > li .thumb {
  border-radius: 50%;
  margin-right: 10px;
  max-width: 25px;
}
#online-seminar-list .teacher-info-area > ul.number-3over {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
#online-seminar-list .teacher-info-area > ul.number-3over > li {
  width: calc(50% - 5px);
  margin-right: 10px;
}
#online-seminar-list .teacher-info-area > ul.number-3over > li:nth-child(2n) {
  margin-right: 0;
}

/*=============================================
*
* 展示会来場登録のリスト
*
=============================================*/
#exh-visit-regist-list .thumb-area {
  margin-bottom: 10px;
  position: relative;
}
#exh-visit-regist-list .thumb-area .seat-label {
  left: 0;
  position: absolute;
  top: 0;
}
#exh-visit-regist-list .title {
  font-size: 2.2rem;
  display: -webkit-box;
  margin-bottom: 10px;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
#exh-visit-regist-list .heading {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 20px;
}
#exh-visit-regist-list .place {
  display: block;
  margin-bottom: 20px;
}
#exh-visit-regist-list .seminar-type-label {
  margin-bottom: 10px;
}
#exh-visit-regist-list .txt {
  margin-bottom: 20px;
}
#exh-visit-regist-list .date {
  display: block;
  margin-bottom: 10px;
  text-align: left;
}
#exh-visit-regist-list select,
#exh-visit-regist-list input {
  margin-bottom: 10px;
}
#exh-visit-regist-list .btn-area {
  padding-top: 20px;
}
@media screen and (max-width: 768px) {
  #exh-visit-regist-list .btn-area {
    margin-bottom: 0;
  }
}
#exh-visit-regist-list .badge-issuance-btn.btn-type1 {
  background: #EF487C;
}
#exh-visit-regist-list .teacher-info-area {
  padding: 20px 0 0 0;
}
@media screen and (max-width: 768px) {
  #exh-visit-regist-list .teacher-info-area {
    margin-left: 0;
    width: 100%;
  }
}
#exh-visit-regist-list .teacher-info-area > ul > li {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  align-items: center;
  margin-bottom: 5px;
}
#exh-visit-regist-list .teacher-info-area > ul > li:last-child {
  margin-bottom: 0;
}
#exh-visit-regist-list .teacher-info-area > ul > li .name {
  text-align: left;
  width: calc(100% - 35px);
}
#exh-visit-regist-list .teacher-info-area > ul > li .thumb {
  border-radius: 50%;
  margin-right: 10px;
  max-width: 25px;
}
#exh-visit-regist-list .teacher-info-area > ul.number-3over {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
#exh-visit-regist-list .teacher-info-area > ul.number-3over > li {
  width: calc(50% - 5px);
  margin-right: 10px;
}
#exh-visit-regist-list .teacher-info-area > ul.number-3over > li:nth-child(2n) {
  margin-right: 0;
}

/*=============================================
*
* 申込情報
*
=============================================*/
#application-info #top-area {
  background: url("../images/contents/application-info-top.jpg") repeat center center/cover;
}
@media screen and (max-width: 768px) {
  #application-info .tb-wrap {
    -webkit-overflow-scrolling: touch;
    overflow-x: auto;
  }
  #application-info .tb-wrap .tb-type2 {
    min-width: 860px;
  }
  #application-info .tb-wrap .tb-type2 th,
  #application-info .tb-wrap .tb-type2 td {
    font-size: 1.25rem;
    white-space: nowrap;
  }
  #application-info .tb-wrap .tb-type2 td[colspan] {
    white-space: normal;
  }
}
#application-info .application-info-empty {
  border: 1px solid #b5b5b5;
  color: #707070;
  margin: 0;
  padding: 20px 16px;
  text-align: center;
}
#application-info .seminar-empty-text {
  color: #707070;
}

/*=============================================
*
* 申込詳細
*
=============================================*/
#application-detail #top-area {
  background: url("../images/contents/application-info-top.jpg") repeat center center/cover;
}
#application-detail .application-detail-back .btn-type3 {
  text-align: center;
}
#application-detail .application-detail-gap {
  height: 16px;
}
#application-detail .application-detail-receipt-box {
  background-color: #ececec;
  margin-bottom: 10px;
  padding: 10px;
}
#application-detail .application-detail-receipt-note {
  display: inline-block;
}
#application-detail .application-detail-payment-lead {
  color: #f00;
  margin-top: 10px;
}
#application-detail .application-detail-status {
  background-color: #ff0;
  padding: 8px 10px;
}
#application-detail .application-detail-status.is-ok {
  color: #008000;
}
#application-detail .application-detail-status.is-warn {
  color: #f00;
}
#application-detail .application-detail-payment-amount {
  padding: 10px;
}
#application-detail .application-detail-payment-btn {
  max-width: 100%;
}
#application-detail .btn-type1:disabled {
  background-color: gray;
  color: #eee;
}
#application-detail form[name="FF"] input[type=text] {
  margin-bottom: 10px;
}
#application-detail .radius_notice {
  line-height: 1.75;
  margin-top: 10px;
}
#application-detail .radius_notice .btn-type2 {
  min-height: 42px;
}
#application-detail .info-area {
  padding: 20px 0 0 0;
}
#application-detail .info-area .title {
  font-size: 2rem;
  margin-bottom: 20px;
}
#application-detail .info-area .date {
  display: block;
  margin-bottom: 10px;
  text-align: left;
}
#application-detail .info-area .place {
  display: block;
  margin-bottom: 20px;
  text-align: left;
}
#application-detail .info-area .price-area {
  margin-bottom: 20px;
}
#application-detail .info-area .application-number {
  color: #707070;
  font-size: 1.8rem;
  margin-bottom: 10px;
}
#application-detail .info-area .ticket-status {
  color: #707070;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  #application-detail #top-area {
    padding: 26px 0 0;
  }
  #application-detail .application-detail-back {
    margin-bottom: 12px;
    text-align: center;
  }
  #application-detail .application-detail-back .btn-type3 {
    min-width: 160px;
    padding: 10px 24px;
  }
  #application-detail .tb-wrap {
    -webkit-overflow-scrolling: touch;
    overflow-x: auto;
  }
  #application-detail .tb-wrap .tb-type2 {
    min-width: 840px;
  }
  #application-detail .tb-wrap .tb-type2 th,
  #application-detail .tb-wrap .tb-type2 td {
    font-size: 1.25rem;
    white-space: nowrap;
  }
  #application-detail form[name="FF"] input[type=text] {
    display: block;
    margin: 0 0 10px;
    max-width: 100%;
    width: 100%;
  }
  #application-detail form[name="FF"] .btn-type2 {
    margin: 0;
    max-width: 100%;
    min-height: 44px;
    width: 100%;
  }
  #application-detail .radius_notice {
    margin-top: 8px;
    padding: 12px;
  }
  #application-detail .application-detail-receipt-box {
    padding: 12px;
  }
  #application-detail .application-detail-receipt-note {
    margin-top: 8px;
  }
  #application-detail .application-detail-payment-btn {
    width: 100%;
  }
}

/*=============================================
*
* 設定
*
=============================================*/
#config #top-area {
  background: url("../images/contents/config-top.jpg") repeat center center/cover;
}
#config #config-menu > ul {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
#config #config-menu > ul > li {
  border: 1px #707070 solid;
  margin: 0 20px 20px 0;
  width: calc(50% - 10px);
}
#config #config-menu > ul > li:nth-child(2n) {
  margin-right: 0;
}
@media screen and (max-width: 768px) {
  #config #config-menu > ul > li {
    margin-right: 0;
    width: 100%;
  }
}
#config #config-menu > ul > li a {
  background: url("../images/common/config-menu-arrow.svg") no-repeat right 15px center;
  display: block;
  font-size: 2.2rem;
  line-height: 1.5;
  padding: 30px;
  word-break: break-word;
}
@media screen and (max-width: 768px) {
  #config #config-menu > ul > li a {
    background-position: right 12px center;
    background-size: 11px;
    font-size: 1.8rem;
    line-height: 1.45;
    padding: 16px 34px 16px 14px;
  }
}
#config #config-menu > ul > li a .note {
  color: #7B7B7B;
  margin-bottom: 0;
  margin-top: 8px;
}
@media screen and (max-width: 768px) {
  #config #config-menu > ul > li a .note {
    font-size: 1.35rem;
    line-height: 1.65;
  }
}

/*=============================================
*
* トップページ（キービジュアル・利用規約・お問い合わせ）
*
=============================================*/

/* キービジュアルエリア */
.top-layout-center {
  text-align: center;
}
.top-section-space {
  height: 30px;
}
.top-section-space-sm {
  height: 20px;
}
.top-keyvisual {
  padding-top: 15px;
  text-align: center;
}
.top-keyvisual-image {
  display: block;
  margin: 0 auto;
}
.top-keyvisual-meta {
  margin-top: 10px;
}
.top-section-title {
  margin-bottom: 10px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .top-keyvisual {
    padding-top: 0;
  }
}
.top-keyvisual-table {
  margin: 0 auto;
}
.top-keyvisual-value {
  padding-left: 10px;
}
@media screen and (max-width: 768px) {
  .top-keyvisual-table,
  .top-keyvisual-table tbody,
  .top-keyvisual-table tr,
  .top-keyvisual-table td {
    display: block;
    text-align: center;
  }
  .top-keyvisual-table td {
    padding-left: 0 !important;
  }
  .top-keyvisual-table tr {
    margin-bottom: 10px;
  }
}

/* aboutボックス（box-type1 拡張） */
.top-about-box {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}
.top-about-content {
  border: 1px solid #fff;
  font-size: 1.35rem;
  line-height: 1.8;
  margin: 0 auto;
  max-width: 800px;
  text-align: left;
}
.top-about-text {
  margin-bottom: 20px;
  text-align: left;
}

/* .dv1 スタイル（インラインから移動） */
.dv1 dt {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 10px;
}
.dv1 dl {
  margin-bottom: 25px;
}
.dv1 ul {
  margin-left: 20px;
}
.dv1 li {
  list-style-type: square;
  margin-bottom: 15px;
}

/* 利用規約 */
.term {
  border: 1px solid #a6a6a6;
  font-weight: normal;
  font-size: 14px;
  text-align: left;
  max-width: 900px;
  width: 100%;
  height: 250px;
  overflow-y: scroll;
  background-color: #f3f3f3;
  padding: 20px;
  margin: 10px auto 0;
  box-sizing: border-box;
}
.top-term-note {
  margin: 0 auto;
  max-width: 900px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .term {
    height: 200px;
    padding: 15px;
  }
}

/* 利用規約ボタンエリア */
.top-terms-btn-area {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
}
.top-home-btn.btn-type1 {
  background-color: gray;
}
@media screen and (max-width: 768px) {
  .top-terms-btn-area {
    flex-direction: column;
    gap: 15px;
  }
}

/* お問い合わせセクション */
.top-contact-section {
  margin-top: 50px;
  text-align: center;
}
.top-contact-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: 20px;
  margin: 0 auto;
  max-width: 960px;
  padding: 0 15px;
}
.top-contact-faq {
  flex: 1;
  min-width: 280px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.top-contact-faq-inner {
  padding: 20px;
}
.top-faq-btn.btn-type1 {
  background-color: #cf6f6f;
}
.top-contact-info {
  flex: 1;
  min-width: 280px;
}
.top-contact-info-box {
  border: 1px solid #b3b3b3;
  padding: 20px;
  text-align: left;
  background-color: #f3f3f3;
  border-radius: 10px;
  height: 100%;
  box-sizing: border-box;
}
.top-contact-info-body {
  padding: 20px 0 0 20px;
}
.top-contact-info-title {
  margin-bottom: 10px;
}
.top-final-summary-table .top-final-section-head {
  font-weight: bold;
  padding-top: 30px;
}
.top-final-entry-table {
  width: 100%;
}
.top-final-entry-table td {
  padding: 5px 0;
  vertical-align: top;
}
.top-final-name-cell {
  text-align: left;
}
.top-final-person-text {
  display: inline-block;
  line-height: 1.6;
}
.top-final-edit-cell {
  text-align: right;
  width: 1%;
  white-space: nowrap;
}
.top-final-edit-btn.btn-type1 {
  background-color: #5a8eff;
  font-size: 1.4rem;
  line-height: 1.2;
  min-width: 0;
  padding: 7px 12px;
  white-space: nowrap;
}
.top-final-none {
  display: inline-block;
  line-height: 1.6;
}
.top-companions-en-title {
  text-align: center;
}
.top-companions-en-text {
  margin-bottom: 20px;
  text-align: left;
}
.top-status-message {
  color: #d43535;
  line-height: 1.9;
  margin: 0 auto;
  max-width: 900px;
  padding: 0 15px;
  text-align: center;
}
.top-cancel-wrap {
  line-height: 2;
  margin: 0 auto;
  max-width: 900px;
  padding: 20px 15px;
  text-align: center;
}
.mypage-main .btn-type1 {
  font-size: 1.6rem;
}
.mypage-note {
  font-size: 1.6rem;
  line-height: 1.85;
  text-align: left;
}
.mypage-note-center {
  text-align: center;
}
.mypage-keyvisual {
  margin: 15px auto 0;
}
.mypage-btn-wrap {
  text-align: center;
}
.mypage-main .badge-issuance-btn.btn-type1 {
  padding: 24px 60px;
}
.mypage-main .badge-issuance-btn.btn-type2 {
  min-width: 320px;
}
.mypage-txt-left {
  text-align: left;
}
.mypage-center-wrap {
  margin-top: 0;
  text-align: center;
}
.mypage-subtitle {
  text-align: center;
}
.mypage-companion-table,
.mypage-contact-table {
  margin: 0 auto;
}
.mypage-companion-card {
  background-color: #f3f3f3;
  border: 1px solid #b3b3b3;
  border-radius: 10px;
  margin-bottom: 20px;
  max-width: 540px;
  padding: 20px;
  text-align: left;
  width: 100%;
}
.mypage-companion-info {
  margin: 10px 0 0 10px;
}
.mypage-companion-actions {
  margin-top: 10px;
  text-align: center;
}
.mypage-companion-action.btn-type1 {
  background-color: #4c8bff;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-size: 1.3rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  line-height: 1.2;
  margin: 0 5px 8px;
  min-height: 44px;
  min-width: 100px;
  padding: 7px 12px;
  text-align: center;
  vertical-align: top;
  white-space: normal;
  width: 100px;
}
.mypage-contact-faq-cell {
  padding-right: 50px;
  vertical-align: top;
}
.mypage-contact-faq-wrap {
  border: 0;
  max-width: 1000px;
  padding: 20px;
}
.mypage-faq-btn.btn-type1 {
  background-color: #cf6f6f;
}
.mypage-contact-info-card {
  background-color: #f3f3f3;
  border: 1px solid #b3b3b3;
  border-radius: 10px;
  padding: 20px;
  text-align: left;
  width: 450px;
}
.mypage-contact-info-text {
  padding: 20px 0 0 20px;
  text-align: left;
}
.mypage-contact-office {
  margin-bottom: 10px;
}

@media screen and (max-width: 768px) {
  .mypage-note {
    font-size: 1.35rem;
    line-height: 1.75;
  }
  .mypage-main .badge-issuance-btn.btn-type1 {
    max-width: 340px;
    padding: 14px 20px;
    width: 100%;
  }
  .mypage-main .badge-issuance-btn.btn-type2 {
    max-width: 340px;
    min-width: 0;
    width: 100%;
  }
  .mypage-companion-table,
  .mypage-companion-table tbody,
  .mypage-companion-table tr,
  .mypage-companion-table > tbody > tr > td,
  .mypage-contact-table,
  .mypage-contact-table tbody,
  .mypage-contact-table tr,
  .mypage-contact-table > tbody > tr > td {
    display: block;
    width: 100%;
  }
  .mypage-companion-card {
    max-width: 100%;
    padding: 14px;
  }
  .mypage-companion-info {
    margin-left: 0;
    width: 100%;
  }
  .mypage-companion-info td {
    display: table-cell;
    white-space: nowrap;
    width: auto;
  }
  .mypage-companion-actions {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 8px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .mypage-companion-action.btn-type1 {
    margin: 0;
  }
  .mypage-contact-faq-cell {
    padding-right: 0;
  }
  .mypage-contact-faq-wrap {
    padding: 10px 0 20px;
  }
  .mypage-contact-info-card {
    margin: 0 auto;
    max-width: 100%;
    padding: 14px;
    width: 100%;
  }
  .mypage-contact-info-text {
    padding: 14px 0 0;
  }
  .top-section-space {
    height: 20px;
  }
  .top-section-space-sm {
    height: 15px;
  }
  .top-about-box .inner {
    padding: 15px;
  }
  .top-about-content {
    font-size: 1.25rem;
    line-height: 1.75;
  }
  .dv1 ul {
    margin-left: 10px;
  }
  .top-reg-guide-note,
  .top-companions-guide-note,
  .top-reg-complete-note {
    font-size: 1.25rem;
    line-height: 1.75;
  }
  .top-contact-faq-inner,
  .top-contact-info-body {
    padding: 15px;
  }
  .top-contact-wrap {
    flex-direction: column;
    align-items: center;
    gap: 15px;
  }
  .top-contact-faq,
  .top-contact-info {
    width: 100%;
    min-width: 0;
  }
  .top-companion-heading-row {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .top-companion-copy-btn.btn-type1 {
    max-width: 340px;
    width: 100%;
  }
  .top-companion-about-btn-area {
    gap: 10px;
  }
  .top-companions-intro-wrap {
    margin-top: 15px;
    width: 100%;
  }
  .top-final-summary-table .top-final-section-head {
    padding-top: 20px;
  }
  .top-final-entry-table,
  .top-final-entry-table tbody,
  .top-final-entry-table tr,
  .top-final-entry-table td {
    display: block;
    width: 100%;
  }
  .top-final-name-cell {
    margin-bottom: 8px;
  }
  .top-final-edit-cell {
    text-align: left;
  }
  .top-final-edit-btn.btn-type1 {
    margin-top: 5px;
    max-width: 260px;
    width: 100%;
  }
  .top-status-message {
    line-height: 1.8;
  }
}
