@charset "utf-8";

/* =========================================================

 module

========================================================= */

.l_mv {
	position: relative;
	width: 100%;
	height: 77svh;
	max-width: 1600px;
	margin-right: auto;
	margin-left: auto;
}

.l_mv .image_block {
	position: absolute;
	width: 100%;
	height: 100%;
	overflow: hidden;
	padding: 0 20px;
}

.l_mv .image_block .image_box {
	height: 100%;
}

.l_mv .image_block .image_box img {
	object-fit: cover;
	height: 100%;
	animation-name: fadesmall;
	animation-delay: 500ms;
	animation-duration: 1.5s;
	animation-fill-mode: forwards;
	scale: 1.1;
	overflow: hidden;
}

.l_mv .mv_inner {
	position: absolute;
	z-index: 10;
	padding: 80px;
	width: 100%;
	height: 100%;
}

.l_mv .mv_inner .mv_titleline {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: flex-end;
}

.l_mv .mv_inner .mv_titleline h1 span img {
	width: 775px;
}

.l_mv .mv_inner .mv_titleline h1.fade_in {
	animation-name: fadeIn50;
	animation-delay: 500ms;
	animation-duration: 1.5s;
	animation-fill-mode: forwards;
	transform: translateY(50px);
	opacity: 0;
}

.l_voyage {
	margin-top: 128px;
	max-width: 1600px;
	margin-right: auto;
	margin-left: auto;
}

.l_voyage h2 {
	margin-bottom: 90px;
	text-align: center;
}

.l_voyage h2 .titleline_ja {
	display: block;
	font-size: 4.8rem;
	font-weight: bold;
	margin: 20px auto 40px;
}

.l_voyage .read {
	width: 72.1649484536%;
	margin: 0 auto;
	color: #757575;
	font-size: 3.2rem;
	line-height: 1.5;
}

.l_spring {
	margin-top: 160px;
	padding: 0 20px;
	max-width: 1600px;
	margin-right: auto;
	margin-left: auto;
}

.l_spring h2 {
	margin-bottom: 90px;
	text-align: left;
}

.l_spring h2.m_titleline:after {
	margin-left: 0;
}

.l_spring h2 .titleline_ja {
	display: block;
	font-size: 4.8rem;
	font-weight: bold;
	margin: 20px auto 40px;
}

.l_spring .read {
	width: 48.25%;
	color: #757575;
	font-size: 1.6rem;
	line-height: 1.5;
	margin-bottom: 20px;
}

.l_spring .read:last-child {
	margin-bottom: 0;
}

.l_movie {
	position: relative;
	max-width: 1600px;
	margin-right: auto;
	margin-left: auto;
}

.l_movie h2 {
	margin-bottom: 90px;
	text-align: center;
}

.l_movie h2 span {
	display: block;
	font-size: 6.4rem;
	font-weight: bold;
	margin: 30px auto 40px;
}

.l_movie .read {
	margin: 0 auto 128px;
	width: 72.1649484536%;
	color: #757575;
	font-size: 1.6rem;
	line-height: 1.5;
}

.l_movie .movie_block {
	position: relative;
	aspect-ratio: 291/155;
	z-index: 2;
	min-width: 769px;
	max-width: 1164px;
	margin-right: auto;
	margin-left: auto;
}

