/* CSS Document */

:root{
    --bg-color: #F2F2F2;
		--page-color: #C50030;
    --sub-color:#9e9e9e;
    --Pg-En-sans: "Josefin Sans", sans-serif;
}
div#sysMain {
  width: 100% !important;
  max-width: none !important;
  margin: 0px auto !important;
}

#louvredo_wrap{
    width: 100%;
    font-size:clamp(1.4rem, 1.331rem + 0.24vw, 1.6rem);
    margin: auto; 
    text-align: center;
    line-height: 1.8;
}

#louvredo_wrap .comm_flex{
	flex-wrap: wrap;
}
#louvredo_wrap img{
    max-width: 100%;
    vertical-align: bottom;
}

#louvredo_wrap sup{
    /*font-size: 14px;*/
    vertical-align: super;
    margin-left: 2px;
}

#louvredo_wrap .comm_mt{
    margin-top: 4em;
}

#louvredo_wrap .comm_ttl{
    font-size: clamp(2rem, 1.313rem + 2.39vw, 4rem);
    margin-bottom: 1.8em;
    letter-spacing: 0.4rem;
    font-weight: 400;
		color: var(--page-color);
		font-family: var(--Pg-En-sans);
}

#louvredo_wrap .comm_ttl span{
    font-size: 50%;
    display: block;
    letter-spacing: 0.22em;
		color: var(--base-color);
		font-weight: normal;
}

#louvredo_wrap .comm_btn{
    background: #fff;
    border: clamp(1.5px, 0.2vw + 1px, 3px) solid;
    border-radius: 50px;
    font-size: clamp(1.25rem, 3vw, 2rem);
    width: 85%;
    max-width: 600px;
    margin: 2em auto;
}

#louvredo_wrap .comm_btn a{
    display: block;
    padding: 15px 0;
    position: relative;
}
#louvredo_wrap .comm_btn a::after{
    content: "";
    width: 10px;
    height: 10px;
    border: 0;
    border-top: solid 2px;
    border-right: solid 2px;
    position: absolute;
    top: 50%;
    margin-top: -5px;
    transform: rotate(45deg);
    right: 7%;
}





#louvredo_wrap #mv .text{
    width: 35%;
}

#louvredo_wrap #mv .text dl{
    width: 78%;
    max-width: 380px;
    margin: auto;
}

#louvredo_wrap #mv .text dt{
    margin-bottom: 1.5em;
}

#louvredo_wrap #mv .text dd{
    text-align: left;
}


#louvredo_wrap #mv p{
    width: 65%;
}

#louvredo_wrap #mv p img{
    width: 100%;
}

#louvredo_wrap #navi{
    background: var(--bg-color);
    padding: 12px 0;
    align-items: center;
    justify-content: center;
    letter-spacing: 0.15rem;
		flex-wrap: wrap;
		/*font-size: clamp(1.5rem, 1.397rem + 0.36vw, 1.8rem);*/
}

#louvredo_wrap #navi li{
}

#louvredo_wrap #navi li:not(:last-child)::after{
    content: "｜";
    padding: 0 5px;
}

#louvredo_wrap #ninsyo{
}

#louvredo_wrap #ninsyo p{
	width: 28%;
}

#louvredo_wrap #ninsyo dl{
	width: 67%;
	text-align: left;
}

#louvredo_wrap #ninsyo dt{
	font-size: clamp(1.65rem, 1.53rem + 0.42vw, 2rem);
	margin-bottom: 1.2em;
}
#louvredo_wrap #ninsyo dt h2{
	font-weight: normal;
}


#louvredo_wrap #ninsyo dd{
	font-size: clamp(1.2rem, 1.063rem + 0.48vw, 1.6rem);
}

#louvredo_wrap #ninsyo dd span{
	color: var(--page-color);	
}




#louvredo_wrap #product .comm_flex{
	flex-wrap: wrap;
	align-items: normal;
}

#louvredo_wrap #product .box{
    width: 48%;
    background: var(--bg-color);
    border-radius: 15px;
    box-sizing: border-box;
    position: relative;
    box-shadow: 10px 10px 8px -6px #c0c0c0;
    margin-bottom: 3%;
}

#louvredo_wrap #product .box::after{
    content: "";
    width: 10px;
    height: 10px;
    border: 0;
    border-top: solid 2px #000;
    border-right: solid 2px #000;
    position: absolute;
    top: 50%;
    margin-top: -10px;
    transform: rotate(45deg);
    right: 5%;
}

