@charset "UTF-8";
/* CSS Document */

/*共通*/
html{
	scroll-behavior: smooth;
}

body{
	background-color: white;
}

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

*{
	font-family: 'M PLUS Rounded 1c', sans-serif;
}

a{
	text-decoration: none;
}

ul{
	list-style: none;
}

p{
	font-size: 15px;
	font-weight: 300;
	color: #4D4D4D;
	line-height: 1.5;
}

h1{
	color: #B1063A;
	font-size: 22px;
	font-weight: 700;
}

h2{
	font-size: 20px;
	font-weight: 500;
	color: #B1063A;
	font-weight: bold;
	line-height: 1.5;
}

h3{
	font-size:18px;
	font-weight: 300;
	color: #4D4D4D;
	line-height: 2;
}

dd{
	margin: auto;
}

/*アー写かわりロゴ*/
.main_logo{
	max-width: 300px;
	height: auto;
}

.title{
	border-bottom:dotted 5px #B1063A;
	margin: 20px 0px;
}

.link{
	color: #B1063A;
	font-size: 15px;
	font-weight: 300;
	line-height: 1.5;
}

/*最大幅を800pxに固定して中央寄せ*/
.container{
	margin: 0 auto;
	padding: 40px auto;
	max-width: 800px;
	
}

.container3{
	margin: 0 auto;
	padding: 40px auto;
	max-width: 800px;
	text-align: center;
	
}

/*footer固定*/
.all {
	position: relative;
    padding-bottom: 50px;
    box-sizing: border-box;
    min-height: 100vh;
}

.footer {
      position: absolute;
      bottom: 0;
}

/*header*/
.site-header{
	position: fixed;
	top: 0;
	left: 0;
	display: flex;
	flex-wrap: wrap;
	background-color: #B1063A;
	width: 100%;
	height: 60px;
	line-height: 1;
	z-index:10;
}

@media (min-width:1200px) {
	.site-header {
		align-items: center;
		justify-content: space-between;
	}
}

.site-header .site-logo{
	display: block;
	width: 150px;
	padding: 0 0 0 10px;
	margin: 0;
}

@media (min-width:1200px) {
	.site-header .site-logo{
		display: block;
		width: 150px;
		padding: 0 0 0 20px;
		margin: 0;
	}
}

.site-header .site-nav{
	width: 100%;
}

@media (min-width:1200px) {
	.site-header .site-nav{
		width: auto;
	}
}

.site-header .main-nav {
	display: none;
	padding: 0;
	margin: 0;
	background-color: #B1063A;
	border-bottom: 1px solid #ccc;
}

@media (min-width:1200px) {
	.site-header .main-nav {
		display: block;
		margin: 0;
		border-bottom: none;
		line-height: 0;
	}
}

.site-header .main-nav__item a{
	display: block;
	padding: 20px;
	border-top: 1px solid #ccc;
	font-size: 15px;
	color: #fff;
}

@media (min-width:1200px) {
	.site-header .main-nav__item a{
		border-top: none;
	}
}

.site-header .main-nav__item a:hover{
	background-color: #fff;
	color: #B1063A;
}

/*--------------------------ナビメニュー-------------------*/
/* hamburger switch */
.site-header input[type="checkbox"]:checked ~ .main-nav {
	display: block;
	width: 100%;
	display: flex;
	flex-direction: column;
}

.site-header input[type="checkbox"]:checked ~ .main-nav__item {
	flex: 1;
	line-height: 0;
}

@media (min-width:1200px) {
	.site-header input[type="checkbox"]:checked ~ .main-nav,
	.site-header input[type="checkbox"]~ .main-nav {
		display: flex;
		flex-direction: row;
	}
}

/* hamburger icon */
.site-header .site-nav__toggle {
	display: none;
}
.site-header .site-nav__toggle-label{
	position: absolute;
	display: block;
	top: 10px;
	right: 10px;
}

.site-header .site-nav__toggle-label span {
	display: block;
	width: 40px;
	height: 39px;
	background-color: #FFFFFF;
	cursor: pointer;
}

.site-header .site-nav__toggle-label span span{
	display: block;
	overflow: hidden;
	width: 1px;
	height: 1px;
}
.site-header .site-nav__toggle-label span span::before,
.site-header .site-nav__toggle-label span span::after,
.site-header .site-nav__toggle-label span::after {
	position: absolute;
	left: 10px;
	content: "";
	width: 20px;
	height: 3px;
	background-color: #B1063A;
}

