@font-face {
	font-family: "Nutella";
	src: url("../../fonts/nutella/nutella-webfont.woff2") format("woff2"), url("../../fonts/nutella/nutella-webfont.woff") format("woff"), url("../../fonts/nutella/Nutella.otf") format("truetype");
	font-style: normal;
	font-display: swap;
	font-weight: 700;
}

@font-face {
	font-family: "Chronic";
	src: url("../../fonts/33B6F7_0_0.woff2") format("woff2"), url("../../fonts/33B6F7_0_0.woff") format("woff"), url("../../fonts/33B6F7_0_0.ttf") format("truetype");
	font-style: normal;
	font-display: swap;
	font-weight: 400;
}

@font-face {
	font-family: "Just Another Hand";
	src: url("../../fonts/JustAnotherHand-Regular.ttf") format("truetype");
	font-style: normal;
	font-display: swap;
	font-weight: 400;
}

.title-h1 {
	font-family: var(--font-family-title);
	font-size: var(--font-size-h1);
	font-weight: var(--font-weight);
	line-height: var(--line-height-h1);
	color: #424242;
}

.title-h2 {
	font-family: var(--font-family-title);
	font-size: var(--font-size-h2);
	font-weight: var(--font-weight);
	line-height: var(--line-height-h2);
	color: #424242;
}

.title-h3 {
	font-family: var(--font-family-title);
	font-size: var(--font-size-h3);
	font-weight: var(--font-weight);
	line-height: var(--line-height-h3);
	color: #424242;
}

.title-h4 {
	font-family: var(--font-family-title);
	font-size: var(--font-size-h4);
	font-weight: var(--font-weight);
	line-height: var(--line-height-h4);
	color: #424242;
}

@font-face {
	font-family: "nutellaregular";
	src: url("../../fonts/nutella/nutella-webfont.woff2?aaa") format("woff2"), url("../../fonts/nutella/nutella-webfont.woff?aaa") format("woff");
	font-weight: normal;
	font-style: normal;
}

.visual {
	position: relative;
	background-color: var(--red);
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: end;
	justify-content: flex-end;
}

.visual .content-video {
	position: relative;
	width: 40%;
}

