@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@100..900&family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Noto+Sans+JP:wght@100..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
*:focus {
  outline: none;
}

#elmira_wrap{
    width: 100%;
	text-align: center;
	margin: 0% auto;
	color: #342f29;
    display: block;
    padding: 0;
    font-weight: 400;
    overflow: hidden;
    font-family: zen-kaku-gothic-new, sans-serif;
    -webkit-animation: fadein 1.2s forwards ease;
    animation: fadein 1.2s forwards ease;
    letter-spacing: 1px;
}
@keyframes fadein {
		  0% {
			  opacity: 0;
		  }
		  100% {
			  opacity: 1;
			  transform: translate(0);
		  }
}


#elmira_wrap a{
    text-decoration: none;
}
#elmira_wrap a:hover{
    text-decoration: none;
}
#elmira_wrap a:link{
    opacity: 1;
}

#elmira_wrap img{
    width: 100%;
    line-height:0;
    vertical-align: bottom;
    border: none;
}

/************************************************************
               contents
************************************************************/
#elmira_contents{
	width: 100%;
    margin: 0 auto;
}
#elmira_contents .elmira_box{
    width: 100%;
    text-align: center;
    margin: 0 auto;
    display: inline-block;
    position: relative;
}
#elmira_contents .elmira_box .inner{
    max-width: 1000px;
    width: 100%;
    text-align: center;
    margin: 0 auto;
    display: inline-block;
    position: relative;
}
#elmira_contents .item_box{
    width: 100%;
    text-align: center;
    margin: 0 auto;
}

.lead{
	display: inline-block;
    text-align: center;
    line-height: 2em;
    font-weight: 400;
    font-size: 16px;
    margin: 3% auto;
	padding: 0 2%;
}

.logo img{
	width: 60px!important;
	margin-top: 10%;
}

.item_section{
	margin: 0 auto 3%;
}

.title {
    font-size: 22px;
    font-weight: 600;
}

.sub_ttl{
	font-size: 14px;
}

.lead{
	font-family: kepler-std-caption, serif;
	font-size: 20px;
	font-weight: 600;
}

.sub_lead{
	font-size: 16px;
	line-height: 1.8;
}

.head_wrap{
	margin: 5% auto;
}

.item_box{
	display: flex;
	flex-wrap: wrap;
	column-gap: 2%;
	justify-content: center;
}

.item_img{
	width: 20%;
	margin-bottom: 4%;
}

.item_name{
	font-size: 14px;
	margin-top: 8px;
}

.item_price{
	letter-spacing: .4px
}

.item_price span{
	font-size: 65%;
}

.footer{
    width: 100%;
    background: #d7c2b1;
    color: #ffffff;
    font-size: 15px;
    text-align: center;
    padding: 1% 0;
    position: relative;
    margin: 0 auto;
    line-height: 1.2em;
}

/************************************************************
               スライダー
************************************************************/
.swiper-button-prev::after,
.swiper-button-next::after {
  color: #3b352f;
  font-size: 20px!important;
}

.swiper-slide{
	background: #f7f3ee;
    display: flex !important;
    flex-direction: row;
    align-items: stretch;
    justify-content: stretch;
    height: auto;
    min-height: 360px;
    position: relative;
    box-sizing: border-box;
	margin-bottom: 5%;
}

.swiper-slide.reverse {
    flex-direction: row-reverse;
}

.swiper-slide .slide_img_wrap {
    width: 40%!important;
    position: relative;
    overflow: hidden;
    flex-shrink: 0;
}


.swiper_box{
	width: 85%;
	margin: 0 auto 5%;
}

.point_txt {
	position: relative;
    width: 60%;
    box-sizing: border-box;
    padding: 40px 48px;
    text-align: left;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background: #f7f3ee;
    color: #3b352f;
}

.point_nom{
	position: absolute;
	top: 3%;
	right: 3%;
	color: #BF9000;
	font-size: 25px;
	font-weight: 600;
	font-family: kepler-std-caption, serif;
}

.swiper-slide.reverse .point_nom{
	top: 3%;
	left: 3%;
}

.point_title{
	font-weight: 600;
	font-size: 20px;
	font-family: kepler-std-caption, serif;
	margin-top: 5%;
}

.point_lead{
	line-height: 1.6;
	margin: 10% 0 0;
	font-size: 16px;
}

.img_box1 {
	aspect-ratio: 5 / 6;
}

.fade_img1 {
    width: 100%;
    margin: 0 auto;
    height: auto;
    position: absolute;
    background: center center no-repeat;
    animation: anime 4s 0s infinite;
    z-index: 0;
}

