@charset "UTF-8";
/*
	* Bootstrap 単独ページに掛かる関するカスタムCSS

	@media screen and (max-width: 1499.98px) {}
	@media (max-width: 991.98px) {}
	@media print {}
	@media screen and (max-width: 767px) {}
 
	xxl-1500over(min-1500)
	xl-1500(max-1499) 左右余白15pxを含む（1470）
	lg-992(max-991)
	md-768(max-767)
	sm-576(max-575)
 
	-------------------

*/

	.cus-mv{
		position: relative;
		padding-top: 120px;
		margin: 0 auto;
		width: auto;
		max-width: 1867px;
	}

	.carousel-indicators button {/* ドット（インジケーター）を下で表示したい場合こちら */
		position: relative;
		width: 10px !important;
		height: 10px !important;
		border-radius: 50%;
		margin-left: 12px !important;
		margin-right: 12px !important;
		margin-bottom: 20px !important;
		background-color: #fff;
		border: none;
		opacity: 0.5;
	}
	.carousel-indicators .active::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: 18px;
		height: 18px;
		background-color: #fff;
		opacity: 0.5;
		border-radius: 50%;
		z-index: -1;
	}

	.cus-mv-text{
		position: absolute;
		bottom: 60px;
		right: 60px;
		z-index: 3;
		text-shadow: 
    /* 1. 縁取り（輪郭をはっきりさせる） */
    1px 1px 0 rgba(255, 255, 255, 1),
    -1px 1px 0 rgba(255, 255, 255, 1),
    1px -1px 0 rgba(255, 255, 255, 1),
    -1px -1px 0 rgba(255, 255, 255, 1),
    /* 2. 外側のぼかし（グラデーションを作る） */
    0 0 5px rgba(255, 255, 255, 0.8),
    0 0 10px rgba(255, 255, 255, 0.6),
    0 0 20px rgba(255, 255, 255, 0.4);
	}
	.cus-mv-text .en{
		display: block;
		margin-bottom: 26px;
		font-family: "Libertinus Serif Display", system-ui;
		font-weight: 400;
		font-style: normal;
		font-size: 56px;
		color: #ee7800;
		text-align: right;
		line-height: 1.4;
	}
	.cus-mv-text .jp{
		display: block;
		font-size: 32px;
		font-weight: 400;
		color: #ee7800;
		text-align: right;
	}
	@media screen and (max-width: 1897.98px) {
		.cus-mv{
			padding: 120px 1% 0 1%;
		}
	}
	@media screen and (max-width: 1499.98px) {
		.cus-mv-text .en{
			margin-bottom: 22px;
			font-size: 4vw;
		}
		.cus-mv-text .jp{
			font-size: 2.2vw;
		}
	}
	@media (max-width: 991.98px) {
		.cus-mv{
			padding-top: 90px;
		}

		.cus-mv-text .en{
			margin-bottom: 20px;
			font-size: 4.5vw;
		}
		.cus-mv-text .jp{
			font-size: 2.6vw;
		}
	}
	@media print {
		.cus-mv{
			padding-top: 90px;
		}

		.cus-mv-text .en{
			margin-bottom: 20px;
			font-size: 4.5vw;
		}
		.cus-mv-text .jp{
			font-size: 2.6vw;
		}
	}
	@media screen and (max-width: 767px) {
		.cus-mv{
			padding-top: 80px;
		}

		.cus-mv-text{
			bottom: 30px;
			right: 20px;
		}
		.cus-mv-text .en{
			margin-bottom: 20px;
			font-size: 26px;
		}
		.cus-mv-text .jp{
			font-size: 18px;
		}
	}

