.maincont {
  padding: 0 0;
  font-size: 14px;
  counter-reset: number 0;
  font-family: 游ゴシック体, "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, メイリオ, "MS PGothic", "ＭＳ Ｐゴシック", sans-serif;
}

#content .content-1-column {
  width: 100%;
  max-width: 980px;
}

/*#website-header .website-header-inner {
  width: 100%;
  max-width: 980px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}*/

.mod-main img {
  width: 100%;
}

.maincont .chaption {
  display: block;
  text-align: right;
}

/*===navi==========*/

/*#global > ul {
  width: 100%;
  max-width: 980px;
  display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-pack: distribute;
justify-content: space-around;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}*/

/*#global > ul > li {
  text-align: center;
}*/

/*#global > ul > li span {
    padding: 14px 0 14px 5px;
}*/

/*===/navi==========*/

.mod-main .mainImg {
  width: 100%;
  height: auto;
  margin: 0 0 30px;
  position: relative;
}

.meetingIcon {
  width: 62.5%;
  position: absolute;
  margin: 0 auto;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  left: 0;
  right: 0;
  bottom: -20%;
}

.meetingIcon li {
  width: 30%;
  max-width: 170px;
}

/*.meetingIcon li:not(:last-child){
margin-right: 45px;
}*/

.mod-main .lead {
  margin: 0 50px 25px;
  font-size: 16px;
  line-height: 1.6;
}

.maincont .campaignDetails {
  margin: 0 50px 40px;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: flex-start;
  -ms-flex-align: flex-start;
  align-items: flex-start;
}

.maincont .campaignDetails dt {
  width: 110px;
  padding: 1px 0 0;
  margin-bottom: 20px;
  background: #a57943;
  text-align: center;
  color: #fff;
  font-size: 1.63vw;
  /*font-weight: bold;*/
}

@media screen and (-ms-high-contrast: active),
(-ms-high-contrast: none) {
  .maincont .campaignDetails dt {
    padding: 3px 0 0;
  }
}

.maincont .campaignDetails dd {
  width: calc(100% - 110px);
  padding-left: 20px;
  margin-bottom: 20px;
  /*font-size: 21px;*/
  font-size: 2.24vw;
  font-weight: bold;
  line-height: 1.3;
}
.maincont .campaignDetails dd:last-child{
margin-bottom: 0;
}

.maincont .praiceDtls {
  width: 100%;
  font-size: 1.63vw;
}
.maincont .praiceDtls tr{
height: 35px;
vertical-align: middle;
}

.maincont .praiceDtls th {
  width: 10em;
  padding: 0 0 0 0;
  font-size: 2.1vw;
  text-align: left;
  word-wrap: normal;
  word-break: keep-all;
}

.maincont .praiceDtls td {
  padding: 0 5px 0 0;
  text-align: center;
}
.maincont .praiceDtls tr:nth-of-type(2) td{
width: 36%;
}
.maincont .praiceDtls tr:last-child td{
margin-bottom: 0;
}

.maincont .period {
  width: 99%;
  display: block;
  padding: 3px 0;
  background: #e5e5e5;
  text-align: center;
}

.maincont .viatical{
position: relative;
top: -1px;
}


.maincont .priceEmp {
  font-size: 2.24vw;
  color: #b70031;
}

.maincont .priceEmp:before {
  content: " ";
  display: inline-block;
  width: 17px;
  height: 15px;
  padding: 0 10px 0 5px;
  background: url(../img/win_special/arrow.png) center top no-repeat;
}

.maincont .campaignDetails .note {
  display: block;
  font-size: 14px;
  padding-top: 5px;
}

.maincont .banner{
/*width: 100%;*/
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
-o-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
padding: 5px 10px;
margin: 0 50px 30px;
background: #b70031;
font-size: 1.63vw;
color: #fff;
font-weight: bold;
}

.maincont .banner .box01{
width:70px;
height: auto;
}
.maincont .banner .box02{
width: 65%;
padding-left: 2.5%;
}

.maincont .bnrEmp{
font-size: 1.84vw;
color: #fff;
}
.maincont .bnrEmp:before{
  content: " ";
  display: inline-block;
  width: 17px;
  height: 15px;
  padding: 0 10px 0 5px;
  background: url(../img/win_special/arrow_w.png) center top no-repeat;
}

.maincont .banner .box03{
width: 25%;
font-size: 1.84vw;
}
.maincont .banner .box03 span{
display: inline-block;
padding: 10px 10px;
background: #fff;
color: #b70031;
text-align: center;
border-radius: 3px;
position: relative;
}
.maincont .banner .box03 span:before{
    content:" ";
    display: inline-block;
    border: 7px solid transparent;
    border-right: 20px solid #fff;
    position: absolute;
    top: 30%;
    left: -24px;
}

