@charset "utf-8";

/* CSS INFORMATION -====================================================
File name : layout.css
Description : レイアウト用CSS
===================================================================== */

@media print {
	.image {
		display: none;
	}

	.gard img {
		display: none;
	}
}
/* ==========================================================
	共通
========================================================== */

/*メインビジュアル背景*/
.mv {
    background: url(../images/bg-pattern.png) repeat top center;
	background-size: 100% auto;
}

/*アクセントカラー（背景色）*/
.nav,
.ttl_h2:before,
.slick-arrow,
.slick-active button::before,
.popup_close {
	background-color: #cc8352;
}

/*アクセントカラー（文字色）*/
.ttl_h3,
.wrapper .txt_link,
.wrapper b.highlight,
.cast_name1 {
	color: #b6ef5d;
}

.popup_close {
	border-color: #b6ef5d;
}

.wrapper section:not(:last-child) {
    border-bottom: 1px solid #fff;
}
/* ==========================================================
	header
========================================================== */

/*メニューの幅(SP)
　※calc(### / 750 * 100%)の###部分を変更してください*/
.nav ul {
	width: calc(1200 / 750 * 100%);
	justify-content: space-around;
}

/*メニューの文字色*/
.nav a {
	color: #fff;
}

/*メニューの文字色：ホバー*/
/*テキストリンクの文字色：ホバー*/
.nav a:hover,
.txt_link:hover {
	color: #ffe553;
}

/*メニューの下線：ホバー*/
.nav a:hover:after {
	background-color: #ff9800;
}
.day {
	/* background-image: linear-gradient(transparent, transparent 50%, #141413 50% 100%); */
	background-color: #141413;
	padding-top: 10rem;
	}
.mv{
}	
.mv h1{
	margin-bottom: -10rem;
	padding-top: 2rem;
}
.day img{
	width: calc(690 / 750 * 100%);
	margin: 0 auto;
	padding: 3rem 0 5rem;
}
.link_text{
	background: #000;
	padding: 0.5em;
	transition : all 0.3s ease 0s;
	font-size: 3rem;
	width: calc(700 / 750 * 100%);
	margin: 0 auto;

}
.link_text a{
	color: #fff;
	text-align: center;
}
.link_text:hover{
	/* text-decoration: underline; */
	opacity: 0.7;
}
.red{
	color: #f00;
}
@media screen and (min-width: 768px) {
.day img{
	width: calc(1000 / 1920 * 100%);
	margin: 0 auto;
	padding: 3rem 0 5rem;
}
.link_text{
	width: calc(500 / 750 * 100%);
}
}
/* ==========================================================
	コンテンツ
========================================================== */

/*コンテンツ外側の背景*/
#main {
    background: url(../images/bg-pattern.png) repeat top center;
	background-size: 100% auto;
	background-position-y: 100%;
	border-top: 8px solid #cc8352;
}

/*コンテンツ背景*/
.contents {
	background-color: #fff;
	padding-bottom: 20rem;
	padding-top: 4rem
}

/*スライダーの矢印ボタン：ホバー*/
/*ポップアップのクローズボタン：ホバー*/
.slick-arrow:hover,
.popup_close:hover {
	background-color: #000;
}

.catch{
	text-align: center;
	font-size: 1.2em;
	font-weight: bold;
	color: #3e220d;
	margin-bottom: 3rem;
}
.comment_box{
	color: #3e220d;
	background-color: #09cbb141;
	padding: 1em;
}
.comment_ttl{
	font-weight: bold;
}
.comment_text{
	font-style: italic;
}
/*ポップアップのクローズボタン：ホバー*/
.popup_close:hover {
	border-color: #000;
}
.captxt {
 font-size:120%!important;
 font-weight: 700;
 color: #b6ef5d!important;
}
.scaptxt {
 font-size:90%!important;
 font-weight: 700;
 color: #b6ef5d!important;
}

.catch-txt {
	font-size: 2.4rem;
	text-align: left;
	font-weight: 700;
	line-height:3.6rem;
	margin: 1rem;
	color: #e04200;
}

