/* ---------------------------------------
0.0 mixin
	0.1 colors
	0.2 typography
	0.3 spacer
	0.4 chevron
	0.5 flexbox
1.0 setting
	1.1 normalize
	1.2 clearfix
2.0 compontents
	2.1 button
	2.2 form
	2.3 list
	2.4 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 discography
	4.5 ticket
	4.6 blog
	4.7 movie
	4.8 faq
	4.9 support
	4.10 questioonnaire
  4.13 goods
-------------------------------------------- */
.sf-toolbar {
  display: none!important;
}
/* 開発用ツールバー非表示 */
.pc {
  display: none !important;
}
/* 1.0 setting
============================== */
/* 1.1 normalize
------------------------------ */
html,
body {
  /* height: 100%; */
  -webkit-text-size-adjust: none;
}
html,
body,
p,
ol,
ul,
li,
dl,
dt,
dd,
blockquote,
figure,
fieldset,
legend,
textarea,
pre,
iframe,
hr,
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: normal;
}
ul {
  list-style: none;
}
button,
input,
select,
textarea {
  margin: 0;
}
img,
embed,
iframe,
object,
audio,
video {
  height: auto;
  max-width: 100%;
}
iframe {
  border: 0;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
td,
th {
  padding: 0;
  text-align: left;
}
i {
  font-style: normal;
}
img {
  max-width: 100%;
}
::selection {
  background: #222;
  color: #fff;
}
::-moz-selection {
  background: #222;
  color: #fff;
}
*,
*::before,
*::after {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  outline: none;
}
/* 1.2 clearfix
------------------------------ */
.clearfix::after {
  display: table;
  content: "";
  clear: both;
}
/* 2.0 component
============================== */
/* 2.1 button
------------------------------ */
.btn {
  text-align: center;
  margin: 10px 0;
}
.btn--main {
  color: inherit;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.025em;
  -webkit-appearance: none;
  display: inline-block;
  min-width: 200px;
  text-align: center;
  text-decoration: none;
  padding: 11px 20px 10px;
  border-radius: 100px;
  font-family: 'Josefin Sans', sans-serif;
  letter-spacing: 0.1em;
  color: #fff;
  border: none;
  background: #886e2c;
}
.btn--sub {
  color: inherit;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.025em;
  -webkit-appearance: none;
  display: inline-block;
  min-width: 200px;
  text-align: center;
  text-decoration: none;
  padding: 11px 20px 10px;
  border-radius: 100px;
  font-family: 'Josefin Sans', sans-serif;
  letter-spacing: 0.1em;
  background: transparent;
  color: #886e2c;
  border: 1px solid;
}
/* 2.2 form
------------------------------ */
.form--post dt {
  margin: 3em 0 1em;
}
.form--post dd {
  margin: 0 0 1em;
}
/* placeholder */
::-webkit-input-placeholder {
  color: #ccc;
}
::-moz-placeholder {
  color: #ccc;
  opacity: 1;
}
:-ms-input-placeholder {
  color: #ccc;
}
:-moz-placeholder {
  color: #ccc;
}
/* autofill */
input:-webkit-autofill,
textarea:-webkit-autofill,
select:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px #fff inset;
}
/* input */
input[type="text"],
input[type="tel"],
input[type="email"],
input[type="password"],
input[type="number"] {
  color: inherit;
  font-size: 18px;
  font-weight: 300;
  line-height: 1.75;
  letter-spacing: 0.025em;
  -webkit-appearance: none;
  display: inline-block;
  width: 100%;
  max-width: 100%;
  background: transparent;
  box-shadow: none;
  border-radius: 0.3em;
  border: 1px solid #e8e6e0;
  padding: 0.5em;
}
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="number"]:focus {
  border-color: inherit;
}
input[type="text"].form__error,
input[type="tel"].form__error,
input[type="email"].form__error,
input[type="password"].form__error,
input[type="number"].form__error {
  background: #e8e6e0;
  color: #d0203f;
  border-color: #d0203f;
}
input[type="text"].form__error:focus,
input[type="tel"].form__error:focus,
input[type="email"].form__error:focus,
input[type="password"].form__error:focus,
input[type="number"].form__error:focus {
  background: transparent;
  color: inherit;
  border-color: inherit;
}
input[type="text"][disabled],
input[type="tel"][disabled],
input[type="email"][disabled],
input[type="password"][disabled],
input[type="number"][disabled] {
  background: #ddd;
  border: none;
  opacity: 0.5;
}
.input--half {
  width: 50% !important;
}
.input--quarter {
  width: 25% !important;
}
/* textarea */
textarea {
  color: inherit;
  font-size: 18px;
  font-weight: 300;
  line-height: 1.75;
  letter-spacing: 0.025em;
  -webkit-appearance: none;
  display: inline-block;
  width: 100%;
  max-width: 100%;
  background: transparent;
  box-shadow: none;
  border-radius: 0.3em;
  border: 1px solid #e8e6e0;
  padding: 0.5em;
  height: 10em;
}
textarea:focus {
  border-color: inherit;
}
textarea.form__error {
  background: #e8e6e0;
  color: #d0203f;
  border-color: #d0203f;
}
textarea.form__error:focus {
  background: transparent;
  color: inherit;
  border-color: inherit;
}
textarea[disabled] {
  background: #ddd;
  border: none;
  opacity: 0.5;
}
/* select */
.form__select {
  display: inline-block;
  position: relative;
  width: 100%;
  margin: 0 0 25px;
}
.form__select select {
  color: inherit;
  font-size: 18px;
  font-weight: 300;
  line-height: 1.75;
  letter-spacing: 0.025em;
  -webkit-appearance: none;
  display: inline-block;
  width: 100%;
  max-width: 100%;
  background: transparent;
  box-shadow: none;
  border-radius: 0.3em;
  border: 1px solid #e8e6e0;
  padding: 0.5em;
  font-size: 16px;
  padding-right: 1.5em;
  font-family: 'Josefin Sans', sans-serif;
  padding: 0.5em .8em;
  border-color: #ddd;
}
.form__select select:focus {
  border-color: inherit;
}
.form__select select.form__error {
  background: #e8e6e0;
  color: #d0203f;
  border-color: #d0203f;
}
.form__select select.form__error:focus {
  background: transparent;
  color: inherit;
  border-color: inherit;
}
.form__select select[disabled] {
  background: #ddd;
  border: none;
  opacity: 0.5;
}
.form__select::after {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border: 1px solid #666;
  margin: -0.35em 0 0;
  position: absolute;
  right: 1.25em;
  top: 50%;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  border: 1px solid #888;
  border-top: none;
  border-right: none;
}
/* checkbox */
/*
.form__checkbox {
	.check-base-style;

	label p {
		padding-left: 1.6em;
	}
	label p::before {
		content: '';
		display: inline-block;
		width: 1.2em;
		height: 1.2em;
		border-radius: 0.3em;
		border: 1px solid #ddd;
		margin: -0.6em 0 0;
		position: absolute;
		left: 0;
		top: 50%;
	}
	label p::after {
		content: '';
		display: inline-block;
		width: 0.8em;
		height: 0.4em;
		border: 2px solid @background-color;
		border-top: none;
		border-right: none;
		margin: -0.25em 0 0;
		position: absolute;
		left: 0.2em;
		top: 70%;
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
		opacity: 0;
	}
	:checked ~ p::before {
		background: @primary-color;
		border-color: @primary-color;
	}
	:checked ~ p::after {
		top: 50%;
		opacity: 1;
	}
}
*/
/* radio */
/*
.form__radio {
	.check-base-style;

	label p {
		padding-left: 1.6em;
	}
	label p::before {
		content: '';
		display: inline-block;
		width: 1.2em;
		height: 1.2em;
		border-radius: 50%;
		border: 1px solid #ddd;
		margin: -0.6em 0 0;
		position: absolute;
		left: 0;
		top: 50%;
	}
	:checked ~ p::before {
		border-color: @primary-color;
		border-width: 0.3em;
	}
}
*/
/* toggle button */
.form__toggle label p {
  color: inherit;
  font-size: 18px;
  font-weight: 300;
  line-height: 1.75;
  letter-spacing: 0.025em;
  display: block;
  padding: 0.5em;
  position: relative;
  cursor: pointer;
}
.form__toggle input[type="checkbox"],
.form__toggle input[type="radio"] {
  -webkit-appearance: none;
  width: 0;
  height: 0;
  opacity: 0;
  position: absolute;
}
.form__toggle.form__error {
  color: #d0203f;
}
.form__toggle label p {
  padding-left: 0;
  position: relative;
}
.form__toggle label p::before,
.form__toggle label p::after {
  content: '';
  display: block;
  height: 30px;
  margin: -15px 0 0;
  position: absolute;
  border: 1px solid #e8e6e0;
}
.form__toggle label p::before {
  width: 50px;
  border-radius: 15px;
  right: 0;
  top: 50%;
}
.form__toggle label p::after {
  width: 30px;
  background: #fff;
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.1);
  border-radius: 50%;
  right: 20px;
  top: 50%;
}
.form__toggle :checked ~ p::before {
  background: #886e2c;
  border-color: #886e2c;
}
.form__toggle :checked ~ p::after {
  right: 0;
}
/* horizontal */
.form--horizontal li {
  display: inline-block;
}
.form--horizontal label {
  display: inline-block;
  margin: 0 0.3em 0 0;
}
/* form v0
------------------------------ */
/* 全体 */
[class^="form--"] dt {
  display: block;
  margin: 0 0 8px;
  font-size: 13px;
  text-align: left;
  color: #888;
}
[class^="form--"] dd {
  margin: 0 0 25px;
}
[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: #d0203f;
  color: #fff;
  font-size: 11px;
  text-align: center;
  letter-spacing: 0.2em;
  position: relative;
  top: -1px;
}
.form--confirm dl {
  margin: 0 0 30px;
}
.form--confirm dl .ph {
  margin: 0;
}
/* form要素共通 */
input:-webkit-autofill,
textarea:-webkit-autofill,
select:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px #fff inset;
}
.form--post [class^="form__radio"] label,
.form--post [class^="form__checkbox"] label {
  display: block;
  line-height: 2em;
  padding: 4px 0;
}
.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;
  display: inline-block;
  width: 100%;
  font-size: 15px;
  line-height: 1.8;
  padding: 8px 12px;
  border-radius: 0.3em;
  border: 1px solid #e8e6e0;
}
/* 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: 1px solid #666;
  border-top: 1px solid #666;
  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;
  background: #fff;
}
.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: 18px;
  height: 18px;
  margin: 0 8px 0 0;
  background-color: #fff;
  border: 1px solid #e8e6e0;
  border-radius: 100%;
  vertical-align: -4px;
  position: relative;
  pointer-events: none;
}
.form--post [class^="form__radio"] input[type="radio"]:checked:after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  background: #886e2c;
  border-radius: 6px;
  position: absolute;
  top: 3px;
  left: 3px;
}
/* radio（性別） */
.form--post .form__radio--sex label {
  display: inline-block;
  margin-right: 20px;
}
/* checkbox */
.form--post input[type="checkbox"] {
  appearance: button;
  -webkit-appearance: button;
  display: inline-block;
  margin-right: 10px;
  width: 18px;
  height: 18px;
  position: relative;
  border: 1px solid #e8e6e0;
  vertical-align: -4px;
  background: #fff;
}
.form--post input[type="checkbox"]:checked:after {
  content: "";
  width: 8px;
  height: 14px;
  border-right: 3px solid #886e2c;
  border-bottom: 3px solid #886e2c;
  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;
}
/* 2.3 list
------------------------------ */
.date:not(.date--event),
.category {
  font-family: 'Josefin Sans', sans-serif;
  color: #666;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.3;
  letter-spacing: 0.04em;
  letter-spacing: 0.1em;
}
.date--event {
  font-weight: bold;
  letter-spacing: 0.025em;
}
.category:before {
  content: '―';
  margin-right: 8px;
  color: #999;
  font-size: 10px;
  position: relative;
}
.thumb {
  line-height: 0;
  position: relative;
}
.thumb img {
  width: 100%;
  background: #E8E6E0 no-repeat center;
  background-size: cover;
  border-radius: 5px;
}
.list-base-style li:last-child {
  margin-bottom: 0;
}
.list-base-style a {
  display: block;
  color: inherit;
  position: relative;
  color: #222;
}
.list-base-style .date {
  display: inline-block;
  position: relative;
  line-height: 1;
}
.list-base-style .date--event {
  margin: 0 0 3px;
}
.list-base-style .date--event span {
  margin: 0 0 0 3px;
  vertical-align: 1px;
  font-size: 10px;
  font-weight: normal;
}
.list-base-style .tit {
  color: inherit;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.8;
  letter-spacing: 0.025em;
  line-height: 1.75;
}
.list--information li:last-child {
  margin-bottom: 0;
}
.list--information a {
  display: block;
  color: inherit;
  position: relative;
  color: #222;
}
.list--information .date {
  display: inline-block;
  position: relative;
  line-height: 1;
}
.list--information .date--event {
  margin: 0 0 3px;
}
.list--information .date--event span {
  margin: 0 0 0 3px;
  vertical-align: 1px;
  font-size: 10px;
  font-weight: normal;
}
.list--information .tit {
  color: inherit;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.8;
  letter-spacing: 0.025em;
  line-height: 1.75;
}
.list--information li {
  position: relative;
  padding: 15px 0;
}
.list--information .thumb {
  float: left;
  width: 30%;
  margin-right: 15px;
}
.list--information .thumb img {
  background-image: url(../../../tomomiitano/fanclub/common/thumb_default.png);
}
.list--information .list__txt {
  overflow: hidden;
  position: relative;
  top: -4px;
}
.list--information .date {
  margin: 0 0 6px;
}
.list--information .category {
  display: inline-block;
  margin: 0 0 0 6px;
  position: relative;
  top: -1px;
}
.list--information li.new .thumb:before {
  content: 'New';
  display: block;
  background: #d0203f;
  color: #fff;
  height: 30px;
  width: 30px;
  position: absolute;
  top: -15px;
  left: -15px;
  font-size: 10px;
  text-align: center;
  font-weight: 300;
  border-radius: 100px;
  letter-spacing: 0;
  line-height: 3.2;
  letter-spacing: 0.025em;
  font-family: 'Josefin Sans', sans-serif;
}
.list__txt .tit .new:after,
.tit .new:after {
  content: 'New!';
  margin: 0 0 0 8px;
  color: #34ceb5;
  font-family: 'YakuHanJP', '-apple-system', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'Noto Sans Japanese', "メイリオ", sans-serif;
  font-weight: 400;
  letter-spacing: 0.025em;
}
/* menu */
.list--menu {
  border: 0.5px solid rgba(150, 150, 150, 0.5);
  border-left: none;
  border-right: none;
  padding: 0 0 0 5%;
  margin: 0 -5.5% 30px -5.5%;
}
.list--menu li {
  padding-right: 5%;
  position: relative;
}
.list--menu li:not(:last-child) {
  border-bottom: 0.5px solid rgba(150, 150, 150, 0.5);
}
.list--menu span {
  display: block;
  color: inherit;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.8;
  letter-spacing: 0.025em;
  padding: 1em 0;
  position: relative;
}
.list--menu a {
  display: block;
  color: inherit;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.8;
  letter-spacing: 0.025em;
  padding: 1em 0;
  position: relative;
  padding-right: 2em;
}
.list--menu a::after {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border: 1px solid #666;
  border-top: none;
  border-right: none;
  margin: -0.35em 0 0;
  position: absolute;
  right: 0.25em;
  top: 50%;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}
