@charset "utf-8";
/* ---------------------------------------
0.0 mixin
	0.1 colors
	0.2 typography
	0.3 spacer
	0.4 animation
	0.5 chevron
	0.6 flexbox
1.0 setting
	1.1 normalize
	1.2 clearfix
2.0 compontents
	2.1 list
	2.2 pagenation
3.0 layout
	3.1 base
	3.1 header
	3.2 footer
4.0 page
	4.1 parts
	4.2 home
	4.3 information
	4.4 movie
	4.5 wallpaper
	4.6 blog
	4.7 bbs
	4.10 faq
	4.11 support
	4.12 questionnaire
-------------------------------------------- */
/* 1.0 setting
============================== */
/* 1.1 normalize
------------------------------ */
::selection {
  background: #222;
  color: #fff;
}
::-moz-selection {
  background: #222;
  color: #fff;
}
*,
*::before,
*::after {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  outline: none;
}
a,
a::before,
a::after {
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
/* 1.2 clearfix
------------------------------ */
.clearfix::after {
  display: table;
  content: "";
  clear: both;
}
/* 2.0 component
============================== */
/* 2.0.1 parts
------------------------------ */
.category::before {
  content: '';
  display: block;
  width: 1px;
  height: 12px;
  background: #222;
  position: absolute;
  right: -0.5em;
  top: 6px;
}
.btn--main:hover {
  -webkit-box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5);
}
.video {
  height: 0;
  position: relative;
  overflow: hidden;
  padding-bottom: 56.25%;
  margin-bottom: 10px;
}
.video iframe,
.video object,
.video embed {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.block--youtube {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
  cursor: pointer;
}
.svg-symbol {
  display: none;
}
.detail__btn {
  text-align: center;
  margin: 60px auto 0;
  position: relative;
  z-index: 10;
}
.detail__btn a {
  display: inline-block;
  text-decoration: none;
  font-family: 'Rubik', sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: #222;
  font-size: 16px;
  letter-spacing: 0.06em;
  position: relative;
  left: -11px;
}
.detail__btn a::before {
  content: 'BACK';
}
.detail__btn a::after {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border: 2px solid #222;
  border-top: none;
  border-right: none;
  margin: -0.25em 0 0;
  position: absolute;
  right: inherit;
  top: 50%;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  left: -0.7em;
  margin-top: -0.3em;
}
.detail__btn a:hover::after {
  left: -1em;
}
.mb5 {
  margin-bottom: 5px !important;
}
.mb10 {
  margin-bottom: 10px !important;
}
.mb15 {
  margin-bottom: 15px !important;
}
.mb20 {
  margin-bottom: 20px !important;
}
.mb30 {
  margin-bottom: 30px !important;
}
.mb40 {
  margin-bottom: 40px !important;
}
.mb50 {
  margin-bottom: 50px !important;
}
.bold {
  font-weight: 600;
}
.right,
.txt--right {
  text-align: right;
}
.center {
  text-align: center;
}
/* 2.1 list
------------------------------ */
/*  information */
.list--information {
  position: relative;
}
.list--information li {
  margin: 0 0 15px;
}
.list--information li:hover {
  border-color: transparent !important;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.list--information a {
  display: block;
  color: inherit;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  position: relative;
  padding: 20px 0;
}
.list--information a::after {
  display: table;
  content: "";
  clear: both;
}
.list--information a:hover {
  box-shadow: 0 4px 35px rgba(0, 0, 0, 0.2);
}
.list--information .tit {
  color: inherit;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  word-break: break-all;
}
.list--information .date {
  font-family: 'Rubik', sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1;
  margin: 0 0 2px;
}
.list--information .date .end {
  padding-top: 23px;
  position: relative;
}
.list--information .date .end::before {
  content: '';
  display: block;
  position: absolute;
  width: 1px;
  height: 15px;
  background: #222;
  left: 50%;
  top: 5px;
  margin-left: -1.1em;
}
.list--information .date--event {
  color: inherit;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
}
.list--information .new .date::after {
  content: 'NEW';
  font-family: 'Rubik', sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: #ef2a4d;
  margin: 0 0 0 6px;
}
.list--information .category {
  display: block;
  font-family: 'Rubik', sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1;
  margin: 0 0 0.5em;
}
.list--information .thumb {
  width: 100%;
  line-height: 0;
  margin: 0;
}
.list--information li {
  border-bottom: 0.5px solid #e5e5e5;
  margin: 0;
}
.list--information li.new .date::after {
  display: none;
}
.list--information a {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
  align-items: baseline;
  color: inherit;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  position: relative;
  padding: 30px 10px 25px;
}
.list--information a::after {
  display: table;
  content: "";
  clear: both;
}
.list--information .tit {
  width: calc(100% - 20em);
  color: inherit;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  margin-top: -0.4em;
}
.list--information .date {
  width: 8em;
  color: inherit;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
  font-family: 'Rubik', sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1;
  margin: 0 0 2px;
  position: relative;
}
.list--information .date--event {
  color: inherit;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
}
.list--information .new .tit::after {
  content: 'NEW';
  font-family: 'Rubik', sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: #ef2a4d;
  margin: 0 0 0 6px;
}
.list--information .category {
  width: 8em;
  color: inherit;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
  font-family: 'Rubik', sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1;
  margin: 0 0 0.5em;
}
.list--information .category::before {
  display: none;
}
.list--information.schedule .date {
  width: 20%;
  top: 6px;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: left;
  justify-content: left;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
}
.list--information.schedule .date .md {
  display: inline-block;
  width: 2.8em;
  font-size: 38px;
  letter-spacing: -0.02em;
}
.list--information.schedule .date .week {
  display: inline-block;
  text-align: center;
  font-size: 16px;
  line-height: 1;
  position: absolute;
  top: 14px;
  left: 6.9em;
  text-transform: uppercase;
  letter-spacing: 0.07em;
}
.list--information.schedule .text {
  width: 80%;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: end;
  justify-content: end;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
}
.list--information.schedule .text .category {
  width: 20%;
}
.list--information.schedule .text .tit {
  width: 80%;
}
.list--contents {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
  align-items: baseline;
  flex-wrap: wrap;
}
.list--contents li {
  margin: 0 0 15px;
}
.list--contents li:hover {
  border-color: transparent !important;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.list--contents a {
  display: block;
  color: inherit;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  position: relative;
  padding: 20px 0;
}
.list--contents a::after {
  display: table;
  content: "";
  clear: both;
}
.list--contents a:hover {
  box-shadow: 0 4px 35px rgba(0, 0, 0, 0.2);
}
.list--contents .tit {
  color: inherit;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  word-break: break-all;
}
.list--contents .date {
  font-family: 'Rubik', sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1;
  margin: 0 0 2px;
}
.list--contents .date .end {
  padding-top: 23px;
  position: relative;
}
.list--contents .date .end::before {
  content: '';
  display: block;
  position: absolute;
  width: 1px;
  height: 15px;
  background: #222;
  left: 50%;
  top: 5px;
  margin-left: -1.1em;
}
.list--contents .date--event {
  color: inherit;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
}
.list--contents .new .date::after {
  content: 'NEW';
  font-family: 'Rubik', sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: #ef2a4d;
  margin: 0 0 0 6px;
}
.list--contents .category {
  display: block;
  font-family: 'Rubik', sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1;
  margin: 0 0 0.5em;
}
.list--contents .thumb {
  width: 100%;
  line-height: 0;
  margin: 0;
}
.list--contents li {
  width: calc(100% / 3);
  margin-bottom: 20px;
  position: relative;
}
.list--contents li:nth-child(3n) {
  margin-right: 0;
}
.list--contents li a {
  padding: 20px;
}
.list--contents li a:hover {
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5);
}
.list--contents li figure {
  width: 100%;
  background: no-repeat center;
  background-size: cover;
  position: absolute;
  top: 0;
  z-index: 100;
  cursor: pointer;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.list--contents li.no-data {
  font-family: 'Rubik', sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
  padding-top: 30px;
}
.list--contents li.free .thumb::after {
  content: 'FREE';
  display: inline-block;
  padding: 13px 10px 11px;
  background: #ffed00;
  color: #174cb1;
  font-family: 'Rubik', sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
  font-size: 13px;
  text-align: center;
  position: absolute;
  bottom: 10px;
  right: 10px;
  z-index: 10;
  border-radius: 2px;
}
.list--contents li .thumb {
  overflow: hidden;
  position: relative;
  margin-bottom: 20px;
}
.list--contents li .thumb img {
  display: block;
  width: 100%;
  background: no-repeat center;
  background-size: cover;
  -webkit-background-size: contain;
  line-height: 0;
  position: relative;
  z-index: 10;
}
.list--contents li .thumb .blur {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 1;
  top: 0;
  left: 0;
  -webkit-filter: blur(10px);
  filter: blur(10px);
  -webkit-transform: scale(1.2);
  transform: scale(1.2);
}
.list--contents li .thumb .blur img {
  height: 100%;
  background-size: cover;
}
.list--contents li .date {
  display: inline-block;
  margin-bottom: 10px;
}
.list--contents li .category {
  display: inline-block;
  position: relative;
  margin-right: 0.7em;
}
.list--contents li .category::before {
  top: 0;
}
.list--contents .soon .tit {
  text-align: center;
  font-family: 'Rubik', sans-serif;
  font-weight: 400;
  letter-spacing: 0.04em;
  letter-spacing: 0.07em;
  padding-top: 19px;
}
.list--contents.youtube li {
  width: 50%;
  padding: 30px;
  margin-right: 0;
  margin-bottom: 0;
  cursor: pointer;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.list--contents.youtube li:nth-of-type(3),
.list--contents.youtube li:nth-of-type(4) {
  margin-bottom: 0;
}
.list--contents.youtube li:hover {
  box-shadow: 0 6px 35px rgba(0, 0, 0, 0.3);
}
.list--contents.youtube .thumb {
  position: absolute;
  top: 0;
  left: 0;
}
.list--contents.youtube .thumb img {
  background: none;
}
.list--notes {
  color: inherit;
  font-size: 11px;
  font-weight: 400;
  line-height: 1.3;
  padding: 15px 0 15px 1em;
  text-indent: -1em;
}
.list--notes li {
  margin: 0 0 15px;
}
.list--notes li:hover {
  border-color: transparent !important;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.list--notes a {
  display: block;
  color: inherit;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  position: relative;
  padding: 20px 0;
}
.list--notes a::after {
  display: table;
  content: "";
  clear: both;
}
.list--notes a:hover {
  box-shadow: 0 4px 35px rgba(0, 0, 0, 0.2);
}
.list--notes .tit {
  color: inherit;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  word-break: break-all;
}
.list--notes .date {
  font-family: 'Rubik', sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1;
  margin: 0 0 2px;
}
.list--notes .date .end {
  padding-top: 23px;
  position: relative;
}
.list--notes .date .end::before {
  content: '';
  display: block;
  position: absolute;
  width: 1px;
  height: 15px;
  background: #222;
  left: 50%;
  top: 5px;
  margin-left: -1.1em;
}
.list--notes .date--event {
  color: inherit;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
}
.list--notes .new .date::after {
  content: 'NEW';
  font-family: 'Rubik', sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: #ef2a4d;
  margin: 0 0 0 6px;
}
.list--notes .category {
  display: block;
  font-family: 'Rubik', sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1;
  margin: 0 0 0.5em;
}
.list--notes .thumb {
  width: 100%;
  line-height: 0;
  margin: 0;
}
.list--notes li {
  margin: 0 0 5px;
}
.list--decimal {
  list-style-type: decimal;
  padding-left: 1.5em;
}
.list--pickup li {
  margin-bottom: 20px;
}
.list--pickup li:last-child {
  margin-bottom: 0;
}
.list--pickup li a {
  display: block;
  color: #fff;
  font-size: 18px;
  text-align: left;
  font-weight: bold;
  border: 1px solid #fff;
  padding: 30px 50px 30px 30px;
  position: relative;
}
.list--pickup li a::after {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border: 2px solid #222;
  border-top: none;
  border-right: none;
  margin: -0.25em 0 0;
  position: absolute;
  right: 4%;
  top: 50%;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  border-width: 1px;
  border-color: #fff;
  width: 1em;
  height: 1em;
  margin-top: -0.5em;
}
.list--pickup li a:hover {
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5);
}
.list--pickup li a:hover::after {
  right: 3.5%;
}
.list__more {
  text-align: right;
}
.list__more a {
  display: inline-block;
  font-family: 'Rubik', sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: inherit;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.05em;
  padding: 30px 1em 30px 15px;
  position: relative;
}
.list__more a::after {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border: 2px solid #222;
  border-top: none;
  border-right: none;
  margin: -0.25em 0 0;
  position: absolute;
  right: 0.25em;
  top: 50%;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  margin-top: -0.3em;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.list__more a:hover::after {
  right: 0;
}
.list--category {
  text-align: center;
  margin: 0 0 70px;
}
.list--category li {
  display: inline-block;
  color: inherit;
  font-size: 16px;
  line-height: 1.6;
  font-family: 'Rubik', sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
}
.list--category li.current a::after {
  opacity: 1;
  bottom: -8px;
}
.list--category li a {
  display: block;
  height: 24px;
  color: #222;
  position: relative;
  margin-right: 25px;
}
.list--category li a::after {
  opacity: 0;
  position: absolute;
  bottom: -12px;
  left: 0;
  content: '';
  display: block;
  width: 100%;
  height: 3px;
  background: #222;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.list--category li a:hover::after {
  opacity: 1;
  bottom: -8px;
}
.list--comment li {
  border-bottom: 1px solid #ddd;
  padding: 15px 0;
  position: relative;
}
.list--comment li .txt {
  padding-top: 0;
  margin: 0 0 10px;
}
.list--comment li .date {
  margin: 0;
}
.list--comment li .report-btn {
  position: absolute;
  right: 0;
  top: 2px;
  font-size: 10px;
  border: 1px solid #aaa;
  border-radius: 4px;
  line-height: 1;
  padding: 2px 5px;
  cursor: pointer;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.list--comment li .report-btn:hover {
  background: #aaa;
}
.list--comment li .report-btn:hover span {
  color: #fff;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.list--comment li .report-btn a,
.list--comment li .report-btn span {
  color: #999;
}
.list--comment .artist-account {
  background: #ffd8db;
}
.block--contents-comment {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column-reverse;
}
.block--contents-comment .form--post dd {
  margin-bottom: 10px;
}
.block--contents-comment .btn {
  margin-top: 0;
}
.block--contents-comment .btn .btn--main {
  font-size: 13px;
}
.block--contents-comment .form--post {
  margin: 0;
}
.block--contents-comment .form--post + .btn {
  margin-bottom: 0;
}
.block--contents-comment textarea[id^='comment'] {
  font-size: 13px;
  height: 4em;
}
.block--contents-comment #contents_comment_wrapper {
  height: 400px !important;
  margin-bottom: 30px;
}
.block--contents-comment [id^='contents_comment'] .list--comment {
  overflow-y: scroll;
  height: 270px !important;
  height: 19vw !important;
  padding-top: 5px;
}
.block--contents-comment [id^='contents_comment'] .list--comment li {
  padding: 10px 0;
}
.block--contents-comment [id^='contents_comment'] .list--comment li .txt {
  font-size: 11px;
  line-height: 1.8;
  margin-bottom: 0;
  overflow-wrap: break-word;
  word-break: break-word;
}
.block--contents-comment [id^='contents_comment'] .list--comment li:first-of-type {
  border-top: 1px solid #ddd;
}
.list--sns {
  margin-bottom: 30px;
}
.list--sns li {
  display: inline-block;
  padding: 0 15px;
  position: relative;
}
.list--sns li a {
  display: block;
  color: #222;
  font-size: 25px;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.list--sns li svg {
  width: 22px;
  height: 22px;
  fill: #222;
  vertical-align: -2px;
}
.list--sns li a:hover {
  transform: scale(1.2);
}
.list--sns li p.ico {
  display: block;
  color: #222;
  font-size: 25px;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
  cursor: pointer;
}
.list--sns li p.ico:hover {
  transform: scale(1.2);
}
.list--sns li .links {
  display: none;
  position: absolute;
  top: 2em;
  left: 5px;
  width: 130px;
  text-align: left;
  padding: 10px;
  background: #fff;
}
.list--sns li .links a {
  font-size: 15px;
  padding: 3px 0;
}
.list--sns li .links a:hover {
  transform: scale(1.05);
}
/* menu */
/* 2.1 pagenation
------------------------------ */
.block--pager {
  width: 70%;
  position: relative;
  margin: 60px auto 0;
}
.block--pager li {
  width: 10%;
  color: inherit;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  font-family: 'Rubik', sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1;
}
.block--pager li span {
  opacity: 0.3;
}
.block--pager li span,
.block--pager li a {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}
.block--pager li span::after,
.block--pager li a::after {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border: 2px solid #222;
  border-top: none;
  border-right: none;
  margin: -0.25em 0 0;
  position: absolute;
  right: 0.25em;
  top: 50%;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  width: 1em;
  height: 1em;
  right: 1em;
  border-width: 1px;
}
.block--pager li a:hover::after {
  transform: scale(1.3) rotate(-135deg);
}
.block--pager .block--pager--newer {
  float: left;
  width: 40px;
  transform: scale(-1, 1);
  -webkit-transform: scale(-1, 1);
  position: relative;
  top: -50px;
  height: 40px;
  left: -8px;
}
.block--pager .block--pager--newer a::after {
  margin: -0.5em 0 0;
}
.block--pager .block--pager--older {
  width: 40px;
  height: 40px;
  float: right;
  text-align: right;
  position: relative;
  top: -50px;
  right: -8px;
}
.block--pager .block--pager--older a::after {
  margin: -0.5em 0 0;
}
.block--pager .block--pager--number {
  width: 80%;
  text-align: center;
  color: #222;
  margin: 0 auto;
  position: absolute;
  top: -50px;
  left: 10%;
}
.block--pager .block--pager--number li {
  width: auto;
  display: inline-block;
  width: 36px;
  height: 36px;
  font-family: 'Rubik', sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 36px;
  margin: 0 5px;
}
.block--pager .block--pager--number li.current {
  border: 1px solid #222;
  color: #222;
}
.block--pager .block--pager--number li.current span {
  opacity: 1;
}
.block--pager .block--pager--number li a {
  display: block;
  color: #222;
  padding: 0 8px;
}
.block--pager .block--pager--number li a:hover {
  background: #222;
  color: #fff;
}
.block--pager .block--pager--number li span::after,
.block--pager .block--pager--number li a::after {
  display: none;
}
.block--pager a,
.block--pager span {
  display: block;
  text-decoration: none;
  position: relative;
  top: 0;
}
.thumb {
  position: relative;
}
.thumb img {
  display: block;
  width: 100%;
  background: no-repeat center;
  background-size: cover;
  -webkit-background-size: cover;
  line-height: 0;
}
/* 3.0 layout
============================== */
/* 3.1 base
------------------------------ */
body {
  font-family: YakuHanJP, -apple-system, BlinkMacSystemFont, "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  background-color: #fff;
  color: inherit;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  line-height: 1.6em;
  letter-spacing: 0.03em;
  word-wrap: break-word;
  overflow-wrap: break-word;
}
a {
  color: #347ef1;
  text-decoration: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.sp {
  display: none !important;
}
.dummy {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}
.thumb {
  position: relative;
}
.blur {
  display: block;
  width: 200%;
  height: 200%;
  background: no-repeat center;
  background-size: cover;
  filter: blur(8px);
  position: absolute;
  top: -2%;
  left: -2%;
}
.no-data {
  text-align: center;
  border: none !important;
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
}
.date,
.category {
  font-family: 'Rubik', sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
}
.wrap {
  background: #fff;
  position: relative;
  padding-top: 60px;
  padding-bottom: 110px;
  min-height: 100%;
}
.section--contents {
  background: #fff;
  min-height: 100%;
}
.section--contents .inner {
  padding: 40px 5% 130px;
}
section {
  position: relative;
  z-index: 10;
}
.section--detail,
.section--list {
  width: 70%;
  min-width: 600px;
  max-width: 1100px;
  margin: 0 auto;
  padding: 80px 0 60px;
  -webkit-transition: none;
  transition: none;
}
.section--detail {
  width: 60%;
  min-width: inherit;
  max-width: 750px;
}
/* 3.2 header
------------------------------ */
header {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 99;
  width: 100%;
  height: 60px;
  padding: 0;
  background: #222;
}
.site-nav li {
  display: block;
  min-width: 200px;
  width: 14vw;
  overflow: hidden;
  float: left;
}
.site-nav li span {
  display: inline-block;
  padding-left: 0.4em;
}
.site-nav li.current a {
  color: #fff;
}
.site-nav li.current a::after {
  content: '';
  bottom: -6px;
}
.site-nav li a {
  display: block;
  font-family: 'Rubik', sans-serif;
  font-weight: 600;
  color: #777;
  text-align: center;
  line-height: 60px;
  position: relative;
  font-size: 17px;
  letter-spacing: 0.04em;
}
.site-nav li a::after {
  content: '';
  display: block;
  width: 100%;
  height: 12px;
  background: #fff;
  border-radius: 6px;
  position: absolute;
  bottom: -20px;
  left: 0;
}
.site-nav li a:hover {
  color: #fff;
}
.site-nav li a:hover::after {
  bottom: -6px;
}
/* drawer__btn */
.drawer__btn {
  width: 91px;
  height: 45px;
  position: fixed;
  top: 8px;
  right: 3%;
  z-index: 1100;
  cursor: pointer;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.drawer__btn span {
  display: block;
  position: absolute;
  left: 12px;
  width: 20px;
  height: 2px;
  background-color: #fff;
  z-index: 20;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.drawer__btn :nth-of-type(1) {
  top: 16px;
}
.drawer__btn :nth-of-type(2) {
  top: 22px;
}
.drawer__btn :nth-of-type(3) {
  top: 28px;
}
.drawer__btn :nth-of-type(4) {
  width: 100px;
  font-family: 'Rubik', sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
  background: none;
  color: #fff;
  font-size: 16px;
  left: 39px;
  top: 13px;
  letter-spacing: 0.07em;
}
.drawer__btn:hover {
  transform: scale(1.1);
}
.headerFixed .drawer__btn {
  transform: scale(1.3);
}
.headerFixed .drawer__btn span:not(:nth-of-type(4)) {
  background: #222;
}
.headerFixed .drawer__btn span:nth-of-type(4) {
  color: #222;
  top: 12px;
}
.headerFixed .drawer__btn:hover {
  transform: scale(1.4);
}
.headerFixed.drawer-visible .drawer__btn span:not(:nth-of-type(4)) {
  background: #fff;
}
.headerFixed.drawer-visible .drawer__btn span:nth-of-type(4) {
  color: #fff;
  top: 10px;
}
/* drawer */
.drawer {
  width: 100%;
  height: 100%;
  position: fixed;
  pointer-events: none;
  z-index: -100;
  background: rgba(0, 0, 0, 0.7);
  color: #fff;
  top: 0;
  opacity: 0;
}
.drawer li {
  margin-bottom: 13px;
}
.drawer li a {
  color: inherit;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  color: #fff;
  font-size: 18px;
  letter-spacing: 0.08em;
  font-family: 'Rubik', -apple-system, BlinkMacSystemFont, "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}
.drawer li .links {
  background: #111;
  top: 2em;
  left: -10px;
  padding: 5px 10px;
}
.drawer li .links a {
  color: #fff;
  font-size: 13px;
  padding: 7px 0;
}
.drawer li .links a:hover {
  transform: scale(1.05) !important;
}
.drawer li p.ico {
  color: #fff;
  font-size: 18px;
}
.drawer .block--login {
  position: absolute;
  top: -60px;
}
.drawer .block--login .btn {
  display: inline-block;
}
.drawer .block--login .btn a {
  display: block;
  color: #fff;
  padding: 0;
  position: relative;
  font-size: 14px;
}
.drawer .block--login .btn .btn--join {
  margin-right: 23px;
}
.drawer .block--login .btn .btn--join::before {
  content: '';
  display: block;
  width: 1px;
  height: 16px;
  background: #fff;
  position: absolute;
  top: 2px;
  right: -15px;
  bottom: inherit;
  left: inherit;
  opacity: 1;
}
.drawer .g-nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-box-align: top;
  -webkit-align-items: top;
  align-items: top;
  height: 100%;
}
.drawer .g-nav [class^="g-nav__"] {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 50%;
  position: relative;
}
.drawer .g-nav [class^="g-nav__"] .nav--menu {
  width: 100%;
}
.drawer .g-nav [class^="g-nav__"] * {
  opacity: 0;
  transform: translate3d(0, 20px, 0);
}
.drawer .g-nav [class^="g-nav__"]::after {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  -moz-transform: scaleX(0);
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -moz-transform-origin: right;
  -webkit-transform-origin: right;
  transform-origin: right;
  opacity: 1;
}
.drawer .g-nav [class^="g-nav__"] a {
  display: inline-block;
  position: relative;
}
.drawer .g-nav [class^="g-nav__"] a::after {
  opacity: 0;
  position: absolute;
  bottom: -6px;
  left: 0;
  content: '';
  display: block;
  width: 100%;
  height: 2px;
  background: #fff;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.drawer .g-nav [class^="g-nav__"] a:hover::after {
  opacity: 1;
  bottom: -3px;
}
.drawer .g-nav [class^="g-nav__"] .list--sns {
  margin-top: 20px;
}
.drawer .g-nav [class^="g-nav__"] .list--sns li {
  margin-bottom: 0;
  padding: 0 20px 0 0;
}
.drawer .g-nav [class^="g-nav__"] .list--sns li a {
  line-height: 1;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.drawer .g-nav [class^="g-nav__"] .list--sns li a::after {
  display: none;
}
.drawer .g-nav [class^="g-nav__"] .list--sns li a:hover {
  transform: scale(1.2);
}
.drawer .g-nav [class^="g-nav__"] .list--sns li a svg {
  display: inline-block;
  width: 19px;
  height: 19px;
  fill: #fff;
  vertical-align: -2px;
}
.drawer .g-nav .g-nav__class {
  display: none;
}
.drawer .g-nav .g-nav__official .g-nav__inner {
  margin-top: -38px;
}
.drawer .g-nav .g-nav__official::after {
  background: #111;
}
.drawer .g-nav .g-nav__team::after {
  background: #174cb1;
}
.drawer .g-nav .g-nav__class::after {
  background: #5fc0e8;
}
.drawer .g-nav .g-nav--tit {
  width: 100%;
  font-family: 'Rubik', sans-serif;
  color: inherit;
  font-size: 38px;
  font-weight: 600;
  line-height: 1.4;
  line-height: 0.85;
  letter-spacing: 0.04em;
  margin-bottom: 60px;
  transition: none;
}
.drawer-visible .drawer {
  z-index: 1000;
  pointer-events: auto;
  left: 0;
  opacity: 1;
  transition: opacity 0.2s ease-out;
}
.drawer-visible .drawer .menu-nav li,
.drawer-visible .drawer .menu-nav__member-menu li,
.drawer-visible .drawer .member-menu-nav h2,
.drawer-visible .drawer .menu-nav__nav--login {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-transition: all 0.45s ease-out 0.3s;
  transition: all 0.45s ease-out 0.3s;
  opacity: 1;
}
.drawer-visible .drawer [class^="g-nav__"] * {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition: 0.3s ease-out 0.2s;
}
.drawer-visible .drawer [class^="g-nav__"]::after {
  -moz-transform: scaleX(1);
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
  transition: 0.3s ease-out;
}
.drawer-visible .drawer .g-nav__team::after {
  transition: 0.3s ease-out;
}
.drawer-visible .drawer .g-nav__class::after {
  transition: 0.3s ease-out;
}
.drawer-visible .drawer__btn span:nth-of-type(1) {
  -webkit-transform: translateY(20px) rotate(-45deg);
  transform: translateY(20px) rotate(-45deg);
  top: 0;
}
.drawer-visible .drawer__btn span:nth-of-type(2) {
  left: 60%;
  opacity: 0;
  -webkit-animation: active-menu-bar02 0.8s forwards;
  animation: active-menu-bar02 0.8s forwards;
}
.drawer-visible .drawer__btn span:nth-of-type(3) {
  -webkit-transform: translateY(-20px) rotate(45deg);
  transform: translateY(-20px) rotate(45deg);
  top: 40px;
}
.drawer-visible .drawer__btn span:nth-of-type(4) {
  top: 10px;
}
/* current */
.page--home .g-nav .site--current li.nav__item--home a::after,
.category-1 .g-nav .site--current li.nav__item--news a::after,
.parent-category-1 .site--current .g-nav li.nav__item--news a::after,
.category-3 .g-nav .site--current li.nav__item--live a::after,
.parent-category-2 .site--current .g-nav li.nav__item--media a::after,
.category-2 .g-nav .site--current li.nav__item--media a::after,
.page--schedule .g-nav .site--current li.nav__item--schedule a::after,
.page--biography:not(.history) .g-nav .site--current li.nav__item--profile a::after,
.page--disco .g-nav .site--current li.nav__item--discography a::after,
.page--biography.history .g-nav .site--current li.nav__item--history a::after,
.page--movie .g-nav .site--current li.nav__item--movie a::after,
.page--movie.category-12 .g-nav .site--current li.nav__item--radio a::after,
.page--photo .g-nav .site--current li.nav__item--photo a::after,
.page--blog .g-nav .site--current li.nav__item--blog a::after,
.page--bbs .g-nav .site--current li.nav__item--bbs a::after,
.page--lyrics .g-nav .site--current li.nav__item--lyrics a::after {
  opacity: 1;
  bottom: -1px;
}
.page--movie.category-12 .g-nav .site--current li.nav__item--movie a::after {
  opacity: 0;
}
/* 3.3 footer
------------------------------ */
footer {
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  text-align: center;
  padding: 60px 0 20px;
}
footer .nav--support {
  margin-bottom: 60px;
}
footer .nav--support li {
  display: inline-block;
  font-size: 12px;
  margin: 0 20px;
}
footer .nav--support a {
  color: #222;
}
footer .nav--support a:hover {
  opacity: 0.5;
}
footer .nav--support + .list--bnr__small {
  margin-top: -40px;
}
footer .list--bnr__footer {
  margin-bottom: 20px;
}
footer .list--bnr__footer li {
  display: inline-block;
  width: 280px;
  margin: 0 5px;
}
footer .list--bnr__footer li a {
  display: block;
  line-height: 0;
  color: #222;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
}
footer .list--bnr__small {
  padding-top: 10px;
  margin-bottom: 30px;
}
footer .list--bnr__small li {
  display: inline-block;
  width: 120px;
  padding: 0 !important;
  margin: 0 4px;
}
footer .list--bnr__small li a {
  display: block;
  line-height: 0;
  border: 1px solid #ddd;
}
footer .list--bnr__small li a:hover {
  box-shadow: 0 6px 10px rgba(0, 0, 0, 0.3);
}
footer .copyright {
  color: #888;
  font-size: 11px;
}
footer .jasrac {
  color: #888;
  font-size: 11px;
}
/* 4.0 page
============================== */
.block--pager .pager__item--newer a,
.block--pager .pager__item--older a {
  display: block;
  width: 16px;
  height: 15px;
  background-size: contain;
  opacity: 1;
  margin-top: -8px;
}
.block--pager .pager__item--newer a {
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
  margin-top: -6px;
}
/*  4.1 parts
------------------------------ */
/* typography */
.tit--page {
  color: inherit;
  font-size: 50px;
  font-weight: 600;
  line-height: 1.4;
  margin: 0 0 1em;
  position: relative;
  margin: 0 0 30px;
}
.section-tit {
  color: inherit;
  font-size: 50px;
  line-height: 1.4;
  font-family: 'Rubik', sans-serif;
  font-weight: 600;
  padding: 0 20px;
  margin: 0 0 60px;
  text-align: center;
  letter-spacing: 0.04em;
}
.tit--menu {
  color: inherit;
  font-size: 11px;
  font-weight: bold;
  line-height: 1.3;
  margin: 0 0 1em;
}
.txt--lead {
  color: inherit;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
  margin: 0 0 1em;
}
.txt--basic {
  color: inherit;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  margin: 0 0 1.5em;
}
.txt--sub,
.sub-txt-list {
  color: inherit;
  font-size: 11px;
  font-weight: 400;
  line-height: 1.3;
}
.bold {
  font-weight: bold;
}
.red {
  color: #f03;
}
/* slick */
.slick-dots {
  bottom: -40px;
  padding: 0 9%;
}
.slick-dots li {
  width: 7px;
  height: 7px;
  margin: 0 7px 0 0;
}
.slick-dots li.slick-active button::before {
  opacity: 1;
}
.slick-dots li button {
  width: 7px;
  height: 7px;
  padding: 0;
}
.slick-dots li button::before {
  content: '';
  background: #222;
  border-radius: 10px;
  width: 7px;
  height: 7px;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.slick-prev,
.slick-next {
  display: block;
  width: 50px;
  height: 50px;
  background: #fff;
  color: #222;
  font-size: 0;
  line-height: 0;
  padding: 0;
  position: absolute;
  top: 85px;
  top: 11vw;
  z-index: 99;
  cursor: pointer;
  border: none;
  outline: none;
}
.slick-prev {
  left: -50px;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.slick-next {
  right: -50px;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: none;
  transform: translate(0, -50%) scale(1.1);
  background: #fff;
}
.slick-prev::before,
.slick-next::before {
  content: '';
  display: block;
  width: 20px;
  height: 20px;
  border-right: 2px solid #111;
  border-top: 2px solid #111;
  position: absolute;
  top: 14px;
  left: 18px;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.slick-prev::before {
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}
.slick-next::before {
  left: 10px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.slick-slider:hover .slick-prev {
  opacity: 1;
  left: 0;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.slick-slider:hover .slick-next {
  opacity: 1;
  right: 0;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
/* 4.2 home
------------------------------ */
.page--home .wrap {
  padding-bottom: 260px;
}
.page--home h1 {
  font-family: 'Rubik', sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
  font-size: 70px;
  text-align: center;
  margin: 60px auto;
  letter-spacing: 0.02em;
}
.page--home h1 img,
.page--home h1 svg {
  width: 450px;
}
.page--home .section--bnr {
  overflow: hidden;
}
.page--home .section--bnr li {
  padding: 25px 0;
}
.page--home .section--bnr a {
  padding: 15px;
}
.page--home .btn--main {
  background: #fff;
  color: inherit;
}
.page--home .list--bnr a {
  display: block;
  color: #222;
  position: relative;
}
.page--home .list--bnr a .list--bnr__caption {
  padding: 0 30px 30px;
  position: absolute;
  bottom: -7px;
  left: -7px;
}
.page--home .list--bnr a .list--bnr__caption p {
  display: inline;
  background: #fff;
  line-height: 26px;
  padding: 2px 8px;
  font-weight: bold;
  font-size: 13px;
}
.page--home .list--bnr a:hover {
  box-shadow: 0 6px 10px rgba(0, 0, 0, 0.3);
}
.page--home section {
  width: 70%;
  min-width: 1000px;
  padding: 40px 0 100px;
  margin: 0 auto;
}
.page--home .section-tit {
  margin-bottom: 50px;
}
.page--home .section--bnr {
  width: 100%;
  margin-top: -60px;
}
.page--home .section--top {
  width: 100%;
  padding: 0;
  margin-bottom: 50px;
}
.page--home .section--top.official h1 {
  margin: 90px auto;
}
.page--home .section--top .block--photo {
  width: 100%;
  height: 120vh;
}
.page--home .section--top .block--photo img {
  display: block;
  width: 100%;
  height: 100%;
  background: no-repeat center top;
  background-size: cover;
}
.page--home .section--top .block--photo .logo_25th {
  display: none;
}
.page--home .section--top a {
  display: block;
  line-height: 0;
  color: #222;
  overflow: hidden;
  position: relative;
}
.page--home .section--top a .thumb img {
  display: block;
  width: 100%;
  height: 75vh;
  background: no-repeat center;
  background-size: contain;
  margin: 0 auto;
  position: relative;
  z-index: 10;
}
.page--home .section--top a .thumb--caption {
  padding: 0 30px 15px;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 10;
}
.page--home .section--top a .thumb--caption span {
  display: inline;
  background: #fff;
  line-height: 47px;
  padding: 12px 8px;
  font-weight: bold;
  font-size: 14px;
}
.page--home .section--login {
  width: 630px;
  min-width: auto;
  padding: 20px 0 0;
  margin-bottom: 70px;
}
.page--home .section--login .btn .btn--main {
  background: #fff;
  color: #0c3fa0;
}
.page--home .section--login .login {
  text-align: center;
}
.page--home .section--login .login a {
  color: #fff;
  text-decoration: underline;
}
.page--home .section--login .login a:hover {
  text-decoration: none;
}
.page--home .section--login.loggedIn {
  text-align: center;
}
.page--home .section--login.loggedIn a {
  display: block;
  color: #004480;
  padding: 30px 20px;
}
.page--home .section--login.loggedIn .btn a {
  display: inline-block;
  padding: 0 1.5em 0;
}
.page--home .section--login.loggedIn .login a {
  display: inline-block;
  padding: 0;
  color: #fff;
}
.page--home .section--login.loggedIn .welcome {
  color: inherit;
  font-size: 32px;
  line-height: 1.4;
  font-family: 'Rubik', sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: #fff;
  line-height: 1;
  margin-bottom: 15px;
}
.page--home .section--login.loggedIn .name {
  font-size: 12px;
  color: #fff;
}
.page--home .section--login.loggedIn .name span {
  font-weight: bold;
  font-size: 18px;
}
.page--home .section--login.loggedIn dl {
  width: 60%;
  margin: 0 auto;
  border: 1px solid #004480;
  border-radius: 4px;
  overflow: hidden;
  line-height: 40px;
}
.page--home .section--login.loggedIn dl dt {
  float: left;
  width: 7em;
  background: #004480;
  color: #fff;
  font-size: 12px;
}
.page--home .section--login.loggedIn dl dd {
  font-weight: bold;
  font-size: 15px;
  background: #fff;
}
.page--home .birthday-message {
  background-color: #ffffff;
  position: absolute;
  top: 130px;
  right: 0;
  pointer-events: none;
  transition: all 0.3s;
  -webkit-animation: 3s fuwafuwa infinite;
  animation: 3s fuwafuwa infinite;
}
.page--home .birthday-message a {
  padding: 10px 20px;
  display: block;
  pointer-events: auto;
}
.page--home .birthday-message a i {
  margin-right: 10px;
}
.page--home .birthday-message a:hover {
  color: #ffffff;
}
.page--home .birthday-message:hover {
  background-color: #0c2e6f;
}
@-webkit-keyframes fuwafuwa {
  0%,
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-18px);
    transform: translateY(-18px);
  }
}
@keyframes fuwafuwa {
  0%,
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-18px);
    transform: translateY(-18px);
  }
}
.page--home .section--pickup {
  padding: 0 20px 70px;
}
.page--home .section--info .list--information .date {
  order: 1;
}
.page--home .section--info .list--information .tit {
  order: 3;
}
.page--home .section--info .list--information .category {
  order: 2;
}
.page--home .section--sns {
  text-align: center;
}
.page--home .section--sns li {
  display: inline-block;
}
.page--home .section--movie .list--contents li {
  width: 50%;
  margin-right: 0;
  margin-bottom: 0;
}
.page--home .section--introduction {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-box-align: top;
  -webkit-align-items: top;
  align-items: top;
  padding-bottom: 0;
  margin-bottom: 0;
}
.page--home .section--introduction [class^="block--"] {
  width: 50%;
  color: #fff;
  padding: 80px 8%;
}
.page--home .section--introduction [class^="block--"] .block-tit {
  text-align: center;
  margin-bottom: 40px;
}
.page--home .section--introduction [class^="block--"] .block-tit img {
  height: 110px;
}
.page--home .section--introduction [class^="block--"] .thumb {
  width: 47%;
  text-align: center;
  margin: 0 auto;
}
.page--home .section--introduction .inner {
  opacity: 0;
  -webkit-transform: translate3d(0, 40px, 0);
  transform: translate3d(0, 40px, 0);
}
.page--home .section--introduction .block--team {
  position: relative;
  overflow: hidden;
}
.page--home .section--introduction .block--team::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: #174cb1;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.page--home .section--introduction .block--team .thumb--team {
  margin: 90px auto 50px;
}
.page--home .section--introduction .block--team .video-tit {
  text-align: center;
  font-family: 'Rubik', sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
  font-size: 18px;
  margin: 70px auto 20px;
}
.page--home .section--introduction .block--team .video {
  margin: 0 auto 55px;
}
.page--home .section--introduction .block--class {
  position: relative;
  overflow: hidden;
}
.page--home .section--introduction .block--class::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: #3db6e3;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.page--home .section--introduction .block--class .btn--main {
  color: #34a5d4;
}
.page--home .section--introduction .btn--main {
  background: #fff;
  color: #0c3fa0;
}
.page--home .section--introduction .view::before {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-transition: transform 0.4s ease-out 0.4s;
  transition: transform 0.4s ease-out 0.4s;
}
.page--home .section--introduction .view .inner {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-transition: all 0.4s ease-out 1.2s;
  transition: all 0.4s ease-out 1.2s;
}
.page--home .section--kobukulog .list--contents {
  -webkit-justify-content: center;
  justify-content: center;
}
.page--home .section--kobukulog .lead {
  text-align: center;
  color: inherit;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.6;
  margin-bottom: 40px;
}
.page--home .section--kobukulog li {
  width: 50%;
  margin-right: 0;
}
.page--home .section--kobukulog li .category {
  font-size: 30px;
  text-align: center;
  display: block;
  margin-bottom: 20px;
}
.page--home .section--kobukulog li .category::before {
  display: none;
}
.page--home .section--kobukulog li .category {
  font-weight: 600;
  margin-right: 0;
  margin-bottom: 25px;
}
.page--home .section--kobukulog .btn--main {
  width: 30%;
  min-width: inherit;
}
.page--home .section--latest {
  margin-bottom: 80px;
}
.page--home .section--latest .list--contents {
  -webkit-justify-content: left;
  justify-content: left;
}
.page--home .section--latest li {
  width: 25%;
  margin-right: 0;
}
.page--home .section--latest li .category {
  font-size: 22px;
  text-align: center;
  display: block;
  margin-bottom: 15px;
}
.page--home .section--latest li .category::before {
  display: none;
}
.page--home .section--latest li .date {
  font-size: 13px;
  letter-spacing: 0.02em;
  margin-bottom: 8px;
}
.page--home .section--latest li .tit {
  font-size: 14px;
}
.page--home .section--latest li .thumb {
  margin-bottom: 15px;
}
.page--home .section--latest li .category {
  margin-right: 0;
  font-weight: 600;
}
@media screen and (max-width: 1499px) {
  .page--home .section--latest li .category {
    min-height: 2em;
  }
}
/*  4.3 information
------------------------------ */
.page--info .list--information .date {
  order: 1;
}
.page--info .list--information .category {
  order: 2;
}
.page--info .list--information .date + .date {
  padding-left: 15px;
}
.page--info .list--information .date + .date::before {
  content: '';
  display: block;
  width: 10px;
  height: 1px;
  background: #222222;
  position: absolute;
  left: 0;
  top: 6px;
}
.page--info .list--information .tit {
  order: 3;
}
.page--info .list--information .tit span {
  display: block;
}
.page--info .list--information .tit .date,
.page--info .list--information .tit i {
  width: auto;
  display: inline-block;
  font-weight: 400;
  font-size: 13px;
}
.page--info .list--information .tit i {
  font-size: 11px;
}
.page--info.category-2 .section--detail.new.event-date-start .date::after {
  display: none;
}
.page--info.category-2 .section--detail.new.event-date-start .add-txt::after {
  content: 'NEW';
  font-family: 'Rubik', sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: #ef2a4d;
  margin: 0 0 0 4px;
  font-size: 14px;
  vertical-align: 0;
}
.section--detail .tit {
  color: inherit;
  font-size: 32px;
  font-weight: 400;
  line-height: 1.4;
  margin: 0 0 15px;
}
.section--detail .ph {
  width: 100%;
  margin: 15px 0;
  line-height: 0;
  position: relative;
}
.section--detail .txt {
  padding-top: 40px;
}
.section--detail .category,
.section--detail .date {
  display: inline-block;
  font-size: 15px;
  font-weight: 500;
}
.section--detail .date + .add-txt {
  display: inline-block;
  font-weight: bold;
}
.section--detail .date + .date {
  position: relative;
  padding-left: 20px;
}
.section--detail .date + .date::before {
  content: '';
  display: block;
  width: 14px;
  height: 1px;
  background: #222;
  position: absolute;
  left: 0;
  top: 11px;
}
.section--detail .category {
  position: relative;
  margin-right: 0.7em;
}
.section--detail .ph img {
  width: 100%;
}
.section--detail .youtube {
  position: relative;
  width: 100%;
  margin: 15px 0;
  padding-top: 56.25%;
}
.section--detail .youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
.section--detail .date {
  margin: 0 0 30px;
  position: relative;
}
.section--detail .txt a {
  text-decoration: underline;
}
.section--detail .txt a:hover {
  text-decoration: none;
}
.section--detail .txt .block-tit {
  color: inherit;
  font-size: 22px;
  font-weight: normal;
  line-height: 1.4;
  margin-bottom: 20px;
}
.section--detail .txt .block {
  margin-bottom: 80px;
}
.section--detail .txt dl dt {
  color: inherit;
  font-size: 11px;
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: 5px;
}
.section--detail .txt dl dt:first-of-type {
  padding-top: 15px;
  border-top: 0.5px solid #ddd;
}
.section--detail .txt dl dd {
  font-size: 16px;
  border-bottom: 0.5px solid #ddd;
  padding-bottom: 15px;
  margin-bottom: 15px;
}
.section--detail .txt ul li {
  text-indent: -1em;
  padding-left: 1em;
  margin-bottom: 0.5em;
}
.section--detail .btn a {
  text-decoration: none;
}
.section--detail .block--share {
  float: right;
  margin: 0;
  z-index: 2;
}
.section--detail .block--share li:first-child {
  margin: 0;
}
.section--detail .block--share li {
  display: inline-block;
  margin: 0 0.8em 0 0;
  transition: none;
  -webkit-transition: none;
  font-size: 12px;
  font-weight: bold;
  color: #000;
  vertical-align: middle;
  opacity: 0.4;
}
.section--detail .block--share li a {
  display: block;
  font-size: 20px;
  color: #000;
}
.section--detail .block--share li a * {
  -webkit-transition: none;
  transition: none;
}
.section--detail .block--share li svg {
  width: 18px;
  height: 18px;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  fill: #000;
  vertical-align: -1px;
}
.category-5 .section--detail .txt {
  padding-top: 0;
}
.category-5 .section--detail .ph {
  text-align: center;
}
.category-5 .section--detail .ph:first-of-type {
  margin-bottom: 40px;
}
.category-5 .section--detail .ph:nth-of-type(2) {
  margin-top: 40px;
}
.category-5 .section--detail .ph img:first-child {
  width: auto;
}
.section--detail.new .date::after {
  content: 'NEW';
  font-family: 'Rubik', sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: #ef2a4d;
  margin: 0 0 0 2px;
  font-size: 14px;
  vertical-align: 0;
}
/*  4.4 SCHEDULE
------------------------------ */
.page--schedule {
  /* 絞込 */
  /* tv */
  /* radio */
  /* magazine */
  /* web */
  /* other */
  /* live */
}
.page--schedule .calendarHeader,
.page--schedule .calendar .weekHeader,
.page--schedule .calendarBody {
  display: flex;
  display: webkit-flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.page--schedule .calendar .weekHeader {
  border-top: 0.5px solid #222;
  border-left: 0.5px solid #222;
  font-family: 'Rubik', sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
}
.page--schedule .calendar .weekHeader div {
  font-size: 13px;
  border: none;
  background: #222;
  color: #fff;
  border-bottom: 0.5px solid #222;
  border-right: none !important;
}
.page--schedule .calendar .weekHeader div,
.page--schedule .calendar .calendarBody div > div {
  width: calc(100% / 7);
  text-align: center;
  border-right: 0.5px solid #222;
  border-bottom: 0.5px solid #222;
}
.page--schedule .calendar .calendarBody > div {
  width: 100%;
  display: flex;
  display: webkit-flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0;
}
.page--schedule .calendar .calendarBody .cell {
  min-height: 100px;
  text-align: left;
  padding: 0 5px 5px;
}
.page--schedule .calendar .calendarBody .cell > div {
  width: 100%;
  border: none;
}
.page--schedule .calendar .calendarBody .cell > div:not(:last-child) {
  margin-bottom: 5px;
}
.page--schedule .calendar .calendarBody .cell > div a {
  display: block;
  text-align: left;
  text-decoration: none;
  font-size: 8px;
  line-height: 140%;
  word-break: break-all;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.page--schedule .calendar .calendarBody .cell > div span::before {
  display: none;
}
.page--schedule .weekHeader div:nth-child(1) {
  border-left: 0.5px solid #222 !important;
}
.page--schedule .week > div:nth-child(1) {
  border-left: 0.5px solid #222;
}
.page--schedule .weekHeader div:nth-child(6),
.page--schedule .week > div:nth-child(6) .date {
  color: #64a4f3;
}
.page--schedule .weekHeader div:nth-child(7) {
  border-right: 0.5px solid #222 !important;
}
.page--schedule .weekHeader div:nth-child(7),
.page--schedule .week > div:nth-child(7) .date {
  color: #f95d5d;
}
.page--schedule .calendarBody .cell > div a:hover {
  opacity: 0.6;
}
.page--schedule .cell a {
  color: #222;
}
.page--schedule .cell a span {
  display: inline-block;
  font-size: 8px;
  padding: 3px 4px;
  line-height: 1;
  margin-bottom: 4px;
}
.page--schedule .cell a .category {
  color: #fff;
  margin-bottom: 0;
}
.page--schedule .cell a .tit {
  font-size: 12px;
  line-height: 140%;
  word-break: break-all;
}
.page--schedule .list--information.schedule .date {
  flex-wrap: wrap;
}
.page--schedule .list--information.schedule .date .end {
  padding-top: 19px;
}
.page--schedule .list--information.schedule .date .end::before {
  top: 5px;
  margin-left: -9%;
}
.page--schedule .list--information.schedule .date .end .week {
  right: -27%;
  top: 34px;
}
.page--schedule .list--information + .block--month .month-pager {
  top: inherit;
}
.page--schedule .block--month {
  font-family: 'Rubik', sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
  margin: 50px 0 0;
}
.page--schedule .block--month .tit {
  margin: -0.25em 0 40px;
  font-size: 60px;
  font-weight: 600;
  line-height: 1;
  text-align: center;
  position: relative;
}
.page--schedule .block--month .tit i {
  font-size: 21px;
  vertical-align: 1px;
}
.page--schedule .block--month .tit span {
  display: block;
  width: 6em;
  margin: 0 auto;
  padding: 5px 0 2px;
  font-size: 15px;
  margin-top: -5px;
  position: relative;
}
.page--schedule .block--month .calendarHeader {
  margin-bottom: 50px;
}
.page--schedule .block--month .calendarHeader li {
  width: calc((100% / 3) - 0.1%);
}
.page--schedule .block--month .calendarHeader li a {
  display: inline-block;
  font-size: 14px;
  text-decoration: none;
  position: relative;
  top: 9px;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  left: 0;
}
.page--schedule .block--month .calendarHeader li div {
  opacity: 0.3;
}
.page--schedule .block--month .calendarHeader li:nth-child(1) a {
  right: 0;
  left: inherit;
}
.page--schedule .block--month .calendarHeader:nth-child(1) {
  text-align: left;
}
.page--schedule .block--month .calendarHeader:nth-child(2) {
  text-align: center;
}
.page--schedule .block--month .calendarHeader:nth-child(2) .year {
  display: inlnie-block;
  padding-right: 5px;
}
.page--schedule .block--month .calendarHeader:nth-child(2) .month {
  font-size: 46px;
  font-weight: 300;
}
.page--schedule .block--month .calendarHeader:nth-child(2) .month_en {
  display: inlnie-block;
  padding-left: 5px;
}
.page--schedule .block--month .calendarHeader:nth-child(3) {
  text-align: right;
}
.page--schedule .block--month .calendarHeader .form--horizontal li {
  display: inline-block;
  margin: 0 2px;
}
.page--schedule .block--month .calendarHeader:nth-child(1) a:hover {
  right: 10px;
}
.page--schedule .block--month .calendarHeader:nth-child(1) a:hover svg {
  right: 5px;
}
.page--schedule .block--month .calendarHeader:nth-child(3) a:hover {
  left: 10px;
}
.page--schedule .block--month .calendarHeader:nth-child(3) a:hover svg {
  left: 5px;
}
.page--schedule .block--month .month-pager {
  width: 140px;
  text-align: center;
  position: relative;
  top: -77px;
  left: 50%;
  margin-left: -69px;
}
.page--schedule .block--month .month-pager li {
  display: inline-block;
  margin: 0 2px;
  position: absolute;
}
.page--schedule .block--month .month-pager li:first-child {
  left: 0;
}
.page--schedule .block--month .month-pager li:last-child {
  right: 0;
}
.page--schedule .block--month .month-pager li a {
  display: block;
  text-decoration: none;
  font-size: 14px;
  color: inherit;
  position: relative;
}
.page--schedule .block--month .month-pager li a:hover {
  transform: scale(1.2);
}
.page--schedule .block--month .month-pager li:first-child a:before,
.page--schedule .block--month .month-pager li:last-child a:after {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border: 2px solid #222;
  border-top: none;
  border-right: none;
  margin: -0.25em 0 0;
  position: absolute;
  right: 0.25em;
  top: 50%;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  width: 1em;
  height: 1em;
  border-width: 2px;
  margin: -0.35em 0 0;
  right: -0.8em;
}
.page--schedule .block--month .month-pager li:first-child a:before {
  transform: rotate(45deg);
  left: -0.8em;
  right: inherit;
}
.page--schedule .block--month .list--information + .block--month {
  margin-top: 30px;
}
.page--schedule .block--narrowing {
  width: 100%;
  letter-spacing: 0.1em;
  line-height: 1.4;
  text-align: center;
  position: relative;
  margin: 0 auto 50px;
}
.page--schedule .block--narrowing dt {
  display: none;
  font-size: 12px;
  font-weight: bold;
  margin-right: 12px;
}
.page--schedule .block--narrowing dd {
  display: inline-block !important;
  text-align: center;
}
.page--schedule .block--narrowing li {
  display: inline-block;
  margin: 0 5px 0 0;
}
.page--schedule .block--narrowing li label {
  color: #efeeea;
}
.page--schedule .block--narrowing li label .category {
  display: inline-block;
  width: 100%;
  padding: 6px 20px 6px;
  font-size: 12px;
  line-height: 1;
  border-radius: 20px;
  cursor: pointer;
  background: #2848a5;
  border: 1px solid;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.page--schedule .block--narrowing li label .category::before {
  display: none;
}
.page--schedule .block--narrowing li label .category:hover {
  transform: scale(1.1);
}
.page--schedule .block--narrowing li input[type="checkbox"] {
  display: none;
}
.page--schedule .block--narrowing li input[type="checkbox"]:not(:checked) + .category {
  background: transparent;
  border: 1px solid rgba(0, 0, 0, 0.2);
  color: #222;
}
.page--schedule .block--narrowing .category--12 .category,
.page--schedule .category--12 .category {
  background: #f35e5e;
  border-color: #f35e5e;
}
.page--schedule.schedule--list .list--information .category--12 .category {
  background: none;
  color: #f35e5e;
}
.page--schedule .block--narrowing .category--13 .category,
.page--schedule .category--13 .category {
  background: #66c769;
  border-color: #66c769;
}
.page--schedule.schedule--list .list--information .category--13 .category {
  background: none;
  color: #66c769;
}
.page--schedule .block--narrowing .category--14 .category,
.page--schedule .category--14 .category {
  background: #f9627e;
  border-color: #f9627e;
}
.page--schedule.schedule--list .list--information .category--14 .category {
  background: none;
  color: #f9627e;
}
.page--schedule .block--narrowing .category--15 .category,
.page--schedule .category--15 .category {
  background: #8853dc;
  border-color: #8853dc;
}
.page--schedule.schedule--list .list--information .category--15 .category {
  background: none;
  color: #8853dc;
}
.page--schedule .block--narrowing .category--16 .category,
.page--schedule .category--16 .category {
  background: #614323;
  border-color: #614323;
}
.page--schedule.schedule--list .list--information .category--16 .category {
  background: none;
  color: #614323;
}
.page--schedule .block--narrowing .category--17 .category,
.page--schedule .category--17 .category {
  background: #72a0f3;
  border-color: #72a0f3;
}
.page--schedule.schedule--list .list--information .category--17 .category {
  background: none;
  color: #72a0f3;
}
.page--schedule .no-data {
  padding: 50px 0 200px;
}
/*  4.4 movie
------------------------------ */
.page--movie .list--contents .tit {
  margin: 0 0 2px;
  line-height: 1.3;
}
.page--movie .list--contents li {
  margin: 0 0 20px 0;
}
.page--movie.category-12 ul + .txt--basic {
  text-align: center;
  line-height: 1.5;
  font-size: 16px;
}
.page--movie.category-12 .no-data {
  font-weight: 500;
  padding-top: 0;
  padding-bottom: 40px;
  font-size: 26px;
}
.page--movie img {
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
}
.page--movie .block--attention {
  font-size: 0.8em;
}
.page--movie .block--attention li:not(:last-child) {
  margin-bottom: 0;
}
.page--movie .block--contents-comment .btn--main {
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.page--movie .block--contents-comment .btn--main:hover {
  -webkit-box-shadow: 0 4px 24px rgba(0, 0, 0, 0.5);
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.5);
}
.page--movie .section--detail {
  max-width: inherit;
  width: 80%;
}
.page--movie .section--detail .area--moive__inner::after {
  display: table;
  content: "";
  clear: both;
}
.page--movie .section--detail .block--player {
  float: left;
  width: 66%;
  margin-bottom: 30px;
}
.page--movie .section--detail .cover-layer {
  top: 0;
}
.page--movie .section--detail .block--contents-comment {
  width: 30%;
  float: right;
}
.page--movie .section--detail [id^='contents_comment'] {
  height: 270px !important;
  height: 19vw !important;
  margin-bottom: 10px;
}
.page--movie .section--detail [id^='contents_comment'] .name {
  font-size: 12px;
  font-weight: bold;
  /*
				&::before{
					content: "\f2be";
					font-family: FontAwesome;
					font-weight: normal;
					font-size: 14px;
					vertical-align: -1px;
					padding-right: 2px;
				}
				*/
}
.page--movie .section--detail [id^='contents_comment'] .txt {
  margin-bottom: 5px;
}
.page--movie .section--detail [id^='contents_comment'] .date {
  text-align: right;
  font-size: 10px;
  font-weight: 400;
  color: #888;
  display: block;
  padding-right: 7px;
  margin-bottom: 0;
}
.page--movie .section--detail [id^='contents_comment'] .report-btn {
  right: 10em;
  top: inherit;
  bottom: 14px;
}
.page--movie .section--detail .block--player .inner .ulizahtml5 {
  width: 100% !important;
  height: auto !important;
  position: relative;
  padding-top: 56.25%;
}
.page--movie .section--detail .block--player .inner .ulizahtml5 .vjs-center-menu {
  width: 100%;
  height: auto;
  margin-top: -40px;
  position: absolute;
  top: 50%;
}
.page--movie .section--detail .block--player .inner .ulizahtml5 video {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
.page--movie .section--detail .tit {
  margin: 0 0 30px;
}
.page--movie .section--detail .date {
  font-size: 12px;
  margin: 0 0 20px;
}
.page--movie .section--detail .list--step .ph {
  display: none;
}
.page--movie .section--detail .list--step li {
  padding: 15px;
  margin-top: 20px;
  border: 2px solid #222;
}
.page--movie .section--detail .list--step li .tit {
  font-size: 14px;
}
.page--movie .section--detail .list--step li .tit span {
  display: block;
  font-size: 20px;
  font-weight: bold;
  margin: 0 0 10px;
  color: #ef2a4d;
}
.page--movie .section--detail .list--step .btn {
  margin: 15px 0;
}
.page--movie .section--detail .list--step .btn--main {
  font-size: 14px;
}
.page--movie.category-4 .post {
  padding: 0 20px;
  margin: 0 0 40px;
}
.page--movie.category-4 .post .txt {
  margin: 0 0 5px;
}
/*  4.4 biography
------------------------------ */
.page--biography .section--detail {
  width: 80%;
  max-width: 900px;
  padding-left: 0;
  padding-right: 0;
}
.page--biography .section--detail .section-tit {
  font-size: 50px;
  font-weight: 700;
  letter-spacing: 0.07em;
}
.page--biography .block--category {
  text-align: center;
  margin-bottom: 40px;
}
.page--biography .block--category li {
  display: inline-block;
  font-family: 'Rubik', sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
  font-size: 16px;
  text-align: center;
  margin: 0 20px;
}
.page--biography .block--category li span {
  display: inline-block;
  height: 22px;
  position: relative;
  cursor: pointer;
  padding-bottom: 10px;
}
.page--biography .block--category li span::after {
  opacity: 0;
  position: absolute;
  bottom: -12px;
  left: 0;
  content: '';
  display: block;
  width: 100%;
  height: 3px;
  background: #222;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.page--biography .block--category li.current span::after,
.page--biography .block--category li:hover span::after {
  opacity: 1;
  bottom: -8px;
}
.page--biography .block--category .slick-list {
  padding: 0 !important;
}
.page--biography .artist-ph {
  margin: 0 auto 40px;
}
.page--biography .list--member {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-box-align: top;
  -webkit-align-items: top;
  align-items: top;
  width: 60%;
  margin: 0 auto 80px 16%;
}
.page--biography .list--member li {
  display: block;
  width: 50%;
  margin-bottom: 0;
}
.page--biography .list--member li dl dt {
  color: inherit;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  font-size: 18px;
  margin-bottom: 5px;
}
.page--biography .list--member li dl dd {
  line-height: 1.7;
}
.page--biography .text {
  padding: 0 4%;
}
.page--biography .text .band-name {
  color: inherit;
  font-size: 32px;
  font-weight: normal;
  line-height: 1.4;
  text-align: center;
  margin-bottom: 40px;
}
.page--biography .text p {
  word-break: break-all;
  text-align: justify;
  line-height: 1.7;
  margin-bottom: 1.4em;
}
.page--biography .biography__list > dt {
  width: 80px;
  font-family: 'Rubik', sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  font-size: 27px;
  opacity: 1;
  line-height: 1;
  position: relative;
  letter-spacing: 0;
  float: left;
  clear: left;
}
.page--biography .biography__list > dd {
  overflow: hidden;
  padding: 0 0 40px 30px;
  margin: 0;
}
.page--biography .biography__list dl dt {
  width: 2.5em;
  float: left;
  clear: both;
  font-size: 12px;
  font-weight: bold;
}
.page--biography .biography__list dl dt.term + dd {
  min-height: 60px;
}
.page--biography .biography__list dl dt span {
  display: block;
  position: relative;
  padding-top: 10px;
}
.page--biography .biography__list dl dt span::before {
  content: '';
  display: block;
  width: 1px;
  height: 10px;
  background: #222;
  position: absolute;
  top: 0;
  left: 10px;
}
.page--biography .biography__list dl dd {
  overflow: hidden;
  padding-left: 2%;
  margin-bottom: 15px;
}
.page--biography .block--history .inner {
  padding: 20px 4%;
}
.page--biography .block--history .block--text:not(:last-of-type(2)) {
  margin-bottom: 50px;
}
.page--biography .block--history .block--text:not(:last-of-type) {
  margin-top: 100px;
}
.page--biography .block--history .block--text:not(:last-of-type) + .txt--sub {
  line-height: 1.6;
}
.page--biography .block--history .block--text p {
  word-break: break-all;
  text-align: justify;
  line-height: 2.2;
  margin-bottom: 1.5em;
  font-size: 15px;
}
.page--biography .block--history .block--text .text--right {
  margin-top: -10px;
}
.page--biography .block--history .block--text .tit {
  color: inherit;
  font-size: 26px;
  font-weight: 400;
  line-height: 1.6;
  margin-bottom: 15px;
}
.page--biography .block--history .block--text dl {
  margin: 60px auto;
}
.page--biography .block--history .block--text dt {
  font-size: 15px;
  color: #888;
  margin-bottom: 10px;
}
.page--biography .block--history .block--text dd {
  font-size: 16px;
  margin-bottom: 30px;
}
.page--biography .block--history .block--text div.txt--sub {
  margin-bottom: 10px;
}
.page--biography .block--history .tit {
  text-align: center;
  margin-bottom: 30px;
}
.page--biography .block--history .tit + .txt--sub {
  text-align: center;
  font-size: 0.9em;
  margin-bottom: 40px;
}
.page--biography .block--history .lead {
  border-bottom: 0.5px solid #e5e5e5;
  padding-bottom: 50px;
}
.page--biography .block--diary .inner {
  padding: 20px 0;
}
.page--biography .block--diary .inner > .tit,
.page--biography .block--diary .inner > .tit + .lead {
  margin-bottom: 0;
}
.page--biography .block--diary .inner > .tit {
  text-align: center;
  margin-bottom: 30px;
}
.page--biography .block--diary .inner > .tit + .lead {
  border-bottom: 0.5px solid #e5e5e5;
  padding-bottom: 50px;
  margin-bottom: 60px;
}
.page--biography .block--diary .inner > .tit + .lead .txt--sub {
  display: inline-block;
}
.page--biography .block--diary dt {
  font-family: -apple-system, BlinkMacSystemFont, "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-weight: normal;
  font-size: 24px;
  line-height: 1.4;
  float: none;
  width: 100%;
  padding-bottom: 40px;
}
.page--biography .block--diary dt span {
  display: block;
  font-size: 14px;
  padding-top: 5px;
}
.page--biography .block--diary dd {
  border-bottom: 1px solid #e5e5e5;
  padding: 0 0 40px;
  margin-bottom: 40px;
}
.page--biography .block--diary dd p {
  word-wrap: break-word;
  line-height: 1.8;
  margin-bottom: 1em;
}
/*  4.5 wallpaper
------------------------------ */
.page--wallpaper .tit {
  margin-bottom: 10px;
}
.page--wallpaper .list--contents > li {
  width: 30%;
  margin-right: 5%;
  margin-bottom: 60px;
}
.page--wallpaper .list--contents > li:nth-last-child(-n+3) {
  margin-bottom: 0;
}
.page--wallpaper .list--contents > li:nth-child(3n) {
  margin-right: 0;
}
.page--wallpaper .list--contents > li .thumb {
  cursor: auto;
}
.page--wallpaper .list--contents > li .tit {
  font-size: 15px;
  font-weight: bold;
  margin-bottom: 10px;
}
.page--wallpaper .list--wp {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: end;
  justify-content: end;
  -webkit-box-align: top;
  -webkit-align-items: top;
  align-items: top;
  -webkit-flex-wrap: wrap-reverse;
  flex-wrap: wrap-reverse;
}
.page--wallpaper .list--wp li {
  margin: 0 0 15px;
}
.page--wallpaper .list--wp li:hover {
  border-color: transparent !important;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.page--wallpaper .list--wp a {
  display: block;
  color: inherit;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  position: relative;
  padding: 20px 0;
}
.page--wallpaper .list--wp a::after {
  display: table;
  content: "";
  clear: both;
}
.page--wallpaper .list--wp a:hover {
  box-shadow: 0 4px 35px rgba(0, 0, 0, 0.2);
}
.page--wallpaper .list--wp .tit {
  color: inherit;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  word-break: break-all;
}
.page--wallpaper .list--wp .date {
  font-family: 'Rubik', sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1;
  margin: 0 0 2px;
}
.page--wallpaper .list--wp .date .end {
  padding-top: 23px;
  position: relative;
}
.page--wallpaper .list--wp .date .end::before {
  content: '';
  display: block;
  position: absolute;
  width: 1px;
  height: 15px;
  background: #222;
  left: 50%;
  top: 5px;
  margin-left: -1.1em;
}
.page--wallpaper .list--wp .date--event {
  color: inherit;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
}
.page--wallpaper .list--wp .new .date::after {
  content: 'NEW';
  font-family: 'Rubik', sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: #ef2a4d;
  margin: 0 0 0 6px;
}
.page--wallpaper .list--wp .category {
  display: block;
  font-family: 'Rubik', sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1;
  margin: 0 0 0.5em;
}
.page--wallpaper .list--wp .thumb {
  width: 100%;
  line-height: 0;
  margin: 0;
}
.page--wallpaper .list--wp li {
  width: 100%;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  margin: 0;
}
.page--wallpaper .list--wp li:last-of-type {
  border-top: 1px solid rgba(255, 255, 255, 0.2);
}
.page--wallpaper .list--wp li a {
  font-size: 11px;
  text-align: center;
  padding: 8px;
}
/*  4.6 blog
------------------------------ */
.page--blog .section-tit {
  padding: 0;
  margin: 0;
  position: relative;
  top: -5px;
}
.page--blog .section-tit img {
  width: 100%;
  height: 130px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
}
.page--blog .section--list {
  padding: 0;
}
.page--blog .list--contents {
  position: relative;
  border-top: 1px solid #222;
  margin: -16px 0 0;
}
.page--blog .list--contents li {
  margin: 0;
  position: relative;
  border-bottom: 1px solid #222;
}
.page--blog .list--contents li a {
  display: block;
  padding: 15px 0 15px 20px;
  position: relative;
}
.page--blog .list--contents li a .thumb {
  float: left;
  width: 30%;
  margin: 0 10px 0 0;
}
.page--blog .list--contents li a .thumb img {
  width: 100%;
  height: auto;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
}
.page--blog .section--detail .thumb {
  position: static;
  width: 100%;
}
.page--blog .section--detail .ph {
  position: relative;
  padding: 10px 0;
}
.page--blog .section--detail .date {
  width: 100%;
  padding: 0 0 10px;
  margin: 0 0 20px;
  color: #a1a1a1;
  opacity: 1;
}
.page--blog .section--detail .block--pager {
  position: relative;
  width: 100%;
  padding: 15px 0;
  text-align: center;
}
.page--blog .section--detail .block--pager li {
  display: inline-block;
  min-width: 25px;
  font-family: 'Rubik', sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
  font-weight: bold;
  line-height: 1;
}
.page--blog .section--detail .block--pager .block--pager--newer {
  width: 33.3%;
  width: calc(33.33333333%);
  left: 0;
  float: left;
  position: relative;
  height: 23px;
  text-align: left;
  line-height: 23px;
  font-size: 15px;
  padding-left: 23px;
}
.page--blog .section--detail .block--pager .block--pager--top {
  font-size: 15px;
}
.page--blog .section--detail .block--pager .block--pager--older {
  width: 33.3%;
  width: calc(33.33333333%);
  right: 0;
  float: right;
  position: relative;
  height: 23px;
  text-align: right;
  line-height: 23px;
  font-size: 15px;
  padding-right: 28px;
}
.page--blog .section--detail .block--pager .block--pager--newer a::before {
  position: absolute;
  top: 4px;
  left: 0;
  display: block;
  content: '';
  width: 16px;
  height: 15px;
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
  background-size: contain;
}
.page--blog .section--detail .block--pager .block--pager--older a::after {
  position: absolute;
  top: 4px;
  right: 6px;
  display: block;
  content: '';
  width: 16px;
  height: 15px;
  background-size: contain;
}
/*  4. KOBUKURO CHANNEL LIVE
------------------------------ */
.page--chlive .section--detail .section-tit {
  font-size: 45px;
  font-weight: 700;
  margin-bottom: 30px;
  padding: 0;
}
.page--chlive .section--detail .txt--lead {
  text-align: center;
  font-family: 'Rubik', sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
  font-size: 30px;
  margin-bottom: 30px;
  margin-top: 30px;
}
.page--chlive .section--detail .txt--lead + .txt--basic {
  font-size: 16px;
  text-align: center;
  line-height: 1.7;
  margin-bottom: 30px;
}
.page--chlive .section--detail .txt--lead + .txt--basic br {
  display: none;
}
.page--chlive .section--detail #playerArea {
  width: 100%;
  position: relative;
  padding-bottom: 56.25%;
}
.page--chlive .section--detail .playerArea {
  margin-bottom: 30px;
}
.page--chlive .section--detail .device {
  margin-top: 50px;
  background: #f0f0f0;
  padding: 30px;
}
.page--chlive .section--detail .device dt {
  font-weight: bold;
  font-size: 14px;
  margin-bottom: 5px;
}
.page--chlive .section--detail .device dd {
  font-size: 13px;
  margin-bottom: 20px;
}
.page--chlive .section--detail .device dd li:not(:last-of-type) {
  text-indent: -1em;
  padding-left: 1em;
}
.page--chlive .section--detail .device .txt--basic {
  margin-bottom: 10px;
}
.page--chlive.chlive--detail .section--detail {
  max-width: inherit;
  width: 1100px;
}
.page--chlive.chlive--detail .section--detail #playerArea {
  width: 66%;
  height: 400px;
  float: left;
  margin-right: 4%;
}
.page--chlive.chlive--detail .section--detail .block--contents-comment {
  width: 30%;
  height: 561px;
  float: right;
  overflow: hidden;
}
/*  4.7 bbs
------------------------------ */
/*  4.10 faq
------------------------------ */
.page--faq .wrap,
.page--faq .wrap .section--detail {
  background: #fff;
  color: #222;
}
.page--faq.headerFixed .drawer__btn span:not( :nth-of-type(4)) {
  background: #222;
}
.page--faq.headerFixed .drawer__btn span:nth-of-type(4) {
  color: #222;
}
.page--faq.headerFixed.drawer-visible .drawer__btn span:not( :nth-of-type(4)) {
  background: #fff;
}
.page--faq.headerFixed.drawer-visible .drawer__btn span:nth-of-type(4) {
  color: #fff;
}
.page--faq .section-tit span {
  display: block;
  font-size: 22px;
}
.page--faq .tit--category {
  font-size: 22px;
  font-weight: 600;
  line-height: 1.6;
  padding: 0;
  margin: 0 0 15px;
}
.page--faq .section--list {
  padding-bottom: 80px;
}
.page--faq .section-tit {
  font-size: 40px;
}
.page--faq .list--faq {
  margin: 0 0 100px;
}
.page--faq .list--faq li {
  -webkit-transition: border-color 0.3s ease;
  transition: border-color 0.3s ease;
}
.page--faq .list--faq li a {
  display: block;
  color: #222;
  padding: 20px 1%;
  border-top: 1px solid rgba(0, 0, 0, 0.2);
}
.page--faq .list--faq li:hover {
  border-color: transparent !important;
}
.page--faq .list--faq li:hover a {
  border-color: transparent;
  box-shadow: 0 4px 35px rgba(0, 0, 0, 0.2);
}
.page--faq .list--faq li:last-child {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}
.page--faq .list--faq .tit {
  padding-left: 25px;
}
.page--faq .icon--q,
.page--faq .icon--a {
  font-family: 'Rubik', sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
  margin-right: 5px;
  float: left;
  font-size: 19px;
  position: relative;
  top: 1px;
}
.page--faq .searchBox {
  width: 500px;
  position: relative;
  margin: 60px auto;
  text-align: center;
}
.page--faq .searchBox input[type="submit"] {
  position: absolute;
  right: 7px;
  top: 0;
  width: 40px;
  line-height: 51px;
  font-size: 18px;
  color: #086bc3;
  background: transparent;
  font-weight: bold;
  border-radius: 30px;
  cursor: pointer;
  border: none;
  z-index: 2;
  font-family: FontAwesome;
}
.page--faq .section--detail .tit--category {
  font-size: 14px;
}
.page--faq .section--detail .txt {
  padding-top: 0;
  margin-bottom: 0;
}
.page--faq .section--detail .list--faq a {
  color: #222;
}
.page--faq .section--detail .list--faq .icon--q {
  position: relative;
  color: #222;
  top: 4px;
}
.page--faq .section--detail .detail__btn a {
  color: #222;
}
.page--faq .section--detail .detail__btn a::after {
  border-color: #222;
}
.page--faq .section--detail .block--faq-detail {
  margin: 0 0 60px;
  padding: 30px;
  border: 1px solid #222;
}
.page--faq .section--detail .block--faq-detail .icon--q,
.page--faq .section--detail .block--faq-detail .icon--a {
  font-weight: bold;
  float: left;
  color: #fff900;
  background: #3ea4ff;
  width: 30px;
  line-height: 30px;
  text-align: center;
  color: #fff;
  margin-right: 5px;
  border-radius: 50px;
  position: absolute;
  top: 5px;
}
.page--faq .section--detail .block--faq-detail dt {
  margin: 0 0 20px;
  padding: 0 0 15px;
  font-size: 16px;
  font-weight: bold;
  border-bottom: 1px solid;
  position: relative;
}
.page--faq .section--detail .block--faq-detail dt .icon--q {
  top: 2px;
}
.page--faq .section--detail .block--faq-detail dt .txt {
  padding-left: 2.5em;
  word-break: break-all;
}
.page--faq .section--detail .block--faq-detail dd {
  position: relative;
}
.page--faq .section--detail .block--faq-detail dd .icon--a {
  font-size: 18px;
  background: #ff1a53;
  top: -1px;
}
.page--faq .section--detail .block--faq-detail dd .txt {
  line-height: 1.8em;
  padding-left: 3em;
}
.page--faq .section--detail .list--faq {
  margin: 0 0 30px;
}
.page--faq .section--detail .list--faq .txt {
  padding-left: 25px;
}
.page--faq .section--detail .block--contact {
  padding: 0 5%;
}
.page--faq .list--faq:last-of-type {
  margin: 0;
}
.page--faq .section--detail .list--faq:last-of-type {
  margin: 0 0 30px;
}
.page--faq .section--detail .list--faq:last-of-type li:last-of-type {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}
.page--faq .txt--no-data {
  padding-left: 5%;
}
.page--faq .detail__btn a {
  color: #222;
}
.page--faq .block--contact {
  margin: 40px auto 60px;
  text-align: center;
}
.page--faq .block--contact a {
  color: #222;
}
.page--faq.page--detail .section--detail {
  padding-top: 0;
}
/*  4.11 support
------------------------------ */
.section--detail .section-tit {
  color: inherit;
  font-size: 22px;
  font-weight: normal;
  line-height: 1.4;
}
.section--detail > p {
  margin-bottom: 0.5em;
}
.section--detail .txt {
  line-height: 2.2;
  margin: 0 0 30px;
}
.section--detail .txt + .txt {
  margin: 0 0 10px;
}
.section--detail ol {
  list-style: none;
}
.section--detail .list--support dt,
.section--detail .support-list dt {
  margin: 0 0 5px;
  font-weight: bold;
}
.section--detail .list--support dd,
.section--detail .support-list dd {
  margin: 0 0 1.5em;
}
.section--detail .list--support dd .txt,
.section--detail .support-list dd .txt {
  margin: 0 0 15px;
}
.section--detail .list--support li,
.section--detail .support-list li {
  margin: 0 0 5px;
  text-indent: -1em;
  padding-left: 1em;
}
.section--detail .terms-list li {
  margin: 0 0 10px;
}
.section--detail .terms-list li ul li {
  text-indent: -1em;
  padding-left: 1em;
  margin: 0 0 5px;
}
/* 4.12 questionnaire
------------------------------ */
.page--questionnaire [class^="section--"] .lead {
  margin: 0 0 20px;
}
.page--questionnaire [class^="section--"] .block--error {
  margin: 0 0 30px;
}
.page--questionnaire [class^="section--"] .txt--error {
  margin: 0 0 10px;
}
.page--questionnaire [class^="section--"] .list--form {
  margin: 0 0 30px;
}
.page--questionnaire [class^="section--"] .list--form .form__select {
  width: auto;
}
.page--questionnaire [class^="section--"] .list--form .age {
  width: 20%;
}
.page--questionnaire [class^="section--"] .list--form .form__checkbox label p::before {
  border: none;
}
.page--questionnaire .form--confirm {
  box-shadow: none;
}
.page--questionnaire .ph {
  margin: 0 0 20px;
}
.page--questionnaire .section-tit {
  font-size: 32px;
  font-family: -apple-system, BlinkMacSystemFont, "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  margin-bottom: 40px;
}
.page--questionnaire .icon--required::after {
  content: '必須';
  color: #c00;
  font-size: 12px;
  margin-left: 10px;
}
.page--questionnaire .input--quarter {
  width: 20% !important;
}
.page--questionnaire .form--post dd {
  margin-bottom: 3em;
}
.page--questionnaire .form--post dt {
  /*font-size: 0.9em;*/
}
/*  4.17 photo
------------------------------ */
.page--photo .block-text {
  padding: 20px;
  margin-bottom: 20px;
  background: #e5e5e5;
}
.page--photo .block-text a {
  text-decoration: underline;
}
.page--photo .block-text a:hover {
  text-decoration: none;
}
.page--photo.page--photo-detail .section-tit {
  font-size: 30px;
  margin-bottom: 80px;
}
.page--photo.page--photo-detail .list--contents li {
  width: 25%;
  margin-bottom: 0;
}
.page--photo.page--photo-detail .list--contents li:nth-child(4n) {
  margin-right: 0;
}
.page--photo.page--photo-detail .list--contents a .thumb {
  margin-bottom: 10px;
}
.page--photo.page--photo-detail .list--contents a .thumb img {
  background-size: contain;
}
.page--photo.page--photo-detail .list--contents a .thumb .blur img {
  height: 100%;
  background-size: cover;
}
.page--photo.page--photo-detail .list--contents a .tit {
  font-size: 13px;
}
.page--photo #swipebox-overlay {
  background: rgba(13, 13, 13, 0.6);
}
.page--photo #swipebox-slider .slide {
  background: none !important;
}
/* アンドロイド対策 */
.and-browser__5 .disc-tit {
  mix-blend-mode: normal !important;
}
.and-browser__5 .disc-tit {
  color: #000 !important;
}
.android .section--message .txt,
.android .header {
  mix-blend-mode: normal !important;
}
.android .section--message .txt {
  color: #000 !important;
}
.android .header h1 svg {
  fill: #000;
}
.android .header .btn--nav span {
  background: #222;
}
.android.menuopen .header h1 svg {
  fill: #fff;
}
.android.menuopen .header .btn--nav span {
  background: #fff;
}
.android .header .list--social .sns-link {
  color: #222;
}
.android .header .list--social .sns-link svg {
  fill: #000;
}
.android .section--message .txt {
  mix-blend-mode: normal !important;
  text-shadow: 1px 1px 0 #ffffff;
  color: #000 !important;
}
/*  support
------------------------------ */
.page--support .section-tit {
  font-size: 30px;
}
/*  4.13 discography
------------------------------ */
.page--disco .list--information {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: end;
  justify-content: end;
  -webkit-box-align: top;
  -webkit-align-items: top;
  align-items: top;
  flex-wrap: wrap;
}
.page--disco .list--information li {
  margin: 0 0 15px;
}
.page--disco .list--information li:hover {
  border-color: transparent !important;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.page--disco .list--information a {
  display: block;
  color: inherit;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  position: relative;
  padding: 20px 0;
}
.page--disco .list--information a::after {
  display: table;
  content: "";
  clear: both;
}
.page--disco .list--information a:hover {
  box-shadow: 0 4px 35px rgba(0, 0, 0, 0.2);
}
.page--disco .list--information .tit {
  color: inherit;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  word-break: break-all;
}
.page--disco .list--information .date {
  font-family: 'Rubik', sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1;
  margin: 0 0 2px;
}
.page--disco .list--information .date .end {
  padding-top: 23px;
  position: relative;
}
.page--disco .list--information .date .end::before {
  content: '';
  display: block;
  position: absolute;
  width: 1px;
  height: 15px;
  background: #222;
  left: 50%;
  top: 5px;
  margin-left: -1.1em;
}
.page--disco .list--information .date--event {
  color: inherit;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
}
.page--disco .list--information .new .date::after {
  content: 'NEW';
  font-family: 'Rubik', sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: #ef2a4d;
  margin: 0 0 0 6px;
}
.page--disco .list--information .category {
  display: block;
  font-family: 'Rubik', sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1;
  margin: 0 0 0.5em;
}
.page--disco .list--information .thumb {
  width: 100%;
  line-height: 0;
  margin: 0;
}
.page--disco .list--information li {
  position: relative;
  width: calc(100% / 3);
  border: none;
  margin: 0 0 50px 0;
}
.page--disco .list--information li:nth-child(5n) {
  margin-right: 0;
}
.page--disco .list--information a {
  line-height: 0;
  padding: 20px;
}
.page--disco .list--information .category,
.page--disco .list--information .date {
  display: inline-block;
  width: auto;
  color: inherit;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  font-family: 'Rubik', sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1;
  margin-bottom: 15px;
  top: 0;
}
.page--disco .list--information .date::after {
  content: 'RELEASE';
  display: inline-block;
  padding-left: 5px;
}
.page--disco .list--information .category {
  position: relative;
  margin-right: 0.8em;
}
.page--disco .list--information .category::after {
  content: '';
  display: block;
  width: 1px;
  height: 12px;
  background: #222;
  position: absolute;
  right: -0.5em;
  top: 0;
}
.page--disco .list--information .tit {
  width: 100%;
  font-size: 15px;
}
.page--disco .list--information .thumb {
  overflow: hidden;
  position: relative;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  margin-bottom: 20px;
}
.page--disco .list--information .thumb img {
  background-size: contain;
  position: relative;
  z-index: 2;
}
.page--disco .list--information .thumb .blur {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 1;
  top: 0;
  left: 0;
  -webkit-filter: blur(10px);
  filter: blur(10px);
  -webkit-transform: scale(1.2);
  transform: scale(1.2);
}
.page--disco .list--information .thumb .blur img {
  height: 100%;
  background-size: cover;
}
.page--disco .section--detail {
  width: 80%;
  max-width: 1200px;
}
.page--disco .section--detail .category {
  margin-left: 0;
}
.page--disco .section--detail .section-tit {
  margin-bottom: 70px;
  display: none;
}
.page--disco .section--detail .list--category {
  display: none;
}
.page--disco .area--disco-detail {
  width: 100%;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.page--disco .area--disco-detail .block--jacket {
  width: 37%;
}
.page--disco .area--disco-detail .block--jacket figure {
  margin-bottom: 10px;
  position: relative;
  z-index: 10;
}
.page--disco .area--disco-detail .block--jacket figcaption {
  color: inherit;
  font-size: 11px;
  font-weight: 400;
  line-height: 1.3;
  text-align: center;
  padding-top: 20px;
}
.page--disco .area--disco-detail .category::before {
  display: none;
}
.page--disco .area--disco-detail .block--detail {
  width: 52%;
}
.page--disco .area--disco-detail .block--detail h3.tit {
  color: inherit;
  font-size: 32px;
  font-weight: normal;
  line-height: 1.4;
  margin-bottom: 5px;
}
.page--disco .area--disco-detail .block--detail .date {
  position: relative;
  margin-bottom: 0;
}
.page--disco .area--disco-detail .block--detail .date::after {
  content: 'RELEASE';
  display: inline-block;
  font-family: 'Rubik', sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  padding-left: 5px;
}
.page--disco .area--disco-detail .block--detail .date::before {
  display: none;
}
.page--disco .area--disco-detail .block--detail .block--comment {
  padding: 10px 0 0;
}
.page--disco .area--disco-detail .block--detail .tax-code {
  font-size: 11px;
  margin-bottom: 20px;
}
.page--disco .area--disco-detail .block--detail .block--sub {
  border: 1px solid #ccc;
  padding: 15px;
  font-size: 0.8em;
}
.page--disco .area--disco-detail .block--detail .list--link {
  display: inline-block;
}
.page--disco .area--disco-detail .block--detail .list--link li a {
  display: block;
  background: #222;
  color: #fff;
  font-size: 11px;
  line-height: 1;
  padding: 4px 10px;
  text-align: center;
  border-radius: 4px;
  margin-left: 5px;
}
.page--disco .area--disco-detail .block--detail .list--link li a:hover {
  opacity: 0.5;
}
.page--disco .area--disco-detail .block--detail .block--review a {
  text-decoration: underline;
  color: #222;
  -webkit-transition: 0.3s all ease 0s;
  transition: 0.3s all ease 0s;
}
.page--disco .area--disco-detail .block--detail .block--review a:hover {
  text-decoration: none;
}
.page--disco .area--disco-detail .block--detail .block--track,
.page--disco .area--disco-detail .block--detail .list_num {
  padding: 20px 0 0;
}
.page--disco .area--disco-detail .block--detail .block--track .disc-tit,
.page--disco .area--disco-detail .block--detail .list_num .disc-tit {
  font-size: 0.9em;
  line-height: 1;
  border-bottom: 0.5px solid #222;
  padding-bottom: 5px;
  margin-bottom: 10px;
}
.page--disco .area--disco-detail .block--detail .block--track .tie-up,
.page--disco .area--disco-detail .block--detail .list_num .tie-up {
  color: #aaa;
  font-size: 0.8em;
  padding-left: 1.5em;
}
.page--disco .area--disco-detail .block--detail .block--track li,
.page--disco .area--disco-detail .block--detail .list_num li {
  list-style: none;
  margin-bottom: 2px;
}
.page--disco .area--disco-detail .block--detail .block--track li span,
.page--disco .area--disco-detail .block--detail .list_num li span {
  display: inline-block;
  font-family: 'Rubik', sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
}
.page--disco .area--disco-detail .block--detail .block--track li span::after,
.page--disco .area--disco-detail .block--detail .list_num li span::after {
  content: '.';
}
.page--disco .area--disco-detail .block--detail .block--track > li,
.page--disco .area--disco-detail .block--detail .list_num > li {
  margin-bottom: 20px;
}
.page--disco .area--disco-detail .block--detail .list_num {
  padding: 0;
  margin-bottom: 10px;
}
.page--disco .area--disco-detail .block--detail .list_num li {
  font-size: 12px;
  list-style: decimal-leading-zero;
  margin-left: 2em;
  margin-bottom: 3px;
}
.page--disco .area--disco-detail .block--detail [class^='box_'] {
  border: 0.5px solid #222;
  padding: 15px;
}
.page--disco .area--disco-detail .block--detail [class^='box_']:not(:last-of-type) {
  margin-bottom: 20px;
}
.page--disco .area--disco-detail .block--detail [class^='box_'] dt {
  font-weight: bold;
  margin-bottom: 5px;
}
.page--disco [class^="tit_"] {
  color: inherit;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.4;
  border-bottom: 0.5px solid #222;
  padding-bottom: 5px;
  margin-bottom: 10px;
  padding-top: 30px;
}
.page--disco em {
  font-style: normal;
  font-weight: bold;
}
.page--disco .top20 {
  padding-top: 20px;
}
.page--disco .top10 {
  padding-top: 10px;
}
.edge.page--disco .list--discography .thumb .blur,
.ie.page--disco .list--discography .thumb .blur {
  opacity: 0.2;
}
/*  4.13 page club
------------------------------ */
.page--club .site-nav li.current a {
  color: #888;
}
.page--club .site-nav li.current a::after {
  display: none;
}
.page--club .site-nav li.site-nav__club a {
  color: #fff;
}
.page--club .site-nav li.site-nav__club a::after {
  bottom: -6px;
}
/*  4.13 page mail
------------------------------ */
.page--mail .txt--basic {
  text-align: center;
  font-size: 18px;
  margin-bottom: 10px;
}
.page--mail .txt--basic + .txt--sub {
  text-align: center;
  font-size: 12px;
  margin-bottom: 50px;
}
.page--mail .btn--main,
.page--mail .btn--sub {
  width: 300px;
  min-width: inherit;
}
/*  スマートバナー
------------------------------ */
@media screen and (min-width: 961px) {
  .page--home.app-bnr .wrap {
    padding-top: 60px !important;
  }
}
/*  gnav
------------------------------ */
@media screen and (max-width: 1450px) {
  .drawer .g-nav [class^="g-nav__"] {
    transition: none !important;
    width: 60%;
  }
  .drawer .g-nav .g-nav--tit {
    font-size: 2.8vw;
    transition: none;
  }
}
@media screen and (max-width: 1200px) {
  .page--home .list--bnr a .list--bnr__caption {
    bottom: -10px;
    left: -5px;
  }
  .page--home .list--bnr a .list--bnr__caption p {
    font-size: 11px;
    font-size: 0.9vw;
    line-height: 1vw;
  }
}
@media screen and (max-width: 1100px) {
  .page--home .section--top .block--photo {
    height: 60vh;
  }
}
.page--movie.category-10002 .wrap {
  color: #000;
  background: #fff;
}
.page--movie.category-10002 .wrap .list--category {
  display: none;
}
.page--movie.category-10002 .wrap .section-tit img {
  width: 450px;
}
.page--movie.category-10002 .wrap .list--contents li .category,
.page--movie.category-10002 .wrap .list--contents li .date {
  display: none;
}
.page--movie.category-10002 .wrap .detail__btn a {
  color: #000;
}
.page--movie.category-10002 .wrap .detail__btn a::after {
  border-color: #000;
}
.page--movie.category-10002 .wrap .block--pager *,
.page--movie.category-10002 .wrap .block--pager ::before,
.page--movie.category-10002 .wrap .block--pager ::after {
  color: #000 !important;
  border-color: #000 !important;
}
/*  birthday message
------------------------------ */
.page--birthday-message .section--detail {
  padding: 45px;
}
.page--birthday-message .section--detail .section-tit {
  font-weight: 600;
  font-size: 55px;
  color: #387af9;
  padding: initial;
  margin-bottom: 40px;
  text-align: center;
}
.page--birthday-message .section--detail .txt {
  padding-top: 0;
  text-align: center;
  color: #d6c43b;
  font-size: 23px;
  margin-bottom: 10px;
}