/* area01 */
	.cus-home-area01-con{
		padding: 200px 0;
  	background: linear-gradient(
   	 to bottom,
   	 rgba(255, 255, 255, 0) 0%,   /* 上端：透明 */
   	 rgba(255, 255, 255, 0.5) 30%, /* 上下中央に向かって薄い白 */
   	 rgba(255, 255, 255, 0.5) 70%, /* 同上 */
   	 rgba(255, 255, 255, 0) 100%   /* 下端：透明 */
  	);
	}
	.cus-home-area01-title{
		font-size: 40px;
		font-weight: 400;
		color: #ee7800;
		line-height: 1.5;
		text-align: center;
	}
	.cus-home-area01-text{
		line-height: 2.4;
		text-align: center;
	}

	.cus-home-anime01{
		top: 100px;
		left: 50%;
		margin-left: -880px;
	}
	.cus-home-anime02{
		bottom: 40px;
		left: 50%;
		margin-left: -715px;
	}
	.cus-home-anime03{
		bottom: 0px;
		right: 50%;
		margin-right: -520px;
	}
	.cus-home-anime04{
		top: 160px;
		right: 50%;
		margin-right: -880px;
	}
	.cus-home-anime05{
		top: 60px;
		right: 50%;
		margin-right: -360px;
	}
	@media screen and (max-width: 1499.98px) {
		.cus-home-area01-con{
			padding: 160px 0;
		}
		.cus-home-area01-title{
			font-size: 32px;
		}
		.cus-home-area01-text{
			line-height: 2.3;
		}
	
		.cus-home-anime01{
			top: 70px;
			left: 0%;
			margin-left: -40px;
		}
		.cus-home-anime02{
			bottom: 20px;
			left: 2%;
			margin-left: 0px;
		}
		.cus-home-anime03{
			bottom: 0px;
			right: 13%;
			margin-right: 0px;
		}
		.cus-home-anime04{
			top: 100px;
			right: 0%;
			margin-right: -40px;
		}
		.cus-home-anime05{
			top: 40px;
			right: 20%;
			margin-right: 0px;
		}
		.cus-home-anime01 img{width: calc(246px * 0.8);}
		.cus-home-anime02 img{width: calc(382px * 0.8);}
		.cus-home-anime03 img{width: calc(145px * 0.8);}
		.cus-home-anime04 img{width: calc(216px * 0.8);}
		.cus-home-anime05 img{width: calc(102px * 0.8);}
	}
	@media (max-width: 991.98px) {
		.cus-home-area01-con{
			padding: 130px 0;
		}
		.cus-home-area01-title{
			font-size: 26px;
		}
		.cus-home-area01-text{
			line-height: 2.1;
		}
	
		.cus-home-anime01{
			top: 70px;
			left: 0%;
			margin-left: -40px;
		}
		.cus-home-anime02{
			bottom: 20px;
			left: 2%;
			margin-left: 0px;
		}
		.cus-home-anime03{
			bottom: 0px;
			right: 13%;
			margin-right: 0px;
		}
		.cus-home-anime04{
			top: 100px;
			right: 0%;
			margin-right: -40px;
		}
		.cus-home-anime05{
			top: 40px;
			right: 20%;
			margin-right: 0px;
		}
		.cus-home-anime01 img{width: calc(246px * 0.6);}
		.cus-home-anime02 img{width: calc(382px * 0.6);}
		.cus-home-anime03 img{width: calc(145px * 0.6);}
		.cus-home-anime04 img{width: calc(216px * 0.6);}
		.cus-home-anime05 img{width: calc(102px * 0.6);}
	}
	@media print {
		.cus-home-area01-con{
			padding: 80px 0;
		}
		.cus-home-area01-title{
			font-size: 26px;
		}
		.cus-home-area01-text{
			line-height: 2.1;
		}
	
		.cus-home-anime01{
			top: 70px;
			left: 0%;
			margin-left: -40px;
		}
		.cus-home-anime02{
			bottom: 20px;
			left: 2%;
			margin-left: 0px;
		}
		.cus-home-anime03{
			bottom: 0px;
			right: 13%;
			margin-right: 0px;
		}
		.cus-home-anime04{
			top: 100px;
			right: 0%;
			margin-right: -40px;
		}
		.cus-home-anime05{
			top: 40px;
			right: 20%;
			margin-right: 0px;
		}
		.cus-home-anime01 img{width: calc(246px * 0.5);}
		.cus-home-anime02 img{width: calc(382px * 0.5);}
		.cus-home-anime03 img{width: calc(145px * 0.5);}
		.cus-home-anime04 img{width: calc(216px * 0.5);}
		.cus-home-anime05 img{width: calc(102px * 0.5);}
	}
	@media screen and (max-width: 767px) {
		.cus-home-area01-con{
			padding: 80px 0;
		}
		.cus-home-area01-title{
			font-size: 24px;
		}
		.cus-home-area01-text{
			text-align: left;
			line-height: 2;
		}
	
		.cus-home-anime01{
			top: 20px;
			left: 0%;
			margin-left: -20px;
		}
		.cus-home-anime02{
			bottom: 20px;
			left: 0%;
			margin-left: 0px;
		}
		.cus-home-anime03{
			bottom: 0px;
			right: 16%;
			margin-right: 0px;
		}
		.cus-home-anime04{
			top: 100px;
			right: 0%;
			margin-right: -20px;
		}
		.cus-home-anime05{
			top: 40px;
			right: 30%;
			margin-right: 0px;
		}
		.cus-home-anime01 img{width: calc(246px * 0.4);}
		.cus-home-anime02 img{width: calc(382px * 0.4);}
		.cus-home-anime03 img{width: calc(145px * 0.4);}
		.cus-home-anime04 img{width: calc(216px * 0.4);}
		.cus-home-anime05 img{width: calc(102px * 0.4);}
	}

/* area02 */
	.cus-home-area02-con{
		background-color: rgba(255, 255, 255, 0.75);
		border-radius: 40px;
		padding: 100px 60px;
	}

	.cus-home-anime06{
		bottom: -160px;
		right: 50%;
		margin-right: -320px;
	}
	@media screen and (max-width: 1499.98px) {
		.cus-home-area02-con{
			border-radius: 32px;
			padding: 4vw 1.5vw;
		}
	
		.cus-home-anime06{
			bottom: -100px;
			right: 1%;
			margin-right: 0px;
		}
		.cus-home-anime06 img{width: calc(287px * 0.8);}
	}
	@media (max-width: 991.98px) {
		.cus-home-area02-con{
			border-radius: 26px;
			padding: 3vw 1.5vw;
		}
	
		.cus-home-anime06{
			bottom: -40px;
			right: 1%;
			margin-right: 0px;
		}
		.cus-home-anime06 img{width: calc(287px * 0.6);}
	}
	@media print {
		.cus-home-area02-con{
			border-radius: 26px;
			padding: 3vw 1.5vw;
		}
	
		.cus-home-anime06{
			bottom: -40px;
			right: 1%;
			margin-right: 0px;
		}
		.cus-home-anime06 img{width: calc(287px * 0.5);}
	}
	@media screen and (max-width: 767px) {
		.cus-home-area02-con{
			border-radius: 22px;
			padding: 15px;
		}
	
		.cus-home-anime06{
			bottom: -20px;
			right: 1%;
			margin-right: 0px;
		}
		.cus-home-anime06 img{width: calc(287px * 0.4);}
	}

