@charset "utf-8";

/* !HTML5 elements
---------------------------------------------------------- */
header, footer, nav, section, aside, article
{ display: block;}

/* !Reseting
---------------------------------------------------------- */

body, div, pre, p, blockquote, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, fieldset, th, td
{ margin: 0; padding: 0;}
input, textarea
{ margin: 0; font-size: 100%;}
label
{ cursor: pointer;}
table
{ border-collapse: collapse; border-spacing: 0; font-size: 100%;}
fieldset, img
{ border: 0;}
img
{ vertical-align: top; max-width: 100%;}
address, caption, cite, code, dfn, em, th, var
{ font-style: normal; font-weight: normal;}
ol, ul
{ list-style: none;}
caption, th
{ text-align: left;}
h1, h2, h3, h4, h5, h6
{ font-size: 100%; font-weight: normal;}
q:after, q:before
{ content:'';}
a, input,select,textarea,button
{ outline: none; }
abbr, acronym
{ border: 0;}



/* !Clearfix
---------------------------------------------------------- */
.clearfix {
	display: block;
	min-height: 1%;
}
.clearfix:after {
	clear: both;
	content:".";
	display: block;
	height: 0;
	visibility: hidden;
}
* html .clearfix {
	height: 1%;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}

/* !Inline Align ------------------------------------------------------------ */
.taL { text-align: left   !important;}
.taC { text-align: center !important;}
.taR { text-align: right  !important;}

/*common*/
a {
	color: inherit;
	text-decoration: none;
	transition: all 0.5s !important;
	-moz-transition: all 0.5s !important; /* Firefox */
	-webkit-transition: all 0.5s !important; /* Chrome&Safari */
}
.op img {
	transition: all 0.5s !important;
	-moz-transition: all 0.5s !important; /* Firefox */
	-webkit-transition: all 0.5s !important; /* Chrome&Safari */
}
.op:hover img {
	opacity: .7;
	-webkit-opacity: .7;
	-moz-opacity: .7;
}

* { 
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
}

/* !Layout
---------------------------------------------------------- */
html { 
	overflow-y: scroll;
	font-size: 62.5%;
}
body {
	color: #fff;
	font-family: "Noto Serif JP", serif;
	font-size: 1.6rem;
	-webkit-text-size-adjust: none;
	line-height: 1.5;
}

.font_bitter {
	font-family: "Bitter", serif;
}
.font_antonio {
	font-family: "Antonio", sans-serif;
}
.font_oswald {
	font-family: "Oswald", sans-serif;
}
.font_notosan {
	font-family: "Noto Sans JP", sans-serif;
}

/*** 1200 ***/
@media (max-width: 1200px) and (min-width: 835px) {
    html {
		font-size: 0.8333vw;
	}
}
@media screen and (max-width: 374px) {
	html {
		font-size: 2.6667vw;
	}
}

/*** pc ***/
@media screen and (min-width: 835px) {
	.sp {
		display: none;
	}
}
/*** sp ***/
@media screen and (max-width: 834px) {
	.pc {
		display: none;
	}
}


/* !yokohama_lp_wrapper
---------------------------------------------------------- */
#yokohama_lp_wrapper {
	position: relative;
	padding-top: 6.8rem;
}

/* !header
---------------------------------------------------------- */
#yokohama_lp_header {
	display: flex;
	justify-content: space-between;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 99;
	padding: 0 3.2rem;
	width: 100%;
	background: #004098;
	box-shadow: 0 0.4rem 0.4rem 0 rgba(0, 0, 0, 0.25);
}

.yokohama_lp_headlogo {
	display: flex;
	align-items: center;
	height: 6.8rem;
}
.yokohama_lp_headlogo .txt {
	font-size: 0;
}
.yokohama_lp_btn_menu {
	display: none;
}
#yokohama_lp_navi ul {
	display: flex;
	gap: 0 4rem;
}
#yokohama_lp_navi li {
	display: flex;
	align-items: center;
	height: 6.8rem;
}
#yokohama_lp_navi li a {
	display: block;
	position: relative;
	font-weight: 700;
}
#yokohama_lp_navi li a:after {
	content: "";
	display: block;	
	margin-top: 0.4rem;
	opacity: 0;
	transition-duration: 0.3s;
	border-bottom: 1px solid;
}
#yokohama_lp_navi li .eng {
	display: none;
}
#yokohama_lp_navi li .jap {
	line-height: 1;
}


