@charset "utf-8";

.header {
	position: absolute;
  	pointer-events: none;
}

.header-logo-link {
    filter: none;
}

.hamburger-btn {
  	pointer-events: auto;
}

.hamburger-btn-bar>div {
	background: var(--white);
}

.com-frame02-01:before, .com-frame02-01:after, .com-frame02-02:before, .com-frame02-02:after {
    max-width: 115px;
}

/*-----------------------------------------------------------
cover
-----------------------------------------------------------*/

.cover-contents {
    position: absolute;
    width: 95%;
    height: 100%;
    top: 0;
    bottom: auto;
    left: 0;
    right: 0;
    margin: auto;
    padding: 15px 0 0;
}

.cover-row {
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
}

.cover-logo-box {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    aspect-ratio: 547 / 342;
    /* display: flex; */
    /* align-items: center; */
    justify-content: center;
    z-index: 9;
}

.cover-logo-box img {
    aspect-ratio: 547 / 342;
}

.cover-navi-box {
    padding: 0 15px 0 0;
    max-width: 180px;
    width: 20%;
}

.cover-navi {
    color: #FFF;
    font-family: var(--font-family01);
    font-weight: 600;
    letter-spacing: 0.05em;
    margin: 5px 0 0;
    display: block;
}

.cover-navi:hover {
    color: #FFF;
}

.cover-mask {
	position: relative;
}

.cover-mask:after {
  	content: "";
  	position: absolute;
  	top: 0;
  	left: 0;
  	margin: auto;
 	width: 100%;
  	height: 100%;
    background: linear-gradient(90deg,rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.4) 60%, rgba(0, 0, 0, 0.8) 100%);
	z-index: 1;
}

.cover-frame .swiper-slide img {
	aspect-ratio: 800 / 900;
}

.scroll-link {
    font-family: var(--font-family02);
    font-size: clamp(13px, 12.272px + 0.194vw, 16px);
    font-weight: 700;
    color: #fff;
    writing-mode: vertical-rl;
    position: absolute;
    display: flex;
    gap: 8px;
    align-items: center;
    height: 154px;
    top: auto;
    left: 0;
    bottom: 0;
}

.scroll-link:after {
    content: "";
    display: block;
    flex: 1;
    width: 1px;
    background: #fff;
}

.scroll-link:hover{
    color: #fff;
}


/* 1. スライド全体の設定：はみ出しを隠す */
.main-visual-slider .swiper-slide {
    border-radius: 2rem;
    overflow: hidden;
}

/* 非アクティブ時：トランジションなしで即座にscale(1)に戻す */
.cover-slider .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1);
    transition: none; /* ← 非アクティブ時はtransitionなし */
}

/* アクティブ + フェードアウト中：ズームアニメーション付き */
.cover-slider .swiper-slide-active img,
.cover-slider .swiper-slide-duplicate-active img,
.cover-slider .swiper-slide-prev img,
.cover-slider .swiper-slide-duplicate-prev img {
    transform: scale(1.12);
    transition: transform 6s linear; /* ← アクティブ時だけtransitionを付ける */
}

/*-----------------------------------------------------------
お知らせ
-----------------------------------------------------------*/

.top01.bg-img01 {
    background: url(/system_panel/uploads/images/bg01.jpg) repeat-y bottom center / cover;
}

.top01-row {
	gap: 30px;
}

.news-item {
    border-bottom: 1px solid var(--border-primary);
}

.news-flex {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    position: relative;
    padding: 20px 0;
    transition: all .3s;
    width: 100%;
}

.news-item:first-child .news-flex {
    padding-top: 0;
}

.top-news-main {
	width: 100%;
}

.news-cate-flex {
    display: flex;
    align-items: center;
}

.news-text-box {
    /* flex: 1; */
    /* margin: 0 15px 0 0; */
    width: 90%;
    min-width: 0;
}

.news-date {
    width: 85px;
    margin: 0 20px 0 0;
    font-size: 14px;
    letter-spacing: 0;
    max-width: max-content;
    flex-shrink: 0;
	color: var(--base-body-color)
}

.news-cate-box {
    max-width: calc(100% - 125px);
    min-width: 85px;
    display: inline-block;
    /* width: 100%; */
    padding: 2px 11px 2px 10px;
    background: var(--tertiary);
    /* flex: 1; */
    flex: 0 1 auto;
}

.news-cate {
	color: var(--base-body-color);
	font-size: 14px;
	line-height: 1.5;
	letter-spacing: 0;
	text-align: center;
	word-break: keep-all;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	min-width: 0;
}

.news-title {
    font-family: var(--font-family01);
    font-weight: 600;
    letter-spacing: 0.05em;
    color: var(--base-body-color);
    margin: 5px 0 0;
    transition: all .3s;
}

.news-item:hover .news-title {
    color: var(--primary);
 	transition: all .3s;
}


