@charset "utf-8";
ul {
    list-style-type: none;
}

/* ---------------------specialgift共通----------------------- */
.post-body p .specialgift{
	margin: 0;
}
.specialgift {
	margin-bottom: -5%;
}
.specialgift > img{
	width: 100%;
}
.specialgift .inner{
	width: 90%;
	max-width: 1000px;
	margin: 0 auto !important;
}
.specialgift .mainvl {
	line-height: 0;
}

/* read
------------------------------------------------------- */
.read {
	line-height: 0;
}

/* video
------------------------------------------------------- */
.video {
	background: url(img/video-bg.jpg) no-repeat;
	background-size: cover;
	padding: 5% 0;
}
.video div {
	line-height: 1;
}
.video .youtube {
  width: 100%;
  aspect-ratio: 16 / 9;
  padding: 3% 0;
}
.video .youtube iframe {
  width: 100%;
  height: 100%;
}

/* lineup
------------------------------------------------------- */
.lineup {
	background: url(img/lineup-bg.jpg) no-repeat;
	background-size: cover;
	padding: 5% 0;
}
.lineup ul {
	display: flex;
	flex-direction: column;
	gap: 30px 0;
	padding-top: 3%;
}
.lineup ul li p {
	line-height: 0;
}
.lineup .inner > p {
	padding-top: 3%;
}



/* aタグhover
------------------------------------------------------- */
.specialgift a:hover img{
	opacity: 0.7;
}

/* btn
------------------------------------------------------- */
.specialgift .news {
	width: 90%;
	max-width: 1000px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 0 auto;
	font-size: 18px;
	align-items: center;
	padding-top: 3%;
}
.specialgift .news div {
	width: 49%;
}
.specialgift .news div {
	width: 49%;
}
.specialgift .news p.button1 a,
.specialgift .news p.button2 a {
	box-sizing: border-box;
	padding: 15px 40px;
	border-radius: 30px;
	font-size: 20px;
	background-color: #b00a0b;
	color: #fff !important;
	text-decoration: none !important;
	display: block;
	text-align: center;
}
.specialgift .btn-deco1 a::before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 22px;
	background-image: url("img/btn-shop.png");
	background-size: contain;
	background-repeat: no-repeat;
	margin-right: 10px;
	vertical-align: middle;
}
.specialgift .btn-deco2 a::before {
	content: "";
	display: inline-block;
	width: 28px;
	height: 14px;
	background-image: url("img/btn-sijo.png");
	background-size: contain;
	background-repeat: no-repeat;
	margin-right: 10px;
	vertical-align: middle;
}
.specialgift .news p.button1 a,
.specialgift .news p.button2 a{
	transition: ease all 0.3s;
}
.specialgift .news p.button1 a:hover,
.specialgift .news p.button2 a:hover{
	background: #D05B2B;
}

@media screen and (max-width: 896px) {
	.specialgift {
		margin-bottom: -50px;
	}
	.specialgift .news{
		padding: 1px 0;
		display: flex;
		flex-direction: column;
		gap: 10px 0;
		padding-top: 5%;
	}
	.specialgift .news div{
		width: 100%;
	}
	.specialgift .news p.button1 a,
	.specialgift .news p.button2 a{
		font-size: 1.1em;
	}
}

@media screen and (max-width: 480px) {
	.impreza .btn {
		padding: 4% 0 1%;
	}
	.lineup ul {
		gap: 10px 0;
		padding-top: 5%;		
	}	
}



/* インスタ */
.insta {
    background-color: #fff;
    text-align: center;
    padding: 50px 0;
    /* margin-bottom: 7%; */
    width: 90%;
    max-width: 1100px;
    margin: 1% auto 0;
}
.insta-list-cover {
	overflow-y: hidden;
    margin: 0 auto;
    height: 421px;
}
    .insta h2 {
	     width: 85%;
        margin: 0 auto;
	    text-align: center;
	    font-size: 2rem !important;
	    padding-bottom: 10px !important;
    }
    .insta > p {
	     width: 85%;
        margin: 0 auto;
	    text-align: center;
    }
    
    .insta-list {
        column-count: 3;
        width: 85%;
        margin: 0 auto;
        padding: 3% 0;
    }
    
    .insta-list .item-insta {
        break-inside: avoid;
        gap: 20px;
        width: 100%;
    }
    /*インスタのminwidthを強制的に変更*/
    
    iframe.instagram-media.instagram-media-rendered {
        min-width: 100% !important;
    }
    /*ボタン*/
    
    .btn2 {
        width: 60%;
        margin: 0 auto;
    }
    
    .btn2 a {
        text-decoration: none;
        display: block;
        background: #1662A3;
        border: 2px solid #1662A3;
        text-align: center;
        color: #fff;
        font-weight: 400;
        font-size: 1.1em;
        padding: 15px 0;
        transition: ease all 0.3s;
        letter-spacing: 2px;
        margin-top: 5%;
    }
    
    .btn2 a:hover {
        background: #fff;
        color: #1662A3;
    }
    
    .btn2 {
        width: 60%;
        margin: 0 auto;
        position: relative;
    }
    
    .btn2::after {
        content: '';
        border: 0;
        border-top: solid 2px #fff;
        border-right: solid 2px #fff;
        display: inline-block;
        width: 10px;
        height: 10px;
        position: absolute;
        top: 50%;
        right: 20px;
        transform: translateY(-50%) rotate(45deg);
    }
    
    
    .btn2:hover::after {
        border-top: solid 2px #1662A3;
        border-right: solid 2px #1662A3;
    }
    
    @media screen and (max-width: 480px) {
        /* インスタ */
        .insta {
            padding: 30px 0;
        }
        .insta h2 {
	        font-size: 1.5rem !important;
	        width: 100% !important;
        }
        .insta-list-cover {
            width: 90%;
            overflow-x: scroll;
            overflow-y: hidden;
            margin: 0 auto;
            height: 410px;
            margin-bottom: 5%;
        }
        .insta-list {
            column-count: 3;
            width: 900px;
            padding: 7% 0;
        }
        .btn2 {
            width: 100%;
            margin: 0 auto;
        }
    }