.l_movie .movie_block .movie_btn {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.l_movie .movie_block .movie_player {
	position: absolute;
	z-index: 10;
}

.l_movie.l_spring_movie {
	padding: 128px 0 256px;
}

.l_movie.l_distillery_movie {
	padding-bottom: 40px;
}

.l_movie.l_distillery_movie .read {
	font-size: 3.2rem;
}

.l_festival {
	max-width: 1600px;
	margin-right: auto;
	margin-left: auto;
}

.l_festival .picture_block {
	padding-bottom: 256px;
}

.l_festival .picture_block .picture_box {
	position: sticky;
	top: 0; /*Header高さ分で止まるようにする*/
	display: flex;
	align-items: center;
}

.l_festival .picture_block .picture_box .image_block {
	width: 50%;
	height: 100vh;
}

.l_festival .picture_block .picture_box .image_block img {
	height: 100%;
	object-fit: cover;
}

.l_festival .picture_block .picture_box .text_box {
	max-width: 31%;
	margin: 0 auto;
	opacity: 0; /* フェードインのアニメーション */
}

.l_festival .picture_block .picture_box .text_box h3 .titleline_ja {
	display: block;
	font-size: 4.8rem;
	font-weight: bold;
	margin: 8px 0 24px;
}

.l_festival .picture_block .picture_box .text_box h3 .titleline_en {
	display: inline-block;
	width: 27rem;
	margin: 0 0 24px;
}

.l_festival .picture_block .picture_box .text_box h3 .titleline_sub {
	font-size: 1.6rem;
	line-height: 1.5;
}

.l_festival .picture_block .picture_box .text_box h3.text_meghellan .titleline_ja {
	display: block;
	font-size: 3.6rem;
	margin: 0 0 24px;
}

.l_festival .picture_block .picture_box .text_box .read {
	font-size: 1.6rem;
	line-height: 1.5;
	color: #757575;
	margin-bottom: 24px;
}

.l_festival .picture_block .picture_box .text_box.fadein {
	animation-name: fadeInAnime;
	animation-duration: 2s;
	animation-fill-mode: forwards;
	opacity: 0;
}

.l_festival .swiper_picture .slide_box img.cover_picture {
	height: 119.7916666667vw;
	object-fit: cover;
}

.l_festival .swiper_picture .slide_box .text_box .read {
	line-height: 1.5;
	color: #757575;
}

.l_artists {
	margin-bottom: 128px;
}

.l_artists h2 {
	text-align: center;
	font-size: 2rem;
	line-height: 1.2;
}

.l_artists h2 span {
	display: block;
	font-size: 6.4rem;
	font-weight: bold;
	margin: 20px auto 40px;
}

.l_artists .artists_inner {
	display: flex;
	padding-top: 40px;
	min-width: 769px;
	max-width: 1164px;
	margin-right: auto;
	margin-left: auto;
}

.l_artists .artists_inner .l_javi_aznarez {
	width: 50%;
	padding: 0 2.5773195876% 0 0;
}

.l_artists .artists_inner .l_javi_aznarez .image_block {
	position: relative;
	overflow: hidden;
}

.l_artists .artists_inner .l_javi_aznarez .image_block img {
	transition: transform 0.2s linear;
}

.l_artists .artists_inner .l_javi_aznarez .image_block:hover img {
	transform: scale(1.25);
}

.l_artists .artists_inner .l_javi_aznarez h3 {
	margin: 32px 0 24px;
}

.l_artists .artists_inner .l_javi_aznarez h3 .titleline_sub {
	font-size: 1.6rem;
}

.l_artists .artists_inner .l_javi_aznarez h3 .titleline_ja {
	display: block;
	font-size: 3.2rem;
	font-weight: bold;
	margin-top: 16px;
}

.l_artists .artists_inner .l_javi_aznarez .read {
	font-size: 1.6rem;
	line-height: 1.5;
	color: #757575;
}

.l_artists .artists_inner .l_jenni_fagan {
	width: 50%;
	padding: 0 0 0 2.5773195876%;
	margin-top: 17.1821305842%;
}

.l_artists .artists_inner .l_jenni_fagan .image_block {
	position: relative;
	overflow: hidden;
}

.l_artists .artists_inner .l_jenni_fagan .image_block img {
	transition: transform 0.2s linear;
}

.l_artists .artists_inner .l_jenni_fagan .image_block:hover img {
	transform: scale(1.25);
}

.l_artists .artists_inner .l_jenni_fagan h3 {
	margin: 32px 0 24px;
}

.l_artists .artists_inner .l_jenni_fagan h3 .titleline_sub {
	font-size: 1.6rem;
}

.l_artists .artists_inner .l_jenni_fagan h3 .titleline_ja {
	display: block;
	font-size: 3.2rem;
	font-weight: bold;
	margin-top: 16px;
}

.l_artists .artists_inner .l_jenni_fagan .read {
	font-size: 1.6rem;
	line-height: 1.5;
	color: #757575;
}

.l_rock {
	padding: 0 20px;
	max-width: 1600px;
	margin-right: auto;
	margin-left: auto;
}

.l_rock .text_box {
	display: flex;
	margin-top: 64px;
}

.l_rock .text_box h3 {
	font-size: 6.4rem;
	font-weight: bold;
	width: 50%;
}

.l_rock .text_box .read {
	font-size: 1.6rem;
	line-height: 1.5;
	color: #757575;
	width: 50%;
}

.l_sticky {
	max-width: 1600px;
	margin-right: auto;
	margin-left: auto;
}

.l_sticky .picture_block .picture_box {
	position: sticky;
	top: 0; /*Header高さ分で止まるようにする*/
	display: flex;
	align-items: center;
}

.l_sticky .picture_block .picture_box .image_block {
	width: 50%;
	height: 100vh;
}

.l_sticky .picture_block .picture_box .image_block img {
	height: 100%;
	object-fit: cover;
}

.l_sticky .picture_block .picture_box .text_box {
	max-width: 31%;
	margin: 0 auto;
	opacity: 0; /* フェードインのアニメーション */
}

.l_sticky .picture_block .picture_box .text_box h3 .titleline_ja {
	display: block;
	font-size: 4.8rem;
	font-weight: bold;
	line-height: 1.5;
	margin: 8px 0 24px;
}

.l_sticky .picture_block .picture_box .text_box h3 .titleline_en {
	display: inline-block;
	width: 27rem;
	margin: 0 0 24px;
}

.l_sticky .picture_block .picture_box .text_box h3 .titleline_sub {
	font-size: 1.6rem;
	line-height: 1.5;
}

.l_sticky .picture_block .picture_box .text_box h3.text_meghellan .titleline_en {
	display: block;
	width: 27rem;
	margin: 0 0 24px;
}

.l_sticky .picture_block .picture_box .text_box h3.text_meghellan .titleline_ja {
	display: block;
	font-size: 3.6rem;
	margin: 0 0 24px;
}

.l_sticky .picture_block .picture_box .text_box .read {
	font-size: 1.6rem;
	line-height: 1.5;
	color: #757575;
	margin-bottom: 24px;
}

.l_sticky .picture_block .picture_box .text_box .read:last-child {
	margin-bottom: 0;
}

.l_sticky .picture_block .picture_box .text_box.fadein {
	animation-name: fadeInAnime;
	animation-duration: 2s;
	animation-fill-mode: forwards;
	opacity: 0;
}

.l_sticky .picture_slide_block {
	padding-bottom: 15.625vw;
}

.l_sticky .picture_slide_block .swiper_picture .slide_box img.cover_picture {
	height: 119.7916666667vw;
	object-fit: cover;
}

.l_sticky .picture_slide_block .swiper_picture .slide_box .text_box .read {
	line-height: 1.5;
	color: #757575;
}

.l_sticky .picture_slide_block .swiper_picture .swiper-pagination-bullet {
	width: 6.5104166667vw;
	height: 3.125vw;
	margin: 0 4.1666666667vw;
	background: url(../img/product/pagination.svg) no-repeat;
	background-size: contain;
	border-radius: unset;
	opacity: 1;
}

.l_sticky .picture_slide_block .swiper_picture .swiper-pagination-bullet-active {
	background: url(../img/product/pagination_active.svg) no-repeat;
}

.l_sticky .slider_block {
	padding: 0 20px 120px;
}

.l_sticky .slider_block .swiper_only {
	overflow: hidden;
}

.l_sticky .slider_btn_block {
	display: flex;
	justify-content: flex-end;
	margin-top: 20px;
}

.l_sticky.l_pioneer .picture_block {
	padding-bottom: 256px;
}

.l_sticky.l_highland .picture_slide_block .swiper_picture .slide_box {
	height: auto;
}

.l_sticky.l_highland .picture_slide_block .swiper_picture .slide_box .slide_inner {
	height: 100%;
}

.l_sticky.l_highland .picture_slide_block .swiper_picture .slide_box .slide_inner.bg_beige {
	background-color: #efebe6;
}

.l_sticky.l_highland .picture_slide_block .swiper_picture .slide_box .text_box h3 .titleline_ja {
	font-size: 5.2083333333vw;
}

.l_sticky.l_highland .picture_slide_block .pagenation_block .swiper-pagination {
	position: relative;
	bottom: -24px;
}

.l_sticky.l_highland .bg_box.m_scroll_bg.is_viewed {
	animation: 2s ease forwards scrollbgAnime;
}

.l_macallan_birth {
	position: relative;
	width: 100%;
	height: 77svh;
	margin: 0 20px 128px;
	max-width: 1600px;
	margin-right: auto;
	margin-left: auto;
}

.l_macallan_birth .image_block {
	position: absolute;
	width: 100%;
	height: 100%;
	overflow: hidden;
	padding: 0 20px;
}

.l_macallan_birth .image_block .image_box {
	height: 100%;
}

.l_macallan_birth .image_block .image_box img {
	object-fit: cover;
	height: 100%;
}

.l_macallan_birth .inner {
	position: absolute;
	z-index: 10;
	padding: 80px;
	width: 100%;
	height: 100%;
}

.l_macallan_birth .inner .birth_titleline {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: flex-end;
}

.l_macallan_birth .inner .birth_titleline h1 {
	color: #fff;
	font-size: 3.2rem;
	line-height: 1.5;
	font-weight: bold;
}

.l_liquortax {
	padding: 0 20px 128px;
	max-width: 1600px;
	margin-right: auto;
	margin-left: auto;
}

.l_liquortax h2 {
	margin-bottom: 90px;
	text-align: left;
}

.l_liquortax h2.m_titleline:after {
	margin-left: 0;
}

.l_liquortax h2 .titleline_ja {
	display: block;
	font-size: 4.8rem;
	font-weight: bold;
	margin: 0 auto 40px;
}

.l_liquortax .read {
	width: 48.25%;
	color: #757575;
	font-size: 1.6rem;
	line-height: 1.5;
	margin-bottom: 20px;
}

.l_liquortax .read:last-child {
	margin-bottom: 0;
}

.m_scroll_text.is_viewed {
	animation: 2s ease-in forwards scrolltextAnime;
}

@media screen and (max-width: 1400px) {

.l_movie .movie_block {
	width: 83.1428571429%;
}

}

@media screen and (max-width: 1164px) {

.l_movie .movie_block {
	padding-right: 2.8571428571%;
	padding-left: 2.8571428571%;
}

.l_artists .artists_inner {
	padding-right: 2.8571428571%;
	padding-left: 2.8571428571%;
}

}

@media screen and (max-width: 768px) {

.l_mv {
	width: 79.1666666667vw;
}

.l_mv .image_block {
	padding: 0;
}

.l_mv .mv_inner {
	padding: 15.625vw 5.2083333333vw;
}

.l_mv .mv_inner .mv_titleline {
	justify-content: center;
}

.l_mv .mv_inner .mv_titleline h1 span img {
	width: 58.59375vw;
}

.l_mv .mv_inner .mv_titleline h1 {
	text-align: center;
}

.l_voyage {
	margin-top: 20.8333333333vw;
}

.l_voyage h2 {
	margin-bottom: 20.8333333333vw;
}

.l_voyage h2 .titleline_ja {
	font-size: 6.7708333333vw;
	margin: 5.2083333333vw auto 10.4166666667vw;
}

.l_voyage .read {
	width: 79.1666666667vw;
	font-size: 4.1666666667vw;
	margin-top: 20.8333333333vw;
}

.l_spring {
	width: 79.1666666667vw;
	margin: 20.8333333333vw auto 0;
	padding: 0;
}

.l_spring h2 {
	margin-bottom: 20.8333333333vw;
}

.l_spring h2.m_titleline:after {
	margin-left: 0vw;
}

.l_spring h2 .titleline_ja {
	font-size: 6.7708333333vw;
}

.l_spring .read {
	width: 79.1666666667vw;
	padding-bottom: 3.125vw;
	font-size: 4.1666666667vw;
	margin: 0 auto;
}

.l_movie h2 {
	margin-bottom: 20.8333333333vw;
}

.l_movie h2 span {
	font-size: 6.25vw;
	margin: 6.5104166667vw auto 10.4166666667vw;
}

.l_movie .read {
	margin-bottom: 6.25vw;
	padding: 0 10.4166666667vw;
	width: 100%;
	font-size: 4.1666666667vw;
}

.l_movie .movie_block {
	width: 100%;
	max-width: initial;
	min-width: initial;
	padding-right: 0;
	padding-left: 0;
}

.l_movie .movie_block {
	width: 79.1666666667vw;
	aspect-ratio: 9/16;
}

.l_movie.l_spring_movie {
	padding: 10.4166666667vw 0 16.6666666667vw;
}

.l_movie.l_distillery_movie .read {
	font-size: 4.1666666667vw;
}

.l_festival .picture_block .picture_box .text_box .read {
	font-size: 4.1666666667vw;
}

.l_festival .swiper_picture {
	position: relative;
}

.l_festival .swiper_picture .slide_box .text_box {
	padding: 0 10.4166666667vw;
}

.l_festival .swiper_picture .slide_box .text_box h3 {
	margin-top: 8.3333333333vw;
}

.l_festival .swiper_picture .slide_box .text_box h3 .titleline_ja {
	display: block;
	font-size: 6.25vw;
	font-weight: bold;
	margin: 2.0833333333vw 0 6.25vw;
}

.l_festival .swiper_picture .slide_box .text_box h3 .titleline_en {
	display: block;
	width: 27rem;
	margin: 0 0 24px;
}

.l_festival .swiper_picture .slide_box .text_box h3 .titleline_sub {
	font-size: 4.1666666667vw;
	line-height: 1.5;
}

.l_festival .swiper_picture .slide_box .text_box h3.text_meghellan .titleline_ja {
	display: inline-block;
	font-size: 3.6rem;
	margin: 0 0 24px;
}

.l_festival .swiper_picture .slide_box .text_box .read {
	font-size: 4.1666666667vw;
	padding-bottom: 3.125vw;
}

.l_festival .swiper_picture .slide_box .text_box .read:last-child {
	padding-bottom: 0;
}

.l_artists {
	margin: 15.625vw 0;
}

.l_artists h2 {
	font-size: 4.6875vw;
}

.l_artists h2 span {
	font-size: 6.7708333333vw;
	margin: 5.2083333333vw auto 10.4166666667vw;
}

.l_artists .artists_inner {
	width: 100%;
	max-width: initial;
	min-width: initial;
	padding-right: 0;
	padding-left: 0;
}

.l_artists .artists_inner {
	display: block;
	padding-top: 15.625vw;
}

.l_artists .artists_inner .l_javi_aznarez {
	width: 79.1666666667vw;
	padding: 0;
	margin: 0 auto;
}

.l_artists .artists_inner .l_javi_aznarez h3 {
	margin: 10.4166666667vw 0 6.5104166667vw;
}

.l_artists .artists_inner .l_javi_aznarez h3 .titleline_sub {
	font-size: 4.1666666667vw;
}

.l_artists .artists_inner .l_javi_aznarez h3 .titleline_ja {
	font-size: 6.25vw;
	margin-top: 3.90625vw;
}

.l_artists .artists_inner .l_javi_aznarez .read {
	font-size: 4.1666666667vw;
}

.l_artists .artists_inner .l_jenni_fagan {
	width: 79.1666666667vw;
	padding: 0;
	margin: 15.625vw auto 0;
}

.l_artists .artists_inner .l_jenni_fagan h3 {
	margin: 10.4166666667vw 0 6.5104166667vw;
}

.l_artists .artists_inner .l_jenni_fagan h3 .titleline_sub {
	font-size: 4.1666666667vw;
}

.l_artists .artists_inner .l_jenni_fagan h3 .titleline_ja {
	font-size: 6.25vw;
	margin-top: 3.90625vw;
}

.l_artists .artists_inner .l_jenni_fagan .read {
	font-size: 4.1666666667vw;
}

.l_rock {
	width: 79.1666666667vw;
	padding: 0 0 20.8333333333vw;
}

.l_rock .text_box {
	display: block;
	margin: 0;
}

.l_rock .text_box h3 {
	width: 100%;
	font-size: 6.7708333333vw;
	margin: 10.4166666667vw auto 5.2083333333vw;
}

.l_rock .text_box .read {
	font-size: 4.1666666667vw;
	width: 100%;
}

.l_sticky .picture_block .picture_box .text_box .read {
	font-size: 4.1666666667vw;
}

.l_sticky .picture_slide_block .swiper_picture {
	position: relative;
}

.l_sticky .picture_slide_block .swiper_picture .slide_box .text_box {
	padding: 0 10.4166666667vw;
}

.l_sticky .picture_slide_block .swiper_picture .slide_box .text_box.pt_64 {
	padding-top: 8.3333333333vw;
}

.l_sticky .picture_slide_block .swiper_picture .slide_box .text_box h3 {
	padding-top: 8.3333333333vw;
}

.l_sticky .picture_slide_block .swiper_picture .slide_box .text_box h3.text_meghellan {
	display: flex;
	align-items: center;
	margin: 8.3333333333vw 0 6.25vw;
}

.l_sticky .picture_slide_block .swiper_picture .slide_box .text_box h3.text_meghellan .titleline_ja {
	margin: 0;
}

.l_sticky .picture_slide_block .swiper_picture .slide_box .text_box h3 .titleline_ja {
	display: block;
	font-size: 6.25vw;
	font-weight: bold;
	margin: 2.0833333333vw 0 6.25vw;
}

.l_sticky .picture_slide_block .swiper_picture .slide_box .text_box h3 .titleline_sub {
	font-size: 4.1666666667vw;
	line-height: 1.5;
}

.l_sticky .picture_slide_block .swiper_picture .slide_box .text_box .read {
	font-size: 4.1666666667vw;
	padding-bottom: 3.125vw;
}

.l_sticky .picture_slide_block .swiper_picture .slide_box .text_box .read:last-child {
	padding-bottom: 15.625vw;
}

.l_sticky .slider_block {
	padding: 0 0 15.625vw;
}

.l_sticky .slider_btn_block {
	justify-content: center;
	margin-top: 8.3333333333vw;
}

.l_macallan_birth {
	width: 79.1666666667vw;
}

.l_macallan_birth .image_block {
	padding: 0;
}

.l_macallan_birth .inner {
	padding: 15.625vw 5.2083333333vw;
}

.l_macallan_birth .inner .birth_titleline {
	justify-content: center;
}

.l_macallan_birth .inner .birth_titleline h1 {
	font-size: 5.7291666667vw;
	text-align: center;
}

.l_liquortax {
	width: 79.1666666667vw;
	margin: 20.8333333333vw auto 0;
	padding: 0 0 20.8333333333vw;
}

.l_liquortax h2 {
	margin-bottom: 20.8333333333vw;
}

.l_liquortax h2 .titleline_ja {
	font-size: 6.7708333333vw;
	margin: 5.2083333333vw auto 10.4166666667vw;
}

.l_liquortax .read {
	width: 79.1666666667vw;
	padding-bottom: 3.125vw;
	font-size: 4.1666666667vw;
	margin: 0 auto;
}

}

@media screen and (max-width: 768px) and (max-width: 768px) {

.l_sticky .picture_slide_block .swiper_picture .slide_box .text_box h3.text_meghellan .titleline_en {
	display: inline-block;
	width: 39.0625vw;
}

}

@keyframes fadesmall {

100% {
	scale: 1;
}

}

@keyframes fadeIn50 {

0% {
	transform: translateY(50px);
	opacity: 0;
}

100% {
	transform: translateY(0);
	opacity: 1;
}

}

@keyframes fadeInAnime {

from {
	opacity: 0;
	transform: translateY(160px);
}

to {
	opacity: 1;
	transform: translateY(0);
}

}

@keyframes fadeInAnime {

from {
	opacity: 0;
	transform: translateY(160px);
}

to {
	opacity: 1;
	transform: translateY(0);
}

}

@keyframes scrollbgAnime {

from {
	background-color: #fff;
}

to {
	background-color: #efebe6;
}

}

@keyframes scrolltextAnime {

from {
	color: #757575;
}

to {
	color: #1a1a1a;
}

}

