/*****************************
Theme Name: BY-ONテーマ
Discription: BY-ONのオリジナルテーマです。
Author: MOCA.Inc
******************************/
html { scroll-behavior: smooth;}
a {
	text-decoration:none;
}
.pc {
	display:flex;
}
.sp {
	display:none;
}

/* --------------------------------------------
 * 　メインヴィジュアル
 * -------------------------------------------- */
.mv_wrap {
	width:100%;
}
.mv {
	margin:0 auto;
}
.mv img{
	width: 100%;
	height: calc(100svh);
	object-fit: cover;
	vertical-align: bottom;
}
.mv_parallax {
	margin:0 auto;
	height: 250px;
	width: 100%;
	position:relative;
    background: url(https://by-on.jp/wp-content/uploads/2025/02/shop_back.jpg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;	
	background-attachment: fixed;
}
.mv_parallax::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(0, 0, 0, 0.5); /* 0.5は透過度、調整可 */
	z-index: 1;
  }
.mv_parallax img{
	height:40px;
	width:auto;
	position:absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	z-index: 10;
}
.mv .left {
	width: 430px;
	height:160px;
	margin:0 auto 0 0;
	display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.mv .left p{
	width:100%;
	text-align:left;
	margin:0 auto;
	padding: 0 0 20px 50px;
	font-size:1.8rem;
	color:#ffffff;	
}
.mv .left p .tbig_ur{
	width:100%;
	text-align:left;
	margin:0 auto;
	font-size:2.2rem;
	color:#ffffff;	
	padding:0 0 10px 0;
	text-decoration:underline;
	text-decoration-color: #ff0000;
	text-decoration-thickness: 3px;
	text-underline-offset: 8px;
}
.mv .left p .tbig{
	width:100%;
	text-align:left;
	margin:0 auto;
	font-size:2.2rem;
	color:#ffffff;	
	padding:0 0 10px 0;
	text-decoration-color: #ff0000;
	text-decoration-thickness: 3px;
	text-underline-offset: 8px;
}

/* --------------------------------------------
 *タイトル
 *-------------------------------------------- */
 .top_title_wrap {
	width:100%;
	margin:80px 0;
}
.top_title {
	width: calc(100% - 80px);
	padding: 0 40px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	height:28px;
}
.top_title img{
	height:100%;
}

/* --------------------------------------------
 * 　新着記事
 * -------------------------------------------- */

 .section_wrap {
	width: 100%;
}
.section_news_wrap {
	width: 100%;
	background-color: #ffffff;	
}
.button_wrap{
	width:100%;
	margin: 0 0 0 0;
	display:flex;
	flex-wrap:wrap;
	padding: 0 0 60px 0;
}
.button_wrap a{
	width:100%;
	display:flex;
	flex-wrap:wrap;
	color:#ffffff;
	transition : all 0.6s ease 0s;
	justify-content: center;
}
.button_wrap a p{
	width:220px;
	font-size:1.6rem;
	color:#ffffff;
}
.button_wrap a p.button{
	width:auto;
	padding:8px 16px;
	font-size:1.6rem;
	background: #50220b;
	border: #ffffff 1px solid;
	border-radius:10px;
	transition : all 0.6s ease 0s;
}
.button_wrap a p.button:hover{
	background: #ffffff;
	border: #50220b 1px solid;
	transition : all 0.6s ease 0s;
	color:#50220b;
}
.button_wrap02{
	margin: 0 0 0 0;
	display:flex;
	flex-wrap:wrap;
	padding: 40px 0;
}
.button_wrap02 a{
	width:100%;
	display:flex;
	flex-wrap:wrap;
	color:#ffffff;
	transition : all 0.6s ease 0s;
	justify-content: left;
}
.button_wrap02 a p{
	width:220px;
	font-size:1.6rem;
	color:#ffffff;
}
.button_wrap02 a p.button{
	width:auto;
	padding:8px 16px;
	font-size:1.6rem;
	background: #000000;
	border: #ffffff 1px solid;
	border-radius:10px;
	transition : all 0.6s ease 0s;
	color:#000000;
}
.button_wrap02 a p.button:hover{
	background: #ffffff;
	border: #000000 1px solid;
	transition : all 0.6s ease 0s;
	color:#000000 !important;
}
.button_wrap03 {
    margin: 0 0 0 0;
    display: flex;
    flex-wrap: wrap;
    padding: 0 0 40px 0;
}
.button_wrap03 a{
	width:100%;
	display:flex;
	flex-wrap:wrap;
	color:#ffffff;
	transition : all 0.6s ease 0s;
	justify-content: left;
}
.button_wrap03 a p{
	width:220px;
	font-size:1.6rem;
	color:#ffffff;
}
.button_wrap03 a p.button{
	width:auto;
	padding:8px 16px;
	font-size:1.6rem;
	background: #000000;
	border: #ffffff 1px solid;
	border-radius:10px;
	transition : all 0.6s ease 0s;
	color:#000000;
}
.button_wrap03 a p.button:hover{
	background: #ffffff;
	border: #000000 1px solid;
	transition : all 0.6s ease 0s;
	color:#000000 !important;
	opacity:0.7;
}

@media screen and (max-width: 750px) {
	.button_wrap02{
		margin: 0 0 0 0;
		display:flex;
		flex-wrap:wrap;
		padding: 20px 0 40px 0;
	}
}

 /* --------------------------------------------
 * 　サイト説明
 * -------------------------------------------- */
.top_sentence {
	width:100%;
	max-width:1100px;
	margin:0 auto;
	padding:0 40px;
}
.top_sentence p {
	width:100%;
	font-size:1.6rem;
	margin:0 0 40px 0
}

 /* --------------------------------------------
*私たちについて
*--------------------------------------------*/
.top_moreinfo {
	width:100%;
	max-width:1100px;
	margin:0 auto;
	padding:0 50px;
}
.top_moreinfo ul{
	width:100%;
	padding:40px 0 0 0;
	display: flex;
	flex-wrap: wrap;
}
.top_moreinfo ul li{
	position: relative;
	margin: 0 20px 40px 0;
	width: calc(33.3333% - 40px / 3);
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.top_moreinfo ul li a{
    position: absolute;
    width: 100%;
    height: 100%;
    top:0;
    left: 0;
    text-indent: 100%; /*テキスト非表示*/
    white-space: nowrap; /*テキスト非表示*/
    overflow: hidden; /*テキスト非表示*/
}
.top_moreinfo ul li:nth-child(3n){
	margin: 0 0 40px 0;
}
.top_moreinfo ul li .imgarea{
	width:20%;
	margin:0 auto 0 0;
}
.top_moreinfo ul li .imgarea img{
	width: 100%;
}
.top_moreinfo ul li .imgarea{
	width:20%;
	margin:0 auto 0 0;
}
.top_moreinfo ul li .textarea{
	width:80%;
	display:flex;
	flex-wrap: wrap;
	text-align:left;
}
.top_moreinfo ul li .textarea p{
	width:100%;
	margin:0 0 0 20px;
	font-size:1.6rem;
}

  /* --------------------------------------------
  * NEWS部分
  * -------------------------------------------- */
.section_wrap {
	width: 100%;
}
.top_newarticle {
	max-width:1200px;
	margin:0 auto 0 90px;
}
.top_newarticle ul{
	width:60%;
	margin:0 auto 0 0;
	padding:0;
}
.top_newarticle ul li{
	list-style:none;
	display: flex;
	flex-wrap: wrap;
}
.top_newarticle ul li a{
	width:100%;
	display: flex;
	flex-wrap: wrap;	
}
.top_newarticle ul li .articate{
	width:20%;
	font-size: 2rem;	
	text-align: left;
}
.top_newarticle ul li .artittl{
	width:80%;
	font-size: 2rem;
	text-align: left;
}






/* --------------------------------------------
 * 　about/contact部分
 * -------------------------------------------- */

 .top_about_wrap {
	width:100%;
	background:#000000;
  }
  .top_about {
	width:100%;
	max-width:1200px;
	margin:80px auto;
	height:250px;
	position:relative;
	display: flex;
	flex-wrap: wrap;
  }
  .top_about ul{
	width:100%;
	padding:0;
	display:flex;
	flex-wrap:wrap;
  }
  .top_about ul li{
	width:50%;
	display:flex;
	flex-wrap:wrap;
	position:relative;
  }
  .top_about ul li:first-child::after{
	position: absolute;
	border-right: 1px solid #fff;
	content: "";
	top: 40%;
	bottom: 40%;
	right: 0;
  }
  .top_about ul li img{
	  height:40px;
	  width:auto;
	  position:absolute;
	  top: 0;
	  right: 0;
	  bottom: 0;
	  left: 0;
	  margin: auto;
  }


/* --------------------------------------------
 * 　右寄せボタン部分
 * -------------------------------------------- */
  .top_button_right_wrap{
	width:auto;
	display:flex;
	flex-wrap:wrap;
  }
  .top_button_right_wrap a{
	width:100%;
	display:flex;
	flex-wrap:wrap;
	color:#000000;
	transition : all 0.6s ease 0s;
	justify-content: flex-end;
	position: absolute;
    right: 40px;
  }
  .top_button_right_wrap a p{
	width:220px;
	font-size:1.6rem;
	color:#000000;
	margin: -8px 0;
  }
  .top_button_right_wrap a p.button{
	width:auto;
	padding:8px 16px;
	font-size:1.6rem;
	background: #f0f0f0;
	border: #000000 1px solid;
	transition : all 0.6s ease 0s;
  }
  .top_button_right_wrap a p.button:hover{
	background: #000000;
	border: #ffffff 1px solid;
	transition : all 0.6s ease 0s;
	color:#ffffff;
  }

 /* --------------------------------------------
 * 　↓アーティスト部分
 * -------------------------------------------- */
.container_artistlist_news {
	width:100%;
	max-width: 1000px;
    margin: 0 auto;
	padding:0 40px;
}

.top_artistlist_article {
	width:100%;
	max-width:1200px;
	margin:0;
	padding:0;
}
.top_artistlist_article ul{
	width:100%;
	padding:0;
	display: flex;
	flex-wrap: wrap;
}
.top_artistlist_article ul li{
	margin: 0 30px 40px 0;
	width: calc(100% / 3 - 30px);
	list-style: none;
	display:flex;
	flex-wrap: wrap;
}
.top_artistlist_article ul li:nth-child(3n){
	margin: 0 0 40px 0;
}
.top_artistlist_article ul li img{
	width: 100%;
	height: auto;
}
.top_artistlist_article ul li .articate{
	width:100%;
	display:flex;
	flex-wrap: wrap;
	text-align:left;
}
.top_artistlist_article ul li .articate p{
	width:100%;
	margin:5px 0 0 0; 
	font-size:1.2rem;
}
.top_artistlist_article ul li .artittl{
	width:100%;
	display:flex;
	flex-wrap: wrap;
	text-align:left;
}
.top_artistlist_article ul li .artittl p{
	width:100%;
	margin:10px 0;
	font-size:1.6rem;
	display: -webkit-box; /* 必須 */
    -webkit-box-orient: vertical; /* 必須 */
    -webkit-line-clamp: 2; /* 行数を制限 */
    overflow: hidden; /* はみ出た部分を非表示 */
}
.top_artistlist_article ul li .artisent{
	width:100%;
	display:flex;
	flex-wrap: wrap;
	text-align:left;
}
.top_artistlist_article ul li .artisent p{
	width:100%;
	margin:10px 0;
	font-size:1.4rem;
	display: -webkit-box; /* 必須 */
    -webkit-box-orient: vertical; /* 必須 */
    -webkit-line-clamp: 3; /* 行数を制限 */
    overflow: hidden; /* はみ出た部分を非表示 */
}

.top_artistlist_article ul li .imgarea{
	width:calc(100% - 15px);
	padding:0 0 0 0;
}
.top_artistlist_article ul li .imgarea img{
	width:100%;
}
.top_artistlist_article ul li .textarea {
	width:100%;
	padding:0;
}
.top_artistlist_article ul li .sub_news_article a {
	display: flex;
    flex-wrap: wrap;
    align-content: flex-start;
}
.top_artistlist_article ul li:nth-child(2n) .imgarea{
	padding:0 0 0 0;
}