@charset "utf-8";

/* rental-contents
--------------------------------------- */
.rental-contents{
  width: 100%;
  padding:3% 0 0;
  position: relative;
  overflow: hidden;
}

#rental ul {
  width:100%;
  margin:2% 0;
}


#rental li {
  display: inline-block;
  vertical-align: top;
  box-sizing: border-box;
  padding:2%;
}

@media screen and (max-width: 568px) {
#rental li {
  padding:3%;
}
}

#rental .rnt50 {
  width:50%;
}

@media screen and (max-width: 820px) {
#rental .rnt50 {
  width:100%;
  display: block;
  padding:2% 4%;
}
}

#rental .rnt30 {
  width:33.3333%;
}

@media screen and (max-width: 820px) {
#rental .rnt30 {
  width:50%;
}
}

@media screen and (max-width: 568px) {
#rental .rnt30 {
  width:100%;
  display: block;
  padding:2% 4%;
}
}

.rent-ph {
  width:100%;
  position: relative;
  margin-bottom: 15px;
}

.rent-ph a:hover{
  opacity: 0.8;
}

.rent-ph img{
  width:100%;
  height:auto;
}

.yrent{
  width:auto;
  height:auto;
  position: absolute;
  top:-4%;
  left:-4%;
  padding:8px 20px 10px;
  color:#FFF;
  background:#8d8648;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:400;
  transform: rotate(-10deg);
  -moz-transform: rotate(-10deg);
  -webkit-transform: rotate(-10deg);
  -webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;
  font-size:1em;
}

@media screen and (max-width: 820px) {
.yrent{
  top:-3.5%;
  left:-2%;
  font-size:0.9em;
}
}

@media screen and (max-width: 568px) {
.yrent{
  top:-5%;
  padding:5px 15px 7px;
  font-size:0.85em;
}
}

.y2rent{
  width:auto;
  height:auto;
  position: absolute;
  top: 0;
  left:0;
  padding:2px 7px 3px;
  color:#FFF;
  background:##53658d;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:400;
  font-size:0.95em;
}

@media screen and (max-width: 820px) {
.y2rent{
  font-size:0.95em;
}
}

@media screen and (max-width: 568px) {
.y2rent{
  font-size:0.9em;
}
}

.mrent{
  width:auto;
  height:auto;
  position: absolute;
  top: 0;
  left:0;
  padding:2px 7px 3px;
  color:#FFF;
  background-color: #53658d;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:400;
  font-size:0.95em;
}

@media screen and (max-width: 820px) {
.mrent{
  font-size:0.9em;
}
}

@media screen and (max-width: 568px) {
.mrent{
  font-size:0.85em;
}
}

#rental h2{
  font-weight:500;
  font-family: 'Noto Sans JP', sans-serif;
  padding:0 1%;
  font-size:1.25em;
  text-align:center;
  color:#53658d;
}

@media screen and (max-width: 568px) {
#rental h2{
  font-size:1.1em;
}
}

#rental h3{
  font-weight:500;
  font-family: 'Noto Sans JP', sans-serif;
  padding:0 1%;
  font-size:1.25em;
  text-align:center;
  color:#53658d;
}

@media screen and (max-width: 568px) {
#rental h3{
  font-size:1.1em;
}
}

#rental h3 a {
  text-decoration: none;
  color:#53658d;
}

#rental h3 a:hover {
  color:#53658d;
  text-decoration: none;
}

.rnt-tx{
  font-weight:400;
  font-family: 'Noto Sans JP', sans-serif;
  padding:10px 5px;
  font-size:15px;
}

@media only screen and  (max-width: 568px) {
.rnt-tx{
  font-size:14px;
  padding:5px;
}
}

.rap_bt{
  color:#FFF;
  font-size:12px;
  text-align: center;
  margin:5px 0;
}

@media screen and (max-width: 820px) {
.rap_bt{
  margin:5px 0 20px;
}
}

.rap_bt a{text-decoration:none;color:#333;display:inline-block;padding:6px 14px 5px;background-color:#fff;border:1px solid #ccc;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px;}
.rap_bt a:hover{text-decoration:none;background-color:#52658F;color:#FFF;border:1px solid #52658F;}

/* act-page ?A?N?e?B?r?e?B???
================================================== */
#act-page {
  width:100%;
  margin:0 auto;
  padding:1% 2% 8%;
  box-sizing: border-box;
}

@media only screen and  (max-width: 810px) {
#act-page {
  padding:5% 2%;
}
}