/* area05 */
	.cus-home-area05{
		background-image: url("../img/home/area05-bg.jpg");
		background-size: cover;
		background-position: center center;
		background-attachment: fixed;
		background-repeat: no-repeat;
		will-change: transform;
		padding: 120px 0;
	}

	.cus-home-area05-list{
		overflow-y: scroll;
		border-top: #e6dfcf solid 1px;
		padding-right: 80px;
		height: 540px;
	}
	.cus-home-area05-list::-webkit-scrollbar {
		width: 4px; /* バーの太さ */
	}
	.cus-home-area05-list::-webkit-scrollbar-track {
		background-color: #eee9dd; /* バーの背景色 */
		border-radius: 4px; /* 上下角丸 */
	}
	.cus-home-area05-list::-webkit-scrollbar-thumb {
		background-color: #eea399; /* 現在位置バーの色 */
		border-radius: 4px; /* 上下角丸 */
	}
	/* Firefox用（標準仕様） */
	.cus-home-area05-list {
		scrollbar-width: thin; /* 細いバーにする */
		scrollbar-color: #eea399 #eee9dd; /* バーの色、背景色 */
	}

	.cus-home-area05-list li{
		border-bottom: #e6dfcf solid 1px;
		padding: 40px 0;
	}

	.cus-home-area05-list .list-style{
		display: flex;
		align-items: center;
		gap: 30px;
	}
	.cus-home-area05-list .list-style .day{
		font-size: 16px;
	}
	.cus-home-area05-list .list-style .new{
		background-color: #ef857d;
		padding: 0px 40px;
		font-size: 14px;
		color: white;
	}
	.cus-home-area05-list .list-style .category{
		border-radius: 100px;
		padding: 0px 30px;
		font-size: 14px;
		color: white;
	}

	.cus-home-area05-list .list-text{
		overflow: hidden;
		display: block;
		color: initial;
		text-decoration: none;
	}
	.cus-home-area05-list .list-text .view{
		padding-top: 20px;
		text-align: right;
	}
	.cus-home-area05-list .list-text .view .link{
		position: relative;
		display: block;
		padding-bottom: 8px;
		margin: 0 0 0 auto;
		width: 140px;
		font-family: "Libertinus Serif Display", system-ui;
		font-weight: 400;
		font-style: normal;
		text-align: left;
	}
	.cus-home-area05-list .list-text .view .link::before{
		content: '';
		position: absolute;
		bottom: 0px;
		left: 0px;
		background-color: #ef857d;
		width: 100%;
		height: 1px;
	}
	.cus-home-area05-list .list-text .view .link .arrow{
		position: absolute;
		top: 50%;
		right: 10px;
		transform: translateY(-50%);
		transition: transform 0.3s ease;
	}
	.cus-home-area05-list .list-text:hover .view .link .arrow{
		transform: translateY(-50%) translateX(10px);
	}
	@media screen and (max-width: 1499.98px) {
		.cus-home-area05{
			padding: 100px 0;
		}
	
		.cus-home-area05-list{
			padding-right: 6vw;
			height: 500px;
		}
	
		.cus-home-area05-list li{
			padding: 30px 0;
		}
	
		.cus-home-area05-list .list-style{
			gap: 25px;
		}
	}
	@media (max-width: 991.98px) {
		.cus-home-area05{
			padding: 80px 0;
		}
	
		.cus-home-area05-list{
			padding-right: 5vw;
			height: 420px;
		}
	
		.cus-home-area05-list li{
			padding: 25px 0;
		}
	
		.cus-home-area05-list .list-style{
			gap: 20px;
		}
	}
	@media print {
		.cus-home-area05{
			background-attachment: scroll;
			background-image: none;
			padding: 60px 0;
		}
	
		.cus-home-area05-list{
			padding-right: 0;
			height: 320px;
		}
	
		.cus-home-area05-list li{
			padding: 20px 0;
		}
	
		.cus-home-area05-list .list-style{
			gap: 15px;
		}
	}
	@media (max-width: 767px) {
		.cus-home-area05{
			background-attachment: scroll;
			background-position: center center;
			padding: 60px 0;
		}
	
		.cus-home-area05-list{
			padding-right: 0;
			height: 320px;
		}
	
		.cus-home-area05-list li{
			padding: 20px 0;
		}
	
		.cus-home-area05-list .list-style{
			display: block;
		}
		.cus-home-area05-list .list-style .day{
			display: block;
		}
		.cus-home-area05-list .list-style .new{
			padding: 0px 30px;
		}
		.cus-home-area05-list .list-style .category{
			padding: 0px 20px;
		}
	}


