.sp { display: none !important; }
#widewrapper{width: 100%; position: relative; clear: both; }
#contentsArea{ background: #fff; padding-bottom: 80px;}
.ss-container{ margin: 0; border-radius: 0; padding-top: 80px; background: none;}

a:hover { opacity: 0.8; text-decoration: none !important; }

/*main_imgBox*/
.main_imgBox{height: 600px; background: url(../images/kvBg.jpg) center center no-repeat; background-size: cover; display: flex; justify-content: center;  position: relative;}
.main_imgBox .mainSp{ display: none;;}
.main_imgBox h1{ width: 600px; height: 100%; padding: 100px 24px 0; margin-right: 600px; background: rgba(0,0,0,0.5); box-sizing: border-box; font-size: 48px; color: #fff; line-height: 1.6; text-align: center;}
.main_imgBox h1 b{display: block;margin-bottom: 32px;font-size: 60px;}
.main_imgBox h1 small{ display: block; margin-top: 70px; font-size: 14px;}
.main_imgBox h1 small i{ font-style: normal; font-weight: normal; display: block; color: #ffeb00;}
.main_imgBox .logo{ position: absolute; left: 50%; bottom: 50px; margin-left: 150px;}

nav{ overflow: hidden; margin-top: 32px; display: none;}
nav ul{ display: flex; justify-content: center;}
nav ul li{ width: 50%;}
nav ul li a{ display: block; padding: 20px 0 50px; color: #fff !important; font-size: 20px; text-align: center;}
nav ul li a b{ font-size: 28px;}
nav ul li:nth-child(1) a{ background: #00A381 url(https://img.travel.rakuten.co.jp/coupon/special/new-return/images/arrowb.png) center 90% no-repeat;}
nav ul li:nth-child(2) a{ background: #0095D9 url(https://img.travel.rakuten.co.jp/coupon/special/new-return/images/arrowb.png) center 90% no-repeat;}

.ttl{font-size: 30px;border-left: 8px solid #106ab4;padding-left: 30px;}
.ttl b{ font-size: 40px;}
.ttls{ font-size: 32px; display: table; margin: 0 auto; padding: 0 24px; position: relative;}
.ttls::before{ display: inline-block; content: ""; width: 48px; border-bottom: 4px solid #0081D7; vertical-align: middle; margin-right: 24px;}
.ttls::after{ display: inline-block; content: ""; width: 48px; border-bottom: 4px solid #0081D7; vertical-align: middle; margin-left: 24px; }

.bd{ width: 1040px; margin: 0 auto;}

#part1{ background: #b3d7f2; padding-bottom: 80px;}
#part1 .bd{ background: url(../images/maps.png) right top no-repeat; min-height: 270px;}
#part1 .txt{ width: 650px; background: #fff; border-radius: 25px; padding: 24px 40px; box-sizing: border-box; line-height: 1.6; margin-top: 40px;}

#part2 .txt1{ margin: 24px 0 0; line-height: 1.6; font-size: 16px;}
#part2 .gbox{margin: 24px 0 0; background: #F7F7F7; overflow: hidden; padding: 40px 0;}
#part2 .gbox .photo{ text-align: center; margin-top: 24px;}

#internet{ margin-top: 80px;}
#internet .photo{display: flex; justify-content: space-around; margin-top: 40px;}
#internet .btn{ display: flex; justify-content: space-between; margin-top: 40px;}
#internet .btn li{ width: 500px; display: flex; justify-content: center; align-items: center;background: #ff6600 url(../images/arrowr.png) 95% center no-repeat; border-radius: 8px;}
#internet .btn li a{ width: 100%; display: block;  color: #fff !important; font-size: 24px; line-height: 1.6; font-weight: bold; text-align: center; padding: 16px 0;}
#internet .btn li:hover{ opacity: .7;}

#train{ margin-top: 72px;}
#train .shadowb{ margin-top: 40px; box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2); border-radius: 5px; padding: 0 56px 56px; display: flex; justify-content: space-between; flex-wrap: wrap;}
#train .name{ font-size: 28px; font-weight: bold; color: #106ab4; margin: 32px 0 24px; width: 100%;}
#train .photo{ width: 450px; position: relative; margin-left: 10px;}
#train .photo a{ position: absolute; text-indent: -9999px; width: 38px;height: 36px; top: 50%; margin-top: -18px; z-index: 9;}
#train .photo a.prev{ background: url(../images/pre.png); background-size: 100%; left: -13px;}
#train .photo a.next{ background: url(../images/next.png); background-size: 100%; right: -13px;}
#train .photo img{ width: 100%;}
#train .txt2{ width: 430px; font-size: 18px; line-height: 1.6;}
#train .route{ width: 100%; background: #cff3f3; margin-top: 24px; padding: 16px; box-sizing: border-box; font-size: 16px; line-height: 1.6; }
#train .atn{ margin-top: 16px; font-size: 13px; line-height: 1.4;}

.sptbox{ display: flex; justify-content: space-around; flex-wrap: wrap;}
#train + h3{  margin-top: 56px; text-align: center; font-size: 28px; width: 100%;}
.sptbox .spt{ width: 240px; box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2); border-radius: 5px; overflow: hidden; margin-top: 32px; padding-bottom: 80px; background: url(../images/bg.png) 95% 95% no-repeat; }
.sptbox .spt img { width: 100%;}
.sptbox .spt .txt{ font-size: 14px; margin: 24px 16px 0; }
.sptbox .spt .txt b{ display: block; margin-bottom: 4px; font-size: 18px; color: #0081D7;}

#part3{ background: #F7F7F7; margin-top: 80px; padding-bottom: 40px;}
#part3 .txt{ font-size: 22px; text-align: center; }
#part3 ul{ display: flex; justify-content: center;}
#part3 ul li{ margin: 48px 24px 0; display: flex; align-items: center;}
#part3 ul img{width:200px}
#part3 ul li.siaa{display: block; border: 1px solid #8c8c8c; border-radius: 15px; font-size: 14px; line-height: 1.6; padding: 16px; background: #fff; width: 360px; box-sizing: border-box;}
#part3 ul li.siaa b{ display: block; text-align: center; font-size: 24px; margin-bottom: 8px;}
#part3 .btn{ margin: 80px auto 0;}
#part3 .btn a{ display: block;  color: #fff !important; font-size: 36px; line-height: 1.6; font-weight: bold; text-align: center; padding: 16px 0;background: #ff6600 url(../images/arrowr.png) 95% center no-repeat; border-radius: 8px;}

.atn{ font-size: 14px; margin: 16px 8px;}

.gototop { position: fixed; bottom: 10px; right: 10px; }

#tktBk { margin: 80px auto auto auto;  }
.ticketsBox { background: url(../images/ticketImg.png) center top no-repeat; padding: 700px 0 0 0; margin: 30px 0 0 0;}
.ticketsBox img { margin: auto;}
.tktUl { display: flex; justify-content: space-between;}
.tktUl li { width: 320px; height: 290px; font-size: 28px; display: flex; justify-content: center; align-items: center; color: #fff; font-weight: bold; text-align: center; border-radius: 50%; line-height: 1.4; padding-top: 30px;}
.tktUl li:nth-child(1) { background: #005ABA url(../images/tk_icon01.png) center top 35px no-repeat; background-size: 65px;}
.tktUl li:nth-child(2) { background: #005ABA url(../images/tk_icon02.png) center top 35px no-repeat; background-size: 65px;}
.tktUl li:nth-child(3) { background: #005ABA url(../images/tk_icon03.png) center top 35px no-repeat; background-size: 65px;}
.tktPr { font-size: 18px; line-height: 1.5; margin: 40px 0;}
.tktBtm { margin: auto;}
#contentsArea .tktBtm a {background: #BF0000 url(../images/arrowr.png) 95% center no-repeat; font-size: 36px; text-align: center; padding: 16px 0; border-radius: 10px; display: block; width: 100%; color: #fff; font-weight: bold; line-height: 1.6;}
.tktBtm a small { font-size: 80%; }
#contentsArea .tktBtm a:hover { color: #fff;}