@charset "UTF-8";

/*==================================
WebFonts
==================================*/
@import url('https://fonts.googleapis.com/earlyaccess/notosansjapanese.css');
@import url('https://fonts.googleapis.com/css?family=Roboto+Condensed:400,700');

/*==================================
Common Layout
==================================*/
html {
font-size: 14px;
}

body {
height: 100%;
margin: 0;
padding: 0;
font-size: 100%;
line-height: 160%;
font-family:'Noto Sans Japanese','Hiragino Kaku Gothic ProN','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
font-weight: normal;
color: #1c1c1c;
-webkit-text-size-adjust: 100%;
background-color: #fff;
letter-spacing: 0.1em !important;
}

h1,h2,h3 {
padding: 0;
margin: 0;
line-height: 160%;
}

p {
line-height: 180% !important;
padding-bottom: 15px;
margin: 0;
}

a {
color: #1c1c1c;
text-decoration: underline;
}

a img {
border: none;
}

strong {
font-weight: 600;
}

.caption {
display: block;
font-size: 85% !important;
}

.inline_caption {
display: inline;
font-size: 85% !important;
}

.device_width {
display: block;
width: 980px;
padding: 0;
margin: 0 auto;
}

article {
display: block;
padding: 0;
margin: 0 auto;
}

section {}

.fixed_title {
display: block;
width: 12px;
height: 100%;
background-image: url(../img/fixed_title.png);
background-position: center center;
background-repeat: no-repeat;
background-size: 12px;
position: fixed;
right: 30px;
}

.color_red {
color: #e40037;
}

/*==================================
Content
==================================*/
#mainvisual {
display: block;
width: 100%;
padding: 0;
margin: 0 0 30px 0;
background-color: #fff;
}

#mainvisual .main_jkt {
display: block;
width: 100%;
height: 750px;
padding: 0;
margin: 0 auto;
background-image: url(../img/mainvisual.jpg);
background-position: center top;
background-repeat: no-repeat;
background-size: contain;
}

#readarea {}

nav {
display: block;
height: 30px;
padding: 15px 0;
margin: 0 auto;
text-align: center;
background-color: #fff;
}

nav.fixed {
position: fixed;
top: 0;
left: 0;
z-index: 2;
width: 100%;
border-bottom: 1px solid #c9c9c9;
}

nav a {
display: inline-block;
width: 200px;
height: 30px;
padding: 0;
margin: 0 8px;
background-position: center center;
background-repeat: no-repeat;
background-size: 200px;
background-color: #1c1c1c;
}

nav a.nav_about {
background-image: url(../img/nav_about.png);
}

nav a.nav_column {
background-image: url(../img/nav_column.png);
}

nav a.nav_musicvideo {
background-image: url(../img/nav_musicvideo.png);
/* width: 180px; */
}

nav a.nav_player {
background-image: url(../img/nav_player.png);
width: 240px;
}

nav a.nav_tour {
background-image: url(../img/nav_tour.png);
}

nav a.nav_vinyl {
background-image: url(../img/nav_vinyl.png);
}

nav .tooltip {
display: block;
width: 280px;
height: 70px;
padding: 0;
margin: 35px 0 0 -50px;
background-image: url(../img/tooltip.png);
background-position: center center;
background-repeat: no-repeat;
background-size: contain;
position: absolute;
}

nav.fixed .tooltip {
display: none;
}

h1 {
display: block;
width: 560px;
height: 510px;
padding: 0;
margin: 0 auto;
background-image: url(../img/main_title.png);
background-position: center 90px;
background-repeat: no-repeat;
background-size: contain;
}

#readarea .read_copy {
display: block;
width: 680px;
padding: 45px 0 30px 0;
margin: 70px auto 0 auto;
text-align: center;
background-image: url(../img/read_copy.png);
background-position: center center;
background-repeat: no-repeat;
background-size: contain;
font-size: 110%;
font-weight: 500;
}

#detail {
padding-top: 120px;
}

#detail .inner_box {
display: block;
width: 900px;
padding: 30px 0;
margin: 0 auto;
border: 2px solid #1c1c1c;
}

#detail .inner_box h3 {
display: block;
height: 40px;
padding: 0;
margin: 45px 0 60px 0;
background-image: url(../img/detail_title.png);
background-position: center center;
background-repeat: no-repeat;
background-size: contain;
}

#detail_list {
display: block;
padding: 0;
margin: 0 50px;
}

.detail_jkt {
display: block;
width: 280px;
padding: 0;
text-align: center;
float: left;
}