.maincont .line{
  font-size: 2.45vw;
  font-weight: bold;
  text-align: center;
  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;
  margin: 0 0 20px;
}
.maincont .line:before{
content: " ";
width: 27%;
padding-top: 6.7%;
margin-right: 20px;
display: inline-block;
background: url(../img/win_special/snowLine.png) right center no-repeat;
background-size: contain;
}
.maincont .line:after{
content: " ";
width: 27%;
padding-top: 6.7%;
margin-left: 20px;
display: inline-block;
background: url(../img/win_special/snowLine.png) left center no-repeat;
background-size: contain;
}

@-moz-document url-prefix() {
  .maincont .line:before,
  .maincont .line:after{
    padding-top: 1.5em;
  }
}


.maincont .hotelArea {
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 0 40px;
}

.maincont .hotelArea > li {
  width: 28.9%;
  margin-bottom: 40px;
}

.maincont .imgBox {
  margin: 0 0 10px;
}

.maincont .hotelName {
  margin: 0 0 10px;
  font-weight: bold;
  font-size: 1.63vw;
}

.maincont .hotelDetails {
  margin: 0 0 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.maincont .hotelDetails dt {
  width: 4em;
  margin: 0 0 5px 0;
}

.maincont .hotelDetails dd {
  width: calc(100% - 4.5em);
  margin: 0 0 5px 0;
}

.maincont .hotelDetails a {
  border-bottom: 1px dotted;
  -webkit-transition: all .2s;
  transition: all .2s;
}

.maincont .hotelDetails a:hover {
  text-decoration: none;
  border-bottom: 1px dotted #fff;
  opacity: .8;
  -webkit-transition: all .2s;
  transition: all .2s;
}

.maincont .price {
  font-size: 1.63vw;
  color: #c00;
}


.maincont .reserveBtn{
width: 100%;
}
.maincont .reserveBtn li:not(:last-child){
margin-bottom: 10px;
}

.maincont .reserveBtn a{
  width: 98%;
  display: block;
  margin: 0 auto;
  padding: 8px 10px;
  border: 1px solid #666;
  border-radius: 5px;
  text-align: center;
  font-size: 12px;
  font-weight: bold;
  -webkit-transition: all .2s;
  transition: all .2s;
}
.maincont .reserveBtn a:hover{
text-decoration: none;
opacity: .7;
-webkit-transition: all .2s;
transition: all .2s;
}

.maincont .notesList {
  font-size: 12px;
}

.spDisplay {
  display: none !important;
}

.pcDisplay {
  display: block !important;
}
.pcDisplay02 {
  display: inline !important;
}

@media screen and (min-width:980px) {
  .maincont .campaignDetails dt,
  .maincont .hotelName,
  .maincont .price,
  .maincont .praiceDtls,
  .maincont .banner
  {
    font-size: 16px;
  }
  
  .maincont .bnrEmp,.maincont .banner .box03{
  font-size: 18px;
  }
  
  .maincont .campaignDetails dd,
  .maincont .praiceDtls th,
  .maincont .priceEmp{
  font-size: 21px;
  }

  .maincont .line{
  font-size: 24px;
  }


}

/* /@media screen and(min-width:980px)*/

@media screen and (max-width:980px) {
  /*===footer=====*/
  #website-footer .website-footer-inner {
    width: 100%;
    max-width: 980px;
  }

 /* .mod-banners {
    width: 100%;
    max-width: 980px;
  }*/

  .mod-banners ul {
    width: 100%;
    max-width: 980px;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  /*.mod-banners ul li {
    float: none;
    width: 23%;
    max-width: 220px;
    margin: 0 0 0 0;
  }*/
  .mod-banners ul li img {
    width: 100%;
    height: auto;
  }

  #website-footer .footer-sitemap .link-group.link-group-membership {
    clear: both;
    margin-top: 20px;
  }

  #website-footer .footer-hotelsAndResorts-link {
    /*width: 100%;*/
    max-width: 980px;
  }


  /*===/footer=====*/
}

/*(max-width:980px)*/
@media screen and (max-width:840px) {
.maincont .banner{
padding: 5px 10px 10px;
margin: 0 0 30px;
}
.maincont .banner .box01{
    width: 20%;
    max-width: 70px;
    height: auto;
    -ms-align-self: flex-start;
    -ms-flex-item-align:start;
    align-self:flex-start ;
}
.maincont .banner .box01 img{
width: 100%;
}
.maincont .banner .box02{
width: calc( 100% - 70px);
font-size: 14px;
}
.maincont .banner .box02 .bnrEmp{
font-size: 16px;
}
.maincont .banner .box03{
width: 100%;
/*text-align: right;*/
font-size: 14px;
padding: 0 0 0 70px;
}

.maincont .banner .box03 span{
width: 75%;
}

.maincont .banner .box03 span:before{
content:none;
}
  

}

