@charset "utf-8";


/* base
1rem = 1em = 10px
------------------------------------------------------------ */
body,
html {
	height: 100%;
}
body,
form * {
	background: #fff;
	color: #333;
	font-family: "Shippori Mincho B1", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
	font-feature-settings: "palt";
	line-break: strict;
	letter-spacing: 0.0234375rem;
	font-weight: 400;
	font-style: normal;
}
p {
	text-align: justify;
	text-justify: inter-ideograph;
}
a {
	color: #333;
	text-decoration: underline;
}
a:hover {
	color: #333;
	text-decoration: none;
}
img {
	font-size: 0;
	line-height: 0;
}
.eb-garamond-400 {
	font-family: "EB Garamond", serif;
}
.italic {
	font-style: italic;
}
.red {
	color: #e83817 !important;
}
.blue {
	color: #1561ae !important;
}
hr.red {
	background-color: #e83817;
}
hr.blue {
	background-color: #1561ae;
}
hr.black {
	background-color: #333;
}
::selection {
	background: #e83817;
	color: #fff;
}
@media (min-width: 768px) {
i.break:after {
	content: "\A";
	white-space: pre;
}
i.break-bak:after {
	content: "";
}
.pcShow {
	display: block;
}
.spShow {
	display: none;
}
}
@media (max-width: 767px) {
html {
	font-size: 48%;
}
i.break:after {
	content: "";
}
i.break-bak:after {
	content: "\A";
	white-space: pre;
}
.pcShow {
	display: none;
}
.spShow {
	display: block;
}
}


/* a-underlineAnimation (multiple lines)
------------------------------------------------------------ */
a.underlineAnimationMultiple {
	text-decoration: none;
}
a.underlineAnimationMultiple span {
	background-image: linear-gradient(90deg, #333, #333);
	background-repeat: no-repeat;
	transition: background-size 0.375s;
}


/* touchEvent settings
------------------------------------------------------------ */
.content div.btn a.link-hover:hover {
	background-color: #1561ae;
	color: #fff;
}


/* lazysizes
------------------------------------------------------------ */
.lazyload {
	opacity: 0;
}
.lazyloaded {
	opacity: 1;
}


/* header / mv
------------------------------------------------------------ */
header.mv {
	position: relative;
	width: 100%;
	height: 100svh;
}
header.mv div.bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	background: linear-gradient(to bottom, #e83817, #1561ae);
	z-index: 1;
}
header.mv section {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	z-index: 2;
	opacity: 0;
	transition: opacity 0.375s;
	background-color: #1561ae;
}
header.mv section.slick-initialized {
	opacity: 1;
}
header.mv div.photo div.logotype {
	position: relative;
	width: 100%;
	height: 100svh;
}
header.mv div.photo div.logotype img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 4;
}
@media (min-width: 768px) {
header.mv div.bg {
	height: calc(100svh - 4.2vw);
}
header.mv section {
	width: 91.5vw;
	height: calc(100svh - 4.2vw);
	top: 4.2vw;
}
header.mv section div {
	width: 91.5vw;
	height: calc(100svh - 4.2vw);
}
header.mv section div img {
	width: 91.5vw;
	height: calc(100svh - 4.2vw);
	object-fit: cover;
}
header.mv div.photo div.logotype img {
	width: 18vw;
	height: auto;
}
}
@media (max-width: 767px) {
header.mv div.bg {
	height: calc(100svh - 8.4vw);
}
header.mv section {
	width: 85.5vw;
	height: calc(100svh - 8.4vw);
	top: 8.4vw;
}
header.mv section div {
	width: 85.5vw;
	height: calc(100svh - 8.4vw);
}
header.mv section div img {
	width: 85.5vw;
	height: calc(100svh - 8.4vw);
	object-fit: cover;
}
header.mv div.photo div.logotype img {
	width: 39vw;
	height: auto;
}
}


/* header / h1(identity)
------------------------------------------------------------ */
header h1 {
	position: fixed;
	z-index: 3;
}
header h1 a {
	display: block;
}
@media (min-width: 768px) {
header h1 {
	top: 1.2vw;
	left: 4.5vw;
}
header h1 img {
	width: 13.5vw;
	height: auto;
}
}
@media (max-width: 767px) {
header h1 {
	top: 3vw;
	left: 3vw;
}
header h1 img {
	width: 27vw;
	height: auto;
}
}