.detail_jkt a.jkt_link {
display: block;
width: 280px;
height: 280px;
background-image: url(../img/detail_jkt.jpg);
background-position: left top;
background-repeat: no-repeat;
background-size: 280px;
}

.detail_jkt a.btn {
display: inline-block;
padding: 10px 30px;
margin: 0 auto 30px auto;
background-color: #1c1c1c;
color: #fff;
font-weight: 500;
text-decoration: none;
border-radius: 30px;
cursor: pointer;
}

.detail_jkt a:hover.btn {
background-color: #e40037;
}

.detail_jkt a .btn_download {
display: block;
width: 170px;
height: 16px;
background-image: url(../img/btn_download.png);
background-position: center center;
background-repeat: no-repeat;
background-size: 170px;
}

.detai_songlist {
display: block;
padding: 0;
margin: 0 0 30px 0;
float: right;
}

.detai_songlist li {
display: block;
padding: 0 0 15px 0;
font-size: 116%;
}

.detai_songlist li span {
font-size: 65% !important;
margin-left: 10px;
}

/* 曲順数字の調整 */
ol {
counter-reset: number;
list-style: none;
margin: 0;
padding: 0;
}

ol li {}

ol li:before {
counter-increment: number;
content: counter(number)'. ';

display: inline-block;
width: 30px;
text-align: right;
margin-right: 10px;
}

.detai_songlist .caption_area {
display: block;
padding: 0;
margin: 15px 0;
font-size: 80%;
}

.detai_songlist .caption_area p {
padding: 0;
margin: 0 0 2px 0;
}

#detail .bg_black {
display: inline-block;
background-color: #1c1c1c;
color: #fff;
padding: 2px 8px;
margin-bottom: 30px;
text-align: center;
}

#detail .detail_center {
display: block;
padding: 0;
margin: 50px;
text-align: center;
}

#detail .detail_center h4 {
padding: 0;
margin: 0 0 15px 0;
font-size: 110%;
font-weight: 500;
line-height: 160%;
}

#detail .detail_center .inner_songlist {
display: block;
padding: 0;
}

#detail .detail_center .inner_songlist ol {
display: block;
margin: 5px 0 0 0;
}

#detail .detail_center .inner_songlist li {
display: inline-block;
margin: 0;
font-size: 90%;
letter-spacing: .02em;
}

#detail .detail_center .inner_songlist li:before {
margin-right: 4px;
}

#detail .text_outline {
display: inline-block;
padding: 5px 10px;
margin: 0 0 10px 0;
border: 1px solid #1c1c1c;
}

#detail .inner_halfbox {
display: block;
width: 380px;
padding: 0;
margin: 0 0 45px 40px;
float: left;
}

#detail .inner_halfbox:first-of-type {
margin-left: 0;
}

#detail .inner_halfbox p {
font-size: 90%;
}

#detail .bluray01 {
display: block;
width: 380px;
height: 230px;
padding: 0;
margin: 0 0 15px 0;
background-image: url(../img/bluray01.jpg);
background-position: center top;
background-repeat: no-repeat;
background-size: contain;
}

#detail .bluray02 {
display: block;
width: 380px;
height: 230px;
padding: 0;
margin: 0 0 15px 0;
background-image: url(../img/bluray02.jpg);
background-position: center top;
background-repeat: no-repeat;
background-size: contain;
}

#novelty {
display: block;
padding: 0;
margin: 120px auto 0 auto;
background-color: #f3f3f3;
}

#novelty h2 {
display: block;
height: 50px;
padding: 0;
margin: 90px auto 30px auto;
background-image: url(../img/novelty_ttl.png);
background-position: center top;
background-repeat: no-repeat;
background-size: contain;
}

#novelty .title_area {
display: block;
padding: 0;
margin: 0 auto;
text-align: center;
}

#novelty_detail {
display: block;
width: 900px;
padding: 30px 0;
margin: 30px auto 150px auto;
border: 4px solid #1c1c1c;
font-size: 110%;
background-color: #fff;
}

#novelty_detail h3 {
display: block;
width: 500px;
height: 20px;
padding: 0;
margin: 30px auto 0 auto;
background-image: url(../img/novelty_detail_ttl.png);
background-position: center center;
background-repeat: no-repeat;
background-size: contain;
}

#novelty_detail .novelty_jkt {
display: block;
width: 720px;
list-style: none;
padding: 30px 0 0 0;
margin: 0 auto;
font-size: 80%;
text-align: left;
}

#novelty_detail .novelty_jkt li {
display: block;
width: 300px;
padding: 345px 0 0 0;
margin: 30px;
background-position: center top;
background-repeat: no-repeat;
background-size: 214px;
float: left;
}

