@charset "utf-8";

/* ====================================

	=LOVE OFFICIAL SITE

======================================= */

/* base
================================ */
.pc{ display: none !important; }
a { color: #000; outline: none; -webkit-transition: all .3s ease; transition: all .3s ease; }
body{ letter-spacing: 0.05em;}


/* header
================================= */
#header {
	width: 100%;
	background: #fff;
	padding: 15px 0;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 999;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
}
h1#logo{
	position: absolute;
	top: 24px;
	left: 20px;
	left: 6vw;
	z-index: 100;
}
h1#logo a{ display: block;  }
h1#logo svg{  width: 100px; height: 36px; }

/* navBtn */
#navBtn {
	width: 35px;
	height: 10px;
	position: fixed;
	top: 33px;
	right: 30px;
	z-index: 1000;
	cursor: pointer;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
}
#navBtn span {
	display: inline-block;
	position: absolute;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #fff;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
}
#navBtn span:nth-of-type(1) { top: 0; }
#navBtn span:nth-of-type(2) { top: 10px; }
#navBtn::after {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	content: '';
	width: 40px;
	height: 40px;
	margin: -20px 0 0 -22px;
	border-radius: 50%;
	border: 2px solid transparent;
	transition: all .75s;
}
.black #navBtn span{ background: #666; }
.menuOpen #menu{ height: 100%; -webkit-transition: all .6s ease; transition: all .6s ease; }
.menuOpen #navBtn{ transform: rotate(225deg); -webkit-transform: rotate(225deg); -webkit-transition: all .3s ease; transition: all .3s ease; }
.menuOpen #navBtn span:nth-of-type(1) { top: 6px; transform: rotate(90deg); -webkit-transform: rotate(90deg); }
.menuOpen #navBtn span:nth-of-type(2) { top: 6px; }
.menuOpen #navBtn span{ background: #fff; }

/* headerNavWrap */
#headerNavWrap{
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	right: -100%;
	z-index: 1000;
	overflow: hidden;
	-webkit-transition: all .5s ease;
	transition: all .5s ease;
}
#navCover,
#headerNavWrap .navCover{
	display: none;
	width: 100%;
	height: 100%;
	background: none;
	position: absolute;
	top: 0;
	right: 0;
	opacity:0;
	cursor: pointer;
	-webkit-transition: all .5s ease;
	transition: all .5s ease;
	z-index: 1000;
}
#headerNavWrap .navCover{ display: block; opacity:1; background: none; z-index:10; }
#headerNavWrap #headerNav{
	width: 100%;
	background: #ea6c81;
	height: 150%;
	padding: 90px 0 0 20px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	position: absolute;
	top: -12%;
	right: -30%;
	z-index: 100;
	transform: rotate(12deg);
	padding: 19vh 0 0 20px;
}
#headerNavWrap #headerNav ul{ transform: rotate(-12deg); position: relative; top: 8%; left: 12%; }
/*
#headerNavWrap #headerNav .sns{ display: inline-block; margin-right: 2%;}
#headerNavWrap #headerNav .sns a{ font-size: 18px; }
*/
#headerNavWrap #headerNav .sns{ display: inline-block; height: 30px; vertical-align: middle; margin-right: 12px;}
#headerNavWrap #headerNav .sns a{ font-size: 23px; }
#headerNavWrap #headerNav .sns a img{ width: auto; height: 25px; }
#headerNavWrap #headerNav .sns.ameba{ margin-left: -4px; vertical-align: -6.5px; }
#headerNavWrap #headerNav .sns.ameba a{ padding-top:0;}


#headerNavWrap #headerNav  li{ margin-bottom: 10px; position: relative; }
#headerNavWrap #headerNav a{
	display: block;
	color: #fff;
	font-size: 13px;
	text-decoration: none;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
	font-weight: 100;
	letter-spacing: 0.15em;
}
#headerNavWrap #headerNav a svg{ display: none; }
#headerNavWrap #headerNav .globalNav a:hover{ color:#ff5fa2; -webkit-transition: color .3s ease; transition: color .3s ease; }
#headerNavWrap #headerNav .globalNav li.logo a:hover{ opacity: 0.5; -webkit-transition: opacity .3s ease; transition: opacity .3s ease; }
.menuOpen #headerNavWrap{ right: 0; }


/* layout
================================ */
/* more backLink */
.more{ font-size: 10px; position: absolute; bottom: -50px; bottom: -17vw; right: 0; }
.back{ text-align: center; margin-top: 30px;}
.more a, .back a{ display: inline-block; text-decoration: none; letter-spacing: 0.1em; position: relative; }
.more svg, .back svg{ display: inline-block; width: 19px; height: 9px; margin-left: 6px; position: relative; }
.back svg{ transform: rotate(180deg); -webkit-transform: rotate(180deg); margin-left: 0; margin-right: 6px; }