@media only screen and  (max-width: 568px) {
#act-page {
  padding:5% 0;
}
}

.tokuten-plan{
  text-align: center;
}

.tokuten-plan p{
  font-size: 1.1em;
  background:#174291;
  color:#FFF;
  padding:10px 30px 12px;
  display:inline-block;
  font-family: 'Noto Serif JP', serif;
  font-weight:400;
  margin-bottom:25px;
  position: relative;
}

@media only screen and  (max-width: 568px) {
.tokuten-plan p{
  font-size: 1em;
  margin-top:10px;
  margin-bottom:15px;
}
}

.tokuten-plan p::after {
 position: absolute;
 top: 100%;
 left: 50%;
 margin-left: -5px;
 content: ' ';
 border: 10px solid transparent;
 border-top-color: #174291;
}

#act-page h2{
  font-family: 'Noto Serif JP', serif;
  font-weight:400;
  font-size:2em;
  margin-bottom:1%;
  color:#000;
  line-height:1.5;
  text-align: center;
}

@media screen and (max-width: 568px) {
#act-page h2{
  font-size:1.4em;
}
}

#act-page .act_txt{
  padding:2% 10px;
  text-align: center;
  line-height: 1.8;
  font-family: 'Noto Serif JP', serif;
  font-weight:400;
  font-size:1.1em;
  margin-bottom:2%;
}

@media screen and (max-width: 568px) {
#act-page .act_txt{
  padding:2% 5% 4%;
  text-align: left;
  font-size:0.95em;
}
}

.tour_photo{
  width:50%;
  height:auto;
  display:inline-block;
  vertical-align: middle;
}

@media only screen and  (max-width: 1280px) {
.tour_photo {
  width:47%;
}
}

@media only screen and  (max-width: 810px) {
.tour_photo {
  width:98%;
  margin:1%;
  display:block;
}
}

@media only screen and  (max-width: 568px) {
.tour_photo {
  width:100%;
  margin:1% 0;
}
}

.tour_info{
  width:45%;
  margin-left:4%;
  display:inline-block;
  vertical-align: middle;
}

@media only screen and  (max-width: 810px) {
.tour_info{
  width:100%;
  margin:5% 0 0!important;
  display:block;
  box-sizing: border-box;
  padding: 0 3%;
}
}

@media only screen and  (max-width: 568px) {
.tour_info{
  padding: 0 5%;
}
}

.tour_info li {
  padding:0;
  margin-bottom:5%;
  font-weight:400;
  font-family: 'Noto Sans JP', sans-serif;
}

@media only screen and  (max-width: 810px) {
.tour_info li {
  padding:0;
  margin:10px 0 ; 
}
}

.tour_info .skl {
  width:100%;
  margin:0 0 5px;
}

.tour_info .skl .poi{
  display:inline-block;
  padding:2px 5px 3px;
  color:#FFF;
  font-size:13px;
  font-family: 'Roboto', sans-serif;
  font-weight:400;
  line-height:1.2;
  margin-right:10px;
  margin-top:5px;
  text-transform: uppercase;
  background-color:#52658F;
  vertical-align: middle;
  float:left;
}

.tour_info .skl p{
  vertical-align: middle;
  isplay:inline-block;
  color:#174291;
  font-size:1.15em;
  font-weight:500;
}

.poi_tx{
  line-height:1.8;
  font-family: 'Noto Serif JP', serif;
  font-weight:400;
}

@media only screen and  (max-width: 568px) {
.tour_info .skl .poi{
  margin-top:5px;
  font-size:12px;
  padding:3px 5px 2px;
}
 
.tour_info .skl p{
  font-size:1.05em;
}
 
.poi_tx{
  font-size:0.95em!important;
  line-height:1.6;
}
}

