@charset "utf-8";
/* reset */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;}
table{border-collapse:collapse; width:100%;}
fieldset,img{border:0; vertical-align:top;}
address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:normal;}
li{list-style:none;}
caption,th{text-align:left;}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:400;}
q:before,q:after{content:'';}
abbr,acronym{border:0;font-variant:normal;}
sup{vertical-align:text-top;}
sub{vertical-align:text-bottom;}
input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}
input,textarea,select{*font-size:100%;}
legend{color:#000;}
del,ins{text-decoration:none;}
section{display:block;}
figure,figcaption{margin:0; padding:0;}
main {display:block;padding:0;margin:0;
}
.cf:after{content:".";display:block;height:0;clear:both;visibility:hidden;font-size: 0.1em;}
.cf	{display:inline-block;zoom:1;}
ul.col {
	letter-spacing:-0.5em;
}
ul.col li {
	display:inline-block;
	vertical-align:top;
	letter-spacing:0.06em;
}
/* \*/
* html .cf	{height:1%;}
.cf	{display:block;}
/* */
a:link,a:visited {

	
	text-decoration:none;
	color:#14161e;
    transition:ease-in-out .3s;
-moz-transition:ease-in-out .3s;
-webkit-transition:ease-in-out .3s;
-o-transition:ease-in-out .3s;

    
}
a:hover {
    outline:none;
}
a:focus, *:focus { outline:none; }
img {
	max-width: 100%;
    height: auto;
    width /***/: auto;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
	
}
br.sp-only {
    display: none;
}
.inner1150 {
    max-width: 1150px;
    margin: auto;
    width: 86%;
}
#load {
    position: fixed;
    background-color: #fff;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 9999;
}
@font-face {
  font-family: 'cambria';
  src: url('../fonts/CambriaMath.ttf') format('truetype');
  font-weight: normal;
}
body {
	color: #161619;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
font-weight: 400;
		-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
    font-size: 1vw;
	font-feature-settings: "palt";
	    letter-spacing: 0.08em;
	
}
body {
 font-family: "Noto Sans JP", sans-serif;
}

.en{
font-family: "Poppins", sans-serif;
font-weight: 400;
font-style: normal;
}
.en-bold{
font-family: "Poppins", sans-serif;
font-weight: 700;
font-style: normal;
}
.jp-g{
font-family: a-otf-futo-go-b101-pr6n, sans-serif;
font-weight: 500;
font-style: normal;
}
.serif{
 font-family: "Rokkitt", serif;
font-weight: 400;
font-style: normal;
}
.serif-bold{

}
#home #visual {
    padding-top: 18em;
    padding-bottom: 18em;
    text-align: center;
    position: relative;
}
.bg1 {
    position: absolute;
    top: 0;
    right: 0;
    width: 42%;
    z-index: -1;
    opacity: 0.8;
}
.bg2 {
    position: absolute;
    top: 60%;
    left: 0;
    width: 45%;
    z-index: -1;
    opacity: 0.8;
}

#home #visual h1 {
     width: 19em;
    margin: 0 auto 5em;
}
#home #visual dl {
    text-align: left;
    margin: auto;
    width: 48%;
}
#home #visual dt {
    font-size: 1.4em;
    text-align: center;
    font-weight: 500;
    letter-spacing: 0.16em;
    margin-bottom: 1em;
}
#home #visual dd {
    font-size: 1.1em;
line-height: 2em;
}
.powderbelt {
    margin-top: 4em;
    width: 48%;
    margin: 0 auto;
    box-sizing: border-box;
    text-align: left;
    border-radius: 1em;
    padding-top: 5em;
    position: relative;
}

.powderbelt p {
font-size: 0.95em;
    line-height: 1.8em;
    padding-right: 9vw;
    position: relative;
    z-index: 2;
}
.powderbelt-txt {
    background: #ffffff;
    padding: 2.6em;
    border-radius: 1em;
}


