@import url('https://fonts.googleapis.com/css2?family=Barlow:wght@600;700&family=Noto+Sans+JP:wght@400;500;700&display=swap');

#work_head{
	background: rgb(255,251,218);
	background: linear-gradient(0deg, rgba(238,247,227,1) 0%, rgba(238,247,227,1) 90%, rgba(255,255,255,1) 90%, rgba(255,255,255,1) 100%);
	padding-bottom: 28px;
	margin-top: 30px;
	margin-bottom: 95px;
}
#work_head .l-container02{
	display: flex;
	justify-content: space-between;
}
#work_head h1 {
	width: 740px;
	order: 2;
}
#work_head menu{
	width: 230px;
	order: 1;
	margin-top: 80px;
}
#work_head menu li{
	font-size: 18px;
	font-weight: 500;
	line-height: 150%;
	color: #ed7aa7;
	border-bottom: #ed7aa7 dotted 3px;
}
#work_head menu li a{
	position: relative;
	display: flex;
	text-decoration: none;
	align-items: center;
	height: 80px;
	color: inherit;
	padding-left: 15px;
}
#work_head menu li a:before{
	content:"";
	width: 0;
	height: 0;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	border-left: 9px solid #ed7aa7;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
}
@media screen and (max-width:767px) {
	#work_head{
		margin-bottom: 50px;
	}
	#work_head .l-container02{
		display: block;
	}
	#work_head h1 {
		width: 100%;
	}
	#work_head menu{
		width: 100%;
		margin-top: 0;
	}
	#work_head menu ul{
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	#work_head menu li{
		width: 48%;
		font-size: 14px;
	}
	#work_head menu li a{
		height: 60px;
	}
}

article{
	margin-bottom: 50px;
}

p{
	font-size: 14px;
	line-height: 175%;
	letter-spacing: 0.05em;
	font-family: 'Noto Sans JP', sans-serif;
}

a{
	color: #82ad60;
}
a:hover{
	text-decoration: none;
	color: #82ad60;
}

.work_ttl01{
	position: relative;
	padding: 28px 16px 28px 38px;
	background: #cce18e;
	background-size: auto 100%;
	font-size: 24px;
	font-weight: 700;
	color: #ffffff;
	margin-bottom: 40px;
	border-bottom: 3px solid #b1985b;
}
.work_ttl01:before{
	content:"";
	width: 0;
	height: 0;
	position: absolute;
	left: 12px;
	top: 50%;
	transform: translateY(-50%);
	border-left: 15px solid #ed7aa7;
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
}
@media screen and (max-width: 767px){
	.work_ttl01{
		font-size: 18px;
		padding: 20px;
	}
	.work_ttl01:before{
		left: 5px;
		border-left: 8px solid #ed7aa7;
		border-top: 4px solid transparent;
		border-bottom: 4px solid transparent;
	}
}

.work_ttl02{
	font-size : 14px;
	letter-spacing : 0.7px;
	text-align: left;
	border-bottom: #e6e6e6 solid 1px;
	padding-bottom: 13px;
	line-height: 175%;
	margin-bottom: 20px;
	font-weight: 500;
}

.work_ttl02 small{
	display: inline-block;
	line-height: 175%;
    font-size: 12px;
	font-weight: 500;
	color : #ed7aa7;
}
.work_ttl02 span{
	font-size: 17px;
	font-weight: 500;
	color : #ed7aa7;
}
@media screen and (max-width: 767px){
	.work_ttl02{
		font-size: 18px;
	}
}

.work_ttl03{
	padding-left: 23px;
	font-size: 24px;
	font-weight: 500;
	margin-bottom: 25px;
	line-height: 175%;
	color: #000;
	border-left: solid 5px #ed7aa7;
}
@media screen and (max-width: 767px){
	.work_ttl03{
		font-size: 18px;
	}
}