#louvredo_wrap #product .box a{
    width: 90%;
    margin: auto;
    display: flex;
    align-items: center;
    justify-content:left;
    padding: 15px 0 5px;
}

#louvredo_wrap #product .box dl{
    text-align: left;
    width: 67%;
}

#louvredo_wrap #product .box dt{
    font-size: clamp(1.6rem, 1.394rem + 0.72vw, 2.2rem);
    letter-spacing: 0.05em;
}

#louvredo_wrap #product .box dd{
    font-size: 80%;
    letter-spacing: 0.05em;
}

#louvredo_wrap #product .box p{
	width: 30%;
    /*max-width: 100px;*/
    margin: auto;
    text-align: center;
}

#louvredo_wrap #about .block{
	position: relative;
}

#louvredo_wrap #about dl{
	width: 50%;
	position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
	text-align: left;
	left: 5%;
}

#louvredo_wrap #about dl dt{
	font-size: clamp(1.8rem, 1.56rem + 0.84vw, 2.5rem);
	margin-bottom: 1em;
}
#louvredo_wrap #about dl dt img{
	display: none;
}



#louvredo_wrap #what{
	background: url("bg2.jpg") no-repeat;
	background-size: cover;
	padding: 5em 0;
}

#louvredo_wrap #what .ttl{
	margin-bottom: 4em;
}

#louvredo_wrap #what .ttl h3{
	font-weight: normal;
	margin-bottom: 0.5em;;
}
#louvredo_wrap #what .ttl img{
	width: 60%;
	max-width: 250px;
	margin: 0.5em	auto;
	mix-blend-mode: darken;
}

#louvredo_wrap #what .comm_flex .box{
	width: 48%;
	text-align: left;
}

#louvredo_wrap #what .comm_flex .box dt{
	margin-bottom: 0.8em;
	font-size: clamp(1.8rem, 1.56rem + 0.84vw, 2.5rem);
	line-height: 1.5;
}

#louvredo_wrap #what .comm_flex .box dd p{
	border-bottom: 1px solid;
	padding-bottom: 0.2em;
	margin-bottom: 0.2em;
	font-size: clamp(1.55rem, 1.353rem + 0.42vw, 2rem);
}

#louvredo_wrap #what .comm_flex .box img{
	mix-blend-mode: darken;
}

#louvredo_wrap #what .midashi{
	margin: 5em auto 2em;
	font-size: clamp(2rem, 1.657rem + 1.19vw, 3rem);
}

#louvredo_wrap #what .midashi p{
	margin: 0.8em auto 0.5em;
}

#louvredo_wrap #what .midashi span{
	border-radius: 50px;
	border: 1px solid;
	font-size: 50%;
	padding: 0.2em 1em;
	margin: 0 0.5em;
}

#louvredo_wrap #what ol.comm_flex {
	flex-wrap: wrap;
	justify-content: center;
	max-width: 880px;
	margin: auto;
}

#louvredo_wrap #what ol.comm_flex li{
	width: 17%;
	max-width: 130px;
	margin: 0 1.5% 2em;
}



#louvredo_wrap #function{
	counter-reset: number;
}

#louvredo_wrap #function .comm_flex{
	margin-bottom: 3em;
}

#louvredo_wrap #function .comm_flex .box{
	width: 48%;
	text-align: left;
}

#louvredo_wrap #function .comm_flex .box h3{
	color: var(--page-color);
	counter-increment: number;
	font-size: clamp(1.8rem, 1.525rem + 0.96vw, 2.6rem);
	font-weight: normal;
	margin-bottom: 0.3em;
}

#louvredo_wrap #function .comm_flex .box h3:before{
	content: counter(number , decimal-leading-zero);
	font-family: var(--Pg-En-sans);
	display: block;
}

#louvredo_wrap #function .comm_flex .box dt{
	font-size: clamp(1.6rem, 1.285rem + 0.96vw, 2.4rem);
	margin-bottom: 0.5em;
}

#louvredo_wrap #function .comm_flex .box dt span{
	font-size: 40%;
	border: 1px solid;
	padding: 1px 5px 2px;
	vertical-align: middle;
	margin-left: 5px;
}

#louvredo_wrap #function .comm_flex:nth-of-type(even){
	flex-direction: row-reverse;
}


#louvredo_wrap #function #filter{
	display: flex;
	justify-content: space-between;
	margin-top: 5em;
}

#louvredo_wrap #function #filter .ttl{
	margin-top: -1em;
	font-family: var(--Pg-En-sans);
	letter-spacing: 0.05em;
	color: #C50030;
}

#louvredo_wrap #function #filter .ttl span{
	background: #fff;
	padding: 5px 15px;
}


#louvredo_wrap #function #filter .box{
	width: 32.5%;
	box-sizing: border-box;
	border: 1px solid #C50030;
	border-radius: 5px;
}

#louvredo_wrap #function #filter .box dl{
	width: 94%;
	margin: 0.5em auto;
	font-size: clamp(1.5rem, 1.397rem + 0.36vw, 1.8rem);
}

#louvredo_wrap #function #filter .box dt{
	background: #C50030;
	color: #fff;
	margin-bottom: 0.8em;
}

#louvredo_wrap #function #filter .box dd{
	font-size: 68%;
}


#louvredo_wrap #series{
}

#louvredo_wrap #series #hero{
	color: #fff;
	position: relative;
	margin-bottom: 4em;
}

#louvredo_wrap #series #hero p img{
	object-fit: cover;
	height: 300px;
}

#louvredo_wrap #series #hero .title{
    position: absolute;
    inset: 0;
    margin:auto;
    height: fit-content;
		font-size: clamp(2.8rem, 2.388rem + 1.43vw, 4rem);
}

#louvredo_wrap #series #hero .title p{
	margin-top: 0.5em;
}

#louvredo_wrap #series #hero .title span{
	font-size: 50%;
	border: 1px solid;
	border-radius: 50px;
	padding: 5px 20px;
	vertical-align: middle;
	margin-left: 10px;
}

#louvredo_wrap #series .block{
	margin-bottom: 6em;
}

#louvredo_wrap #series .block .midashi h2{
	font-size: clamp(2.2rem, 1.582rem + 2.15vw, 4rem);
	margin-bottom: 1.5em;
}

#louvredo_wrap #series .block .midashi p{
	color: #A1A1A1;
}

#louvredo_wrap #series .block .midashi h2 br{
	display: none;
}

#louvredo_wrap #series .block .midashi h2 span{
	font-size: 50%;
	display: block;
}

#louvredo_wrap #series .block .comm_flex .image{
    width: 33%;
}

#louvredo_wrap #series .block .comm_flex .des{
    width: 63%;
    text-align: left;
}
#louvredo_wrap #series .block .comm_flex .des dt{
    font-size: clamp(1.5rem, 1.157rem + 1.19vw, 2.5rem);
    font-weight: bold;
    position: relative;
    border-bottom: 1px solid;
    padding-bottom: 15px;
    margin-bottom: 15px;
}
#louvredo_wrap #series .block .comm_flex .des dt span{
    position: absolute;
    right: 0;
    bottom: 14px;
    /*font-size: 110%;*/
}

#louvredo_wrap #series .block .comm_flex .des dt span::after{
    content: "円（税込）";
    font-size: 60%;
    margin-left: 5px;
}

#louvredo_wrap #series .block .comm_flex .des ul{
    margin: 30px auto;
    justify-content: flex-start;
    align-items: normal;
}

#louvredo_wrap #series .block .comm_flex .des li{
    width: calc(100% / 3 - 8px);
    margin: 0 4px;    
    background: #ececec;
    border-radius: 15px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px 2px 15px;
    box-sizing: border-box;
    font-size: clamp(1.5rem, 0.6829rem + 1.13vw, 2rem);
    word-break: keep-all;
    overflow-wrap: anywhere;
}

#louvredo_wrap #series .block .comm_flex .btn{
	border: 1px solid;
	text-align: center;
	margin-top: 2em;
	font-family: var(--Pg-En-sans);
	letter-spacing: 0.15em;
	position: relative;
}

#louvredo_wrap #series .block .comm_flex .btn a{
	display: block;
	padding: 5px 0;
}

#louvredo_wrap #series .block .comm_flex .btn::after{
	content: "";
	width: 20%;
	max-width: 130px;
	aspect-ratio: 160 / 9;
	display: inline-block;
	background: url(arrow.jpg) no-repeat;
	background-size: contain;
	position: absolute;
	right: 5%;
	top: 50%;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
			 transition: all 0.4s;
}

#louvredo_wrap #series .block .comm_flex .btn:hover::after{
	right: 3%;
	cursor: pointer;
}