/* youtube */
.youtubeBox{ height: 0; position: relative; padding-bottom: 56.25%; overflow: hidden; }
.youtubeBox iframe,
.youtubeBox object,
.youtubeBox embed{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}


/* home
================================ */

/* cmn
--------------------- */
#home #container{
	background: url(/static/equallove/official/cmn/bg_stripe.png) center;
	background-size: 3px;
}
#home #logo{ display: none; }
#home section{
	background: #fff;
	position: relative;
	padding: 90px 7% 0;
	margin-bottom: 100px;
	margin-bottom: 24vw;
}
#home section .inner{ width: 100%; margin:0 auto; position: relative; z-index: 10; }
h2.sectionTit{ font-size: 16px; letter-spacing: 0.7em; margin-bottom: 90px; position: relative; }
h2.sectionTit::after,
h2.sectionTit::before{
	display: block;
	content: '';
	width: 16px;
	height: 1px;
	background: #000;
	left: 0;
	position: absolute;
	bottom: -21px;
}
h2.sectionTit::after{ bottom: -24px;}
.tit{ font-size: 13px; }
.date{ font-size: 10px;letter-spacing: 0.1em; margin-bottom: 8px;}
.infoList [class^="cat"],
.infoDetail [class^="cat"],
.contentsList [class^="cat"],
.discoDetail [class^="cat"]{
	display: inline-block;
	text-align: center;
	font-size: 10px;
	line-height: 0;
	border: 0.5px solid #999;
	padding: 9px 7px 7px;
	margin-bottom: 0;
	margin-right: 5px;
}
.new{ display: inline-block; font-size: 11px; color: #fb4968; margin-left: 5px;}

/* bg */
#home #schedule,
#home #twitter{
	background: none;
	padding-bottom: 50px;
	padding-bottom: 24vw;
	margin-bottom: 60px;
	margin-bottom: 10vw;
}
#info::after,
#movie::before,
#movie::after,
#twitter::after{
	content: '';
	display: block;
	width: 106%;
	height: 50%;
	height: 57vh;
	background: #fff;
	transform: rotate(-15deg) skew(-15deg);
	-webkit-transform: rotate(-15deg) skew(-15deg);
	position: absolute;
	bottom: -60px;
	bottom: -21vw;
	left: -3%;
	z-index: 1;
}
#movie::before{ bottom: inherit; top: -50px; top: -13vw; }
#twitter::after{ height: 31vw; bottom: -280px; bottom: -18vw; }
#home #movie{ padding: 30px 0 0; }

/* infoList */
.infoList li:not(:last-child),
.contentsList li:not(:last-child){ margin-bottom: 25px; }
.infoList li a,
.contentsList li a{ display: block; text-decoration: none;}
.infoList li a svg{ display: none; }
.infoList li a .thumb,
.contentsList li a .thumb{ width: 24%; float: left; border: 1px solid #f0f0f0; margin-right: 4%; }

.contentsList li a .thumb img{
	display: block;
	width: 100%;
	background: no-repeat center;
	background-size: cover;
	-webkit-background-size: cover;
}

.infoList li a .text,
.contentsList li a .text{ overflow: hidden; line-height: 160%; word-break: break-all; text-align: justify; }

/* categoryList */
.categoryList{ margin: 0 0 100px -14px; margin: 0 0 6vw -14px; }
.categoryList li{ display: inline-block; 	font-size: 11px; letter-spacing: 0.05em; }
.categoryList li a{ display: block; text-decoration: none; padding: 0 14px; }
.categoryList li .current{padding: 0 14px;}


/* heroImg
--------------------- */
#heroImg,
#heroImg #bg,
#heroImg #bg div{ height: 715px; height: calc(100vh - 70px); }
#heroImg #bg img{
	width: 100%;
	width: 96vw;
	height: 100%;
	background: no-repeat center bottom;
	background-size: contain;
	-webkit-background-size: 100% auto;
	margin-left: 2vw;
	transform: scale(1.2);
	-webkit-transform: scale(1.2);
	-webkit-transition: all .8s ease-out;
	transition: all .8s ease-out;
}
#home #heroImg{ padding: 0; margin: 0 auto;}
#heroImg .heroImgBox{
	width: 54%;
	height: 24%;
	margin-top: -40%;
	margin-left: -27%;
	position: absolute;
	left: 50%;
	top: 50%;
}
#heroImg .heroImgBox a{
	display: block;
	width: 90px;
	position: absolute;
	top: 10px;
	top: 9%;
	left: 23%;
	z-index: 10;
}
#heroImg .heroImgBox svg{ width: 100%; fill:#a5ffcb; }
#heroImg .heroImgBox #logo1115 svg{ width: 100%; fill:#909090;}
#heroImg .heroImgBox #logo220428 svg{ width: 100%; fill:#F4DEEB;}
#heroImg .heroImgBox #logo220905 svg{ width: 100%; fill:#FFFFFF;}
#heroImg .heroImgBox #logo230616 svg{ width: 100%; fill:#00d9f3;}