/*** hover ***/
@media screen and (min-width: 960px) {
	#yokohama_lp_navi li a:hover:after {
		opacity: 1;
	}
	
}
/*** sp ***/
@media screen and (max-width: 834px) {
	#yokohama_lp_wrapper {
	    padding-top: 5.8rem;
	}
	
	#yokohama_lp_header {
		padding: 0 0 0 1.6rem;
	}
	.yokohama_lp_headlogo {
		gap: 0 0.8rem;
	    height: 5.8rem;
	}
	.yokohama_lp_headlogo img {
		width: 4.7rem;
	}
	.yokohama_lp_headlogo .txt {
		font-size: 1.6rem;
		font-weight: 700;
	}
	
	.yokohama_lp_btn_menu {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 5.8rem;
		height: 5.8rem;
		background-color: #fff;
		text-align: center;
	}
	.yokohama_lp_btn_menu.open {
		padding: 3rem 0 1rem;
		background: url(../image/common/icon_menu.svg)no-repeat center 1.5rem #fff;
	}
	.yokohama_lp_btn_menu.close {
		margin-left: auto;
	}
	.yokohama_lp_btn_menu:after {
		text-transform: uppercase;
		color: #004098;
		font-weight: 600;
	}
	.yokohama_lp_btn_menu.open:after {
		content: "MENU";
		font-size: 1.2rem;
	}
	.yokohama_lp_btn_menu.close:after {
		content: "CLOSE";
		font-size: 1.4rem;
	}
	#yokohama_lp_navi {
		position: absolute;
		right: 0;
		top: 0;
		transform: translateY(-100%);
		transition-duration: 0.3s;
		width: 100%;
	}
	#yokohama_lp_navi.open {
		transform: translateY(0%);
	}
	#yokohama_lp_navi ul {
		flex-direction: column;
		gap: 3.2rem 0;
		padding: 3.2rem 1.6rem;
		border-radius: 0 0 0 2rem;
		background: #004098;
	}
	#yokohama_lp_navi li {
	    display: block;
	    height: auto;
	}
	#yokohama_lp_navi li .eng {
	    display: block;
		font-size: 1.2rem;
	}
	#yokohama_lp_navi li .jap {
	    line-height: 1.2;
	}
	 
}

/* yokohama_lp_footer
-----------------------------------------------------------*/
.yokohama_lp_pagetop {
	cursor: pointer;
	height: 5rem;
	background: url(../image/common/icon_pagetop.svg)no-repeat center #fff;
}

.yokohama_lp_footer {
	padding: 6.3rem 5rem 8rem;
	background: #003288;
}
.yokohama_lp_footer .foot_inner {
	margin: 0 auto;
	max-width: 72rem;
}
.yokohama_lp_footer .footlogo {
	margin-bottom: 3.2rem;
	text-align: center;
}
.yokohama_lp_footer .footlogo img {
	width: 10rem;
}
.yokohama_lp_footer .sns {
	display: flex;
	justify-content: center;
	gap: 2.2rem;
	position: relative;
	padding: 4rem 0;
}
.yokohama_lp_footer .sns:before {
	content: "FOLLOW US";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	text-align: center;
	font-family: "Oswald", sans-serif;
	font-weight: 700;
}
.yokohama_lp_footer .sns a {
	width: 2.4rem;
}
.yokohama_lp_footer .footlinks {
	border-top: 1px solid;
}
.yokohama_lp_footer .footlinks li {
	border-bottom: 1px solid;
}
.yokohama_lp_footer .footlinks a {
	display: block;
	padding: 2rem 2rem 2rem 4rem;
	background: url(../image/common/icon_link_wh.svg)no-repeat right 1rem center;
	font-size: 1.4rem;
	font-weight: 700;
}
.yokohama_lp_footer #copyright {
	margin-top: 2.4rem;
	text-align: center;
	color: #5C7EBB;
	font-size: 1rem;
	font-weight: 700;
}

/*** pc ***/
@media screen and (min-width: 835px) {
	.yokohama_lp_footer a:hover {
		opacity: 0.7;
	}
}
/*** sp ***/
@media screen and (max-width: 834px) {
	.yokohama_lp_footer {
	    padding: 5rem 1.4rem 7rem;
	}
	.yokohama_lp_footer .sns {
		flex-wrap: wrap;
		gap: 2.4rem 3.2rem;
	    padding: 3.8rem 0 2.4rem;
	}
	.yokohama_lp_footer .sns:before {
		font-size: 1.5rem;
	}
	.yokohama_lp_footer .sns a {
	    width: 4.8rem;
	}
	.yokohama_lp_footer .footlinks a {
	    padding: 1.6rem 2rem 1.6rem 0;
	    background-position: right center;
	    font-size: 1.3rem;
	}
	.yokohama_lp_footer #copyright {
	    margin-top: 6.4rem;
	}
}


