@charset "UTF-8";
/* ---------------------------------------------------
	common
------------------------------------------------------ */
.popup {
  display: none;
  max-width: 70%;
  max-height: 2;
}
.popup.active {
  position: fixed;
  display: block;
  z-index: 8888;
  bottom: 0;
  left: 0;
  box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.4);
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}
.popup .btn-close {
  position: absolute;
  top: 0;
  right: 0;
  -webkit-transform: translate(50%, -50%);
  transform: translate(50%, -50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 4rem;
  height: 4rem;
  padding: 0;
  border: none;
  border-radius: 100%;
  background-color: #454f61;
  opacity: .7;
  cursor: pointer;
  z-index: 1;
}
.popup .btn-close .icon-close {
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
/* .popup .btn-close .icon-close::before {
  content: "×";
  font-size: 3.2rem;
  color: #FFF;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  line-height: 0;
} */

.popup .btn-close .icon-close::before{content: ""; display: inline-block; width: 20px; height: 2px; background:#FFF; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%) rotate(45deg);}
.popup .btn-close .icon-close::after {content: ""; display: inline-block; width: 20px; height: 2px; background:#FFF; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%) rotate(-45deg);}

.popup .popup-image a {
  display: block;
  margin-bottom: -6px;
}
.popup .popup-image a:hover {
  opacity: 1;
}
.popup .popup-image a:hover img {
  opacity: 1;
}

@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@media screen and (max-width: 1024px) and (orientation: landscape) {
  .popup .btn-close .icon-close::before {
    margin-top: 0;
  }
}
@media screen and (max-width:896px) {
  .popup .btn-close .icon-close::before {
    margin-top: -6px;
  }
}
@media screen and (max-width:896px) and (orientation: landscape) {
  .popup {
    max-width: 40%;
  }
}
@media screen and (max-width:896px), (max-width:896px) and (orientation: landscape) {
  .popup {
    max-width: 40%;
  }
  .popup.active {
    bottom: 50px;
  }
  .popup .btn-close .icon-close::before {
    margin-top: 0;
  }
}
@media screen and (max-width: 672px) {
  .popup {
    max-width: 65%;
  }
}

@media screen and (max-width:896px) and (orientation:landscape){
  .popup{max-width: 30%;}
}
/* ---------------------------------------------------
	mainvisual
------------------------------------------------------ */
#mainvisual {
  position: relative;
}
#mainvisual .swiper-wrapper {
  transition-timing-function: linear;
}
#mainvisual .swiper-slide {
  position: relative;
  width: 960px;
}
#mainvisual .swiper-slide a {
  display: block;
}
/* #mainvisual .swiper-slide a:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.2);
  transition: opacity .5s;
  z-index: 1;
} */
#mainvisual .swiper-slide a:hover {
  opacity: 1;
}
#mainvisual .swiper-slide a:hover:before {
  opacity: 0;
}
#mainvisual .swiper-slide a:hover img {
  opacity: 1;
}
#mainvisual .swiper-slide .slide-label {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 10;
}
#mainvisual .swiper-slide .slide-logo {
  position: absolute;
  left: 0;
  top: 70px;
  width: 100%;
  text-align: center;
  z-index: 0;
}
#mainvisual .swiper-slide .slide-pic {
  overflow: hidden;
}
#mainvisual .swiper-slide .slide-pic img {
  overflow: hidden;
  display: block;
}
#mainvisual .swiper-slide .slide-txt {
  position: absolute;
  left: 0;
  top: auto;
  bottom: 0;    
  width: 100%;
  margin-top: 0;
  color: #fff;
  text-align: center;
  z-index: 10;
  padding: 20px;
}
#mainvisual .swiper-slide .slide-txt.backon{
    background: #22222299;
}
#mainvisual .swiper-slide .slide-txt .tit {
  font-size: 3.2rem;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: 500;
  line-height: 1.375;
  letter-spacing: .05em;
}
.slick-slider{margin-bottom: 0; padding-bottom: 0;}

@media screen and (max-width:896px), (max-width:896px) and (orientation: landscape) {
  #mainvisual {
    position: relative;
  }
  #mainvisual .swiper-wrapper {
    transition-timing-function: ease-in-out;
  }
  #mainvisual .swiper-slide {
    width: 480px;
  }
  #mainvisual .swiper-slide a:hover:before {
    opacity: 1;
  }
  #mainvisual .swiper-slide .slide-label img {
    width: auto;
    height: 36px;
  }
  #mainvisual .swiper-slide .slide-logo {
    top: 50px;
  }
  #mainvisual .swiper-slide .slide-logo img {
    max-width: 80px;
  }
  #mainvisual .swiper-slide .slide-txt {
    margin-top: -30px;
    padding: 20px;
    font-size: 1.5rem;
  }
  #mainvisual .swiper-slide .slide-txt .tit {
    font-size: 1.8rem;
  }
}
@media screen and (max-width:896px) and (orientation:landscape){
  #mainvisual .swiper-slide {height: 300px;}
}
/* ---------------------------------------------------
	sec01
------------------------------------------------------ */
.safety-bnr {
  align-items: center;
  width: 100%;
  max-width: 820px;
  margin: 0 auto 100px;
  padding: 30px 40px;
  background: #F5F5F5;
  color: #222;
}
.safety-bnr .bnr-logo {
  width: 169px;
}
.safety-bnr .bnr-body {
  width: calc(100% - 169px);
  padding-left: 7%;
}
.safety-bnr .bnr-body .logo {
  display: inline-block;
  margin-bottom: 15px;
}
.safety-bnr .bnr-body .tit {
  margin: 0 0 10px;
  font-size: 2.6rem;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
  letter-spacing: .1em;
  line-height: 1.4;
  text-align: left;
}

.top-bnr{text-align: center; margin-bottom: 12.4rem;}

.top-bnr a:nth-child(n+3) img {
    margin-top: 30px;
}

.sec01 {
  padding: 80px 0 100px;
}
.sec01 .container {
  width: 96%;
  max-width: 1620px;
}

.sec01 .tab-btn {
  margin-bottom: 20px;
  font-size: 2.1rem;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  line-height: 1.3;
  justify-content: center;
}
.sec01 .tab-btn li {
  display: block;
  width: 220px;
  max-width: 22%;
  margin: 0 10px 10px;
  padding: 12px 5px;
  border-top: 1px solid #222;
  cursor: pointer;
  font-weight: 600;
  text-align: center;
  transition: all .4s;
}
.sec01 .tab-btn li.active {
  background: #222;
  color: #fff;
}
.sec01 .container .bnr-body .btn-nolink img{margin-left: 5px;}
.sec01 .pickup-list {
  justify-content: left;
  gap: 4px;
}
.sec01 .pickup-list::before{content: ""; display: inline-block; width: calc((100% - 18px) / 5); height: 0; order: 2;}
.sec01 .pickup-list::after {content: ""; display: inline-block; width: calc((100% - 18px) / 5); height: 0; order: 2;}
.sec01 .pickup-list li {
  width: calc((100% - 18px) / 5);
  border-right: none;
  text-align: center;
  margin-bottom: 25px;
}
.sec01 .pickup-list li img{
  display: block;
}
.sec01 .pickup-list li a {
  display: block;
  padding: 0;
  height: 100%;
}
.sec01 .pickup-list li a .list-pic{height: auto; overflow: hidden;}
.sec01 .pickup-list li a .list-pic img{margin: auto;}
.sec01 .pickup-list li a:hover {
  background: #F5F5F5;
  opacity: 1;
}
.sec01 .pickup-list li a:hover img {
  opacity: 1;
}
.sec01 .pickup-list li .list-txt {
  margin-top: 15px;
  line-height: 1.4;
  text-align: left;
  padding: 0 10px;
  font-size: 18px;
}
.sec01 .sec-btn {
  margin-top: 40px;
  text-align: center;
}
.sec01 .sec-btn .naspa-btn {
  padding: 0;
  font-size: 2rem;
}

