@charset "UTF-8";

@charset "UTF-8";
body {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial,
    Meiryo, sans-serif;
  color: #333333;
  background: linear-gradient(180deg, #000, rgb(63, 20, 70));
  overflow-x: hidden;
  word-break: break-all;
  margin: 0;
}

a {
  text-decoration: none;
  transition: all 0.2s ease;
}

.is-pc {
  display: block;
}

.is-sp {
  display: none;
}

.ellipsis {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

*:focus {
  box-shadow: none !important;
}

.flex-direction-col {
  flex-direction: column;
}

@font-face {
  font-family: "icomoon";
  src: url("fonts/icomoon.eot?9tk790");
  src: url("fonts/icomoon.eot?9tk790#iefix") format("embedded-opentype"),
    url("fonts/icomoon.ttf?9tk790") format("truetype"),
    url("fonts/icomoon.woff?9tk790") format("woff"),
    url("fonts/icomoon.svg?9tk790#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"],
[class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "icomoon" !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-embed:before {
  content: "\ea80";
}

.icon-line:before {
  content: "\e902";
}

.icon-envelop:before {
  content: "\e945";
}

.icon-google:before {
  content: "\ea89";
}

.icon-facebook:before {
  content: "\ea91";
}

.icon-twitter:before {
  content: "\ea97";
}

.logo-area {
  transition: all 0.5s ease;
  position: relative;
  padding-top: 50px;
}

.logo-area img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.logo-area img {
  max-width: 100%;
  max-height: 100%;
}

.logo-area:hover {
  opacity: 0.7;
}

.box-header {
  width: 100%;
  position: relative;
  z-index: 1040;
  border-bottom: 1px solid #cccccc;
  background-color: #ffffff;
  transition: all 0.2s ease;
}

.box-header ul {
  list-style: none;
  margin-bottom: 0;
}

.box-header > .container {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.box-header.scroll .logo-area {
  padding-top: 25px;
}

.box-header.scroll > .container {
  padding-top: 5px;
  padding-bottom: 5px;
}

.box-header .btn {
  margin: 0;
}

.box-header .btn.btn-toggle {
  padding-right: 30px;
}

.nav-inner {
  padding: 0.5rem 0;
}

.nav-inner + .nav-inner {
  border-top: 1px solid #cccccc;
  box-shadow: 0px 2px 2px 0px #ccc;
}

.nav-inner + .nav-inner .global-nav-list > li:last-child {
  float: right;
  margin: 0;
}

.global-nav-list {
  padding: 0;
}

.box-footer {
  position: relative;
  border-top: 2px solid transparent;
  padding-top: 30px;
  margin-top: 60px;
  background: #ffffff;
}

.box-copyright {
  border-top: 1px solid #cccccc;
  background-color: #000;
  color: #fff;
}

.site-info-box {
  margin-bottom: 30px;
}

.footer-link {
  list-style: none;
}

.footer-link li {
  padding-left: calc(1.25rem + 15px);
  text-indent: -1.25rem;
}

#toTopBtn {
  border: 30px solid transparent;
  border-radius: 50%;
  color: #ffffff;
  position: absolute;
  top: -30px;
  right: 30px;
}

#toTopBtn:hover {
  transform: scale(1.2);
}

#toTopBtn i {
  position: absolute;
  top: -0.5rem;
  left: -0.5rem;
}

.btn {
  cursor: pointer;
  border-radius: 0;
  margin: 10px 0;
  padding: 3px 8px;
  white-space: normal;
}

.btn i {
  font-size: 1em;
  margin-left: 0.5rem;
}

.btn.btn-back i {
  margin-left: 0;
  margin-right: 0.5rem;
}

.btn.username {
  padding-left: 28px;
}

.btn[disabled],
.btn[disabled]:hover {
  background: #dddddd !important;
  border-color: #dddddd !important;
  color: #ffffff !important;
}

.btn-theme {
  color: #ffffff !important;
}

.btn-theme-ghost:hover {
  color: #ffffff !important;
}

.btn-accent {
  color: #ffffff !important;
}

.btn-cancel {
  background: #e6e6e6;
  border-color: #e6e6e6;
  color: #333 !important;
}

.btn-cancel:hover {
  background: #b3b3b3;
  border-color: #b3b3b3;
  color: #ffffff !important;
}

.btn-sample {
  color: #ffffff !important;
}

.btn-files {
  color: #ffffff !important;
}

.btn-favorite {
  background: #ffffff;
  border: 1px solid #cccccc;
}

.btn-favorite i {
  margin: 0 0.5rem 0 0;
}

.btn-global-nav {
  color: #333333;
}

.btn-global-nav:visited,
.btn-global-nav:focus {
  color: #333333;
}

.btn-global-nav:hover {
  color: #ffffff !important;
}

.btn-lang img {
  max-height: 25px;
}

.btn-lang:hover {
  opacity: 0.7;
}

.btn-facebook {
  color: #ffffff;
  background: #305097;
  padding-right: 40px;
  padding-left: 40px;
}

.btn-facebook:hover {
  background: #243b70;
  color: #ffffff;
}

.btn-facebook:focus,
.btn-facebook:visited {
  color: #ffffff;
}

.btn-google {
  color: #ffffff;
  background: #d34836;
  padding-right: 40px;
  padding-left: 40px;
}

.btn-google:hover {
  background: #b03626;
  color: #ffffff;
}

.btn-google:focus,
.btn-google:visited {
  color: #ffffff;
}

.btn-area-center,
.btn-area-right {
  margin-top: 1rem;
  text-align: center;
}

.btn-area-center .btn,
.btn-area-right .btn {
  display: inline-block;
  margin: 10px;
}

.btn-area-center .btn-block,
.btn-area-right .btn-block {
  margin: 10px 0;
}

.btn-area-right {
  text-align: right;
}

.icon {
  position: relative;
  white-space: inherit;
  padding-right: 30px;
}

.icon > i {
  position: absolute;
  top: calc(50% - 0.5em);
  right: 10px;
}

.icon > i.fa-user {
  right: auto;
  left: 10px;
  font-size: 1rem;
}

.ttl-lg {
  font-size: 2rem;
  margin-bottom: 1rem;
}

.ttl-md {
  font-size: 1.75rem;
  margin-bottom: 1rem;
}

.ttl-sm {
  font-size: 1.5rem;
  margin-bottom: 1rem;
}

.ttl-xs {
  font-size: 1.25rem;
  margin-bottom: 1rem;
}

.ttl-border {
  border-bottom: 1px solid #cccccc;
}

.txt-shadow {
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.8);
}

.text-plain {
  font-size: 1rem;
  line-height: 1.2;
}

.text-sm {
  font-size: 0.85rem;
}

.text-xs {
  font-size: 0.6rem;
}

.inner,
.tile-inner {
  padding: 30px;
}

.tile-inner {
  /* background: #ffffff; */
  box-shadow: 0px 2px 2px 0px #ccc;
  margin-top: 15px;
}

.tile-inner + .tile-inner {
  margin-top: 30px;
}

.box-main {
  margin-bottom: 100px;
}

.box-section + .box-section {
  padding-top: 30px;
  margin-top: 30px;
  border-top: 1px solid #ccc;
}

.js-list-slide {
  margin: 10px 0;
}

.js-list-slide,
.js-mv-slide {
  display: none;
}

.js-list-slide.slick-initialized,
.js-mv-slide.slick-initialized {
  display: block;
}

.js-list-slide .slick-slide {
  margin: 0 5px;
}

.js-list-slide .slick-slide a {
  color: #333333;
}

.share-area {
  bottom: 0;
  right: 0;
  left: 0;
  display: flex;
  justify-content: center;
}

.share-area a {
  flex-grow: 1;
  display: inline-block;
  font-size: 1rem;
  padding: 5px 10px;
  text-align: center;
  text-decoration: none;
  color: #ffffff;
}

.share-area a.icon-facebook {
  background: #305097;
}

.share-area a.icon-line {
  background: #5ae628;
}

.share-area a.icon-twitter {
  background: #00aced;
}

.share-area a.icon-google {
  background: #d34836;
}

.share-area a.icon-embed {
  background: #383838;
}

.share-area a:visited,
.share-area a:focus,
.share-area a:hover {
  color: #ffffff;
  opacity: 0.7;
}

/* SNS 新規登録・ログイン */
span.icon-facebook,
span.icon-google {
  display: block;
  position: absolute;
  top: calc(50% - 0.5em);
  left: 10px;
  padding-right: 0.5rem;
  border-right: 1px solid #fff;
}

/* Movie */
.movieWrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.movieWrap > *,
.movieWrap iframe,
.movieWrap object,
.movieWrap embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
}