#novelty_detail .novelty_jkt li.horizontal {
padding: 260px 0 0 0;
background-size: 300px;
}

#novelty_detail .novelty_jkt li a {
text-decoration: none;
}

#novelty_detail .novelty_jkt li a:hover {
text-decoration: underline;
}

#novelty_detail .novelty_jkt li .caption {
line-height: 160%;
}

#novelty_detail li.jkttype_a {
background-image: url(../img/novelty_jkt_a.png);
}

#novelty_detail li.jkttype_b {
background-image: url(../img/novelty_jkt_b.png);
}

#novelty_detail li.jkttype_c {
background-image: url(../img/novelty_jkt_c.png);
}

#novelty_detail li.jkttype_d {
background-image: url(../img/novelty_jkt_d.png);
}

#novelty_detail li.jkttype_e {
background-image: url(../img/novelty_jkt_e.png);
background-position: left top;
width: 250px;
margin-right: 0;
}

#novelty_detail .novelty_jkt .type_e_caption {
padding: 0;
}

#novelty_detail .novelty_jkt .type_e_caption ul {
padding: 0;
margin: 20px 0 0 0;
}

#novelty_detail .novelty_jkt .type_e_caption li {
width: 380px;
padding: 0;
margin: 0 0 8px 0;
}

#novelty_detail .novelty_inner {
width: 660px;
margin: 15px auto;
/* font-size: 85%; */
}

/*
#photoarea {
display: block;
height: 580px;
padding: 0;
margin: 60px 60px 120px 60px;
background-image: url(../img/photoarea.jpg);
background-position: center top;
background-repeat: no-repeat;
background-size: contain;
}

#message {
display: block;
padding: 30px;
margin: 60px 60px 150px 60px;
border-bottom: 2px solid #1c1c1c;
border-top: 2px solid #1c1c1c;
font-size: 95%;
}

#message h3 {
padding: 0;
margin: 15px 0;
height: 16px;
background-image: url(../img/message_ttl.png);
background-position: left center;
background-repeat: no-repeat;
background-size: contain;
}

#message h4 {
padding: 0;
margin: 0 0 15px 0;
height: 16px;
background-image: url(../img/message_sign@2x.png);
background-position: right center;
background-repeat: no-repeat;
background-size: contain;
}
*/

#tour_info {
padding: 150px 0;
background-color: #231815;
color: #fff;
text-align: center;
}

#tour_info h2 {
display: block;
height: 140px;
padding: 0;
margin: 0;
background-image: url(../img/tour_ttl.png);
background-position: center center;
background-repeat: no-repeat;
background-size: contain;
}

#tour_info table {
width: 720px;
margin: 90px auto 60px auto;
border-collapse:  collapse;
text-align: left;
}

#tour_info table th {
width: 40px;
border: 2px solid #c9c9c9;
background-position: center center;
background-repeat: no-repeat;
background-size: 20px;
}

#tour_info table td {
border: 2px solid #c9c9c9;
padding: 20px 40px;
font-size: 116%;
}

#tour_info table td p.caption {
padding: 10px 0 0 0;
border-top: 1px solid #c9c9c9;
font-size: 75% !important;
}

#tour_info table th.osaka {
background-image: url(../img/tour_osaka.png);
}

#tour_info table th.nagoya {
background-image: url(../img/tour_nagoya.png);
}

#tour_info table th.sapporo {
background-image: url(../img/tour_sapporo.png);
}

#tour_info table th.tokyo {
background-image: url(../img/tour_tokyo.png);
}

#tour_info table th.fukuoka {
background-image: url(../img/tour_fukuoka.png);
}

#tour_info .tour_badge {
display: block;
width: 920px;
height: 200px;
padding: 0;
margin: -40px 0 0 0;
position: absolute;
/* background-color: rgba(0,0,0,.3); */
background-image: url(../img/tour_badge.png);
background-position: right top;
background-repeat: no-repeat;
background-size: contain;
}

#tour_info h3 {
padding: 0;
margin: 0 0 30px 0;
font-size: 150%;
font-weight: 500;
line-height: 180%;
}

#tour_info .text_outline {
display: inline-block;
padding: 4px 20px;
margin: 15px 0;
border: 1px solid #fff;
}

#tour_info .ticket_reservation {
margin: 90px 0 0 0;
}

#tour_info .ticket_reservation a.btn {
display: inline-block;
padding: 15px 200px;
margin: 0 auto 30px auto;
background-color: #e40037;
color: #fff;
font-size: 200%;
text-decoration: none;
border-radius: 30px;
cursor: pointer;
}