@media screen and (max-width: 1366px) {
  .sec01 .pickup-list li a {
    padding: 20px;
  }
  .sec01 .pickup-list li a .list-pic {
    height: auto;
  }
}
@media screen and (max-width:896px), (max-width:896px) and (orientation: landscape) {
  .safety-bnr {
    margin: 0 auto 60px;
    padding: 20px 20px 30px;
  }
  .safety-bnr .bnr-logo {
    width: 120px;
    margin: 0 auto 30px;
  }
  .safety-bnr .bnr-body {
    width: 100%;
    padding-left: 0;
    text-align: center;
  }
  .safety-bnr .bnr-body .logo {
    display: block;
    margin: 0 auto 15px;
  }
  .safety-bnr .bnr-body .tit {
    width: 100%;
    margin: 0 0 15px;
    font-size: 2rem;
    text-align: left;
  }
  .top-bnr{margin-bottom: 6rem;}
  .sec01 {
    padding: 50px 0 50px;
  }
  .sec01 .container {
    width: 90%;
  }
  .sec01 .tab-btn {
    justify-content: space-between;
    margin-bottom: 0;
    font-size: 1.4rem;
  }
  .sec01 .tab-btn li {
    max-width: 48%;
    margin: 0 0 10px;
    padding: 12px 5px;
    border-top: 1px solid #222;
  }
  .sec01 .pickup-list li {
    width: 48%;
    margin-bottom: 10px;
  }
  .sec01 .pickup-list li a .list-pic{
    height: 126px;
  }
  .sec01 .pickup-list li a {
    padding: 0;
  }
  .sec01 .pickup-list li a:hover {
    background: none;
  }
  .sec01 .pickup-list li .list-txt {
    margin-top: 5px;
    font-size: 1.4rem;
  }
  .sec01 .sec-btn {
    margin-top: 30px;
  }
}
@media screen and (max-width:896px) and (orientation:landscape){
  .sec01 .tab-btn li{width:48%;}
  .sec01 .container{width:50%;}
}
/*--------------------------------------------------------
    新しい予約システムの上に表示するお得な会員特典の表示用css
---------------------------------------------------------*/
.sec01 .new-membership{
    width: calc(100dvw * (1300 / 1920));
    margin:0 auto calc(100dvw * (80 / 1920));
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    box-shadow: 0 calc(100dvw * (5 / 1920)) calc(100dvw * (10 / 1920)) #00355933;
    background: #F5F5F5;
    display: flex;
}