.powderbelt-img {
    position: absolute;
    width: 24vw;
    right: -8vw;
    top: 0;
}
.powderbelt-img {
    position: absolute;
    width: 24vw;
    right: -8vw;
    top: 0;
}
#home .season {
width: 90%;
    margin: 0 auto 4em;
    position: relative;
}
#home .season a img{
transition: .4s;
}
#home .season a:hover img{
  transform: scale(1.03);
	opacity: 1;
transition: .4s;
}
.powderbelt-img {
    position: absolute;
    width: 23vw;
    right: -8vw;
    top: 0;
}

.home-season-summary {
    position: absolute;
    z-index: 2;
    top: 5em;
    left: 4em;
    color: #fff;
}
.powderbelt-title {
    font-size: 1.15em;
    font-weight: 600;
    padding-bottom: 1em;
}

.season-year.serif {
    font-size: 9em;
    font-style: italic;
    letter-spacing: -0.04em;
    line-height: 0.6em;
    color: #fff;
    font-weight: 500;
}
.season-name.serif {
    font-size: 2.2em;
    font-style: italic;
    letter-spacing: -0.01em;
    color: #fff;
    line-height: 0.9em;
    font-weight: 500;
    padding: 0 0.1em;
}
.home-season-title-wrap {
    position: absolute;
    right: 0;
    bottom: 0;
    padding: 2.7em;
    color: #fff;
}
.photo {
    background: #000;
	border-radius: 0.5em;
	overflow: hidden;
}.home-season-title {
    font-size: 1.5em;
    font-weight: 600;
    text-align: right;
    line-height: 1em;
}
.season a .home-season-title span {
    display: inline-block;
    margin-bottom: 0.2em;
    padding: 0.15em;
	transition: .4s;
}
.season a:hover .home-season-title span {
background: #000;
}





.home-season-data.en {
    font-size: 0.7em;
    font-style: italic;
    text-align: right;
    line-height: 1em;
}
.home-season-data.en span {
    display: inline-block;;
    padding: 0.15em;
	transition: .4s;
}

.season a:hover .home-season-data.en span{
    background: #000;
transition: .4s;
}



.season2021 .home-season-summary {
    left: auto;
    right: 3em;
}
.season2021 .season-name.serif {
    text-align: right;
}
.season2021 .home-season-title-wrap {
    right: auto;
    bottom: 0;
    left: 0;
	text-align: left;
}
.season2021 .home-season-title {
text-align: left;
}

.season2021 .home-season-data.en {
	text-align: left;
}

.season2019 .home-season-data.en {
	text-align: left;
}

.season2019 .home-season-summary {
    left: auto;
    right: 3em;
}
.season2019 .season-name.serif {
    text-align: right;
}
.season2019 .home-season-title-wrap {
    right: auto;
    bottom: 0;
    left: 0;
	text-align: left;
}
.season2019 .home-season-title {
text-align: left;
}


.season2019 .home-season-data.en {
	text-align: left;
}



.home-season-summary-title {
    font-weight: 600;
    font-size: 1.3em;
    color: #fff;
    font-style: italic;
}
.home-season-summary-title span {
    font-weight: 600;
    font-size: 1.3em;
    color: #fff;
    font-style: italic;
	display: block;
	margin-bottom: 0.2em;
	background: #000;
}

#home .season .photo img {
    width: 100%;
	opacity: 0.7;
}
#home .season .ttl {
    margin-top: -85px;
    position: relative;
    z-index: 2;
    margin-bottom: 20px;
}
#home .season .ttl.right {
    text-align: right;
}
#home .season .ttl h2 {
    font-family: 'cambria';
    font-size: 30px;
    line-height: 1;
    margin-left: 35px;
}
#home .season .ttl.right h2 {
    margin-right: 70px;
}