/* お知らせ */
	.cus-detail-title{
		background-image: url("../img/detail/area01-title.png");
		background-position: right bottom;
		background-repeat: no-repeat;
		padding: 60px 60px 20px 10px;
		font-size: 28px;
		color: #ee7800;
	}

	.cus-detail-img{
		background-image: url("../img/site/photo-bg.png");
		background-position: center center;
		border-radius: 24px;
		padding: 6px;
		margin: 0;
		width: 100%;
		height: 360px;
		box-shadow: inset 0 0 20px 15px rgba(255, 255, 255, 0.6);
	}
	.cus-detail-img img{
		width: 100%;
		height: 100%;
		object-fit: contain;
		font-family: 'object-fit: contain;';
	}

	.cus-detail-anime01{
		bottom: -60px;
		left: 50%;
		margin-left: -880px;
	}
	.cus-detail-anime02{
		top: 180px;
		right: 50%;
		margin-right: -840px;
	}
	.cus-detail-anime01 img{width: calc(246px * 0.7);}
	.cus-detail-anime02 img{width: calc(216px * 0.7);}

	.cus-detail-text{
		overflow: hidden;
		background-color: rgba(255, 255, 255, 0.75);
		background-image: url("../img/detail/area01-text-bg.png");
		background-position: right bottom;
		background-repeat: no-repeat;
		border-radius: 30px;
		padding: 60px 40px;
		height: auto;
		min-height: 460px;
	}
	@media screen and (max-width: 1499.98px) {
		.cus-detail-title{
			background-size: auto 110px;
			padding: 60px 60px 20px 10px;
			font-size: 24px;
		}
	
		.cus-detail-img{
			border-radius: 22px;
			height: 26vw;
		}
	
		.cus-detail-anime01{
			bottom: -40px;
			left: 0%;
			margin-left: -40px;
		}
		.cus-detail-anime02{
			top: 140px;
			right: 0%;
			margin-right: -40px;
		}
		.cus-detail-anime01 img{width: calc(246px * 0.5);}
		.cus-detail-anime02 img{width: calc(216px * 0.5);}
	
		.cus-detail-text{
			border-radius: 26px;
			background-size: 26vw auto;
			padding: 40px 20px;
			min-height: 340px;
		}
	}
	@media (max-width: 991.98px) {
		.cus-detail-title{
			background-size: auto 90px;
			padding: 50px 50px 20px 6px;
			font-size: 22px;
		}
	
		.cus-detail-img{
			border-radius: 20px;
			height: 26vw;
		}
	
		.cus-detail-anime01{
			bottom: -40px;
			left: 0%;
			margin-left: -40px;
		}
		.cus-detail-anime02{
			top: 140px;
			right: 0%;
			margin-right: -40px;
		}
		.cus-detail-anime01 img{width: calc(246px * 0.4);}
		.cus-detail-anime02 img{width: calc(216px * 0.4);}
	
		.cus-detail-text{
			border-radius: 24px;
			background-size: 28vw auto;
			padding: 20px 15px;
			min-height: 300px;
		}
	}
	@media print {
		.cus-detail-title{
			background-size: auto 80px;
			padding: 50px 50px 20px 6px;
			font-size: 19px;
		}
	
		.cus-detail-img{
			border-radius: 20px;
			height: 26vw;
		}
	
		.cus-detail-anime01{
			bottom: -40px;
			left: 0%;
			margin-left: -40px;
		}
		.cus-detail-anime02{
			top: 140px;
			right: 0%;
			margin-right: -40px;
		}
		.cus-detail-anime01 img{width: calc(246px * 0.4);}
		.cus-detail-anime02 img{width: calc(216px * 0.4);}
	
		.cus-detail-text{
			border-radius: 24px;
			background-size: 28vw auto;
			padding: 20px 15px;
			min-height: 300px;
		}
	}
	@media screen and (max-width: 767px) {
		.cus-detail-title{
			background-size: auto 60px;
			padding: 40px 40px 16px 6px;
			font-size: 18px;
		}
	
		.cus-detail-img{
			border-radius: 20px;
			height: 52vw;
		}
	
		.cus-detail-anime01{
			bottom: -40px;
			left: 0%;
			margin-left: -40px;
		}
		.cus-detail-anime02{
			top: 30%;
			right: 0%;
			margin-right: -40px;
		}
		.cus-detail-anime01 img{width: calc(246px * 0.6);}
		.cus-detail-anime02 img{width: calc(216px * 0.6);}
	
		.cus-detail-text{
			border-radius: 20px;
			background-size: 220px auto;
			padding: 15px;
			min-height: 240px;
		}
	}