#heroImg .heroImgBox a svg{ width: 100%; height: 10px;}
#heroImg .heroImgBox a:hover{ opacity: 0.5; }
#heroImg .heroImgBox h1{ display: block; width: 100%; position: absolute; right: 0; }
.bt,.br,.bb,.bl{
	display: block;
	background: #fff;
	position:absolute;
	z-index: 10;
	-webkit-transition: all .6s ease-out .4s;
	transition: all .6s ease-out .4s;
}
.bt,.bb{ width: 100%; height: 10px; height: 3vw;}
.br,.bl{ width: 10px; width: 3vw;height: 100%; }
.bt,.bl{ top:0; left:0;}
.bb,.br{ bottom:0; right: 0;}

.bl{ left:-40px; left: -3vw; }
.br{ right:-40px; right: -3vw; }
.bt{ top:-40px; top: -3vw; }
.bb{ bottom:-40px; bottom: -3vw; }

.loaded #heroImg #bg img{ transform: scale(1); -webkit-transform: scale(1); }
.loaded .bl{ left: 0; }
.loaded .br{ right: 0; }
.loaded .bt{ top: 0; }
.loaded .bb{ bottom: 0; }


/* bnrArea
--------------------- */
#home #bnrArea{ padding: 0 10px; padding: 0 3vw; margin-bottom: 0; }

/* slick */
.slick-dots{ display: none; width: 81%; text-align: left; margin: 10px auto 0; }
.slick-dots li{display: inline-block; width: 6px; margin: 0 5px;}
.slick-dots li:first-child{ margin-left: 0;}
.slick-dots li button{
	width: 6px;
	height: 6px;
	border: none;
	text-indent: -9999px;
	background: #ccc;
	padding: 0;
	border-radius: 10px;
}
.slick-dots li.slick-active  button{ background:#000; }
.slick-slide{ margin: 0 5px; }
.slick-prev.slick-arrow{
	background: none;
	border: none;
	position: relative;
	text-indent: 9999px;
	height: 50px;
	position: absolute;
	z-index: 20;
	top: 50%;
	margin-top: -26px;
	left: -86px;
	width: 26px;
}
.slick-next.slick-arrow {
	background: none;
	border: none;
	position: relative;
	text-indent: 9999px;
	height: 50px;
	position: absolute;
	z-index: 20;
	top: 50%;
	margin-top: -32px;
	right: -85px;
	width: 25px;
}
.slick-prev.slick-arrow::before,
.slick-prev.slick-arrow::after,
.slick-next.slick-arrow::before,
.slick-next.slick-arrow::after{
	content: '';
	display: block;
	width: 2px;
	height: 15px;
	background: #f3efe0;
	position: absolute;
	top: 0;
	left: 13px;
}
.slick-prev.slick-arrow::before{ transform: rotate(45deg); -webkit-transform: rotate(45deg); }
.slick-prev.slick-arrow::after{ transform: rotate(-45deg); -webkit-transform: rotate(-45deg); top: 10px;}
.slick-next.slick-arrow::before{ transform: rotate(-45deg); -webkit-transform: rotate(-45deg); }
.slick-next.slick-arrow::after{ transform: rotate(45deg); -webkit-transform: rotate(45deg); top: 10px;}
.slick-list { z-index: 30; }


/* info
--------------------- */
#home #info{ padding-top: 60px; }


/* schedule
--------------------- */
#schedule .infoList .date{ float: left; width: 23%; text-align: center; line-height: 100%; margin-right: 4%; }
#schedule .infoList .md{
	display: inline-block;
	font-weight: 100;
	font-size: 23px;
	font-size: 7.6vw;
	letter-spacing: 0.03em;
	margin-bottom: 13px;
}
#schedule .infoList .year{
	display: block;
	font-size: 11px;
	font-size: 2.8vw;
	letter-spacing: 0.08em;
	text-align: center;
}
#schedule .infoList li:not(:last-child){ margin-bottom: 35px; }
#schedule .infoList li a .text{ float: left; width:73%; margin-top: -8px; margin-top: -3vw; }
#schedule .infoList [class^="cat"]{ margin-bottom: 8px; }
#schedule .more{ bottom: -50px; bottom: -14vw; }


#schedule .calendarHeader,
#schedule .calendar .weekHeader,
#schedule .calendar .calendarBody{
	display: flex;
	display: webkit-flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