.cast_btn_3 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.cast_btn_3 li {
    width: calc(310 / 650 * 100%);
    margin-top: calc(40 / 650 * 100%);
}
#recipe h6 {
	margin-top: 2rem;
	font-size:2.4rem;
	line-height:3rem;
	padding:.5rem;
	font-weight:700;
}
.recipe-txt {
	background-color: #fff7e8;
	border-radius: 2rem;
	padding:2rem;
	border:1px dotted #ff6fac;
}

.recipe-txt li {
	font-size:2rem;
	line-height:3rem;
	border-bottom: 1px dotted #ababab;
}
.back-btn {
	width: 70%;
	margin: 30px auto;
	border-radius: 5rem;
	background-color: #ffdd01;
}
.back-btn a {
	color: #fff;
	font-weight: 700;
	text-align: center;
	padding: 1rem;
}
.back-btn:hover {
background-color: #ff6fac;
}

.item {
	width: 100%;
}
.item02 {
	width: 25%;
}
.item img {
	width: 100%;
}
.box-staff-01 {
    margin: 10px;
}
.staff_list1 dl, .staff_list2 dl{
	display: block;
}

.staff_list1 dd, .staff_list2 dd{
color: #000;
}
@media screen and (min-width: 768px) {
	.cast_btn_3 {
    width: 100%;
    margin: auto;
		justify-content: center;
}
}
.cast_btn_3 li {
    width: calc(150 / 1024 * 100%);
		    margin:0 2rem 0;
}
#recipe h6 {
	font-size: 2rem;
	line-height: 3rem;
	padding: .5rem
}


.recipe-txt li {
	font-size: 1.6rem;
	line-height: 3.2rem;
	border-bottom: 1px dotted #ababab;
}
.back-btn {
	width:450px;
}
.guestBox{
	display: flex;
}
.item {
    width: 50%;
}
.bnr_minogashi{
	width: 70%;
	margin: 0 auto;
}
.banner_list li{
width: calc(215 / 964 * 100%);
margin: 0 calc(5 / 964 * 100%) 0;
}

/* 画像ガード */
 .image {
	position: relative;
	display: inline-block;
	pointer-events: none;
}
.gard img {
		pointer-events: none;
}

.image::after {
	content: "";
	width: 100%;
	height: 100%;
	display: block;
	background-color: transparent;
	position: absolute;

	top: 0;
	left: 0;
}

.img {
    display: flex;
    flex-wrap: wrap; /* 画面サイズに応じて折り返し */
    gap: 10px; /* 画像の間隔を調整 */
    padding: 0;
    list-style: none;
}

.img li {
    flex: 1;
    max-width: calc(33.333% - 10px); /* PCで3等分 */
}

.img img {
    width: 100%;
    height: auto;
    display: block;
}

/* スマホ（768px以下）で縦並び + 画像上に1emのスペース */
@media screen and (max-width: 768px) {
    .img {
        flex-direction: column;
    }
    .img li {
        max-width: 100%;
        margin-top: 1em; /* 各画像の上に1emのスペース */
    }
    
    /* 最初の画像は上にスペース不要 */
    .img li:first-child {
        margin-top: 0;
    }
}

.logo{
	border-bottom: 2px solid #cc8352;
	padding-bottom: 3rem;
    margin-bottom: 6rem;
	padding-top: 3rem;
}
.logo img{
	width:calc(441 / 750 * 100%) ;
	margin: 0 auto;
}

.news_ttl{
	text-align: center;
	font-weight: bold;
    font-size: 3.2rem;
    margin-bottom: 1.5em;
    padding-left: 1em;
    line-height: 1;
}
.news_box{
	background: #f7e6da;
	margin-bottom: 4rem;
}
.news_box dl{
	display: flex;
	padding: 0 1em;
	font-size: 2.4rem;
}
.news_box dt{
	margin-right: 1em;
}

#tickets{
	padding-top: 0 !important;
}