.sec01 .new-membership .left{
    padding: calc(100dvw * (30 / 1920));
    background: #003559;
    color: #FFF;
    width: 25%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.sec01 .new-membership .left p{
    text-align: center;
    font-size: calc(100dvw * (16 / 1920));
}
/* .sec01 .new-membership .left h2{
    text-align: center;
    font-size: calc(100dvw * (35 / 1920));
    margin-bottom: calc(100dvw * (15 / 1920));
} */
.sec01 .new-membership .left .title{
    text-align: center;
    font-size: calc(100dvw * (35 / 1920));
    margin-bottom: calc(100dvw * (15 / 1920));
    color: #fff;
    line-height: 1.4;
}
html:lang(en) .sec01 .new-membership .left .title{
     font-size: calc(100dvw * (29 / 1920));
}

.sec01 .new-membership .left a.link{
    color: #FFF;
    display: block;
    text-align: center;
    font-size: calc(100dvw * (15 / 1920));
}
.sec01 .new-membership .left a.link::after{
        content: "";
    display: inline-block;
    width: calc(100dvw*(21 / 1920)); height :calc(100dvw*(5 / 1920));
    background: url("../images/common/infoarroww.png") no-repeat center/contain;
    transform: translateY(-50%);
    margin-left: calc(100dvw*(10 / 1920));
    transition: all ease 0.2s;
}
.sec01 .new-membership .left a.link:hover::after{
   transform: translateY(-50%) translateX(calc(100dvw*(3 / 1920)));
}

.sec01 .new-membership .right{
    padding: calc(100dvw * (30 / 1920));
    display: flex;
   width: 75%;
}
.sec01 .new-membership .right .benefits{
    width: 80%;
    display: flex
}
.sec01 .new-membership .right .benefits .b-item{
    width: 33%;
    margin-right: 1.5%;
}
.sec01 .new-membership .right .benefits .b-item:last-of-type{
    margin-right:0;
}
.sec01 .new-membership .right .benefits .b-item h5{
    text-align: center;
    background: #d6bb6b;
    font-weight: 600;
    line-height: 1;
    padding: calc(100dvw * (5 / 1920)) 0;
    font-size: calc(100dvw * (16 / 1920));
    margin-bottom: calc(100dvw * (10 / 1920));
}
.sec01 .new-membership .right .benefits .b-item h4{
    text-align: center;
    font-weight: 600;
    line-height: 1.25;
    font-size: calc(100dvw * (23 / 1920));
    margin-bottom: calc(100dvw * (10 / 1920));
}
.sec01 .new-membership .right .benefits .b-item p{
    font-size: calc(100dvw * (14 / 1920));
    text-align: center;
}
.sec01 .new-membership .right .btnlinks{
    width: 20%; 
    padding-left:calc(100dvw * (30 / 1920));
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.sec01 .new-membership .right .btnlinks a{
    display: block;
    text-align: center;
    margin-bottom: calc(100dvw * (10 / 1920));
    font-size: calc(100dvw * (16 / 1920));
}
.sec01 .new-membership .right .btnlinks a:last-of-type{
     margin-bottom:0;
}

/*会員SP*/
@media screen and (max-width:896px), (max-width:896px) and (orientation: landscape){
    .sec01 .new-membership{
    width: 100%;
    margin:0 auto 30px;
    box-shadow: 0 5px 10px #00355933;
    display: block;
    }

    .sec01 .new-membership .left{
        padding:20px;
        width: 100%;
    }
    .sec01 .new-membership .left p{
        font-size: 16px;
    }
    .sec01 .new-membership .left .title{
        text-align: center;
        font-size: 30px;
        margin-bottom: 15px;
    }
    html:lang(en) .sec01 .new-membership .left .title{
     font-size: 20px;
    }
    .sec01 .new-membership .left a.link{
        font-size: 16px;
    }
    .sec01 .new-membership .left a.link::after{
        width: 21px;
        height: 5px;
        margin-left: 10px;
    }
    .sec01 .new-membership .left a.link:hover::after{
       transform: translateY(-50%) translateX(3px);
    }

    .sec01 .new-membership .right{
        padding: 40px 20px 20px 20px ;
        display: block;
       width: 100%;
    }
    .sec01 .new-membership .right .benefits{
        width: 100%;
        display: block;
    }
    .sec01 .new-membership .right .benefits .b-item{
        width: 100%;
        margin-right: 0;
        margin-bottom: 30px;
    }
    .sec01 .new-membership .right .benefits .b-item:last-of-type{
        margin-right:0;
    }
    .sec01 .new-membership .right .benefits .b-item h5{
        padding: 5px 0;
        font-size: 16px;
        margin-bottom: 10px;
    }
    .sec01 .new-membership .right .benefits .b-item h4{
        font-size: 23px;
        margin-bottom: 10px;
    }
    .sec01 .new-membership .right .benefits .b-item p{
        font-size: 14px;
    }
    .sec01 .new-membership .right .btnlinks{
        width: 100%; 
        padding-left:0;
    }
    .sec01 .new-membership .right .btnlinks a{
        display: block;
        text-align: center;
        margin-bottom: 10px;
        font-size: 16px;
    }
    .sec01 .new-membership .right .btnlinks a:last-of-type{
         margin-bottom:0;
    }
}

/*--------------------------------------------------------
    新しい予約システム用css（使わない）
---------------------------------------------------------*/
.sec01 .new-reserve{/*新予約css*/
    width: calc(100dvw * (1200 / 1920));
    margin:0 auto calc(100dvw * (80 / 1920));
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    box-shadow: 0 calc(100dvw * (5 / 1920)) calc(100dvw * (10 / 1920)) #00355933;
    background: #F5F5F5;
}
.sec01 .new-reserve .search-tit{/*タイトル：reservation*/
    font-size: calc(100dvw * (30 / 1920));
    margin: 0 calc(100dvw * (30 / 1920));
    padding:calc(100dvw * (30 / 1920)) 0 0 0;
}
.sec01 .new-reserve h4{
    font-size: calc(100dvw*(16/1920));
}
.sec01 .new-reserve .search-box{
    padding: calc(100dvw * (40 / 1920)) calc(100dvw * (40 / 1920)) calc(100dvw * (30 / 1920));
}
.sec01 .new-reserve input,.sec01 .new-reserve select{/*inputとselect*/
    font-weight: 400;
    font-size: calc(100dvw*(20/1920));
    line-height: 1;
    text-align: left;
    color: #222;
    border-radius: 0 !important;
    background: transparent;
    border: none;
    border-bottom: 1px solid #222;
}

.sec01 .new-reserve input[name="cmbARRY"],.sec01 .new-reserve input[name="cmbARRM"],.sec01 .new-reserve input[name="cmbARRD"]{/*ご宿泊日input*/
    width: calc(100dvw*(57/1920));
}

.sec01 .new-reserve .search-bestrate {/*ベストレートwrap*/
    margin-bottom: calc(100dvw*(30/1920));
}
.sec01 .new-reserve .search-bestrate img{/*ベストレート画像*/
    width: 100%;
}

.sec01 .new-reserve input[name="seek"]{/*検索するボタン*/
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    border: none;
    background: #003559;
    color: #FFF;
    font-size:calc(100dvw*(18/1920));
    letter-spacing: 0.05em;
    line-height: 1;
    text-align: center;
    font-weight: 600;
    border-radius: calc(100dvw*(5/1920));
    padding: calc(100dvw*(20/1920)) ;
    width: 100%;
    margin-bottom: calc(100dvw*(10/1920));
}
.sec01 .new-reserve .date-flexwrap{/*フレックス堤*/
    display: flex;
}
.sec01 .new-reserve .date-flexwrap .date-flexbox:nth-of-type(1){/*フレックス包み内側1*/
    width: 45%;
}
.sec01 .new-reserve .date-flexwrap .date-flexbox:nth-of-type(2){/*フレックス包み内側2*/
    width: 30%
}
.sec01 .new-reserve .date-flexwrap .date-flexbox:nth-of-type(3){/*フレックス包み内側3*/
    width: 25%;
}
.sec01 .new-reserve #syukuhakudata{
    line-height: 1;
    font-size: calc(100dvw*(16/1920));
}
.sec01 .new-reserve #ryokinarea select{
    font-size: calc(100dvw*(16/1920));
}
.sec01 .new-reserve #syukuhakuaduld {
    font-size: calc(100dvw*(16/1920));
}
.sec01 .new-reserve #lbchkpsn{
    font-size: calc(100dvw*(16/1920));
}
.sec01 .new-reserve #CHILDdata{
    font-size: calc(100dvw*(16/1920));
    margin-bottom: 0;
}
.sec01 .new-reserve #searchtypearea label{/*検索：◯◯を表示*/
    display: block;
    font-size: calc(100dvw*(16/1920));
}
.sec01 .new-reserve .search-link{
    padding:calc(100dvw*(10 / 1920)) calc(100dvw*(40 / 1920));
    font-size: calc(100dvw*(16/1920));
}
.sec01 .new-reserve .info-link{
    padding:calc(100dvw*(10 / 1920)) calc(100dvw*(40 / 1920));
    background: #003559;
    color: #fff;
    text-align: center;
    font-size: calc(100dvw*(16/1920));
}
.sec01 .new-reserve .info-link a,.sec01 .new-reserve .info-link a:visited{
    color: #FFF;
    display: inline-block;
    margin-left: calc(100dvw*(20 / 1920));
}
.sec01 .new-reserve .info-link a::after{
    content: "";
    display: inline-block;
    width: calc(100dvw*(21 / 1920)); height :calc(100dvw*(5 / 1920));
    background: url("../images/common/infoarroww.png") no-repeat center/contain;
    transform: translateY(-50%);
    margin-left: calc(100dvw*(10 / 1920));
    transition: all ease 0.2s;
}
.sec01 .new-reserve .info-link a:hover::after{
    transform: translateY(-50%) translateX(calc(100dvw*(3 / 1920)));
}

