/* base
============================== */
.sp {
  display: none!important;
}
.tablet,
.svg-txt {
  display: none;
}
.sf-toolbar {
  display: none!important;
}
.clearfix::after {
  display: table;
  content: "";
  clear: both;
}
*,
*::before,
*::after {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  outline: none;
}
img {
  max-width: 100%;
}
a {
  color: #e83535;
  text-decoration: underline;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
a:hover {
  color: #e83535;
  text-decoration: none;
}
::selection {
  background: #222;
  color: #fff;
}
::-moz-selection {
  background: #222;
  color: #fff;
}
/* component
============================== */
/* utility
------------------------------ */
@keyframes bounce {
  0% {
    transform: translateY(0%) scaleY(1);
  }
  15% {
    transform: translateY(0%) scaleY(0.85);
  }
  55% {
    transform: translateY(-5%) scaleY(1.1);
  }
  75% {
    transform: translateY(0%) scaleY(0.95) scaleX(1.05);
  }
  100% {
    transform: translateY(0%) scaleY(1) scaleX(1);
  }
}
@-webkit-keyframes bounce {
  0% {
    -webkit-transform: translateY(0%) scaleY(1);
  }
  15% {
    -webkit-transform: translateY(0%) scaleY(0.85);
  }
  55% {
    -webkit-transform: translateY(-5%) scaleY(1.1);
  }
  75% {
    -webkit-transform: translateY(0%) scaleY(0.95) scaleX(1.05);
  }
  100% {
    -webkit-transform: translateY(0%) scaleY(1) scaleX(1);
  }
}
@keyframes bounce-right {
  0% {
    transform: translateX(0%) scaleX(1);
  }
  15% {
    transform: translateX(0%) scaleX(0.975);
  }
  55% {
    transform: translateX(3%) scaleX(1.02);
  }
  75% {
    transform: translateX(-0.75%) scaleX(0.975) scaleY(1.05);
  }
  100% {
    transform: translateX(0%) scaleX(1) scaleY(1);
  }
}
@-webkit-keyframes bounce-right {
  0% {
    -webkit-transform: translateY(0%) scaleY(1);
  }
  15% {
    -webkit-transform: translateX(0%) scaleX(0.975);
  }
  55% {
    -webkit-transform: translateX(2%) scaleX(1.02);
  }
  75% {
    -webkit-transform: translateX(-0.75%) scaleX(0.975) scaleY(1.05);
  }
  100% {
    -webkit-transform: translateX(0%) scaleX(1) scaleY(1);
  }
}
/*
@keyframes swiming {
	0% {background-position: 100% 0;}
	100% {background-position: 0% 0 ;}
}
@-webkit-keyframes swiming {
	0% {background-position: 100% 0;}
	100% {background-position: 0% 0 ;}
}
*/
@keyframes swiming01 {
  0% {
    transform: translate(120vw, -10vw) scale(1.1) rotate(-5deg);
  }
  100% {
    transform: translate(-20vw, 0) scale(1.1) rotate(-5deg);
  }
}
@-webkit-keyframes swiming01 {
  0% {
    -webkit-transform: translate(120vw, -10vw) scale(1.1) rotate(-5deg);
  }
  100% {
    -webkit-transform: translate(-20vw, 0) scale(1.1) rotate(-5deg);
  }
}
@keyframes swiming02 {
  0% {
    transform: translate(-20vw, 25vw) scale(-1.1, 1.1) rotate(15deg);
  }
  100% {
    transform: translate(120vw, 0) scale(-1.1, 1.1) rotate(15deg);
  }
}
@-webkit-keyframes swiming02 {
  0% {
    -webkit-transform: translate(-20vw, 25vw) scale(-1.1, 1.1) rotate(15deg);
  }
  100% {
    -webkit-transform: translate(120vw, 0) scale(-1.1, 1.1) rotate(15deg);
  }
}
@keyframes swing {
  0% {
    transform: rotate(0deg);
  }
  50% {
    transform: rotate(0deg);
  }
  51% {
    transform: rotate(10deg);
  }
  100% {
    transform: rotate(10deg);
  }
}
@-webkit-keyframes swing {
  0% {
    -webkit-transform: rotate(0deg);
  }
  50% {
    -webkit-transform: rotate(0deg);
  }
  51% {
    -webkit-transform: rotate(10deg);
  }
  100% {
    -webkit-transform: rotate(10deg);
  }
}
/* btn-style
------------------------------ */
.btn {
  text-align: center;
  margin: 1em 0;
}
.btn--main {
  color: inherit;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
  -webkit-appearance: none;
  display: inline-block;
  min-width: 240px;
  text-align: center;
  text-decoration: none;
  border-radius: 100px;
  padding: 10px 2em;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  border: none;
  font-weight: bold;
  border: 2px solid;
  cursor: pointer;
  background: #e83535;
  color: #fff;
  border: 2px solid transparent;
}
.btn--main:hover {
  animation-name: bounce;
  -webkit-animation-name: bounce;
  animation-duration: .6s;
  -webkit-animation-duration: .6s;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
  transform-origin: 50% 100%;
  -webkit-transform-origin: 50% 100%;
}
.btn--main:hover {
  /*
		color: @primary-color;
		border-color: @primary-color;
		background: #fff;
		*/
}
.btn--sub {
  color: inherit;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
  -webkit-appearance: none;
  display: inline-block;
  min-width: 240px;
  text-align: center;
  text-decoration: none;
  border-radius: 100px;
  padding: 10px 2em;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  border: none;
  font-weight: bold;
  border: 2px solid;
  cursor: pointer;
  background: transparent;
  color: #e83535;
}
.btn--sub:hover {
  animation-name: bounce;
  -webkit-animation-name: bounce;
  animation-duration: .6s;
  -webkit-animation-duration: .6s;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
  transform-origin: 50% 100%;
  -webkit-transform-origin: 50% 100%;
}
/* form
------------------------------ */
:placeholder-shown,
::-webkit-input-placeholder {
  color: #aaa;
}
/* 全体 */
[class^="form--"] dl {
  margin: 0 0 40px;
}
[class^="form--"] dt {
  display: block;
  margin: 0 0 8px;
  font-size: 13px;
  text-align: left;
  color: #888;
}
[class^="form--"] dd {
  margin: 0 0 30px;
}
[class^="form--"] .btn {
  margin: 20px 0;
}
.form--post .icon--required {
  display: inline-block;
  position: relative;
}
.form--post .icon--required::before {
  content: '必須';
  display: inline-block;
  height: 16px;
  line-height: 16px;
  margin-left: 10px;
  padding: 0 6px;
  background: #e83535;
  color: #fff;
  font-size: 11px;
  text-align: center;
  letter-spacing: 0.2em;
  position: relative;
  top: -1px;
}
.form--confirm .ph {
  margin: 0 auto;
}
/* form要素共通 */
input:-webkit-autofill,
textarea:-webkit-autofill,
select:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px #fff inset;
}
.form--post label {
  cursor: pointer;
}
.form--post [class^="form__radio"] label,
.form--post [class^="form__checkbox"] label {
  margin: 0 30px 0 0;
  line-height: 2em;
}
.form--post input[type="text"],
.form--post input[type="tel"],
.form--post input[type="email"],
.form--post input[type="password"],
.form--post input[type="number"],
.form--post textarea,
.form--post select {
  -webkit-appearance: none;
  -moz-appearance: none;
  display: inline-block;
  width: 100%;
  padding: 8px 12px;
  border: none;
  font-size: 15px;
  line-height: 1.8;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 3px;
  background: rgba(255, 164, 162, 0);
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.form--post input[type="text"]:hover,
.form--post input[type="tel"]:hover,
.form--post input[type="email"]:hover,
.form--post input[type="password"]:hover,
.form--post input[type="number"]:hover,
.form--post textarea:hover,
.form--post select:hover,
.form--post label:hover input[type="radio"],
.form--post label:hover input[type="checkbox"] {
  background: rgba(255, 164, 162, 0.5);
}
/* selectbox */
.form--post [class^="form__selectbox"] {
  display: inline-block;
  position: relative;
  cursor: pointer;
}
.form--post [class^="form__selectbox"]:before {
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  border-right: 2px solid;
  border-top: 2px solid;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  position: absolute;
  pointer-events: none;
  top: 50%;
  right: 12px;
  margin-top: -6px;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.form--post select {
  width: auto;
  padding-right: 35px;
  cursor: pointer;
}
.form--post select::-ms-expand {
  display: none;
}
/* selectbox（年月日）*/
.form--post .select-year > li {
  display: inline-block;
  margin-right: 8px;
}
.form--post .select-year .form__selectbox {
  margin-right: 8px;
}
/* radio */
.form--post [class^="form__radio"] input[type="radio"] {
  -webkit-appearance: button;
  appearance: button;
  width: 20px;
  height: 20px;
  margin: 0 8px 0 0;
  border-radius: 100%;
  vertical-align: -4px;
  position: relative;
  pointer-events: none;
  border: 1px solid rgba(0, 0, 0, 0.2);
  cursor: pointer;
}
.form--post [class^="form__radio"] input[type="radio"]:checked:after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  background: #e83535;
  border-radius: 6px;
  position: absolute;
  top: 4px;
  left: 4px;
}
/* checkbox */
.form--post input[type="checkbox"] {
  appearance: button;
  -webkit-appearance: button;
  display: inline-block;
  margin-right: 10px;
  width: 18px;
  height: 18px;
  position: relative;
  vertical-align: -4px;
  border: 1px solid rgba(0, 0, 0, 0.2);
  cursor: pointer;
}
.form--post input[type="checkbox"]:checked:after {
  content: "";
  width: 8px;
  height: 14px;
  border-right: 2px solid #e83535;
  border-bottom: 2px solid #e83535;
  position: absolute;
  top: 0px;
  left: 5px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
/* tel */
.form--post input[type="tel"] {
  width: auto;
}
/* number（年齢） */
.form--post input[type="number"].form__number--age {
  width: 60px;
  margin-right: 8px;
}
/* text（郵便番号） */
.form--post input[type="text"].form__text--postal-code {
  width: auto;
  margin-left: 8px;
}
/* text（会員番号） */
.form--post input[type="text"].form__text--member-numb {
  width: auto;
}
/* textarea */
.form--post textarea {
  display: block;
}
/* info-base
------------------------------ */
.date {
  color: #666;
  font-family: 'Ubuntu', sans-serif;
  font-weight: 500;
}
.category {
  font-family: 'Ubuntu', sans-serif;
  font-weight: 500;
  color: #e83535;
}
.category--all .category,
.category--4 .category {
  background: #222;
}
.category--21 .category {
  background: #ff9e00;
}
.category--22 .category {
  background: #ff7800;
}
.category--23 .category {
  background: #ec5d4b;
}
.category--8 .category,
.category--26 .category {
  background: #f15eb3;
}
.category--9 .category,
.category--27 .category {
  background: #9157dc;
}
.category--10 .category,
.category--28 .category {
  background: #2b75da;
}
.category--11 .category,
.category--29 .category {
  background: #00bfff;
}
.category--24 .category,
.category--31 .category {
  background: #17b399;
}
.category--12 .category,
.category--30 .category {
  background: #72c717;
}
.tit .new {
  display: inline-block;
  position: relative;
  overflow: visible;
  width: 28px;
  height: 17px;
  margin: 0 0 0 8px;
}
.tit .new::after {
  content: '';
  background: url(/static/shishamo/fanclub/common/icon_new.png) no-repeat center;
  background-size: 100% auto;
  width: 28px;
  height: 22px;
  display: inline-block;
  position: absolute;
  -webkit-animation: swing 1s infinite ;
  animation: swing 1s infinite ;
}
.date--event {
  color: inherit;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.06em;
  font-family: 'Ubuntu', sans-serif;
  font-weight: 500;
  margin: 0 0 8px;
  line-height: 1;
  letter-spacing: 0.015em;
}
.event-date--end::before {
  content: 'ー';
  margin: 0 6px 0 -1px;
  transform: scaleX(0.6);
  display: inline-block;
}
.date .week {
  display: inline-block;
  width: 18px;
  height: 18px;
  line-height: 18px;
  margin-left: 5px;
  background: #222;
  border-radius: 100px;
  font-family: YakuHanJP, -apple-system, Helvetica, Arial, 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'Noto Sans Japanese', "メイリオ", sans-serif;
  font-weight: bold;
  color: #fff;
  text-align: center;
  vertical-align: middle;
  position: relative;
  top: -2px;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  font-size: 10px;
}
/* list
------------------------------ */
.list--thumb {
  /*
	.category + .tit {
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
	}
	*/
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.list--thumb li > a {
  display: block;
  color: inherit;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
  position: relative;
  text-decoration: none;
}
.list--thumb .thumb {
  line-height: 0;
  background: #ffe5e5;
  position: relative;
}
.list--thumb .thumb::before {
  content: '';
  width: 100%;
  height: 100%;
  background: url(/static/shishamo/fanclub/common/logo_wht.png) no-repeat center;
  background-size: 40%;
  display: block;
  position: absolute;
  opacity: 0.5;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.list--thumb .thumb img {
  width: 100%;
  background: no-repeat center;
  background-size: contain;
  -moz-background-size: contain;
  -webkit-background-size: contain;
  position: relative;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.list--thumb .list__txt {
  overflow: hidden;
}
.list--thumb .tit {
  color: inherit;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
.list--thumb .date:not(.date--event) {
  color: inherit;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.04em;
  letter-spacing: 0.1em;
}
.list--thumb .category {
  float: left;
}
.list--thumb a:hover {
  color: #e83535;
}
.list--thumb a:hover .week {
  background: #e83535;
}
.list--thumb a:hover .category::after {
  color: #e83535;
}
.list--thumb::after {
  content: "";
  display: block;
  width: 30%;
}
.list--thumb li {
  width: 30%;
  margin: 0 0 50px;
}
.list--thumb .thumb {
  margin: 0 0 1.25em;
}
.list--thumb .tit {
  line-height: 1.5;
}
.list--thumb .date:not(.date--event) {
  display: block;
  width: 24px;
  height: auto;
  line-height: 24px;
  padding: 10px 0;
  position: absolute;
  top: 0;
  left: -24px;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  background: #e83535;
  color: #fff;
  font-size: 14px;
}
.list--thumb a:hover {
  transform: translateY(-10px);
  -webkit-transform: translateY(-10px);
}
.list--info {
  /*
	.category + .tit {
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
	}
	*/
}
.list--info li > a {
  display: block;
  color: inherit;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
  position: relative;
  text-decoration: none;
}
.list--info .thumb {
  line-height: 0;
  background: #ffe5e5;
  position: relative;
}
.list--info .thumb::before {
  content: '';
  width: 100%;
  height: 100%;
  background: url(/static/shishamo/fanclub/common/logo_wht.png) no-repeat center;
  background-size: 40%;
  display: block;
  position: absolute;
  opacity: 0.5;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.list--info .thumb img {
  width: 100%;
  background: no-repeat center;
  background-size: contain;
  -moz-background-size: contain;
  -webkit-background-size: contain;
  position: relative;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.list--info .list__txt {
  overflow: hidden;
}
.list--info .tit {
  color: inherit;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
.list--info .date:not(.date--event) {
  color: inherit;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.04em;
  letter-spacing: 0.1em;
}
.list--info .category {
  float: left;
}
.list--info a:hover {
  color: #e83535;
}
.list--info a:hover .week {
  background: #e83535;
}
.list--info a:hover .category::after {
  color: #e83535;
}
.list--info li + li {
  margin: 20px 0 0;
}
.list--info li a {
  padding: 20px 20px 20px 44px;
  background: #fff;
}
.list--info li a:hover {
  transform: translateY(-10px);
  -webkit-transform: translateY(-10px);
}
.list--info .thumb {
  width: 10%;
  margin: 0 2.5% 0 0 ;
  float: left;
  background-size: 60%;
}
.list--info p {
  overflow: hidden;
}
.list--info .date:not(.date--event) {
  display: block;
  width: 24px;
  height: 100%;
  line-height: 24px;
  padding: 10px 0;
  position: absolute;
  top: 0;
  left: -24px;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  background: #e83535;
  color: #fff;
  font-size: 14px;
  left: 0;
}
.list--info .category {
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  margin-bottom: 8px;
  width: 100px;
  text-align: center;
  height: 20px;
  line-height: 20px;
  position: relative;
  top: -1px;
  float: none;
}
.list--schedule {
  /*
	.category + .tit {
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
	}
	*/
}
.list--schedule li > a {
  display: block;
  color: inherit;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
  position: relative;
  text-decoration: none;
}
.list--schedule .thumb {
  line-height: 0;
  background: #ffe5e5;
  position: relative;
}
.list--schedule .thumb::before {
  content: '';
  width: 100%;
  height: 100%;
  background: url(/static/shishamo/fanclub/common/logo_wht.png) no-repeat center;
  background-size: 40%;
  display: block;
  position: absolute;
  opacity: 0.5;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.list--schedule .thumb img {
  width: 100%;
  background: no-repeat center;
  background-size: contain;
  -moz-background-size: contain;
  -webkit-background-size: contain;
  position: relative;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.list--schedule .list__txt {
  overflow: hidden;
}
.list--schedule .tit {
  color: inherit;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
.list--schedule .date:not(.date--event) {
  color: inherit;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.04em;
  letter-spacing: 0.1em;
}
.list--schedule .category {
  float: left;
}
.list--schedule a:hover {
  color: #e83535;
}
.list--schedule a:hover .week {
  background: #e83535;
}
.list--schedule a:hover .category::after {
  color: #e83535;
}
.list--schedule li {
  margin: 0 0 20px;
}
.list--schedule li a {
  background: #fff;
  padding: 20px;
}
.list--schedule li a:hover {
  transform: translateY(-10px);
  -webkit-transform: translateY(-10px);
}
.list--schedule .new::after {
  top: -5px;
}
.list--schedule .category {
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  margin-right: 15px;
  width: 100px;
  text-align: center;
  height: 20px;
  line-height: 20px;
  position: relative;
  top: -1px;
}
.list--schedule p {
  overflow: hidden;
}
.list--schedule .tit {
  padding-top: 2px;
}
.list--schedule .thumb {
  width: 10%;
  margin: 0 2.5% 0 0 ;
  float: left;
  background-size: 60%;
}
.list--today {
  /*
	.category + .tit {
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
	}
	*/
}
.list--today li > a {
  display: block;
  color: inherit;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
  position: relative;
  text-decoration: none;
}
.list--today .thumb {
  line-height: 0;
  background: #ffe5e5;
  position: relative;
}
.list--today .thumb::before {
  content: '';
  width: 100%;
  height: 100%;
  background: url(/static/shishamo/fanclub/common/logo_wht.png) no-repeat center;
  background-size: 40%;
  display: block;
  position: absolute;
  opacity: 0.5;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.list--today .thumb img {
  width: 100%;
  background: no-repeat center;
  background-size: contain;
  -moz-background-size: contain;
  -webkit-background-size: contain;
  position: relative;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.list--today .list__txt {
  overflow: hidden;
}
.list--today .tit {
  color: inherit;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
.list--today .date:not(.date--event) {
  color: inherit;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.04em;
  letter-spacing: 0.1em;
}
.list--today .category {
  float: left;
}
.list--today a:hover {
  color: #e83535;
}
.list--today a:hover .week {
  background: #e83535;
}
.list--today a:hover .category::after {
  color: #e83535;
}
.list--today li + li {
  margin: 18px 0 0 ;
}
.list--today .category {
  display: inline-block;
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  width: 80px;
  text-align: center;
  height: 18px;
  line-height: 18px;
  margin: 0 0 6px;
  line-height: 1.7;
}
.list--discography {
  /*
	.category + .tit {
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
	}
	*/
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.list--discography li > a {
  display: block;
  color: inherit;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
  position: relative;
  text-decoration: none;
}
.list--discography .thumb {
  line-height: 0;
  background: #ffe5e5;
  position: relative;
}
.list--discography .thumb::before {
  content: '';
  width: 100%;
  height: 100%;
  background: url(/static/shishamo/fanclub/common/logo_wht.png) no-repeat center;
  background-size: 40%;
  display: block;
  position: absolute;
  opacity: 0.5;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.list--discography .thumb img {
  width: 100%;
  background: no-repeat center;
  background-size: contain;
  -moz-background-size: contain;
  -webkit-background-size: contain;
  position: relative;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.list--discography .list__txt {
  overflow: hidden;
}
.list--discography .tit {
  color: inherit;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
.list--discography .date:not(.date--event) {
  color: inherit;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.04em;
  letter-spacing: 0.1em;
}
.list--discography .category {
  float: left;
}
.list--discography a:hover {
  color: #e83535;
}
.list--discography a:hover .week {
  background: #e83535;
}
.list--discography a:hover .category::after {
  color: #e83535;
}
.list--discography::after {
  content: "";
  display: block;
  width: 30%;
}
.list--discography li {
  width: 30%;
  margin: 0 0 40px;
}
.list--discography .thumb {
  margin: 0 0 1.25em;
}
.list--discography .tit {
  line-height: 1.5;
}
.list--discography .date:not(.date--event) {
  display: block;
  width: 24px;
  height: auto;
  line-height: 24px;
  padding: 10px 0;
  position: absolute;
  top: 0;
  left: -24px;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  background: #e83535;
  color: #fff;
  font-size: 14px;
}
.list--discography .date:not(.date--event)::after {
  content: 'RELEASE';
  margin-top: 10px;
}
.list--discography .category {
  float: none;
  color: #e83535;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.04em;
  font-family: 'Ubuntu', sans-serif;
  font-weight: 500;
  margin: 0 0 5px;
}
.list--discography a:hover {
  transform: translateY(-10px);
  -webkit-transform: translateY(-10px);
}
.list--goods {
  /*
	.category + .tit {
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
	}
	*/
}
.list--goods li > a {
  display: block;
  color: inherit;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
  position: relative;
  text-decoration: none;
}
.list--goods .thumb {
  line-height: 0;
  background: #ffe5e5;
  position: relative;
}
.list--goods .thumb::before {
  content: '';
  width: 100%;
  height: 100%;
  background: url(/static/shishamo/fanclub/common/logo_wht.png) no-repeat center;
  background-size: 40%;
  display: block;
  position: absolute;
  opacity: 0.5;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.list--goods .thumb img {
  width: 100%;
  background: no-repeat center;
  background-size: contain;
  -moz-background-size: contain;
  -webkit-background-size: contain;
  position: relative;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.list--goods .list__txt {
  overflow: hidden;
}
.list--goods .tit {
  color: inherit;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
.list--goods .date:not(.date--event) {
  color: inherit;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.04em;
  letter-spacing: 0.1em;
}
.list--goods .category {
  float: left;
}
.list--goods a:hover {
  color: #e83535;
}
.list--goods a:hover .week {
  background: #e83535;
}
.list--goods a:hover .category::after {
  color: #e83535;
}
.list--goods li + li {
  margin-top: 20px;
}
.list--goods li a {
  padding: 50px 100px;
  background: #fff;
}
.list--txt {
  /*
	.category + .tit {
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
	}
	*/
  border-top: 1px solid rgba(0, 0, 0, 0.2);
}
.list--txt li > a {
  display: block;
  color: inherit;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
  position: relative;
  text-decoration: none;
}
.list--txt .thumb {
  line-height: 0;
  background: #ffe5e5;
  position: relative;
}
.list--txt .thumb::before {
  content: '';
  width: 100%;
  height: 100%;
  background: url(/static/shishamo/fanclub/common/logo_wht.png) no-repeat center;
  background-size: 40%;
  display: block;
  position: absolute;
  opacity: 0.5;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.list--txt .thumb img {
  width: 100%;
  background: no-repeat center;
  background-size: contain;
  -moz-background-size: contain;
  -webkit-background-size: contain;
  position: relative;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.list--txt .list__txt {
  overflow: hidden;
}
.list--txt .tit {
  color: inherit;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
.list--txt .date:not(.date--event) {
  color: inherit;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.04em;
  letter-spacing: 0.1em;
}
.list--txt .category {
  float: left;
}
.list--txt a:hover {
  color: #e83535;
}
.list--txt a:hover .week {
  background: #e83535;
}
.list--txt a:hover .category::after {
  color: #e83535;
}
.list--txt li {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}
.list--txt li a {
  padding: 10px 8% 10px 0;
}
.list--txt li a::before {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border: 2px solid;
  border-top: none;
  border-right: none;
  margin: -0.25em 0 0;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}
/* parts
------------------------------ */
.ph {
  position: relative;
  margin: 30px 0;
  text-align: center;
  line-height: 0;
}
.thumb {
  position: relative;
}
.ph .dummy,
.thumb .dummy {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.iframe-wrap {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.25%;
}
.iframe-wrap iframe,
.iframe-wrap object,
.iframe-wrap embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.thumb .blur-wrap {
  display: block;
  position: relative;
  overflow: hidden;
}
.thumb .blur {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-filter: blur(5px);
  filter: blur(15px);
  background: no-repeat center;
  background-size: cover;
  transform: scale(1.2);
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
/* pager*/
.block--pager {
  padding: 60px 0 0;
  text-align: center;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
}
.block--pager li {
  display: inline-block;
  position: relative;
  margin: 0 5px;
}
.block--pager li.pager__item--current,
.block--pager li.pager__item--other a {
  width: 30px;
  height: 30px;
  color: #222;
  color: inherit;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
  font-family: 'Ubuntu', sans-serif;
  font-weight: 500;
  text-decoration: none;
  line-height: 30px;
  border-radius: 100px;
}
.block--pager li.pager__item--other a {
  display: block;
}
.block--pager li.pager__item--other a:hover {
  animation-name: bounce;
  -webkit-animation-name: bounce;
  animation-duration: .6s;
  -webkit-animation-duration: .6s;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
  transform-origin: 50% 100%;
  -webkit-transform-origin: 50% 100%;
}
.block--pager li.pager__item--current,
.block--pager li:not(.pager__item--older):not(.pager__item--newer) a:hover {
  color: #fff;
  background: #e83535;
}
.block--pager .pager__item--newer,
.block--pager .pager__item--older {
  position: relative;
  top: 12px;
  margin: 0 5px;
}
.block--pager .pager__item--newer a {
  left: 0;
}
.block--pager .pager__item--older a {
  right: 0;
}
.block--pager .pager__item--newer a:hover {
  left: -5px;
}
.block--pager .pager__item--older a:hover {
  right: -5px;
}
.block--pager .pager__item--newer a,
.block--pager .pager__item--older a {
  display: block;
  width: 30px;
  height: 30px;
  position: relative;
  color: #222;
}
.block--pager .pager__item--newer a:before,
.block--pager .pager__item--older a:after {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border: 2px solid;
  border-top: none;
  border-right: none;
  margin: -0.25em 0 0;
  right: 0.25em;
  top: 50%;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  position: absolute;
  margin: -0.35em 0 0;
}
.block--pager .pager__item--newer a:hover::before,
.block--pager .pager__item--older a:hover::after {
  border-color: #e83535;
}
.block--pager .pager__item--newer a:before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  right: auto;
  left: 0.25em;
}
/* category-list */
.block--category {
  text-align: center;
  margin: -20px 0 50px;
}
.block--category li {
  display: inline-block;
  margin: 0 15px;
}
.block--category li > * {
  position: relative;
}
.block--category a,
.block--category span {
  display: block;
  color: #fff;
  font-size: 15px;
  line-height: 1.8;
  letter-spacing: 0.05em;
  font-family: 'Ubuntu', sans-serif;
  font-weight: 500;
  font-weight: bold;
  cursor: pointer;
  text-decoration: none;
}
.block--category li a::after,
.block--category li span::after {
  content: '';
  display: inline-block;
  width: 100%;
  border-bottom: 2px solid;
  position: absolute;
  left: 0;
  bottom: -20px;
  opacity: 0;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.block--category li a:hover::after,
.block--category li.current a::after,
.block--category li span:hover::after,
.block--category li.current span::after {
  opacity: 1;
  bottom: -10px;
}
.block--category a:hover {
  animation-name: bounce;
  -webkit-animation-name: bounce;
  animation-duration: .6s;
  -webkit-animation-duration: .6s;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
  transform-origin: 50% 100%;
  -webkit-transform-origin: 50% 100%;
}
.detail__btn {
  margin: 70px 0 0 ;
  text-align: center;
}
.detail__btn a {
  display: inline-block;
  position: relative;
  text-decoration: none;
  color: #222;
}
.detail__btn a:hover {
  color: #e83535;
}
.detail__btn a::before {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border: 2px solid;
  border-top: none;
  border-right: none;
  margin: -0.25em 0 0;
  position: absolute;
  right: auto;
  top: 50%;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  left: -1em;
}
.detail__btn a:hover::before {
  border-color: #e83535;
}
.detail__btn a::after {
  content: 'BACK';
  display: inline-block;
  color: inherit;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
  font-family: 'Ubuntu', sans-serif;
  font-weight: 500;
}
.block--error {
  color: #f33;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.04em;
  line-height: 1.6;
  background: #fff0ea;
  border: .5px solid #F32;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  padding: 1em;
  margin: 0 0 30px;
}
.block--error li::before {
  content: '※';
}
.block--error li + li {
  margin: 5px 0 0 ;
}
/* layout
============================== */
html,
body {
  height: 100%;
}
body {
  -webkit-text-size-adjust: none;
  background-color: #fff;
  font-family: YakuHanJP, -apple-system, Helvetica, Arial, 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'Noto Sans Japanese', "メイリオ", sans-serif;
  font-weight: 300;
  color: #222;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
  word-break: break-word;
  min-width: auto;
}
.wrap {
  position: relative;
  overflow: hidden;
  min-height: 100%;
  padding-top: 70px;
  background: #eee;
}
.wrap::before {
  content: '';
  width: 100%;
  height: 330px;
  position: absolute;
  top: 0;
  left: 0;
  background: #e83535;
}
section {
  width: 900px;
  margin: 0 auto;
  position: relative;
}
/* header
============================== */
h1 {
  position: fixed;
  width: 42px;
  top: 8px;
  left: 20px;
  z-index: 9999;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
h1 a {
  display: block;
  line-height: 0;
}
h1 img {
  width: 100%;
}
h1 a:hover {
  animation-name: bounce;
  -webkit-animation-name: bounce;
  animation-duration: .6s;
  -webkit-animation-duration: .6s;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
  transform-origin: 50% 100%;
  -webkit-transform-origin: 50% 100%;
}
header .g-nav {
  width: 100%;
  height: 70px;
  line-height: 70px;
  position: fixed;
  z-index: 9000;
  top: 0;
  left: 0;
  background: #fff;
  border-bottom: 1px solid #ddd;
  text-align: center;
}
header .g-nav ul {
  margin: 0 auto;
  text-align: center;
  display: inline-block;
}
header .g-nav li {
  display: inline-block;
  margin: 0 8px;
}
header .g-nav li a {
  display: block;
  color: #222;
  font-family: 'Ubuntu', sans-serif;
  font-weight: 500;
  font-size: 13px;
}
header .g-nav li a:hover {
  animation-name: bounce;
  -webkit-animation-name: bounce;
  animation-duration: .6s;
  -webkit-animation-duration: .6s;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
  transform-origin: 50% 100%;
  -webkit-transform-origin: 50% 100%;
}
/* footer
============================== */
footer {
  position: absolute;
  width: 100%;
  bottom: 0;
  left: 0;
  text-align: center;
  padding: 90px 0;
}
footer .link--contact {
  margin: 0 0 20px;
}
footer .link--contact a {
  text-decoration: none;
  color: inherit;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.04em;
  font-family: 'Ubuntu', sans-serif;
  font-weight: 400;
}
footer .link--contact a:hover {
  color: #e83535;
}
footer .link--contact i {
  font-size: 15px;
  vertical-align: -3px;
  margin: 0 5px 0 0;
}
footer .copyright {
  color: inherit;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.04em;
  font-family: 'Ubuntu', sans-serif;
  font-weight: 400;
}
footer .copyright a {
  color: inherit;
  text-decoration: none;
}
footer .copyright a:hover {
  color: #e83535;
}
/* page-style
============================== */
.section-tit {
  text-align: center;
  color: #fff;
  font-size: 38px;
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.06em;
  font-family: 'Ubuntu', sans-serif;
  font-weight: 500;
  margin: 50px 0;
  position: relative;
}
.txt--lead {
  color: inherit;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.06em;
  margin: 0 0 1em;
}
.txt {
  color: inherit;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
  margin: 0 0 1em;
}
.txt--sub {
  color: inherit;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.04em;
}
/* detail共通
============================== */
.section--detail {
  background: #fff;
  padding: 50px;
  margin-top: 50px;
}
.section--detail .tit {
  color: inherit;
  font-size: 26px;
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.06em;
  margin: 0 0 20px;
  clear: both;
}
.section--detail .date:not(.date--event) {
  color: #666;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
.section--detail .date--event {
  margin: 0 0 10px;
}
.section--detail .category {
  margin: 0 0 15px;
}
.section--detail .tit .new {
  top: -6px;
}
.section--list {
  padding-bottom: 90px;
}
.no-data {
  padding: 50px 30px;
  text-align: center;
  background: #fff;
  color: #666;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
/* index
------------------------------ */
.page--home {
  /* infoTicker */
  /* カルーセル */
}
.page--home #block--opening {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 9999;
  overflow: hidden;
  background: #e83535;
  transition: all 0.6s ease 0s;
  -moz-transition: all 0.6s ease 0s;
  -webkit-transition: all 0.6s ease 0s;
}
.page--home #block--opening .item--fish01 {
  top: 30%;
}
.page--home #block--opening .item--fish02 {
  top: 50%;
}
.page--home #block--opening .opening__logo {
  position: absolute;
  top: 50%;
  width: 100%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  text-align: center;
}
.page--home #block--opening.opening--fadeout {
  left: -100%;
}
.page--home::before {
  content: '';
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0;
  top: 0;
}
.page--home h1 {
  width: 105px;
}
.page--home.scrolled h1 {
  top: 15px;
}
.page--home.scrolled3 h1 {
  width: 42px;
  top: 8px;
}
.page--home header {
  height: 100vh;
  position: relative;
}
.page--home header .g-nav {
  position: absolute;
  bottom: 0;
  top: auto;
  border-color: transparent;
  height: 84px;
  line-height: 84px;
}
.page--home header .nav__item--home {
  display: none;
}
.page--home.scrolled2 .g-nav {
  position: fixed;
  bottom: auto;
  top: 0;
  border-color: #ddd;
  height: 70px;
  line-height: 70px;
}
.page--home .mobile-illust {
  width: 134px;
  position: absolute;
  right: 50%;
  bottom: 0px;
  margin-right: -445px;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.page--home .mobile-hover .mobile-illust {
  bottom: 30px;
  animation-name: bounce;
  -webkit-animation-name: bounce;
  animation-duration: .6s;
  -webkit-animation-duration: .6s;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
  transform-origin: 50% 100%;
  -webkit-transform-origin: 50% 100%;
}
.page--home .wrap {
  padding-top: 30px;
  background: #fff;
}
.page--home .wrap::before {
  display: none;
}
.page--home section {
  width: 1000px;
  padding: 60px 0;
}
.page--home section + section {
  padding-top: 0;
}
.page--home .section-tit {
  margin: 0 0 35px;
  padding: 0;
}
.page--home .list__more {
  text-align: right;
  position: relative;
  padding: 0 20px 0 0 ;
  clear: both;
}
.page--home .list__more a {
  display: inline-block;
  color: #222;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
  font-family: 'Ubuntu', sans-serif;
  font-weight: 500;
}
.page--home .list__more a:hover {
  color: #e83535;
}
.page--home .list__more a::after {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border: 2px solid;
  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.5em;
}
.page--home .list__more a:hover::after {
  border-color: #e83535;
}
.page--home .area--latest-info .section--bnr {
  width: auto;
  padding: 0;
}
.page--home .area--latest-info:not(.has-today) .list--bnr {
  background: -moz-linear-gradient(top, rgba(232, 53, 53, 0) 0%, rgba(232, 53, 53, 0) 50%, #e83535 50%, #e83535 100%);
  background: -webkit-linear-gradient(top, rgba(232, 53, 53, 0) 0%, rgba(232, 53, 53, 0) 50%, #e83535 50%, #e83535 100%);
  background: linear-gradient(to bottom, rgba(232, 53, 53, 0) 0%, rgba(232, 53, 53, 0) 50%, #e83535 50%, #e83535 100%);
}
.page--home .area--latest-info:not(.has-today) .slick-dots button {
  background: #fff;
}
.page--home .area--latest-info .list--bnr .slick-track {
  padding-top: 35px;
}
.page--home .area--latest-info .list--bnr img {
  border: 1px solid #fff;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.page--home .area--latest-info .list--bnr a {
  display: block;
}
.page--home .area--latest-info .list--bnr a:hover {
  transform: translateY(-10px);
  -webkit-transform: translateY(-10px);
}
.page--home .area--latest-info .section--today {
  width: auto;
  padding: 0;
  margin: 60px 0 0 ;
  background: -moz-linear-gradient(top, rgba(232, 53, 53, 0) 0%, rgba(232, 53, 53, 0) 50%, #e83535 50%, #e83535 100%);
  background: -webkit-linear-gradient(top, rgba(232, 53, 53, 0) 0%, rgba(232, 53, 53, 0) 50%, #e83535 50%, #e83535 100%);
  background: linear-gradient(to bottom, rgba(232, 53, 53, 0) 0%, rgba(232, 53, 53, 0) 50%, #e83535 50%, #e83535 100%);
}
.page--home .area--latest-info .section--today .today__inner {
  width: 800px;
  margin: 0 auto;
}
.page--home .area--latest-info .section--today .today__tit {
  margin: 0 0 8px;
  text-align: center;
}
.page--home .area--latest-info .section--today .today__tit .svg--today {
  text-align: center;
  fill: #e83535;
  height: 33px;
}
.page--home .area--latest-info .section--today .list--today {
  background: #fff;
  border: 2px solid #e83535;
  padding: 20px 30px;
}
.page--home .area--latest-info .section--today .category {
  float: none;
}
.page--home .area--news {
  position: relative;
}
.page--home .area--news::before {
  content: '';
  background: #e83535;
  width: 100%;
  height: 210px;
  position: absolute;
  top: 0;
  left: 0;
}
.page--home .item--fish01,
.page--home .item--fish02 {
  position: absolute;
  left: 0;
  width: 80px;
  padding-top: 10%;
  background: url(/static/shishamo/fanclub/common/icon_fish.png) no-repeat center;
  background-size: contain;
}
.page--home .item--fish01 {
  top: -40px;
  -webkit-animation: swiming02 12s linear infinite;
  animation: swiming02 12s linear infinite;
}
.page--home .item--fish02 {
  top: 85px;
  -webkit-animation: swiming01 8s linear infinite ;
  animation: swiming01 8s linear infinite ;
}
.page--home .area--schedule {
  position: relative;
  background: #eee;
}
.page--home .area--schedule::before {
  content: '';
  background: #e83535;
  width: 30%;
  width: calc( (1000px * .3) + ((100% - 1000px) / 2) );
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.page--home .area--schedule .item--ornament {
  position: absolute;
  z-index: 1;
  width: 80px;
  top: 20px;
  right: -30px;
}
.page--home .area--schedule .section--media .item--ornament {
  top: -40px;
}
.page--home .area--schedule .tit-wrap {
  float: left;
  width: 14%;
  text-align: center;
  margin-right: 8%;
}
.page--home .area--schedule .tit-wrap .section-tit {
  margin-bottom: 0;
}
.page--home .area--schedule .tit-wrap .ph {
  margin: 0;
}
.page--home .area--schedule .section--live .tit-wrap .ph {
  width: 200px;
  position: relative;
  left: -38px;
  top: -15px;
}
.page--home .area--schedule .section--media .tit-wrap .ph {
  width: 135px;
}
.page--home .area--schedule .list--schedule,
.page--home .area--schedule .list--info {
  float: left;
  width: 78%;
}
.page--home .area--schedule .list--info li a {
  padding-left: 20px;
}
.page--home .area--schedule .list--info .date {
  left: -24px;
}
.page--home .area--schedule .no-data {
  text-align: left;
}
.page--home .area--schedule .list__more {
  margin-top: 20px;
}
.page--home .section--youtube {
  width: auto;
  padding: 0;
}
.page--home .list--youtube {
  position: relative;
  background: -moz-linear-gradient(top, #eeeeee 0%, #eeeeee 50%, rgba(238, 238, 238, 0) 50%, rgba(238, 238, 238, 0) 100%);
  background: -webkit-linear-gradient(top, #eeeeee 0%, #eeeeee 50%, rgba(238, 238, 238, 0) 50%, rgba(238, 238, 238, 0) 100%);
  background: linear-gradient(to bottom, #eeeeee 0%, #eeeeee 50%, rgba(238, 238, 238, 0) 50%, rgba(238, 238, 238, 0) 100%);
}
.page--home .list--youtube::before {
  content: '';
  background: #e83535;
  width: 30%;
  width: calc( (1000px * .3) + ((100% - 1000px) / 2) );
  height: 50%;
  position: absolute;
  top: 0;
  left: 0;
}
.page--home .box--iframe {
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  position: relative;
  overflow: hidden;
}
.page--home .box--iframe:hover {
  transform: translateY(-10px);
  -webkit-transform: translateY(-10px);
}
.page--home .box--iframe .thumb {
  width: 100%;
  background: no-repeat center;
  background-size: cover;
  position: absolute;
  top: 0;
  z-index: 100;
  cursor: pointer;
}
.page--home .box--iframe .thumb img {
  width: 100%;
}
.page--home .box--iframe .thumb .tit {
  text-align: center;
  width: 95%;
  text-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
  font-size: 2.2rem;
  color: #fff;
  font-size: 26px;
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.06em;
  margin: 0 auto;
  margin-top: 4rem;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  z-index: 100;
  opacity: 0;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.page--home .box--iframe .thumb::after {
  content: '';
  display: block;
  width: 100px;
  height: 100px;
  background: url(/static/shishamo/fanclub/common/icon_play.png) no-repeat center;
  background-size: contain;
  -webkit-background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 50;
  opacity: 0;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.page--home .box--iframe:hover .thumb .tit,
.page--home .box--iframe:hover .thumb::after {
  opacity: 1;
}
.page--home #infoTicker {
  width: 100%;
  position: absolute;
  top: 0;
  transition: all 0.6s ease 0.8s;
  -moz-transition: all 0.6s ease 0.8s;
  -webkit-transition: all 0.6s ease 0.8s;
  /* pulgin */
}
.page--home #infoTicker.tickerShow {
  top: -60px;
}
.page--home #infoTicker .tickerFirst {
  width: 140px;
  color: inherit;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
  font-family: 'Ubuntu', sans-serif;
  font-weight: 500;
  float: left;
  height: 45px;
  line-height: 45px;
  background: #e83535;
  position: absolute;
  z-index: 1;
  left: 0;
  top: 0;
  color: #fff;
  text-align: center;
}
.page--home #infoTicker .ticker-container {
  background: #fff;
  padding: 0 15px ;
}
.page--home #infoTicker .tickerList li {
  min-width: 100%;
}
.page--home #infoTicker .tickerList li * {
  height: 45px;
  line-height: 45px;
}
.page--home #infoTicker .tickerList li a {
  text-decoration: none;
  padding: 0 0 0 175px;
  display: inline-block;
  color: inherit;
  font-weight: normal;
  font-size: 12px;
  position: relative;
}
.page--home #infoTicker .tickerList li a:hover {
  color: #e83535;
}
.page--home #infoTicker .tickerList li p {
  display: inline-block;
  color: inherit;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
.page--home #infoTicker .tickerList > div:after {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border: 2px solid;
  border-top: none;
  border-right: none;
  margin: -0.25em 0 0;
  right: 0.25em;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  opacity: 0;
  position: absolute;
  top: 50%;
  right: 20px;
}
.page--home #infoTicker .tickerList .date {
  margin: 0 13px 0 0;
}
.page--home #infoTicker .tickerList > div {
  cursor: pointer;
}
.page--home #infoTicker .tickerList > div:hover:after {
  opacity: 1;
}
.page--home #infoTicker .ticker-container {
  height: 45px;
  position: relative;
  overflow: hidden;
}
.page--home #infoTicker .ticker-container ul {
  height: 100%;
}
.page--home #infoTicker .ticker-container ul div {
  overflow: hidden;
  position: absolute;
  z-index: 0;
  display: inline;
  min-width: 100%;
  height: 100%;
  left: 0;
  transition: 0.5s ease;
}
.page--home #infoTicker .ticker-container ul div.ticker-active {
  top: 0;
}
.page--home #infoTicker .ticker-container ul div.not-active {
  top: 45px;
}
.page--home #infoTicker .ticker-container ul div.remove {
  top: -45px;
}
.page--home .slick-track {
  padding: 0 0 35px;
}
.page--home .slick-slide img {
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}
.page--home .slick-slide {
  padding: 0 .2%;
}
.page--home .slick-slide a {
  display: block;
}
.page--home .slick-prev,
.page--home .slick-next {
  display: block;
  width: 10%;
  height: 100%;
  background: transparent;
  color: transparent;
  font-size: 0;
  line-height: 0;
  padding: 0;
  position: absolute;
  top: 0;
  z-index: 99;
  cursor: pointer;
  border: none;
  outline: none;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.page--home .slick-prev {
  left: 0;
}
.page--home .slick-next {
  right: 0;
}
.page--home .slick-prev:hover {
  left: -10px;
}
.page--home .slick-next:hover {
  right: -10px;
}
.page--home .slick-prev::after,
.page--home .slick-next::after {
  content: '';
  display: block;
  width: 20px;
  height: 20px;
  border-right: 2px solid #e83535;
  border-top: 2px solid #e83535;
  position: absolute;
  top: 48%;
}
.page--home .slick-prev::after {
  left: 25%;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}
.page--home .slick-next::after {
  right: 25%;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.page--home .slick-dots {
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  text-align: center;
}
.page--home .slick-dots button {
  width: 10px;
  height: 10px;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 10px;
  background: #e83535;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  -webkit-appearance: none;
  cursor: pointer;
  opacity: 0.3;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.page--home .slick-dots li {
  display: inline-block;
  margin: 0 12px 0 0 !important;
}
.page--home .slick-dots li:last-child {
  margin-right: 0!important;
}
.page--home .slick-dots .slick-active button,
.page--home .slick-dots button:hover {
  opacity: 1;
}
.page--home .slider--single {
  line-height: 0;
}
.page--home .slider--single > li {
  width: 1000px;
  margin: 0 auto;
}
.page--home .slider--single.list--bnr > li {
  width: 800px;
}
/* information
============================== */
.page--info .section--detail > .tit br {
  display: none;
}
.page--info .txt {
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  padding-top: 30px;
  margin-top: 25px;
  line-height: 1.7;
}
.page--info .txt .ph {
  margin: 0;
}
.page--info .section--detail .category {
  float: left;
  margin: 0 15px 10px 0 ;
  color: #e83535;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.06em;
  line-height: 1;
}
.page--info .list--topics {
  /*
	.category + .tit {
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
	}
	*/
}
.page--info .list--topics li > a {
  display: block;
  color: inherit;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
  position: relative;
  text-decoration: none;
}
.page--info .list--topics .thumb {
  line-height: 0;
  background: #ffe5e5;
  position: relative;
}
.page--info .list--topics .thumb::before {
  content: '';
  width: 100%;
  height: 100%;
  background: url(/static/shishamo/fanclub/common/logo_wht.png) no-repeat center;
  background-size: 40%;
  display: block;
  position: absolute;
  opacity: 0.5;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.page--info .list--topics .thumb img {
  width: 100%;
  background: no-repeat center;
  background-size: contain;
  -moz-background-size: contain;
  -webkit-background-size: contain;
  position: relative;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.page--info .list--topics .list__txt {
  overflow: hidden;
}
.page--info .list--topics .tit {
  color: inherit;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
.page--info .list--topics .date:not(.date--event) {
  color: inherit;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.04em;
  letter-spacing: 0.1em;
}
.page--info .list--topics .category {
  float: left;
}
.page--info .list--topics a:hover {
  color: #e83535;
}
.page--info .list--topics a:hover .week {
  background: #e83535;
}
.page--info .list--topics a:hover .category::after {
  color: #e83535;
}
.page--info .list--topics li {
  padding: 25px;
  background: #fff;
  border: 2px solid #e83535;
  position: relative;
  margin: 0 0 20px;
}
.page--info .list--topics .category {
  float: none;
  color: #e83535;
  font-size: 26px;
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.06em;
  margin: 0 0 12px;
  line-height: 1em;
}
.page--info .list--topics .category::after {
  display: none;
}
.page--info .list--topics .tit {
  color: inherit;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.06em;
}
.page--info .list--topics .txt {
  border-top: none;
  padding: 0;
  margin: 30px 0 0 ;
}
.page--info .list--topics .ph {
  margin-top: 0;
}
.page--info .list--topics .btn--close {
  width: 48px;
  height: 48px;
  top: 10px;
  right: 15px;
  display: block;
  position: absolute;
  cursor: pointer;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.page--info .list--topics .btn--close:before,
.page--info .list--topics .btn--close:after {
  content: '';
  display: block;
  position: absolute;
  right: 8px;
  width: 26px;
  height: 2px;
  background: #e83535;
}
.page--info .list--topics .btn--close:before {
  -webkit-transform: translateY(23px) rotate(-45deg);
  transform: translateY(23px) rotate(-45deg);
  top: 0px;
}
.page--info .list--topics .btn--close:after {
  -webkit-transform: translateY(-23px) rotate(45deg);
  transform: translateY(-23px) rotate(45deg);
  bottom: 0px;
}
.page--info .list--topics .ac-open .btn--close {
  -webkit-transform: rotate(0);
  transform: rotate(0);
}
/* share */
.block--share {
  float: right;
  line-height: 1;
  position: relative;
  z-index: 1;
  bottom: 4px;
  color: #666;
}
.block--share::before {
  content: 'SHARE :';
  position: relative;
  top: -10px;
  color: inherit;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.04em;
  font-family: 'Ubuntu', sans-serif;
  font-weight: 500;
}
.block--share li {
  display: inline-block;
}
.block--share a {
  display: block;
  width: 26px;
  height: 30px;
  font-size: 18px;
  text-align: center;
  line-height: 30px;
  position: relative;
  color: #666;
}
.block--share a:hover {
  opacity: 1;
  color: #e83535;
  animation-name: bounce;
  -webkit-animation-name: bounce;
  animation-duration: .6s;
  -webkit-animation-duration: .6s;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
  transform-origin: 50% 100%;
  -webkit-transform-origin: 50% 100%;
}
.block--share svg {
  width: 20px;
  height: 30px;
  position: absolute;
  top: 0;
  left: 5px;
}
.block--share path {
  fill: #666;
}
.block--share a:hover path {
  fill: #e83535;
}
.block--share .fa {
  width: 30px;
  line-height: 0;
  position: absolute;
  top: 50%;
  left: 0;
}
/* disco
============================== */
/* detail */
.page--disco .section--detail {
  padding: 0;
  background: none;
}
.page--disco .section--detail .block--jacket {
  width: 43%;
  float: left;
  text-align: center;
}
.page--disco .section--detail .list--jacket li {
  display: inline-block;
  width: 100%;
}
.page--disco .section--detail .list--jacket li + li {
  margin-top: 20px;
}
.page--disco .section--detail .ph {
  display: block;
  float: left;
  margin: 0 0 30px;
  position: relative;
}
.page--disco .section--detail .ph img {
  margin: 0 0 20px;
}
.page--disco .section--detail .ph img:first-child {
  box-shadow: 0 10px 30px -10px rgba(0, 0, 0, 0.8);
}
.page--disco .section--detail figcaption {
  text-align: center;
  font-size: 12px;
}
.page--disco .section--detail .block--detail {
  float: right;
  width: 52%;
  background: #fff;
  padding: 35px;
}
.page--disco .section--detail .block--detail > .tit {
  margin-bottom: 15px;
  line-height: 1.5;
}
.page--disco .section--detail .date {
  color: inherit;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.04em;
  margin: 0 0 40px;
}
.page--disco .section--detail .date::after {
  content: 'RELEASE';
  margin-left: 10px;
}
.page--disco .section--detail .area--disco-detail {
  margin: 0 0 40px;
}
.page--disco .section--detail .area--disco-detail .block--comment {
  margin: 0 0 40px;
}
.page--disco .section--detail .block--track > li {
  margin: 0 0 40px;
}
.page--disco .section--detail .block--track .tit {
  margin: 0 0 10px;
  font-family: 'Ubuntu', sans-serif;
  font-weight: 500;
}
.page--disco .section--detail .list--track {
  margin: 0 0 30px;
}
.page--disco .section--detail .list--track > li {
  color: inherit;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.04em;
  line-height: 1.5em;
  list-style: none;
  position: relative;
  padding-left: 2em;
  padding: 10px 4em 10px 2.5em;
  border-bottom: 0.5px solid rgba(0, 0, 0, 0.2);
}
.page--disco .section--detail .list--track > li:first-child {
  border-top: 0.5px solid rgba(0, 0, 0, 0.2);
}
.page--disco .section--detail .list--track li span {
  width: 24px;
  position: absolute;
  top: 8px;
  left: 0;
  font-family: 'Ubuntu', sans-serif;
  font-weight: 500;
  color: #666;
  text-align: center;
}
.page--disco .section--detail .list--track li a {
  display: block;
  border: 1px solid transparent;
}
.page--disco .section--detail .list--track li a:hover {
  background: #fff;
  color: #e83535;
  border-color: #e83535;
}
.page--disco .section--detail .list--track li .tieup {
  margin-top: 2px;
  font-size: 10px;
  padding-left: 21px;
}
.page--disco .section--detail .block--review {
  font-size: 12px;
}
.page--disco .section--detail .list--link {
  float: right;
  opacity: 0;
}
.page--disco .section--detail .list--link a {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  text-decoration: none;
  color: inherit;
  font-size: 8px;
  font-weight: 300;
  line-height: 1;
  letter-spacing: 0.04em;
  right: 0;
  background: #e83535;
  color: #fff;
  border-radius: 100px;
  padding: 6px 10px;
  letter-spacing: .1em;
}
/* 歌詞 */
.smartphoto {
  z-index: 9999!important;
  background: #e83535 !important;
}
.smartphoto-count,
.smartphoto-nav {
  display: none!important;
}
.smartphoto-header {
  background: none!important;
}
.smartphoto-dismiss {
  width: 50px!important;
  height: 50px!important;
  background: none!important;
  border-radius: 50px;
  -webkit-border-radius: 50px;
  top: 7px!important;
}
.smartphoto-img {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-touch-callout: none;
  -moz-user-select: none;
  touch-callout: none;
  user-select: none;
}
.smartphoto-dismiss:before,
.smartphoto-dismiss:after {
  content: '';
  display: block;
  position: absolute;
  right: 8px;
  width: 26px;
  height: 2px;
  background: #fff;
}
.smartphoto-dismiss:before {
  -webkit-transform: translateY(23px) rotate(-45deg);
  transform: translateY(23px) rotate(-45deg);
  top: 1px;
}
.smartphoto-dismiss:after {
  -webkit-transform: translateY(-23px) rotate(45deg);
  transform: translateY(-23px) rotate(45deg);
  bottom: 0px;
}
/* goods
============================== */
.page--goods .section-tit span {
  display: block;
  color: inherit;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.06em;
  font-family: YakuHanJP, -apple-system, Helvetica, Arial, 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'Noto Sans Japanese', "メイリオ", sans-serif;
  font-weight: bold;
  margin-top: 10px;
}
/* schedule
============================== */
.page--schedule .calendarHeader {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  margin-bottom: 50px;
  font-family: 'Ubuntu', sans-serif;
  font-weight: 500;
}
.page--schedule .calendarHeader li {
  width: calc(33.23333333%);
  position: relative;
}
.page--schedule .calendarHeader li a {
  display: inline-block;
  text-decoration: none;
  position: relative;
  color: #222;
}
.page--schedule .calendarHeader li a:hover {
  color: #e83535;
}
.page--schedule .calendarHeader li span {
  font-size: 14px;
}
.page--schedule .calendarHeader li div {
  opacity: 0.3;
}
.page--schedule .calendarHeader li:nth-child(1) {
  text-align: left;
  bottom: -11px;
  left: 0;
}
.page--schedule .calendarHeader li:nth-child(1) a {
  right: 0;
  left: inherit;
}
.page--schedule .calendarHeader li:nth-child(1) span {
  padding-left: 18px;
}
.page--schedule .calendarHeader li:nth-child(1) a::before {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border: 2px solid;
  border-top: none;
  border-right: none;
  margin: -0.25em 0 0;
  position: absolute;
  right: auto;
  top: 50%;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  margin-right: 10px;
  left: 0.25em;
}
.page--schedule .calendarHeader li:nth-child(2) {
  text-align: center;
}
.page--schedule .calendarHeader li:nth-child(2) .year {
  padding-right: 10px;
}
.page--schedule .calendarHeader li:nth-child(2) .month {
  font-size: 46px;
  font-weight: 300;
}
.page--schedule .calendarHeader li:nth-child(2) .month_en {
  padding-left: 10px;
}
.page--schedule .calendarHeader li:nth-child(3) {
  text-align: right;
  bottom: -11px;
  left: 0;
}
.page--schedule .calendarHeader li:nth-child(3) span {
  padding-right: 18px;
}
.page--schedule .calendarHeader li:nth-child(3) a::after {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border: 2px solid;
  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-left: 10px;
  margin-top: -0.05em;
}
.page--schedule .block--sort li {
  margin: 0 2px;
}
.page--schedule .block--sort label {
  display: block;
  width: 100px;
}
.page--schedule .block--sort label:hover {
  animation-name: bounce;
  -webkit-animation-name: bounce;
  animation-duration: .6s;
  -webkit-animation-duration: .6s;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
  transform-origin: 50% 100%;
  -webkit-transform-origin: 50% 100%;
}
.page--schedule .block--sort .category {
  color: #fff;
  cursor: pointer;
  font-size: 11px;
  padding: 6px 0;
  line-height: 1;
  border-radius: 20px;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  margin-bottom: 10px;
}
.page--schedule .block--sort li:nth-child(1) label p {
  opacity: 0.2;
}
.page--schedule .block--sort input[type="checkbox"] {
  display: none;
}
.page--schedule .block--sort input[type="checkbox"]:not(:checked) + .category {
  opacity: 0.3;
}
.page--schedule .block--sort input[type="checkbox"]:not(:checked) + .category:hover {
  opacity: 1;
}
.page--schedule .btn--switch {
  position: absolute;
  top: 30px;
  right: 50px;
}
.page--schedule .btn--switch a {
  display: block;
  width: 38px;
  height: 38px;
  font-size: 19px;
  line-height: 100%;
  text-decoration: none;
  text-align: center;
  background: #222;
  color: #fff;
  border-radius: 33px;
  padding: 10px 0 10px;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.page--schedule .btn--switch a i {
  display: block;
  margin-bottom: 2px;
}
.page--schedule .btn--switch a:hover {
  background: #e83535;
}
.page--schedule .calendar .weekHeader,
.page--schedule .calendar .calendarBody {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.page--schedule .calendar .weekHeader div {
  font-size: 13px;
  padding-bottom: 5px;
}
.page--schedule .calendar .weekHeader div,
.page--schedule .calendar .calendarBody div > div {
  width: calc(14.28571429%);
  text-align: center;
  border-right: 1px solid rgba(0, 0, 0, 0.2);
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}
.page--schedule .calendar .calendarBody > div {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0;
}
.page--schedule .calendar .weekHeader div {
  border: none;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}
.page--schedule .calendar .week > div:nth-child(1) {
  border-left: 1px solid rgba(0, 0, 0, 0.2);
}
.page--schedule .calendar .weekHeader div:nth-child(6),
.page--schedule .calendar .week > div:nth-child(6) .date {
  color: #64a4f3;
}
.page--schedule .calendar .weekHeader div:nth-child(7),
.page--schedule .calendar .week > div:nth-child(7) .date {
  color: #f95d5d;
}
.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;
  color: inherit;
}
.page--schedule .calendar .calendarBody .cell > div a:hover {
  color: #e83535;
}
.page--schedule .calendar .calendarBody .cell a span {
  display: inline-block;
  font-size: 8px;
}
.page--schedule .calendar .calendarBody .cell a span.category {
  padding: 3px 4px 2px;
  line-height: 1;
  margin: 0 0 4px;
}
.page--schedule .calendar .calendarBody .cell a span.tit {
  margin: 0 0 10px;
}
.page--schedule .calendar .calendarBody .cell a .tit {
  font-size: 12px;
  line-height: 140%;
  word-break: break-all;
  font-weight: 400;
}
.page--schedule .calendar .calendarBody .cell.cell--small .tit {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}
.page--schedule .category {
  color: #fff;
}
.page--schedule .list--txt > li {
  padding: 5px 0;
}
.page--schedule .list--txt a {
  padding: 0;
  margin: 20px 0;
  text-decoration: none;
  color: #222;
  display: block;
}
.page--schedule .list--txt a::before {
  display: none;
}
.page--schedule .list--txt .date {
  display: inline-block;
  margin: 18px 0 0 ;
  font-size: 32px;
  float: left;
  width: 86px;
}
.page--schedule .list--txt .week {
  width: 26px;
  height: 26px;
  line-height: 26px;
  font-size: 13px;
  top: -3px;
}
.page--schedule .list--txt .category {
  display: inline-block;
  width: 100px;
  text-align: center;
  height: 20px;
  line-height: 20px;
  float: none;
  margin: 0;
  position: relative;
  top: -4px;
  font-size: 12px;
}
.page--schedule .list--txt .category::after {
  display: none;
}
.page--schedule .list--txt .tit {
  margin: 0 ;
  color: inherit;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
/*  questioonnaire
============================== */
.page--questionnaire .txt {
  margin: 0 0 60px;
}
/* svg */
.section-tit .section-tit__svg {
  fill: #fff;
  height: 56px;
  padding-top: 15px;
}
.svg--mobile .cls-1 {
  fill: #fc0d1b;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.g-nav li a .g-nav__svg {
  height: 15px;
  fill: #000;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.g-nav li a .svg--mobile {
  height: 36px;
  position: relative;
  top: 10px;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.g-nav li a .svg--instagram {
  height: 16px;
}
.g-nav li a .g-nav__svg.svg--twitter-txt,
.g-nav li a .g-nav__svg.svg--youtube-txt,
.g-nav li a .g-nav__svg.svg--insta-txt {
  display: none;
}
.page--home #block--opening .svg--logo {
  height: 200px;
  fill: #fff;
}
.page--home .list__more .svg--more {
  height: 15px;
  fill: #000;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.page--home .list__more a:hover .svg--more {
  height: 15px;
  fill: #e83535;
}
/* current */
.g-nav li a:hover .g-nav__svg,
.g-nav li a:hover .svg--mobile,
.category-NEWS .g-nav li.nav__item--news .g-nav__svg,
.category-LIVE .g-nav li.nav__item--live .g-nav__svg,
.parent-category-3 .g-nav li.nav__item--live .g-nav__svg,
.category-MEDIA .g-nav li.nav__item--media .g-nav__svg,
.parent-category-7 .g-nav li.nav__item--media .g-nav__svg,
.page--schedule .g-nav li.nav__item--schedule .g-nav__svg,
.page--biography .g-nav li.nav__item--biography .g-nav__svg,
.page--disco .g-nav li.nav__item--disco .g-nav__svg,
.page--goods .g-nav li.nav__item--goods .g-nav__svg {
  fill: #e83535;
}
.g-nav li a:hover .svg--mobile .cls-1 {
  fill: #fff;
}
/* IE */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .g-nav .g-nav__svg {
    width: 60px;
  }
  .g-nav li.nav__item--news .g-nav__svg {
    width: 46px;
  }
  .g-nav li.nav__item--live .g-nav__svg {
    width: 40px;
  }
  .g-nav li.nav__item--media .g-nav__svg {
    width: 48px;
  }
  .g-nav li.nav__item--biography .g-nav__svg {
    width: 70px;
  }
  .g-nav li.nav__item--disco .g-nav__svg {
    width: 70px;
  }
  .g-nav li.nav__item--youtube .g-nav__svg {
    width: 20px;
  }
  .g-nav li.nav__item--twitter .g-nav__svg {
    width: 23px;
  }
  .g-nav li.nav__item--mobile .svg--mobile {
    width: 144px;
  }
  .page--home .svg--more {
    width: 94px;
  }
  .thumb .blur {
    display: none;
  }
}
/* タブレット */
.device-tablet {
  min-width: unset;
  /* header */
  /* current */
}
.device-tablet .wrap::before {
  display: none;
}
.device-tablet .tablet {
  display: block;
}
.device-tablet header .g-nav {
  min-width: unset;
}
.device-tablet footer {
  padding: 50px 0;
}
.device-tablet section,
.device-tablet.page--home section,
.device-tablet .section--detail {
  width: auto;
  padding-right: 5.5%;
  padding-left: 5.5%;
  background: none;
  margin: 0;
}
.device-tablet.page--home::before {
  content: '';
  width: 100%;
  height: 548px;
  height: 54vh;
  position: fixed;
  left: 0;
  top: 0;
}
.device-tablet.page--home section.section--youtube {
  padding-right: 0;
  padding-left: 0;
}
.device-tablet .section-tit {
  margin: 0 0 50px;
  color: #222;
}
.device-tablet .section-tit .section-tit__svg {
  fill: #222;
  height: 46px;
}
.device-tablet .block--category li {
  margin: 0 12px;
}
.device-tablet .block--category a,
.device-tablet .block--category span {
  color: #222;
  font-size: 15px;
  font-weight: 500;
}
.device-tablet.page--home header {
  height: 54vh;
  position: relative;
}
.device-tablet.page--home .wrap {
  padding-top: 0;
}
.device-tablet.page--home #infoTicker {
  position: fixed;
  bottom: 0;
  z-index: 1;
  top: auto;
  border-top: 1px solid #e83535;
}
.device-tablet.page--home .area--latest-info .section--today {
  margin-top: 50px;
}
.device-tablet.page--home .area--latest-info .section--today .today__inner {
  width: auto;
  padding: 0 5.5%;
}
.device-tablet.page--home .area--latest-info .list--bnr {
  background: none;
}
.device-tablet.page--home .area--latest-info .slick-dots button {
  background: #e83535;
}
.device-tablet.page--home .keyvisual {
  margin: 0;
}
.device-tablet.page--home .section-tit .section-tit__svg {
  fill: #fff;
}
.device-tablet.page--home .area--schedule::before,
.device-tablet.page--home .list--youtube::before {
  width: 35%;
}
.device-tablet.page--home .mobile-illust {
  display: none;
}
.device-tablet.page--home footer {
  padding-bottom: 100px;
}
.device-tablet.page--home .area--schedule .tit-wrap .ph {
  width: 100%!important;
  left: 0;
  top: 0;
}
.device-tablet.page--home .area--schedule .section--live .tit-wrap .ph {
  transform: scale(1.4);
}
.device-tablet.page--home .area--schedule .item--ornament {
  right: 0;
}
.device-tablet.page--info .list--topics li {
  padding: 30px;
}
.device-tablet .overlay__modal {
  background: #fff;
}
.device-tablet .btn--close {
  background: #fff;
}
.device-tablet .btn--close:before,
.device-tablet .btn--close:after {
  background: #e83535;
}
.device-tablet.page--disco .section--detail .block--jacket {
  float: none;
  width: 100%;
  margin: 0 0 30px;
}
.device-tablet.page--disco .section--detail .block--detail {
  float: none;
  width: 100%;
}
.device-tablet header {
  height: 65px;
  position: fixed;
  width: 100%;
  z-index: 999;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.device-tablet h1 {
  position: fixed;
  width: 50px!important;
  z-index: 1000;
  top: 20px!important;
  left: 20px!important;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.device-tablet.menu-open h1 a {
  opacity: 0;
}
.device-tablet .drawer .g-nav {
  width: 100%;
  position: fixed;
  right: -100%;
  left: auto;
  top: 0;
  z-index: 100;
  background: #e83535;
  overflow: scroll;
  -webkit-overflow-scrolling: touch;
  height: 100%;
  padding: 50px 12%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.device-tablet .drawer .g-nav > ul {
  display: block;
  text-align: left;
}
.device-tablet .drawer .g-nav .nav--free {
  margin: 0 0 15px;
}
.device-tablet .drawer .g-nav .nav__item--home {
  display: block;
}
.device-tablet .drawer .g-nav ul {
  width: 100%;
}
.device-tablet .drawer .g-nav li {
  float: left;
  width: 50%;
  position: relative;
  margin: 0 0 40px;
  text-align: left;
}
.device-tablet .drawer .g-nav li a {
  display: block;
  color: #fff;
  font-family: 'Ubuntu', sans-serif;
  font-weight: 500;
  font-size: 13px;
  line-height: 2.75em;
}
.device-tablet .drawer .g-nav li .g-nav__svg {
  fill: #fff;
  height: 24px;
}
.device-tablet .drawer .g-nav .svg--blog-l,
.device-tablet .drawer .g-nav .svg--twitter-txt,
.device-tablet .drawer .g-nav .svg--youtube-txt {
  display: none;
}
.device-tablet .drawer .g-nav .blank {
  display: none;
}
.device-tablet .drawer .g-nav .nav--sub {
  position: relative;
  top: -20px;
}
.device-tablet .drawer .g-nav .nav--sub a {
  position: relative;
}
.device-tablet .drawer .g-nav .nav--sub li {
  display: inline-block;
  width: auto;
  margin-right: 30px;
}
.device-tablet .drawer .g-nav .nav--sub li:not(:last-child) a::after {
  content: '';
  display: inline-block;
  height: 16px;
  width: 2px;
  background: #fff;
  position: relative;
  bottom: -1px;
  transform: rotate(35deg);
  right: -13px;
  opacity: .5;
}
.device-tablet .drawer .g-nav .nav--sub .g-nav__svg {
  height: 24px;
}
.device-tablet .drawer .g-nav .nav--sub .nav__item--twitter a::after {
  display: none!important;
}
.device-tablet .drawer .g-nav .nav--sub .nav__item--mobile {
  display: block;
}
.device-tablet .drawer .g-nav .nav--sub .nav__item--mobile .svg--mobile {
  fill: #fff;
  height: 50px;
}
.device-tablet.page--home .g-nav li.nav__item--home .g-nav__svg,
.device-tablet.category-NEWS .g-nav li.nav__item--news .g-nav__svg,
.device-tablet.category-LIVE .g-nav li.nav__item--live .g-nav__svg,
.device-tablet.parent-category-3 .g-nav li.nav__item--live .g-nav__svg,
.device-tablet.category-MEDIA .g-nav li.nav__item--media .g-nav__svg,
.device-tablet.parent-category-7 .g-nav li.nav__item--media .g-nav__svg,
.device-tablet.page--schedule .g-nav li.nav__item--schedule .g-nav__svg,
.device-tablet.page--biography .g-nav li.nav__item--biography .g-nav__svg,
.device-tablet.page--disco .g-nav li.nav__item--disco .g-nav__svg,
.device-tablet.page--goods .g-nav li.nav__item--goods .g-nav__svg {
  fill: #000;
}
.device-tablet.page--home .g-nav li.nav__item--home::before,
.device-tablet.category-NEWS .g-nav li.nav__item--news::before,
.device-tablet.category-LIVE .g-nav li.nav__item--live::before,
.device-tablet.parent-category-3 .g-nav li.nav__item--live::before,
.device-tablet.category-MEDIA .g-nav li.nav__item--media::before,
.device-tablet.parent-category-7 .g-nav li.nav__item--media::before,
.device-tablet.page--schedule .g-nav li.nav__item--schedule::before,
.device-tablet.page--biography .g-nav li.nav__item--biography::before,
.device-tablet.page--disco .g-nav li.nav__item--disco::before {
  content: '';
  width: 28px;
  height: 28px;
  background: url(/static/shishamo/fanclub/common/icon_finger.png) no-repeat center;
  background-size: contain;
  position: absolute;
  left: -34px;
  top: -3px;
  -webkit-animation: swing 1s infinite ;
  animation: swing 1s infinite ;
}
.device-tablet.menu-open .drawer .g-nav {
  right: 0;
}
.device-tablet .drawer__btn {
  display: block!important;
  width: 48px;
  height: 48px;
  position: fixed;
  right: 20px;
  top: 20px;
  z-index: 1000;
  background: #fff;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.device-tablet .drawer__btn span {
  display: inline-block;
  position: absolute;
  left: 12px;
  width: 50%;
  height: 2px;
  background-color: #E40112;
  transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
}
.device-tablet .drawer__btn span:nth-of-type(1) {
  top: 15px;
}
.device-tablet .drawer__btn span:nth-of-type(2) {
  top: 23px;
}
.device-tablet .drawer__btn span:nth-of-type(3) {
  bottom: 15px;
}
.device-tablet.menu-open .drawer__btn span:nth-of-type(1) {
  -webkit-transform: translateY(7px) rotate(-45deg);
  transform: translateY(7px) rotate(-45deg);
  top: 16px;
}
.device-tablet.menu-open .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;
}
.device-tablet.menu-open .drawer__btn span:nth-of-type(3) {
  -webkit-transform: translateY(-7px) rotate(45deg);
  transform: translateY(-7px) rotate(45deg);
  bottom: 16px;
  top: auto;
}