#schedule .calendar .weekHeader div{
	font-size: 13px;
	padding-bottom: 5px;
}
#schedule .calendar .weekHeader div,
#schedule .calendar .calendarBody div > div{
	width: calc( ( 100% / 7 ) - 1px);
	text-align: center;
	border-right: 0.5px solid #000;
	border-bottom: 0.5px solid #000;
}
#schedule .calendar .calendarBody > div{
	width: 100%;
	display: flex;
	display: webkit-flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: 0;
}
#schedule .calendar .weekHeader div{ border: none; border-bottom: 0.5px solid #000; }
#schedule .calendar .week > div:nth-child(1){ border-left: 0.5px solid #000; }
#schedule .calendar .weekHeader div:nth-child(6),
#schedule .calendar .week > div:nth-child(6) .date{ color: #64a4f3; }
#schedule .calendar .weekHeader div:nth-child(7),
#schedule .calendar .week > div:nth-child(7) .date{ color: #f95d5d; }

#schedule .calendar .calendarBody .cell{
	min-height: 100px;
	text-align: left;
	padding: 0 5px 5px;
}
#schedule .calendar .calendarBody .cell > div{
	width: 100%;
	border: none;
}
#schedule .calendar .calendarBody .cell > div:not(:last-child){
	margin-bottom: 5px;
}
#schedule .calendar .calendarBody .cell > div a{
	display: block;
	text-align: left;
	text-decoration: none;
	font-size: 8px;
	line-height: 140%;
	word-break: break-all;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
}
.cell a{ color: #000; }
.cell a span{
	display: inline-block;
	font-size: 8px;
	padding: 3px 4px 2px;
	line-height: 1;
	margin-bottom: 4px;
}
.cell a .cat{ color:#fff; }
.cell a .tit{
	font-size: 12px;
	line-height: 140%;
	word-break: break-all;
}
#schedule .calendar .calendarBody .cell > div a:hover{ opacity: 0.6; }
.form__checkbox label p {
	font-size: 11px;
	font-weight: 300;
	line-height: 1.1;
	letter-spacing: 0.06em;
	display: block;
	padding: 0.5em 1em;
	position: relative;
	cursor: pointer;
	color: #aaa !important;
	border: 1px solid #aaa !important;
	border: 1px solid;
	border-radius: 20px;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
}
.form__checkbox li label p:hover { color: #fff; }
.form__checkbox li:nth-child(1) label p { color: #f9769f; }
.form__checkbox li:nth-child(1) label p:hover { background: #f9769f; color: #fff !important; border-color: #f9769f !important;}
.form__checkbox input[type="checkbox"] {
	-webkit-appearance: none;
	width: 0;
	height: 0;
	opacity: 0;
	position: absolute;
}
.form__checkbox.form__error { color: #f33; }
.form__checkbox :checked ~ p{ background: #f9769f;  color: #fff !important; border-color: #f9769f !important;}
.form__checkbox :checked ~ p:hover{ opacity: 0.5; }

.calendarHeader{ margin-bottom: 50px; }
.calendarHeader li{ width: calc( (100% / 3 ) - 0.1% ); }
.calendarHeader li a{
	display: inline-block;
	font-size: 14px;
	text-decoration: none;
	position: relative;
	top: 9px;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
	left:0;
}
.calendarHeader li div{ opacity: 0.3; }
.calendarHeader li svg{
	width: 18px;
	height: 11px;
	padding-left: 5px;
	position:relative;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
	left:0;
}
.calendarHeader li:nth-child(1) a{
	right:0;
	left: inherit;
}
.calendarHeader li:nth-child(1) svg{
	transform: rotate(-180deg);
	-webkit-transform: rotate(-180deg);
	right:0;
	left: inherit;
}
.calendarHeader li:nth-child(1){ text-align: left; }
.calendarHeader li:nth-child(2){ text-align: center; }
.calendarHeader li:nth-child(2) .year{ display: inlnie-block; padding-right: 5px; }
.calendarHeader li:nth-child(2) .month{ font-size: 46px; font-weight: 300; }
.calendarHeader li:nth-child(2) .month_en{ display: inlnie-block; padding-left: 5px; }
.calendarHeader li:nth-child(3){ text-align: right; }
.form--horizontal li{ display: inline-block; margin: 0 2px 10px; }
.calendarHeader li:nth-child(1) a:hover{ right: 10px; }
.calendarHeader li:nth-child(1) a:hover svg{ right: 5px; }
.calendarHeader li:nth-child(3) a:hover{ left: 10px; }
.calendarHeader li:nth-child(3) a:hover svg{ left: 5px; }

.scheduleList .calendarHeader{
	border-bottom: 1px solid #ddd;
	padding-bottom: 30px;
	margin-bottom: 30px;
}
.scheduleList .infoList a .tit{ color: #000; }
.scheduleList .infoList .date{ margin-top: 12px; width: 28px; width: 2.4vw;}
.scheduleList .infoList .text{
	position: relative;
	top: -19px;
	margin-left: 11%;
}
.scheduleList .infoList li > div:not(.text){
	position: relative;
	top: -20px;
	left: 11%;
	width: 89%;
}
#schedule .scheduleList .infoList .date { width: 8%; }
#schedule .scheduleList .infoList .year { font-size: 20px; font-size: 2vw; }
#schedule .scheduleList .infoList .md { font-size: 4.1vw; }
#schedule .scheduleList .infoList li:not(:last-child) { margin-bottom: 0; }

.scheduleList .infoList li a{
	padding-top: 20px;
	border-bottom: 1px solid #ddd !important;
	padding-bottom: 20px;
}

#schedule .btn{
	position: absolute;
	right: 7%;
	margin-top: -8.5vw;
}
.btn .change{
	display: block;
	width: 38px;
	height: 38px;
	font-family: "Comfortaa";
	font-weight: 600;
	font-size: 19px;
	line-height: 100%;
	text-decoration: none;
	text-align: center;
	background: #000;
	color: #fff;
	border-radius: 33px;
	padding: 10px 0 10px;
}
.btn .change:hover{
	opacity: 0.5;
}
.btn .change i{
	display: block;
	margin-bottom: 2px;
}



/* movie
--------------------- */
#movie li{ position: relative; }
#movie .movieList .thumb{ width: 100%; }
#movie .movieList .thumb img{
	display: block;
	width: 100%;
	background: no-repeat center;
	background-size: cover;
	cursor: pointer;
}
#movie .movieList .thumb::after{
	content:'';
	display: block;
	width: 65px;
	height: 65px;
	background: url(/static/equallove/official/cmn/ico_play.png) no-repeat center;
	background-size: contain;
	margin-left: -32.5px;
	margin-top: -32.5px;
	position: absolute;
	top: 50%;
	left: 50%;
}

#home #movie h2.sectionTit{ padding: 0 7%; }
#home #movie h2.sectionTit::after,
#home #movie h2.sectionTit::before{ left: 7%; }
#home #movie .more{ right: 7%; }


/* twitter
--------------------- */
#home #twitter{ margin: 0; padding-bottom: 110px; padding-bottom: 36vw; }
#home .twArea{ background: #fff; padding: 20px 0; box-sizing: border-box;}
#home #twitter iframe{ display: block !important; height: 300px !important; margin: 0 auto; }

/* footer
--------------------- */
#home .footerImg{ line-height: 0;position: relative; }
#home #footer{ z-index: 10;}
.footerImg{ position: relative; }
#footer{ width: 100%; text-align: center; padding: 40px 7% 20px; position: relative; }
#footer h1{
	width: 19%;
	width: 15vw;
	margin: 0 auto;
	position: relative;
	bottom: 30px;
}
#footer p{ display: inline-block; }
#footer a:hover{ text-decoration: none; }
#footer .bnrArea{ margin: 0 auto 20px; }
#footer .bnrArea li{ display: block; float: left; width: 48%; margin-right: 4%; }
#footer .bnrArea li:nth-child(even){ margin-right: 0; }
#footer .mail{ display: block; font-size: 13px; letter-spacing: 0.05em; margin-bottom: 20px; }
#footer .mail a{ text-decoration: none; }
#footer .mail a i{ display: inline-block; margin-right: 10px;}
#footer .yoani{ display: block; width: 50%; margin: 0 auto; }
#footer .copy{ font-size: 10px; }
.detail #footer{ position: absolute; bottom:0; }


/* detail
================================ */
/* cmn
--------------------- */
.detail section{
	width: 100%;
	position: relative;
	z-index: 10;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	padding: 100px 7% 170px;
	padding: 34vw 7% 50vw;
	margin: 0 auto;
}

.detail h2.sectionTit{ font-size: 19px;  letter-spacing: 0.6em; text-align: center; margin-bottom: 50px; margin-bottom: 19vw; }
.detail h2.sectionTit::before,
.detail h2.sectionTit::after{ display: none; }

.detail #container::before,
.detail #container::after{
	content: '';
	display: block;
	width: 105%;
	height: 100px;
	height: 36vw;
	background: url(/static/equallove/official/cmn/bg_stripe.png) center;
	background-size: 4px;
	top: -39px;
	top: -12vw;
	left: -3%;
	transform: rotate(-15deg) skew(-15deg);
	-webkit-transform: rotate(-15deg) skew(-15deg);
	padding-bottom: 16%;
	padding-bottom: 13vw;
	position: absolute;
	z-index: 1;
}
.detail #container::after{ height: 320px; padding: 0; top: inherit; bottom: -210px; }
.detail #footer *{ position: relative; z-index:10;}
.detail #footer h1,
.detail #footer .bnrArea{ display: none; }

.detail #navBtn span{ background: #000; }
.detail.menuOpen #navBtn span{ background: #fff; }

/* pulldownBox */
.pulldownBox{ border:none; position: relative; margin: 0 0 45px; }
.pulldownBox select {
	-webkit-appearance: none;
	-moz-appearance: button;
	width: 100%;
	height: 45px;
	background: #f8f8f8;
	color: #000;
	font-size: 14px;
	font-weight: normal;
	text-align: center;
	border-radius: 0;
	box-sizing: border-box;
	line-height: 24px;
	padding: 0 10px;
	position: relative;
	border: none;
}
.pulldownBox:before {
	content: "\f107";
	font-family: 'FontAwesome';
	position: absolute;
	right: 10px;
	top: 50%;
	z-index: 10;
	color: #000;
	line-height: 0;
	font-size: 20px;
}

/* info
--------------------- */
.infoDetail .tit{ font-size: 18px; line-height: 140%;word-break: break-all; text-align: justify; margin-bottom: 5px;}
.infoDetail .date{ margin-bottom: 5px; }
.infoDetail .text{ margin-top: -10px; }



/* shareList */
.shareList{
	color: #000;
	font-size: 12px;
	text-align: right;
	margin: 5px auto 30px;
	position: relative;
}
.shareList ul{ display: inline-block; position: relative; }
.shareList li{ display: inline-block; margin-right: 10px;vertical-align: middle; font-size: 10px;}
.shareList a{display: block; background: none;line-height:30px; text-align: center;color:#000;font-size: 15px; position: relative; margin-bottom: 3px;}
.shareList .fa{vertical-align:-2px;}
.shareList .facebook .fa{ position: relative; left: -1px; }
.shareList .lineIco a{ height: 22px; }
.shareList .lineIco a:before {
	content: '';
	display: inline-block;
	width: 14px;
	height: 14px;
	background: no-repeat url(/static/equallove/cmn/ico_line.png);
	background-size: contain;
	-webkit-background-size: contain;
	top: 0;
}

/* schedule
--------------------- */
#schedule.detail .infoDetail .tit{ margin-bottom: 0; }
#schedule.detail .infoDetail .date{ line-height: 100%; margin-bottom: 20px; }
#schedule.detail .infoDetail .md{ display: inline; font-weight: 100; font-size: 18px; letter-spacing: 0.1em; }
#schedule.detail .infoDetail .year{ display: inline-block; font-size: 11px; text-align: center; margin-right: 5px; }
#schedule.detail .infoDetail .new{ font-size: 12px; margin-left: 0; }
.infoDetail [class^="cat"]{ vertical-align: 3px; }


/* profile
--------------------- */
.profileList li{ width: 48%; float: left; margin: 0 4% 20px 0; }
.profileList li:nth-child(even){ margin-right: 0; }
.profileList a { display: block; text-decoration: none;}
.profileList .thumb img{ background: no-repeat center top; background-size: cover; }
.profileList .name { font-size: 13px;}
.renewIcon .profileList .name { margin: 0 0 8px; }
.profileList .name span{ display: block; font-size: 9px; }
.profileList .snsList li { 
    margin: 0 auto;
    margin-right: 6px;
    width: 22px;
}
.profileList .snsList a { 
    width: 20px;
    font-size: 17px;
    margin: 0;
    height: 20px;
    border-radius: 4px;
    text-align: center;
    line-height: 21px;
    color: #000;
}
.profileList .snsList .instagram { margin-left: -5px; }
.profileList .snsList a img { width: 20px; }
.profileList .snsList .fa { vertical-align: super; }
.statusArea .snsList .fa { margin-left: 2px; }
.statusArea .snsList .instagram .fa { vertical-align: -1px; margin-left:0;}


.profDetail .ph { width: 80%; margin: 0 auto 20px; 	position: relative; }
.profDetail .ph img{
	width: 100%;
	background-size: contain;
	background-repeat: no-repeat;
	-webkit-touch-callout:none;
	-webkit-user-select:none;
	-moz-touch-callout:none;
	-moz-user-select:none;
	user-select:none;
	aspect-ratio: 2/3;
  padding-top: 66.666%;/*aspect-ratio未対応ブラウザ用*/
}
.profDetail .statusArea{ width: 80%; margin: 0 auto; }
.profDetail .statusArea p{ font-size: 22px; text-align: center; margin-bottom: 30px; }
.profDetail .statusArea span{ display: block; font-size: 10px; letter-spacing: 0.05em; }
.profDetail dl{ 
	margin: 0 auto 20px; 
	display: flex;
	flex-wrap: wrap;
}
.profDetail dt{
	margin-bottom: 7px;
	width: 60px;
	font-size: 11px;
}
.profDetail dd{ 
	margin-bottom: 7px;
	width: calc(100% - 60px);
}
.profDetail .snsList li{ width: 30px; margin-right: 5px;}
.profDetail .snsList a{
	display: block;
	font-size: 18px;
	color: #fff;
	background: #000;
	border-radius: 6px;
	text-align: center;
	position: relative;
}
.profDetail .snsList a img{ width: 100%; }
.profDetail .snsList .twitter a,
.profDetail .snsList .instagram a { top: -10px; }
.profDetail .snsList .twitter a i{ vertical-align: -2px; }
/* about
--------------------- */
#about .lead{ font-size: 22px; line-height: 140%; text-align: justify; margin-bottom: 20px; }
#about .lead br{ display: none;}
#about p{ margin-bottom: 20px; }
#about .messeage{ border: 10px solid #eee; padding: 20px; margin-top: 40px; }
#about .messeage span{ display: block; text-align: right; }


/* producer
--------------------- */
#producer{ display:block; }
#producer .ph{ width: 80%; margin: 0 auto 30px; position:relative; }

#producer .textArea{ overflow: hidden; }
#producer .textArea .name span{ display: inline-block;  }
#producer dt{ float: left; }
#producer dd{ padding-left: 70px; margin-bottom: 10px; }
#producer dl + p{ line-height: 1.9; margin-bottom: 10px;}
.snsList li{ display:inline-block; margin-right: 6px; }
.snsList li a{ display:block; font-size: 18px;}
.snsList li a img{ display: block; width: 16px; }

#producer .snsList { margin-bottom: 15px; }
.snsList li{ margin-right: 16px; }
.snsList li:last-child{ margin-right: 0; }
.snsList li a { font-size:24px; }
.snsList li a img { width: 21px;}

#producer h2{ height: auto;  background: none;  }
#producer h2 span{ padding-top: 0;  }
#producer .textArea .name{ font-size: 24px; text-align: center; line-height: 1.5; margin-bottom: 30px; }
#producer .textArea .name span{ display: block; font-size: 10px; font-weight: 300; letter-spacing: 0.1em;}
#producer dl{ width: 65%; width: 10.5rem;  line-height: 1; margin: 0 auto 10px; }
#producer .snsList{ text-align: center; margin-bottom: 30px;}
#producer .snsList + p{ text-align: justify; }

/* faq
-------------------------------- */
.faqList dt { line-height: 160%; word-break: break-all; padding: 15px 6% 15px 1.8em; }
.faqList dd{ padding: 0 0 15px 1.8em; }
.faqList dt:before,
.faqList dd:before { margin: 0 8px 0 0; font-weight: 400; font-size: 16px; vertical-align: -1px; }
.faqList dt .switch{ right: 5%; top: 50%; }
#faq .faqTit{ font-size: 1.3rem; margin-bottom: 15px; }


/* discography
--------------------- */
#disco .txtBlock{ text-align: center; }
#disco .discoDetail [class^="cat"]{ margin: 0 auto 10px; }
#disco .jacketList {margin: 0 0 30px;}
#disco .jacketList .text{margin:10px 0 0;font-size:0.75rem;}
#disco .jacketList li{margin-right: 10px}
#disco .jacketList img{ width: 100%;}
#disco .ph {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	line-height: 0;
	margin: 0 0 30px;
	position: relative;
}
#disco .txtBlock .tit{ font-size: 18px; text-align: center; line-height: 140%; margin-bottom: 10px; }
#disco .txtBlock .cat { text-align: center; margin-bottom: 10px;}
#disco .txtBlock .cat span{ margin:0; }
#disco .txtBlock .cat:after {display: none;}
#disco .txtBlock .date{
	font-size: 11px;
	text-align: center;
	margin-bottom: 30px;
}
#disco .txtBlock .buy a {
	display: inline-block;
	padding: 5px 16px;
	font-size: 11px;
	border: 1px solid #fff;
	color: #fff;
	font-family: "Open Sans","Work Sans", sans-serif;;
	font-weight: 400;
	border-radius: 100px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	text-decoration: none;
	-webkit-appearance: none;
	line-height: 1.6em;
	white-space: inherit;
	text-align: center;
}
#disco .trackListOuter {margin-top: 30px;}
#disco .trackList {margin: 0 0 30px;}
#disco .trackList li{
	border: none;
	font-size: 12px;
	line-height: 1.5em;
	margin: 0 0 10px;
}
#disco .trackList li span{
	width: 1em;
	display: inline-block;
	font-weight: 400;
}
#disco .trackList li:last-child{
	border-radius:0;
}
#disco .trackList li:nth-child(odd){
	background:none;
}
#disco .trackList li.discType{
	background: none;
	border-bottom: 0.5px solid;
	font-family: "Open Sans","Work Sans", sans-serif;
	letter-spacing: 0.15em;
	padding: 0 0 9px;
}
#disco .trackList li .tieup{
	margin-top: 2px;
	font-size: 10px;
	padding-left: 21px;
}
#disco .txt.comment{ text-align: left; word-break: break-all;}