.list--menu label {
  display: block;
  color: inherit;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.8;
  letter-spacing: 0.025em;
  padding: 1em 0;
  position: relative;
  padding-right: 50px;
}
.list--menu .menu__status {
  color: inherit;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.3;
  letter-spacing: 0.04em;
  line-height: 0;
  padding: 0;
  position: absolute;
  right: 0;
  top: 50%;
  opacity: 0.5;
}
.list__more {
  text-align: right;
}
.list__more a {
  letter-spacing: 0.025em;
  display: block;
  color: #222;
  position: relative;
  padding: 0 12px 0 0;
  line-height: 2;
  text-align: right;
  display: inline-block;
  font-family: 'Josefin Sans', sans-serif;
  font-weight: 300;
}
.list__more a:after {
  content: '';
  display: block;
  width: 8px;
  height: 8px;
  border-right: 1px solid #222;
  border-top: 1px solid #222;
  position: absolute;
  top: 50%;
  margin-top: -5px;
  right: 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
/* 2.4 pagenation
------------------------------ */
.block--pager {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 94px;
  padding: 20px 6% 20px 6%;
  font-family: 'Josefin Sans', sans-serif;
}
.block--pager li {
  width: 33.3%;
  width: calc(33.33333333%);
  float: left;
  position: relative;
  height: 20px;
  line-height: 24px;
}
.block--pager a,
.block--pager span {
  display: block;
  position: relative;
  height: 20px;
  line-height: 20px;
  color: #666;
}
.block--pager .pager__item--number {
  text-align: center;
  color: #666;
}
.block--pager .pager__item--older {
  text-align: right;
}
.block--pager .pager__item--newer a:before {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border: 1px solid #666;
  border-top: none;
  border-right: none;
  margin: -0.35em 0 0;
  position: absolute;
  right: auto;
  top: 50%;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  left: 0.25em;
  margin: -0.3em 0 0;
}
.block--pager .pager__item--older a:before {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border: 1px solid #666;
  border-top: none;
  border-right: none;
  margin: -0.35em 0 0;
  position: absolute;
  right: 0.25em;
  top: 50%;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  margin: -0.3em 0 0;
}
.block--pager .pager__item--newer a:after,
.block--pager .pager__item--older a:after {
  position: absolute;
  top: 1px;
}
.block--pager .pager__item--newer a:after {
  content: 'Newer';
  left: 16px;
}
.block--pager .pager__item--older a:after {
  content: 'Older';
  right: 16px;
}
/* back */
.detail__btn {
  margin: 40px 0 0;
  font-family: 'Josefin Sans', sans-serif;
  text-align: center;
}
.detail__btn a {
  position: relative;
  color: #666;
}
.detail__btn a::before {
  content: '';
  display: inline-block;
  width: .6em;
  height: .6em;
  border: 1px solid #666;
  border-top: none;
  border-right: none;
  position: absolute;
  left: -15px;
  top: 2px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.detail__btn a::after {
  content: 'Back';
  color: inherit;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.8;
  letter-spacing: 0.025em;
}
/* 3.0 layout
============================== */
/* 3.1 base
------------------------------ */
body {
  height: 100%;
  color: #222;
  font-family: YakuHanJP, -apple-system, sans-serif;
  font-size: 13px;
  line-height: 1.8;
  word-break: break-word;
  font-variant-ligatures: none;
  -webkit-text-size-adjust: none;
  background: #fff;
}
.wrap {
  position: relative;
  min-height: 100%;
  padding-top: 60px;
}
section {
  padding: 45px 6%;
}
a {
  color: #d0203f;
  text-decoration: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
/* 3.2 header
------------------------------ */
header {
  display: block;
  width: 100%;
  height: 60px;
  border-bottom: 1px solid #e8e6e0;
  background: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9000;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}
header a {
  display: block;
  width: 33%;
  position: absolute;
  top: 52%;
  transform: translateY(-50%);
  left: 6%;
  line-height: 0;
}
header img {
  width: 100%;
}
.drawer__btn {
  display: block;
  width: 50px;
  height: 50px;
  z-index: 9999;
  position: fixed;
  cursor: pointer;
  right: 10px;
  top: 5px;
  opacity: 0;
}
header .item--fc-logo,
header .login__item--status {
  display: none;
}
.page--home.load-finish header,
.load-finish .drawer__btn {
  opacity: 1;
}
.drawer__btn span {
  display: block;
  position: absolute;
  left: 10px;
  width: 30px;
  height: 2px;
  background: #222;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}
.drawer__btn :nth-of-type(1) {
  top: 16px;
}
.drawer__btn :nth-of-type(2) {
  top: 24px;
}
.drawer__btn :nth-of-type(3) {
  top: 32px;
}
body.scrolled-nav .drawer__btn span {
  background: #222;
  box-shadow: none;
}
body.scrolled-nav.menuOpen .drawer__btn span {
  background: #fff;
  box-shadow: none;
}
/* menuOpen */
.menuOpen .drawer__btn span {
  background: #fff;
}
.menuOpen .drawer__btn span:nth-of-type(1) {
  -webkit-transform: translateY(20px) rotate(-45deg);
  transform: translateY(20px) rotate(-45deg);
  top: 4px;
}
.menuOpen .drawer__btn span:nth-of-type(2) {
  left: 60%;
  opacity: 0;
  -webkit-animation: active-menu-bar02 1.2s forwards;
  animation: active-menu-bar02 1.2s forwards;
}
.menuOpen .drawer__btn span:nth-of-type(3) {
  -webkit-transform: translateY(-20px) rotate(45deg);
  transform: translateY(-20px) rotate(45deg);
  bottom: 4px;
  top: auto;
}
.nav--base.nav--free {
  margin: 0 0 20px;
}
.nav--base li {
  display: inline-block;
}
.nav--base.nav--free li {
  width: 50%;
  float: left;
  text-align: left;
}
.nav--base.nav--member li {
  width: 40%;
  text-align: left;
}
.nav--base a {
  display: block;
  color: #222;
  line-height: 1;
  letter-spacing: 0.025em;
  font-family: 'Josefin Sans', sans-serif;
  font-weight: 300;
}
.nav--sns li {
  display: inline-block;
  margin: 0 0 0 10px;
}
/* drawer */
.drawer {
  width: 100%;
  height: 100%;
  position: fixed;
  right: -100%;
  top: 0;
  z-index: 9999;
  background: #2d2b26;
  transition: all .5s ease;
  -webkit-transition: all .5s ease;
  box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0);
}
.drawer .g-nav {
  height: 100%;
  overflow: scroll;
  -webkit-overflow-scrolling: touch;
  padding: 30px 13%;
}
.drawer li {
  position: relative;
  top: 15px;
  display: inline-block;
  width: 48%;
}
.drawer li a {
  color: #fff;
  display: block;
  font-size: 16px;
  font-family: 'Josefin Sans', sans-serif;
  padding: 8px 0;
  width: 110px;
}
.drawer .block--member li a {
  color: #caaf6f;
}
.drawer .nav--login {
  position: relative;
  margin: 36px 0 0 ;
}
.drawer .nav--login li {
  position: relative;
  display: inline-block;
}
.drawer .nav--login li a {
  font-size: 14px;
  letter-spacing: 0.05em;
}
.drawer .nav--login li:first-child::before {
  content: '';
  display: block;
  width: 20px;
  height: 1px;
  background: #bbac89;
  position: absolute;
  top: -21px;
}
.drawer .logo-mark {
  width: 70%;
  text-align: center;
  position: absolute;
  top: 12px;
  left: 0;
  right: -210px;
  margin: 0 auto;
  opacity: 0.03;
  z-index: 0;
  display: none;
}
.drawer .item--fc-logo {
  display: none;
}
.drawer .item--name-logo {
  width: 95%;
  position: absolute;
  top: 10px;
  left: 0;
  right: -320px;
  margin: 0 auto;
  opacity: 0.15;
  z-index: 0;
  display: none;
}
.menuOpen .drawer {
  right: 0;
  box-shadow: 0px 0px 50px 10px rgba(0, 0, 0, 0.05);
}
.menuOpen .drawer .nav__login:before {
  opacity: 1;
  -webkit-transition-delay: 1s;
  transition-delay: 1s;
}
.page--home .drawer .menu-nav__item--home a,
.page--about .drawer .menu-nav__item--about a,
.page--profile .drawer .menu-nav__item--profile a,
.page--information.category-news .drawer .menu-nav__item--news a,
.page--information.category-information .drawer .menu-nav__item--news a,
.page--information.category-ticket .drawer .menu-nav__item--ticket a,
.page--information.category-3 .drawer .menu-nav__item--ticket a,
.page--movie .drawer .menu-nav__item--movie a {
  opacity: 0.5;
}
.page--home .drawer .menu-nav__item--home a:before,
.page--about .drawer .menu-nav__item--about a:before,
.page--profile .drawer .menu-nav__item--profile a:before,
.page--information.category-news .drawer .menu-nav__item--news a:before,
.page--information.category-information .drawer .menu-nav__item--news a:before,
.page--information.category-ticket .drawer .menu-nav__item--ticket a:before,
.page--information.category-3 .drawer .menu-nav__item--ticket a:before,
.page--movie .drawer .menu-nav__item--movie a:before {
  content: '';
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  left: -30px;
  width: 10px;
  height: 10px;
  border-right: 1px solid;
  border-top: 1px solid;
  position: absolute;
  top: 50%;
}
/* 3.3 footer
------------------------------ */
footer {
  position: absolute;
  width: 100%;
  bottom: 0;
  left: 0;
  padding: 20px 6%;
  text-align: center;
  background: #E8E6E0;
}
footer .list--sub-bnr {
  margin: 0 0 30px;
  line-height: 0;
}
footer .list--sub-bnr li {
  float: left;
  width: 50%;
  margin: 0 0 10px;
}
footer .list--sub-bnr li:nth-child(even) {
  padding-left: 2%;
}
footer .list--sub-bnr li:nth-child(odd) {
  padding-right: 2%;
}
footer .list--sub-bnr li a {
  display: block;
}
footer .list--sub-bnr li img {
  border-radius: 5px;
}
footer .list--support-bnr {
  display: none;
  margin: -5px auto 30px;
  line-height: 0;
}
footer .list--support-bnr li {
  display: inline-block;
  width: 29%;
  margin: 0 6% 0 0 ;
}
footer .list--support-bnr li:last-child {
  margin: 0;
}
footer .list--support-bnr li:nth-child(3n) {
  margin-right: 0;
}
footer .list--support-bnr li a {
  display: block;
}
footer .nav--support {
  display: none;
  margin: 0 0 30px;
}
footer .nav--support li {
  display: inline-block;
  float: left;
  width: 50%;
  margin: 0 0 5px;
}
footer .nav--support li a {
  font-size: 11px;
  display: block;
  color: #333;
  text-align: left;
  line-height: 2.5em;
}
footer .copyright {
  color: #aaa;
  font-size: 10px;
}
/* 4.0 page
============================== */
/*
.loading{
	position: fixed;
	width: 100%;
	height: 100%;
	z-index: 9999;
	background: #fff;
	background-size: 100%;
	-webkit-transition: 1s ease 1s;
	transition: 1s ease 1s;
}
.loading .loading--logo {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 60%;
    -webkit-transform: translate(-50%,-50%);
    -moz-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
	-webkit-animation: BlurRescission 1.6s ease forwards;
	-moz-animation: BlurRescission 1.6s ease forwards;
	animation: BlurRescission 1.6s ease forwards;
}
@-webkit-keyframes BlurRescission {
    0%{	-webkit-filter: blur(30px); filter: blur(30px); }
    50%{ -webkit-filter: blur(15px); filter: blur(15px); }
    100%{ -webkit-filter: blur(0); filter: blur(0); }
}
@-moz-keyframes BlurRescission {
    0%{	-webkit-filter: blur(30px); filter: blur(30px); }
    50%{ -webkit-filter: blur(15px); filter: blur(15px); }
    100%{ -webkit-filter: blur(0); filter: blur(0); }
}
@keyframes BlurRescission {
    0%{	-webkit-filter: blur(30px); filter: blur(30px); }
    50%{ -webkit-filter: blur(15px); filter: blur(15px); }
    100%{ -webkit-filter: blur(0); filter: blur(0); }
}
.loading--completed {opacity: 0;}
*/
.block--share {
  float: right;
  color: #666;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.3;
  letter-spacing: 0.04em;
  letter-spacing: 0.1em;
}
.block--share li {
  display: inline-block;
  margin-right: 10px;
}
.block--share li a {
  color: #666;
  font-size: 18px;
}
.block--share .share {
  font-family: 'Josefin Sans', sans-serif;
}
.block--share .lineIco {
  vertical-align: sub;
  margin: 0;
}
.block--share .lineIco svg {
  fill: #666;
}
.dummy {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}
/*  4.1 parts
------------------------------ */
/* utility */
.center {
  text-align: center;
}
.bold {
  font-weight: 600;
}
.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%;
}
.ph {
  text-align: center;
  position: relative;
}
/* typography */
.section-tit {
  color: inherit;
  font-size: 24px;
  font-weight: 300;
  line-height: 1.3;
  letter-spacing: 0.025em;
  font-family: 'Josefin Sans', sans-serif;
  text-align: center;
  margin: 0 0 25px;
}
.txt--sub {
  color: inherit;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.3;
  letter-spacing: 0.04em;
}
.sub-txt-list li {
  color: #888;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.3;
  letter-spacing: 0.04em;
  margin: 0 0 30px;
}
.sub-txt-list li:last-child {
  margin: 0;
}
.point {
  display: none !important;
}
.no-data {
  width: 100% !important;
  text-align: center;
  color: #666;
}
.txt-members {
  display: block;
  font-size: 11px;
  font-family: 'Josefin Sans', sans-serif;
  letter-spacing: 0.04em;
  color: #886e2c;
  margin: 6px 0 0;
}
/* list共通 */
.section--list {
  padding-bottom: 25px;
}
/* detail共通 */
body:not(.page--faq) .section--detail .tit {
  color: inherit;
  font-size: 18px;
  font-weight: 300;
  line-height: 1.75;
  letter-spacing: 0.025em;
  margin: 0 0 15px;
}
body:not(.page--faq) .section--detail .date {
  margin: 0 0 25px;
  display: inline-block;
}
body:not(.page--faq) .section--detail .date--event {
  margin: 0 0 10px;
}
body:not(.page--faq) .section--detail .date .new {
  color: #d0203f;
}
body:not(.page--faq) .section--detail .category {
  margin: 0 5px 0 0;
}
body:not(.page--faq) .section--detail .category span {
  display: inline-block;
  margin: 0 0 0 15px;
  position: relative;
}
body:not(.page--faq) .section--detail .category span::before {
  content: '|';
  position: absolute;
  top: 0;
  left: -10px;
  color: #f1b6de;
}
body:not(.page--faq) .section--detail .txt-members {
  margin: -8px 0 15px;
}
/*  4.2 home
------------------------------ */
.page--home {
  /*
	.area--member .area__inner:before {
		content:'';
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		background: #886e2c url(../static/tomomiitano/fanclub/artist_photo/ph_keyvisual_fc.jpg) no-repeat 80% center;
		background-size: cover;
		background-blend-mode: multiply;
		z-index: -1;
		transition: all 2s ease;
		-webkit-transition-delay: .75s;
		transition-delay: .75s;
	}
	*/
}
.page--home .wrap {
  padding-top: 0;
}
.page--home header {
  background: none;
  border: none;
  opacity: 0;
  transition: all .8s ease;
  -webkit-transition-delay: 1s;
  transition-delay: 1s;
}
.page--home header .item--fc-logo {
  display: none;
}
.page--home header .item--name-logo {
  display: none;
}
.page--home .drawer__btn {
  transition: all .3s ease;
  -webkit-transition-delay: 1s;
  transition-delay: 1s;
}
.page--home:not(.scrolled-nav) .drawer__btn span {
  background: #fff;
  box-shadow: 0px 1px 10px rgba(0, 0, 0, 0.3);
}
.page--home .nav__item--home {
  display: none!important;
}
.page--home footer {
  padding: 45px 6% 20px;
}
.page--home footer .list--support-bnr,
.page--home footer .nav--support {
  display: block;
}
.page--home section {
  position: relative;
  border-top: 1px solid #e8e6e0;
}
.page--home section.section--information,
.page--home section.section--live,
.page--home section.section--media {
  border: none;
}
.page--home .section-tit {
  margin-bottom: 25px;
  line-height: 1em;
  font-size: 24px;
}
.page--home .section--key-visual {
  padding: 0;
  text-align: center;
  height: 500px;
  height: 88.1vh;
  border: none;
}
.page--home .section--key-visual h1 {
  width: 100%;
  position: absolute;
  left: 0;
  overflow: hidden;
  bottom: -1px;
  line-height: 0;
}
.page--home .section--key-visual h1::before {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0;
  -webkit-transition: all .8s ease;
  transition: all .8s ease;
  background: -webkit-linear-gradient(top, rgba(118, 110, 90, 0) 0%, rgba(118, 110, 90, 0.65) 100%);
  background: linear-gradient(to bottom, rgba(118, 110, 90, 0) 0%, rgba(118, 110, 90, 0.65) 100%);
}
.page--home .section--key-visual h1 img {
  width: 100%;
  position: relative;
  bottom: -200px;
  transition: all .8s ease;
}
.page--home .section--key-nav {
  background: #fff;
  text-align: center;
  padding: 30px 0 0;
  border: none;
}
.page--home .section--key-nav .fc-logo {
  margin: 0 0 15px;
}
.page--home .section--key-nav .fc-logo img {
  width: 140px;
}
.page--home .section--key-nav .nav--login {
  padding: 0 0 12px;
}
.page--home .section--key-nav .nav--login li {
  display: block;
  margin-top: 24px;
  font-size: 15px;
}
.page--home .section--key-nav .nav--login li a {
  color: #886E2C;
}
.page--home .section--key-nav .nav--login li:first-child {
  margin: 0;
}
.page--home .section--key-nav .nav--login li:first-child a {
  width: 60%;
  line-height: 48px;
  border-radius: 100px;
  font-size: 15px;
  letter-spacing: 0.1em;
  display: inline-block;
  background: #886E2C;
  color: #fff;
  height: 45px;
}
.page--home .section--key-nav .nav--login li i {
  display: none;
}
.page--home .section--key-nav .fc-logo,
.page--home .section--key-nav .nav--login {
  position: relative;
}
.page--home .section--key-nav .block--expire {
  display: block;
  width: 80%;
  padding: 15px 6%;
  margin: 0 auto;
  background: #876e2c;
  border-radius: 10px;
}
.page--home .section--key-nav .block--expire .tit {
  color: #fff;
  font-size: 15px;
  font-weight: bold;
  margin: 0 0 5px;
}
.page--home .section--key-nav .block--expire .txt {
  color: #fff;
  margin: 0 0 15px;
}
.page--home .section--key-nav .block--expire .btn--main {
  color: #876e2c;
  background: #fff;
}
.page--home .bgSwitch {
  width: 100% !important;
  height: 100%!important;
  background-size: cover!important;
  background-position: left!important;
  transition: all .8s ease;
  -webkit-transition-delay: 1.4s;
  transition-delay: 1.4s;
}
.page--home .slider-nav {
  padding: 25px 0 20px;
  border-bottom: 1px solid #e8e6e0;
  margin: 0 6% 20px;
  line-height: 1;
}
.page--home .slider-nav li {
  font-family: 'Josefin Sans', sans-serif;
  font-weight: 300;
  font-size: 20px;
  letter-spacing: 0.025em;
  text-align: center;
  padding: 0 20px;
  width: auto!important;
  float: none;
  display: inline-block !important;
}
.page--home .slider-nav li.slick-current {
  color: #d0203f;
}
.page--home .slider-nav .slick-list {
  padding: 0!important;
  text-align: center;
}
.page--home .slider-for section {
  padding: 0 0 45px;
}
.page--home .slider-for .section-tit {
  display: none;
}
.page--home .slider-for .list--information {
  padding: 0 6%;
}
.page--home .slider-for .list__more {
  padding-right: 6%;
}
.page--home .section--menu {
  text-align: center;
  padding-top: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #e8e6e0;
}
.page--home .section--menu .g-nav li a {
  font-size: 16px;
  line-height: 2.8em;
  padding: 0 10px;
}
.page--home .section--menu .nav--sns {
  margin: 10px 0 0 ;
}
.page--home .section--menu .nav--sns li a {
  line-height: 1;
  font-size: 22px;
}
.page--home .section--menu .nav--sns li.icon--line {
  position: relative;
  top: 2px;
}
.page--home .area--base {
  background: #fff;
}
.page--home .area--member {
  color: #fff;
  padding: 45px 6%;
}
.page--home .area--member .area__inner {
  border-radius: 10px;
  position: relative;
  overflow: hidden;
  padding: 10px 0;
  -webkit-mask-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA5JREFUeNpiYGBgAAgwAAAEAAGbA+oJAAAAAElFTkSuQmCC);
  mask-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA5JREFUeNpiYGBgAAgwAAAEAAGbA+oJAAAAAElFTkSuQmCC);
}
.page--home .scrolled-fc .area--member .area__inner:before {
  -webkit-filter: blur(5px);
  filter: blur(5px);
  transform: scale(1.1);
}
.page--home .area--member .section--base {
  opacity: 0;
  transition: all 1s ease;
  -webkit-transition-delay: .75s;
  transition-delay: .75s;
  border: none;
  padding: 10px 0;
  position: relative;
  top: 20px;
}
.page--home .area--member.after--login {
  padding: 5px 6% 35px;
}
.page--home .area--member.after--login .section--base {
  opacity: 1;
  padding: 0;
}
.page--home .section--fanclub .fc-logo {
  width: 80%;
  margin: 0 auto 25px;
}
.page--home .area--member.after--login .section--fanclub .fc-logo {
  margin: 0 auto 5px;
  width: 50%;
}
.page--home .area--member.after--login .section--menu li a {
  color: #886e2c;
}
.page--home .section--fanclub .txt {
  line-height: 2em;
  padding: 0 8%;
  margin: 0 0 20px;
  letter-spacing: 0.15em;
}
.page--home .nav--login.login--vertical li {
  display: block;
}
.page--home .nav--login.login--vertical a {
  padding: 22px 0 18px;
  margin: 0 auto;
  text-align: center;
  letter-spacing: 0.15em;
}
.page--home .nav--login.login--vertical a i {
  font-size: 18px;
  position: relative;
  margin-right: 8px;
  top: 3px;
  line-height: 0;
}
.page--home .nav--login.login--vertical li:first-child a {
  width: 250px;
  background: #fff;
  color: #886e2c;
  font-size: 14px;
  font-weight: bold;
  font-variant-ligatures: normal;
  border-radius: 100px;
}
.page--home .section--fanclub .nav--login li:last-child a {
  color: #fff;
  font-size: 11px;
}
.page--home .section--fanclub .nav--login li:last-child a span {
  text-decoration: underline;
}
.page--home .area--member .section--menu {
  border-top: 1px solid rgba(255, 255, 255, 0.25);
}
.page--home .area--member .section--menu .g-nav {
  padding-top: 5px;
}
.page--home .area--member .section--menu li a {
  color: #fff;
}
.page--home .area--member.login .section--menu {
  border: none;
}
.page--home .section--photo {
  padding: 0;
  line-height: 0;
}
.page--home .section--key-nav .nav--login li.login__item--status {
  color: #886e2c;
  font-size: 12px;
  margin: -10px 0;
  text-align: center;
  font-weight: bold;
  line-height: 1.8;
}
.page--home .section--bnr {
  background: #fff;
  padding: 1px 6% 30px;
  border: none;
}
.page--home .section--bnr .bnrList {
  padding: 20px 0;
}
.page--home .section--bnr .bnrList li:not(:last-child) {
  margin: 0 0 15px;
}
.page--home .section--bnr .bnrList li a {
  border-radius: 5px;
  overflow: hidden;
  display: block;
  line-height: 0;
}
.page--home .page--home .bnrList img {
  width: 100%;
}
.page--home .list--pickup {
  margin: 20px 0 0 ;
}
.page--home .list--pickup img {
  display: none;
}
.page--home .list--pickup li {
  text-align: left;
  position: relative;
}
.page--home .list--pickup li a,
.page--home .list--pickup li span {
  display: inline-block;
  font-size: 13px;
  font-weight: 300;
  line-height: 1.8;
  padding: 0 20px 0 0;
  letter-spacing: 0.05em;
  color: #222;
}
.page--home .list--pickup li a::before,
.page--home .list--pickup li span::before {
  content: '';
  display: block;
  width: 8px;
  height: 8px;
  border-right: 1px solid #222;
  border-top: 1px solid #222;
  position: absolute;
  top: 49%;
  margin-top: -3px;
  right: 6px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.page--home .area__tit {
  text-align: center;
  padding: 30px 0 40px;
  line-height: 0;
  width: 76%;
  margin: 0 auto;
}
.page--home .area__tit .logo02 {
  width: 100%;
  margin: 0 0 20px;
}
.page--home .area__tit .logo02--sub {
  width: 60%;
}
.page--home .area--member .list--information li a {
  color: #fff;
}
.page--home .area--member .list__more a {
  color: #fff;
}
.page--home .area--member .category {
  color: #fff;
}
body.scrolled .wrap > .bgSwitch {
  -webkit-filter: blur(10px);
  filter: blur(10px);
  transform: scale(1.05);
}
body.animation--finish .bgSwitch {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}
.load-finish.page--home:not(.scrolled) .section--key-visual h1::before {
  opacity: 1;
}
.load-finish .section--key-visual h1 img {
  bottom: 0;
}
.scrolled-fc .area--member .section--base {
  opacity: 1;
  top: 0;
}
body.scrolled-fc .area--member .area__inner:before {
  -webkit-filter: blur(5px);
  filter: blur(5px);
  transform: scale(1.1);
}
.section--youtube .list--youtube li {
  padding-top: 56.25%;
  margin: 0 0 20px;
  border-radius: 10px;
  overflow: hidden;
}
.section--youtube .list--youtube li:last-child {
  margin-bottom: 0;
}
.section--youtube .list--youtube li iframe {
  background: #222;
  border-radius: 10px;
}
.menuOpen .btn--drawer span {
  background: #000;
  box-shadow: none;
}
.section--media .list--information .category {
  margin-left: 0;
}
.section--media .list--information .category:before {
  display: none;
}
/*  4.3 information
------------------------------ */
.page--info .section--detail {
  padding-top: 30px;
}
.page--info .section--detail .txt {
  border-top: 1px solid #e8e6e0;
  padding: 30px 0 0;
}
.page--info .section--detail h3 {
  font-size: 18px;
  font-weight: bold;
  color: #876e2c;
  margin: 0 0 25px;
  padding: 20px 0 10px;
  border-bottom: 1px solid #bcb091;
}
.page--info .section--detail h4 {
  border-left: 2px solid #876e2c;
  padding: 0 0 0 12px;
  margin: 32px 0 15px 0;
  font-size: 16px;
  font-weight: bold;
}
.page--info .section--detail .article > .article-heading + p,
.page--info .section--detail .article > h3:not(.article-subheading) + p,
.page--info .section--detail .article > .article-subheading + p,
.page--info .section--detail .article > h4:not(.article-subheading) + p {
  margin-top: 0 !important;
}
.page--info .section--detail .article p:first-of-type {
  margin-top: 0 !important;
}
.page--info .section--detail iframe {
  height: 200px !important;
}
.category-Media .category,
.category-5 .category {
  margin-left: 0;
}
.category-Media .category:before,
.category-5 .category:before {
  display: none;
}
/*  4.4 discography
------------------------------ */
.list--discography li:last-child {
  margin-bottom: 0;
}
.list--discography a {
  display: block;
  color: inherit;
  position: relative;
  color: #222;
}
.list--discography .date {
  display: inline-block;
  position: relative;
  line-height: 1;
}
.list--discography .date--event {
  margin: 0 0 3px;
}
.list--discography .date--event span {
  margin: 0 0 0 3px;
  vertical-align: 1px;
  font-size: 10px;
  font-weight: normal;
}
.list--discography .tit {
  color: inherit;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.8;
  letter-spacing: 0.025em;
  line-height: 1.75;
}
.list--discography li {
  display: inline-block;
  width: 46.4%;
  margin: 0 6% 30px 0;
  vertical-align: top;
}
.list--discography li:nth-child(2n) {
  margin: 0 0 30px 0;
}
.list--discography .thumb {
  margin: 0 0 12px;
}
.list--discography .thumb img {
  background: #E8E6E0 no-repeat center;
  background-image: url(../../../tomomiitano/fanclub/common/thumb_default.png);
  /* JS追加後削除 */
  background-size: cover;
}
.list--discography .date {
  color: #666;
}
.list--discography .date span {
  margin: 0 0 0 5px;
}
.list--discography .category {
  display: inline-block;
  margin: 0 0 6px;
}
.list--discography .category::before {
  display: none;
}
.list--discography .tit {
  padding: 0 0 8px;
  line-height: 1.6;
  font-size: 12px;
}
.page--disco .section--detail .block--jacket {
  margin: 0 -6.52% 30px;
}
.page--disco .section--detail .thumb {
  display: block;
  position: relative;
  padding: 0 6%;
  margin: 0 0 35px;
}
.page--disco .section--detail .thumb img {
  background: none;
  border-radius: 0;
}
.page--disco .section--detail figcaption {
  text-align: center;
  color: inherit;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.3;
  letter-spacing: 0.04em;
  margin: 15px 0 0;
}
.page--disco .section--detail .date span {
  margin: 0 0 0 5px;
}
.page--disco .section--detail .slick-slide .thumb {
  padding: 0;
  margin: 0 10px 0 0;
}
.page--disco .section--detail .category {
  margin: 0 0 5px;
  display: block;
}
.page--disco .section--detail .category::before {
  display: none;
}
.page--disco .section--detail .block--comment {
  margin-top: 10px;
  margin-bottom: 40px;
}
.page--disco .section--detail .block--track > li {
  margin: 0 0 40px;
}
.page--disco .section--detail .block--track .tit {
  margin: 0 0 10px;
  color: inherit;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.8;
  letter-spacing: 0.025em;
}
.page--disco .section--detail .list--track {
  margin: 0 0 30px;
  list-style: none;
}
.page--disco .section--detail .list--track li {
  border: none;
  font-size: 12px;
  line-height: 1.5em;
  margin: 0 0 10px;
}
.page--disco .section--detail .list--track li span {
  width: 18px;
  display: inline-block;
  color: #886e2c;
  font-family: 'Josefin Sans', sans-serif;
}
.page--disco .section--detail .list--track li:last-child {
  border-radius: 0;
}
.page--disco .section--detail .list--track li:nth-child(odd) {
  background: none;
}
.page--disco .section--detail .list--track li.discType {
  background: none;
  border-bottom: 1px solid;
  letter-spacing: 0.15em;
  padding: 0 0 9px;
}
.page--disco .section--detail .list--track li .tieup {
  margin-top: 2px;
  font-size: 10px;
  padding-left: 21px;
}
.page--disco .section--detail .block--review {
  color: inherit;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.3;
  letter-spacing: 0.04em;
}
.page--disco .section--detail iframe {
  height: 220px !important;
}
/*  4.5 profile
------------------------------ */
/*  4.6 ticket
------------------------------ */
/*  4.7 blog
------------------------------ */
.page--blog .section--detail {
  padding-top: 30px;
}
.page--blog .section--detail .txt {
  border-top: 1px solid #e8e6e0;
  padding: 30px 0 0;
}
.page--blog .section--detail .ph {
  position: relative;
  padding: 12px 0;
}
.page--blog .section--detail .thumb {
  position: static;
  width: 100%;
}
.page--blog .section--detail .block--pager {
  display: block;
  position: static;
  text-align: inherit;
  padding: 25px 0 0;
  margin: 25px 0 -20px;
  border-top: 1px solid #e8e6e0;
}
.page--blog .section--detail .block--pager .pager-link--next {
  text-align: left;
  width: 50%;
  float: left;
  padding: 0 0 0 4.8%;
}
.page--blog .section--detail .block--pager .pager-link--prev {
  text-align: right;
  width: 50%;
  float: right;
  padding: 0 4.8% 0 0;
}
.page--blog .section--detail .block--pager .pager-link--next a::before {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border: 1px solid #666;
  border-top: none;
  border-right: none;
  margin: -0.25em 0 0;
  position: absolute;
  left: -15px;
  top: 45%;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.page--blog .section--detail .block--pager .pager-link--prev a::before {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border: 1px solid #666;
  border-top: none;
  border-right: none;
  margin: -0.25em 0 0;
  position: absolute;
  right: -15px;
  top: 45%;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}
/*  4.8 movie
------------------------------ */
.page--movie .list--contents li {
  width: 46.4%;
}
.page--movie .list--contents li.new .thumb::before {
  content: 'New';
  display: block;
  background: #d0203f;
  color: #fff;
  font-family: 'Josefin Sans', sans-serif;
  height: 30px;
  width: 30px;
  position: absolute;
  top: -15px;
  left: -15px;
  font-size: 10px;
  text-align: center;
  font-weight: 300;
  border-radius: 100px;
  letter-spacing: 0;
  line-height: 3.2;
}
.page--movie .tit {
  font-size: 14px;
}
.page--movie .date {
  color: #666;
}
.page--movie .section--detail embed {
  width: 800px !important;
  height: 500px !important;
  margin: 0 0 30px !important;
}
.page--movie .section--detail .tit {
  font-size: 20px;
  margin: 0 0 10px;
}
.page--movie .section--detail .date {
  display: block;
  padding: 0 0 20px;
  margin: 0px 0 25px;
  border-bottom: 1px solid #ddd;
}
.page--movie .section--detail .txt--sub {
  color: #888;
}
.page--movie .section--detail .btn {
  margin: 15px 0;
}
.page--movie .section--detail .btn .btn--main {
  display: block;
}
.page--movie .section--detail .btn .btn__link {
  display: block;
  width: 80%;
  margin: 10px auto 0;
  position: relative;
}
.page--movie .section--detail .btn .btn__link::before {
  content: '';
  display: block;
  width: 8px;
  height: 8px;
  border-right: 1px solid #d0203f;
  border-top: 1px solid #d0203f;
  position: absolute;
  top: 50%;
  margin-top: -5px;
  right: 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.page--movie .section--detail .block--player {
  margin: 0 0 15px;
}
.page--movie .section--detail .section-tit {
  font-size: 18px;
  letter-spacing: 0.1em;
}
.page--movie .section--detail .list--step {
  padding: 30px 0 0;
  margin: 25px 0 0;
  border-top: 1px solid #ddd;
}
.page--movie .section--detail .list--step li {
  margin: 0 0 30px;
  padding: 0 0 25px;
  border-bottom: 1px solid #ddd;
}
.page--movie .section--detail .list--step .tit {
  font-size: 16px;
}
.page--movie .section--detail .list--step .tit span {
  display: block;
  font-size: 13px;
  color: #876e2c;
  font-family: 'Josefin Sans', sans-serif;
  margin: 0 0 5px;
}
/*  4.9 latestcontents
------------------------------ */
/*  4.10 faq
------------------------------ */
.page--faq {
  /* 検索 */
}
.page--faq .section-tit {
  font-size: 20px;
  font-family: sans-serif;
}
.page--faq .tit--category {
  font-size: 15px;
  text-align: center;
  margin: 0 0 15px;
}
.page--faq .icon--q,
.page--faq .icon--a {
  display: inline-block;
  width: 26px;
  height: 26px;
  line-height: 30px;
  border-radius: 30px;
  float: left;
  position: relative;
  top: -1px;
  font-size: 13px;
  font-family: 'Josefin Sans', sans-serif;
  text-align: center;
}
.page--faq .icon--q {
  background: #fff;
  color: #8d7538;
}
.page--faq .icon--a {
  background: #d0203f;
  color: #fff;
}
.page--faq .block--search {
  margin: 0 0 60px;
}
.page--faq .block--search input[type="text"] {
  float: left;
  width: 77%;
  margin-right: 3%;
}
.page--faq .block--search input[type="submit"] {
  float: right;
  width: 20%;
  min-width: unset;
  padding: 0;
  height: 45px;
  line-height: 45px;
  border-radius: 3px;
}
.list--faq {
  margin: 0 0 45px;
}
.list--faq li a {
  display: block;
  padding: 14px 12px;
  background: #efece3;
  border-radius: 5px;
  margin: 0 0 10px;
  position: relative;
  top: 0;
  color: #222;
}
.list--faq .tit {
  position: relative;
  padding: 0 0 0 36px;
}
.page--faq .section--detail .block--faq-detail {
  background: #f7ecc8;
  border-radius: 5px;
  margin: 0 0 45px;
  padding: 15px;
}
.page--faq .section--detail .block--faq-detail .icon--q,
.page--faq .section--detail .block--faq-detail .icon--a {
  top: 4px;
}
.page--faq .section--detail dt {
  margin: 0 0 15px;
  font-size: 16px;
}
.page--faq .section--detail .block--faq-detail .txt {
  padding: 0 0 0 36px;
}
.page--faq .section--detail .block--contact a {
  color: #222;
}
/*  4.11 support
------------------------------ */
.page--support .section--detail .section-tit {
  font-size: 20px;
  font-family: sans-serif;
}
.page--support .section--detail .txt {
  margin: 0 0 25px;
}
.page--support .section--detail .list--support dt {
  color: inherit;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.8;
  letter-spacing: 0.025em;
  margin: 0 0 10px;
}
.page--support .section--detail .list--support dd {
  margin: 0 0 25px;
}
.page--support .section--detail .inner-list > li {
  margin: 0 0 15px;
}
.page--support .section--detail .inner-list > li:last-child {
  margin-bottom: 0;
}
.page--support .section--detail .inner-list > li ul {
  margin-top: 5px;
}
.page--support .section--detail .inner-list > li ul li {
  color: inherit;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.3;
  letter-spacing: 0.04em;
  line-height: 1.5;
  margin: 0 0 5px;
}
/*  4.12 questioonnaire
------------------------------ */
.page--questionnaire .section-tit {
  font-size: 20px;
  font-family: sans-serif;
}
.page--questionnaire .ph {
  margin: 0 0 20px;
}
.page--questionnaire .txt {
  margin: 0 0 40px;
}
.page--questionnaire .block--error {
  margin: 0 0 40px;
  color: #d0203f;
}
.page--questionnaire .block--error li {
  margin: 0 0 10px;
}
.page--questionnaire .block--error li:before {
  content: '※';
}



/*  4.13 goods
------------------------------ */
.list--goods li:last-child {
  margin-bottom: 0;
}
.list--goods a {
  display: block;
  color: inherit;
  position: relative;
  color: #222;
}
.list--goods .date {
  display: inline-block;
  position: relative;
  line-height: 1;
}
.list--goods .date--event {
  margin: 0 0 3px;
}
.list--goods .date--event span {
  margin: 0 0 0 3px;
  vertical-align: 1px;
  font-size: 10px;
  font-weight: normal;
}
.list--goods .tit {
  color: inherit;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.8;
  letter-spacing: 0.025em;
  line-height: 1.75;
}
.list--goods li {
  display: inline-block;
  width: 46.4%;
  margin: 0 6% 30px 0;
  vertical-align: top;
}
.list--goods--2 {
  text-align: center;
}
.list--goods--2 li {
  width: 340px;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  margin: 0 20px 0 0;
}
.list--goods--3 li {
  width: 100%;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  margin: 0 20px 0 0;
}
.list--goods li:nth-child(2n) {
  margin: 0 0 30px 0;
}
.list--goods--2 li:nth-child(2n) {
  width: 340px;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  margin: 0 20px 0 0;
}
.list--goods--3 li:nth-child(2n) {
  width: 100%;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  margin: 0 20px 0 0;
}
.list--goods .thumb {
  margin: 0 0 12px;
}
.list--goods .thumb img {
  background: #E8E6E0 no-repeat center;
  background-image: url(../../../tomomiitano/fanclub/common/thumb_default.png);
  /* JS追加後削除 */
  background-size: cover;
}
.list--goods .date {
  color: #666;
}
.list--goods .date span {
  margin: 0 0 0 5px;
}
.list--goods .category {
  display: inline-block;
  margin: 0 0 6px;
}
.list--goods .category::before {
  display: none;
}
.list--goods .tit {
  padding: 0 0 8px;
  line-height: 1.6;
  font-size: 12px;
}



/* login
------------------------------ */
.page--home.status--login .section--key-nav .nav--login {
  padding: 0;
}
.load-finish.status--login .wrap > .bgSwitch {
  transform: translateY(60px);
}
.load-finish.status--login.scrolled .wrap > .bgSwitch {
  transform: translateY(60px) scale(1.1) !important;
}
.page--home.status--login header,
.status--login header {
  background: #886e2c;
  border: none;
}
.page--home.status--login header .item--name-logo,
.status--login header .item--name-logo {
  display: none;
}
.page--home.status--login header .item--fc-logo,
.status--login header .item--fc-logo {
  display: block;
  width: 54px;
  line-height: 20px;
  left: 5%;
}
.status--login header .login__item--status {
  display: block;
  font-size: 11px;
  color: #fff;
  margin: 0 0 0 87px;
  position: absolute;
  top: 11px;
}
.status--login header .login__item--status span {
  font-size: 10px;
}
.status--login .drawer__btn span {
  background: #fff;
}
body.scrolled-nav.status--login .drawer__btn span {
  background: #fff;
}
.page--home.status--login:not(.scrolled-nav) .drawer__btn span {
  box-shadow: none;
}
.status--login .nav--base.nav--member li {
  width: 50%;
  text-align: left;
  float: left;
}
/* error
------------------------------ */
.page--error .tit {
  color: inherit;
  font-size: 18px;
  font-weight: 300;
  line-height: 1.75;
  letter-spacing: 0.025em;
  font-family: 'Josefin Sans', sans-serif;
  text-align: center;
  margin: 0 0 40px;
}
.page--error .txt {
  margin: 0 0 35px;
}
.page--error .btn {
  margin: 10px 0 50px;
}
/* mediascreen
------------------------------ */
/*iphone 6未満*/
/*ipad*/
@media screen and (max-width: 768px) {
  .status--login header .login__item--status {
    margin: 0 0 0 107px;
  }
  .page--disco .section--detail iframe {
    height: 340px !important;
  }
}

.mgT20 { margin-top: 20px }
.mgT25 { margin-top: 25px }
.mgT30 { margin-top: 30px }
.mgT40 { margin-top: 40px }
.mgT50 { margin-top: 50px }

.block_a + .block_a {
  margin-top: 30px;
}
.block--category li span {
  display: block;
  line-height: 1;
  color: #222;
  font-family: 'Josefin Sans', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'Noto Sans Japanese', "メイリオ", sans-serif;
}
.block--category--a {
  margin-bottom: 20px;
  font-size: 16px;
}

.disco-disk-music__text1, .disco-disk-music__text2  {
  font-size: 85%;
}