#broadcast {
  margin: 50px 0;
}

@media screen and (max-width: 767px) {
  .logo-area {
    padding-top: 30px;
  }
}

/*=======デフォルトCSS上書き用=======*/
html {
  font-size: 62.5%;
}

body {
  font-family: "Noto Sans Japanese", sans-serif;
  font-size: 14px;
  font-size: 1.4rem;
  min-height: 100vh;
  width: 100%;
}

main {
  margin-top: 90px;
}

a:hover {
  opacity: 0.5;
  text-decoration: none;
}

a.btn:hover,
.pagination a:hover {
  opacity: 1;
}

*:focus {
  outline: none !important;
}

.box-header {
  padding: 0 2%;
  border-bottom: 1px solid #cccccc;
  height: 90px;
}

.box-header ul {
  padding-top: 4px;
}

.nav-inner {
  padding: 10px 0 6px 0;
}

.nav-inner + .nav-inner {
  border-top: none;
  box-shadow: none;
}

.box-copyright {
  text-align: center;
  background: none;
  border-top: none;
}

.box-copyright a,
.box-copyright a small {
  font-size: 14px;
  color: #9e9e9e;
}

.box-copyright a:hover small {
  color: #000;
  transition: 0.3s;
}

#toTopBtn {
  text-align: center;
  width: 50px;
  height: 50px;
  top: -25px;
}