.work_ttl04{
	position: relative;
	font-size : 20px;
	line-height : 170%;
	color: #ed7aa7;
	padding-left: 1em;
	margin-bottom: 10px;
}
.work_ttl04:before {
	display: block;
	content:"";
	width: 10px;
	height: 1px;
	background: #ed7aa7;
	position: absolute;
	left: 0;
	top: 50%;
}
.work_ttl04 a{
	color: inherit;
}
@media screen and (max-width: 767px){
	.work_ttl04{
		font-size: 18px;
	}
}

.work_ttl05{
	position: relative;
	background: #cce18e;
	font-size : 18px;
	font-weight: 500;
	line-height : 189%;
	color : #ED7AA7;
	padding: 9px 12px;
	margin-bottom: 20px;
}
.work_ttl05 .badge{
	position: absolute;
	top: 2px;
	right: 2px;
	height: calc(100% - 4px);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #fff;
	font-size : 16px;
	line-height : 213%;
	color : #ED7AA7;
	padding: 0 14px;
	box-sizing: border-box;
}
.work_ttl05 .badge.--pink{
	background: #ED7AA7;
	color: #fff;
}
@media screen and (max-width: 767px){
	.work_ttl05{
		font-size: 15px;
		padding-right: 55px;
	}
	.work_ttl05 .badge{
		font-size: 13px;
	}
}

table.normal{
	width: 100%;
	background: #fff;
	font-size: 14px;
	margin-bottom: 30px;
	line-height: 175%;
}
table.normal:last-of-type{
	margin-bottom: 0;
}
table.normal th,
table.normal td{
	border:#e6e6e6 solid 1px;
}
table.normal th{
	padding:15px 17px;
	text-align: left;
	font-weight: bold;
	background: #f2f2f2;
	width: 200px;
	vertical-align: top;
}
table.normal td{
	padding: 15px 15px;
}

table.normal td span{
	display: inline-block;
}
table.normal td .big{
	font-size: 16px;
}
table.normal td span:not(:last-child){
	margin-bottom: 10px;
}

table.normal td .red{
	color: #D80000;
}
@media screen and (max-width: 767px){
	table.normal th,
	table.normal td{
		display: block;
		width: 100%;
		box-sizing: border-box;
	}
	table.normal th{
		border-bottom:none;
	}
	table.normal th br{
		display: none;
	}
	table.normal td b{
		font-size: 1em;
	}
}


ul.ul_normal li{
	font-size: 0.88em;
	line-height: 175%;
	position: relative;
	padding-left: 1.5em;
}

ul.ul_normal li:before{
	position: absolute;
	content: "■";
	color: #00349F;
	left: 0;
	top: 0;
}


.box2-1_row{
	display: flex;
	justify-content: space-between;
}

.box2-1_row:not(:last-child){
	margin-bottom: 30px;
}

.box2-1_row > *:first-child{
	order: 2;
	width: 30%;
}

.box2-1_row > *:last-child{
	order: 1;
	width: 65%;
}

@media screen and (max-width: 767px){
	.box2-1_row{
		display: block;
	}

	.box2-1_row > *:first-child{
		width: 100%;
		margin-bottom: 10px;
		text-align: center;
	}

	.box2-1_row > *:first-child img{
		width: 60%;
	}

	.box2-1_row > *:last-child{
		width: 100%;
	}
}

.box1-2_row{
	display: flex;
	justify-content: space-between;
}

.box1-2_row:not(:last-child){
	margin-bottom: 30px;
}

.box1-2_row > *:first-child{
	width: 30%;
}

.box1-2_row > *:last-child{
	width: 65%;
}

@media screen and (max-width: 767px){
	.box1-2_row{
		display: block;
	}

	.box1-2_row > *:first-child{
		width: 100%;
		margin-bottom: 10px;
		text-align: center;
	}

	.box1-2_row > *:first-child img{
		width: 60%;
	}

	.box1-2_row > *:last-child{
		width: 100%;
	}
}

