@charset "utf-8";

html{
  -webkit-text-size-adjust: 100%;
}

@media screen and (max-width: 768px) {  
}
@media screen and (min-width: 769) and (max-width: 1024){  
}
@media screen and (min-width: 1025px) {  
}

/*背景色と行間設定*/
body{
    background-color: #f2f8f6;
    line-height: 3;
    margin: 60px;
    font-size: 16px;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 400;
    font-style: normal;
}

p{
  font-family: "Zen Maru Gothic", serif;
  padding-left: 10px;
}

img {
  max-width: 100%;
  height: auto;
}

/*ヘッダー、ナビ、フッターを中央に*/
header,nav,footer {
    text-align: center;
}
/* header, nav, #slide-wrapper, footer, {
	width: 100%;
} */

.header-msg {
  line-height: 1.8;
  font-size: 110%;
  margin: 10px 0;
}

ナビメニュー*/
*{box-sizing: border-box;}

ul.gnav {
/* background: #a9a9a9; */
/* background-color: #a5c9c1; */
padding: 0;
text-align: center;
margin-bottom: 50px;
}
ul.gnav li {
display: inline-block;
line-height: 2.5;
}

ul.gnav li a {
display: block;
padding: 25px;
color: #696969;
text-decoration: none;
}
ul.gnav a::first-line {
font-size: 20px;
font-weight: bold;
}
ul.gnav li a:hover {
  /* background: #000080; */
  color: #e87a90;
}

#profile p{
  display: flex;
}

/*画像位置*/
.imgR {
    float: right;
    margin-left: 20px;
    margin-top: 30px;
}    
.imgL {
    float: left;
    margin-right: 50px;
    margin-top: 20px;
}
.clear {
    clear: both;
}

/*LOADING*/
:root {
    --light-green: #d5edeb;
    --green: #63dbd0;
    --brown: #403632;
    --light-grey: #eee;
    --white: #fff;
    --oswald-font: 'Oswald', sans-serif;
}
#loading {
    background-color: var(--light-grey);
    position: fixed;
    z-index: 9999;
    inset: 0;
    display: grid;
    place-items: center;
}
#loading-screen {
    background-color: var(--light-green);
    position: fixed;
    inset: 0;
    z-index: 9998;
    translate: 0 100vh;
}
#loading p {
    font-size: 2rem;
    font-family: "Zen Maru Gothic", serif;
}

/*SLIDE MENU*/
/* 開閉ボタン */
.btn-menu {
    position: fixed;
    right: 1rem;
    top: 1rem;
    z-index: 4;
    padding: .5rem 1rem;
    border: 2px solid #82cddd;
    background-color: #82cddd;
    border-radius: 50%;
    height: 4rem;
    width: 4rem;
    transition: .4s;
}
.btn-menu svg {
    fill: #fff;
    margin-top: .25rem;
    height: 2rem;
    width: 2rem;
}

/* 閉じるボタン */
#menu-close {
    border: 1px solid #82cddd;
}
#menu-close svg {
    fill: var(--light-green);
}

/* スライドメニューパネル */
#menu-panel {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 4;
    padding: 4rem 2rem 2rem;
    width: 300px;
    /* height: 100vh; */
    height: -webkit-fill-available;
    background-color: #a5c9c1;
    font-family: "Agu Display", serif;
    translate: 100vw;
}
.menu-list {
    list-style: none;
}
.menu-list li {
    margin: 10px 0;
    opacity: 0;
}
.menu-list a {
    color: #fff;
    text-decoration: none;
    font-size: 28px;
}
@media(min-width: 800px){
/* SLIDE MENU */
.btn-menu:hover {
    /* background-color: #cbd0d3; */
    opacity: 0.7;
}
#menu-close:hover svg {
    fill: #000080;
}
.menu-list a:hover {
    transition: .3s;
    color: #000080;
}
}