/*-----------------------------------------------------------
光春について
-----------------------------------------------------------*/

.top-parallax {
	position: relative;
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
	/* height: 100lvh; */
}  

.top-parallax:after {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url(/system_panel/uploads/images/top-bg01.jpg);
    background-repeat: no-repeat;
    background-position: 30% , 0;
    background-size: cover;
    z-index: -1;
    transform: translateZ(0);
}

.mask01.top02-wrapper:before {
	height: 100.5%;
}

/*.top02-wrapper {
	height: 100%;
}*/

  
.top02-wrapper:before {
	mix-blend-mode: multiply;  
}

.top02-row {
	gap: 30px;  
}
 
.top02-text-block {
	flex: 1;
}

.top02-text-box {
    line-height: 2;
}


.top-loop-contents01 {
    margin: -80px auto 0;
}  

/*-----------------------------------------------------------
おすすめメニュー
-----------------------------------------------------------*/

.top-rec-en-title {
	font-size: clamp(28px, 19.262px + 2.33vw, 64px);
}

.top-rec-swiper {
  width: 100%;
  padding-bottom: 40px;
  overflow: hidden;
}

.top-rec-item {
    /*max-width: 485px;*/
    width: 100%;
    border: 1px solid var(--white);
    border-radius: 7px;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 40px 15px;
}

.top-rec-item-in {
    max-width: 345px;
    width: 100%;
    margin: 0 auto;
}

.top-rec-img-box {
	aspect-ratio: 345 / 345;
}

.top-rec-text-box {
	margin: 25px auto 0;
}

.top-rec-title {
    font-family: var(--font-family01);
    font-weight: 600;
    font-size: clamp(17px, 14.816px + 0.583vw, 26px);
    margin: 0 0 17px;
}

.top-rec-swiper .swiper-pagination-bullet {
  background: var(--white);
  opacity: 0.3;
}
.top-rec-swiper .swiper-pagination-bullet-active {
  opacity: 1;
}

/*-----------------------------------------------------------
top04
-----------------------------------------------------------*/

.top04 {
    background: linear-gradient(to bottom, rgba(110, 14, 30) 30%, rgba(106, 13, 29) 50%, rgba(79, 10, 22) 100%);
}

.top04-item {
	gap: 30px;
}

.top04-img-box {
	aspect-ratio: 1020/ 620;
}

/*-----------------------------------------------------------
店舗情報
-----------------------------------------------------------*/

.top04-frame {
  	max-width: 1800px;
  	width: 95%;
  	height: 95%;
  	position: absolute;
  	top: 0;
  	left: 0;
  	right: 0;
  	bottom: 0;
  	margin: auto;
  	z-index: 1;
}

.top06-img-box {
	aspect-ratio: 600 / 580;
}

.top06-tr {
	gap: 10px;  
  	border-bottom: 1px solid var(--border-primary)
}

.top06-logo-box {
	aspect-ratio: 312/ 44;
}

.top06-td-row {
	gap: 16px;
}

.top06-tel-row {
	gap: 6px;
}

.top06-td {
    line-height: 1.68;
}

.top06-th {
	width: 100%;  
}

.top06-td {
	flex: 1;
}

.top06-btn-row {
	gap: 15px;
}

.top06-btn-row {
	flex-direction: column;
}

.top06-row02 {
	gap: 30px;
}

.calendar-block {
    max-width: 650px;
    width: 100%;
	margin: 40px 0 0;
}
  
.top06-map-block {
    max-width: 1000px;
    width: 100%;
  	height: 300px;
}

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:375px) {

}/* min-width: 375px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:414px) {

/*-----------------------------------------------------------
top04
-----------------------------------------------------------*/



}/* min-width: 414px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:576px) {

/*-----------------------------------------------------------
cover
-----------------------------------------------------------*/
  
.scroll-link {
    height: 224px;
}

  
/*-----------------------------------------------------------
top06
-----------------------------------------------------------*/
  
.top06-btn-row {
	flex-direction: row;
}

}/* min-width: 576px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width: 768px) {
  
.hamburger-btn {
    display: none;
}

.is-scroll .hamburger-btn {
    display: block;
}
	
/*-----------------------------------------------------------
cover
-----------------------------------------------------------*/

.cover-frame .swiper-slide img {
	aspect-ratio: 1920 / 960;
}

/*-----------------------------------------------------------
お知らせ
-----------------------------------------------------------*/

.top-news-main {
    width: 65%;
}
  
/*-----------------------------------------------------------
top02
-----------------------------------------------------------*/


.top-loop-contents01 {
    margin: -150px auto 0;
}  
  

/*-----------------------------------------------------------
top03
-----------------------------------------------------------*/


/*-----------------------------------------------------------
店舗情報
-----------------------------------------------------------*/

.top04-frame {
  	height: 89.5%;
}