.box1-1_row{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.box1-1_row > *{
	width: 48%;
	margin-bottom: 20px;
}

@media screen and (max-width: 767px){
	.box1-1_row:not(.wide_fix) > *{
		width: 100%;
	}
}


.box_3col{
	float: left;
	width: 31.11%;
	margin-right: 3.33%;
}

.box_3col:nth-child(3n){
	margin-right: 0;
}

@media screen and (max-width: 767px){
	.box_3col{
		float: none;
		width: 100%;
		margin-right: 0;
	}
}

.box_4col{
	display: flex;
	flex-wrap: wrap;
}
.box_4col > *{
	width: 22%;
	margin-right: 4%;
	margin-bottom: 40px;
}
.box_4col > *:nth-child(4n){
	margin-right: 0;
}
@media screen and (max-width: 767px){
	.box_4col{
		display: block;
	}
	.box_4col > *{
		width: 80%;
		margin: 0 auto 40px !important;
	}
}

.movie_1col{
	width: 560px;
	margin-left: auto;
	margin-right: auto;
}

.movie_1col:not(:last-child){
	margin-bottom: 30px;
}

@media screen and (max-width: 767px){
	.movie_1col{
		width: 100%;
		position: relative;
		padding-bottom: 56.25%;
		height: 0;
	}

	.movie_1col iframe{
		position: absolute;
		top: 0;
		right: 0;
		width: 100% !important;
		height: 100% !important;
	}
}

.movie_2col{
	width: 100%;
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
}

.movie_2col iframe{
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}


.soon{
	padding: 30px 0;
}

figcaption{
	font-size: 10px;
	line-height: 175%;
	text-align: left;
}

@media screen and (max-width:767px) {
	figcaption{
		text-align: center;
	}
}


/*---------------------------------
	#block1
----------------------------------*/
#block1 .lead{
	font-size : 20px;
	line-height : 170%;
	color : #ED7AA7;
	margin-bottom: 20px;
}
#block1 .img{
	margin-top: 30px;
}
#block1 .img.box1-1_row > *:first-child{
	width: 49%;
}
#block1 .img.box1-1_row > *:last-child{
	width: 50%;
}

#block1 .info{
	margin-bottom: 45px;
}
#block1 .info p{
	font-size : 14px;
	line-height : 186%;
	margin-top: 10px;
	margin-bottom: 15px;
}
#block1 .info p span{
	display: inline-block;
	font-size: 20px;
	font-weight: 500;
	color: #ed7aa7;
	margin-right: 1em;
}
#block1 .info dl{
	margin-bottom: 10px;
}
#block1 .info dt{
	float: left;
	width: 60px;
	background: #ed7aa7;
	font-size : 16px;
	text-align: center;
	line-height : 180%;
	color : #FFFFFF;
	padding-bottom: 1px;
}
#block1 .info dd{
	font-size : 18px;
	line-height : 144%;
	margin-left: 71px;
}

#block1 .btn{
	width: 320px;
	margin-top: 30px;
}

.event_nav{
	margin-top: 50px;
	margin-bottom: 35px;
}
.event_nav li{
	display: inline-block;
	font-size : 18px;
	line-height : 189%;
	color : #333333;
	margin-right: 30px;
}
.event_nav li a {
	position: relative;
	display: inline-block;
	color: inherit;
	text-decoration: none;
	padding-left: 20px;
}
.event_nav li a:hover {
	text-decoration: underline;
}
.event_nav li a:before {
	content:"";
	width: 0;
	height: 0;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	border-left: 10px solid #ed7aa7;
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
}