#notes {
display: block;
padding: 120px 0;
margin: 0 auto;
background-color: #ef6687;
background-image: url(../img/notes_grd_top.png),url(../img/notes_grd_bottom.png);
background-position: center top,center bottom;
background-repeat: repeat-x;
background-size: 20px;
}

#notes_detail {
display: block;
width: 720px;
padding: 0;
margin: 0 auto;
}

#notes_detail h2 {
height: 80px;
margin: 0 0 30px 0;
background-image: url(../img/notes_ttl.png);
background-position: center center;
background-repeat: no-repeat;
background-size: contain;
}

#notes_detail .notepad {}

#musicvideo {
padding: 120px 0 90px 0;
background-image: url(../img/mv_line.png);
background-position: center 140px;
background-repeat: repeat-x;
background-size: 20px;
text-align: center;
}

#musicvideo .mv_clip_ttl {
display: block;
height: 40px;
margin: 0;
background-image: url(../img/mv_clip.png);
background-position: center top;
background-repeat: no-repeat;
background-size: contain;
}

#musicvideo .clip_list {
display: block;
width: 720px;
margin: 0 auto;
}

#musicvideo h3 {
padding: 0;
margin: 120px 0 30px 0;
font-size: 160%;
font-weight: 400;
}

#musicvideo .mv_clip {
margin: 0 auto;
position: relative;
padding-bottom: 56.25%;
height: 0;
overflow: hidden;
}

#musicvideo iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

/* Player */
#player {
padding: 150px 0 150px 0;
text-align: center;
background-color: #4c98cf;
background-image: url(../img/player_grd_top.png),url(../img/player_grd_bottom.png);
background-position: center top,center bottom;
background-repeat: repeat-x;
background-size: 20px;
}

#player .device_width {
width: 720px;
}

#player h3 {
display: block;
height: 200px;
padding: 0;
margin: 0 0 45px 0;
background-image: url(../img/player_title.png);
background-position: center top;
background-repeat: no-repeat;
background-size: 420px;
border-bottom: 1px solid #1c1c1c;
}

#player p {
font-weight: 500;
}

#player .mv_clip {
margin: 20px auto 45px auto;
position: relative;
padding-bottom: 56.25%;
height: 0;
overflow: hidden;
}

/*
#player iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
border: none;
}
*/

#popvirusplayer_mov {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
width: 100%;
height: 100%;
}

#player_area {
display: block;
max-width: 100%;
position: relative;
}
/* 動画内ポップアップを消す */
#popvirusplayer_mov .vjs-menu {
display: none !important;
}

#player .player_link {
display: block;
padding: 75px 0 0 0;
margin: 0;
background-image: url(../img/player_link.png);
background-position: center top;
background-repeat: no-repeat;
background-size: 200px;
}

#player .player_link a {
display: block;
width: 120px;
height: 120px;
padding: 0;
margin: 0 auto;
background-image: url(../img/player_btn.png);
background-position: center center;
background-repeat: no-repeat;
background-size: 120px;
}

#player .player_link a:hover {
background-image: url(../img/player_btn_hover.png);
}

#player .player_notes {
display: block;
padding: 0;
margin: 60px 0 0 0;
}

#player .player_notes p {
padding: 8px 0;
margin: 0;
font-size: 85%;
line-height: 150% !important;
}

#player .player_notes h4 {
padding: 0;
margin: 0 0 10px 0;
font-size: 100%;
}

/* vinyl */
#vinyl {
padding: 120px 0 150px 0;
}

#vinyl .vinyl_detail {
width: 880px;
margin: 0 auto;
text-align: center;
font-weight: 500;
}

#vinyl h2 {
display: block;
width: 660px;
height: 100px;
padding: 0;
margin: 0 auto 20px auto;
background-image: url(../img/vinyl_ttl.png);
background-position: center center;
background-repeat: no-repeat;
background-size: 620px;
background-color: #1c1c1c;
}

#vinyl h3 {
padding: 0;
margin: 0;
font-size: 110%;
font-weight: 500;
}

#vinyl .vinyl_item {
display: block;
width: 400px;
padding: 0;
margin: 60px 20px 0 20px;
float: left;
}

#vinyl .vinyl_item .vinyl_jkt_popvirus {
display: block;
width: 400px;
height: 400px;
margin: 0 auto 25px auto;
background-image: url(../img/vinyl_jkt_popvirus.jpg);
background-position: center center;
background-repeat: no-repeat;
background-size: 400px;
}

#vinyl .vinyl_item .vinyl_jkt_yellowdancer {
display: block;
width: 400px;
height: 400px;
margin: 0 auto 25px auto;
background-image: url(../img/vinyl_jkt_yellowdancer.jpg);
background-position: center center;
background-repeat: no-repeat;
background-size: 400px;
}