#home .season .lead {
    max-width: 540px;
    margin: auto;
    line-height: 36px;
    margin-bottom: 90px;
}
#home .season ul {
    margin-left: -2%;
    margin-right: -2%;
    text-align: center;
}
#home .season li {
    margin-left: 2%;
    margin-right: 2%;
    width: 29.3333%;
}
#home .season a {
    display: block;
}
#home .season a:hover {

}
.home-season-title-wrap {
    position: absolute;
    right: 0;
    bottom: 0;
}


.hotel {
    width: 55%;
    margin: 0 auto;
    padding: 6vw 0;
}
.hotel-items {
    display: flex;
    justify-content: space-between;
	flex-wrap: wrap;
}
.hotel-item {
    width: calc(50% - 2em);
}
.hotel-item-tmb {
    border-radius: 1em;
    overflow: hidden;
    margin-bottom: 1.5em;
}
.hotel-item-location {
    text-align: center;
}
.hotel-item-name {
    text-align: center;
    font-size: 1.2em;
    font-weight: 500;
    padding-bottom: 1em;
}
.hotel-item p {
    font-size: 0.9em;
    line-height: 1.8em;
}
.hotel-item a img{
	transition: .4s;
}
.hotel-title {
    text-align: center;
    padding-bottom: 2em;
    font-size: 1.4em;
    font-weight: 600;
}
.hotel-item a:hover img{
	 transform: scale(1.1);
	transition: .4s;
}

.txt-link a {
    text-decoration: underline;
}


 @media screen and (max-width: 1100px) {
	body {
		font-size: 14px;
	}
	
	
}

@media screen and (max-width:960px){
#home #visual {
    padding-top: 190px;
    padding-bottom: 190px;
}
#home #visual:before {
    width: 232px;
    height: 289px;
}
#home .season .ttl {
    margin-bottom: 45px;
}
#home #visual:after {
    width: 402px;
    height: 340px;
}
#home .season li {
    margin-left: 2%;
    margin-right: 2%;
    width: 45.9999%;
    margin-bottom: 40px;
}
#home .season .col2 ul {
    text-align: left;
}
#home .season {
    margin-bottom: 100px;
}
#facility-list li {
    width: 30.3333%;
    margin-left: 1.5%;
    margin-right: 1.5%;
    
}
#facility-list h4 {
    font-size: 14px;
}
#facility-list p {
    font-size: 12px;
    text-align: left;
    line-height: 1.8;
}
}
@media screen and (max-width:480px){
#home .season .ttl.right h2.mdr {
    margin-right: 0;
}
#home #visual {
    padding-top: 120px;
    padding-bottom: 120px;
}
#home #visual::before {
    width: 130px;
    height: 162px;
}
#home #visual::after {
    width: 220px;
    height: 186px;
}
#home #visual h1 img {

}
#home #visual dt {
    font-size: 17px;
    line-height: 28px;
}
#home #visual dd {
    line-height: 30px;
}
#home .season {
    margin-bottom: 90px;
}
#home .season .ttl {
    margin-top: -43px;
    margin-bottom: 40px;
}
#home .season .ttl h2 {
    font-size: 17px;
    margin-left: 0;
}
#home .season .ttl.right h2 {
    margin-right: 0;
}
#home .season .ttl h2 span {
    font-size: 60px;
    margin-left: -9px;
}
#home .season .ttl.right h2 span {
    margin-right: 8px;
}
#home .season .ttl p {
    font-size: 9px;
    line-height: 16px;
    margin-top: 3px;
}
#home .season .lead {
    line-height: 30px;
    margin-bottom: 50px;
}
#home .season ul {
    margin-left: 0%;
    margin-right: 0%;
}
#home .season li {
    margin-left: 0%;
    margin-right: 0%;
    width: 100%;
    margin-bottom: 50px;
    display: block;
}
#home .season h3 {
    font-size: 17px;
    line-height: 30px;
    margin-bottom: 30px;
}
#home .season h3 span {
    font-size: 12px;
}
br.sp-only {
    display: inherit;
}

}