#toTopBtn:hover {
  opacity: 1;
}

.TopBtn:before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 10px;
  height: 10px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: translateY(-25%) translateX(-50%) rotate(-45deg);
  transform: translateY(-25%) translateX(-50%) rotate(-45deg);
}

.ttl-border {
  padding-bottom: 1rem;
}

p {
  font-size: 16px;
}

.ttl-lg {
  margin-bottom: 25px;
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: 500;
  letter-spacing: 1px;
}

.ttl-md {
  margin-bottom: 25px;
  margin-top: 10px;
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: 500;
}

.ttl-sm {
  font-size: 18px;
  font-size: 1.8rem;
}

.ttl-xs {
  font-size: 16px;
  font-size: 1.6rem;
}

.text-plain {
  font-size: 14px;
  font-size: 1.4rem;
}

.text-sm {
  font-size: 12px;
  font-size: 1.2rem;
}

.text-xs {
  font-size: 10px;
  font-size: 1rem;
}

.inner,
.tile-inner {
  padding: 0;
}

.tile-inner {
  box-shadow: none;
  margin-top: 15px;
}

.box-section + .box-section {
  border-top: none;
  position: relative;
  margin-top: 0;
  padding-top: 0;
}

/*reset*/
ol,
ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

/*=======simpleテンプレート=======*/
/*---------layout---------*/
.container {
  padding: 0 50px;
  width: 100%;
  max-width: 100%;
}

/*---------parts---------*/
/*layout*/
.float-l {
  float: left;
}