/*タイトル設定*/
#title {
  font-family: "Playwrite AU SA", serif;
  /* font-family: "Agu Display", serif; */
  /* font-family: "Lobster", serif; */
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-variation-settings:"MORF" 0;
  /* font-size: 500%;  */
  font-size: calc(1.25vw + 5rem);
  line-height: 1;
  padding-top: 10px;
  padding-bottom: 50px;
  display: inline-block;
  /* background: linear-gradient(90deg, #58c6ff 0%, #076ad9 40%, #ff3bf5 80%); */
  background: linear-gradient(90deg, #58c6ff 10%, #076ad9 40%, #ff4ef6 90%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}


/*スライドショー設定*/
#slide-wrapper {
    position: relative;
    overflow: hidden; /* はみ出したスライドを隠す */
}   
.container {
    position: relative;
    width: 100%;
    max-width: 900px;
    height: 500px;
    overflow: hidden;
    margin: 0 auto;
    text-align: center;
  }

.container img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    opacity: 0;
}
 
.container img.active {
    animation: 8s zoomFadeIn forwards;
  }

  
/* 画像がフェードイン＆ズームインし、フェードアウトするアニメーション */
@keyframes zoomFadeIn {
    0% {
      opacity: 0;
      transform: scale(1);
    }  
    50% {
      opacity: 1;
    }
    100% {
      opacity: 0;
      transform: scale(1.2);
    }
}

/*オーディオ設定*/
#film {
    text-align: center;
    padding: 10px;
    margin-top: 20px;
} 
#film p {
    margin-top: 0;
}  
button {
    padding: 5px 20px;
    margin: 3px;
    font-size: 16px;
    cursor: pointer;
    font-family: "Zen Maru Gothic", serif;
}
button:hover {
  opacity: 0.7; 
}
button:active {
  opacity: 0.4;
}
input[type="range"] {
  margin: 10px;
  width: 200px;
}

/*トップページへジャンプするボタン*/
#page_top{
  width: 60px;
  height: 60px;
  position: fixed;
  right: 0;
  bottom: 0;
  background: #82cddd;
  opacity: 0.6;
  border-radius: 50%;
}
#page_top a{
  position: relative;
  display: block;
  width: 60px;
  height: 60px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f102';
  font-size: 20px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -50px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
#page_top a::after{
  content: 'TOP';
  font-size: 11px;
  color: #fff;
  position: absolute;
  top: 30px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}

/*h2見出しの設定*/
.sub_Title {
  font-weight: bold;
  /* font-style: italic; */
  padding: 0.1em 0.2em;
  border-left: 7px solid #000080;
  border-bottom: 2px solid #000080;
  font-size: 160%;
  margin-top: 50px;
  padding-right: 20px;
}

/*h3見出しの設定*/
h3 {
  margin: 0;
  padding: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}

/*CD*/
#discography p{
  margin: 0;
  padding: 0;
  overflow: hidden;
  line-height: 2;
}
#album_cover{
  margin-top: 30px;
  margin-left: 80px;
 
}
#album_list{
  margin-top: 0;
  list-style-position: inside;    
}
#album_list li{
  line-height: 2;
  /* clear: both; */
}
#album_price {
  font-size: 17px;
}

/*ステッカー*/
#sticker img {
  margin-left: 160px;
  margin-top: 80px;
  border: 3px solid #a9a9a9; 
  margin-right: 150px;
  margin-bottom: 80px;
}
h4{
  margin-left: 140px;
  margin-top: 80px;
}

.coverd_music {
  font-weight: bold;
  font-size: 18px;
  padding: 5px 8px;
  border-left: 10px double #000080;
  margin-bottom: 20px;
}
.link {
  padding-left: 20px;
  padding-bottom: 20px;

}
.link a {
  text-decoration: none;
  color: #e87a90;
  font-size: 18px;
  font-weight: bold;
}

/* .clearfix::after {
  content: "";
  display: block;
  clear: both;
} */

#news a {
  text-decoration: none;
  color: #e87a90;
  font-size: 18px;
  font-weight: bold;
}