/*新予約システムSP*/
@media screen and (max-width:896px), (max-width:896px) and (orientation: landscape) {
    .sec01 .new-reserve{/*新予約css*/
        width: 100%;
        margin:0 auto 30px;
        box-shadow: 0 5px 10px #00355933;
        background: #F5F5F5;
    }
    .sec01 .new-reserve .search-tit{/*タイトル：reservation*/
        font-size: 32px;
        margin: 0 0 20px 0;
        padding:20px 0 0 0;
    }
    .sec01 .new-reserve h4{
        font-size: 16px;
    }
    .sec01 .new-reserve .search-box{
        padding: 20px;
    }
    .sec01 .new-reserve input,.sec01 .new-reserve select{/*inputとselect*/
        font-size: 18px;
    }

    .sec01 .new-reserve input[name="cmbARRY"],.sec01 .new-reserve input[name="cmbARRM"],.sec01 .new-reserve input[name="cmbARRD"]{/*ご宿泊日input*/
        width: 70px;
    }

    .sec01 .new-reserve .search-bestrate {/*ベストレートwrap*/
        margin-bottom: 30px;
        margin-top: 30px;
    }
    .sec01 .new-reserve .search-bestrate img{/*ベストレート画像*/
        width: 100%;
    }

    .sec01 .new-reserve input[name="seek"]{/*検索するボタン*/
        color: #FFF;
        font-size:18px;
        letter-spacing: 0.05em;
        line-height: 1;
        text-align: center;
        font-weight: 600;
        padding: 10px;
        width: 100%;
        margin-bottom: 10px;
    }
    .sec01 .new-reserve .date-flexwrap{/*フレックス堤*/
        display: block;
    }
    .sec01 .new-reserve .date-flexwrap .date-flexbox:nth-of-type(1){/*フレックス包み内側1*/
        width: 100%;
    }
    .sec01 .new-reserve .date-flexwrap .date-flexbox:nth-of-type(2){/*フレックス包み内側2*/
        width: 100%
    }
    .sec01 .new-reserve .date-flexwrap .date-flexbox:nth-of-type(3){/*フレックス包み内側3*/
        width: 100%;
    }
    .sec01 .new-reserve #syukuhakudata{
        line-height: 1;
        font-size: 16px;
    }
    .sec01 .new-reserve #ryokinarea select{
        font-size: 16px;
    }
    .sec01 .new-reserve #syukuhakuaduld {
        font-size: 16px;
    }
    .sec01 .new-reserve #lbchkpsn{
        font-size: 16px;
    }
    .sec01 .new-reserve #CHILDdata{
        font-size: 16px;
        margin-bottom: 0;
    }
    .sec01 .new-reserve #searchtypearea label{/*検索：◯◯を表示*/
        display: block;
        font-size: 16px;
    }
    .sec01 .new-reserve .search-link{
        padding:10px 30px;
        font-size:16px;
    }
    .sec01 .new-reserve .info-link{
        padding:10px;
        font-size:16px;
    }
    .sec01 .new-reserve .info-link a,.sec01 .new-reserve .info-link a:visited{
        margin-left: 15px;
    }
    .sec01 .new-reserve .info-link a::after{
        content: "";
        display: inline-block;
        width: 21px; height :5px;
        margin-left: 10px;
    }
    .sec01 .new-reserve .info-link a:hover::after{
        transform: translateY(-50%) translateX(calc(100dvw*(3 / 1920)));
    }
}


/*--------------------------------------------------------
    新しい予約システム用css Direct In S4（最新：使用中）
---------------------------------------------------------*/
.new-reserve-s4{
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    width:  calc(100dvw * (1300 / 1920));
    margin:0 auto calc(100dvw * (80 / 1920));
    box-shadow: 0 calc(100dvw * (5 / 1920)) calc(100dvw * (10 / 1920)) #321E1833;
    background: #F5F5F5;
   
}
.new-reserve-s4 .wraps4{
    display: flex;
    justify-content: space-between;
    padding: calc(100dvw * (40 / 1920)) calc(100dvw * (40 / 1920)) 0 calc(100dvw * (40 / 1920));
}
.new-reserve-s4 .search-tit{/*reservationタイトル*/
    margin: 0;
    font-size: calc(100dvw*(30 / 1920));
}
.new-reserve-s4 .search-bestrate{
    width:calc(100dvw*(250 / 1920));
}
.new-reserve-s4 .links-s4{
    display: flex;
    justify-content: center;
    padding: calc(100dvw * (20 / 1920))
}
.new-reserve-s4 .links-s4 a{
    display: block;
    font-size: calc(100dvw * (18 / 1920));
    margin-right: calc(100dvw * (30 / 1920)); 
}
.new-reserve-s4 .links-s4.en{
    padding-top:calc(100dvw * (10 / 1920));
    padding-bottom:calc(100dvw * (30 / 1920));
}
.new-reserve-s4 .links-s4.en a{
    line-height: 1.2;
    text-indent: -0.5em;
    padding-left: 0.5em;
} 
.new-reserve-s4 .links-s4.en a:last-of-type{
    margin-right: 0;
}


.new-reserve-s4 .info-link{
    padding:calc(100dvw*(10 / 1920)) calc(100dvw*(40 / 1920));
    background: #003559;
    color: #fff;
    text-align: center;
    font-size: calc(100dvw*(20/1920));
}
.new-reserve-s4 .info-link a,.sec01 .new-reserve .info-link a:visited{
    color: #FFF;
    display: inline-block;
    margin-left: calc(100dvw*(20 / 1920));
}
.new-reserve-s4 .info-link a::after{
    content: "";
    display: inline-block;
    width: calc(100dvw*(21 / 1920)); height :calc(100dvw*(5 / 1920));
    background: url("../images/common/infoarroww.png") no-repeat center/contain;
    transform: translateY(-50%);
    margin-left: calc(100dvw*(10 / 1920));
    transition: all ease 0.2s;
}
.new-reserve-s4 .info-link a:hover::after{
    transform: translateY(-50%) translateX(calc(100dvw*(3 / 1920)));
}

.new-reserve-s4 .directin-sp-form{/*フォームまとめ*/
    padding: 0;
}
.new-reserve-s4 .directin-sp-form > div{/*フォームまとめのdiv*/
    margin: 0;
}
.new-reserve-s4 .directin-sp-form .directin-sp-form-date-input-group{
    margin-right: calc(100dvw * (8 / 1920));
}
.new-reserve-s4 .directin-sp-form .directin-sp-form-input label{
    line-height: 1;
}
.new-reserve-s4 .directin-sp-form .directin-sp-form-input label .directin-sp-form-label{/*input上テキスト*/
    font-size:calc(100dvw * (15 / 1920));
}

.new-reserve-s4 .directin-sp-form .directin-sp-form-date-input-group .directin-sp-form-date-input input[type="text"]{/*日付input*/
    width:calc(100dvw * (300 / 1920));
    padding:calc(100dvw * (8 / 1920)) calc(100dvw * (8 / 1920)) calc(100dvw * (8 / 1920)) calc(100dvw * (38 / 1920));
    background-size: calc(100dvw * (22 / 1920)) calc(100dvw * (22 / 1920));
    background-repeat: no-repeat;
    background-position: left calc(100dvw * (8 / 1920)) center;
    font-size: calc(100dvw * (16 / 1920));
    border-radius: 0;
    border: none;
    border-bottom: 1px solid #003559;
    outline: none;
}

.directin-sp-form .directin-sp-form-date-input-group .directin-sp-form-nodate-checkbox{/*人数未定*/
    padding-bottom: 0;
}

.new-reserve-s4 .directin-sp-form .directin-sp-form-input label .directin-sp-form-checkbox-label{/*チェックボックス横テキスト*/
    font-size: calc(100dvw * (16 / 1920));
}

.new-reserve-s4 .directin-sp-form .directin-sp-form-guest-room-input-group .directin-sp-form-guest-room-input input[type="text"]{/*人数客室数input*/
    width: calc(100dvw * (120 / 1920));
    font-size: calc(100dvw * (16 / 1920));
    padding: calc(100dvw * (8 / 1920));
    border-radius: 0;
    border: none;
    border-bottom: 1px solid #003559;
    outline: none;
}

 .new-reserve-s4 .directin-sp-form .directin-sp-form-input label select{/*人数客室数inputの展開メニュー*/
    background: none;
    width: auto;
}