.visual .content-video:before {
	content: "";
	width: 100px;
	position: absolute;
	left: -100px;
	top: 0;
	height: 100%; /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#e20019+0,e1382a+55 */
	background: linear-gradient(to right, rgb(226, 0, 25) 0%, rgb(245, 24, 21) 55%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.visual .media {
	display: block;
}

.visual .media-mobile {
	display: none;
}

.visual__info {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-direction: column;
	flex-direction: column;
	row-gap: 1.13rem;
	max-width: 35.63rem;
}

.visual__info .logo {
	max-width: 12.5rem;
}

.visual__info .title {
	font-size: 3.75rem;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	color: #FFF;
	font-family: var(--font-family-text);
}

.visual__info .text {
	font-size: 1.5rem;
	font-style: normal;
	font-weight: 400;
	color: #FFF;
	font-family: var(--font-family-text);
}

.visual .visual__content {
	position: absolute;
	z-index: 1;
	top: 50%;
	left: 0;
	width: 100%;
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

.visual .world {
	position: absolute;
	bottom: -3.75rem;
	left: 50%;
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	z-index: 3;
	max-width: 7.5rem;
}

.bread-map {
	background-color: #f5efdd;
	position: relative;
}

.bread-map__title {
	color: #e20019;
	font-size: 3rem;
	font-weight: 700;
	text-align: center;
	line-height: 1.1;
}

.bread-map__text {
	font-size: 1.13rem;
	text-align: center;
	margin-top: 1.11rem;
}

.bread-map__inner {
	padding-bottom: 1px;
}

.bread-map__menu {
	position: absolute;
	top: 4.38rem;
	left: 0;
	width: 100%;
	z-index: 20;
}

.bread-map__menu.hide {
	display: none;
}

.bread-map__menu .map-notice-menu {
	display: -ms-flexbox;
	display: flex;
	position: relative;
	-ms-flex-direction: row;
	flex-direction: row;
	column-gap: 1rem;
	-ms-flex-pack: center;
	justify-content: center;
	background: none;
	backdrop-filter: none;
	padding: 0;
	-ms-transform: none;
	transform: none;
	left: auto;
	top: auto;
	width: 100%;
}

.bread-map__menu .map-notice-menu .select-zone {
	background: #FFF;
	padding: 0.63rem 1.38rem;
	box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
	border: none;
	border-radius: 2.5rem;
	font-family: "Nutella", sans-serif;
	font-size: 1.13rem;
	font-style: normal;
	font-weight: 700;
	letter-spacing: 0.5px;
	color: #e20019;
	min-width: 12.5rem;
	cursor: pointer;
}

.bread-map__menu .map-notice-menu .select-zone em {
	color: #000;
	font-style: normal;
}

.bread-map__menu .map-notice-menu .select-zone.active {
	background-color: #e20019;
	color: #FFF;
}

.bread-map__menu .map-notice-menu .select-zone.active em {
	color: #FFF;
}

.bread-map__map {
	background-color: #B8D8EE;
	background-image: url("../../images/map/sea.png");
	background-size: 180px 200px;
	box-shadow: 0px 4px 30px 0px rgba(0, 0, 0, 0.2);
	padding: 0.94rem 1.88rem;
	overflow: hidden;
	position: relative;
	will-change: width, height;
}

.bread-map__map-inner {
	position: relative;
	aspect-ratio: 1100/570;
}

.bread-map__map-inner svg,
.bread-map__map-inner .m-shadow {
	left: 0;
	top: 0;
	width: 100%;
	position: absolute;
	display: block;
	aspect-ratio: 1100/570;
	height: auto;
}

.bread-map__map-inner svg {
	z-index: 2;
}

.bread-map__map-inner svg path.active,
.bread-map__map-inner svg g.active path {
	fill: #e20019;
}

.bread-map__map-inner .m-shadow {
	opacity: 1;
	transition: opacity 0.5s ease;
}

.bread-map__map-image {
	aspect-ratio: 1100/570;
	left: 0;
	top: 0;
	position: absolute;
	display: block;
	width: 100%;
	height: auto;
}

.bread-map__map-image.animating .m-shadow {
	opacity: 0;
}

.bread-map__map-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 1.75rem;
	border: 0;
	z-index: 10;
}

.bread-map__nav {
	position: absolute;
	right: 20px;
	bottom: 30px;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: 10px;
	z-index: 8;
}

.bread-map__nav button {
	padding: 0;
	border: 0;
	background: transparent;
}

.bread-map__nav button:disabled {
	opacity: 0.2;
	pointer-events: none;
}

.map-notice {
	position: absolute;
	padding: 6.44rem 12.5rem;
	background-color: rgba(255, 255, 255, 0.5);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border-radius: 20px;
	top: 50%;
	left: 50%;
	z-index: 1;
	text-align: center;
	width: 57%;
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	display: -ms-flexbox;
	display: flex;
	-ms-flex-direction: column;
	flex-direction: column;
	-ms-flex-pack: center;
	justify-content: center;
	-ms-flex-align: center;
	align-items: center;
	row-gap: 1.88rem;
}

.map-notice .select-zone {
	background: #FFF;
	padding: 0.63rem 1.38rem;
	box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
	border: none;
	border-radius: 2.5rem;
	font-family: Nutella;
	font-size: 1.13rem;
	font-style: normal;
	font-weight: 700;
	letter-spacing: 0.5px;
	color: #e20019;
	min-width: 12.5rem;
	cursor: pointer;
}

.map-notice .select-zone em {
	color: #000;
	font-style: normal;
}

.ready .map-notice {
	display: none;
}

.map-notice__icon {
	margin-bottom: 1rem;
}

.map-notice__text {
	color: #000;
	font-weight: 400;
	font-size: 1.25rem;
	line-height: 1;
	font-family: "Montserrat", sans-serif;
}

.o-name,
.c-name {
	position: absolute;
	font-size: 10px;
	z-index: 3;
	text-align: center;
	font-family: "nutellaregular";
	color: #FFF;
	letter-spacing: 0.3px;
	line-height: 1;
	font-weight: 400;
	pointer-events: none;
	opacity: 1;
	transition: opacity 0.5s ease;
}

.zoomed .o-name,
.zoomed .c-name {
	opacity: 0;
}

.o-name {
	text-shadow: -1px -1px 0 #9DCFF2, 1px -1px 0 #9DCFF2, -1px 1px 0 #9DCFF2, 1px 1px 0 #9DCFF2;
}

.o-name.pacific {
	left: 4.7272727273%;
	top: 65.2631578947%;
}

.o-name.pacific-2 {
	left: 91.8181818182%;
	top: 42.1052631579%;
}

.o-name.atlantic {
	left: 33.2727272727%;
	top: 44.7368421053%;
}

.o-name.indian {
	left: 66.9090909091%;
	top: 67.5438596491%;
}

.c-name {
	text-shadow: -1px -1px 0 #DDCBA2, 1px -1px 0 #DDCBA2, -1px 1px 0 #DDCBA2, 1px 1px 0 #DDCBA2;
}

.c-name.n-america {
	left: 13.5454545455%;
	top: 25.4385964912%;
}

.c-name.s-america {
	left: 28.6363636364%;
	top: 71.9298245614%;
}

.c-name.europe {
	left: 50.6363636364%;
	top: 32.6315789474%;
}

.c-name.europe {
	left: 50.6363636364%;
	top: 32.6315789474%;
}

.c-name.africa {
	left: 52%;
	top: 60%;
}

.c-name.asia {
	left: 69.9090909091%;
	top: 38.7719298246%;
}

.c-name.oceania {
	left: 78.9090909091%;
	top: 75.6140350877%;
}

.c-icon {
	position: absolute;
	background-size: contain;
	background-repeat: no-repeat;
}

.c-icon.surf {
	width: 26px;
	height: 30px;
	background-image: url("../../images/map/global/surf.svg");
}

.c-icon.surf-1 {
	left: 34.0909090909%;
	top: 76.3157894737%;
}

.c-icon.surf-2 {
	left: 11.2727272727%;
	top: 45.0877192982%;
}

.c-icon.surf-3 {
	left: 89.9090909091%;
	top: 77.5438596491%;
}

.c-icon.boat {
	width: 32px;
	height: 39px;
	background-image: url("../../images/map/global/surf.svg");
}

.c-icon.boat-1 {
	left: 36.4545454545%;
	top: 31.5789473684%;
}

.c-icon.boat-2 {
	left: 55.0909090909%;
	top: 58.4210526316%;
}

.c-icon.rock {
	width: 35px;
	height: 41px;
	background-image: url("../../images/map/global/rock.svg");
}

.c-icon.rock-1 {
	left: 3.3636363636%;
	top: 72.6315789474%;
}

.c-icon.rock-2 {
	left: 93%;
	top: 59.649122807%;
}

.c-icon.boat-2 {
	width: 35px;
	height: 47px;
	background-image: url("../../images/map/global/boat-2.svg");
	left: 88.2727272727%;
	top: 47.0175438596%;
}

.map-pin {
	position: absolute;
	width: 1px;
	height: 1px;
	left: 30%;
	top: 30%;
	-ms-transform: scale(0);
	transform: scale(0);
	transition: transform 1s ease 0.2s;
	z-index: 5;
}

.map-pin.zoomed {
	-ms-transform: scale(1);
	transform: scale(1);
}

.map-pin.special {
	-ms-transform: scale(1);
	transform: scale(1);
}

.map-pin__name {
	position: absolute;
	font-size: 10px;
	text-align: center;
	font-family: "nutellaregular";
	color: #FFF;
	letter-spacing: 0.3px;
	line-height: 1;
	font-weight: 400;
	pointer-events: none;
	opacity: 1;
	transition: opacity 0.5s ease;
	display: none;
	text-shadow: -1px -1px 0 #DDCBA2, 1px -1px 0 #DDCBA2, -1px 1px 0 #DDCBA2, 1px 1px 0 #DDCBA2;
}

.zoomed .map-pin__name {
	display: block;
}

.map-pin__baloon {
	position: absolute;
	width: 164px;
	height: 138px;
	object-fit: contain;
	left: 50%;
	top: 50%;
	-ms-transform: translate(-50%, -50%) scale(0);
	transform: translate(-50%, -50%) scale(0);
	z-index: 1;
	transition: transform 0.5s ease;
}

.map-pin__baloon .map-pin__logo {
	width: 100%;
	height: auto;
}

.map-pin__baloon_info {
	position: absolute;
	top: 9%;
	left: 53%;
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	justify-content: center;
	-ms-flex-direction: column;
	flex-direction: column;
	-ms-flex-align: center;
	align-items: center;
	row-gap: 4px;
	width: 100%;
	padding: 0 0.63rem;
}

.map-pin__baloon_info .flag {
	max-width: 1.88rem;
}

.map-pin__baloon_info .caption {
	font-size: 1.13rem;
	font-family: "Nutella", sans-serif;
	letter-spacing: 0.5px;
	margin-top: -0.31rem;
	color: var(--red);
}

.map-pin__baloon_info .caption.small {
	font-size: 0.75rem;
	line-height: 1;
	text-align: center;
}

.map-pin__baloon_info .caption em {
	color: var(--text);
	font-style: normal;
}

.map-pin__baloon_info .cta-modal {
	max-width: 1.5rem;
	cursor: pointer;
	pointer-events: auto;
}

.animating .map-pin__baloon {
	display: none;
}

.map-pin__trigger {
	width: 67px;
	height: 78px;
	background-size: contain;
	background-repeat: no-repeat;
	padding: 0;
	background-color: transparent;
	border: 0;
	position: absolute;
	left: 50%;
	top: 50%;
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.map-pin.active .map-pin__name {
	display: none;
}

.map-pin.active .map-pin__baloon {
	-ms-transform: translate(-27%, -118%) scale(1);
	transform: translate(-27%, -118%) scale(1);
}

.map-pin.italy {
	left: 50.5%;
	top: 37%;
}

.map-pin.italy .map-pin__name {
	left: 94%;
	top: 91%;
}

.map-pin.spain {
	left: 46%;
	top: 38.6%;
}

.map-pin.spain .map-pin__name {
	left: 94%;
	top: 91%;
}

.map-pin.france {
	left: 47.6%;
	top: 33.7%;
}

.map-pin.france .map-pin__name {
	left: 50%;
	top: 103%;
}

.map-pin.germany {
	left: 49.6%;
	top: 30.8%;
}

.map-pin.germany .map-pin__name {
	left: 40%;
	top: 103%;
}

.map-pin.norway {
	left: 49.4%;
	top: 22%;
}

.map-pin.norway .map-pin__name {
	left: 40%;
	top: 103%;
}

.map-pin.czech_republic {
	left: 50.6%;
	top: 31.7%;
}

.map-pin.czech_republic .map-pin__name {
	left: 40%;
	top: 103%;
}

.map-pin.united_kingdom {
	left: 45.9%;
	top: 29.4%;
}

.map-pin.united_kingdom .map-pin__name {
	left: 40%;
	top: 103%;
}

.map-pin.brazil {
	left: 32%;
	top: 66%;
}

.map-pin.brazil .map-pin__name {
	left: 40%;
	top: 103%;
}

.map-pin.argentina {
	left: 29%;
	top: 80%;
}

.map-pin.argentina .map-pin__name {
	left: 40%;
	top: 103%;
}

.map-pin.paraguay {
	left: 30.5%;
	top: 73.9%;
}

.map-pin.paraguay .map-pin__name {
	left: 40%;
	top: 103%;
}

.map-pin.mexico {
	left: 18.3%;
	top: 48.2%;
}

.map-pin.mexico .map-pin__name {
	left: 40%;
	top: 103%;
}

.map-pin.turkey {
	left: 55.7%;
	top: 39%;
}

.map-pin.turkey .map-pin__name {
	left: 40%;
	top: 103%;
}

.map-pin.canada {
	left: 16.2%;
	top: 30.3%;
}

.map-pin.canada .map-pin__name {
	left: 40%;
	top: 103%;
}

.map-pin.united_states {
	left: 20%;
	top: 40%;
}

.map-pin.united_states .map-pin__name {
	left: 40%;
	top: 103%;
}

.map-pin.panama {
	left: 24.3%;
	top: 56.6%;
}

.map-pin.panama .map-pin__name {
	left: 40%;
	top: 103%;
}

.map-pin.australia {
	left: 84.1%;
	top: 72.6%;
}

.map-pin.australia .map-pin__name {
	left: 40%;
	top: 103%;
}

.map-pin.morocco {
	left: 45%;
	top: 42%;
}

.map-pin.morocco .map-pin__name {
	left: 40%;
	top: 103%;
}

.map-pin.egypt {
	left: 55%;
	top: 45%;
}

.map-pin.egypt .map-pin__name {
	left: 40%;
	top: 103%;
}

.map-pin.india {
	left: 68.5%;
	top: 50%;
}

.map-pin.india .map-pin__name {
	left: 40%;
	top: 103%;
}

.map-pin.philippines {
	left: 81%;
	top: 55%;
}

.map-pin.philippines .map-pin__name {
	left: 40%;
	top: 103%;
}

.map-pin.indonesia {
	left: 77.7%;
	top: 61%;
}

.map-pin.indonesia .map-pin__name {
	left: 40%;
	top: 103%;
}

.map-pin.singapore {
	left: 75.7%;
	top: 60.3%;
}

.map-pin.singapore .map-pin__name {
	left: 40%;
	top: 103%;
}

.map-pin.south_korea {
	left: 82.2%;
	top: 40.3%;
}

.map-pin.south_korea .map-pin__name {
	left: 40%;
	top: 103%;
}

.map-pin.qatar {
	left: 61%;
	top: 47%;
}

.map-pin.qatar .map-pin__name {
	left: 40%;
	top: 103%;
}

.map-pin.dubai {
	left: 62.1%;
	top: 47.6%;
}

.map-pin.dubai .map-pin__name {
	left: 40%;
	top: 103%;
}

.map-balloon {
	background-color: #FFF;
	padding: 1.25rem 1.44rem;
	width: 17.5rem;
	-ms-flex-direction: column;
	flex-direction: column;
	border-radius: 20px;
	box-shadow: 0px 10px 20px 0px rgba(0, 0, 0, 0.25);
	gap: 1rem;
	z-index: 12;
	position: absolute;
	left: 6.25rem;
	top: 50%;
	-ms-transform: translateY(-50%) translateX(-300px);
	transform: translateY(-50%) translateX(-300px);
	display: -ms-flexbox;
	display: flex;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.5s ease, transform 0.5s ease;
	text-align: center;
}

.map-balloon.active {
	opacity: 1;
	-ms-transform: translateY(-50%) translateX(0);
	transform: translateY(-50%) translateX(0);
	pointer-events: auto;
}

.map-balloon__icon {
	display: none;
}

.map-balloon__logo {
	height: 35px;
	width: 100%;
}

.map-balloon__logo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.map-balloon__title {
	color: #e20019;
	font-weight: 700;
}

.map-balloon__text {
	font-size: 0.88rem;
}

.map-balloon__cta {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	justify-content: center;
	width: 100%;
}

.map-balloon__cta a {
	border-radius: 50px;
	background-color: #e20019;
	color: #FFF;
	font-weight: 700;
	padding: 1.13rem 2.5rem;
	font-size: 1rem;
	line-height: 1;
}

.map-balloon__close {
	position: absolute;
	right: -0.5rem;
	top: -0.5rem;
	padding: 0;
	border: 0;
	background-color: #303030;
	font-size: 32px;
	color: #FFF;
	border-radius: 1rem;
}

.hide-description {
	display: none;
}

@media (min-width: 1024px) {

.map-balloon__title {
	display: none;
}

}

@media (max-width: 1023px) {

.title-h1 {
	font-size: 40px;
}

.title-h2 {
	font-size: 40px;
}

.title-h3 {
	font-size: 40px;
}

.title-h4 {
	font-size: 40px;
}

.visual .media {
	display: none;
}

.visual .media-mobile {
	display: block;
}

.visual__info {
	text-align: center;
	row-gap: 8px;
}

.visual__info .logo {
	max-width: 134px;
	margin: auto;
}

.visual__info .title {
	font-size: 40px;
	font-style: normal;
	font-weight: 700;
	line-height: 50px;
}

.visual__info .text {
	font-size: 20px;
	font-style: normal;
	font-weight: 400;
}

.visual .visual__content {
	top: 30px;
	-ms-transform: none;
	transform: none;
}

.bread-map__title {
	font-size: 2.38rem;
}

.bread-map__text {
	font-size: 1rem;
}

.bread-map__menu .map-notice-menu {
	column-gap: 10px;
	row-gap: 10px;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.bread-map__menu .map-notice-menu .select-zone {
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
	padding: 11px 0;
	min-width: 168px;
}

.bread-map__map {
	aspect-ratio: 335/600;
}

.bread-map__map-inner {
	height: 100%;
}

.bread-map__map-image {
	left: -30%;
}

.map-notice {
	padding: 40px 20px 72px;
	width: 90%;
}

.map-balloon {
	left: -25px;
	width: calc(100vw - 50px);
}

.map-balloon__icon {
	display: block;
}

.map-balloon__icon img {
	display: block;
	width: 140px;
	margin-left: auto;
	margin-right: auto;
}

.map-balloon__logo {
	display: none;
}

.map-balloon__close {
	right: 10px;
	top: 10px;
}

}

@media (max-width: 639px) {

.visual {
	height: 580px;
	-ms-flex-direction: column;
	flex-direction: column;
}

.visual .content-video {
	width: 100%;
}

.visual .content-video:before {
	height: 50px;
	left: 0;
	top: -50px;
	width: 100%; /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#e20019+0,e1382a+55 */
	background: linear-gradient(to bottom, rgb(226, 0, 25) 0%, rgb(245, 24, 21) 55%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

}