/*路上ライブ日程表*/
.table_container {
  display: flex;
  justify-content: center;
  margin-bottom: 50px;
  max-width: 100%;
}
.streetlive_data {
  border-collapse: collapse;
  margin: 5px;
  width: 100%;
  text-align: center;
  height: 30px;  
}
table, th, td {
  border: 1px solid #000;
}
th {
  background-color: #a5c9c1;
}
tr:nth-child(odd) td {
  background-color: #a5c9c1;
}
@media screen and (max-width: 768px) {
  .table_container th, td  {
    display: block;
  }
}

.streetlive_schedule {
  border-collapse: collapse;
  margin: 3px;
  width: 35%;
  text-align: center;
  height: 10px; 
}
.streetlive_schedule caption {
  font-size: 20px;
  line-height: 1.3;
}
.streetlive_schedule th {
  background-color: #bbe2f1;
} 
.streetlive_schedule tr, td {
  background-color: #f2f8f6;
}
.streetlive_schedule tr:nth-child(odd) td {
  background-color: #f2f8f6;
}

/*沖縄の写真*/
.lastphoto {
  margin-right: 50px;
  margin-top: 100px;
}
.caption {
  float: right;
  line-height: 1;
  margin-right: 100px;
}
/*ライブ後のメッセージ*/
.box_msg {
  margin: 30px 0;
  margin-left: 50px;
  position: relative;
  padding: 0.5em 1.5em;
  border-top: solid 2px black;
  border-bottom: solid 2px black;
  width: 50%;
  margin-top: 50px;
  float: left;
  display: inline-block;

}
.box_msg:before, .box_msg:after {
  content: '';
  position: absolute;
  top: -10px;
  width: 2px;
  height: -webkit-calc(100% + 20px);
  height: calc(100% + 20px);
  background-color: black;
}
.box_msg:before {left: 10px;}
.box_msg:after {right: 10px;}
.box_msg p {
  margin: 0; 
  padding: 0;
}
.msg_title {
  text-align: center;
}
.msg1 {
  text-align: right;
}

/*埋め込み動画設定*/
.video-row {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 -48px;
  text-align: center;
  margin-left: 15px;
}
.video-col {
  width: 50%;
  padding: 20px 20px;
}
.video-wrap {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.25%; /* 動画の縦横の比率が16:9であれば 6 / 19 * 100 = 56.25を設定*/
}
.video-wrap > iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.video .more{
  float: right;
  display: inline-block;
  padding: 10px 10px 10px 20px;
  background: #191970;
  border-radius: 2em;
  color: #fff;
  text-decoration: none;
  font-size: 16px;
  line-height: 1;
}
.video .more:hover{
  opacity: 0.7;
}
.video .more::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 5px;
  border: transparent 8px solid;
  border-left-color: #fff;
  vertical-align: middle;
}

/*フッター*/
.footer{
  padding: 10px 0;
  background: #dcdcdc;
  
}
.footer-info {
  box-sizing: border-box;
  margin-left: 380px;
  height: 120px;
  margin-top: 10px;
  margin-bottom: 20px;
}
.footer-info img {
  border: 3px solid #f5f5f5;
  /* max-width: 100%; */
  margin-top: 5px;
}
ul.footer_name li {
  font-family:"Playwrite AU SA", serif;
  font-style: italic;
  line-height: 1;
  font-size: 25px;
  margin-top: 30px;
  margin-right: 250px;
  margin-bottom: 0;
  margin-left: 0;
  display: inline-block;
  list-style-type: none;
}
ul.footer_name li:nth-of-type(2) {
  font-size: 60px;
  font-family:"Playwrite AU SA", serif;
  font-style: italic;
  line-height: 1;
  /* text-align: center; */
  /* display: inline;   */
}