.new-reserve-s4 .directin-sp-form-submit-button button{/*検索ボタン*/
    background: #003559;
    font-weight: 700;
    font-size: calc(100dvw * (16 / 1920));
    padding: calc(100dvw * (8 / 1920)) calc(100dvw * (40 / 1920));
}

/*SP*/
@media screen and (max-width:896px), (max-width:896px) and (orientation: landscape) {
  .new-reserve-s4{
      width: 100%;
      margin:0 auto 30px;
      box-shadow: 0 5px 10px #321E1833;
  }
  .new-reserve-s4 .wraps4{
      display: block;
      padding: 20px 20px 0 20px;
  }
  .new-reserve-s4 .search-tit{/*reservationタイトル*/
      margin: 0;
      font-size: 32px;
  }
  .new-reserve-s4 .search-bestrate{
      width:100%;
  }
  .new-reserve-s4 .search-bestrate img{
      width: 100%;
  }
    
  .new-reserve-s4 .links-s4{
      display: block;
      justify-content: center;
      padding:20px;
  }
  .new-reserve-s4 .links-s4 a{
      display: block;
      font-size: 18px;
      margin-right: 0; 
      width: fit-content;
  }
  .new-reserve-s4 .links-s4.en{
      padding-top:20px;
      padding-bottom: 20px;
  }
  .new-reserve-s4 .links-s4.en a{
      line-height: 1.8;
  }


  .new-reserve-s4 .info-link{
      padding:20px;
      font-size: 16px;
  }
  .new-reserve-s4 .info-link a,.sec01 .new-reserve .info-link a:visited{
      /* margin-left: 20px; */
      margin-left: 0;
  }
  .new-reserve-s4 .info-link a::after{
      width: 21px; height :5px;
      margin-left: 10px;
  }
  .new-reserve-s4 .info-link a:hover::after{
      transform: translateY(-50%) translateX(calc(100dvw*(3 / 1920)));
  }

  .new-reserve-s4 .directin-sp-form{/*フォームまとめ*/
      padding: 0;
  }
  .new-reserve-s4 .directin-sp-form > div{/*フォームまとめのdiv*/
      margin: 0;
  }
  .new-reserve-s4 .directin-sp-form .directin-sp-form-date-input-group{
      margin-right: 0;
      margin-bottom: 30px;
  }
  .new-reserve-s4 .directin-sp-form-input-group .directin-sp-form-guest-room-input-group{
      margin-bottom: 30px;
  }
  .new-reserve-s4 .directin-sp-form .directin-sp-form-input label{
      line-height: 1;
  }
  .new-reserve-s4 .directin-sp-form .directin-sp-form-input label .directin-sp-form-label{/*input上テキスト*/
      font-size:15px;
  }

  .new-reserve-s4 .directin-sp-form .directin-sp-form-date-input-group .directin-sp-form-date-input input[type="text"]{/*日付input*/
      width:100%;
      padding:8px 8px 8px 38px;
      background-size: 22px 22px;
      
      background-image: url(data:image/svg+xml;base64,PCEtLT94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPy0tPg0KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE4LjEuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPg0KDQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9Il94MzJfIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDUxMiA1MTIiIHN0eWxlPSJ3aWR0aDogMjU2cHg7IGhlaWdodDogMjU2cHg7IG9wYWNpdHk6IDE7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+DQoJLnN0MHtmaWxsOiM0QjRCNEI7fQ0KPC9zdHlsZT4NCjxnPg0KCTxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xNDkuMTkzLDEwMy41MjVjMTUuOTk0LDAsMjguOTY0LTEyLjk3LDI4Ljk2NC0yOC45NzNWMjguOTY0QzE3OC4xNTcsMTIuOTcsMTY1LjE4NywwLDE0OS4xOTMsMA0KCQlDMTMzLjE5LDAsMTIwLjIyLDEyLjk3LDEyMC4yMiwyOC45NjR2NDUuNTg5QzEyMC4yMiw5MC41NTUsMTMzLjE5LDEwMy41MjUsMTQ5LjE5MywxMDMuNTI1eiIgc3R5bGU9ImZpbGw6IHJnYig3NSwgNzUsIDc1KTsiPjwvcGF0aD4NCgk8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMzYyLjgxNSwxMDMuNTI1YzE1Ljk5NSwwLDI4Ljk2NC0xMi45NywyOC45NjQtMjguOTczVjI4Ljk2NEMzOTEuNzgsMTIuOTcsMzc4LjgxLDAsMzYyLjgxNSwwDQoJCWMtMTYuMDAyLDAtMjguOTcyLDEyLjk3LTI4Ljk3MiwyOC45NjR2NDUuNTg5QzMzMy44NDMsOTAuNTU1LDM0Ni44MTMsMTAzLjUyNSwzNjIuODE1LDEwMy41MjV6IiBzdHlsZT0iZmlsbDogcmdiKDc1LCA3NSwgNzUpOyI+PC9wYXRoPg0KCTxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik00MzUuMTY0LDQxLjI4N2gtMTcuOTI1djMzLjI2NWMwLDMwLjAxNy0yNC40MTUsNTQuNDMyLTU0LjQyMyw1NC40MzJjLTMwLjAxNywwLTU0LjQzMS0yNC40MTUtNTQuNDMxLTU0LjQzMg0KCQlWNDEuMjg3SDIwMy42MTV2MzMuMjY1YzAsMzAuMDE3LTI0LjQxNCw1NC40MzItNTQuNDIyLDU0LjQzMmMtMzAuMDE2LDAtNTQuNDMyLTI0LjQxNS01NC40MzItNTQuNDMyVjQxLjI4N0g3Ni44MzYNCgkJYy0zOC41MjgsMC02OS43NjMsMzEuMjM0LTY5Ljc2Myw2OS43NjN2MzMxLjE4N0M3LjA3Myw0ODAuNzY1LDM4LjMwOSw1MTIsNzYuODM2LDUxMmgzNTguMzI4DQoJCWMzOC41MjgsMCw2OS43NjMtMzEuMjM1LDY5Ljc2My02OS43NjNWMTExLjA1QzUwNC45MjcsNzIuNTIyLDQ3My42OTEsNDEuMjg3LDQzNS4xNjQsNDEuMjg3eiBNNDUwLjAyMyw0MjkuOTg4DQoJCWMwLDE3LjgyNi0xNC41MDMsMzIuMzI5LTMyLjMyOSwzMi4zMjlIOTQuMzA2Yy0xNy44MjYsMC0zMi4zMjktMTQuNTAzLTMyLjMyOS0zMi4zMjlWMTcwLjg3NmgzODguMDQ3VjQyOS45ODh6IiBzdHlsZT0iZmlsbDogcmdiKDc1LCA3NSwgNzUpOyI+PC9wYXRoPg0KCTxyZWN0IHg9IjE5MC43MjkiIHk9IjM3MS43NjkiIGNsYXNzPSJzdDAiIHdpZHRoPSI1MS4xOTEiIGhlaWdodD0iNTEuMTkyIiBzdHlsZT0iZmlsbDogcmdiKDc1LCA3NSwgNzUpOyI+PC9yZWN0Pg0KCTxyZWN0IHg9IjE5MC43MjkiIHk9IjI5Mi40MTkiIGNsYXNzPSJzdDAiIHdpZHRoPSI1MS4xOTEiIGhlaWdodD0iNTEuMTkiIHN0eWxlPSJmaWxsOiByZ2IoNzUsIDc1LCA3NSk7Ij48L3JlY3Q+DQoJPHJlY3QgeD0iMTExLjM4NiIgeT0iMzcxLjc2OSIgY2xhc3M9InN0MCIgd2lkdGg9IjUxLjE5IiBoZWlnaHQ9IjUxLjE5MiIgc3R5bGU9ImZpbGw6IHJnYig3NSwgNzUsIDc1KTsiPjwvcmVjdD4NCgk8cmVjdCB4PSIxMTEuMzg2IiB5PSIyOTIuNDE5IiBjbGFzcz0ic3QwIiB3aWR0aD0iNTEuMTkiIGhlaWdodD0iNTEuMTkiIHN0eWxlPSJmaWxsOiByZ2IoNzUsIDc1LCA3NSk7Ij48L3JlY3Q+DQoJPHJlY3QgeD0iMzQ5LjQyMyIgeT0iMjEzLjA2NyIgY2xhc3M9InN0MCIgd2lkdGg9IjUxLjE5IiBoZWlnaHQ9IjUxLjE5MSIgc3R5bGU9ImZpbGw6IHJnYig3NSwgNzUsIDc1KTsiPjwvcmVjdD4NCgk8cmVjdCB4PSIyNzAuMDgiIHk9IjIxMy4wNjciIGNsYXNzPSJzdDAiIHdpZHRoPSI1MS4xOTkiIGhlaWdodD0iNTEuMTkxIiBzdHlsZT0iZmlsbDogcmdiKDc1LCA3NSwgNzUpOyI+PC9yZWN0Pg0KCTxyZWN0IHg9IjI3MC4wOCIgeT0iMjkyLjQxOSIgY2xhc3M9InN0MCIgd2lkdGg9IjUxLjE5OSIgaGVpZ2h0PSI1MS4xOSIgc3R5bGU9ImZpbGw6IHJnYig3NSwgNzUsIDc1KTsiPjwvcmVjdD4NCgk8cmVjdCB4PSIzNDkuNDIzIiB5PSIzNzEuNzY5IiBjbGFzcz0ic3QwIiB3aWR0aD0iNTEuMTkiIGhlaWdodD0iNTEuMTkyIiBzdHlsZT0iZmlsbDogcmdiKDc1LCA3NSwgNzUpOyI+PC9yZWN0Pg0KCTxyZWN0IHg9IjM0OS40MjMiIHk9IjI5Mi40MTkiIGNsYXNzPSJzdDAiIHdpZHRoPSI1MS4xOSIgaGVpZ2h0PSI1MS4xOSIgc3R5bGU9ImZpbGw6IHJnYig3NSwgNzUsIDc1KTsiPjwvcmVjdD4NCgk8cmVjdCB4PSIyNzAuMDgiIHk9IjM3MS43NjkiIGNsYXNzPSJzdDAiIHdpZHRoPSI1MS4xOTkiIGhlaWdodD0iNTEuMTkyIiBzdHlsZT0iZmlsbDogcmdiKDc1LCA3NSwgNzUpOyI+PC9yZWN0Pg0KCTxyZWN0IHg9IjE5MC43MjkiIHk9IjIxMy4wNjciIGNsYXNzPSJzdDAiIHdpZHRoPSI1MS4xOTEiIGhlaWdodD0iNTEuMTkxIiBzdHlsZT0iZmlsbDogcmdiKDc1LCA3NSwgNzUpOyI+PC9yZWN0Pg0KCTxyZWN0IHg9IjExMS4zODYiIHk9IjIxMy4wNjciIGNsYXNzPSJzdDAiIHdpZHRoPSI1MS4xOSIgaGVpZ2h0PSI1MS4xOTEiIHN0eWxlPSJmaWxsOiByZ2IoNzUsIDc1LCA3NSk7Ij48L3JlY3Q+DQo8L2c+DQo8L3N2Zz4NCg==);
      background-repeat: no-repeat;
      background-position: left 8px center;
      font-size: 16px;
  }

  .directin-sp-form .directin-sp-form-date-input-group .directin-sp-form-nodate-checkbox{/*人数未定*/
      padding-bottom: 0;
  }

  .new-reserve-s4 .directin-sp-form .directin-sp-form-input label .directin-sp-form-checkbox-label{/*チェックボックス横テキスト*/
      font-size:16px;
  }

  .new-reserve-s4 .directin-sp-form-input-group .directin-sp-form-guest-room-input-group{
    /*width: fit-content;*/
  }
    
  .new-reserve-s4 .directin-sp-form .directin-sp-form-guest-room-input-group .directin-sp-form-guest-room-input input[type="text"]{/*人数客室数input*/
      width: 100%;
      font-size: 16px;
      padding: 8px;
  }

   .new-reserve-s4 .directin-sp-form .directin-sp-form-input label select{/*人数客室数inputの展開メニュー*/
      background: none;
      width: auto;
  }
    
    .new-reserve-s4 .directin-sp-form-submit-button {
        margin: 30px 0!important;
    }    
    
  .new-reserve-s4 .directin-sp-form-submit-button button{/*検索ボタン*/
      background: #003559;
      font-weight: 700;
      font-size: 16px;
      padding: 8px 40px;
  }
}