.site-header .site-nav__toggle-label span span::before {
	top: 10px;
}

.site-header .site-nav__toggle-label span span::after {
	top: 18px;
}

.site-header .site-nav__toggle-label span::after {
	bottom: 10px;
}

@media (min-width:1200px) {
	.site-header .site-nav__toggle-label{
		display: none;
	}
}

/* hamburger icon checked */
.site-header input[type="checkbox"]:checked ~ .site-nav__toggle-label span span::before {
	top: 19px;
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}

.site-header input[type="checkbox"]:checked ~ .site-nav__toggle-label span span::after{
	display: none;
}

.site-header input[type="checkbox"]:checked ~ .site-nav__toggle-label span::after {
	top: 19px;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
}

/*ボタンデザイン*/
.btn{
	display: inline-block;
	border: solid 3px orange;
	border-radius: 20px;
	font-weight: bold;
	padding: 10px 20px;
	font-size: 14px;
	color: white;
	transition: all 0.6s;
	cursor: pointer;
	background-color: orange;
}

.btn:hover{
	background-color: white;
	color: orange;
}

/*youtube*/
.youtube {
	position:relative;
	width: 90%;
	max-width: 560px;
	margin: 20px;
}

.youtube::before {
	content: "";
	display: block;
	width: 100%;
	padding-top: 56.25%;
}

.youtube iframe{
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}


/*linkバナー*/

.banner{
	margin: 20px;
	padding: 20px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.banner_item{
	max-width: 300px;
	height: auto;
	margin-bottom: 10px;
}

@media(min-width:768px){
	.banner{
		flex-wrap: wrap;
	}
	.banner_item{
		width: calc(25% - 22px); /* margin padding分を引く */
		margin: 1px;
		padding: 10px;
	}
}

/*footer*/
.footer{
	width: 100%;
	height: auto;
	background-color: #ffffff;
	padding: 0;
	margin: 0;
}

.footer-link{
	color: white;
	font-size: 12px;
	text-decoration: underline;
}

.sns{
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	
}

.sns_icon{
	width: 30px;
	height: 30px;
	margin: 10px 10px;
	padding: 0;
}

.sns .c{
	font-size: 12px;
	color:#000000;
	margin: 10px 5px;
	padding: 0;
}

/*--------------------------ここからトップページ-------------------*/

/*サイトメイン*/
#site-main{
	margin-top: 100px;
	/*background-image: url("../img/haikei.png")*/
}

.site-main{
	margin: 0 20px;
	padding-bottom: 20px;
}

.asya{
	max-width:800px;
	margin: 0 auto;
}

.TL{
	background-image: url("../img/haikei.png");
	background-size: contain;
	padding-top:20px;
	padding-bottom: 20px;
}

.next_live{
	margin-top:50px;
	margin-bottom: 50px;
	border-bottom: dotted 5px #B1063A;
}

.next_live p{
	margin-bottom: 20px;
}

/*ニュース*/
.news{
	margin: 20px 0px;
	border-bottom:dotted 5px #B1063A;
}

.news_title{
	border-bottom:dotted 5px #B1063A;
	margin: 20px 0px;
	font-size: 20px;
	color: #B1063A;
}

.recent-list{
	margin: 20px 0px;
}

.recent-list a{
	color: #4D4D4D;
	text-decoration: underline;
	font-size: 15px;
}

.recent-list h3{
	color: #4D4D4D;
	font-size: 15px;
}

.date{
	color:orange;
}


/*ニュース１件ずつのページ*/
.news_page{
	margin: 70px 20px;
}

.news_page h3{
	color: orange;
	margin-top: 20px;
	margin-bottom: 20px;
}

.has-text-align-right{
	text-align: right;
	color: #B1063A;
}

strong{
	color: orange;
	font-size: 15px;
	margin-bottom: 10px;
}

.news_page a{
	color: orange;
	text-decoration: underline;
}

.news_page p{
	font-size: 15px;
	font-weight: 300;
	color: #4D4D4D;
	line-height: 1.5;
}


/*ニュース一覧*/
#news{
	margin: 70px 20px;
}