/*snsアイコン*/
@font-face {
  font-family: 'icomoon';
  src:  url('fonts/icomoon.eot?9i1r4v');
  src:  url('fonts/icomoon.eot?9i1r4v#iefix') format('embedded-opentype'),
    url('fonts/icomoon.ttf?9i1r4v') format('truetype'),
    url('fonts/icomoon.woff?9i1r4v') format('woff'),
    url('fonts/icomoon.svg?9i1r4v#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: .7;

  /* Better Font Rendering */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-instagram:before {
  content: "\e900";
  color: #e4405f;
}
.icon-tiktok:before {
  content: "\e902";
}
.icon-youtube:before {
  content: "\e901";
  color: #f00;
}
.icon-home:before {
  content: "\e903";
}
.icon-menu:before {
  content: "\e9bd";
}

.sns{
  margin-bottom: 15px;
  margin-right: 200px;
  /* padding-left: 0;
  margin-left: 0; */
}
.sns li{
  display: inline-block;
  margin: 10px 5px;
}
.sns a{
  display: block;
  padding: 10px 25px;
  background: #fff;
  border-radius: 5px;
  text-decoration: none;
  font-size: 24px;
  margin-top: 50px;
}
.sns a:hover{
  opacity: 0.7;
}
@media screen and (max-width:767px) {
.footer {
  display: none;
}
}

/*========================
　smartphone　bottom menu
　========================*/

.mini-text{
  font-size:14px; /*文字大きさ*/
}

ul.bottom-menu {
  position: fixed;
  left:0;
  bottom:0;
  width: 100%;
  height:50px;/*高さ*/
  margin:0;
  padding:0;
  background-color:#87cefa;/*背景色*/
  border-top:2px solid #87ceeb;/*バーの上の線*/
  border-bottom:2px solid #87ceeb;/*バーの下の線*/
  z-index:30;}

ul.bottom-menu li {
  float:left;
  width:16%;
  background-color:#87cefa;/*背景色*/
  list-style-type:none;
  text-align:center;
  font-size:25px;/*アイコンのサイズ*/}

.bottom-menu li a {
  display: block;
  color:#606060;/*アイコン＆文字の色*/
  padding-top:10px;
  padding-bottom:5px;
  line-height:.5;
  text-decoration:none;
}

.bottom-menu li a:hover {
  opacity: 0.7; 
}

/* === 展開メニュー === */
ul.menu-second-level {
  visibility: hidden;
  opacity: 0;
  z-index:1;
}
ul.menu-second-level li a{
  border-top:1px dashed #87cefa;/*展開の枠点線*/
  font-size:15px;/*展開メニューの文字サイズ*/
  line-height:30px;/*文字の縦幅*/
  background-color: #fff;
}
.menu-second-level li a:hover {
  height:100%;
  background-color: #b0e0e6;
}

li.menu-width-max ul.menu-second-level {
  position: absolute;
  bottom: 50px;/*高さ*/
  left: 0;
  box-sizing: border-box;
  width: 100%;
  padding:0;
}

li.menu-width-max:hover ul.menu-second-level {
  bottom: 50px;/*高さ*/
  visibility: visible;
  opacity: 1;
}

li.menu-width-max ul.menu-second-level li {
  float: left;
  width: 100%;
  border: none;
}
.third-level li {
  padding-top: 5px;
}

.sns-text {
  font-size: 11px;
}

/*PC表示の際はボトムメニューは表示しない*/
@media(min-width: 768px){
  .bottom-menu{display:none; }
}

/*スマホの時だけ*/
@media(max-width: 767px){ 

/*ボトムメニュー付けたのでフッタを底上げする*/
.footer{margin-bottom:50px;}
}

.copyright {
  text-align: center;
}

/*#news li:nth-child(2):before{
 content: "NEW";
 color: #FF0000 !important;
 padding-right: 10px;
}
#news li:nth-child(3):before{
 content: "NEW";
 color: #FF0000 !important;
 padding-right: 10px;
}
#news li:nth-child(4):before{
 content: "NEW";
 color: #FF0000 !important;
 padding-right: 10px;
}
*/