/* ---------------------------------------------------
	sec02
------------------------------------------------------ */
.sec02 {
  padding: 90px 0 90px;
  background: #F5F5F5;
}
.sec02 .news-list {
  margin-top: -10px;
  font-size: 1.6rem;
  line-height: 1.4;
}
.sec02 .news-list li {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
.sec02 .news-list li a {
  display: flex;
  width: 100%;
  padding: 17px 40px;
  font-size: 1.8rem;
}
.sec02 .news-list li .time {
  display: block;
  text-align: left;
  white-space: nowrap;
}
.sec02 .news-list li .cat {
  padding-right: 1rem;
  white-space: nowrap;
  min-width: 12rem;
}
.sec02 .news-list li .tit {
  flex-grow: 1;
}
.sec02 .sec-btn {
  margin-top: 30px;
  text-align: center;
}
.sec02 .sec-btn .naspa-btn {
  padding: 0;
  font-size: 1.7rem;
  font-weight: 600;
  letter-spacing: 0.05em;
}

@media screen and (max-width:896px), (max-width:896px) and (orientation: landscape) {
  .sec02 {
    padding: 40px 0 50px;
  }
  .sec02 .news-list {
    margin-top: -10px;
    font-size: 1.4rem;
  }
  .sec02 .news-list li a {
    padding: 12px 10px;
    flex-wrap: wrap;
  }
  .sec02 .news-list li .time {
    min-width: 5.5em;
    text-align: left;
  }
  .sec02 .news-list li .tit {
    width: 100%;
    margin-top: 8px;
  }
  .sec02 .sec-btn {
    margin-top: 30px;
  }
}
@media screen and (max-width:896px) and (orientation:landscape){
  .sec02 .container{width:80%;}
}
/* ---------------------------------------------------
	sec03
------------------------------------------------------ */
.sec03 {
  padding: 100px 0;
}
.sec03 .sec-list {
  width: 96%;
  max-width: 1620px;
  margin: 0 auto;
}
.sec03 .sec-list .list-item {
  position: relative;
  width: 397px;
  max-width: 24.51%;
	height: 397px;
}
.sec03 .sec-list .list-item:before, .sec03 .sec-list .list-item:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 10px;
  width: 100%;
  border-top: 1px solid #fff;
  z-index: 1;
}
.sec03 .sec-list .list-item:after {
  top: auto;
  bottom: 10px;
}
.sec03 .sec-list .list-item a {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 397px;
  background: url(../images/top/img-sec03-01.png) no-repeat center;
  background-size: cover;
  color: #fff;
  font-size: 2.8rem;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  line-height: 1.5;
  letter-spacing: .05em;
  text-align: center;
}
.sec03 .sec-list .list-item a:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #003559;
  opacity: .25;
}
.sec03 .sec-list .list-item a h3 {
  position: relative;
  margin: 0;
  padding: 0;
  font-size: 2.8rem;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: .1em;
  z-index: 1;
  color: #FFF;
}
.sec03 .sec-list .list-item a .en {
  display: block;
  font-size: 1.4rem;
  font-weight: 200;
  letter-spacing: .05em;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.sec03 .sec-list .list-item a .en:lang(en) {
  display: none;
}
.sec03 .sec-list .list-item.item02 a {
  background: url(../images/top/img-sec03-02.jpg) no-repeat center;
  background-size: cover;
}
.sec03 .sec-list .list-item.item03 a {
  background: url(../images/top/img-sec03-03.jpg) no-repeat center;
  background-size: cover;
}
.sec03 .sec-list .list-item.item04 {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.sec03 .sec-list .list-item.item04 a:nth-of-type(1) {
  background: url(../images/top/img-sec03-04.jpg) no-repeat center;
  background-size: cover;
}
.sec03 .sec-list .list-item.item04 a:nth-of-type(2) {
  background: url(../images/top/img-sec03-05.jpg) no-repeat center;
  background-size: cover;
}

@media screen and (max-width: 1000px) {
  .sec03 .sec-list .list-item {
    width: 49%;
    max-width: 49%;
    margin-bottom: 2%;
	  height: 160px;
  }
  .sec03 .sec-list .list-item a {
    height: 300px;
  }
}
@media screen and (max-width:896px), (max-width:896px) and (orientation: landscape) {
  .sec03 {
    padding: 50px 0;
  }
  .sec03 .sec-list {
    width: 90%;
  }
  .sec03 .sec-list .list-item:before, .sec03 .sec-list .list-item:after {
    top: 8px;
  }
  .sec03 .sec-list .list-item:after {
    top: auto;
    bottom: 8px;
  }
  .sec03 .sec-list .list-item a {
    height: 160px;
    font-size: 2.2rem;
  }
  .sec03 .sec-list .list-item a h3 {
    font-size: 1.6rem;
    letter-spacing: .05em;
  }
  .sec03 .sec-list .list-item a .en {
    font-size: 1.1rem;
  }
}
/* ---------------------------------------------------
	sec04
------------------------------------------------------ */
.sec04{
  margin-bottom: 100px;
}
.sec04 .sec-col {
  position: relative;
  padding: 90px 0;
  align-items: center;
}
.sec04 .sec-col::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 57.3%;
  height: 100%;
  background: #F5F5F5;
}
.sec04:nth-of-type(odd) .sec-col::before{
  left: auto;
  right: 0;
}
.sec04 .sec-col .col-pic {
  position: relative;
  display: block;
  width: 47.916%;
  min-height: 500px;
  order: 1;
  z-index: 1;
}
.sec04:nth-of-type(odd) .sec-col .col-pic{
  order: 1;
}
.sec04 .sec-col .col-pic img {
  width: 100%;
  height: 100%;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.16);
  font-family: 'object-fit: cover;';
  object-fit: cover;
}
.sec04 .sec-col .col-txt {
  position: relative;
  width: 42.7%;
  padding-left: 18.75%;
  font-size: 2rem;
  z-index: 1;
  max-width: 560px;
  box-sizing: content-box;
}

