@charset "utf-8";

/* 共通
------------------------------------------ */
/* 改行設定（スマホだけ・PCだけ） */
br.is_SP{
	display: none;
}
br.is_PC{
	display: inline;
}
@media screen and (max-width: 750px) {
/* 改行設定（スマホだけ・PCだけ） */
br.is_SP{
	display: inline;
}
br.is_PC{
	display: none;
}
}

/* モーダル内をスクロール可能にする
------------------------------------------ */
.madrigalFeatureModalArea{
	height: 100%;/*要素の高さを指定*/
	overflow-y: scroll;/*上下方向にはみ出した要素ををスクロールさせる*/
}

/* モーダル内のスクロールバー非表示（各ブラウザ）
------------------------------------------ */
.madrigalFeatureModalArea{
	/*スクロールバー非表示（IE・Edge）*/
	-ms-overflow-style: none;
	/*スクロールバー非表示（Firefox）*/
	scrollbar-width: none;
}
/*スクロールバー非表示（Chrome・Safari）*/
.madrigalFeatureModalArea::-webkit-scrollbar{
  display:none;
}



/*  右固定タブ モーダル部分
------------------------------------------ */
.madrigalFeatureModalArea{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.8);
	z-index: 11;
}
.madrigalFeatureModalInner{
	width: 100%;
	max-width: 700px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
}
.madrigalFeatureModalArea .title{
	text-align: center;
	margin-bottom: 4em;
}
.madrigalFeatureModalArea .title span{
	width: 100%;
	color: rgba(255, 255, 255, 0.6);
	font-size: 1.4rem;
}
.madrigalFeatureModalArea ul{
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 1.5em;
}
.madrigalFeatureModalArea ul li{
	text-align: center;
	width: calc((100% - 1.5em * 2) / 3);
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}
.madrigalFeatureModalArea ul li a{
	display: block;
	width: 100%;
	height: 100%;
	text-decoration: none;
	color: rgba(255,255,255,0.6);
	border: 1px solid rgba(255,255,255,0.6);
	padding: 10px;
	font-size: 1.1rem;
}
.madrigalFeatureModalArea ul li a span{
	display: block;
	overflow: hidden;
	text-overflow: ellipsis; 
	white-space: nowrap;
	margin-bottom: 0.5em;
}
.madrigalFeatureModalArea ul li a span:first-child span{
	padding-bottom: 0.5em;
	display: inline-block;
	border-bottom: 1px solid rgba(255,255,255,0.5);
}
.madrigalFeatureModalArea ul li a span:last-child{
	margin-bottom: 0;
}
.madrigalFeatureModalArea ul li:nth-of-type(3n){
	margin-right: 0;
}
.madrigalFeatureModalArea ul.other_scene li{
	width: 100%;
	margin-right: 0;
	margin-bottom: 1em;
}
.madrigalFeatureModalArea ul.other_scene li:last-of-type{
	margin-bottom: 0;
}
/* closeボタン（バツ印） */
.madrigalFeatureModalArea button span {
	content: '';
	display: block;
	height: 1px;
	width: 20px;
	background: rgba(255,255,255,1.00);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
}
.madrigalFeatureModalArea button span::before, .madrigalFeatureModalArea button span::after {
	content: '';
	display: block;
	height: 1px;
	width: 20px;
	background: rgba(255,255,255,1.00);
	position: absolute;
}
.madrigalFeatureModalArea button.close{
	position: fixed;
	right: 0;
	top: 0;
	z-index: 1;
	width: 60px;
	height: 60px;
}
.madrigalFeatureModalArea button.close span{
	background: rgba(255,255,255,0);
}
.madrigalFeatureModalArea button.close span::before {
	top: 50%;
	transform: rotate(45deg) translatey(-50%);
}
.madrigalFeatureModalArea button.close span::after {
	top: 50%;
	transform: rotate(-45deg) translatey(-50%);
}
/* 閉じる */
.madrigalFeatureModalArea .close-text{
	text-align: center;
}
.madrigalFeatureModalArea .close-text span{
	display: inline-block;
	color: rgba(255, 255, 255, 0.6);
	border-bottom: 1px solid rgba(255, 255, 255, 0.6);
	font-size: 1.3rem;
	padding: 10px 20px;
	transition: 0.2s;
}
.madrigalFeatureModalArea .close-text span:hover{
	cursor: pointer;
	background: rgba(255, 255, 255, 0.1);
	border-bottom: 1px solid rgba(255, 255, 255, 0);
}
@media screen and (max-width: 750px) {
.madrigalFeatureModalInner{
	width: calc(100% - 20px * 2);
}
.madrigalFeatureModalArea .title{
	margin-bottom: 40px;
}
.madrigalFeatureModalArea .title span{
	font-size: 1.1rem;
}
.madrigalFeatureModalArea ul{
	margin-bottom: 20px;
}
.madrigalFeatureModalArea ul li{
	width: calc((100% - 5px * 1) / 2);
	margin-right: 5px;
	margin-bottom: 5px;
}
.madrigalFeatureModalArea ul li:nth-of-type(3n){
	margin-right: 5px;
}
.madrigalFeatureModalArea ul li:nth-of-type(2n){
	margin-right: 0;
}
.madrigalFeatureModalArea ul li a{
	font-size: 0.9rem;
}
.madrigalFeatureModalArea ul li a:hover{
	color: rgba(255,255,255,0.4);
	border: 1px solid rgba(255,255,255,0.4);
}
/* 閉じる */
.madrigalFeatureModalArea .close-text span{
	font-size: 1.1rem;
}
}