#vinyl .vinyl_item h4 {
display: block;
padding: 0;
margin: 0;
}

#vinyl .vinyl_item h4.vinyl_ttl_popvirus {
display: block;
height: 30px;
padding: 0;
margin: 0 0 40px 0;
background-image: url(../img/vinyl_ttl_popvirus.png);
background-position: center center;
background-repeat: no-repeat;
background-size: 280px;
}

#vinyl .vinyl_item h4.vinyl_ttl_yellowdancer {
display: block;
height: 30px;
padding: 0;
margin: 0 0 40px 0;
background-image: url(../img/vinyl_ttl_yellowdancer.png);
background-position: center center;
background-repeat: no-repeat;
background-size: 280px;
}

#vinyl .vinyl_item dl {
padding: 5px 0 20px 0;
margin: 15px 0 0 0;
border-bottom: 2px solid #1c1c1c;
border-top: 2px solid #1c1c1c;
}

#vinyl .vinyl_item dl dt {
padding: 0;
margin: 10px 0 0 0;
}

#vinyl .vinyl_item dl dd {
padding: 0;
margin: 0;
}

#vinyl .vinyl_item ol {
padding: 0;
margin: 0;
font-size: 85%;
letter-spacing: 0;
}

#vinyl .vinyl_item ol li {
display: inline-block;
padding: 0 5px;
margin: 0;
font-weight: 400;
}

#vinyl .vinyl_item ol li:before {
counter-increment: number;
content: counter(number)'.';
display: inline-block;
width: 6px;
text-align: right;
margin-right: 5px;
}

#vinyl .vinyl_item ol li .caption {
display: inline-block;
}

/* Footer */
footer {
text-align: center;
}

footer a {
display: inline-block;
text-decoration: none;
font-size: 85%;
font-family: 'Roboto Condensed', sans-serif;
font-weight: 400;
letter-spacing: .1em;
margin-bottom: 60px;
color: #1c1c1c;
}

a.pagetop {
display: block;
width: 80px;
padding: 45px 0 0 0;
margin: 0 auto 30px auto;
background-image: url(../img/pagetop.png);
background-position: center top;
background-repeat: no-repeat;
background-size: 74px;
text-align: center;
text-decoration: none;
font-family: 'Roboto Condensed', sans-serif;
font-weight: 400;
letter-spacing: .05em;
color: #1c1c1c;
}

/*==================================
Tablet portrait
==================================*/
@media only screen and (min-device-width:768px) and (max-device-width:1023px) and (orientation:portrait) {

.device_width {
width: 768px;
}

.fixed_title {
display: none;
}

#mainvisual .main_jkt {
height: 680px;
}

nav a {
width: 150px;
background-size: 200px;
}

nav a.nav_player {
width: 220px;
}

nav .tooltip {
margin: 35px 0 0 -70px;
}

#detail .inner_box {
width: auto;
padding: 15px 0;
margin: 0 30px;
}

#detail_list {
margin: 0 30px;
}

.detai_songlist {
width: 340px;
}

#detail .inner_halfbox {
width: 280px;
}

#detail .bluray01,
#detail .bluray02 {
width: 280px;
height: 160px;
}

#novelty_detail {
width: auto;
padding: 0;
margin: 15px 30px 90px 30px;
}

#novelty_detail .novelty_jkt {
width: auto;
margin: 0 30px;
}

#novelty_detail .novelty_jkt li {
width: 260px;
padding-top: 310px;
background-size: 190px;
}

#novelty_detail .novelty_jkt li.horizontal {
padding-top: 220px;
background-size: 260px;
}

#novelty_detail li.jkttype_e {
width: 240px;
}

#novelty_detail .novelty_jkt .type_e_caption {
width: 340px;
margin: 30px 0;
}

#novelty_detail .novelty_jkt .type_e_caption li {
width: auto;
}

#novelty_detail .novelty_inner {
width: auto;
margin: 15px 30px;
}

#tour_info .tour_badge {
display: block;
width: 100%;
height: 30px;
padding: 0;
margin: 30px 0;
background-image: url(../img/tour_badge_sp.png);
background-position: center top;
background-repeat: no-repeat;
background-size: 280px;
}

.ticket_detail {
margin: 0 30px;
}

}

/*==========================================
クリア*/
.fix {
overflow: hidden;
zoom: 1;
}

/*全てにおいて非表示*/
.none {
display: none;
}

/*モバイルで非表示*/
.display_sp {
display: none !important;
}

.display_pc {
display: block !important;
}