/* error
--------------------- */
#error h2{ opacity:0; }
#error .lead{ font-size: 2rem; margin-bottom: 30px; font-weight: 100; }


/* android 
=================================== */
.andOS #heroImg .heroImgBox svg{ display: none !important; }
.andOS .heroImgBox .noSVG{ display: block; }
.andOS #heroImg, .andOS #heroImg #bg, .andOS #heroImg #bg div { height: 100%; }
.andOS #heroImg .heroImgBox{ margin-top: -20%;}
.andOS #heroImg .heroImgBox svg { height: 64px; }
.andOS .infoList [class^="cat"],
.andOS .infoDetail [class^="cat"],
.andOS .contentsList [class^="cat"],
.andOS .discoDetail [class^="cat"] { border-width: 1px; }
.andOS #schedule .infoList li a .text{ width:73%; float:left; }
.andOS h1#logo svg { display: none;}
.andOS h1#logo .noSVG { display: block; width: 100px; }




/* TABLET
=================================== */
@media screen and (min-width:600px) and ( max-width:960px) {

	/* cmn
	--------------------- */
	body { font-size: 16px; line-height: 1.7; }
	.tit{ font-size: 16px; }
	.date { font-size: 12px; }
	.infoList [class^="cat"], .infoDetail [class^="cat"], .contentsList [class^="cat"], .discoDetail [class^="cat"] { font-size: 11px; }
	.new { font-size: 12px; }
	.more { font-size: 14px; bottom: -110px; bottom: -15vw; }
	.back { margin-top: 60px; }


	/* sectionTit */
	h2.sectionTit { font-size: 26px; margin-bottom: 110px; }
	h2.sectionTit::after, h2.sectionTit::before { width: 20px; bottom: -30px; }
	h2.sectionTit::after { bottom: -34px; }

	/* infoList */
	.infoList li a .thumb, .contentsList li a .thumb { width: 20%; }


	/* header
	--------------------- */
	#navBtn { top: 60px; right: 60px;}
	#headerNavWrap #headerNav a{ font-size: 16px; }
	#headerNavWrap #headerNav{ right: -50%; }


	/* footer
	--------------------- */
	#footer { padding: 40px 7%; }
	#footer .mail { font-size: 16px; }


	/* home
	--------------------- */
	#home section{ padding: 200px 7% 0; }

	/* heroImg */
	#heroImg .heroImgBox { width: 30%; height: 15%; margin-top: -34%; margin-left: -15%; }

	/* schedule */
	#schedule .infoList .date{ width: 20%; margin-right: 2%; }
	#schedule .infoList .md { letter-spacing: 0; font-size: 52px; font-size: 7.1vw; margin-bottom: 24px; }
	#schedule .infoList .year { font-size: 20px; font-size: 2.8vw; letter-spacing: 0.05em; margin-left: -0.5em; }
	#schedule .infoList li:not(:last-child) { margin-bottom: 75px; }

	/* twitter */
	#home #twitter iframe{ width: 90% !important; height: 500px !important;}

	/* detail
	--------------------- */
	.detail section{ padding-bottom: 330px; padding-bottom: 43vw; }
	.detail h2.sectionTit { font-size: 30px; letter-spacing: 0.4em; }
	h1#logo { top: 54px; }
	h1#logo svg { width: 120px; height: 36px; }
	.detail #container::after {  bottom: -150px; }
	.pulldownBox { margin: 0 0 70px; }
	.pulldownBox select { height: 67px; font-size: 20px; padding: 0 20px; }


	/* information */
	.infoDetail .tit{ font-size: 30px; }
	.infoDetail .new { font-size: 16px; }
	#schedule.detail .infoDetail .md { font-size: 30px; }
	#schedule.detail .infoDetail .year { font-size: 14px; }
	.shareList { font-size: 12px; margin: 10px auto 60px;}
	.shareList a { line-height: 22px; font-size: 22px; }

	/* discography */
	#disco .ph{ margin: 0 0 80px; }
	#disco .ph img{ width: 100%;}
	#disco .txtBlock .tit{ font-size: 30px; }
	#disco .txtBlock .date { font-size: 16px; }

	/* about */
	#about .lead { font-size: 30px; line-height: 140%; margin-bottom: 40px;}


	/* profile */
	.profDetail .ph { margin: 0 auto 40px; }
	.profDetail .statusArea p{ font-size: 30px; margin-bottom: 40px; }
	.profDetail dt { font-size: 12px; padding-top: 3px; }


	/* producer */
	#producer .textArea .name{ font-size: 30px; }
	#producer .textArea .name span { font-size: 11px; }
	#producer dl { width: 32%; width: 14rem; margin: 0 auto 20px;}
	#producer dd { padding-left: 90px; margin-bottom: 15px; }

}

/* ��ME
=================================== */

.infoMe header, .infoMe #footer .offer{display: none;}

.infoMe h1#logo svg {
    width: 75px;
    height: 30px;
}

.infoMe .infoList{border-top: 1px solid #ddd;}
.infoMe .infoList li{
  margin: 0;
  padding:0;
  border-bottom: 1px solid #ddd;
}
.infoMe .infoList li a{
  padding:20px 0 17px;
}
.infoMe .infoList li .date{color: #666;}