/*@media screen and (max-width:819px) {

  #global > ul > li span {
    padding: 14px 25px 14px 25px;
  }

}

@media screen and (max-width:770px) {

  #global > ul > li span {
    padding: 14px 20px 14px 20px;
  }

}*/

@media screen and (max-width:770px) {

/*  #global > ul > li span {
    padding: 14px 20px 14px 20px;
  }*/

  .maincont .priceEmp:before,
  .maincont .bnrEmp:before{
    content: " ";
    width: 12px;
    height: 10px;
    background-size:12px 10px ;
  }

}

/*@media screen and (max-width:730px) {

  #global > ul > li span {
    padding: 14px 10px 14px 15px;
  }

}

@media screen and (max-width:690px) {

  #global > ul > li span {
    padding: 14px 5px 14px 10px;
  }

}*/


@media screen and (max-width:640px) {
  .maincont {
    padding: 0 0;
    font-size: 14px;
  }

  .maincont img {
    width: 100%;
  }

  .tie-up .btn_area {
    margin: 20px 0;
    clear: both;
    height: auto;
  }
  .tie-up .btn_area li {
    margin: 15px 0;
    float: none;
  }
  .tie-up .btn_area li a {
    width: 98%;
  }

  /*add_201710*/
  .link-list .sp_prize {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .link-list .sp_prize > li {
    width: 49%;
    margin: 0 0 10px 0 !important;
  }

  .entrybtn {
    width: 80%;
  }
  .entrybtn a {
    font-size: 3.75vw;
  }

  .mod-main .mainImg {
    margin: 0 0 15px;
  }
  .meetingIcon {
    width: 88%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }

  .meetingIcon li {
    width: 30%;
    height: auto;
    max-width: 170px;
  }

  .mod-main .lead {
    margin: 0 0 20px;
    font-size: 14px;
  }
  .maincont .campaignDetails {
    margin: 0 0 15px;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
  }
  .maincont .campaignDetails dt {
    width: 100%;
    padding: 3px 0;
    margin-bottom: 15px;
    font-size: 14px;
    font-weight: bold;
  }
  .maincont .campaignDetails dd {
    width: 100%;
    padding-left: 10px;
    margin-bottom: 15px;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.3;
  }

  .maincont .campaignDetails .note {
    display: block;
    font-size: 12px;
  }


.maincont .praiceDtls{
font-size: 12px;
}
.maincont .praiceDtls tr:nth-of-type(2) td {
    width: 35%;
}

.maincont .praiceDtls th{
width:20%;
word-wrap: break-word;
word-break: normal;
}
  
  .maincont .priceEmp{
  font-size: 14px;
  }
  .maincont .praiceDtls th,
  .maincont .period{
  font-size: 12px;
  }
  
  .maincont .banner{
  margin: 0 0 30px;
  }
  
  .maincont .line {
    font-size: 4vw;
}
.maincont .line:before {
    content: " ";
    width: 20%;
    padding-top: 6.7%;
    margin-right: 5px;
    display: inline-block;
    background: url(../img/win_special/snowLine.png) right center no-repeat;
    background-size: contain;
}
.maincont .line:after {
    content: " ";
    width: 20%;
    padding-top: 6.7%;
    margin-left: 5px;
    display: inline-block;
    background: url(../img/win_special/snowLine.png) left center no-repeat;
    background-size: contain;
}
@-moz-document url-prefix() {
  .maincont .line:before,
  .maincont .line:after{
    padding-top: 1.5em;
  }
}





  .maincont .hotelArea {
    display: block;
    margin: 0 0;
  }
  .maincont .hotelArea > li {
    width: 100%;
    margin-bottom: 30px;
  }

  .maincont .imgBox {
    margin: 0 0 10px;
  }
  .maincont .hotelName {
    margin: 0 0 10px;
    font-weight: bold;
    font-size: 5vw;
  }
  /*.maincont .hotelDetails{
margin: 0 0 10px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
-o-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}*/
  .maincont .hotelDetails dt {
    width: 4em;
    margin: 0 0 5px 0;
  }
  .maincont .hotelDetails dd {
    width: calc(100% - 4.5em);
    margin: 0 0 5px 0;
  }
  .maincont .price {
    font-size: 16px;
  }

  .maincont .inquiries {
    width: 90%;
  }

  .maincont .notesList {
    font-size: 11px;
  }


  .spDisplay {
    display: block !important;
  }

  .pcDisplay,.pcDisplay02 {
    display: none !important;
  }
  
  



}

.maincont * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