/* ギャラリー */
	.cus-gallery-column{
		display: flex;
		gap: 40px;
	}
	.cus-gallery-column .column-nav{
		position: relative;
		flex-shrink: 0;
	}
	.cus-gallery-column .column-nav	.cus-gallery-anime01{
		content: '';
		position: absolute;
		top: 20%;
		left: 10%;
		width: 120px;
		height: 589px;
		z-index: 1;
		animation: sway 6s ease-in-out infinite;
	}
	.cus-gallery-column .column-nav .nav-menu{
		position: sticky;
		top: 110px;
		align-self: flex-start;
		width: 240px;
		z-index: 10;
	}
	.cus-gallery-column .column-main{
		flex: 1;
	}

	.cus-gallery-menu{
		overflow: hidden;
	}
	.cus-gallery-menu li{
		margin-bottom: 15px;
	}
	.cus-gallery-menu li a{
    position: relative;
    display: block;
    border: #ee7800 solid 2px;
    background-color: #ee7800;
    border-radius: 10px;
    padding: 12px 14px;
    color: white;
    text-decoration: none;
    overflow: hidden;
    transition: color 0.3s;
    z-index: 1;
	}
	.cus-gallery-menu li a::after{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: white;
    transform: scaleX(0);
    transform-origin: right center;
    transition: transform 0.4s ease-in-out;
    z-index: -1;
	}
	.cus-gallery-menu li a:hover,
	.cus-gallery-menu li a.active{
    color: #ee7800;
	}
	.cus-gallery-menu li a:hover::after,
	.cus-gallery-menu li a.active::after{
    transform: scaleX(1);
	}
	.cus-gallery-menu li a::before{
    content: '';
    position: absolute;
    bottom: -48px;
    right: 6px;
    background-image: url("../img/gallery/nav-menu-bt.png");
    background-size: 36px 48px;
    background-repeat: no-repeat;
    width: 36px;
    height: 48px;
    transition: bottom 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.2s;
	}
	.cus-gallery-menu li a:hover::before,
	.cus-gallery-menu li a.active::before{
    bottom: 0px;
	}
	@media screen and (max-width: 1499.98px) {
		.cus-gallery-column{
			gap: 30px;
		}
		.cus-gallery-column .column-nav	.cus-gallery-anime01{
			width: 100px;
		}
		.cus-gallery-column .column-nav .nav-menu{
			width: 220px;
		}

		.cus-gallery-menu li{
			margin-bottom: 15px;
		}
		.cus-gallery-menu li a{
			padding: 12px 14px;
		}
		.cus-gallery-menu li a::before{
			bottom: -48px;
			right: 6px;
			background-size: 36px 48px;
			width: 36px;
			height: 48px;
		}
	}
	@media (max-width: 991.98px) {
		.cus-gallery-column{
			gap: 20px;
		}
		.cus-gallery-column .column-nav	.cus-gallery-anime01{
			width: 90px;
		}
		.cus-gallery-column .column-nav .nav-menu{
			width: 200px;
		}

		.cus-gallery-menu li{
			margin-bottom: 12px;
		}
		.cus-gallery-menu li a{
			padding: 12px 10px;
		}
		.cus-gallery-menu li a::before{
			bottom: -46px;
			right: 6px;
			background-size: 34px 46px;
			width: 34px;
			height: 46px;
		}
	}
	@media print {
		.cus-gallery-column{
			gap: 15px;
		}
		.cus-gallery-column .column-nav	.cus-gallery-anime01{
			width: 90px;
		}
		.cus-gallery-column .column-nav .nav-menu{
			position: relative;
			width: 200px;
		}

		.cus-gallery-menu li{
			margin-bottom: 12px;
		}
		.cus-gallery-menu li a{
			padding: 12px 10px;
		}
		.cus-gallery-menu li a::before{
			bottom: -46px;
			right: 6px;
			background-size: 34px 46px;
			width: 34px;
			height: 46px;
		}
	}
	@media screen and (max-width: 767px) {
		.cus-gallery-column{
			display: block;
		}
		.cus-gallery-column .column-nav	.cus-gallery-anime01{
			display: none;
		}
		.cus-gallery-column .column-nav .nav-menu{
			position: relative;
			top: 0;
			width: auto;
		}

		.cus-gallery-menu li{
			margin-bottom: 12px;
		}
		.cus-gallery-menu li a{
			padding: 12px 10px;
		}
		.cus-gallery-menu li a::before{
			bottom: -46px;
			right: 6px;
			background-size: 34px 46px;
			width: 34px;
			height: 46px;
		}
	}

	.cus-gallery-text{
		overflow: hidden;
		background-color: rgba(255, 255, 255, 0.75);
		background-image: url("../img/gallery/area01-text-bg.png");
		background-position: right bottom;
		background-repeat: no-repeat;
		background-size: 380px auto;
		border-radius: 30px;
		padding: 60px 40px;
		height: auto;
		min-height: 300px;
	}

	.cus-gallery-text01{
		border-bottom: #ee7800 solid 1px;
		padding: 0 4px 4px 4px;
	}

	div.paging span.current,
	div.paging span.paging-text{margin:0px 2px;color:#333;border:1px solid #ccc;display:inline;zoom:1;display:inline-block;overflow:hidden;text-decoration:none;}
	div.paging span.paging-text a{padding:3px 8px; display:block;}
	div.paging span.current{background: #ee7800;border:1px solid #ee7800;color:#fff;display:inline;zoom:1;padding:3px 8px;text-decoration:none;display:inline-block; cursor:pointer;}
	div.paging span.paging-text a:hover{background: #CCC;color: #fff;text-decoration:none;cursor:pointer;}
	@media screen and (max-width: 1499.98px) {
		.cus-gallery-text{
			border-radius: 26px;
			background-size: 300px auto;
			padding: 40px 20px;
			min-height: 240px;
		}
	}
	@media (max-width: 991.98px) {
		.cus-gallery-text{
			border-radius: 24px;
			background-size: 240px auto;
			padding: 20px 15px;
			min-height: 200px;
		}
	}
	@media print {
		.cus-gallery-text{
			border-radius: 24px;
			background-size: 240px auto;
			padding: 20px 15px;
			min-height: 200px;
		}
	}
	@media screen and (max-width: 767px) {
		.cus-detail-text{
			border-radius: 20px;
			background-size: 200px auto;
			padding: 15px;
			min-height: 180px;
		}
	}

	#lightcase-case, 
	#lightcase-content, 
	.lightcase-contentInner {
			max-width: 95vw !important;
			max-height: 90vh !important;
	}

/* 店舗案内 */
	.cus-shop-text{
		overflow: hidden;
		background-color: rgba(255, 255, 255, 0.75);
		background-image: url("../img/shop/area01-text-bg.png");
		background-position: left bottom;
		background-repeat: no-repeat;
		background-size: 360px auto;
		border-radius: 30px;
		padding: 60px 40px;
		height: auto;
	}

	.cus-shop-area01{
		overflow: hidden;
		padding-bottom: 100px;
	}
	.cus-shop-area01-text01{
		display: flex;
		gap: 15px;
	}
	.cus-shop-area01-text01 .text01{
		flex-shrink: 0;
		width: 70px;
	}
	.cus-shop-area01-text01 .text02{
		flex: 1;
	}

	.cus-shop-anime01{
		top: 60px;
		left: 50%;
		margin-left: -880px;
	}
	.cus-shop-anime01 img{width: calc(280px * 1);}
	.cus-shop-anime02{
		top: 120px;
		right: 50%;
		margin-right: -880px;
	}
	.cus-shop-anime02 img{width: calc(280px * 1);}
	.cus-shop-anime03{
		bottom: 0px;
		right: 50%;
		margin-right: -900px;
	}
	.cus-shop-anime03 img{width: calc(320px * 1);}
	@media screen and (max-width: 1499.98px) {
		.cus-shop-text{
			border-radius: 26px;
			background-size: 300px auto;
			padding: 40px 20px;
		}

		.cus-shop-anime01{
			top: 90px;
			left: 0%;
			margin-left: -40px;
		}
		.cus-shop-anime01 img{width: calc(280px * 0.7);}
		.cus-shop-anime02{
			top: 70px;
			right: 0%;
			margin-right: -40px;
		}
		.cus-shop-anime02 img{width: calc(280px * 0.7);}
		.cus-shop-anime03{
			bottom: 0px;
			right: 0%;
			margin-right: 0px;
		}
		.cus-shop-anime03 img{width: calc(320px * 0.6);}
	}
	@media (max-width: 991.98px) {
		.cus-shop-text{
			border-radius: 24px;
			background-size: 240px auto;
			padding: 20px 15px;
		}

		.cus-shop-anime01{
			top: 90px;
			left: 0%;
			margin-left: -40px;
		}
		.cus-shop-anime01 img{width: calc(280px * 0.6);}
		.cus-shop-anime02{
			top: 70px;
			right: 0%;
			margin-right: -40px;
		}
		.cus-shop-anime02 img{width: calc(280px * 0.6);}
		.cus-shop-anime03{
			bottom: 0px;
			right: 0%;
			margin-right: 0px;
		}
		.cus-shop-anime03 img{width: calc(320px * 0.5);}
	}
	@media print {
		.cus-shop-text{
			border-radius: 24px;
			background-size: 240px auto;
			padding: 20px 15px;
			min-height: 200px;
		}

		.cus-shop-anime01{
			top: 90px;
			left: 0%;
			margin-left: -40px;
		}
		.cus-shop-anime01 img{width: calc(280px * 0.5);}
		.cus-shop-anime02{
			top: 70px;
			right: 0%;
			margin-right: -40px;
		}
		.cus-shop-anime02 img{width: calc(280px * 0.5);}
		.cus-shop-anime03{
			bottom: 0px;
			right: 0%;
			margin-right: 0px;
		}
		.cus-shop-anime03 img{width: calc(320px * 0.4);}
	}
	@media screen and (max-width: 767px) {
		.cus-shop-text{
			border-radius: 20px;
			background-size: 200px auto;
			padding: 15px;
		}
	
		.cus-shop-anime01{
			top: 90px;
			left: 0%;
			margin-left: -20px;
		}
		.cus-shop-anime01 img{width: calc(280px * 0.4);}
		.cus-shop-anime02{
			top: 10px;
			right: 0%;
			margin-right: 0px;
		}
		.cus-shop-anime02 img{width: calc(280px * 0.4);}
		.cus-shop-anime03{
			bottom: 0px;
			right: 0%;
			margin-right: 0px;
		}
		.cus-shop-anime03 img{width: calc(320px * 0.36);}
	}

/* area02 */
	.cus-shop-area02-con{
		position: relative;
		padding: 66px 0;
	}
	.cus-shop-area02-con::before{
		content: '';
		position: absolute;
		top: 0px;
		left: 0px;
		background-image: url("../img/shop/area02-hasami.png");
		background-repeat: no-repeat;
		background-position: center center;
		width: 100%;
		height: 66px;
	}
	.cus-shop-area02-con::after{
		content: '';
		position: absolute;
		bottom: 0px;
		left: 0px;
		background-image: url("../img/shop/area02-hasami.png");
		background-repeat: no-repeat;
		background-position: center center;
		width: 100%;
		height: 66px;
		transform: scaleX(-1);
	}

	.cus-shop-area02-mv{
		position: relative;
		padding: 60px 0;
		margin: 0 auto;
		width: 100%;
	}
	.cus-shop-area02-mv .cus-carousel-area .cus-mv-slide-normal{
		overflow: hidden;
		border-radius: 24px;
		margin: 0px;
		width: 100%;
		height: 620px;
	}
	.cus-shop-area02-mv .cus-carousel-area img{
		width: 100%;
		height: 100%;
		object-fit: contain;
		object-position: center;
	}
	.carousel-indicators button {/* ドット（インジケーター）を下で表示したい場合こちら */
		position: relative;
		width: 10px !important;
		height: 10px !important;
		border-radius: 50%;
		margin-left: 12px !important;
		margin-right: 12px !important;
		background-color: #fff;
		border: none;
		opacity: 0.5;
	}
	.carousel-indicators .active::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: 18px;
		height: 18px;
		background-color: #fff;
		opacity: 0.5;
		border-radius: 50%;
		z-index: -1;
	}

	.cus-shop-area02-mv .mv-img{
		position: absolute;
		top: -20px;
		right: 4%;
		z-index: 3;
		animation: sway 6s ease-in-out infinite;
	}
	.cus-shop-area02-mv .mv-img{width: calc(220px * 1);}
	@media screen and (max-width: 1499.98px) {
		.cus-shop-area02-con{
			padding: 4.3vw 0;
		}
		.cus-shop-area02-con::before{
			background-size: 100% auto;
			height: 4.3vw;
		}
		.cus-shop-area02-con::after{
			background-size: 100% auto;
			height: 4.3vw;
		}
	
		.cus-shop-area02-mv{
			padding: 50px 0;
		}
		.cus-shop-area02-mv .cus-carousel-area .cus-mv-slide-normal{
			height: 50vw;
		}

		.cus-shop-area02-mv .mv-img{width: calc(220px * 0.7);}
	}
	@media (max-width: 991.98px) {
		.cus-shop-area02-con{
			padding: 4.3vw 0;
		}
		.cus-shop-area02-con::before{
			background-size: 100% auto;
			height: 4.3vw;
		}
		.cus-shop-area02-con::after{
			background-size: 100% auto;
			height: 4.3vw;
		}
	
		.cus-shop-area02-mv{
			padding: 40px 0;
		}
		.cus-shop-area02-mv .cus-carousel-area .cus-mv-slide-normal{
			height: 50vw;
		}

		.cus-shop-area02-mv .mv-img{width: calc(220px * 0.6);}
	}
	@media print {
		.cus-shop-area02-con{
			padding: 4.3vw 0;
		}
		.cus-shop-area02-con::before{
			background-size: 100% auto;
			height: 4.3vw;
		}
		.cus-shop-area02-con::after{
			background-size: 100% auto;
			height: 4.3vw;
		}
	
		.cus-shop-area02-mv{
			padding: 40px 0;
		}
		.cus-shop-area02-mv .cus-carousel-area .cus-mv-slide-normal{
			height: 50vw;
		}

		.cus-shop-area02-mv .mv-img{width: calc(220px * 0.6);}
	}
	@media screen and (max-width: 767px) {
		.cus-shop-area02-con{
			padding: 4.3vw 0;
		}
		.cus-shop-area02-con::before{
			background-size: 100% auto;
			height: 4.3vw;
		}
		.cus-shop-area02-con::after{
			background-size: 100% auto;
			height: 4.3vw;
		}
	
		.cus-shop-area02-mv{
			padding: 30px 0;
		}
		.cus-shop-area02-mv .cus-carousel-area .cus-mv-slide-normal{
			height: 66vw;
		}

		.cus-shop-area02-mv .mv-img{width: calc(220px * 0.4);}
	}

/* area03 */
	.cus-shop-area03-con{
		position: relative;
		padding-top: 100px;
	}

	.cus-shop-area03-con .con-img01{
		position: absolute;
		top: 0px;
		left: 50%;
		margin-left: -320px;
		z-index: 3;
		animation: sway 6s ease-in-out infinite;
	}
	.cus-shop-area03-con .con-img01{width: calc(320px * 1);}
	.cus-shop-area03-con .con-img02{
		position: absolute;
		top: 80px;
		right: 50%;
		margin-right: -660px;
		z-index: 3;
		transition: transform 1s cubic-bezier(0.175, 0.885, 0.32, 1.275);
		transform: scale(0.1);
		transform-origin: center center;
		opacity: 0;
	}
	.cus-shop-area03-con .con-img02{width: calc(320px * 1);}
	.cus-shop-area03-con .con-img02.active{
			transform: scale(1);
			opacity: 1;
	}
	@media screen and (max-width: 1499.98px) {
		.cus-shop-area03-con{
			padding-top: 70px;
		}
	
		.cus-shop-area03-con .con-img01{
			left: 24%;
			margin-left: 0px;
		}
		.cus-shop-area03-con .con-img01{width: calc(320px * 0.8);}
		.cus-shop-area03-con .con-img02{
			top: 70px;
			right: 2%;
			margin-right: 0px;
		}
		.cus-shop-area03-con .con-img02{width: calc(320px * 0.8);}
	}
	@media (max-width: 991.98px) {
		.cus-shop-area03-con{
			padding-top: 60px;
		}
	
		.cus-shop-area03-con .con-img01{
			left: 26%;
			margin-left: 0px;
		}
		.cus-shop-area03-con .con-img01{width: calc(320px * 0.6);}
		.cus-shop-area03-con .con-img02{
			top: 60px;
			right: 2%;
			margin-right: 0px;
		}
		.cus-shop-area03-con .con-img02{width: calc(320px * 0.7);}
	}
	@media print {
		.cus-shop-area03-con{
			padding-top: 60px;
		}
	
		.cus-shop-area03-con .con-img01{
			left: 26%;
			margin-left: 0px;
		}
		.cus-shop-area03-con .con-img01{width: calc(320px * 0.5);}
		.cus-shop-area03-con .con-img02{
			top: 60px;
			right: 2%;
			margin-right: 0px;
		}
		.cus-shop-area03-con .con-img02{width: calc(320px * 0.6);}
	}
	@media screen and (max-width: 767px) {
		.cus-shop-area03-con{
			padding-top: 50px;
		}
	
		.cus-shop-area03-con .con-img01{
			display: none;
		}
		.cus-shop-area03-con .con-img02{
			top: 70px;
			right: 2%;
			margin-right: 0px;
		}
		.cus-shop-area03-con .con-img02{width: calc(320px * 0.5);}
	}


/* お問い合わせ */
	.cus-contact-area01{
		overflow: hidden;
		position: relative;
		background-color: #ee7800;
		padding: 120px 0;
	}
	.cus-contact-area01::before{
		content: '';
		position: absolute;
		top: 0px;
		left: 0px;
		width: 100%;
		height: 100%;
		background-image: url("../img/contact/area01-bg.jpg");
		background-size: cover;
		background-repeat: no-repeat;
		z-index: 1;
		opacity: 0.4;
	}
	.cus-contact-area01 .area01-img{
		position: absolute;
		top: 80px;
		right: 50%;
		margin-right: -680px;
		z-index: 6;
		animation: sway 6s ease-in-out infinite;
	}
	.cus-contact-area01 .area01-img{width: calc(360px * 1);}

	.cus-contact-area01 .area01-title{
		position: relative;
		z-index: 3;
	}

	.cus-telephone{
		position: relative;
		text-align: center;
		z-index: 3;
	}
	.cus-telephone .telephone-box{
		display: inline-block;
		background-color: rgba(255, 255, 255, 0.75);
		padding: 60px 0;
		width: 80%;
	}
	.cus-telephone .telephone-txt{
		position: relative;
		display: inline-block;
		font-size: 1.125rem;
	}
	.cus-telephone .telephone-txt::before{
		content: '';
		position: absolute;
		top: 50%;
		left: -40px;
		display: block;
		background-color: #37241a;
		width: 25px;
		height: 1px;
	}
	.cus-telephone .telephone-txt::after{
		content: '';
		position: absolute;
		top: 50%;
		right: -40px;
		display: block;
		background-color: #37241a;
		width: 25px;
		height: 1px;
	}
	.cus-telephone .telephone-phone{
		font-size: 60px;
	}
	.cus-telephone .telephone-phone .ic01{
		position: relative;
		top: -2px;
		margin-right: 6px;
		width: 54px;
  	height: 54px;
  	fill: #ee7800;
	}
	
	.cus-telephone .telephone-text{
		display: flex;
		justify-content: space-between;
		padding-left: 70px;
		margin: 0 auto;
		width: 500px;
	}
	@media screen and (max-width: 1499.98px) {
		.cus-contact-area01 .area01-img{
			top: 70px;
			right: 0%;
			margin-right: 40px;
		}
		.cus-contact-area01 .area01-img{width: calc(360px * 0.8);}

		.cus-telephone .telephone-phone{
			font-size: 3.4vw;
		}
		.cus-telephone .telephone-phone .ic01{
			width: 3vw;
		}

		.cus-telephone .telephone-text{
			padding-left: 0px;
			width: 400px;
		}
	}
	@media screen and (max-width: 991.98px) {
		.cus-contact-area01 .area01-img{
			top: 70px;
			right: 0%;
			margin-right: -20px;
		}
		.cus-contact-area01 .area01-img{width: calc(360px * 0.7);}

		.cus-telephone .telephone-box{
			padding: 20px 0;
			width: 100%;
		}

		.cus-telephone .telephone-txt::before{
			left: -30px;
			width: 20px;
		}
		.cus-telephone .telephone-txt::after{
			right: -30px;
			width: 20px;
		}

		.cus-telephone .telephone-text{
			padding-left: 0px;
			width: 360px;
		}
	}
	@media print {
		.cus-contact-area01 .area01-img{
			top: 60px;
			right: 0%;
			margin-right: -20px;
		}
		.cus-contact-area01 .area01-img{width: calc(360px * 0.6);}

		.cus-telephone .telephone-box{
			padding: 20px 0;
			width: 100%;
		}

		.cus-telephone .telephone-text{
			padding-left: 0px;
			width: 360px;
		}
	}
	@media screen and (max-width: 767px) {
		.cus-contact-area01 .area01-img{
			top: 20px;
			right: 0%;
			margin-right: -10px;
		}
		.cus-contact-area01 .area01-img{width: calc(360px * 0.5);}

		.cus-telephone .telephone-txt{
			font-size: 1rem;
		}
		.cus-telephone .telephone-phone{
			font-size: 22px;
		}
		.cus-telephone .telephone-phone .ic01{
			width: 22px;
		}

		.cus-telephone .telephone-text{
			display: block;
			padding-left: 0px;
			width: auto;
		}
		.cus-telephone .telephone-text span{
			display: block;
		}
	}

