#news .recent-list{
	border-bottom: double #B1063A 3px;
	margin-bottom: 20px;
	padding-bottom: 20px;
}


/*リリース*/
.release{
	background-color:#F5C8DB;
	text-align: center;
	padding-top: 20px;
	padding-bottom: 20px;
	margin-top: 20px;
	margin-bottom: 20px;
}

.release_img img{
	width:300px;
	height: auto;
}

.release_content h2{
	color: orange;
	font-weight:500;
}

.release_content button{
	margin-top: 20px;
	margin-bottom: 20px;
}

/*リリース768px以上横並び*/
@media(min-width:768px){
	.release_content{
		display: flex;
		max-width: 100%;
		justify-content: center;
		align-items: center;
	}
	
	.release_img{
		flex-basis: 25%;
	}
	.release_title{
		flex-basis: 25%;
		padding: 20px;
	}
	.youtube2{
		display: flex;
		max-width: 100%;
		justify-content: center;
		align-items: center;
	}
	
}


/*--------------------------ここまでトップページ-------------------*/

/*スケジュール*/
#schedule{
	margin: 70px 20px;
}

.schedule h2{
	color: orange;
}

.schedule_link{
	text-decoration:underline;
	color:orange;
}

.member{
	margin: 0;
}

.member p{
	font-size: 15px;
}

.time{
	text-align: right;
	margin: 20px 0px;
}

.time p{
	font-size: 14px;
}

.yoyaku{
	text-align: right;
}

.schedule{
	border-bottom:dotted 5px #B1063A;
	padding: 40px 0px;
}


.title p{
	color: #F5989D;
}

.googleCalendar iframe {
  width: 100%;
  height: 400px;
}
@media all and (min-width: 768px) {
  .googleCalendar iframe {
	height: 600px;
  }
}


/*ディスコグラフィー*/

#disc{
	margin: 70px 20px;	
}

.disc_item{
	text-align: center;
	padding: 20px 20px;
	margin: 10px 20px;
}

.disc_img{
	max-width: 300px;
	max-height: 300px;
	margin: 0 auto;
}

.disc_title{
	font-size: 15px;
	font-weight: 500;
	color: orange;
	font-weight: bold;
	line-height: 1;
}

@media(min-width:768px){
	.disc{
		display: flex;
		flex-wrap: wrap;
		flex-direction: row;
		max-width: 100%;
		justify-content: space-evenly;
	}
	
	.disc::after {
		display: block;
		content:"";
		width: 340px;
}
}

/*MV*/

#MV{
	margin: 70px 20px;
}

.MV{
	padding: 40px 20px;
	text-align: center;
	border-bottom: dotted 5px #B1063A;
}

/*歌詞*/

#lyrics{
	margin: 70px 20px;
}

.lyrics{
	padding: 20px;
}

.lyrics_title a{
	font-size:18px;
	font-weight: 300;
	color: #4D4D4D;
	line-height: 3;
}

.lyric_title{
	color: orange;
	border-bottom:dotted 4px orange;
	padding-bottom: 10px;
}

.kashi{
	margin: 40px auto 50px;
	line-height:1.8;
	margin-bottom: 50px;
}

.credit{
	font-size: 13px;
	margin-bottom: 50px;
}

.kashi_btn{
	display: inline-block;
	border: solid 3px orange;
	border-radius: 20px;
	font-weight: bold;
	padding: 10px 20px;
	font-size: 14px;
	color: white;
	transition: all 0.6s;
	cursor: pointer;
	background-color: orange;
	display:inline-block;
}


/*問い合わせ*/

#contact{
	margin: 70px 20px;
}

.contact{
	padding: 30px 5px;
	text-align: center;
}

.contact p{
	margin: 2rem;
	
}

.wpcf7 input[name="your-name"] { /* 名前入力欄 */
 width: 100%;
	max-width: 500px;
}
.wpcf7 input[name="your-email"] { /* メール入力欄 */
 width: 100%;
	max-width: 500px;
}
.wpcf7 input[name="your-subject"] { /* タイトル入力欄 */
 width: 100%;
	max-width: 500px;
}
.wpcf7 textarea[name="your-message"] { /* 本文入力欄 */
 width: 100%;
	max-width: 500px;
}