.sec04:nth-of-type(odd) .sec-col .col-txt {
  order: 2;
}

.sec04:nth-of-type(odd) .sec-col .col-txt {
  padding-right: 18.75%;
  padding-left: 0;
}
.sec04 .sec-col .col-txt .txt-container {
  float: right;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding-right: 0;
}
.sec04 .sec-col .col-txt h2 {
  font-size: 5rem;
  text-align: left;
  letter-spacing: .1em;
  font-weight: 500;
  line-height: 1.4;
}
.sec04 .sec-col .col-txt p {
  max-width: 540px;
  line-height: 2.2;
}
.sec04 .sec-col .col-txt .txt-btn {
  margin-top: 65px;
  display: flex;
  align-items: center;
  width: 100%;
}
.sec04 .sec-col .col-txt .txt-btn a{line-height: 1.4; padding: 14px 15px; display: flex; align-items: center; border: 1px solid #222; font-size: 1.7rem; font-weight: 700;letter-spacing: 0.05em;}
.sec04 .sec-col .col-txt .txt-btn a:first-of-type{margin-right: 10px; }
.sec04 .sec-col .col-txt .txt-btn .naspa-btn img{margin-left: 10px;}

@media screen and (max-width: 1680px) {
  .sec04 .sec-col{padding: 40px 0; align-items: center;}
  .sec04 .sec-col .col-pic{min-height: 0;}
  .sec04 .sec-col .col-txt{padding-left: 8.75%;}
	.sec04:nth-of-type(odd) .sec-col .col-txt {padding-right: 8.75%;}
  .is_tablet .sec04:nth-of-type(odd) .sec-col .col-txt {padding-right: 3.75%;}
  .is_tablet .sec04 .sec-col .col-txt{padding-left: 4.75%;}
}
@media screen and (max-width: 1000px) {
  .sec04 .sec-col {
    padding: 50px 0;
  }
  .sec04 .sec-col .col-txt {
    padding-left: 3%;
    font-size: 1.6rem;
  }
  .sec04 .sec-col .col-txt h2 {
    font-size: 4rem;
  }
}
@media screen and (max-width:896px), (max-width:896px) and (orientation: landscape) {
  .sec04 {
    padding-top: 20px;
	margin-bottom: 10px;
  }
  .sec04 .sec-col {
    padding: 0 0 50px;
  }
  .sec04 .sec-col:before {
    top: 40px;
    width: 100%;
    height: calc(100% - 40px);
  }
  .sec04 .sec-col .col-pic {
    width: 90%;
    min-height: 0;
    margin: 0 auto 20px;
    order: 0;
  }
  .sec04 .sec-col .col-pic img {
    height: auto;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.16);
  }
  .sec04 .sec-col .col-txt {
    width: 90%;
    margin: 0 auto;
    padding-left: 0;
    font-size: 1.4rem;
  }
  .sec04:nth-of-type(odd) .sec-col .col-txt {
    padding-right: 0;
    padding-left: 0;
  }
  .sec04 .sec-col .col-txt .txt-container {
    float: none;
    display: block;
    max-width: 100%;
    height: auto;
    padding-right: 0;
  }
  .sec04 .sec-col .col-txt h2 {
    margin-bottom: 15px;
    font-size: 3.2rem;
  }
  .sec04 .sec-col .col-txt p {
    max-width: 100%;
    line-height: 2.1;
  }
  .sec04 .sec-col .col-txt .txt-btn {
    margin-top: 30px;
    display: block;
  }
  .sec04 .sec-col .col-txt .txt-btn a{
    display: block;
    width: 100%;
    text-align: center;
    font-size: 1.4rem;
  }
  .sec04 .sec-col .col-txt .txt-btn a:first-of-type{margin-right: 0; margin-bottom: 10px; font-size: 1.4rem;}

  .sec04 .sec-col .col-txt .txt-btn br + .naspa-btn {
    margin-top: 15px;
    padding-right: 20px;
  }
}
/* ---------------------------------------------------
	link
------------------------------------------------------ */
.link-sec {
  padding: 0;
	margin-bottom: 120px;
}
.link-sec .link-list {
  width: 96%;
  max-width: 1200px;
  margin: 0 auto;
	align-items: stretch;
}
.link-sec .link-list .list-item {
  width: 33.333%;
  max-width: 393px;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  line-height: 1.4;
	height: 250px;
}
.link-sec .link-list .list-item a {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 120px;
  background-size: cover;
  color: #fff;
  text-align: center;
}
.link-sec .link-list .list-item a:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #003559;
  opacity: .35;
}
.link-sec .link-list .list-item a h3 {
  position: relative;
  margin: 0;
  padding: 0;
  font-size: 2.2rem;
  line-height: 1.4;
  letter-spacing: .1em;
  color: #FFF;
}
.link-sec .link-list .list-item a h3 img{
  display: block;
}
.link-sec .link-list .list-item.item01,.link-sec .link-list .list-item.item02,.link-sec .link-list .list-item.item03, .link-sec .link-list .list-item.item04 {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.link-sec .link-list .list-item.item01 a:nth-of-type(1) {
  background: url(../images/top/link-bg-01.jpg) no-repeat center;
  background-size: cover;
}
.link-sec .link-list .list-item.item01 a:nth-of-type(2) {
  background: url(../images/top/link-bg-02.jpg) no-repeat center;
  background-size: cover;
}
.link-sec .link-list .list-item.item02 a:nth-of-type(1) {
  background: url(../images/top/link-bg-03.jpg) no-repeat center;
  background-size: cover;
}
.link-sec .link-list .list-item.item02 a:nth-of-type(2) {
  background: url(../images/top/link-bg-04.jpg) no-repeat center;
  background-size: cover;
}
.link-sec .link-list .list-item.item03 a:nth-of-type(1) {
  background: url(../images/top/link-bg-05.jpg) no-repeat center;
  background-size: cover;
}
.link-sec .link-list .list-item.item03 a:nth-of-type(2) {
  background: url(../images/top/link-bg-06.jpg) no-repeat center;
  background-size: cover;
}

@media screen and (max-width: 1000px) {
  .link-sec .link-list {
    max-width: 800px;
    margin: 0 auto;
  }
  .link-sec .link-list .list-item {
    width: 49%;
    max-width: 49%;
	  height: auto;
  }
  .link-sec .link-list .list-item a {
    margin-bottom: 4%;
  }
}
@media screen and (max-width:896px), (max-width:896px) and (orientation: landscape) {
  .link-sec {
    padding: 50px 0;
	margin-bottom: 0;
  }
  .link-sec .link-list {
    width: 90%;
    flex-direction: column;
  }
  .link-sec .link-list .list-item{
    display: flex !important;
    justify-content: space-between !important;
    flex-direction: row !important;
    width: 100%;
    max-width: 100%;
  }
  .link-sec .link-list .list-item a {
    width: 49%;
    max-width: 49%;
    height: 60px;
  }
  .link-sec .link-list .list-item a h3 {
    font-size: 1.1rem;
    letter-spacing: .05em;
  }
  .link-sec .link-list .list-item a h3 img{
    width: 100px;
  }
}
/*-------------------------------------------*/
/*
/*　　tablet
/*
/*-------------------------------------------*/
body.is_tablet #mainvisual .main-slide {
  height: 50vw;
  min-height: 360px;
}
body.is_tablet #mainvisual .main-slide .slide {
  height: 50vw;
  min-height: 360px;
}