/*-----------------------------------------------------------
top05
-----------------------------------------------------------*/
.top06-map-block {
    height: 400px;
}
   
}/* min-width: 768px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:992px) {

/*-----------------------------------------------------------
top01
-----------------------------------------------------------*/
  


}/* min-width: 992px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width: 1024px) {
  
/*-----------------------------------------------------------
cover
-----------------------------------------------------------*/

.cover-contents {
    padding: 40px 0 0;
}

.cover-navi-box {
    width: 25%;
}

.cover-navi {
    margin: 10px 0 0;
}


/*-----------------------------------------------------------
お知らせ
-----------------------------------------------------------*/

.top01-row {
    gap: 50px;
}
  
.news-flex {
    padding: 29px 0 28px;
}
  
.news-date, .news-cate {
    font-size: 15px;
}
  
.news-cate-box {
    min-width: 110px;
}

/*-----------------------------------------------------------
top02
-----------------------------------------------------------*/

.top02-row {
    gap: 0;
}

.top-loop-contents01 {
    margin: -200px auto 0;
}  
  

/*-----------------------------------------------------------
top04
-----------------------------------------------------------*/


/*-----------------------------------------------------------
top05
-----------------------------------------------------------*/
  

  
/*-----------------------------------------------------------
top06
-----------------------------------------------------------*/
.top06-row02 {
    flex-direction: row !important;
    align-items: stretch !important;
}
  
.calendar-block {
    max-width: 600px;
    width: 100%;
	margin: 0;
}
  
.calendar-block {
    /* aspect-ratio: 670 / 803; */
}
  
.top06-map-block {
  	height: auto;
}

}/* min-width: 1024px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:1200px) {
  
.header-frame {
	  padding: 49px 0;
}
  
/*-----------------------------------------------------------
cover
-----------------------------------------------------------*/

.scroll-link {
    bottom: 30px;
}

/*-----------------------------------------------------------
お知らせ
-----------------------------------------------------------*/

.top01-row {
    gap: 80px;
}
  
/*-----------------------------------------------------------
top02
-----------------------------------------------------------*/

  
/*-----------------------------------------------------------
おすすめメニュー
-----------------------------------------------------------*/
  
.top03-main {
	margin: 100px auto 0 !important;
}

.top-rec-item {
    padding: 65px 15px;
}  

.top-rec-text-box {
	margin: 40px auto 0;
}
 
  
/*-----------------------------------------------------------
top04
-----------------------------------------------------------*/


/*-----------------------------------------------------------
top05
-----------------------------------------------------------*/


/*-----------------------------------------------------------
店舗情報
-----------------------------------------------------------*/
  
.top06-row01 {
    align-items: center !important;
}
  
.top06-img-box {
    width: 43% !important;
}
  
.top06-tr {
    flex-direction: row !important;
    gap: 25px;
}  
  
.top06-th {
	width: 85px;  
}
  
.top06-btn-row {
	gap: 35px;
}

}/* min-width: 1200px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:1400px) {

/*-----------------------------------------------------------
cover
-----------------------------------------------------------*/

.cover-contents {
    padding: 70px 0 0;
}
  
.cover-navi, .cover-navi h1 {
    margin: 17px 0 0;
}

.scroll-link {
    bottom: 30px;
    left: -20px;
}
  
/*-----------------------------------------------------------
top01
-----------------------------------------------------------*/

.top01 {
	padding: 170px 0 160px !important;
}

/*-----------------------------------------------------------
top02
-----------------------------------------------------------*/

.top02-wrapper {
	padding: 154px 0 410px !important;
}
  
.top02-row {
    gap: 140px;
}  
  
.top02-wrapper .en-title88 + .title20 {
    margin: 26px 0 0;
}
  
.top02-text-box {
    line-height: 2.5;
}
  
.top-loop-contents01 {
    margin: -240px auto 0;
}

/*-----------------------------------------------------------
top04
-----------------------------------------------------------*/
  
.top03 {
    padding: 175px 0 0 0 !important
}

/*-----------------------------------------------------------
top04
-----------------------------------------------------------*/

.top04 {
	  padding: 120px 0 170px !important;
}
  
.top04-main {
	padding: 160px 0 !important;
}  
  
/*-----------------------------------------------------------
店舗情報
-----------------------------------------------------------*/  
  
.top06 {
	  padding: 178px 0 170px!important;
}
  
.top06-row01 {
	margin: 100px auto 0 !important;
}

.top06-tr {
	gap: 40px;  
}
  

}/* min-width: 1400px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:1500px) {

/*-----------------------------------------------------------
top04
-----------------------------------------------------------*/


 
  
}/* min-width: 1500px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:1600px) {
  
/*-----------------------------------------------------------
top05
-----------------------------------------------------------*/


  
}/* min-width: 1600px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (min-width:1800px) {

  
.top-rec-item {
    max-width: 485px;
}
  

  
}/* min-width: 1700px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */ 