@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&display=swap');
#lp_rainy_day h1{background: none;}
#lp_rainy_day h2{border-bottom: none;}
#lp_rainy_day h3{background: none;}
#lp_rainy_day h4{border-left: none;}
#lp_rainy_day img{vertical-align: bottom;}

:root {
  /*--color-primary: #39b9d8;*/
  --color-primary: #38bddd;
  /*--color-primary-rgb: 57,185,216;*/
  --color-primary-rgb: 56,189,221;
  --color-txt: #465058;
}


.mv__h1{
	margin:0;
	padding: 0;
}
.lead__txt{
	text-align: center;
    padding: 1.2em 0;
    line-height: 2em;
    color: var(--color-txt);
    letter-spacing: .03em;
}
.nav{
	width: 94%;
    margin: .7em auto 2em;
}
.nav__item{
	display: flex;
	align-items: center;
	background-color: rgba(var(--color-primary-rgb), 0.1);
	padding: .75em 1.1em;
    margin-bottom: 4px;
    position: relative;
}
.nav__item::after{
	content: "";
	width: .7em;
	height: .7em;
	border: .12em solid;
	border-color:  transparent transparent var(--color-primary) var(--color-primary);
	transform: rotate(-45deg);
	position: absolute;
    right: 1.1em;
    bottom: 1.3em;
}
.nav__item-num,
.nav__item-txt{
	color: var(--color-primary);
}
.nav__item-num{
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	font-size: 1.35em;
	letter-spacing: .06em;
}
.nav__item-txt{
	font-size: 1.1em;
    font-weight: 600;
    margin-left: .5em;
    letter-spacing: .05em;
}


.item__wrapper{
	width: 94%;
    margin: 0 auto;
}

.item-ttl__top{
	background-color: rgba(var(--color-primary-rgb), 0.8);
	color: white;
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	text-align: center;
	font-size: 1.1em;
    letter-spacing: .1em;
    padding: .1em 0 .19em;
}
.item__ttl-num{
	font-size: 1.15em;
    margin-left: .1em;
    margin-top: 3em;
}

.item-ttl__txt-inner{
    text-align: center;
    color: var(--color-primary);
    font-size: 1.5em;
    letter-spacing: .1em;
    padding: .2em 0 .5em;
    margin-bottom: 0;
}
.item-ttl__txt-border{
	font-weight: 600;
	border-bottom: 2px solid rgba(var(--color-primary-rgb), 0.6);
	padding-bottom: .1em;
}
.item{
	border-bottom: 2px solid rgba(var(--color-primary-rgb), 0.2);
	margin: 1em 0 2.3em;
}
.item:last-child{
	border-bottom: none;
}
.item__about-img-height{
	height: auto;
}
.item__about-name{
	text-align: center;
	color: var(--color-primary);
	font-size: 1.5em;
	letter-spacing: .04em;
	margin-bottom: 0;
	font-weight: 600;
	padding-bottom: .15em;
	line-height: 1.4em;
}
.item__about-copy{
	text-align: center;
    display: block;
    font-size: 1.3em;
    color: var(--color-txt);
    margin-bottom: .5em;
    font-weight: 600;
	opacity: .85;
	letter-spacing: .04em;
}
.item__about-copy--marker{
	background: linear-gradient(transparent 60%, rgba(var(--color-primary-rgb), 0.25) 0%);
	font-weight: 600;
}
.item__about-txt{
	margin-bottom: 2em;
    text-align: justify;
    line-height: 1.8em;
    padding: 0 .8em;
}

.item__prod-list{
	display: flex;
	flex-wrap: wrap;
}
.item__prod{
	width: 49%;
	margin-bottom: 1.8em;
	position: relative;
}
.item__prod:nth-child(odd){
	margin-right: 1%;
}
.item__prod:nth-child(even){
	margin-left: 1%;
}
.item__prod-img-height{
	height: auto;
}
.item__prod-name{
	text-align: center;
	letter-spacing: .04em;
	margin-bottom: 0;
	font-size: 1.12em;
	color: var(--color-txt);
	font-weight: 600;
	line-height: 1.5em;
}
.item__prod-price{
	text-align: center;
    display: block;
    margin-bottom: .6em;
    color: var(--color-txt);
    font-size: 96%;
    margin-bottom: 3.2em;
}
.item__prod-tax{
	font-size: 75%;
}
.item__prod-btn{
	font-weight: bold;
    background-color: rgba(var(--color-primary-rgb), 0.9);
    width: 72%;
    color: white;
    text-align: center;
    margin: 0 auto;
    display: block;
    border-radius: 2em;
    padding: .5em 0;
    letter-spacing: .05em;
    position: absolute;
    font-weight: 600;
    bottom: 0;
    right: 0;
    left: 0;
}
.item__prod-btn::after {
    content: "";
    width: .5em;
    height: .5em;
    border: 1.6px solid white;
    border-color: white white transparent transparent;
    transform: rotate(45deg);
    position: absolute;
    right: 1em;
    bottom: 1em;
}
.item__btn-l{
	width: 97%;
	color: var(--color-primary);
	border: .1em solid rgba(var(--color-primary-rgb), 0.75);
	display: block;
	text-align: center;
	border-radius: 2em;
	padding: 1em 0;
	margin: 0 auto 2em;
	font-weight: bold;
	font-size: 1.1em;
	position: relative;
	letter-spacing: .04em;
}
.item__btn-l::after {
    content: "";
    width: .6em;
    height: .6em;
    border: 2px solid white;
    border-color: rgba(var(--color-primary-rgb), 0.8) rgba(var(--color-primary-rgb), 0.8) transparent transparent;
    transform: rotate(45deg);
    position: absolute;
    right: 1.2em;
    bottom: 1.4em;
}

.category{
	width: 100%;
	background-color: rgba(var(--color-primary-rgb), 0.25);
	padding: 1em 0 2em;
}
.category__ttl{
	text-align: center;
	color: var(--color-txt);
	font-size: 1.4em;
	letter-spacing: .1em;
	line-height: 1.4em;
	font-weight: 600;
	opacity: .9;
}
.category__list{
	width: 96%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
}
.category__item{
    width: 46%;
	margin: 0 2% .8em 2%;
    background-color: white;
    text-align: center;
    border-radius: 2em;
    padding: .5em;
    min-height: 3.5em;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1.4em;
    color: var(--color-primary);
    font-weight: 600;
    position: relative;
    letter-spacing: .05em;
}
.category__item::after {
    content: "";
    width: .5em;
    height: .5em;
    border: 1.6px solid white;
    border-color: var(--color-primary) var(--color-primary) transparent transparent;
    transform: rotate(45deg);
    position: absolute;
    right: 1em;
    bottom: 40%;
}

/* スクリーンサイズが320px以下の場合に適用 */
@media screen and (max-width: 320px) {
	.lead__txt{
		font-size:89%;
	}
	.nav,
	.item__wrapper,
	.category{
		font-size: 85%;
	}
	.item-ttl__txt-border{
		border-bottom: .1em solid rgba(var(--color-primary-rgb), 0.6);
	}
}

.category__item a {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
}

.category__item a span {
    position: absolute;
    width: 100%;
    top: 50%;
    left: 0;
    text-align: center;
    transform: translateY(-50%);
}