.fade_img1:nth-of-type(2) {
    -webkit-animation-delay: 2s;
    animation-delay: 2s;
}

@keyframes anime {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 1;
    }
    60% {
        opacity: 0;
        z-index: 10;
    }
    100% {
        opacity: 0;
    }
}


/************************************************************
               ボタン
************************************************************/
.btn_01 a{
	display: block;
    color: #ffffff;
    font-size: 12px;
    font-family: "Poppins", sans-serif;
	text-decoration: underline!important;
}

.btn_all a {
    background: #d6c2b0;
    color: #FFFFFF;
    font-size: 14px;
    font-weight: 500;
    width: 90%;
    line-height: 2em;
    letter-spacing: 1px;
    margin: 15% auto 10%;
    display: inline-block;
    border-radius: 3px;
    padding: 4.5% 0
}


.sp {
	display:none;
}
.pc{
    display: block;
}
.small{
	font-size: 70%;
}
.hr{
    border-bottom: #BCBABA dotted 1px;
    width: 100%;
    text-align: center;
    margin: 0 auto;
}


/************************************************************
                SP
************************************************************/

@media only screen and (max-width:768px){
	#elmira_wrap {
		width: 100%;
        margin: 0% auto;
		text-align: center;
    }
	
    .head_wrap{
        margin: 10% auto;
    }
	
    .title{
        font-size: 18px;
    }	
	
    .lead{
        font-size: 18px;
    }
	
	.sub_lead{
		font-size: 14px;
	}
	
    .logo img {
        width: 50px !important;
        margin-top: 5%;
		margin-bottom: 20%;
    }
	
    #elmira_contents .elmira_box{
        margin: 0% auto;
        padding: 0;
    }
    
    #elmira_contents .elmira_box .inner{
        width: 100%;
		margin: 0;
    }
    #elmira_contents .item_box .ttl_box{
        width: 100%;
        float: none;
        margin: 0 auto;
    }
    #elmira_contents .item_box .ttl_box .txt_box .txt{
        width: 100%;
    }
    #elmira_contents .item_box img{
        width: 100%;
        text-align: center;
        float: none;
    }
	
	.item_section{
		margin: 0 auto 10%;
	}
	
	.item_img {
        width: 42%;
    }
	
	.item_box {
        column-gap: 3%;
		margin: 10% auto 0;
    }
	
	.item_name{
		line-height: 1.2;
		font-size: 13px;
	}
	
    .swiper_box {
        width: 92%;
    }

    .swiper-slide{
        min-height: auto;
		flex-direction: column!important;
		width: 100%!important;
    }
	
	.swiper-slide.reverse{
		flex-direction: column!important;
		width: 100%!important;
	}

    .swiper-slide .slide_img_wrap {
        width: 100% !important;
		aspect-ratio: 5 / 6;
    }

    .img_box1 {
        min-height: 240px;
    }

    .point_txt {
        width: 100% !important;
        padding: 50px 20px 30px !important;
        text-align: left;
    }

    .point_nom {
		font-size: 19px;
		right: 3%;
        margin-bottom: 8px;
    }
	
    .swiper-slide.reverse .point_nom{
        left: auto;
    }	

    .point_title {
        font-size: 18px;
        padding-bottom: 6px;
		margin-top: 3%;
    }

    .point_lead {
        font-size: 14.5px;
        line-height: 1.6;
        margin-top: 15px;
    }

    .swiper-button-prev,
    .swiper-button-next {
        width: 32px;
        height: 32px;
    }

    .swiper-button-prev::after,
    .swiper-button-next::after {
        font-size: 12px !important;
		background: #f7f3ee;
		padding: 5px;
		border-radius: 50%;
		width: 32px;
		height: 16px;
		display: flex;
        align-items: center;
        justify-content: center;
    }
	
    .footer{
        font-size: 13px;
        padding: 3% 0;
        margin: 0 auto;
    }
	
	.btn_00{
		font-size: 12px;
		width: 80%;
		text-align: center;
        margin: 5% auto;
        float: none;
	}
	
    .btn_01 a{
		font-size: 12px;
        width: 80%;
        text-align: center;
        margin: 5% auto;
        float: none;
    }
	
    .btn_00 a {
        width: auto;
    }	
	
    .btn_all a {
        width: 80%;
        margin: 0% auto 10%;
		padding: 3% 0;
        font-size: 12px;
    }
    
    .pc {
		display:none;
	}
	.sp {
		display:block;
		width: 100%;
	}
	
}