/*custom*/

/*common*/
/*
body {
    margin: 0;
    background-image: url('../img/darkArtistImage.jpg');
    background-attachment: fixed;   /*背景画像固定  TODO:iOS公式バグ*/
/*    background-position: center;
}
*/
body::before {
    content: "";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100vh;
    background: url('../img/darkArtistImage.jpg');
    background-size: cover;
}

header {
    position: sticky;   /*非スクロール干渉*/
    top: 0;
    left: 0;
    height: 150px;  /*headerMenuUl li 伸縮時の影響免*/
    margin: 20px;
    padding-top: 1px;
    background-color: white;
    text-align: center;
}

.headerMenu {
    text-align: left;
}
.headerLogo {
    margin: 20px 20px 0px 20px;   
}

.headerMenuLabel {
    cursor: pointer;
    margin: 0;
}
.headerMenuImg {
    height: 50px;
    position: absolute; /*header最下部固定  bottom0含む*/
    bottom: 0;
    border: solid;
    border-color: gray;
}
.headerMenuInput {
    display: none;
}
.headerMenuUl {
    position: absolute; /*header最下部より下方向へ展開　top100含む*/
    top: 100%;
    padding: 0;
    margin: 0;
    list-style: none;
    width: 130px;
    text-align: left;
    opacity: 0.9;
    height: 0px;
    overflow: hidden; /*height0以上の内容は表示されない*/
    transition: 0.5s;
}
#toggle:checked + .headerMenuUl {
    background-color: white;
    height: 280px;
}
.headerMenuUl li {
    padding-left: 5px;
    line-height: 38px;
    border: 1px solid;
}
#toggle:checked + .headerMenuUl li {
    height: 38px;
    border-color: gray;
}
.headerMenuUl li a {
    color:currentColor;
    text-decoration: none;
}

.main {
    margin: 20px;
    background: rgba(255, 255, 255, 0.9);
}
h1 {
    display: none;
}

footer {
    color: white;
    height: 50px;
    background-color: black;
    padding: 15px;
}


/*index-home*/

.homeMenu {
    padding: 30px;
}
.homeMenu h2 {
    display: none;
}
.homeMenuUl {
    padding: 0;
}
.homeMenuUl li {
    list-style: none;
    font-size: 30px;
    text-align: center;
    margin: 10px;
}
.homeMenuUl li a {
    color: currentColor;
    text-decoration: none;
}
.homeContents {
    padding: 10px;
}
.homeContentsDiv {  /*homeContents h2をdisplay:flexから除外*/
    display: flex;
    align-items: stretch;   /*上下*/
    justify-content: center;    /*左右*/
    flex-wrap: wrap;    /*自動改行*/
}
.homeContent {
    margin: 10px;
    padding: 10px 15px;
    background-color: rgb(213, 213, 213);
    border-radius: 5px;
    flex: 1 0 280px;    /*最低サイズ(最小スマホ要調査)から伸長*/
    max-width: 380px;   /*伸長時最大サイズ*/
    display: flex;  /*homeContentのサイズに合わせて、h3,Frameを伸縮*/
    flex-wrap: wrap;
}
.homeContent h3 {
    margin: 0 0 5px 0;
    flex: 0 1 100%;
}
.homeContentFrame {
    height: 500px;
    border: none;
    border-radius: 5px;
    flex: 0 1 100% !important;
}


/*contents*/
.contentsDiv {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    padding: 10px;
}
.contentsDiv h2 {
    flex: 0 0 100%;
}
.contentsDiv table{
  /*  display: inline-block;*/
    flex: 0 1 auto;
    margin: 50px 10px 100px 10px;
}
.contentsDiv table tbody {
    width: 100%;
}
.contentsDiv td {
    padding: 10px 20px;
}


/*discography*/
.discography {
    margin: 20px;
}
.discography h1 {
    display: inline-block;
    margin: 20px 0px;
    font-size: 25px;
}
.discographyDiv {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}
.discographyDiv section {
    margin: 30px 0;
    flex: 0 1 650px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}
.discographyDiv hr {
    width: 90%;
}
.discographyDiv section h2 {
    display: none;
}
.discographyDiv section>div {
    padding: 10px 0;
}
.cdJacket {
    flex: 0 1 270px;
}
.cdJacket img {
    width: 100%;
}
.cdInfo {
    flex: 0 1 250px;
}
.cdInfo h3 {
    margin: 0;
    font-size: 20px;
}
.cdInfo p {
    margin: 30px 0 ;
    font-size: 12px;
}
.cdInfoLinks {
    display: flex;
    flex-wrap: wrap;
}
.cdInfoButton {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 10px 10px 0;
    height: 25px;
    border-radius: calc(30px/2);
    width: 80px;
    font-size: 11px;
    text-decoration: none;
    
}
.streamingButton {
    background-color: rgb(219, 54, 54);
    color: white;
    transition: 0.5s;
}
.streamingButton:hover {
    color: black;
    background-color: rgb(255, 187, 61);
}
.orderPageButton {
    background-color: rgb(42, 140, 220);
    color: white;
    transition: 0.5s;
}
.orderPageButton:hover {
    color: black;
    background-color: rgb(140, 203, 255);
}

/*live*/
.liveList {
    padding: 10px 20px;
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}
.liveList hr {
    width: 90%;
}
.liveList section {
    padding: 20px 0 0 0;
    flex: 0 1 650px;
}
.liveList section h3 {
    margin: 0;
}
.liveListDetail {
    margin: 10px 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}
.liveFlyer {
    flex: 0 1 250px;
}
.liveFlyer img {
    width: 100%;
}
.liveInfo {
    flex: 0 1 250px;
    font-size: 12px;
}

/*database*/
.database {
    margin: 0 20px;
}
.title-div {
    text-align: center;
}
.database h1 {
    display: inline-block;
    font-size: 25px;
}
.database > div {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}
.search-section > div {
    display: block;
    font-size: 12px;
}
.search-button {
    text-align: center;
}
.sort-div {
    margin: 20px 0;
    text-align: center;
}
.sort-div form{
    display: inline-block;
    margin: 0 20px;
}
.result-section hr {
    width: 90%;
}
.result-section {
    flex: 0 1 550px;
    font-size: 12px;
}
.music-sammary {
    display: flex;
    justify-content: space-evenly;
    flex-wrap: nowrap;
    margin: 0 0 20px 0;
}
.music-information {
    flex: 0 1 250px;
    margin: 10px;
}
.music-name {
    white-space: nowrap;
    font-size: 12px;
}
.music-detail {
    white-space: nowrap;
}
.music-detail td {
    padding: 0 10px 0 0;
}
.music-jacket {
    flex: 0 1 120px;
    min-width: 50px;
    margin: 10px;
}
.music-jacket img {
    width: 100%;
    height: auto;
    margin: 20px 0 0 0;
}
.music-lyrics {
    display: none;
}
.music-lyrics > div {
    display: flex;
    justify-content: center;
    margin: 0 0 20px 0;
}

/*about*/
#main-aboutUs {
    display: flex;
    justify-content: center;
}
.aboutUs {
    margin: 10px;
    flex: 0 1 600px;
}

.aboutUs section {
    margin: 50px 0;
    flex: 0 1 50%;
}
.aboutUs section img {
    width: 100%;
}
.aboutUs section p {
    font-family: serif;
    font-size: 12px;
}

/*contac*/
.contact-body {
    text-align: center;
    padding: 20px;
}
.contact-body > p {
    margin: 70px 0;
}