/* !common
---------------------------------------------------------- */
.is_popup {
	overflow: hidden;
	height: 100vh;
}

.hide {
	display: none;
}

.yokohama_lp_kv {
	position: relative;
}
.yokohama_lp_kv img {
	width: 100%;
}
.yokohama_lp_kv .scroll {
	position: absolute;
	right: 7rem;
	top: 50%;
	transform: translateY(-50%);
	width: 4.2rem;
}

.yokohama_lp_inner {
	margin: 0 auto;
	padding: 0 5rem;
	max-width: 130rem;
}

.yokohama_lp_hdl {
	margin-bottom: 4.8rem;
}
.yokohama_lp_hdl .eng {
	text-transform: uppercase;
	font-size: 4rem;
	font-weight: 600;
}
.yokohama_lp_hdl .eng:after {
	content: "";
	display: block;
	margin: 0.4rem 0;
	height: 0.4rem;
	width: 100%;
	background: url(../image/common/hd_frame.svg)no-repeat left center;
	background-size: auto 100%;
}
.yokohama_lp_hdl .jap {
	font-weight: 700;
}

.yokohama_lp_anchorarea {
	position: relative;
}
.yokohama_lp_anchorarea .anchor {
	position: absolute;
	top: -6.8rem;
}

.yokohama_lp_btns {
	display: flex;
	justify-content: center;
	gap: 0 3.2rem;
	margin-top: 4.8rem;
}
.yokohama_lp_btns a {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0 0.8rem;
	padding: 1rem 2rem;
	height: 7.2rem;
	width: 100%;
	max-width: 48rem;
	background: #fff;
	border-radius: 8rem;
	border: 1px solid;
	font-size: 1.8rem;
	font-weight: 900;
}
.yokohama_lp_btns a:after {
	content: "";
	width: 2.4rem;
	height: 2.4rem;
	background: no-repeat center;
	background-size: 100%;
}
.yokohama_lp_btns .btn1 {
	color: #E60039;
}
.yokohama_lp_btns .btn2 {
	color: #004098;
}
.yokohama_lp_btns .btn1:after {
	background-image: url(../image/common/ico_window_red.svg);
}
.yokohama_lp_btns .btn2:after {
	background-image: url(../image/common/ico_window_na.svg);
}