/*-------------------------------------------*/
/*
/*　　print
/*
/*-------------------------------------------*/


  /* 汎用見出し */
h2 {
  margin: 0 0 40px;
  font-size: 4rem;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ朝", serif;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: .05em;
  text-align: center;
}
h2 small{display: block; line-height: 1.4; font-size: 1.6rem; margin-top: 1rem;}
h2 small:lang(en) {display: none;}
h4 {
  font-weight: bold;
}

h5 {
  font-weight: bold;
}

h6 {
  font-weight: bold;
}

@media screen and (max-width:896px),(max-width:896px) and (orientation:landscape){
  h2{font-size: 3.2rem;}
  h2 small{font-size: 1.4rem;}
}


/*-------------------------------------------*/
/*
/*　　スキーガーデン延期（221219）
/*
/*-------------------------------------------*/
.pmodal {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	background: rgba(0,0,0,50%);
	overflow: auto;
	opacity: 0;
	visibility: hidden;
	transition: .3s;
	box-sizing: border-box;
	z-index: 100001;
}
.pmodal.active {
	opacity: 1;
	visibility: visible;
}
.pmodal .pmodal-body {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	max-width: 640px;
	width: 90%;
	margin-top: 30px;
}
.pmodal .pmodal-close {
	position: absolute;
	display: flex;
    align-items: center;
    justify-content: center;
	top: 5px;
	right: 5px;
	width: 40px;
	height: 40px;
	font-size: 40px;
	color: #222;
	cursor: pointer;
}
.pmodal .pmodal-contents {
	background: #fff;
	text-align: left;
	padding: 30px;
}
.pmodal .pmodal-contents .pmodal-tit {
	font-size: 18px;
	font-weight: bold;
	text-align: center;
  padding-bottom: 10px;
}
.pmodal .pmodal-contents .pmodal-txt {
	font-size: 1.6rem;
	padding-bottom: 20px;
}
.pmodal .pmodal-contents .pmodal-txt span {
	display: inline-block;
	width: 100%;
	box-sizing: border-box;
	text-align: right;
}
.pmodal .pmodal-contents .pmodal-btn {
	text-align: center;
}
.pmodal .pmodal-contents .pmodal-btn a {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 10px;
	border: 1px solid #222;
	margin: auto;
	max-width: 240px;
	text-decoration: none;
	font-weight: bold;
}
.pmodal .pmodal-contents .pmodal-btn a:hover {
	background: #222;
	color: #fff;
	border: 1px solid #222;
}

/*230314追記News*/

@media screen and (max-width:896px), (max-width:896px) and (orientation: landscape) {
	.sec02 .container ul li a {
		font-size: 1.4rem;
	}
}