/* mv(sub)
------------------------------------------------------------ */
section.mv {
	position: relative;
	width: 100%;
}
section.mv div.bg {
	position: absolute;
	left: 0;
	width: 100%;
}
section.mv div.bg.orange {
	background: linear-gradient(to left, #e83817, #1561ae);
}
section.mv div.bg.blue {
	background: linear-gradient(to right, #e83817, #1561ae);
}
section.mv.left div.bg {
	bottom: 0;
}
section.mv.right div.bg {
	top: 0;
}
section.mv div.photo {
	position: absolute;
	background-color: #1561ae;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
@media (min-width: 768px) {
section.mv {
	height: 48vw;
}
section.mv div.bg {
	height: 42vw;
}
section.mv div.photo {
	width: 84vw;
	height: 42vw;
}
section.mv.left div.photo {
	top: 0;
	left: 0;
}
section.mv.right div.photo {
	bottom: 0;
	right: 0;
}
section.mv div.photo.num01 {
	background-image: url("/common/images/image-sub-01pc.jpg");
}
section.mv div.photo.num02 {
	background-image: url("/common/images/image-sub-02pc.jpg");
}
section.mv div.photo.num03 {
	background-image: url("/common/images/image-sub-03pc.jpg");
}
section.mv div.photo.num04 {
	background-image: url("/common/images/image-sub-04pc.jpg");
}
section.mv div.photo.num05 {
	background-image: url("/common/images/image-sub-05pc.jpg");
}
}
@media (max-width: 767px) {
section.mv {
	height: 102vw;
}
section.mv div.bg {
	height: 93vw;
}
section.mv div.photo {
	width: 93vw;
	height: 93vw;
}
section.mv.left div.photo {
	top: 0;
	left: 0;
}
section.mv.right div.photo {
	bottom: 0;
	right: 0;
}
section.mv div.photo.num01 {
	background-image: url("/common/images/image-sub-01sp.jpg");
}
section.mv div.photo.num02 {
	background-image: url("/common/images/image-sub-02sp.jpg");
}
section.mv div.photo.num03 {
	background-image: url("/common/images/image-sub-03sp.jpg");
}
section.mv div.photo.num04 {
	background-image: url("/common/images/image-sub-04sp.jpg");
}
section.mv div.photo.num05 {
	background-image: url("/common/images/image-sub-05sp.jpg");
}
}


/* footer
------------------------------------------------------------ */
footer {
	background: linear-gradient(to top, #e83817, #1561ae);
	color: #fff;
	text-decoration: none;
}
@media (min-width: 768px) {
footer {
	padding-top: 4.5rem;
	padding-bottom: 6rem;
}
footer p.logo img {
	width: 15rem;
	height: auto;
}
footer p.copyright {
	font-size: 1.3rem;
	margin-top: 3rem;
}
}
@media (max-width: 767px) {
footer {
	padding-top: 3rem;
	padding-bottom: 4.5rem;
}
footer p.logo img {
	width: 10.5rem;
	height: auto;
}
footer p.copyright {
	font-size: 1.3rem;
	margin-top: 2.1rem;
}
}


/* content
------------------------------------------------------------ */
.content h2,
.content h3,
.content h4 {
	font-weight: 600;
}
.content h2 {
	text-align: center;
	color: #333;
}
.content h2.en {
	letter-spacing: 0.28125rem !important;
	text-indent: 0.28125rem !important;
}
.content hr.h2 {
	border: 0;
	height: 0.2rem;
	width: 6rem;
	margin-left: auto;
	margin-right: auto;
}
.content hr.h3 {
	border: 0;
	height: 0.1rem;
	width: 3rem;
	margin-left: auto;
	margin-right: auto;
}
.content hr.separate {
	border: 0;
	height: 0.1rem;
	width: 4.5rem;
	margin-left: auto;
	margin-right: auto;
}
.content p img {
	width: 100%;
	height: auto;
}
@media (min-width: 768px) {
.content {
	width: 90rem;
	padding-top: 9rem;
	padding-bottom: 10.5rem;
	margin-left: auto;
	margin-right: auto;
}
.content p.pcCenter {
	text-align: center;
}
.content ul.hotelShopList {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.content ul.hotelShopList li {
	width: 42rem;
	margin-bottom: 4.5rem;
}
.content ul.hotelShopList li.mb-0 {
	margin-bottom: 0 !important;
}
}
@media (max-width: 767px) {
.content {
	padding-top: 6rem;
	padding-bottom: 7.5rem;
	padding-left: 3rem;
	padding-right: 3rem;
}
.content ul.hotelShopList li {
	margin-bottom: 3rem;
}
.content ul.hotelShopList li:last-child {
	margin-bottom: 0 !important;
}
}


/* button
------------------------------------------------------------ */
.content ul.hotelShopList li div.btn {
	width: 100%;
}
.content div.btn a {
	display: flex;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	padding-top: 1.2rem;
	padding-bottom: 1.2rem;
	border: 1px #1561ae solid;
	border-radius: 4.5rem;
	color: #1561ae;
	transition: all 0.1875s;
}
.content div.btn a i {
	margin-right: 0.9rem;
}
@media (min-width: 768px) {
div.btn.inquiry {
	width: 54rem;
	margin-left: auto;
	margin-right: auto;
}
}
@media (max-width: 767px) {
div.btn.inquiry {
	width: 100%;
}
}