.line_red_gradient {
	width: 100%;
	height: 3.2rem;
	background: linear-gradient(90deg, #FB0026 0%, #FF8497 50%, #FB0026 100%);
}


/*** pc ***/
@media screen and (min-width: 835px) {
	.yokohama_lp_btns .btn1:hover {
		background: #E60039;
		color: #fff;
	}
	.yokohama_lp_btns .btn2:hover {
		background-image: url(../image/common/ico_window_wh.svg);
		background: #004098;
		color: #fff;
	}
	.yokohama_lp_btns .btn1:hover:after,
	.yokohama_lp_btns .btn2:hover:after {
		background-image: url(../image/common/ico_window_wh.svg);
	}
	
}
/*** sp ***/
@media screen and (max-width: 834px) {
	.yokohama_lp_inner {
	    padding: 0 1.6rem;
	}
	
	.yokohama_lp_hdl {
		margin-bottom: 3.2rem;
	}
	.yokohama_lp_hdl .eng {
		font-size: 2.8rem;
	}
	.yokohama_lp_hdl .eng:after {
		height: 0.2rem;
	}
	.yokohama_lp_hdl .jap {
		font-size: 1.2rem;
	}
	
	.yokohama_lp_anchorarea .anchor {
		top: -5.8rem;
	}
	
	.yokohama_lp_btns {
		display: flex;
		flex-wrap: wrap;
		gap: 2.4rem 0;
		margin-top: 4rem;
	}
	.yokohama_lp_btns a {
		height: 4.4rem;
		width: 100%; 
		font-size: 1.4rem;
	}
	.yokohama_lp_btns a:after {
		width: 2rem;
		height: 2rem;
	}
	
	.line_red_gradient {
		height: 2.4rem;
	}
	
	
}


/* !page
---------------------------------------------------------- */
.yokohama_lp_movie {
	padding: 12rem 0 6rem;
	background: url(../image/bg_movie_pc.png)no-repeat center bottom;
	background-size: cover;
}
.movie_inner {
	margin: 0 auto;
	max-width: 90rem;
}
.movie_inner .movie {
	position: relative;
	padding-top: 56.222%;
}
.movie_inner .movie iframe {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}

.yokohama_lp_photo_gallery {
	position: relative;
	z-index: 2;
	padding: 6rem 0 12rem;
	background: linear-gradient(180deg, #003174 0%, rgba(0, 49, 116, 0.00) 100%);
}
.yokohama_lp_photo_gallery .bg_wave {
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
}
.yokohama_lp_photo_gallery .bg_wave img {
	position: sticky;
	top: 0;
	object-fit: cover;
	width: 100%;
	height: 100vh;
}
.yokohama_lp_photo_gallery .yokohama_lp_hdl {
	margin-bottom: 3.2rem;
}
.yokohama_lp_photo_gallery .photo_tabctrl {
	display: flex;
	justify-content: center;
	gap: 1.6rem;
	margin-bottom: 3.2rem;
}
.yokohama_lp_photo_gallery .photo_tabctrl li {
	width: 20%;
	max-width: 16.7rem;
}
.yokohama_lp_photo_gallery .photo_tabctrl li a {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0.8rem;
	height: 4.4rem;
	border-radius: 1.074px;
	border: 1px solid #E2E2E2;
	background: #FFF;
	box-shadow: 0 0.537px 2.148px 0 rgba(0, 64, 152, 0.48);
}
.yokohama_lp_photo_gallery .photo_tabctrl li a.active {
	border-color: #E60039;
	background: #C1D1E7;
}
.yokohama_lp_photo_gallery .head {
	margin: 0 auto 3.2rem;
	max-width: 72rem;
	line-height: 2.16;
	font-size: 1.8rem;
	font-weight: 700;
}
.yokohama_lp_photo_gallery .head2 {
	margin-bottom: 1.6rem;
	line-height: 1;
	text-align: center;
	font-weight: 900;
}
.photo_gallery {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
}
.photo_gallery li .tit {
	text-transform: uppercase;
	line-height: 2;
	font-weight: 900;
	font-size: 1.8rem;
}
.photo_gallery li .tit .serial {
	display: inline-block;
	margin-right: 0.8rem;
	font-weight: 700;
	font-size: 1.6rem;
}
.photo_gallery li .img {
	display: block;
	position: relative;
	padding: 0.4rem;
}
.photo_gallery li .img:after {
	content: "";
	opacity: 0;
	position: absolute;
	left: 0;
	top: 0;
	transition-duration: 0.3s;
	width: 100%;
	height: 100%;
	background: url(../image/common/icon_sea_plus.svg)no-repeat center rgba(15, 33, 139, 0.4);
}
.photo_gallery li .img:hover { 
	transform: rotate(2deg);
	background: linear-gradient(135deg, #FB0026 20%, #fff 50%, #0F218B 80%);
}
.photo_gallery li .img:hover:after {
	opacity: 1;
}

body.compensate-for-scrollbar {
	overflow: visible;
}
.compensate-for-scrollbar {
    margin-right: 0!important;
}
.fancybox-content {
	padding: 2rem;
}
.fancybox-navigation .fancybox-button {
	display: none;
}
.fancybox_photo {
	position: relative;
	margin: 0 auto;
	max-width: 72rem;
}
.fancybox_photo .tit {
	margin-top: 1rem;
	text-align: right;
	font-family: "Noto Serif JP", serif;
	font-size: 1.8rem;
	font-weight: 700;
}
.fancybox_photo .close {
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	margin: 3.2rem auto 0;
	max-width: 68rem;
	height: 4rem;
	background: #fff;
	border-radius: 0.4rem;
	text-align: center;
	color: #004098;
	font-weight: 700;
}
.fancybox_btnctrl .btn_gallery {
	cursor: pointer;
	position: absolute;
	top: calc(50% - 8.5rem);
	width: 4rem;
	height: 4rem;
	background: no-repeat center #fff;
	border-radius: 50%;
}
.fancybox_btnctrl .btn_gallery.btn_disable {
	pointer-events: none;
	opacity: 0.7;
}
.fancybox_btnctrl .btn_prev {
	left: -2rem;
	background-image: url(../image/common/arr_prev.svg);
}
.fancybox_btnctrl .btn_next {
	right: -2rem;
	background-image: url(../image/common/arr_next.svg);
}

.yokohama_lp_message {
	background: #004098;
}
.yokohama_lp_message .message_signature {
	position: relative;
	z-index: 2;
	padding: 8rem 0; 
}
.yokohama_lp_message .message_signature:before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	opacity: 0.4;
	background: url(../image/bg_pc_message.png)no-repeat center;
	background-size: 100%;
}
.yokohama_lp_message .message_signature .yokohama_lp_inner {
	max-width: 82rem;
}
.yokohama_lp_message .banner img {
	width: 100%;
}

.yokohama_lp_spseason {
	position: relative;
	z-index: 2;
	padding: 12rem 0;
	background: #004098;
}
.yokohama_lp_spseason:before {
	content: "";
	opacity: 0.4;
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	background: url(../image/bg_pc_spseason.png)no-repeat center;
	background-size: cover;
}
.yokohama_lp_spseason .sub {
	margin: 0 auto 4.8rem;
	max-width: 72rem;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 2.16;
}
.yokohama_lp_spseason img {
	margin: 0 auto 4.8rem;
}

.yokohama_lp_bnr {
	padding: 10.4rem 0;
	background: url(../image/bg_bnr_pc.jpg)no-repeat center;
	background-size: cover;
}
.yokohama_lp_bnr .yokohama_lp_inner {
	max-width: 120rem;
}
.yokohama_lp_bnr ul {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 2.4rem;
}



/*** pc ***/
@media screen and (min-width: 835px) {
	
	.yokohama_lp_photo_gallery .photo_tabctrl li a:hover {
		opacity: 0.7;
	}
	.yokohama_lp_photo_gallery .photo_tabctrl li a.active:hover {
		opacity: 1;
	}
	
	.photo_gallery li {
		padding: 2.4rem;
		border-bottom: 1px solid;
		border-right: 1px solid;
	}
	.photo_gallery li:nth-of-type(4n){
		border-right: 0;
	}
	
	.fancybox_photo .close:hover,	
	.yokohama_lp_bnr li a:hover {
		opacity: 0.7;
	}
	
}
/*** sp ***/
@media screen and (max-width: 834px) {
	.yokohama_lp_movie {
	    padding: 8rem 0 3.2rem;
	    background-image: url(../image/bg_movie_sp.png);
	}
	.movie_inner .movie {
	    padding-top: 56.268%;
	}
	
	.yokohama_lp_photo_gallery {
	    padding: 3.2rem 0 4rem;
	}
	.yokohama_lp_photo_gallery .head,
	.yokohama_lp_photo_gallery .head2 {
	    font-size: 1.4rem;
	}
	.yokohama_lp_photo_gallery .photo_tabctrl {
		justify-content: space-between;
		flex-wrap: wrap;
		gap: 1.2rem 0.8rem;
		margin-bottom: 4rem;
	}
	.yokohama_lp_photo_gallery .photo_tabctrl li {
		width: calc(50% - 0.4rem);
		max-width: 100%;
	}
	.yokohama_lp_photo_gallery .photo_tabctrl li a {
	    padding: 0.5rem;
	}
	.photo_gallery {
	    grid-template-columns: repeat(2, 1fr);
		gap: 1.2rem;
	}
	.photo_gallery li {
		padding: 1.2rem 1.8rem 1.2rem 0.6rem;
		border-bottom: 1px solid;
	}
	.photo_gallery li:nth-of-type(odd) {
		border-right: 1px solid;
	}
	.photo_gallery li .tit {
		margin-bottom: 0.8rem;
	    line-height: 1.2;
	    font-size: 1.4rem;
	}
	.photo_gallery li .tit p + p {
		margin-top: 0.8rem;
	}
	.photo_gallery li .tit .serial {
		margin-right: 0.4rem;
	    font-size: 1.2rem;
	}
	.photo_gallery li .img {
		padding: 0;
	}
	
	.fancybox_photo .tit {
		text-align: left;
	    font-size: 1.6rem;
	}
	.fancybox_btnctrl .btn_gallery {
	    cursor: pointer;
	    position: absolute;
	    top: calc(50% - 6.8rem);
	    width: 3.2rem;
	    height: 3.2rem;
	}
	.fancybox_btnctrl .btn_prev {
	    left: -1.6rem;
	}
	.fancybox_btnctrl .btn_next {
	    right: -1.6rem;
	}
	
	.yokohama_lp_message .message_signature {
	    padding: 6.4rem 0;
	}
	
	.yokohama_lp_spseason {
	    padding: 8rem 0;
	}
	.yokohama_lp_spseason .sub {
	    margin-bottom: 3.2rem;
	    font-size: 1.4rem;
	}
	.yokohama_lp_spseason img {
	    margin-bottom: 3.2rem;
	}
	
	.yokohama_lp_bnr {
	    background-image: url(../image/bg_bnr_sp.jpg);
	}
	.yokohama_lp_bnr ul {
		grid-template-columns: repeat(1, 1fr);
		gap: 3.2rem 0;
		margin: 0 1.6rem;
	}
	
}


