@charset "utf-8";

/* =reset
------------------------------------------------------------------------------------------*/
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,
pre,form,fieldset,input,textarea,p,blockquote,th,td,header, section, article, footer, article, aside, time ,nav,a{
margin:0;
padding:0;
}

fieldset,img{
  border:0;
}
address,caption,cite,code,dfn,em,th,var{
font-style:normal;
font-weight:normal;
}
ol,ul{
list-style:none;
}
caption,th{
text-align:left;
}
h1,h2,h3,h4,h5,h6{
font-size:100%;
font-weight:normal;
}
q:before,q:after{
content:'';
}
abbr,acronym{
border:0;
}
p{
text-justify:inter-ideograph;
margin: 0;
}

header, section, article, footer, article, aside, time ,nav { display: block; }

ul{
-webkit-margin-before: 0;
-webkit-margin-after: 0;
-webkit-margin-start: 0;
-webkit-margin-end: 0;
-webkit-padding-start: 0;
}
figure {
display: block;
-webkit-margin-before: 0;
-webkit-margin-after: 0;
-webkit-margin-start: 0;
-webkit-margin-end: 0;
}

button{
background-color: transparent;
border: none;
cursor: pointer;
outline: none;
padding: 0;
appearance: none;
}


/* =base
------------------------------------------------------------------------------------------*/
* { box-sizing: border-box; }
body { background: #000; color: #000; counter-reset: number 0; font-family: 'Noto Sans JP', 'Noto Sans JP IE', sans-serif; font-feature-settings : "palt"; font-size: 16px; line-height: 1.6em; letter-spacing: .1em;}
img { vertical-align: bottom; }
a { color: #000; text-decoration: none; outline: none; }
a:hover { text-decoration: none; opacity: .7;}
a:hover img { opacity: 0.7; filter: alpha(opacity=70); }
.section-wrap p:not(:last-of-type) { margin-bottom: 1em; }

/* =ページトップ
------------------------------------------------------------------------------------------*/
.page_top { margin: 0; position: fixed; right: 100px; bottom: 50px; text-align: center; z-index: 10; }
.page_top a { background: rgba(255,255,255,.8); border: 1px solid #ccc; border-radius: 40px; color: #000; display: block; font-size: 11px; height: 80px; line-height: 80px; transition: all .2s; width: 80px; }

/* = breadcrumb
------------------------------------------------------------------------------------------*/
.breadcrumb { margin: 30px auto ; max-width: 1000px; width: 92%; }
.breadcrumb li { color: #696969; display: inline; }
.breadcrumb li a { font-size: 14px; line-height: 1.2em; text-decoration: underline; }
.breadcrumb li:not(:last-child)::after { content: " > "; color: #696969; }

/* = parts
------------------------------------------------------------------------------------------*/
.pc-none { display: none; }
.sp-none { display: block; }

/* 横並びbox */
.clearfix::after,
.clearfix::before,
.float-box::after,
.float-box::before { content: ""; clear: both; display: block; }
.float-box { width: 102%; margin-bottom: -5%;}
.float-box .box01 { width: 98%; margin-bottom: 5%;}
.float-box .box02,
.float-box .box03,
.float-box .box04 { float: left; margin: 0 2% 5% 0; }
.float-box .box02 { width: 48%; }
.float-box .box03 { width: 31.3%; }
.float-box .box04 { width: 23%; }
.float-box .box01 img,
.float-box .box02 img,
.float-box .box03 img,
.float-box .box04 img { width: 100%; }
.table-box { display: table; width: 100%; }
.table-box .box02,
.table-box .box03,
.table-box .box04 { display: table-cell; vertical-align: middle; }
.table-box .box02 { width: 50%; }
.table-box .box03 { width: 33.3%; }
.table-box .box04 { width: 25%; }
.table-box .box02 img,
.table-box .box03 img,
.table-box .box04 img { width: 100%; }


/* font */
.moreless { font-size: .8em; line-height: 1.4em; }
.less { font-size: .9em; line-height: 1.4em; }
.mid { font-size: 1.1em; line-height: 1em; }
.big { font-size: 1.2em; line-height: 1em; }
.bigger { font-size: 1.3em; line-height: 1em; }
.biggest { font-size: 1.5em; line-height: 1em; }
.font-bold { font-weight: bold; }
.font-normal { font-weight: normal; }
.font-minchou { font-family: "ＭＳ 明朝",serif; font-weight: normal; }
.font-yu-minchou { font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif; font-weight: normal; }
.font-italic { font-style: italic; }
.copyright { font-size: 12px; line-height: 1.4em;}

/* textColor */
.text-red { color: #cc0000; }
.text-white { color: #fff; }
.text-black { color: #000; }
.sat { color: #0b5792; }
.sun { color: #a63646; }

/* textAlign */
.text-left { text-align: left; }
.text-center { text-align: center; }
.text-right { text-align: right; }

/* margin */
.mb-05vw { margin-bottom: .5vw !important; }
.mb-1vw { margin-bottom: 1vw !important; }
.mb-2vw { margin-bottom: 2vw !important; }
.mb-3vw { margin-bottom: 3vw !important; }
.mb-4vw { margin-bottom: 4vw !important; }
.mb-5vw { margin-bottom: 5vw !important; }
.mb-6vw { margin-bottom: 6vw !important; }
.mb-7vw { margin-bottom: 7vw !important; }
.mb-8vw { margin-bottom: 8vw !important; }
.mb-9vw { margin-bottom: 9vw !important; }
.mb-10vw { margin-bottom: 10vw !important; }
.mb-01em { margin-bottom: .1em !important; }
.mb-02em { margin-bottom: .2em !important; }
.mb-03em { margin-bottom: .3em !important; }
.mb-04em { margin-bottom: .4em !important; }
.mb-05em { margin-bottom: .5em !important; }
.mb-06em { margin-bottom: .6em !important; }
.mb-07em { margin-bottom: .7em !important; }
.mb-08em { margin-bottom: .8em !important; }
.mb-09em { margin-bottom: .9em !important; }
.mb-1em { margin-bottom: 1em !important; }
.mb-2em { margin-bottom: 2em !important; }

/* linkButtonBased */
.link-button a { box-sizing: border-box; text-decoration:none;  display: block; border-radius: 100px; font-size: 22px; font-weight: bold; line-height: 1em; margin: 0 auto; padding: 1.5em .2em; position: relative; text-align: center; transition: .1s; width: 100%; max-width: 550px;}
.link-button a:hover { text-decoration: none; opacity: .8;}
.link-button a:active { box-shadow: none; }

/* linkButtonColor */
.link-button a { background: #f16baa; color: #fff; }

/* 16:9 wrap(youteubeとか) */
.video-outer-wrap { margin: 0 auto; width: 100%;}
.video-wrap { overflow: hidden; padding-bottom: 56.25%; position: relative; height: 0px; width: 100%; }
.video-wrap iframe { position: absolute; top: 0; left: 0; height: 100%; width: 100%; }

/* periodBox */
.period-box { background: #f8f8f8; border: 1px solid #cc0000; box-sizing: border-box; color: #cc0000; font-size: 26px; font-weight: bold; line-height: 1.4em; margin: 0 auto 20px; padding: 25px 0; text-align: center; width: 80%; }

/* bottomLineBased */
.solid-line { border-bottom: 1px solid #000; }
.dotted-line { border-bottom: 1px dotted #000; }
.dashed-line { border-bottom: 1px dashed #000; }

/* bottomLinePadding */
.solid-line,
.dotted-line,
.dashed-line { padding-bottom: 16px; }

/* textList(div等で囲む) */
p.text-list,
.text-list ul li { padding: 0 0 3px 1.1em; position: relative; }
p:not(:last-of-child).text-list { margin-bottom: 1em; }
.text-list ul li:not(:last-of-child) { margin-bottom: 5px; }
p.text-list::before,
.text-list ul li::before { content: "※"; position: absolute; left: 0; }
p.text-list-dotted::before,
.text-list-dotted ul li::before { content: "・"; }
p.text-list-circle::before,
.text-list-circle ul li::before { content: "●"; }
p.text-list-square::before,
.text-list-square ul li::before { content: "■"; }
p.text-list-counter,
.text-list-counter ul li { padding-left: 5.1em; }
p.text-list-counter::before,
.text-list-counter ul li::before { counter-increment: number 1; content: "" counter(number) ""; }

/* linkOff */
.link-off a { background: #ccc; border: none; box-shadow: none; pointer-events: none; }
.link-off a::after { display: none!important; }

/* smartphone
------------------------------------------------------------------------------------------*/
@media screen and (max-width: 768px){
  /* =base
  ------------------------------------------------------------------------------------------*/
  body { font-size: 14px; line-height: 1.6em; }

  /* =pagetop
  ------------------------------------------------------------------------------------------*/
  .page_top{ display: none; }

  /* = parts
  ------------------------------------------------------------------------------------------*/
  .pc-none { display: block; }
  .sp-none { display: none; }

  /* 横並びbox */
  .float-box,
  .float-box .box01,
  .float-box .box02,
  .float-box .box03 { width: 100%;}
  .float-box .box02,
  .float-box .box03 { float: none; margin: 0 0 5% 0; }
  .float-box .box04 { width: 48%; }
  .table-box .box02,
  .table-box .box03 { display: block; width: 100%; }
  .table-box .box04 { width: 50%; }


  /* textAlign */
  .sp-text-left { text-align: left; }
  .sp-text-right { text-align: right; }
  .sp-text-center { text-align: center; }

  /* margin */
  .sp-mb-05vw { margin-bottom: .5vw !important; }
  .sp-mb-1vw { margin-bottom: 1vw !important; }
  .sp-mb-2vw { margin-bottom: 2vw !important; }
  .sp-mb-3vw { margin-bottom: 3vw !important; }
  .sp-mb-4vw { margin-bottom: 4vw !important; }
  .sp-mb-5vw { margin-bottom: 5vw !important; }
  .sp-mb-6vw { margin-bottom: 6vw !important; }
  .sp-mb-7vw { margin-bottom: 7vw !important; }
  .sp-mb-8vw { margin-bottom: 8vw !important; }
  .sp-mb-9vw { margin-bottom: 9vw !important; }
  .sp-mb-10vw { margin-bottom: 10vw !important; }

  /* linkButton */
  .link-button a { font-size: 16px; width: 100%;}


  /* periodBox */
  .period-box { font-size: 18px; line-height: 1.2em; margin-bottom: 4vw; padding: .6em 0; width: 90%; }

  /* textList(div等で囲む) */
  .text-list p,
  .text-list ul li { padding-bottom: 2px; }
}

/* css add*/

/* = FixedBg
------------------------------------------------------------------------------------------*/
/* body::before {content:""; display:block; position:fixed; top:0; left:0; z-index:-1; width:100%; height:100vh; background:url(../images/page_background.jpg) center top no-repeat #fff;  background-size:cover; } */

/* = parts
------------------------------------------------------------------------------------------*/
.flex-box{ display: flex; flex-wrap: wrap; width: 100%; margin-bottom: -30px;}
.flex-box .box01 { width: 100%; margin-bottom: 30px;}
.flex-box .box02,
.flex-box .box03,
.flex-box .box04 { margin: 0 0% 30px 0; }
.flex-box .box02 { width: 48%; margin-right: 4%;}
.flex-box .box03 { width: 31.3%; margin-right: 3%;}
.flex-box .box04 { width: 22%; margin-right: 4%;}
.flex-box .box02:nth-of-type(2n),
.flex-box .box03:nth-of-type(3n),
.flex-box .box04:nth-of-type(4n){margin-right: 0;}
.text-link{text-decoration: underline;}
.text-link:hover{text-decoration: none;}
.big-text{font-size: 26px; line-height: 1.4em;}
.mid-text{font-size: 20px; line-height: 1.4em;}
.min-text{font-size: 14px; line-height: 1.4em;}
.marker-text{ background: linear-gradient(transparent 50%, #fffc00 0%);}
.indent-text{padding-left: 1.1em; text-indent: -1.1em;}
.comingsoon{text-align: center; line-height: 1.4em; font-size: 30px;font-family: 'Oswald', sans-serif;}
.more{text-align: right;}
.more a{ position: relative; padding-left: 1em;}
.more a::before{border: 0.4em solid transparent; border-left: 0.6em solid; content: ""; position: absolute; top: calc(50% - 0.26em); left: 0;}
.inline-list li{display: inline-block;}
.inline-list li:not(:last-of-type)::after{content:" / "; white-space: pre-wrap;}
.snslink {display: flex; justify-content: center; align-items: center;}
.snslink li{margin:0 10px;width: 35px;}
.snslink a{display: block;width: 100%;}
.snslink a svg{fill: #fff; display: block; width: 100%;}
@media screen and (max-width: 768px) {
.flex-box{ width: 100%; margin-bottom: -30px;}
.flex-box .box01 { width: 100%; margin-bottom: 30px;}
.flex-box .box02,
.flex-box .box03,
.flex-box .box04 { margin: 0 0 30px 0; }
.flex-box .box02,
.flex-box .box03 { width: 100%; margin-right: 0;}
.flex-box .box04 { width: 48%; margin-right: 4%;}
.flex-box .box02:not(:last-of-type),
.flex-box .box03:not(:last-of-type){margin-right: 0;}
.flex-box .box04:not(:last-of-type){margin-right: 4%;}
.flex-box .box02:nth-of-type(2n),
.flex-box .box03:nth-of-type(3n),
.flex-box .box04:nth-of-type(4n){margin-right: 0%;}
.flex-box .box04:nth-of-type(2n){margin-right: 0;}
.big-text{font-size: 22px;}
.mid-text{font-size: 16px;}
.min-text{font-size: 12px;}
.comingsoon{font-size: 24px;}
.snslink li{margin:0 7px;width: 30px;}
}

/* = wrap
------------------------------------------------------------------------------------------*/
#bgvid {position: fixed; left: 50%; top: 0; min-width: 100%; min-height: 100%; width: auto; height: auto; z-index: -1; transform: translate3d(-50%, 0px, 0px); background-color: #000; }
.main-wrap {display: block; width: 100%;}
.page-in{ padding-top: 60px;min-height: calc(100vh - 197px);}
.main-wrap img{width: 100%;}
.container{box-sizing: border-box; padding: 90px 0;}
.section-wrap{max-width: 1000px; width: 92%; margin: 0 auto; background: #eee; box-sizing: border-box; border-radius: 4px; padding: 35px 30px;}
.section-wrap:not(:last-of-type){margin-bottom: 90px;}
.content-wrap:not(:last-of-type){margin-bottom: 50px;}
@media screen and (max-width: 768px) {
.container{box-sizing: border-box; padding: 50px 0;}
.page-in{min-height: calc(100vh - 137px);}
.section-wrap{padding: 25px 20px;}
.section-wrap:not(:last-of-type){margin-bottom: 50px;}
.content-wrap:not(:last-of-type){margin-bottom: 35px;}
}

/* = heading
------------------------------------------------------------------------------------------*/
.sec-h{text-align: center; margin-bottom: 1.4em; line-height: 1.4em; font-size: 48px;font-family: 'Oswald', sans-serif;}
.con-h{ font-weight: bold; margin-bottom: .6em; line-height: 1em; font-size: 20px;}
@media screen and (max-width: 768px){
.sec-h{ font-size: 32px;}
.con-h{ font-size: 16px;}
}


/* =header
------------------------------------------------------------------------------------------*/
header{text-align: left; position: fixed; z-index: 99; top: 0; width: 100%; height: 60px;background: linear-gradient(to bottom, rgba(23,11,25,0.4) 0%,rgba(23,11,25,0.4) 25%,rgba(23,11,25,0.4) 50%,rgba(23,11,25,0.3) 71%,rgba(23,11,25,0) 100%);}
header .head-logo{margin: 8px 0 0 20px;width: 90%; max-width: 100px; float: left;}
header .head-logo a{display: block;}
header .head-logo a img{width: 100%;}
header .btn-gnav{ display: none;}
header .menu{float: right;margin-right: 10px;}
header .menu-list{width: 100%; margin: 0 10px 0px 0;display: flex; justify-content: space-around;font-family: 'Oswald', sans-serif;}
header .menu-list li{margin: 0 3px;}
header .menu-list li a{color: #fff; position: relative; display: block; text-decoration: none; line-height: 1em; font-size: 14px; padding: 18px 13px 15px;}
@media only screen and (max-width: 768px){
header .head-logo{margin: 10px 0 0 10px; max-width: 80px;}
header .head-logo a{}
header .btn-gnav{ position: fixed; top: 15px; right: 15px; width: 32px; height: 26px; display: block; z-index: 10000;}
header .btn-gnav span{position: absolute; width: 100%; height: 4px; background: #165903; transition: all .2s ease-in-out;}
header .btn-gnav .topline{top: 0;}
header .btn-gnav .middleline{top: 11px;}
header .btn-gnav .bottomline{bottom: 0;}
header .btn-gnav.open .topline{top: 11px; transform: rotate(45deg); opacity: 1;}
header .btn-gnav.open .middleline{opacity: 0;}
header .btn-gnav.open .bottomline{bottom: 11px; transform: rotate(-45deg); opacity: 1;}
header .menu{position: fixed; width: 100%; height: 100vh; z-index: 1000; float: none; margin-right: 0; background: rgba(0, 0, 0, 0.9); transition: all .2s; left: -100%;}
header .menu.open{left: 0%;}
header .menu-list{position: fixed; display: block; background-color: #fff; width: 0; height: 100vh; padding: 50px 0 0 0; right: -200px; top: 0;}
header .menu.open .menu-list{ width: 200px; margin: 0; right: 0;transition: 600ms cubic-bezier(0.835, 0.010, 0.000, 1.000); transition-timing-function: cubic-bezier(0.835, 0.010, 0.000, 1.000);}
header .menu-list li{margin: 0; text-align: center;}
header .menu-list li a{ color: #000; font-size: 20px;}
header .menu-list li a::after {content: none;}
}

/* =foot
-----------------------------------------------------------------------------------------*/
footer { color: #fff; text-align: center; width: 100%;  margin: 0 auto; padding: 50px 0; }
footer p { font-size: 12px; line-height: 1em;}
@media only screen and (max-width: 768px){
footer { padding: 30px 0; }
}

/* = mainImage
------------------------------------------------------------------------------------------*/
#main-img { width: 100%; margin-top: 60px; max-height: 912px; height: 47.5vw; background-image: url(../images/main_background.jpg); background-position: center center; background-size: contain; position: relative; background-repeat: no-repeat;}
#main-img h2 { position: absolute; max-width: 250px; left: 50%; top: calc(50% - -16%); transform: translate3d(-50%, -50%, 0); width: 13.2vw;}
#main-img img { width: 100%;}
@media only screen and (max-width: 768px){
#main-img h2 { width: 18vw;}
}
/* = live
------------------------------------------------------------------------------------------*/
#live .live-list{border-bottom:1px solid #ccc;}
#live .live-list:not(:last-of-type){margin-bottom: 15px;}
#live .live-list a{display: block; padding-bottom: 15px;}
#live .live-list a .live-detail{display: flex; flex-wrap: wrap; width: 100%;}
#live .live-list a .live-detail dt,
#live .live-list a .live-detail dd{font-size: 18px; line-height: 1em; }
#live .live-list a .live-detail dt{font-weight: bold; margin-right: 4em;}
#live .live-list a .live-detail dd{}
#live .detail-h{ font-family: 'Oswald', 'Noto Sans JP', 'Noto Sans JP IE', sans-serif; font-size: 30px; line-height: 1.4em; font-weight: bold; margin-bottom: .4em;}
#live .day-place{font-size: 20px; line-height: 1.4em; margin-bottom: .8em;}
#live .poster{max-width: 550px; margin: 0 auto;}
@media only screen and (max-width: 768px){
#live .live-list a .live-detail dt,
#live .live-list a .live-detail dd{font-size: 16px; width: 100%;}
#live .live-list a .live-detail dt{ margin: 0 0 .6em;}
#live .detail-h{font-size: 24px;}
#live .day-place{font-size: 16px;}
}

/* = release
------------------------------------------------------------------------------------------*/
#release .release-box{display: flex; flex-wrap: wrap; width: 100%; }
#release .release-box .release-left{width: 50%; margin-right: 4%;}
#release .release-box .release-right{width: 46%;}
#release .release-box .release-right .right-inner-wrap:not(:last-of-type){margin-bottom: 15px;}
#release .release-box .release-right .release-ttl{ font-family: 'Oswald', sans-serif; font-size: 20px; line-height: 1em; margin-bottom: .6em;padding-bottom: .8em; border-bottom: 1px solid;}
#release .release-box .release-right .songs li{font-size: 14px; line-height: 1.8em;}
#release .buttonlink{text-align: right;}
#release .buttonlink a{position: relative; box-sizing: border-box; padding: 0.2em 1.6em .4em; border-radius: 100px; background: #000; color: #fff;}
#release .buttonlink a:after{position: absolute; content: ""; width: 6px; height: 6px; border-top: 1px solid #fff; border-right: 1px solid #fff; -webkit-transform: translate3d(0,-50%,0)rotate(45deg); transform: translate3d(0,-50%,0)rotate(45deg); right: 10px; top: 50%;}
@media only screen and (max-width: 768px){
#release .release-box .release-left{width: 80%; margin:0 auto 20px;}
#release .release-box .release-right{width: 100%;}
#release .release-box .release-right .release-ttl{ font-size: 18px;}
}

/* = movie
------------------------------------------------------------------------------------------*/
#movie .movie-list li:not(:last-of-type){margin-bottom: 30px;}
@media only screen and (max-width: 768px){
#movie .movie-list li:not(:last-of-type){margin-bottom: 20px;}
}

/* = bio
------------------------------------------------------------------------------------------*/
#bio .prof img{margin-bottom: 15px;}

@media only screen and (max-width: 768px){

}

/* = contact
------------------------------------------------------------------------------------------*/
#contact .form-wrap{max-width: 550px; margin:0 auto; }
.wpcf7-form-control-wrap{display: block; width: 100%;}
.wpcf7-text{ width: 100%; box-sizing: border-box; padding: 5px;}
.wpcf7-textarea{ width: 100%; box-sizing: border-box; padding: 5px;}
.wpcf7-not-valid-tip,
.wpcf7-response-output.wpcf7-validation-errors {color: #cc0000; font-weight: bold; }
.wpcf7-submit{cursor: pointer;background: #c00; color: #ffffff; border-radius: 4px; font-size: 16px; line-height: 1em; padding: 12px 20px; border:none; box-sizing: border-box; font-weight: bold; width: 100%;}
.wpcf7-submit:hover{opacity: .7;}
@media only screen and (max-width: 768px){

}

/* ページネーションの親要素 */
#pagination {
    text-align: center; /* ページネーションを中央に配置 */
}

/* ページリンクのスタイル */
#pagination a {
    display: inline-block;
    margin: 0 3px; /* ページリンクの間隔を調整 */
    padding: 5px 10px;
    border: 1px solid #ccc;
    background-color: #f9f9f9;
    text-decoration: none;
}

/* アクティブなページのスタイル */
#pagination .current {
    font-weight: bold;
    display: inline-block;
    padding: 5px 10px;
    border: 1px solid #ccc;
    background-color: #eee;
    text-decoration: none;
}

/* 前後のページへの移動リンクのスタイル */
#pagination .prev, #pagination .next {
    font-weight: bold;
}

/* ホバーエフェクト */
#pagination a:hover {
    background-color: #ddd;
}

#vdbanner{opacity: 0!important; pointer-events: none!important; display: none!important; height: 0!important;}
.grecaptcha-badge { visibility: hidden; }

@view-transition {
  navigation: auto;
}