.ev_block{
	margin-bottom: 50px;
}
.ev_block figure{
	margin-bottom: 23px;
	text-align: center;
}
.ev_block p{
	font-size : 14px;
	line-height : 186%;
	margin-bottom: 10px;
}
.ev_block .ev_block__info{
	font-weight: 500;
}
.ev_block p span{
	color: #ed7aa7;
}
.ev_block ul{
	margin-top: 20px;
}
.ev_block li{
	position: relative;
	font-size : 14px;
	line-height : 186%;
	padding-left: 15px;
}
.ev_block li:before {
	content:"";
	width: 0;
	height: 0;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	border-left: 7px solid #ed7aa7;
	border-top: 4px solid transparent;
	border-bottom: 4px solid transparent;
}
.ev_block .flex{
	display: flex;
	justify-content: space-between;
}
.ev_block .flex > figure{
	width: 20%;
	order:2;
}
.ev_block .flex > div{
	width: 77%;
	order:1;
}



@media all and (max-width:767px) {
	#block1 .info p span{
		font-size: 17px;
	}
	#block1 .info dt{
		font-size : 15px;
	}
	#block1 .info dd{
		font-size : 16px;
	}

	#block1 .img.box1-1_row > *:first-child{
		width: 100%;
	}
	#block1 .img.box1-1_row > *:last-child{
		width: 100%;
	}

	.ev_block .flex{
		display: block;
	}
	.ev_block .flex > figure{
		width: 55%;
		margin: 0 auto 15px;
	}
	.ev_block .flex > div{
		width: 100%;
	}

}

/*---------------------------------
	#block2
----------------------------------*/
#schedule .ttl{
	background: #eef7e3;
	font-size : 18px;
	font-weight: 500;
	color:#fff;
	line-height : 189%;
	padding: 12px 10px;
	margin-bottom: 20px;
}
#schedule .ttl.--green{
	background-color: #659f44;
}
#schedule .ttl.--pink{
	background-color: #da5185;
}
#schedule .ttl.--blue{
	background-color: #38a1db;
}
#schedule .ttl.--orange{
	background-color: #f18e1d;
}
#schedule .ttl.--navy{
	background-color: #26499d;
}
#schedule .ttl.--violet{
	background-color: #b06caa;
}

#schedule .ttl a{
	color: inherit;
}
#schedule .btn a{
	position: relative;
	display: block;
	font-size : 18px;
	font-weight: 500;
	line-height : 189%;
	color : #ED7AA7;
	text-decoration: none;
	border: #ed7aa7 solid 2px;
	padding: 18px;
}
#schedule .btn a:after{
	content:"";
	width: 0;
	height: 0;
	position: absolute;
	right: 18px;
	top: 50%;
	transform: translateY(-50%);
	border-left: 6px solid transparent;
	border-top: 10px solid #ed7aa7;
	border-right: 6px solid transparent;
}
#schedule table.dash thead th {
	position: relative;
	font-size : 15px;
	font-weight: 500;
	text-align: left !important;
	line-height : 227%;
	color : #82AD60;
	border-bottom:#cce18e dotted 2px;
	padding-bottom: 5px;
}
#schedule table.dash thead th:not(:last-child):after {
	content:"";
	width: 15px;
	height: 100%;
	background: #ffffff;
	position: absolute;
	right: 0;
	bottom: -2px;
}
#schedule table.dash.--pink thead th{
	color:#da5185;
	border-bottom-color: #da5185;
}
#schedule table.dash.--pink a{
	color:#da5185;
}
#schedule table.dash.--blue thead th{
	color:#38a1db;
	border-bottom-color: #38a1db;
}
#schedule table.dash.--blue a{
	color:#38a1db;
}
#schedule table.dash.--orange thead th{
	color:#f18e1d;
	border-bottom-color: #f18e1d;
}
#schedule table.dash.--orange a{
	color:#f18e1d;
}
#schedule table.dash.--navy thead th{
	color:#26499d;
	border-bottom-color: #26499d;
}
#schedule table.dash.--navy a{
	color:#26499d;
}
#schedule table.dash.--violet thead th{
	color:#b06caa;
	border-bottom-color: #b06caa;
}
#schedule table.dash.--violet a{
	color:#b06caa;
}