#louvredo_wrap #voice{
	background: #ececec;
	padding: 4em 0;
}

#louvredo_wrap #voice ol{
	flex-wrap: wrap;
	align-items: normal;
}

#louvredo_wrap #voice ol li{
	width: 31%;
	background: #fff;
	margin-bottom: 2em;
	position: relative;
	padding: 5.2em 0;
	border-radius: 10px;
}

#louvredo_wrap #voice ol li p{
	width: 90%;
	position: absolute;
	    top: 50%;
			left: 50%;
      -webkit-transform: translate(-50%,-50%);
      transform: translate(-50%,-50%);
			font-size: clamp(1.5rem, 1.328rem + 0.6vw, 2rem);
}

#louvredo_wrap #voice ol li p span{
	background:linear-gradient(transparent 60%, #f4ccd5 60%);
	font-weight: bold;
}









@media only screen and (max-width: 920px) {  
	#louvredo_wrap #series .block .comm_flex .des dt span{
		position: static;
		text-align: right;
		display: block;
	}
}


@media only screen and (max-width: 680px) {  
	#louvredo_wrap #mv .comm_flex{
		flex-wrap: wrap;
		margin-top: 2em;
	}
	#louvredo_wrap #mv .text,
	#louvredo_wrap #mv p {
			width: 100%;
	}
	#louvredo_wrap #mv .text dt{
		width: 70%;
		margin: 0 auto 1.5em;
	}
	#louvredo_wrap #mv .text dd{
		text-align: center;
		margin-bottom: 2em;
	}
	#louvredo_wrap #ninsyo{
		flex-wrap: wrap;
	}
	#louvredo_wrap #ninsyo p{
		width: 60%;
		margin: 0 auto 1.5em;
	}
	#louvredo_wrap #ninsyo dl{
		width: 100%;
	}
	#louvredo_wrap #ninsyo dt{
		text-align: center;
	}
	#louvredo_wrap #product .box{
		width: 100%;
	}
	#louvredo_wrap #about.comm_w90{
		width: 100%;
	}
	#louvredo_wrap #about p img{
		display: none;
	}
	#louvredo_wrap #about dl dt img{
		display: block;
	}
	#louvredo_wrap #about .block{
		position: static;
	}
	#louvredo_wrap #about dl{
		position: static;
		width: 100%;
		transform: translateY(0);
	}
	#louvredo_wrap #about dl dt{
		text-align: center;
	}
	#louvredo_wrap #about dl dd{
		width: 90%;
		margin: 1em auto 0;
	}
	#louvredo_wrap #what .ttl{
		margin-bottom: 2em;
	}
	#louvredo_wrap #what .comm_flex{
		flex-wrap: wrap;
	}
	#louvredo_wrap #what .comm_flex .box{
		width: 100%;
		margin-top: 1em;
	}
	#louvredo_wrap #what .midashi{
		margin-top: 2.5em;
	}
	#louvredo_wrap #what ol.comm_flex li {
			width: 30%;
	}
	#louvredo_wrap #function .comm_flex{
		flex-wrap: wrap;
	}
	#louvredo_wrap #function .comm_flex .box {
			width: 100%;
			margin-bottom: 1em;
	}
	#louvredo_wrap #function .comm_flex .box dt span {
			font-size: 50%;
	}
	#louvredo_wrap #function #filter{
		flex-wrap: wrap;
		margin-top: 3em;
	}
	#louvredo_wrap #function #filter .box {
			width: 100%;
			margin-bottom: 2.5em;
	}
	#louvredo_wrap #series .block .midashi h2 br{
		display: block;
	}
	#louvredo_wrap #series #hero .title span{
		display: block;
		width: 60%;
		max-width: 150px;
		margin: 0.5em auto 0;
	}
	#louvredo_wrap #series .block .comm_flex .image {
			width: 70%;
			margin: 0 auto 1em;
	}
	#louvredo_wrap #series .block .comm_flex .des {
			width: 100%;
	}
	#louvredo_wrap #series .block .comm_flex .des dt{
		position: static;
		text-align: center;
	}
	#louvredo_wrap #series .block .comm_flex .des dt span{
		display: block;
		text-align: center;
	}
	#louvredo_wrap #series .block .comm_flex .btn a{
		padding: 1em 0;
	}
	#louvredo_wrap #voice ol li{
		width: 47.5%;
	}



}