.tmbox {width:100%;border:1px solid #52658F;margin-top:20px;background-color:#FFF;padding-bottom:1%;}

.ttl_time {
  width:100%;
  box-sizing: border-box;
  padding:5px 15px 7px;
  line-height:1.2;
  color:#FFF;
  font-size:0.9em;
  font-weight:400;
  font-family: 'Noto Sans JP', sans-serif;
  background-color:#52658F;
}

.time01 {
  padding:1% 2%;
  margin:0;
  color:#333A56;
  font-weight:400;
  font-family: 'Noto Sans JP', sans-serif;
  font-size:1em;
}

.time01 span{
  color:#174291;
  font-weight:500;
}

@media only screen and  (max-width: 568px) {
.time01 {
  font-size:0.95em;
}
}

.actbk_bt{
  font-size:0.8em;
  margin-top:5%;
  line-height:1;
  text-align: center;
}

.actbk_bt a{border:1px solid #ccc;display:inline-block;color:#5E5E5E;text-decoration:none;background-color:#FFF;padding:15px 15px 12px;-webkit-border-radius:20px;-moz-border-radius:20px;border-radius:20px;}
.actbk_bt a:hover{color:#FFF;text-decoration:none;background-color:#5E5E5E;}

.shop-info{
  width:50%;
  height:auto;
  display:inline-block;
  vertical-align: top;
}

@media only screen and  (max-width: 1280px) {
.shop-info {
  width:47%;
}
}

@media only screen and  (max-width: 810px) {
.shop-info {
  width:98%;
  margin:1%;
  display:block;
}
}

@media only screen and  (max-width: 568px) {
.shop-info {
  width:100%;
  margin:1% 0;
  box-sizing: border-box;
  padding:0 4%;
}
}

.shp-ttl{
  display:block;
  padding:0 15px 7px;
  font-size:1.25em;
  font-family: 'Noto Serif JP', serif;
  font-weight:400;
  color:#174291;
  border-bottom:3px solid #52658F;
  margin-bottom:20px;
}

.shop-info table{
  width : 100%;
  border : 1px solid #ccc;
  background : #FFF;
  font-size:0.9em;
  border-collapse: collapse;
  border-spacing: 0;
  margin:0 auto;
  box-sizing: border-box;
}

.shop-info caption{
  margin : 0 0 0;
  padding : 7px 0 ;
  background : #655B2A;
  color:#FFF;
  width : 100%;
  font-size:1.2em;
  box-sizing: border-box;
  font-weight:500;
  font-family: 'Noto Sans JP', sans-serif;
}

.shop-info th{
  border-bottom : 1px dotted #ccc;
  line-height:1.4;
  padding : 10px 5px 8px 5px;
  background	: #EDEAD9;
  color:#655B2A;
  width:25%;
  font-weight:bold;
  text-align: center;
  font-size:14px;
  vertical-align: middle;
}

@media only screen and  (max-width: 568px) {
.shop-info th{
  font-size:12px;
  padding : 8px 3px 5px;
}
}

.shop-info td{
  border-bottom	: 1px dotted #ccc;
  line-height:1.6;
  padding : 10px 10px 8px 10px ;
  font-weight:300;
  font-family: 'Noto Sans JP', sans-serif;
  letter-spacing : 0.03em;
  color:#464644;
}

@media only screen and  (max-width: 568px) {
.shop-info td{
  padding : 8px 8px 5px;
}
}

.shop-info td strong{
  color:#174291;
  font-size:1.25em;
  font-weight:500;
}


@media only screen and  (max-width: 568px) {
.shop-info td strong{
  font-size:1.1em;
}
}
.shop-info td .shnm{
  padding:5px 0 2px;
}

.shop-info td .shmp{
  padding:0 0 7px;
}

.shop-info td .sher{
  padding:2px 0 0;
  color:#B91018;
}

.shop-info td a {
  text-decoration: none;
  color:#174291;
  font-family: 'Roboto', sans-serif;
  font-weight:400;
  font-size:1.1em;
}

.shop-info td a:hover {
  color:#174291;
  text-decoration: none;
}

.shop-map{
  width:45%;
  margin-left:4%;
  display:inline-block;
  vertical-align: top;
}

@media only screen and  (max-width: 810px) {
.shop-map{
  width:98%;
  margin:5% 1% 0;
  display:block;
}
}

@media only screen and  (max-width: 568px) {
.shop-map{
  width:100%;
  margin:5% 0 0;
  box-sizing: border-box;
  padding:0 4%;
}
}

.tour_tokuten{
  width:100%;
  max-width:500px;
  margin:5% auto;
  text-align: center;
  position: relative;
  box-sizing: border-box;
  padding:5px;
}


@media only screen and  (max-width: 568px) {
.tour_tokuten{
  width:90%;
  margin:5% auto;
  display:block;
}
}

.rde {
  animation: rdeAnime 1.2s infinite alternate;
}

@keyframes rdeAnime{
   0% { background-color:#174291; }
 100% { background-color:#FF0060; }
}

.tour_tokuten dl {
  display:table;
  width:100%;
}

.tour_tokuten dt {
  width:25%;
  display:table-cell;
  vertical-align: middle;
  color:#FFF;
  font-weight:600;
  font-family: 'Noto Serif JP', serif;
  letter-spacing : 0.03em;
  font-size:1.6em;
  line-height:1.4;
}

@media only screen and  (max-width: 568px) {
.tour_tokuten dt {
  font-size:1.2em;
}
}

.tour_tokuten dd {
  width:75%;
  display:table-cell;
  background:#FFF;
  padding:10px 0 15px;
  -webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;
}

.tkt-tx1{
  color:#000;
  margin-bottom:5px;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight:400;
}

.tkt-tx2{
  font-family: 'Noto Serif JP', serif;
  font-weight:400;
  font-size:1.1em;
  color:#FF0060;
  line-height:1;
}

.tkt-tx2 span{
  font-family: 'Roboto', sans-serif;
  font-weight:500;
  font-size:1.4em;
}

.tkt-tx2 strong{
  font-size:2em;
  font-weight:600;
}

@media only screen and  (max-width: 568px) {
.tkt-tx1{
  font-size:0.9em;
}

.tkt-tx2 span{
  font-size:1.2em;
}

.tkt-tx2 strong{
  font-size:1.5em;
}
}

.booking-info{
  width:100%;
  max-width:850px;
  margin:3% auto 3%;
  text-align: center;
}

.booking-info li{
  padding:10px 0;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight:400;
}

.booking-info li strong{
  color:#B91018;
  font-size:1.1em;
  font-weight:500;
  background: linear-gradient(transparent 60%, #FFFB81 60%);
  padding-right:5px;
  padding-left:5px;
}

@media only screen and  (max-width: 568px) {
.booking-info li{
  font-size:0.95em;
  padding:10px 5%;
}
}

.ntres {
  width:45%;
  margin:4% 4% 0 0;
  display:inline-block;
  vertical-align: top;
}

@media only screen and  (max-width: 810px) {
.ntres {
  width:47%;
  margin:4% 2% 0 0;
}
}

@media only screen and  (max-width: 568px) {
.ntres {
  width:98%;
  margin:5% 1% 0;
  display:block;
}
}

.tlres{
  width:45%;
  margin:4% 0 0 4%;
  display:inline-block;
  vertical-align: top;
}

@media only screen and  (max-width: 810px) {
.tlres{
  width:47%;
  margin:4% 0 0 2%;
}
}

@media only screen and  (max-width: 568px) {
.tlres{
  width:98%;
  margin:5% 1% 0;
  display:block;
}
}


.resvttl{
  background:#52658F;
  color:#FFF;
  padding:10px 0 12px;
  display:block;
  margin-bottom:20px;
  position: relative;
}

.resvttl::after {
 position: absolute;
 top: 100%;
 left: 50%;
 margin-left: -5px;
 content: ' ';
 border: 10px solid transparent;
 border-top-color: #52658F;
}

.resvtext{
  display:block;
  background:#FFF;
  padding:15px 20px;
  -webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;
  text-align: left;
}

.resvtext span{
  color:#B91018;
}

.shop-buttons{
  text-align: center;
  font-weight:400;
  font-family: 'Noto Sans JP', sans-serif;
}

@media screen and (max-width: 810px) {
.shop-buttons{
  text-align:center;
  margin-left:auto;
}
}

@media screen and (max-width: 568px) {
.shop-buttons{
  margin-top:10px;
  margin-bottom:15px;
  font-size:0.95em;
}
}

.shop-button{border:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}
.shop-button.c-button--ghost{display:inline-table;padding:15px 20px;border:2px solid #333A56;color:#333A56;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-transition-duration:0.2s;-o-transition-duration:0.2s;-webkit-transition-duration:0.2s;transition-duration:0.2s}
.shop-button.c-button--ghost:hover{border:2px solid #333A56;}
.shop-buttons a{text-decoration:none;background-color:#FFF;}
.shop-buttons a:hover{text-decoration:none;display:inline-table;background-color:#333A56;color:#FFF;text-shadow:none;}