#schedule table.dash{
	width: 100%;
	font-size: 0.8125em;
	margin-bottom: 30px;
	line-height: 175%;
}
#schedule table.dash:last-of-type{
	margin-bottom: 0;
}
#schedule table.dash tbody tr{
	border-bottom:#ccc solid 2px;
}
#schedule table.dash th{
	padding:10px 0;
	font-weight: bold;
	vertical-align: middle;
	text-align: center;
}
#schedule table.dash .time{
	width: 115px;
	text-align: center;
}
#schedule table.dash .full{
	width: 80%;
}
#schedule table.dash td{
	padding: 10px 15px 10px 0;
}
#schedule table.dash td.artist{
	font-size: 16px;
}
#schedule table.dash td:first-child{
	padding-left: 0;
}
#schedule table.dash.main td:nth-child(2) br{
	display: none;
}
#schedule table.dash td:last-child{
	width: 30%;
	padding-right: 0;
}

#schedule table.dash td span{
	display: inline-block;
}
#schedule table.dash td span:not(:last-child){
	margin-bottom: 10px;
}
#schedule table.dash td b{
	font-size: 1.15em;
}

#schedule table.dash td .red{
	color: #D80000;
	margin-bottom: 0 !important;
}

#schedule .title_wrap{
	display: flex;
	align-items: center;
	margin-top: 60px;
	margin-bottom: 40px;
}

#schedule .title_wrap .work_ttl03{
	margin-right: 50px;
	margin-bottom: 0;
}

#schedule .sc_btn{
	width: 380px;
}
@media all and (max-width:767px) {
	#schedule .sc_btn{
		width: 100%;
		margin: 20px 0 50px;
	}

	#schedule .title_wrap{
		display: block;
	}
}

.fuki{
	position: relative;
	display: inline-block;
	background: #eef7e3;
	font-size: 14px;
	padding: 10px 15px;
	border-radius: 10px;
	margin-top: 20px;
}
.fuki:before{
	content:"";
	display: block;
	width: 0;
	height: 0;
	position: absolute;
	left: 25px;
	top: -15px;
	border-bottom: #eef7e3 solid 20px;
	border-left: transparent solid 10px;
	border-right: transparent solid 10px;
}
.fuki.--arrow_none{
	margin-top: 0;
}
.fuki.--arrow_none:before{
	display: none;
}

/*---------------------------------
	#block3
----------------------------------*/
.box figure{
	margin-bottom: 15px;
}
.box .ttl{
	font-size: 15px;
	font-weight: 700;
	border-left: #ed7aa7 solid 2px;
	padding-left: 10px;
	margin-bottom: 5px;
}
.box .name{
	font-size : 14px;
	letter-spacing : 0.7px;
	margin-bottom: 15px;
}
.box .name span{
	color: #ed7aa7;
	font-size: 17px;
	font-weight: 500;
}
.box .name small{
	display: inline-block;
	color: #ed7aa7;
	font-size: 12px;
	font-weight: 500;
}
.box .btn{
	text-align: right;
}
.box .btn a{
	display: inline-block;
	width: 140px;
}
.box .att{
	text-align: center;
	background: #ebe5d6;
	padding: 10px;
}

@media all and (max-width:767px) {
	#block3{
	
	}
}

#block4 .lead{
	font-size: 16px;
	font-weight: 500;
	margin-bottom: 20px;
}

#block4 hr{
	color: #eeeeee;
	margin: 50px 0;
}

.remodal .btn_close{
	width: 40px;
	position: absolute;
	right: 0;
	bottom: 0;
}

.remodal .box2-1_row > *:first-child{
	order: 2;
	width: 40%;
}

.remodal .box2-1_row > *:last-child{
	order: 1;
	width: 55%;
}

.remodal p{
	text-align: left;
}

.remodal .ttl {
	font-size: 15px;
	font-weight: 700;
	border-left: #ed7aa7 solid 2px;
	padding-left: 10px;
	margin-bottom: 5px;
}
.remodal .ttl:not(:nth-child(2)) {
	margin-top: 15px;
}