.float-r {
  float: right;
}

.center {
  margin: 0 auto;
  text-align: center;
}

.inner-sm + .inner-sm {
  margin-top: 30px;
}

.l-wrap-md {
  margin: 0 auto;
  width: 800px;
}

/*ttl*/
.txt-lg {
  font-size: 16px;
}

.txt-md {
  font-size: 14px;
}

.txt-center {
  text-align: center;
}

/*btn*/
.btn {
  font-size: 14px;
}

.btn-border {
  padding: 5px 10px;
  font-size: 12px;
}

.btn-toggle {
  padding: 8px;
}

.accordion-box + .btn-toggle {
  margin-top: 20px;
}

.btn-theme img {
  padding-bottom: 2px;
}

.icon {
  padding: 8px;
  padding-right: 30px !important;
}
.icon img {
  margin-left: 10px;
}

.icon-twitter:before {
  position: relative;
  /* top: 4px; */
}

.alert-dismissible .close {
  padding: 15px;
}
.alert-success .container,
.alert-info .container {
  font-size: 20px;
  color: #244883;
}

/*----------------------------
header
----------------------------*/
.box-header {
  padding: 0 40px;
  background-color: #efefef;
}

.box-header .container {
  padding-right: 0;
}

.box-header nav {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.box-header .col-md-12 {
  position: static;
}

.box-header nav .nav-inner:first-child {
  margin-right: 15px;
}

.box-header .logo-wrap {
  width: 200px;
}

.box-header h1 {
  margin-bottom: 0;
}

.box-header h1 a {
  display: block;
}

.box-header h1 a img {
  max-height: 75px;
  max-width: 185px;
}

.box-header h2 {
  font-size: 2.5rem;
  margin-bottom: 0;
}

.box-header .btn-wrap > li + li {
  margin-left: 5px !important;
}

.box-header .global-nav li {
  margin-right: 25px;
  margin-left: 0;
  text-align: left;
}

/*----------------------------
footer
----------------------------*/
.box-footer {
  padding-top: 10px;
  padding: 0 0 20px 0;
  background: #000;
  color: #fff;
  position: sticky;
  top: 100vh;
}

.box-footer nav ul {
  margin: 20px 0 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.box-footer nav ul li {
  list-style: none;
  font-size: 14px;
  color: #fff;
}

.box-footer nav ul li + li {
  margin-left: 12px;
}

.box-copyright {
  padding-top: 8px;
}

/* メインビジュアル */
.box-mv-slide {
  position: relative;
  text-align: center;
}

/* 特設オリジナル */

.videoArea {
  justify-content: center;
  margin: 0 auto;
  position: relative;
  width: 60%;
  aspect-ratio: 16 / 9;
}

.kyodaku-font {
  font-size: 8px;
  line-height: 15px;
}

.title {
  font-size: 34px;
  color: #fff;
  margin-bottom: 30px;
}

.title-text {
  font-size: 20px;
}

h2 {
  font-size: 24px;
}

.main-img {
  width: 70%;
  display: inline-block;
}

.footer-table tbody {
  display: flex;
  gap: 0 20px;
}

.info-table {
  margin-top: 20px;
  margin-left: auto;
  margin-right: auto;
  text-align: left;
  border-collapse: separate;
  border-spacing: 10px;
}

.info-table tr {
  width: 70%;
}

.info-table th {
  width: 20%;
  font-size: 20px;
}

.info-table td {
  width: 80%;
  font-size: 20px;
}

.info-table td .caution {
  font-size: 16px;
}

.info-table th,
.info-table td {
  vertical-align: top;
}

.br-table {
  display: none;
}

.space {
  padding-left: 105px;
}

.click-button {
  width: max-content;
  display: block;
  padding: 5px;
  border-radius: 8px;
  text-align: center;
  margin: 15px auto;
  color: #fff;
}

.click-button:not([disabled]):hover {
  opacity: 0.7;
}

.click-button.live {
  /* border: 5px solid #c30e23; */
  border: 5px solid #fff;
  background-color: #000;
  color: #fff;
}

.click-button h1 {
  margin-bottom: 0;
  line-height: 35px;
  font-size: 20px;
  font-weight: bold;
}

.click-button.live h1 {
  line-height: 40px;
  font-size: 26px;
}

.svg-icon {
  height: 20px;
}

/* カラー用スタイル */
body {
  color: #fff;
  background: linear-gradient(180deg, #000, rgb(63, 20, 70));
}
a,
a:visited,
a:focus {
  color: #fff;
}

a:hover {
  color: #fff;
}

.page-item .page-link {
  color: #707070;
}

.page-item .page-link:hover {
  color: #707070;
}

.page-item.active .page-link {
  background-color: #707070;
  border-color: #707070;
}

.page-item.active .page-link:hover {
  color: #fff;
}

/* btn スタイル */
.btn-theme {
  /* メインテーマ色のボタン */
  background: #000;
  border-color: #000;
}

.btn-theme:hover {
  background: #fff;
  color: #000 !important;
  opacity: 1;
}

.btn-theme-ghost {
  /* メインテーマカラーのゴーストボタン */
  border-color: #000;
  color: #000 !important;
}

.btn-theme-ghost:hover {
  background: #000;
  border-color: #000;
}

.btn-accent {
  /* アクセントカラーのボタン */
  background: #969696;
  border-color: #969696;
}

.btn-accent:hover {
  /*  background: #b69416;*/
  /*  border-color: #b69416;*/
  opacity: 0.7;
}

.btn-sample {
  /* サンプル動画再生ボタン */
  background: #969696;
  border-color: #969696;
}

.btn-sample:hover {
  /*  background: #b69416;*/
  /*  border-color: #b69416;*/
  opacity: 0.7;
}

.btn-files {
  /* 関連ファイルダウンロードボタン */
  background: #969696;
  border-color: #969696;
}

.btn-files:hover {
  /*  background: #b69416;*/
  /*  border-color: #b69416;*/
  opacity: 0.7;
}

.btn-global-nav:hover {
  background: #000;
}

/* フォーム フロー図 */
.box-form-flow > span.active {
  color: #000;
}
.box-form-flow > span + span::after {
  border-left-color: #000;
}

/* datepicker スタイル調整*/
.ui-widget-header {
  border: 1px solid #000;
  background: #ffd966;
}

/* header */
.link-list a:hover {
  background: #000;
}

.dropdown-wrapper:hover .box-dropdown-key {
  background: #000;
}

.dropdown-wrapper:hover .box-dropdown-key::after {
  border-top-color: #000;
}

/*  footer */
.box-footer a {
  /*  border-top-color: #000;*/
  color: #fff;
}

#toTopBtn {
  border-color: #000;
  /* background: #efefef; */
}

/*txt*/
.ttl-wrap h2:before {
  background: #c30d23;
}
.txt-gr {
  color: #808080;
}
/*btn*/
a.btn-border {
  color: #fff;
  background: #000;
  border: 1px solid #000;
}
a.btn-border:hover {
  color: #000;
  background: #fff;
  opacity: 1;
}
.btn-toggle {
  background: #555;
  color: #fff;
  border: 1px solid #acacac;
}
.list-btn li a {
  color: #fff;
  border: 1px solid #777;
  background: #000;
}
.list-btn li a:hover {
  color: #fff;
  background: #000;
}

/* アイコンの色変更 */
.icon .white,
.white {
  filter: invert(88%) sepia(61%) saturate(0%) hue-rotate(229deg)
    brightness(107%) contrast(101%);
}

.btn-theme:hover img {
  filter: unset;
}

.btn-cancel:hover img {
  filter: invert(88%) sepia(61%) saturate(0%) hue-rotate(229deg)
    brightness(107%) contrast(101%);
}