/* 上部 4列リスト
------------------------------------------ */
.unitArea.list-4-upper{
	margin-top: 100px;
	margin-bottom: 100px;
}
.unitArea.list-4-upper .unitInner{
	width: 1000px;
	margin: 0 auto;
}
.unitArea.list-4-upper ul.ulArea{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.unitArea.list-4-upper ul.ulArea>li{
	width: 220px;
	margin-right: 40px;
	margin-bottom: 40px;
}
.unitArea.list-4-upper ul.ulArea>li:nth-of-type(4n){
	margin-right: 0;
}
.unitArea.list-4-upper ul.ulArea>li:nth-last-child(-n+4){
	margin-bottom: 0;
}
.unitArea.list-4-upper ul.ulArea>li:last-child{
	margin-right: 0;
}
.unitArea.list-4-upper ul.ulArea>li>a{
	display: block;
}
.unitArea.list-4-upper ul.ulArea>li .wrapper{
	position: relative;
	padding-top: 120%;
}
.unitArea.list-4-upper ul.ulArea>li .image{
	position: absolute;
    top: 0;
    left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	z-index: 1;
}
.unitArea.list-4-upper ul.ulArea>li .image img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.unitArea.list-4-upper ul.ulArea>li .overlay{
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.2);
	z-index: 2;
	transition: 0.2s;
}
.unitArea.list-4-upper ul.ulArea>li>a:hover .overlay{
	background: rgba(0, 0, 0, 0.35);
}
.unitArea.list-4-upper ul.ulArea>li .text{
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    color: rgba(255,255,255,0.75);
    text-align: center;
	font-size: 1.1rem;
	z-index: 3;
	width: 85%;
}
.unitArea.list-4-upper ul.ulArea>li .text>span{
	display: block;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	margin-bottom: 1.2em;
}
.unitArea.list-4-upper ul.ulArea>li .text>span:last-child{
	margin-bottom: 0;
}
.unitArea.list-4-upper ul.ulArea>li .text span.number{
	display: inline-block;
	padding-bottom: 0.5em;
	margin-bottom: 1.2em;
	border-bottom: 1px solid rgba(255,255,255,0.75);
}
.unitArea.list-4-upper ul.ulArea>li .text>span.price::before{
	content: "\0a5";
}
.unitArea.list-4-upper .note{
	font-size: 1.1rem;
	margin-top: 40px;
	color: #333;
	text-align: center;
}
@media screen and (max-width: 750px) {
.unitArea.list-4-upper{
	margin-top: 50px;
	margin-bottom: 50px;
	font-size: 11px;
}
.unitArea.list-4-upper .unitInner{
	max-width: calc(100% - 30px);
}
.unitArea.list-4-upper ul.ulArea>li{
	width: calc((100% - 10px) / 2);
	margin-right: 10px;
	margin-bottom: 10px;
}
.unitArea.list-4-upper ul.ulArea>li:nth-of-type(4n){
	margin-right: auto;
}
.unitArea.list-4-upper ul.ulArea>li:nth-last-child(-n+4){
	margin-bottom: 10px;
}
.unitArea.list-4-upper ul.ulArea>li:nth-of-type(2n){
	margin-right: 0;
}
.unitArea.list-4-upper ul.ulArea>li:nth-last-child(-n+2){
	margin-bottom: 0;
}
.unitArea.list-4-upper ul.ulArea>li .text{
	font-size: 0.9rem;
}
.unitArea.list-4-upper .note{
	font-size: 1rem;
	margin-top: 20px;
}
}


/* 商品情報
------------------------------------------ */
.unitArea.iteminfo{
	width: 100%;
	margin-top: 100px;
	margin-bottom: 100px;
	font-size: 1.3rem;
	color: #333;
}
.unitArea.iteminfo .unitInner{
	max-width: 550px;
    text-align: center;
    margin: 0 auto;
}
.unitArea.iteminfo .unitInner ul li.name span:nth-of-type(2)::before{
	content: "/";
	margin-left: 0.5em;
	margin-right: 0.5em;
}
.unitArea.iteminfo .unitInner ul li.price{
	margin-top: 1em;
}
.unitArea.iteminfo .unitInner ul li.price span::before{
	content: "\0a5";
}
.unitArea.iteminfo .number{
	text-align: center;
    margin-bottom: 50px;
}
.unitArea.iteminfo .number span{
	display: inline-block;
    padding-bottom: 0.5em;
    border-bottom: 1px solid rgba(0,0,0,0.5);
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 300;
	font-size: 1.8rem;
	line-height: 1.5;
	letter-spacing: 0.2em;
}
.unitArea.iteminfo h2{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 300;
	font-size: 1.8rem;
	line-height: 1.5;
	text-align: center;
	letter-spacing: 0.2em;
    margin-bottom: 50px;
}
.unitArea.iteminfo h2::before{
	content: "“";
}
.unitArea.iteminfo h2::after{
	content: "”";
}
@media screen and (max-width: 750px) {
.unitArea.iteminfo{
	margin-top: 50px;
	margin-bottom: 50px;
	font-size: 1.1rem;
}
.unitArea.iteminfo .unitInner{
	padding-left: 15px;
	padding-right: 15px;
}
.unitArea.iteminfo h2{
	font-size: 1.3rem;
	margin-bottom: 30px;
}
.unitArea.iteminfo .number{
    margin-bottom: 30px;
}
.unitArea.iteminfo .number span{
	font-size: 1.4rem;
}
}