@media screen and (max-width: 767px){
	.remodal .box2-1_row{
		display: block;
	}

	.remodal .box2-1_row > *:first-child{
		width: 100%;
		margin-bottom: 10px;
		text-align: center;
	}

	.remodal .box2-1_row > *:first-child img{
		width: 65%;
	}

	.remodal .box2-1_row > *:last-child{
		width: 100%;
	}
}

/*---------------------------------
	#form block
----------------------------------*/
#form{
	margin-bottom: 80px;
}
#form .top{
	margin-bottom: 50px;
}
#form dl{
	margin-bottom: 40px;
}
#form dt{
	font-size: 16px;
	font-weight: bold;
	line-height: 175%;
}
#form dd{
	font-size: 14px;
	margin-bottom: 10px;
	line-height: 175%;
}
#form .att{
	font-size: 14px;
	color:#D80000;
	margin-bottom: 10px;
}
#form .att2{
	font-size: 1.2em;
	margin: 30px 0 20px;
}

#form .red{
	color:#D80000;
}

#form .mid{
	vertical-align: middle;
}
#form .v_top{
	vertical-align: top;
}
#form_main th span{
	color:#D80000;
}
#form_main table{
	line-height: 175%;
	margin-bottom: 40px;
}
#form_main th{
    width: 250px;
	font-weight: bold;
	text-align: left;
	font-size: 15px;
	padding: 5px 20px 5px 0;
}
#form_main th.va_top{
	vertical-align: top;
}
#form_main th.t{
	line-height: 175%;
	padding-top: 15px;
	padding-bottom: 15px;
}
#form_main th.pb{
	padding-bottom: 35px;
}
#form_main th.lh{
	line-height: 150%;
}
#form_main td{
	width: 750px;
	font-size: 14px;
	padding: 5px 0;
	line-height: 175%;
}
#form_main td span.normal{
	font-size: 1.08em;
}
#form_main td.va_mid{
	vertical-align: middle;
}
#form_main th.wide,
#form_main td.wide{
	padding: 20px 0;
}
#form label{
	display: inline-block;
	margin-right: 22px;
	font-size: 14px;
	line-height: 3em;
}
#form .form_count label{
	margin-right: 0;
}
#form .form_count label:first-child{
	float: left;
}
#form input[type="text"]{
	border:#ccc solid 1px;
	height: 35px;
	width:400px;
	margin-right: 10px;
}

#form .form_count input[type="text"]{
	width: 40px;
	height: 20px;
	margin: 0 5px;
}

#form input[type="radio"]{
	margin-right: 10px;
}

#form table.form input.short{
	width:200px;
}

#form textarea{
	font-size: 14px;
	padding: 10px;
	border:#ccc solid 1px;
	width: 500px;
	height: 100px;
}

#form select{
	margin-top: 5px;
	font-size: 15px;
}

#form .send_btn{
	text-align: center;
}

#form .send_btn input{
	border:none;
	font-size: 1em;
	font-weight: bold;
	width:200px;
	padding: 16px 0;
}
#form .send_btn input[type="submit"]{
	background: #666;
	color:#fff;
	cursor: pointer;
}
#form .send_btn input[type="button"]{
	background: #ddd;
	color:#444;
	margin-left: 20px;
	cursor: pointer;
}



@media screen and (max-width: 767px){
    #form input[type="text"]{
		width:60%;
	}
    #form .start label{
        display: inline-block;
    }

	#form_main table th,
	#form_main table td{
		display: block;
        width: 100%;
	}
	#form_main table th.spacer_pc{
		display: none;
	}
	#form input[type="text"]{
		width:60%;
	}
	#form textarea{
		width:100%;
	}
	#form label:after{
		content: "\A";
		white-space: pre ;
	}

	#form_main th.pb{
		padding-bottom: 0;
	}


	#form .send_btn input{
		width: 45%;
	}

	#form label{
		line-height: 150%;
	}

    #form dl{
        margin-bottom: 0;
    }
}
