body{font-family:sans-serif;}
.wrapper{margin:auto; text-align: center;}
.main{width:100%;}
img{width:100%; margin:1% auto;}
.svg{width:80%; margin: 4% 0;}
.png{width:88%;}
.png2{width:30%;}
.lead{width:70%;display: inline-block;}
.lead-text{font-size: 120%; margin-top:3%; margin-bottom:1.5%; line-height:1.7em;}
a img:hover{opacity:0.8;}
.event{width:80%; margin:0 auto 2% auto;}
.event-bn{width:40%; margin:2% 0 1% 0;display:inline-block;}
.event-img{display:inline-block;}
.event-btn{display:inline-block;}
.event-btn img{width:45%;}
.none1{visibility:hidden;}
#none2{visibility:hidden;}
.left{text-align:left;}
.leftmar{margin-left:4%;}
.abouttxt-u{text-align:left; width:85%; margin:1% auto; font-size:12px; line-height:1.6em;}
.que{font-size:13px;}

footer{background:#f7f7f7; text-align:center;}

/*ここから特急券のご予約アコーディオン*/
.acd-check{
  display: none;
}
.acd-label{
  display:inline-block;
  border:1px solid;
  text-align:center;
  margin:auto;padding: 1.2% ; 
  font-size: 125%;
  font-weight:bold;
  width:70%;
  position: relative;
}


.acd-content{
  /*border: 1px solid #333;*/
  height: 0;
  opacity: 0;
  padding: 0 10px;
  transition: .5s;
  visibility: hidden;
}
.acd-check:checked + .acd-label + .acd-content{
  height: auto;
  opacity: 1;
  padding: 10px;
  visibility: visible;
}


.acd-label::after{
    content: '';
    display:inline-block;
    position: absolute;
    width: 15px;
    height: 15px;
    border-top: solid 1px #320000;
    border-right: solid 1px #320000;
    transform: rotate(45deg);
    top: 0;
    bottom: 0;
    right: 2%;
    margin: auto;
    transition: .3s ease;
}



.acd-check:checked + .acd-label::after{
    transform: rotate(135deg);
}


.acd-label2{
  display:inline-block;
  border:1px solid;
  text-align:center;
  margin:auto;padding: 1.2% ; 
  font-size: 125%;
  font-weight:bold;
  width:70%;
  position: relative;
}


.acd-content{
  /*border: 1px solid #333;*/
  height: 0;
  opacity: 0;
  padding: 0 10px;
  transition: .5s;
  visibility: hidden;
}
.acd-check:checked + .acd-label2 + .acd-content{
  height: auto;
  opacity: 1;
  padding: 10px;
  visibility: visible;
}


.acd-label2::after{
    content: '';
    display:inline-block;
    position: absolute;
    width: 15px;
    height: 15px;
    border-top: solid 1px #320000;
    border-right: solid 1px #320000;
    transform: rotate(45deg);
    top: 0;
    bottom: 0;
    right: 2%;
    margin: auto;
    transition: .3s ease;
}



.acd-check:checked + .acd-label2::after{
    transform: rotate(135deg);
}




/*ここまで特急券のご予約アコーディオン*/

@media only screen and (min-width:768px) {
.pc{width:80%; margin:auto;}
.mb {display: none;}
#service1 {width:35%; display:inline-block;margin: 0% 1% 0% 1%;}
#service {width:35%; display:inline-block;margin: 3% 1% 3% 1%;}
#service img{width:100%;}

#service2 {width:100%; display:inline-block;margin-bottom:2%;}
#service2 img{width:100%;}


#service3 {width:100%; display:inline-block; margin-bottom:3%;}
#service3 img{width:100%;}
.about{background:#f7f7f7; padding:5%; color:#666;font-size: 125%;line-height: 1.5em; font-weight: bold;}
.free{}
.free2{color:#3f98ef;}
#spot{width:75%; margin:auto;margin-bottom: 3%;}
.spotimg{width:15%;display: inline-block;vertical-align: top;}
.spottxt{width:75%;display: inline-block;}
.spottxt dt{font-size: 125%; font-weight: bold; text-align:left; margin-left:40px;}
.spottxt dd{font-size: 110%; margin-top:2%; text-align:left;}
.spot2{width:60%;margin:auto;}
#titletxt{width:70%;border:1px solid;text-align:center; margin:auto;padding: 1%; font-size: 125%;}
.abouttxt{margin-top:-2%;}
.abouttxt2{text-align:left;width: 73%; margin:1% auto;}


}



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

.pc {display: none;}
#spservice2 {width:95%; display:inline-block;margin: 3% auto;}
#spservice2 img{width:100%;margin: 3% auto;}

#spservice3 {width:100%;margin-bottom:5%;}
#spserviceimg {width:55%; display:block;margin:1% auto;}
#spserviceimg2{width:20%; display:block;margin:auto;}


#spservice4 {width:100%; display:inline-block;background:#f7f7f7; }
#spservice4 img{width:100%;}


#pagetop {display: none;}
.fsp{text-align:center;}
.about{background:#f7f7f7; padding:5%; color:#666;font-size: 100%;line-height: 1.5em; font-weight: bold;}
.free{}
.free2{color:#3f98ef;}
.spottxtsp{width:95%;display: block;}
.spottxtsp dt{font-size: 125%; font-weight: bold;}
.spottxtsp dd{font-size: 100%; margin-top:2%; text-align:left;}
#titletxt{width:98%;border:1px solid;text-align:center;  padding: 1%; font-size: 100%; margin:1% auto 4% auto;}
.abouttxt2sp{background: #f7f7f7; padding: 5%; color: #666;font-size: 100%;line-height: 1.5em;font-weight: bold;}
.abouttxt2{text-align:left;}
.mbbtm{width: 91%; margin: auto;}

}





#pagetop{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 25px;
  bottom: 150px;
  background: #3f98ef;
  opacity: 0.6;
  border-radius: 50%;
}
#pagetop a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
  text-align: center;
}
#pagetop a::before{
  font-family: "Font Awesome 5 Free";
  content: '\f106';
  font-weight: 900;
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: 10px;
  bottom: 10px;
  right: 0;
  left: 0;
  margin: auto;
}

#pagetop1{
  width: 70px;
  height: 50px;
  position: fixed;
  right: 15px;
  bottom: 80px;
  opacity: 0.8;
  border-radius: 15px;
  background-color: #666;
}
#pagetop1 a{
  position: relative;
  display: block;
  width: 70px;
  height: 50px;
  text-decoration: none;
  text-align: center;
}
#pagetop1 a::before{
  font-family: "Font Awesome 5 Free";
  content: '\f062';
  font-weight: 900;
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: 10px;
  bottom: 10px;
  right: 0;
  left: 0;
  margin: auto;
}

#pagetop2{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 20px;
  bottom: 15px;
  background: #ef3f98;
  opacity: 0.7;
}
#pagetop2 a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
  text-align: center;
}
#pagetop2 a::before{
  font-family: "Font Awesome 5 Free";
  content: '\f102';
  font-weight: 900;
  font-size: 30px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: 5px;
  bottom: 10px;
  right: 0;
  left: 0;
  margin: auto;
}