@media screen and (max-width:960px){

	
	#home #visual dt {
    font-size: 18px;
    text-align: center;
    font-weight: 500;
    letter-spacing: 0.16em;
    margin-bottom: 1em;
}
	#home #visual dl {
    text-align: left;
    margin: auto;
    width: 60%;
}
	.powderbelt {
    margin-top: 4em;
    width: 60%;
    margin: 0 auto;
    box-sizing: border-box;
    text-align: left;
    border-radius: 1em;
    padding-top: 5em;
    position: relative;
}
	.powderbelt p {
    font-size: 13px;
    line-height: 2em;
    padding-right: 10vw;
    position: relative;
    z-index: 2;
}
	.powderbelt-img {
    position: absolute;
    width: 200px;
    right: -100px;
    top: 50px;
}
	.season-year.serif {
    font-size: 80px;
    font-style: italic;
    letter-spacing: -0.04em;
    line-height: 0.6em;
    color: #fff;
    font-weight: 500;
}.season-name.serif {
    font-size: 20px;
    font-style: italic;
    letter-spacing: -0.01em;
    color: #fff;
    line-height: 0.9em;
    font-weight: 500;
    padding: 0 0.1em;
}
	.home-season-title {
    font-size: 18px;
    font-weight: 600;
    text-align: right;
    line-height: 1em;
}
	.home-season-data.en {
    font-size: 10px;
    font-style: italic;
    text-align: right;
    line-height: 1em;
}
	#home .season {
    margin-bottom: 40px;
}
	.home-season-summary {
    top: 3em;
}.hotel {
    width: 70%;
    margin: 0 auto;
    padding: 40px 0;
}
	.hotel-title {
    text-align: center;
    padding-bottom: 2em;
    font-size: 20px;
    font-weight: 600;
}.hotel-item {
    width: calc(50% - 1em);
}
	.hotel-item-location {
    text-align: center;
    font-size: 12px;
}
	.hotel-item-name {
    text-align: center;
    font-size: 16px;
    font-weight: 500;
    padding-bottom: 1em;
}
	.hotel-item p {
    font-size: 12px;
    line-height: 1.8em;
}
	
	
}
@media screen and (max-width:650px){
.bg1 {
    position: absolute;
    top: 0;
    right: 0;
    width: 60%;
    z-index: -1;
    opacity: 0.8;
}
	#home #visual h1 {
    width: 40%;
    margin: 0 auto 5em;
}
	#home #visual dl {
    text-align: left;
    margin: auto;
    width: 70%;
}
	#home #visual dt {
    font-size: 16px;
    text-align: center;
    font-weight: 500;
    letter-spacing: 0.16em;
    margin-bottom: 1em;
}#home #visual dd {
    font-size: 14px;
    line-height: 2em;
}
	.powderbelt {
    margin-top: 4em;
    width: 70%;
    margin: 0 auto;
    box-sizing: border-box;
    text-align: left;
    border-radius: 1em;
    padding-top: 5em;
    position: relative;
}
	.powderbelt-title {
    font-size: 15px;
    font-weight: 600;
    padding-bottom: 1em;
}.powderbelt p {
    font-size: 12px;
    line-height: 2em;
    padding-right: 30%;
    position: relative;
    z-index: 2;
}
	.powderbelt-img {
    position: absolute;
    width: 180px;
    right: -50px;
    top: 50px;
}.bg2 {
    position: absolute;
    top: 70%;
    left: 0;
    width: 65%;
    z-index: -1;
    opacity: 0.8;
}.home-season-summary {
    top: 20px;
    left: 20px;
}.season-year.serif {
    font-size: 50px;
    font-style: italic;
    letter-spacing: -0.04em;
    line-height: 0.6em;
    color: #fff;
    font-weight: 500;
}.season-name.serif {
    font-size: 17px;
    font-style: italic;
    letter-spacing: -0.01em;
    color: #fff;
    line-height: 0.9em;
    font-weight: 500;
    padding: 0 0.1em;
}.home-season-title-wrap {
    position: absolute;
    right: 0;
    bottom: 0;
    padding: 20px;
    color: #fff;
}.home-season-title {
    font-size: 15px;
    font-weight: 600;
    text-align: right;
    line-height: 1em;
}.season2021 .home-season-summary {
    left: auto;
    right: 20px;
}.season2019 .home-season-summary {
    left: auto;
    right: 20px;
}.hotel-title {
    text-align: center;
    padding-bottom: 2em;
    font-size: 16px;
    font-weight: 600;
}.hotel {
    width: 90%;
    margin: 0 auto;
    padding: 40px 0;
}.hotel-item-tmb {
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 1.5em;
}.hotel-item {
    width: calc(50% - 10px);
}.hotel-item-name {
    text-align: center;
    font-size: 14px;
    font-weight: 500;
    padding-bottom: 10px;
}.hotel-item p {
    font-size: 11px;
    line-height: 1.8em;
}.hotel-item-tmb {
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 10px;
}.hotel-item-location {
    text-align: center;
    line-height: 1.4;
    padding-top: 10px;
    font-size: 11px;
}
	#head .menu-trigger span:nth-of-type(3) {
    top: 14px;
}
		#head #site-id {
    display: none;
}
		.powderbelt-txt {
    background: #ffffff;
    padding: 1em 2em 2em;
    border-radius: 1em;
}

	.powderbelt {
		 background: #fff;
    width: 80%;
    margin: 30px auto 0;
    box-sizing: border-box;
    text-align: left;
    border-radius: 1em;
    padding-top: 20px;
    position: relative;
}
}
@media screen and (max-width:450px){
.season-year.serif {
    font-size: 40px;
    font-style: italic;
    letter-spacing: -0.04em;
    line-height: 0.8em;
    color: #fff;
    font-weight: 500;
}
.home-season-title-wrap {
    position: absolute;
    right: 0;
    bottom: 0;
    padding: 16px;
    color: #fff;
}
.home-season-title {
    font-size: 14px;
    font-weight: 600;
    text-align: right;
    line-height: 1em;
    color: #000;
}.home-season-data.en span {
    color: #000;
}
	.season a:hover .home-season-title span {
		color: #fff;
	}
	.season a:hover .home-season-data.en span {
   color: #fff;
}
	.home-season-title-wrap {
    position: relative;
    right: 0;
    bottom: 0;
    padding: 12px;
    color: #fff;
}
	#home .season {
    margin-bottom: 20px;
}#home #visual dl {
    text-align: left;
    margin: auto;
    width: 80%;
}.powderbelt {
    width: 80%;
    margin: 30px auto 0;
    box-sizing: border-box;
    text-align: left;
    border-radius: 1em;
    padding-top: 20px;
    position: relative;
}.powderbelt-img {
    position: relative;
    width: 180px;
    right: auto;
    top: 0;
    margin: 0 auto;
}.powderbelt p {
    font-size: 12px;
    line-height: 2em;
    padding-right: 0;
    position: relative;
    z-index: 2;
}.powderbelt-title {
    font-size: 15px;
    font-weight: 600;
    padding-bottom: 1em;
    text-align: center;
}.hotel-item-name {
    text-align: center;
    font-size: 12px;
    font-weight: 500;
    padding-bottom: 10px;
    line-height: 1.4;
}

	
}

@media screen and (max-width:390px){
#home #visual h1 {
    width: 50%;
    margin: 0 auto 5em;
}
.bg2 {
    position: absolute;
    top: 90%;
    left: 0;
    width: 85%;
    z-index: -1;
    opacity: 0.8;
}
.hotel-item p {
    font-size: 10px;
    line-height: 1.8em;
}.hotel-item {
    width: calc(50% - 5px);
}.hotel-title {
    text-align: center;
    padding-bottom: 2em;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.5;
}
}